如何构造从非零自然数集到偶数整数集的双射函数
构造双射函数 $f:\mathbb{N} \rightarrow {x\in \mathbb{Z} :x\text{ is even}}$ 的思路
首先明确我们的目标:定义域是不含0的正自然数集 $\mathbb{N} = {1,2,3,4,...}$,值域是所有偶数整数(包括0、正偶数和负偶数)。双射要求每个自然数对应唯一的偶数,且每个偶数都有唯一的自然数对应它,我们可以通过拆分自然数为奇偶两类来分别映射,完美覆盖值域的所有部分:
具体构造方法
我们可以按自然数的奇偶性分情况定义函数:
- 当 $n$ 是奇数时,设 $n = 2k - 1$(其中 $k$ 是正自然数,$k \geq 1$),令 $f(n) = -2(k-1)$
- 举几个例子验证:$n=1$($k=1$)→ $f(1)=0$;$n=3$($k=2$)→ $f(3)=-2$;$n=5$($k=3$)→ $f(5)=-4$,以此类推,这部分会覆盖0和所有负偶数
- 当 $n$ 是偶数时,设 $n = 2k$(其中 $k$ 是正自然数,$k \geq 1$),令 $f(n) = 2k$
- 例子:$n=2$($k=1$)→ $f(2)=2$;$n=4$($k=2$)→ $f(4)=4$;$n=6$($k=3$)→ $f(6)=6$,这部分覆盖所有正偶数
验证双射性质
单射(Injective)
假设 $f(a) = f(b)$:
- 如果 $f(a)$ 是正偶数,那么 $a$ 和 $b$ 都必须是偶数,此时 $2k_a = 2k_b$ → $k_a = k_b$ → $a=2k_a=2k_b=b$
- 如果 $f(a)$ 是非正偶数(0或负偶数),那么 $a$ 和 $b$ 都必须是奇数,此时 $-2(k_a-1) = -2(k_b-1)$ → $k_a-1=k_b-1$ → $k_a=k_b$ → $a=2k_a-1=2k_b-1=b$
所以不存在两个不同的自然数对应同一个偶数,单射成立。
满射(Surjective)
对于任意偶数 $x$:
- 如果 $x$ 是正偶数,设 $x=2k$($k≥1$),那么取 $n=2k$(偶数),就有 $f(n)=2k=x$
- 如果 $x=0$,取 $n=1$(奇数),$f(1)=0=x$
- 如果 $x$ 是负偶数,设 $x=-2m$($m≥1$),那么取 $n=2(m+1)-1=2m+1$(奇数),此时 $f(n)=-2((m+1)-1)=-2m=x$
所以每个偶数都能找到对应的自然数,满射成立。
这样我们就构造出了满足要求的双射函数啦。
内容的提问来源于stack exchange,提问作者Brandon O'Neil




