単射(1対1の対応)
とある武将が「あの林の木の本数をすべて数えて参れ」と言った。家来たちが頑張って1本、2本、・・・と数えていったが、途中で数え間違えるので何回もやり直しになってしまう。何かよい方法はないだろうか。
さて、パズルでも数学でも1対1対応という考え方はとても有効です。定義を述べよう。集合Aから集合Bへの写像fが1対1である、または単射(たんしゃ)であるとは、相異なるAの2つの要素x、yに対して、これらをfで写したBの2つの元f(x)、f(y)が相異なるときにいう。
要は、1対1対応とは違う者同士は対応先でも違う者同士となるような写像をいう訳です。
AからBへこのような1対1対応が存在すれば、Aの要素の個数(無限の場合でもよい)とfで写したBの要素の個数(無限の場合でもよい)は同数だけあると考えられます。
足し算をまだ習っていない小学1年生に「リンゴが3個、みかんが2個ありました。全部でいくつの果物がありますか。」というのを、算数セットの「おはじき」を取り出してきて、おはじき3個とおはじき2個を用意し、数えたらおはじきが5個あるから答えは5個だと答えるのも、その感覚・概念を小学生1年生に認識させようとする教育から来ていますね。そもそも1,2,3,・・・という「自然数」はそのような1対1対応する集合同士を同一視した世界の中で、出てきた概念ということになります。抽象化とはそういうことでした。
さて冒頭の問題では例えば次のような方法である。
家来たちは手分けして林の木すべてに1本ずつの縄を括り付けた。全部括り付けたら、その後縄をすべて回収して城に持ち帰り、縄の本数を数えた。これで、縄の本数と木の本数が一致するので、林の木の本数が何本であったか武将に報告することができたのでした。
うまく1対1対応を利用したことで、労力は減り、正確性も担保されたという例です。