ゼロから小学校数学 ― ZFC公理からすべてを証明し直す
小学校で習った算数を、あなたは本当に"理解"していますか?
- 「分数は、整数か有限小数か循環小数である(逆も成り立つ)」
- 「無限小数の足し算は、筆算で桁同士を足し合わせればよい」
- 「分数の掛け算は、分母分子をそれぞれかければよい」
小学生の頃は、これらを理解し、計算できるようになっていた。と感じていた。
しかし、それは本当に理解しているのだろうか? イメージ的な理解はできていても、論理的な理解はできていないのではないか?
先ほどの3つの例では、
- 「分数は、整数か有限小数か循環小数であることの証明はどうするのだろうか?」
- 「無限小数の足し算は、本当にできるのか?無限個の操作を、単純にしてしまってよいのだろうか?(収束や発散などは?)」
- 「分数の掛け算は、分数の表記法に依らずにできるのか?(Well Definedなのか?)」
といったことを、理解していますか?すぐに答えられますか?
そもそも、整数とは何か?足し算とは何か?といった疑問を考えたこともなかったのではないか。
本書では、小学校算数ではなく、小学校"数学"として、より厳密に、一から理論を積み上げていくことを目的とする。あなたも一緒に、小学校数学を(ZFC公理系を出発点に)考え直してみませんか?
背景
小学校算数から始まり、中学校の数学、高校数学、そして大学数学と、徐々に難しく抽象的な数学を学ぶようになる。特に、"高校数学までは曖昧な"定義や"イメージや直感を用いた"説明だったが、大学数学では厳密な定義や証明をするようになる。
最もわかりやすい例は極限ではないだろうか。高校数学では、「xを∞に近づける」のような、イメージ的な定義をしている。これでも、例えば、x → ∞のとき、1/x → 0は、直感的に理解ができる。一方で、大学数学(数学科の2-3年生)では、イメージ的な定義ではなく、ε-δ論法を使った厳密な(論理的な)定義を行う。
他にもいくつか例はあるが、必ずしも、全ての概念を定義し直すことはしているのだろうか?
- 実数の定義は?
- 無限小数同士の足し算は?
- そもそも自然数や整数は自明なのだろうか?
この疑問に答えるべく、ZFC公理を出発点にして、小学校算数を考え直していく(つまり、小学校数学を行う)。
目的
「小学校算数をゼロから証明し直すこと」が目的である。
「小学校算数」とは、学習指導要領に従う(後述の「前提」の通り)。
「ゼロから」とは、ZFC公理のみを出発点として、証明し直すという意味である。例えば、自然数の存在も自明ではなく、ZFC公理から導く必要がある。
注意
目的は「小学校算数をゼロから証明し直すこと」であって、「ZFC公理そのものの解説」は目的ではない。ZFC公理は、あくまで道具という位置付けである。そのため、ZFC公理の解説は最小限(道具として使えるレベル)とし、ZFC公理自体の厳密定義や詳細の解説は、他の本や記事に譲るものとする。
前提
- 小学校学習指導要領(平成29年告知)概説のカリキュラムを前提とする
- https://www.mext.go.jp/content/20211102-mxt_kyoiku02-100002607_04.pdf
- 関連ページ:文部科学省のページ
スコープ
- 本書では、学習指導要領のうち「数と計算」の領域を対象とする
- ※「図形」「測定」「データの活用」「数学的活動」は扱わない
- なお「数と計算」はなるべくすべてを扱っていく方針だが、一部、日常生活に寄った話があるので、そういった部分は飛ばしていく。イメージとしては以下の通りである。
- 対象とするもの
- 数そのものの定義
- 計算(足し算、掛け算など)
- 順序など
- 対象外とするもの
- 日常生活的な説明(数を数えるなど)
- 表記法(10進数関連)
- 対象とするもの
1章 小学校算数で自明でない部分とは?
1章の目的
小学校数学を始める前に、そもそも小学校で何を学んだかを振り返りたいと思います。その上で、どこが自明ではないのか、どこを証明しないといけないのかを考えていきます。
小学校算数を振り返る
みなさん、「小学校算数で習ったこと」を覚えていますか?
覚えているような、覚えていないような…という人が多いのではないでしょうか。まずは、学習指導要領を見ながら、小学校算数(数と計算)のカリキュラムを俯瞰していきます。
以下の表は、学習指導要領を基に、筆者が独自に作成した小学校算数のカリキュラムです。
| 学年 | 目的 | 概要 |
|---|---|---|
| 第1学年 | 数の概念と基本的な計算を学ぶ | 自然数 数の大小・順序 加法・減法 |
| 第2学年 | 四則演算の基礎を身に付ける | 加法・減法の性質 乗法、分数(1/2、1/3など)の導入 |
| 第3学年 | 数の範囲を広げる | 除法、小数、分数 数量の関係を表す式 |
| 第4学年 | より複雑な計算を学ぶ | 整数の除法 小数の計算 同分母分数の加法・減法 四則演算の性質 |
| 第5学年 | 分数・小数を発展させる | 約数・倍数 小数の乗法・除法 分数の意味 異分母分数の加法・減法 |
| 第6学年 | 小学校算数を完成させる | 分数の乗法・除法 文字を用いた式 |
出典:文部科学省『小学校学習指導要領(平成29年告示)解説 算数編』図1(pp.12–15)を参考に筆者作成
なお、はじめにで書いた「スコープ」の通りで、以下の点は学習指導要領から意図的に変更しています:
- 学習指導要領の「数と計算」のみを対象としている
- 「数を数える」「十進位取り記数法」「そろばん」など、本書では扱わない内容は概要から外していること。
小学校算数を振り返ってみて、どう感じましたか?
数は、自然数→分数や小数と発展していきます。計算は、足し算と引き算→乗法→除法と、四則演算を一通り学習しています。
これらは簡単な内容でしょうか?それとも、意外と複雑なことをやっていると思いますか?次節では、どこが自明ではないのか、つまり「小学校数学で証明するべき部分はどこか?」を考えていきます。
自明でない部分はどこか?
上記の小学校算数のカリキュラムを見たときに、どこが自明ではないのでしょうか?
本書での考え方は、「無限を扱ったら要注意」です。
基本的には、全て定義や証明が必要ではあるのですが、特に無限の操作は要注意です。
例えば、自然数は無限にあります。つまり、ほぼすべての土台である自然数に対しても要注意です。
自然数={0,1,2,3,4,5,6,7,8,9,10,11,12,....}
とはいえ、これを記号の羅列だと思えば、自然数自体はある程度自明です(実際、ZFC公理から構成するときも、比較的簡単です)。
一方で、足し算となると、さらに複雑になります。
0+0=0,
1+0=1, 1+1=2, 0+1=1
2+0=2, 2+1=3, 2+2=4, 1+2=3, 0+2=2
…
こちらも無限個の組があります。
仮に自然数が有限個なら、上記の通り、足し算を羅列すれば、ほぼ自明に定義が可能です。ただし、無限個なので、注意が必要です。
素朴に考えると、10進数表記で筆算することを考えれば、"アルゴリズム的に定義"ができそうです。
123
+567
----
690
各桁は0~9の足し算で記述できていて、有限回の操作で計算が終わります。これは、定義できていそうに見えます。
しかし、「表現方法(10進数表記)に依存しないのか?」や「アルゴリズムで定義するとはなにか?」が少し気になります。
本書では、上記のような曖昧性はなく、より厳密に定義する必要があると考えます。
足し算以外にも、分数や小数、掛け算や割り算も同様に考えていく必要があります。
ZFC公理で証明することは何か?
では、何を証明すればよいのでしょうか?
本書のサブタイトルの通り、ZFC公理を用いて証明を行います。では、何を証明するのでしょうか。
まず、ZFC公理とは、簡単にいうと「集合が満たすべき性質の集まり」です。そして、これは公理なので、当たり前のことで自明である(単純すぎて証明できない)ものです。なお、ZFC公理の中身については、次章で詳しく説明します。
次に、ZFC公理(集合の性質)だけを基にして、自然数や足し算を構成していきます。ZFC公理という自明な性質を基に構成したので、それも正しい定義であるといえます。
※構成したものは、ある意味、自然数や足し算そのものではないですが、同じ構造を持っていることが示せれば、自然数や足し算も正しいと言えるはずです。
つまり、「ZFC公理だけを前提として、自然数や足し算を構成すること」が、本書で証明することの中心です。
※もちろん、掛け算や分数など、他も構成が必要です。また、その他の性質(足し算の可換性、分配法則など)は、別途証明が必要になると思います。
まとめ
今回は、小学校算数を振り返ったうえで、小学校数学では何を証明すべきかを考えてきました。
まとめると、
- 無限には注意が必要であること
- 証明すること=ZFC公理から構成(定義・証明)すること
の2点が重要なポイントです。次章以降では、ZFC公理を導入した後、自然数や足し算の構成に入っていきたいと思います。
2章 まずはZFC公理を知る
2章の目的
小学校数学を始めるにあたり、ZFC公理を知る必要があります。ただ、ZFC公理そのものは本書の目的ではなく、あくまで出発点や道具としての位置付けです。そのため、本章ではZFC公理の一覧とその意味を知ることを目的とします。なお、より厳密な定義などはその他の書籍に譲ります(もしくは、本書で必要になったときに、最小限の定義をするものとします)。
ZFC公理とは
ZFC公理とは、集合が満たすべき性質(公理)を集めたもので、以下がその公理です:
- 外延性の公理
- 空集合の公理
- 対の公理
- 和集合の公理
- 無限公理
- 冪集合公理
- 置換公理
- 正則性公理(基礎の公理)
- 選択公理
ここで、ZFC公理の少し特殊な点があり、それは公理が素朴すぎることです。つまり、当たり前のことを論理式で難しく定義しているように見えて、結局なにが大事なのかがわかりにくいのです。そこで、ZFC公理の定義を説明するまえに、本書では"そもそもの前提"を明らかにしておきます。
本書の前提~集合宇宙~
ZFC公理を定義する前に、"そもそもの前提"を定義しておきます。それは、集合の集まりである集合宇宙があること、集合にはという操作ができることです。
まず、集合宇宙を仮定します。これは集合の集まりです。集合の集まりというと、当たり前のような、よくわからないような、という気がするかもしれません。ただ、以下を意識するとよいと思います:
- 自体は、集合ではない(詳しくは、章末コラム「集合宇宙は集合ではない」を参照してください)。
- は一つではない。特に、「全ての集合を集めたもの」ではない。例えば、私の考えると読者が考えるは同じとは限らないです(だからこそ、「そのの中に自然数があるのか?」を考える必要がある)。
- 本書で仮定するのは、集合宇宙が"ZFC公理を満たす"ということだけ。
次に、集合に対する操作を仮定します(より正確には、論理式です)。これは、一般的な「含まれる」の意味と同じです。集合宇宙の中の集合に対して、と書き、True/Falseのいずれかになります。こちらも注意点として、以下があります:
- 通常、とは書かない(集合宇宙が集合ではないため)
- と書いたとき、も集合である(集合宇宙の中にあるのは集合だけで、"要素"と"集合"のような区別がない)
以上が、本書の前提です。以降では、「集合宇宙の中の」ではなく、単に「集合」と書くものとします。
では、これからZFC公理の説明に入ります。なお、ZFC公理はあくまで本書の準備・道具という位置付けです。ある程度知っている読者は、今の段階では読み飛ばして、使うときにまた戻ってきて読んでもらっても構いません。
外延性公理
一つ目は、集合に対する等号の定義(公理)です。
一般的な集合の定義と同じで、との全ての元が一致する場合、とします。論理式で書くと、以下の通りです:
例えば、です(今時点では自然数を定義していないため、この例はあくまでイメージだと思ってください)。
note
等号の定義(公理)と濁して書きましたが、正確には公理であって定義ではありません。ただ、定義と区別できないくらい、外延性公理は当たり前のことを言っているとも思えます。 また、公理は満たすべき性質/前提であるので、ある人が「定義」と考えていても、結果的に外延性公理を満たしていれば問題ないかもしれません。
空集合の公理
元をもたない集合(空集合)が存在する。
これは、集合宇宙に少なくとも一つの集合があると仮定していると考えられます。
対の公理
任意の集合について、は集合である。
note
の場合、です。とは違います(これは、次節の和集合の公理で扱います)。
note
「 は集合である」と書きましたが、「集合宇宙の中にという集合が存在する」と書いたほうが正確かもしれません。
和集合の公理
任意の集合について、に含まれる集合の元を集めたものは集合である。
これを、和集合 と書くことにして、定義は以下となります:
note
集合の和 は集合になります。これは、和集合の公理に加えて、対の公理と組み合わせることで導くことができます。
対の公理から、が集合になるため、に和集合の公理を適用することでが集合になることが証明できます。
無限公理
次を満たす集合が存在する:
note
筆者は、無限公理はあまり直感的ではないと思います。ただ、無限公理の意味としてはシンプルで、「無限集合で"帰納的"な構造を持つ集合が存在すること」を仮定しているイメージです。もしくは、自然数を含む集合が存在することを仮定しているとも言えます。
なお、自然数との対応付けは、次章以降で扱う予定です。
冪集合公理
任意の集合について、その部分集合を全て集めたものは集合である。
以降では、部分集合を全て集めたものを冪集合と書くものとします。
note
集合がの部分集合であるとは、以下を満たすときを言います:
置換公理
論理式で記述できる集合の像は集合である。
ここで、「論理式で記述できる集合の像」の部分を説明します。
まず、2変数の論理式において、「一つのに対して、Trueとなるは多くて一つである」ことを仮定します。論理式で書くと、以下です:
note
この仮定は、写像を意識するとわかりやすいと思います。によって写像を定義するなら、がTrueとなるときにと定義することができそうです。がTrueになるは一つだけなので、像は一つに定まります(ただし、必ずが存在するわけではないため、写像として定義できるわけではありません)。
このとき、論理式で記述できる集合の像は、以下です:
置換公理では、上記の集合の像が集合であることを仮定しています。
note
論理式は「有限個の変数と論理記号で表せる式」です。 つまり、好き勝手に集合の像を作れるわけではありません。言い換えると、「有限個のルールで作れるものは集合である」というイメージです。
note
一般のZFC公理には分出公理が含まれることがあります。ただ、分出公理は置換公理から導出できるため、本章では省略します(必要になった場合、その時に証明します)。
正則性公理
空集合でない任意の集合は、自身と互いに素な元が存在する。
自身と互いに素とは、(共通部分がない)という意味です。
note
正則性公理は、循環構造も禁止しています。つまり、のような自分自身を元に持つ集合は存在しません。詳しくは、章末コラム「集合宇宙は集合ではない」を参照してください。
note
ちなみに、共通部分 も集合です。これは置換公理から導出できます。という論理式に対して、置換公理を適用することで、共通部分が集合であることがわかります。
選択公理
集合の全ての元が「空でない」かつ「互いに素」であるとき、全てのから一つずつ元を取ってきたような集合(選択集合)が存在する。
論理式で書くと、次のようになります。まず、 の仮定は以下です:
そして、選択集合が存在して、以下を満たします:
note
選択公理は、なんらかの選択集合があるということしか仮定していません。つまり、自由に要素を選択してもよいわけではありません。
まとめ
今回は、「ゼロから小学校数学」をするための準備として、ZFC公理の説明を行いました。
次回からは、いよいよ小学校数学の本題に入りたいと思います。
コラム:集合宇宙は集合ではない
2章で説明した通り、集合宇宙は集合ではありません。これは、正則性公理から「自分自身を元に持つ集合は存在しない」を証明できるからです。
定理1:自分自身を元に持つ集合は存在しない
まずは、定理1を証明します。証明には、背理法を使います。
まず、となる集合を仮定します。
対の公理より、 は集合です(※任意の集合に対しては集合です)。
正則性公理によると、は空集合か、自身と互いに素な元を持ちます。ただし、空集合ではないので、互いに素な元を持ちます。さらに、の元はだけなので、であることになります。
ここで、最初の仮定よりであるため、となります。つまり、とは互いに素ではありません。
よって、矛盾が導かれるため、となる集合は存在しません。
定理2:集合宇宙は集合ではない
次に、「集合宇宙は集合ではない」を説明します。こちらも背理法を使います。
まず、集合宇宙を集合であると仮定します。つまり、 は集合宇宙に含まれる一つの集合である()となります。
これは、定理1に矛盾します。したがって、集合宇宙は集合ではありません。
3章 3までの自然数を構成する
3章の目的
本書(小学校数学)の前提はZFC公理だけです。つまり、自然数の存在は自明ではありません。
そこで、まずは自然数を構成することが必要です。ただし、いきなり全部やると難しいです(特に、無限集合の考慮が必要です)。
本章では、有限の自然数として、10までの自然数とその足し算を考えてみたいと思います。
note
最初から無限で考えたい人もいるかもしれません。ただ、実際の小学校算数でも、一番最初は「10までのかず」を扱っていたりします。
自然数の構成
さっそく、自然数を構成していきます。ちなみに、ZFC公理のうち、使うものは以下の公理です:
- 空集合の公理
- 対の公理
- 和集合の公理
まずはゼロが必要です。集合で対応しそうなものといえば空集合です。
note
最終的に、「とが同じである」というのが目標です。ただ、今の時点では何も言えないので、と表記しておきます(このあとのも同様です)。
ここで、空集合の公理から、は集合です。
つぎに、「」が必要です。今度は以下のような集合を考えます:
ここで、は集合です。なぜなら、
- 対の公理から、 は集合である
- 対の公理から、は集合である
- 和集合の公理から、は集合である
からです。
以降、同じ方法で以下の集合を考えます:
note
ちなみに、を書き下すと以下の通りです: また、以下の形でも表記できます:
以上により、からに対応しそうな集合が作れました。最後に、これを1つの集合にまとめておきます:
なお、も集合です。これは、対の公理と和集合の公理を繰り返し適用することで証明できます。詳しい証明は、章末コラムを参照してください。
note
を簡単に作れるのは、有限集合であるからです。無限集合を作るには、もうひと工夫が必要です。
足し算の構成
3までの集合(≒自然数)が作れたので、次に足し算を構成していきます。
有限個の数なので、地道に書き下せば、構成できてしまいます(4個の数の足し算なので、を書き下します)。
note
未定義のが出てきています。4章で4以上の全ての自然数を扱います。
書き下しの限界と次章に向けたアイデア
これで、足し算の定義ができました。ただし、上記は書き下して無理やり定義しただけです。特に、大きな数の足し算を考える際に、拡張性がありません。
そこで、「次の数」を使ったアイデアを考えてみます。
順番に並べると、であり、次の数とは、この並び順に従った次の数です。つまり、
- の次の数はである。
- の次の数はである。
- の次の数はである。
- の次の数はである。
また、次の数とは、を足した結果とも言えます。 そのため、以下のようにの和で表すこともできます:
上記を用いると、二つの数の足し算は、「を何回足すか?」で定義することができます(もしくは、「次の数」を繰り返し計算するとも言えます)。
例えば、との足し算を考えます。より、「を2回足す」(次の次の数を求める)ということであり、結果はとなることがわかります。式変形を丁寧に行うと、以下の通りです:
これが、全ての自然数に対して、足し算を定義するアイデアです。大きな数の足し算でも、同様に計算ができます。
note
本当に正しく定義できるかは、次章で検討します。特に、以下が気になるポイントです:
- 無限個の自然数の全てに、「次の数」を正しく定義できるか
- 「を何回足すか?」という定義は矛盾がないか(例えば、先ほどの計算は結合法則を前提にしていますが問題ないのでしょうか)。
まとめ
今回は3までの小さな自然数だけを対象に、その構成と足し算を考えました。次章では、いよいよ無限集合(すべての自然数)を扱っていきたいと思います。
補題:3つの集合と対の公理
2章で説明した通り、対の公理は、2つの集合を組み合わせることができる公理です:
任意の集合について、は集合である。
ここで、3つの集合に対しても同じことが証明できます:
任意の集合について、は集合である。
これは、和集合の公理と組み合わせることで証明ができます。なお、4つ以上の有限個の集合に対しても、同様に証明ができます。
証明
任意の集合について、は集合である。
早速証明していきます。まず、対の公理を2回適用することで、以下の集合が得られます。
ここで、和集合の公理をに適用すると、以下の集合が得られます:
以上から、は集合であることが証明できました。