# Functions and Graphs

A **function**
or **mapping** is a relationship between one set and another. For each
element of the first set (which is called the **domain**) an element
of the second set (called the **range**) is assigned. We write

*f*

**:**

*X*→

*Y*,

to mean that the function named *f * maps elements in the domain *X*
to elements in the range *Y*,
where *X *and *Y *are sets.
Signals are modeled as functions.
So far, we have concentrated only on defining the domain and the range
of a signal, and have not talked much about
the function itself as a mathematical object. We will now show that a function
is itself a set.
We will then talk about sets of functions (sets of **signals**),
and functions on those sets (**systems**).

If the domain of *f* is finite, *f* can be defined using
a table. For example, the function *Score* that maps names into
scores on an exam can be given by

name |
Score(name) |

JohnBrown |
90.0 |

JaneLiu |
90.4 |

… |
… |

*x*∈

*X*in the domain and a member

*y*∈

*Y*in the range. Thus, each row of the table is an element

*x*,

*y*) ∈

*X*×

*Y*.

The set of all these elements (one for each row) fully
defines the function. It is called the **graph** of the function, and
is given formally by

*graph*(

*f*) = {(

*x*,

*f*(

*x*)) |

*x*∈

*X*}

Notice that

*graph*(

*f*) ⊂

*X*×

*Y*

Also notice that this definition works even if the domain is not finite, although the tabular representation does not.

It is not accidental that this set is called the graph of the function. Consider the audio signal shown below:

This plot represents a function *Voice***:** [0, 1] →
*Int16. *, where *Int16* is the set of 16-bit integers.
In fact, it is a very literal depiction of *graph*(*Voice*).
The rectangle outlining the plot is the set [0, 1] ×
*Int16*. A red dot is placed at each (*x*, *y*) in this
set that is a member of the subset *graph*(*Voice*).