全単射、単射、全射は、集合から集合へ対応を与える写像を理解するときの重要な分類です。
名前が似ているため混同しやすいものの、どの要素が重複するか、値域をすべて使えているかに注目すると、違いは整理できます。
この記事では定義域と値域の考え方から、具体例、表、グラフの見分け方、数学で全単射が重視される理由までを順に解説します。
全単射と単射・全射の違い

それではまず全単射と単射・全射の違いについて解説していきます。
写像を分類する三つの考え方
写像とは、ある集合の各要素に対して、別の集合の要素を一つずつ対応させる規則です。
出発側の集合を定義域、到着側として考える集合を終域と呼び、実際に対応先として現れた要素全体を値域と呼びます。
単射は対応先の重複がない写像であり、異なる入力が同じ出力へ向かわないことが条件です。
全射は終域の要素が一つ残らず値域に含まれる写像を指します。
そして、単射と全射の条件を同時に満たす写像が全単射です。
| 分類 | 対応先の重複 | 終域に余り | 主な判断 |
|---|---|---|---|
| 単射 | ない | あってもよい | 入力の違いで出力が重ならないか |
| 全射 | あってもよい | ない | 終域の全要素が使われているか |
| 全単射 | ない | ない | 一対一に余りなく対応しているか |
全単射が表す一対一対応
全単射では、定義域の各要素に対応先が一つあり、終域の各要素も対応元を一つだけ持ちます。
つまり、両方の集合の要素を重複も余りもなく組にできる関係です。
たとえば集合Aが a、b、c で、集合Bが x、y、z のとき、aをx、bをy、cをzに対応させる写像は全単射になります。
反対に、aとbの両方がxへ対応すると単射ではありません。
また、zに対応する要素がなければ全射でもなくなります。
全単射は、定義域側から見ても終域側から見ても一対一です。
そのため、二つの集合の要素数が同じであることを示す場面で特に重要になります。
単射と全射を別々に考える意義
単射と全射を一つの言葉として覚えるより、別の視点として確認することが大切です。
単射では情報がつぶれていないかを確認し、全射では到着側に取り残された要素がないかを調べます。
たとえば社員番号から社員を特定する対応は、通常は単射である必要があります。
異なる社員に同じ番号が割り当てられると、番号だけでは本人を区別できないためです。
一方、曜日から勤務者を対応させる場合には、すべての勤務者が担当するとは限らず、全射かどうかは設定によって変わります。
定義域・終域・値域の基礎
続いては定義域・終域・値域の役割を確認していきます。
定義域が示す入力の範囲
定義域は、写像に入れることが認められた入力の集合です。
関数 f が集合Aから集合Bへの写像であるとき、Aが定義域になります。
同じ式であっても定義域が異なれば、単射か全射かという判定が変わることがあります。
この点は、写像の問題で見落とされやすい部分でしょう。
f(x)=x² を考えます。
定義域を実数全体とすると、f(1)とf(-1)はどちらも1になるため、単射ではありません。
定義域を0以上の実数に限定すると、異なる入力が同じ出力にならないため単射になります。
終域と値域が異なる理由
終域は、写像の対応先として最初に定める集合です。
値域は、そのうち実際に出力として現れた要素だけを集めた集合になります。
全射かどうかは、値域と終域が一致するかで判定します。
値域だけを眺めて終域を確認しないと、全射の判断ができません。
たとえば f(x)=x² の定義域を実数全体、終域を実数全体にすると、負の実数は出力されません。
したがって値域は0以上の実数であり、終域である実数全体とは一致しないため全射ではありません。
集合の大きさと全単射の関係
有限集合の場合、定義域と終域の要素数が異なるときには全単射を作れません。
定義域の要素数が終域より多ければ、どこかで対応先が重なるため単射になりません。
反対に定義域の要素数が終域より少なければ、終域に対応しない要素が残るため全射になりません。
要素数が等しい有限集合では、単射なら全射、全射なら単射になります。
ただし無限集合では事情が変わるため、有限集合での感覚をそのまま当てはめない注意が必要です。
写像の分類では、式そのものだけではなく、定義域と終域の指定まで含めて確認します。
同じ対応規則でも、集合の設定が変われば単射・全射・全単射の結論も変化します。
単射の条件と特徴
続いては単射の条件と特徴を確認していきます。
異なる入力が異なる出力へ向かう条件
単射は、定義域の異なる二つの要素が同じ値へ対応しない写像です。
記号では、f(a)=f(b)ならばa=bが成り立つと表します。
この表現は少し回りくどく見えるかもしれませんが、出力が同じなら入力も同じ一つに決まるという意味です。
単射では、出力から入力を逆向きにたどったときに候補が複数になりません。
ただし終域の全要素が使われる必要はないため、空いている対応先が存在しても単射です。
集合Aを 1、2、3、集合Bを a、b、c、d とします。
1をa、2をb、3をcへ対応させる写像は単射です。
dは使われていませんが、対応先の重複がないため単射という判定は変わりません。
式から単射を調べる方法
関数が単射か調べる代表的な方法は、f(a)=f(b)と置いてa=bを導けるか確認する方法です。
たとえば f(x)=3x+2 なら、3a+2=3b+2からa=bが得られます。
よって実数全体を定義域とした一次関数で、傾きが0ではないものは単射です。
グラフを使うなら、水平な直線がグラフと二点以上で交わらないかを見る水平線判定も役立ちます。
一つの水平線が複数回交わる場合、同じ出力を持つ入力が複数あるため単射ではありません。
単射でない具体例
f(x)=x² を実数全体で考えると、1と-1がともに1へ写ります。
このため、二次関数全体が単射とは限りません。
また、人から誕生月への対応も単射ではない例です。
同じ月に生まれた人が複数いるため、異なる人が同じ月という出力を持つからです。
写像の矢印図では、複数の矢印が同じ終域の要素に集まっていたら、単射ではないと判断できます。
全射の条件と特徴
続いては全射の条件と特徴を確認していきます。
終域をすべて使い切る条件
全射は、終域に属するすべての要素について、そこへ対応する定義域の要素が少なくとも一つある写像です。
終域のどの要素にも矢印が一本以上届いていれば、全射といえます。
全射の判定で重要なのは、出力の重複ではなく終域の取り残しです。
一つの出力に複数の入力が対応していても、終域の全要素が使われていれば全射になります。
単射と全射は独立した条件なので、この違いを意識しましょう。
終域の設定で変わる全射判定
f(x)=x²の値域は、実数全体を定義域にしたとき0以上の実数です。
そこで終域を0以上の実数に設定すれば、この関数は全射になります。
一方、終域を実数全体に設定した場合は、負の実数に対応する入力がないため全射ではありません。
同じ数式でも全射の判定が変わる理由は、終域が写像の定義に含まれているためです。
問題文で終域が明示されている場合には、必ず最後まで読み取る必要があります。
f(x)=x³ を実数全体から実数全体への写像として考えます。
任意の実数yに対して、x=³√y とすれば f(x)=y になります。
したがって、この写像は実数全体への全射です。
全射でない具体例
自然数全体から自然数全体への写像として、f(n)=n+1を考えます。
このとき1はどの自然数nの出力にもなりません。
したがって、終域を自然数全体とすると全射ではありません。
ただし終域を2以上の自然数に変更すれば、すべての終域要素に対応元があるため全射になります。
全射を確認するときは、終域の要素を一つ取り上げ、それを出力する入力が見つかるか考える方法が分かりやすいでしょう。
具体例による見分け方
続いては具体例による見分け方を確認していきます。
矢印図で確認する順序
矢印図では、まず定義域のすべての要素から矢印が一本ずつ出ているかを確認します。
写像であるためには、一つの入力から複数の対応先へ矢印が出ることはできません。
次に、同じ終域の要素へ複数の矢印が集まっていないかを見ます。
集まっていなければ単射の候補です。
最後に、終域の各要素へ矢印が届いているかを確かめます。
すべて届いていれば全射であり、両方を満たせば全単射になります。
| 矢印図の状態 | 単射 | 全射 | 全単射 |
|---|---|---|---|
| 対応先が重ならず、終域に空きがある | はい | いいえ | いいえ |
| 対応先が重なり、終域に空きがない | いいえ | はい | いいえ |
| 対応先が重ならず、終域に空きがない | はい | はい | はい |
| 対応先が重なり、終域に空きもある | いいえ | いいえ | いいえ |
有限集合の要素数から考える方法
有限集合では、定義域と終域の要素数を比べるだけでも有力な手掛かりになります。
定義域が3個で終域が5個なら、終域すべてを埋めることはできないため全射は不可能です。
定義域が5個で終域が3個なら、異なる入力をすべて別の出力へ送ることはできないため単射は不可能になります。
要素数が同じ有限集合では、単射と全射は実質的に同じ結論へつながります。
ただし、問題で求められている分類を省略せず、どの条件を使ったか説明すると理解が深まります。
関数のグラフから判断する方法
実数の関数では、単射の確認に水平線判定を使えます。
水平な線がグラフに二点以上で交わるなら、同じyの値に対して異なるxが存在するため単射ではありません。
全射の確認では、終域として指定されたyの範囲をグラフがすべて通るかを見ます。
たとえば指数関数は実数全体を定義域にすると出力が正の実数に限られます。
終域が正の実数なら全射ですが、終域が実数全体なら0や負の数を取れないため全射ではありません。
見分け方は、単射なら重複、全射なら余り、全単射なら重複と余りの両方を見る流れです。
矢印図、表、グラフのどの形式でも、この順序を使うと判断が安定します。
全単射と逆関数の関係
続いては全単射と逆関数の関係を確認していきます。
逆関数が存在するための条件
全単射である写像には、対応を反対向きにした逆写像が存在します。
関数として扱う場合には、これを逆関数と呼びます。
逆向きの対応が関数として成り立つには、終域の各要素に対応元が一つだけ必要です。
対応元がない要素があれば逆向きに定義できず、複数の対応元があれば逆向きの一つの入力から複数の出力が出てしまいます。
全射は対応元の存在を保証し、単射は対応元の一意性を保証します。
一次関数における全単射
f(x)=ax+b を実数全体から実数全体への写像として考えます。
aが0ではないとき、この関数は単射です。
さらに任意の実数yに対して x=(y-b)/a と置けるため、全射でもあります。
よって傾きが0ではない一次関数は、実数全体上で全単射です。
逆関数は xとyを入れ替えて解くことで求められ、fの逆関数は(x-b)/a になります。
f(x)=2x+5 の逆関数を考えます。
y=2x+5 から x=(y-5)/2 を得ます。
変数を戻すと、逆関数は fの逆関数(x)=(x-5)/2 です。
無限集合で起こる特徴
無限集合では、部分集合であっても元の集合と全単射になることがあります。
自然数全体と偶数全体を考え、自然数nを2nへ対応させる写像を作ります。
この写像は異なる自然数を異なる偶数へ送るため単射です。
任意の偶数は2nの形で表せるため、偶数全体への全射でもあります。
有限集合では直感に反するように感じますが、無限集合の大きさを考えるうえで基本となる例です。
無限集合では、要素数の比較に有限集合の常識をそのまま使えません。
全単射と単射・全射のまとめ
全単射と単射・全射を判断するときは、定義域、終域、値域を区別して考えることが出発点です。
単射は異なる入力が同じ出力へ重ならない性質であり、全射は終域のすべての要素が少なくとも一度は出力される性質です。
全単射は両方を満たし、定義域と終域を余りなく一対一に対応させます。
単射は重複なし、全射は余りなし、全単射は重複も余りもなしと覚えると、矢印図や表の問題を整理しやすくなります。
有限集合では要素数の比較も使えますが、無限集合では全単射の考え方そのものが集合の大きさを測る重要な基準になります。
問題を解く際には、最初に終域を確認し、次に対応先の重複、最後に終域の取り残しを調べてみてください。