Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I was relatively confused trying to produce a proof of this theorem, however, I have provided my attempt. I would greatly appreciate it if people can help steer me to the correct proof, or provide a simple fix to my proof if it is near correct.

Proposition: If $X$ is a finite set of cardinality $n$, and $f: X \rightarrow Y$ is a function, then $f(X)$ is a finite set of cardinality less than or equal to $n$. If in addition $f$ is one-to-one then $f(X)$ has cardinality exactly $n$.

My Attempt at a Proof: Suppose $X$ is a finite set with cardinality $n$ and $f: X\rightarrow Y$ is a function. It follows that $X$ has $n$ elements, namely $x_1, x_2, ..., x_n$. Since $f$ is a function it follows that $f(X)$ maps every element of $X$ to exactly one element of $Y$. Thus $f(X)$ contains the elements $f(x_1), f(x_2), ..., f(x_n)$. However, we do not know that each $f(x_i)$ , $0 < i < n$ is unique. Thus we can conclude that $f(X)$ has cardinality less than or equal to $n$. Furthermore suppose $f$ is one-to-one. It then follows the elements $f(x_i)$, $0 < i < n$ are each unique. Thus we can conclude that $f(X)$ contains exactly $n$ elements, and hence has cardinality exactly equal to $n$

Thank you very much in advance for any help.

EDIT: (1) Someone asked what the source of my confusion was, I felt that this wasn't really formal and rather I was just attempting to express my intuitive ideas; (2) My definition of $X$ is a finite set of cardinality $n$ is that there exists a bijection from $X$ to $\{i\in \mathbb{N} : 1\leq i \leq n\}$; (3) I see some people have answered me with proof structures or long hints, thank you very much however I just got to my computer and have some other things to do so I haven't got to fixing my proof yet or thoroughly reading your posts I will do it soon however, thank you all very much

share|cite|improve this question
What's the source of your confusion Deven? Your proof looks sound to me. – Michael Banaszek Aug 7 '11 at 1:01
You could incorporate the pigeon-hole principle to add support to your one-to-one argument. – robjohn Aug 7 '11 at 1:03
Looks good to me, a nit-both $i \lt n$ should be $i \le n$ – Ross Millikan Aug 7 '11 at 1:05
@Deven: I have incorporated your earlier, unregistered account into the registered account you made; now all of your reputation points will accumulate in that account, and you will be able to see all notifications intended for you. – Zev Chonoles Aug 7 '11 at 10:18
up vote 2 down vote accepted

It depends on your definition of "finite of cardinality $n$", and on what results you already have.

Often, "finite of cardinality $n$" means "bijectable with $n\in\omega$." If so, your argument may not be exactly right since it does not explicitly show that there is a bijection from $f(X)$ to some $m\in\omega$ with either $m=n$ or $m\in n$ (depending on what results you may have that imply the existence of such bijections). The intuition is right, but the execution may not be enough.

Here is one possibility to formalize this intuition. Fix a bijection $g\colon n\to X$ (this amounts to giving a specific ordering to $X$). Now, for each $y\in f(X)$, let $A_y = \{ m\in n\mid f(g(m))=y\}$ (that is, $A_y$ is the set of preimages of $y$, viewed in terms of the ordering we gave $X$). Define $h\colon f(Y)\to n$ by $h(y) = \min(A_y)$.

Note that $h$ is well-defined, since $A_y\neq\emptyset$ (as $y\in f(X)$); also, $h$ is one-to-one, because $y\neq y'$ implies $A_y\cap A_{y'}=\emptyset$ (since $f$ and $h$ are functions).

Thus, $h$ is a bijection between $Y$ and a subset of $n$; this certainly shows that $Y$ is finite, since a subset of a finite set is necessarily finite (there can be no bijection from a subset of a finite set to a proper subset of itself).

You may already have shown that a subset of $n\in\omega$ is necessarily of cardinality $m$ for some $m\leq n$; if not, then you can construct the bijection inductively easily enough.

Finally, if $f$ is one-to-one, then $f\circ h$ is one-to-one and onto $f(X)$, hence a bijection, showing that $f(X)$ is bijectable with $n$, hence of cardinality $n$.

share|cite|improve this answer

