Domain, Range, and Co-domain of a Function

When working with quantitative relationships, three concepts help “set the stage” in your thinking as you seek to understand the relationship’s behavior: domain, range, and co-domain.


The “domain” of a function or relation is:

  • the set of all values for which it can be evaluated
  • the set of  allowable “input” values
  • the values along the horizontal axis for which a point can be plotted along the vertical axis

For example, the following functions can be evaluated for any value of  “x”:


therefore their domains will be “the set of all real numbers”.

The following functions cannot be evaluated for all values of “x”, leading to restrictions on their Domains – as listed to the right of each one:

h(x)=\dfrac{1}{x}~~~~~~~~~\text{x cannot be zero}\\*~\\*j(x)=\dfrac{1}{(x-2)(x+4)}~~~~~~\text{x cannot be 2 or -4}\\*~\\*k(x)=3x+2,~1<x<10~~~~\text{only values between -1 and 10 may be used for x}

The values for which a function or relation cannot be evaluated are called “domain restrictions“, and they usually arise either because:

  1. The person defining the function wished to exclude them, such as when creating a piecewise function.  The function k(x) above is an example of this situation.
  2. The result of the function would be “undefined” for that value, such as when a value of “x” would require us to divide by zero at some point while evaluating the function.  Functions h(x) and j(x) above are examples of this situation.

When graphing a function or relation, domain restrictions will result in a “hole” in the graph: one or more values on the horizontal axis for which no point can be graphed along the vertical axis.

Some holes in a graph correspond to the location of an “asymptote“: a line that the graph gradually approaches, and gets infinitely close to, but never crosses. If you examine the graphs of h(x) and j(x) as defined above, they will both exhibit this behavior at their domain restrictions, while k(x) does not.


The “range” of a function or relation is:

  • the set of all values that it can produce
  • its “output” set of values
  • the set of values along the vertical axis for which a point can be plotted on its graph

Range restrictions usually occur due to the nature of the function or the relation… they are not usually imposed by the author, as is often done with domain restrictions (such as in k(x) above). For example:

  • f(x) above does not have any restrictions to its Range… it can produce all real numbers. Therefore its Range is “the set of all Real numbers”.
  • g(x) above does not produce a real number less than 5 (since x squared can never be less than zero), therefore the Range of g(x) is “all real numbers greater than or equal to five”.

Note that the word “range” has a number of possible uses in the English language, many of which do NOT refer to “the range of a function”. So, please read questions carefully to determine what the word “range” refers to in the question. If you are being asked for the “range of a function” – the above description applies. However, if you are being asked for the “range of possible values for a coefficient”, then you are NOT being asked for the “range” as defined above.


The “co-domain” of a function or relation is a set of values that includes the Range as described above, but may also include additional values beyond those in the range.

Co-domains can be useful when the Range can be difficult to specify exactly, but a larger set of numbers that includes the entire Range can be specified. For example, a co-domain could start out as the set of all Real numbers, and then be gradually reduced in size as sets of values that the function or relation will never produce are figured out. This could result in a series of successive co-domain descriptions, each smaller than its predecessor, but still larger than the Range.

If the Range is difficult to specify, thinking about a Co-domain can serve the same purpose as thinking about the Range: thinking about which values the function or relation does, and does not, produce helps one understand the overall behavior of the function or relation.

Why bother with Domain and Range (or Co-Domain)?

While “domain”, “co-domain”, and “range” are indeed “three more vocabulary terms you should know”, they are also useful concepts to master: thinking about them helps you understand the behavior of a function or relation. By determining the domain and range (or co-domain) of a function before you begin to graph it, you will usually develop a mental image of the function that can help you avoid making errors, or wasting space, on your graph paper when graphing the function.

The knowledge that a function “never produces a value less than 5”, as is the case with g(x) above, will affect your choice of values to display along the vertical axis, as well as where you place the origin of your graph. Thinking about the domain and range (or co-domain) of a function before starting to use or graph it will improve your understanding of how it behaves, and should help you work more efficiently.


Published by

Whit Ford

Math Tutor in Yarmouth, Maine

8 thoughts on “Domain, Range, and Co-domain of a Function”

    1. Thank you for the example!

      Question “c” in this problem uses the term “Range” consistently with how it is used in the context of Functions as a whole.

      However, questions “a” and “b” apply the term to coefficients in the problem, not the result (or output) of the function as a whole. This is a fair use of the word, and I cannot think of a better word or phrase to use in this situation.

      Therefore, students should be careful to interpret the word “Range” in context. My post above describes the “Range of a Function”, or the “Range of a Relation”, as the set of possible output values. Two questions in your problem are asking for the “Range of allowable values for a parameter”, which is a very different question! One which also makes appropriate use of the same word…

  1. Why the neglect for the codomain? ( I think it’s an opportunity to teach and reinforce a few good habits, and I think leaving it out creates a flawed view of a function that may cause confusion (however momentary) in the future…

    By mentioning the codomain, it provides a useful way of defining a formal function (specifying its domain, codomain, and mapping procedure) and pins down the set theoretic perspective that functions map a set of inputs into a set of outputs. The range or image then is just a subset of the codomain, being the only realizable outputs for certain inputs. For this function with the same domain and codomain f: R->R, f(x) = x^2 the range is different, being the subset R+.

    Maybe it’s not so useful a concept at this level, but it becomes more useful in linear algebra later. It’s also useful for making it obvious that a function maps to a lower/higher dimension, e.g. f: R^2 -> R, f(x,y) = x + y, or perhaps some function that takes a vector X as input and involves ∇·X in the mapping…

    1. Good point! Co-Domains are seldom mentioned in high school classrooms, probably because they introduce a potential confusion at a time when students are just beginning to grapple with two concepts that are completely new to them (domain and range).

      I will revisit this post next week and see if I can work the idea in.

      Thank you!

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s