Is there an opposite of the restriction of a function?

Given a function f: X -> Y and some subset A of X, the restriction f|_A : A -> Y is defined by f|_A (a) = f(a) for all a in A. This is a common bit of terminology. I was wondering if anyone knows of a vaguely common term for the opposite, in the following sense: given a function f : X -> Y and some set B containing Y, let f|^B : X -> B where f|^B (x) = f(x) for all x in X. Essentially, this is the composition of f with the natural inclusion map between Y and B.

I like the word "extension", but that's pretty commonly used. I like the notation f|^B since I don't think it's commonly used, and it parallels the usual restriction notation.

mcbengt2011-07-30T22:06:22Z

Favorite Answer

There is no common term for this. One reason is that many people use a set theoretic definition of function that does not distinguish between functions with the same rule but different codomains (ie the set Y in your f: X -> Y). Many people *mentally* draw a distinction, but use a set-theoretic definition of function that doesn't encode the distinction, so really they don't use it.

For example, for some people a function from X to Y is exactly the same thing as a subset S of X x Y (what some would call a "relation" from X to Y) with additional properties that make it a function (usually (1) for all x in X there is y in Y with (x,y) in S, and (2) for all x in X and all y and z in Y, (x,y) in S and (x,z) in S must imply y = z). If you think closely you see this does not permit one to recover the set Y from "a function from X to Y". For example if X = {0} and Y = {0} then the unique function from X to Y is represented by the subset {(0,0)} of X x Y. But if Y' is any _larger_ set containing 0, the function from X to Y' given by sending 0 to 0 is _still_ represented in this definition by {(0,0)}; there is nothing in this data to tell you that you have a larger codomain. It is the *exact same set*, so a function from X to Y is the exact same thing as a function from X to Y' that sends 0 to 0.

This example is silly because I chose very small sets as X and Y, but you arrive at the same issue with larger sets. e.g. if your set theory encoding of Z (= the set of integers) is a subset of your set theoretic encoding of R (= the set of real numbers), then "a function is a set of ordered pairs with the functional properties (1) and (2)" does not distinguish between a function from R to Z, and a function from R to R that just happens to take only integer values. From this perspective if f: R to Z is given, there is no distinction whatsoever between it and what you would write as f^R. So this is why a word for what you're trying to do is not in widespread use; the distinction itself is not in widespread use.

[If you're curious as to how people encode the codomain in a set-theoretic definition of a function, a common choice is to declare that a function from X to Y is an ordered triple (X,Y,S), consisting of the set X as its first element, the set Y as its second element, and a subset S of X x Y with properties (1) and (2) as its last element. However you encode ordered tuples in your set theory, this turns out to do the right thing (ie, if two functions are equal, they have the same domains, same codomains, and the same rule). But the subtleties of definitions like these tend to be thought of as 'too fussy' for widespread consumption, so you don't see them outside of the most formal treatments.]

Since there is no common term for your situation, you might as well invent one. I don't like "extension" because it is commonly used for something else (making the domain bigger). I propose "corestriction", because it captures the fact that it is related to restriction but on the codomain side.

It also has a motivation from category theory, where "co-" is generally applied to a term describing what you get from a categorical concept by reversing the arrows in the definition of that concept. In this perspective, you can think of a restriction as follows. The fact that S is a subset of X is encoded in the fact that there is a particular kind of arrow (an inclusion, call it i) from S to X. An restriction of a function f: X to Y (thought of as an arrow from X to Y) is then an arrow g from S to Y making the diagram consisting of the three arrows (f, from X to Y, and the inclusion from S to X, and the arrow g from S to Y) commute, or equivalently, making g = f o i hold (o denoting function composition).

If you reverse the arrows everywhere, you're in a situation where you have sets X, Y, and S, and a particular kind of arrow (an inclusion again called i) now pointing from X to S (so now X is a subset of S). You also have an arrow f from Y to X. A "corestriction" of f is then an arrow g from Y to S making the diagram commute, or equivalently making i o f = g hold. If you think about it a moment this is exactly what you would want f^S to do.

[If you're curious about what happens if you reverse the arrows in the way you think of "extension", a "coextension" of a function from X to Y turns out to be a function from X to [a subset of Y] that gives rise to the same set of ordered pairs in the ordered pair characterization of a function. So a function f from X to Y only has a "coextension" to a function from X to Z, if the range of f is contained in Z, in which case the coextension captures the notion of "the same rule, only thought of as a function into the smaller set Z instead of Y."]