Exactly what constitutes a proof here depends very much on exactly how you’ve defined finite and ‘has cardinality $n$’, not to mention on what you’ve already proved about functions. At the relatively informal level at which I suspect you’re working, your argument is basically correct. I’m going to suppose that your definition of ‘$S$ has cardinality $n$’ is that there is a one-to-one function from $\{1,2,\dots,n\}$ onto $S$, or at any rate something pretty close to that. If so, you can make your argument a little more formal as follows. Since $X$ has cardinality $n$, there is a one-to-one function $h$ mapping $\{1,2,\dots,n\}$ onto $X$. When you write $X = \{x_1,x_2,\dots,x_n\}$, you’re basically doing the same thing: your $x_i$ is my $h(i)$. I’ll want to use the function $h$ in a bit, but for now I’ll stick to your version.

We know that for each $y \in f[X]$ there is at least one $x \in X$ such that $f(x) = y$, but as you said, there might be more than one. We’ll pick out a particular one: for each $y \in f[X]$ let $k(y)$ be the smallest positive integer $i$ such that $f(x_i) = y$. (Choosing the smallest is simply a handy way of making a definite, unambiguous choice.) Clearly $k$ is a function from $f[X]$ into $\{1,2,\dots,n\}$, and it’s not hard to see that it’s one-to-one. It’s also not hard to see that if $f$ is one-to-one, $k$ must map $f[X]$ onto $\{1,2,\dots,n\}$, in which case $k$ is a bijection between $f[X]$ and $\{1,2,\dots,n\}$, and the cardinality of $f[X]$ is $n$ by definition.

If you’ve already proved that every subset of a finite set is finite, you’re done at this point: $k$ is a bijection between $f[X]$ and a subset of the finite set $\{1,2,\dots,n\}$. If you actually need to construct a bijection between $f[X]$ and $\{1,2,\dots,m\}$ for some $m$, you have to work a bit harder. I suspect that you don’t, so I’ll just outline the idea informally. Let $g(1)$ be the $y \in f[X]$ for which $k(y)$ is smallest. Then let $g(2)$ be the $y \in f[X] \setminus \{g(1)\}$ for which $k(y)$ is smallest. Continue in this fashion until every $y \in f[X]$ is $g(i)$ for some $i$. When you’re done, you’ll have a bijection $g$ from some set $\{1,2,\dots,m\}$ onto $f[X]$.

share|cite|improve this answer

If you want something a bit more formal (or at least sounds more formal) use induction and/or proof by contradiction.

ie Let's use the notation that $X_n$ is a set with $n$ elements. ie $X_0$ is the null set.

So $f(X_0)$ is also an empty set - by the definition of what a function is - since there are no elements to apply $f()$ to, the resultant set is empty. So $|f(X_0)| = 0$. Which means $|f(X_0)| \leq 0$, which is more in line with what we need ($\leq$ vs $=$).

Since $X_0$ is so special, feel free to prove $|f(X_1)| \leq 1$ and/or $|f(X_2)| \leq 2$, although it is not strictly necessary.

For induction, assume we have proven $|f(X_k)| \leq k$, for some $k \in N$.

Now consider $f(X_{k+1})$. The set $X_{k+1}$ has one more element than the set $X_k$. Call this element $x_{k+1}$. (we could label all the elements, as others have mentioned, ie $x_1, x_2, ..., x_k$, so that we know the new one is $x_{k+1}$. I don't think we need the axiom of choice here!).

Let's add $f(x_{k+1})$ to set $f(X_k)$ to form the set $f(X_{k+1})$. (I don't think we need to 'prove' that is how we form $f(X_{k+1})$.)

If $f(x_{k+1}) \in f(X_k)$ , then $|f(X_{k+1})| = |f(X_k)|$ , ie you didn't add a unique element, so the size didn't change. And since $|f(X_k)| \leq k$ , by substitution of equals $|f(X_{k+1})| \leq k$ .

If $f(x_{k+1}) \notin f(X_k)$, then $|f(X_{k+1})| = |f(X_k)| + 1$ (we added one unique element). Recall our inductive assumption: $|f(X_k)| \leq k$ , adding $1$ to both sides of this gives $|f(X_k)| + 1 \leq k + 1$, substitution gives our desired $|f(X_{k+1})| \leq k + 1$ .

Or something like that.

share|cite|improve this answer
P.S. I suspect that proof also works for countably infinite sets. – tony Aug 7 '11 at 9:07

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.