数学には関数(function)という概念があります。
関数とは「ある変数に依存して決まる値」の事を指します。
集合論的には、「ある2つの変数の間の対応関係」が関数になります。
通常、関数という言葉は数→数の対応関係を指します。
それに対して、一般の集合→集合の対応関係を写像(mapping)と呼びます。
(両者の間にはあまり差はありません。ニュアンスの違い程度です。)
集合論における数学的考察の対象は全て集合であるわけですが、
写像というものも集合の1種として定義することが出来ます。
余談ですが、関数という言葉は function を音訳したものです。
(中国語では「関」は「ファン」と読みます。
もともとは「函」と書いていましたが、この文字は常用漢字ではないので、次第に「関」に置き換えられるようになりました。)
古来の日本語には「h」や「f」の音はなく、は行の音は「p」の音で読まれていました。
そのため、「函」は「ハン」や「ファン」ではなく、「クワン」と読まれ、後に「カン」になったそうです。
(現在でも辞書などには「くわん」という読み方が書かれています。)
写像について述べる前に、いくつか下準備が必要になります。
まず最初に、順序対というものについて説明します。
「対」
で対というものを説明しましたが、
これは順序関係を持っていません。
すなわち、x, y の対は {x, y} = {y, x} となります。
これに対し、順序を持った対、つまり、x ≠ y のとき (x, y) ≠ (y, x) となるようなものを作ることを考えます。
このような集合を作るために、以下のようなものを考えます。
(x, y) = {x, {x, y}}
このようにして作った x, y の組を順序対(ordered pair)と呼びます。
順序対は以下のような性質を持ちます。
- (x, y) = (y, x) ⇔ x = y
- (x, y) = (x', y') ⇔ x = x' ∧ y = y'
要するに、対(非順序対)とは異なり、中身が順序も含めて一致している場合にのみ同じ集合になります。
次に、直積(direct product)と呼ばれる集合を定義します。
直積とは、a の元 x と b の元 y の順序対 (x, y) 全体からなる集合で、a×b と表します。
例えば、a = {x, y, z}, b = {0, 1, 2} のとき、
a × b =
{(x, 0),
(x, 1),
(x, 2),
(y, 0),
(y, 1),
(y, 2),
(z, 0),
(z, 1),
(z, 2)}
になります。
上述の直積 a×b の定義は、集合論的には以下のような表し方になります。
a×b =
{
u ∈ P(P(a ∪ b)) |
∃x∃y
(
x ∈ a ∧ y ∈ b ∧ u = (x, y))}
(順序対 (x, y) 全体の集合は、P(P(a ∪ b)) の部分集合になります。)
直積は以下のような性質を持っています。
- φ×b = a×φ = φ
- (a ∩ b)×c = (a×c) ∩ (b×c)
- (a ∪ b)×c = (a×c) ∪ (b×c)
- a ⊆ c ∧ b ⊆ d → a×b ⊆ c×d
直積を使って2つの集合 a, b の間の元の対応関係を定義することが出来ます。
直積 a×b とその部分集合 f の順序対 (a×b, f) のことを a から b への対応(correspondence)とよび、f を対応 (a×b, f) のグラフ(graph)と呼びます。
対応は、グラフ f と a, b の3つ組 (f, a, b) (順序対の順序対 (f, (a, b)))で定義する流儀もあります。
対応 (a×b, f) は、
便宜上、f : a → b と表すこともよくあります。
a, b があらかじめ与えられており、これらの表示を省略しても分かる場合には、
単に「対応 f」ということもあります。
x ∈ a のとき、
f(x) =
{
y ∈ b |
(x, y) ∈ f
}
を x の f による像(image)といいます。
例えば、a = {w, x, y, z}, b = {0, 1, 2, 3} のとき、
対応 f を
f =
{(x, 0),
(x, 1),
(y, 2),
(z, 0)}
と定義すれば、
f(w) = φ
f(x) = {0, 1}
f(y) = {2}
f(z) = {0}
となる。
像がシングルトンになるとき、
すなわち、f(x) = {y} のようになる場合には、
これを f(x) = y と略記することもあります。
また、a の部分集合 a' ⊆ a に対して、
像 f[a'] を
f[a'] =
{
y ∈ b |
∃x
(
x ∈ a' ∧ (x, y) ∈ f
)}
で定義します。
これは、f[a'] = f(x) と定義するのと等しくなります。
また、f[a] を f の像または値域(range または range of values)と呼び、Im f と表します。
さらに、{x ∈ a | f(x) ≠ φ} (f 像がφにならないような元全体)を定義域(domain または domain of definition)と呼び、Dom f と表します。
先ほどの例では、
f の値域は Im f = {0, 1, 2}
(3 という値をとることはないので)に、
定義域は Dom f = {x, y, z}
(f(w) はφなので)になります。
この様子を図1に示します。

図1: 像の値域と定義域
対応 f : a → b のうちで、
Dom f = a であり、
さらに、全ての値 f(x) がb のシングルトンとなるものを a から b への写像(mapping)と呼びます。
要するに、a 全ての元に対して、ちょうど1つずつ値が割り当てられているような対応のことを写像といいます。

図2: 写像
例えば、a = {w, x, y, z}, b = {0, 1, 2, 3} のとき、
f =
{(w, 0),
(x, 1),
(y, 2),
(z, 0)}
は写像になります。
(w, x, y, z に対して、それぞれ1つずつ値が割り当たっている。)
一方、
f =
{(x, 0),
(x, 1),
(y, 2),
(z, 0)}
は対応ですが、写像ではありません。
(w に値がない。x が値を2つ持っている。)
いくつか特殊な写像の例を挙げます。
集合 a に対して、
Δa = {(x, y) ∈ a×a | x = y} を対角集合(diagonal set)と呼びます。
グラフが対角集合であるような写像 ida = {a×a, Δa} は、a からそれ自身への写像となり、f(x) = x となります。
このような写像を a の恒等写像(identity mapping)と呼びます。
また、直積 a×b から a への写像 f を
f =
{((x, y), z
)
∈ (a×b)×a |
x = z
}
で定義すると、
f((x, y)) = x となります。
(要するに、y の値を無視して x のみを取り出す写像。)
このような写像を a×b から a への標準的射影(canonical projection)と呼び、
proja と表したりします。
(同様に、y のみを取り出すような写像 projb も定義できます。)
写像 f : a → b が、Im f = b を満たすとき、
f は a から b への全写(surjection)、
もしくはa から b の上への写像(onto mapping)といいます。

図3: 全写
また、a の任意の2元 x, y について、
f(x) = f(y) → x = y を満たすとき、
f は a から b への単写(injection)、
もしくは1対1の写像(1:1 mapping)といいます。

図4: 単写
写像 f が全写かつ単写のとき、
a から b への全単写(bijection)、
もしくは上への1対1の写像(1:1 onto mapping)といいます。

図5: 全単写
2つの集合の間に全単写が存在するとき、
その2つの集合の全ての元の間には1対1の対応があります。
このとき、2つの集合は同値(equivalent)(対等、等価などと訳す場合もあり)であるといいます。
互いに同値な集合というのは、集合的に完全に対等な関係にあると考えることが出来ます。
対応 f : a → b が与えられたとき、
以下のような対応 f-1 : b → a が定義できます。
f-1 =
{(y, x) ∈ b×a |
(x, y) ∈ f
}
要するに、対応関係の向きを逆にしたものなんですが、
このようは対応 f-1 を f の逆対応と呼びます。
写像は対応の一種ですから、
写像の逆対応を作ることが出来ます。
ただし、一般には写像の逆対応は写像とはなりません。
写像 f の逆対応 f-1 が写像になるためには、
f が全単写である必要があります。
f が全単写である場合に限り、
その逆対応 f-1 もまた写像となり、しかも全単写になります。
このような写像 f-1 を f の逆写像(inverse mapping)と呼びます。
ある集合 a に対して同値となるような自然数 n が存在するとき、
集合 a を有限集合(finite set)と呼びます。
逆に、そのような自然数が存在しないとき集合は無限集合(infinite set)と呼びます。
このような自然数が存在するならば、その自然数はただ1つ確定します。
すなわち、a と自然数 m が同値でかつ a と自然数 n が成り立つとき、m = n となります。
この1つに確定する自然数 n を a の元の個数(number)と呼び、
|a| と表します。
元の個数というと、有限集合にしか使えない概念ですが、
この概念は無限集合にも適用できるように拡張することができます。
この無限集合の元の個数に相当する拡張概念を位数(order)、濃度(power, cardinality)または基数(cardinal number)などと呼びますが、この概念はまた後ほど説明します。