**Exercise 1) Prove that if and are both functions, then , as defined in this lesson, is also a function.**

Solution: This is a very important problem, as it illustrates how one deals with the mathematical structures that we define. Namely, when we say things like “we’re going to take two functions and make a third one,” we actually need to check that the thing we’ve defined actually satisfies the requirements of being a function—we can’t just willy nilly refer to things as being certain mathematical objects without checking that this is the case.

We begin by recalling what a function is. A general function needs to go **from** one set and **to** another set. As is hopefully familiar by now, we call the former the **domain** of the function and the latter the **codomain** of the function. Additionally, a function must assign **to each** element in the domain **precisely **one element in the codomain. Remember, these are very particular requirements: we can’t leave out any elements from the domain and we also can’t map any elements in the domain to **more than one** element in the codomain. These are the requirements that we need to check here.

In this problem we’re assuming that we already have two functions and . This means that and both satisfy the above requirements. In other words, even though we know nothing about and in detail, i.e. we know nothing about their domains or codomains or really anything at all about them, we are **assuming** that they exist and that they satisfy the function requirements. In this way we prove our statement in **complete generality**, so that if we’re ever handed two genuine explicit functions between sets that we do know the details of, then we can **immediately** know that we can form a new function from them in the way described in this lesson and that this construction is **well-defined**.

Okay let’s actually do this. Suppose and are functions. We now define the function by sending each element to the element . We first note that our new function has a domain and a codomain, as it must. The domain is and the codomain is . We also note that our new function does indeed send elements **from **its domain to its codomain in a well-defined way, since we know that and , and therefore . Now we must show that this rule for sending elements from the domain to the codomain satisfy the requirements of a function.

Let us first show that **every** element in gets sent somewhere (i.e., we don’t leave out any elements from the domain). To see this, let us pick any element from arbitrarily, and let us call this element . Then, since is a function, we have that is a well-defined element in . Similarly, since is a function, we know that is a well-defined element in . Therefore is an element in . Note that had or (or both) **not** been genuine functions, then it would be possible that, for example, one of them sent “forgot” to send a particular element in its domain to its codomain and therefore we would not have known **for sure** that is an element in . We therefore really are relying on the fact that our original functions are indeed functions.

Now that we’ve shown that each element in goes somewhere in , we need to show that each element gets sent to **only one** element in . But this is just as straightforward. Namely, if some element goes to more than one element in , then either is more than one element in or is more than one element in (or both), and both of these possibilities are in fact impossible because we **know **(by assumption) that both and are genuine functions.

That completes the proof. I very strongly encourage the reader to understand not only the various statements of the proof, but also the reason for why we even needed to prove this statement in the first place. It’s a trivial proof in the sense that the result that we prove may seem “obvious”, but often these are the statements that are most important to rigorously prove. Moreover, deeply understanding the method and motivation for this proof is great practice for later methods and motivations.

**Exercise 2) Explicitly write where the remaining five elements (i.e., those that are not ) in go under the action of in the example discussed at the end of this lesson.**

Solution: For this problem we simply must look back at the lesson and run through all of the definitions. Namely, we have that . We therefore see that the element in gets sent to in . Similarly we have that and .

**Exercise 3) Define four sets , , , and of your choosing, and define two functions and , also of your choosing (but make sure they’re well-defined!). As explicitly as possible*, write out the action of , i.e., write out where each element in the domain of goes in the codomain.**

Solution: There are obviously infinitely many ways to complete this problem, and I’ll only do one of them here. Let me define the set to be the set of all integers , let me define the set to be the set , let me define the set to **also** be the set of integers (so it’s equal to the set ), and let me define the set to be the set . Let me define the function to be the function that sends the integer to if is an even integer (i.e., if for some integer , meaning that “ is two times some number”, which is clearly the same as being even), and to if is an odd integer (i.e., if for some integer (i.e., if is exactly “one away” from an even number, which is clearly the same as being odd). I encourage the reader to convince him/herself that this indeed defines a genuine function. Let me then also define the function to send the integer to if is even and to if is odd.

To see what the function does, we first note that is just the set of integers “times itself”, so that it is the set of “pairs of integers”. Namely, each element in can be written where both and are arbitrary integers. There are then four cases: either both and are even, in which case , or is even but is odd, in which case , or is odd and is even, in which case , and finally there is the possibility that and are both odd, in which case . Thus, for example, , while .

Awesome! One more solution set down, let’s keep on truckin’!