目次
第0章

まえがき

第1章

小鳥遊六花 (邪王真眼 (最強)) はチューリング完全を凌駕する

ii@xhl kogitsune

1

1.1

邪王真眼括弧最強括弧プリーステスよりも最強括弧閉じ括弧閉じ . . . . . . . . . .

1

1.2

邪王真眼括弧最強括弧閉じ中括弧最強中括弧閉じ . . . . . . . . . . . . . . . . . . .

3

1.3

邪王真眼こんす・かぁ・こーんす・くだぁ . . . . . . . . . . . . . . . . . . . . . . .

6

参考文献 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

8

第2章

矢澤にこ先輩と一緒に catamorphism！

@public ai000ya

9

2.1

登場人物 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

92.2

導入 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

92.3

流れについて . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

10

2.4

F-代数を Haskell で表す . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

10

2.5

F-代数の準同型写像を Haskell で表す . . . . . . . . . . . . . . . . . . . . . . . . . .

13

2.6

F-代数の圏 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

16

2.7

F-始代数を Haskell で表す . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

17

2.8

catamorphism を導出する . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

22

2.9

終わり . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

26

2.10

その他参考記事 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

26

第3章

チルノのパーフェクト超準解析教室@dif engine 27

3.1

プロローグ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

27

3.2

超準解析の背景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

28

3.3

宇宙 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

31

3.4

(弱) 宇宙の上の言語 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

39

3.5

超準宇宙 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

50

3.6

自然数について . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

65

3.7

実数について . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

71

3.8

応用例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

81

3.9

まとめ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

89

3.10

エピローグ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

91

3.11

あとがき . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

91

参考文献 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

93

会員名簿じゃなイカ?

96

ii

第0章

まえがき
関数型イカ娘とは!?
bababababababababababababababababababab

Q. 関数型イカ娘って何ですか?
A. いい質問ですね！
Q. 次で最終号っていうのは、ホント?
B. それを否定したとして、君は僕の言葉を信じるかい?
関数型イカ娘とは、「イカ娘ちゃんは 2 本の手と 10 本の触手で人間どもの 6 倍の速度でコーディングが可能な超絶関数型プログラマー。型ありから型なしまでこよなく愛するが特に Scheme がお気に入り。」という妄想設定でゲソ。それ以上のことは特にないでゲソ。
この本は、コミックマーケット 80 での「簡約! λ カ娘」、コミックマーケット 81 での「簡約!? λカ娘 (二期)」、さらにコミックマーケット 82 での「簡約!? λ カ娘 (算)」、に続く、さらにさらにコミックマーケット 83 での「簡約!? λ カ娘 4」、に続く、もーさらにさらにコミックマーケット 84 での「簡約!? λ カ娘 Go!」、に続く、そしてコミックマーケット 85 での「簡約!? λ カ娘 Rock!」、コ
ミックマーケット 86 での「簡約 λ カ娘 巻の七」、コミックマーケット 88 での「簡約!? λ カ娘 8」、、に続く、コミックマーケット 92 での「簡に続く、コミックマーケット 90 での「簡約!? λ カ娘 9」
約!? λ カ娘 10」、に続く、十一冊目の関数型イカ娘の本でゲソ。関数型言語で地上を侵略しなイカ!

この本の構成について
この本は関数型とイカ娘のファンブックでゲソ。各著者が好きなことを書いた感じなので各章は独立して読めるでゲソ。以前の「λ カ娘」本がないと分からないこともないでゲソ。

1

第1章

小鳥遊六花 (邪王真眼 (最強)) はチューリ
ング完全を凌駕する— @xhl kogitsune*1 はいいぞ。
映画「中二病でも恋がしたい！ -Take On Me-」—
小鳥遊六花は (まだ) 中二病であり、会話中でも中二病的な二つ名や脚注を多用する。
六花「おはよう勇太括弧ダークフレームマスター括弧閉じ! 今日はこの小鳥遊六花括弧邪王真眼括
弧最強括弧閉じ括弧閉じと約束された探索へと旅立つのだ!」勇太「お前よく話しながら括弧の対応取れるな」
しかし、これはこれで面白いので、六花がどこまで括弧の対応関係を取れるのか試してみた。

1.1 邪王真眼括弧最強括弧プリーステスよりも最強括弧閉じ括弧閉じ
勇太「邪王真眼よ、汝は邪王真眼括弧最強括弧閉じを称しているが、今日は星の巡りがよく、汝は平時よりも一段強い! 「最強」に加え「プリーステスよりも最強」をも名乗れるのではないか?!」六花「なん、だと……? つまり、邪王真眼が邪王真眼括弧最強括弧閉じ*2 となっただけではなく、今日の私は邪王真眼括弧最強括弧閉じ括弧プリーステスよりも最強括弧閉じ*3 だというのか!?」勇太「もう一声」
六花「邪王真眼括弧最強括弧プリーステスよりも最強括弧閉じ括弧閉じ*4 」
勇太「よし」
六花「?」括弧閉じを連発する六花かわいい。そう思いながら俺は更に続ける。
勇太「もう一声」
六花「邪王真眼括弧最強括弧閉じ括弧最強括弧閉じ括弧プリーステスよりも最強括弧閉じ*5 」
勇太「もう一声」
六花「邪王真眼括弧最強括弧閉じ括弧最強括弧プリーステスよりも最強括弧閉じ括弧閉じ*6 」
勇太「もう一声」
六花「邪王真眼括弧最強括弧最強括弧閉じ括弧閉じ括弧プリーステスよりも最強括弧閉じ*7 」*1 http://www.anime-chu-2.com/*2 邪王真眼(最強)*3 邪王真眼(最強)(プリーステスよりも最強)*4 邪王真眼(最強(プリーステスよりも最強))*5 邪王真眼(最強)(最強)(プリーステスよりも最強)*6 邪王真眼(最強)(最強(プリーステスよりも最強))*7 邪王真眼(最強(最強))(プリーステスよりも最強)第 1 章 小鳥遊六花 (邪王真眼 (最強)) はチューリング完全を凌駕する2
勇太「もう一声」

六花「邪王真眼括弧最強括弧最強括弧閉じ括弧プリーステスよりも最強括弧閉じ括弧閉じ*8 」
勇太「もう一声」
六花「邪王真眼括弧最強括弧最強括弧プリーステスよりも最強括弧閉じ括弧閉じ括弧閉じ*9 」
なんでこいつこんなにすんなり出てくるんだ。白状すると俺はだいぶつらくなってきた。こいつならこのまま括弧が増えていっても大丈夫だろう。俺はより高度な戦略を試すことにした。
解説’(’ と’)’ のみから構成され、括弧の対応が取れた文字列を Dyck word と呼ぶ。小鳥遊六花は
Dyck word を辞書順に列挙し、「邪王真眼」「最強」などのワードを入れて発音していると言え
よう (ここで言う辞書順とは、’(’ よりも’)’ の方が先に来る、と定義する)。邪王真眼 (最強) ならざる人の身では括弧と括弧閉じを目パースするのはつらかろうので、’(’ と’)’ を使い、括弧だけを抜き出して六花の発言を順に並べると以下のようになる。

• "" 「邪王真眼」• "()" 「邪王真眼(最強)」• "()()" 「邪王真眼(最強)(プリーステスよりも最強)」• "(())" 「邪王真眼(最強(プリーステスよりも最強))」• "()()()" 以下略• "()(())"• "(())()"• "(()())"• "((()))"*8 邪王真眼(最強(最強)(プリーステスよりも最強))*9 邪王真眼(最強(最強(プリーステスよりも最強)))1.2 邪王真眼括弧最強括弧閉じ中括弧最強中括弧閉じ

3

1.2 邪王真眼括弧最強括弧閉じ中括弧最強中括弧閉じ
勇太「よし、じゃあ括弧の種類を増やしてみるのはどうだ?」
六花「邪王真眼中括弧最強中括弧閉じ*10 」
勇太「いいんじゃないか」
六花「邪王真眼小括弧最強中括弧最強中括弧閉じ小括弧閉じ*11 」
勇太「いいんじゃないか!」
六花「でも、種類が増えてもあまり変わらない」
勇太「うーん、そうか……」
ここいらで六花の更なる力を試して見るか。
勇太「じゃあ、力を更に高めるため自ら戒めを追加するのはどうだ? そうだな……こういうプログ
ラムが出力するやつだけに限るっていうのはどうだ?」f() {switch(...) {case 0: print("("); f(); print("}"); return;case 1: print(")"); f(); print("{"); return;case 2: return;}}
図 1.1: 例 1(プログラム版)

六花「switch(...) の中身は?」
勇太「そこは 0 でも 1 でも 2 でも自由に分岐して構わない」
六花「最強は?」勇太「適当に付けてくれ」
六花「むむむ……ちょっとよく分からない」
勇太「そうか……? ちなみに文脈自由文法だとこんな感じで書けるな。開始記号 S から生成される文字列のうち括弧の対応が取れたものだけを用いて称号に用いるのだ」

S → ‘(’ S ‘}’| ‘)’ S ‘{’| ε
図 1.2: 例 1(文脈自由文法版)

六花「邪王真眼小括弧最強小括弧閉じ中括弧最強中括弧閉じ*12 」
勇太「お前、プログラムだとダメなのに BNF だとイケるのか」
六花「邪王真眼小括弧最強小括弧最強小括弧閉じ小括弧閉じ中括弧最強中括弧最強中括弧閉じ中括*10 邪王真眼{最強}*11 邪王真眼(最強{最強})*12 邪王真眼(最強){最強}第 1 章 小鳥遊六花 (邪王真眼 (最強)) はチューリング完全を凌駕する

4
弧閉じ*13 」
解説

ここで、プログラム (図 1.1) の場合では

1. f を呼び、switch(...) で 0 に分岐する
2. f を呼び、switch(...) で 1 に分岐する
3. f を呼び、switch(...) で 2 に分岐する
4. return, return, returnという流れで"(){}"が出力されます。六花はこれを「邪王真眼(最強){最強}」と発音しているわけですね。
文脈自由文法 (図 1.2) の場合には S → ‘(’S‘}’ → ‘()’S‘{}’ → ‘(){}’ のように展開されます。
勇太「じゃあこういうのはどうだ?」f() {switch(...) {case 0: print("{{("); f(); print("}");

return;case 1: print("{");

f(); print(")");

return;case 2: print("(");

f(); print(")}"); return;case 3: return;}}
図 1.3: 例 2(プログラム版)

S → ‘{{(’ S ‘}’| ‘{’ S ‘)’| ‘(’ S ‘)}’| ε
図 1.4: 例 2(文脈自由文法版)

六花「邪王真眼中括弧最強中括弧最強小括弧最強小括弧最強中括弧最強小括弧最強小括弧閉じ中括
弧閉じ小括弧閉じ小括弧閉じ中括弧閉じ中括弧閉じ*14 *15 」
勇太「即答とはさすがだな」
六花「ねぇ、勇太。わたし、チューリング完全を超えてない?」勇太「えっ?」
六花「わたし、感じるの……何か境界線を超えたって感覚……ひょっとして、そう、これが、計算可能性の壁……!」*13 邪王真眼(最強(最強)){最強{最強}}*14 邪王真眼{最強{最強(最強(最強{最強(最強)}))}}*15 これはプログラム (図 1.3) の場合で順に 0, 2, 1, 2, 3 に分岐した場合に相当し、文字列"{{(({()}))}}"が出力されます1.2 邪王真眼括弧最強括弧閉じ中括弧最強中括弧閉じ

5

勇太「ははっ、ないない」
六花「でも、わたし、分岐のあるプログラムの静的解析をしている。分岐の方向を解析しようとするだけで決定不能だって、ソフィアも言っていた」
勇太「大丈夫だって。ほら、今回は switch 文の分岐はあるけど、「どこに分岐してもいい」って設定だから分岐の方向は解析していない、大丈夫だよ」
六花「そうなの、かなぁ?」
解説
いいえ、実は決定不能です。switch の分岐方向は自由ですが、return の分岐方向 (つまり、どの f() の呼び出しの直後に戻るのか) は自由でない、ということが作用しています。仮に、return の後はどの f() の呼び出しの直後に戻ってもよい、という設定で静的解析すると、決定可能になります。
「プログラム (図 1.3) が出力しうる文字列全体の集合」は図 1.4 に示されるように文脈自由言語になっていますが、「プログラム (図 1.3) が出力しうる括弧の対応の取れた文字列全体の集合」
は、「図 1.4 に示される文脈自由言語」とT → ‘{’ T ‘}’| ‘(’ T ‘)’| εで示される「括弧の取れた文字列全体の集合 (これも文脈自由言語です)」の共通部分となります。一般には 2 つの文脈自由言語の共通部分集合は文脈自由言語とは限りませんが、今回の場
合は実際に文脈自由言語でない (決定可能ですらない) ことが以下のようにして示されています (論文 [1])。
「勇太の与えたプログラムに対して、括弧の対応のついた文字列を出力するような分岐パターンがあるか否か」という問題は、決定不能問題である「ポストの対応問題」を包含します。
「ポストの対応問題」とは、「文字列が上下に書かれたカードが何種類か与えられた時に、それらを 1 枚以上並べて (各種類何枚でも使えます)、上側の文字列を順につなげたものと下側の文字列を順につなげたものが一致するような並べ方が存在するか」を判定する問題です。たとえば、入力がカード#0 :

0
1
011
, カード#1 : , カード#2 :
,
0
1
001

の場合、カード #0, #1, #1, #2 の順に並べると

011
0

0
1

0
1

1
001

と上下ともに 011001 なるので Yes、
カード#0 :

110
, カード#1 :10の場合は No です。
このようなポストの対応問題の入力 (インスタンス) 一つに対して、勇太の与えたようなプログラムが一つ存在し、「ポストの対応問題の答えが Yes(上下の文字列が一致するようなカードの並べ方がある)」と「プログラムが括弧の対応付けが取れている文字列を出力する実行パス

第 1 章 小鳥遊六花 (邪王真眼 (最強)) はチューリング完全を凌駕する6がある」ことが一致し、そのようなカードの並べ方とプログラムの実行パス (switch での分岐方向) とが一致する。例えば、例 2 のプログラム (図 1.3) に対応するポストの対応問題は、
カード#0 :{({{(, カード#1 : , カード#2 :{({(のようになります。カード#0, #1, #2 がそれぞれプログラムの case 0, 1, 2 に対応していて、カードの上の文字列は各 case で f() を呼ぶ前に出力する文字列、カードの下の文字列は f()を呼んだ後に出力する文字列を括弧の向きも含めて左右反転したものになっています。こうすることで、カードの並び順と分岐の順番を一致させると、「カード上側の文字列を連結したもの」と「カード下側の文字列を連結したもの、を左右反転したもの」をつなげたものが、プログラムが出力する文字列が一致するようになります。
実際、カードを#0, #2, #1, #2 の順番で並べると、

{{(
{

(
{(

{
(

(
{(

となり、上下ともに {{(({( となります。これが、プログラムが出力しうる括弧の対応付けが取れた出力文字列"{{(({()}))}}"と、その時の分岐方向 (0, 2, 1, 2) に対応します。

1.3 邪王真眼こんす・かぁ・こーんす・くだぁ
次回予告:ナチュラルにチューリング完全を超越してしまった邪王真眼中括弧最強中括弧最強小括
弧最強小括弧最強中括弧最強小括弧最強小括弧閉じ中括弧閉じ小括弧閉じ小括弧閉じ中括弧閉じ中
括弧閉じ*16 、そのことにダークフレームマスターはまだ気づいていないが、邪王真眼は徐々に自らの真の力に気づきだす……! 決定不能の海から力を引き出しはじめる時、邪王真眼は自分自身で居られるのか?

—……と、いうこともなく、六花は三日で自らの決定不能性を証明し、勇太の「マジか」の一言を引き出した後は何ごともない日常へと戻っていった。考えてみれば不可視境界線を見つけた二人にとって、決定可能性の境界などどうってことないのかもしれない。
六花「しかし、この問題について既に組織の研究者が論文を書いていたとは……邪王真眼の称号は世界にとってやはり最重要事項ということか……」
勇太「いや、普通に実用的な意味があるんだろ。プログラムの静的解析をしている、ってお前も言ってたじゃないか」
六花「しかし、そのプログラムは邪王真眼の称号を出力するプログラム……邪王真眼静的解析!」
勇太「もっと普通な用途もあるぞ。例 1(図 1.1) を普通の用途のプログラム解析っぽく書き直すと、こんな感じになる」*16 邪王真眼{最強{最強(最強(最強{最強(最強)}))}}

1.3 邪王真眼こんす・かぁ・こーんす・くだぁ

7f(x) {
switch(...) {case 0:x = cons(x, nil);x = f(x);x = cdr(x);return x;
case 1:x = car(x);x = f(x);x = cons(nil, x);
return x;
case 2:
return x;}}
図 1.5: 例 1 改 (プログラム版)

勇太「で、「図 1.5 で、任意の x に対して f(x) == x となるような実行パスが存在するか」って問題が、「図 1.1 で、括弧の対応付けが取れた文字列を出力する実行パスが存在するか」って問題と同じになっているんだ」
その後俺は詳しく説明しようとしたが、六花「かぁ?」
勇太「うん?」
六花「くだぁ」
そんな六花がかわいかったので、
勇太「そうだ、邪王真眼よ、car・cdr・cons は世界の全てを構築する根源の三要素! これらを正し
く組み合わせた称号を名乗るものが世界を制する! まずは手始めに先日のプログラムと同じ分岐パ
ターンを辿った時に呼ばれる根源要素を並べて本日の邪王真眼の称号とするのだ!」
六花「邪王真眼こんす・かぁ・こーんす・くだぁ*17 」
勇太「うむ」
六花「邪王真眼こーんす・こーんす・こんす・こんす・こーんす・こんす・かぁ・くだぁ・かぁ・
かぁ・くだぁ・くだぁ*18 」
勇太「かわいいぞ」
説明は今度でいいか。
解説car(cons(x, nil)) == x, cdr(cons(nil, x)) == x なので、

*17 例 1 改の場合。cdr(cons(nil,car(cons(x, nil))))。結局元の x に戻っている。記法の都合上、六花の発音順とコード上での順番は逆になっているが*18 例 2 の cons/car/cdr 版だとこのようになるだろう

第 1 章 小鳥遊六花 (邪王真眼 (最強)) はチューリング完全を凌駕する

8
例 1 で出力される括弧例 1 改で実行される操作(

x = cons(x, nil){x = cons(nil, x))

x = car(x)}x = cdr(x)という対応付けをすることで、「一連の操作の後で必ず元の値に戻っている (f(x) == x)」ということを「括弧の対応付けができている」と一致させることができ、より実用的な静的解析の問題に関連づけることができます。(しかし前述のように、このままだと同様に決定不能です)

参考文献[1] R EPS , T. Undecidability of context-sensitive data-dependence analysis. ACM Transactions on Programming Languages and Systems (TOPLAS) 22, 1 (2000), 162–186.

9

第2章

矢澤にこ先輩と一緒に
catamorphism！
— @public ai000ya
2.1 登場人物
2.1.1 矢澤にこ

各メンバーがそれぞれのプログラミング言語極める集団、μ ’ ｓに所属するスクールアイドル。

Pure Functional Programming と Haskell を極めるべく、常々鍛錬している。
Haskell 周りの更にニッチな分野が大好き。
2.1.2 東條希

同じくμ ’s に所属するスクールアイドル。
にこによって Haskell 漬けにされた。
にこよりは多言語、そして一般的プログラミング寄り。

2.2 導入にこ「おはよう〜、希」
希「お、にこっち。 おはようさん！」希「にこっち〜、最近なんか面白いことあったりした？」にこ「そうねー。ここのところは catamorphism について、Haskell で学んでたわ」
希「catamorphism ―カタモフィズム― ？」にこ「圏の上で考えられる概念なんだけど、畳込み. . . foldr を形式化できるの」
希

「へ〜！」

希

「うち、最近刺激がなくって暇なん。それ刺激強そうやん、詳しくおしえて〜な」にこ「そうねえ、私の復習にもなるし。いいわよ、今日はニコニーの畳み込み講座よ！」にこ「にこは data-fix*1 の hackage を見て学んだわ」にこ「今回解説するコードの全文はここ*2 にあるわよ」*1 https://hackage.haskell.org/package/data-fix-0.2.0/docs/Data-Fix.html*2 https://github.com/aiya000/catamorphism-with-nico

第 2 章 矢澤にこ先輩と一緒に catamorphism！

10

2.3 流れについてにこ「catamorphism は F-始代数っていうモノの上で表現されててね、F-始代数は F-代数っていうモノと一緒に考えられるの」
希「いきなり概念がいっぱい出てきたなぁ、すごい。F-代数、F-始代数、catamorphism？」にこ「ええ、アイドルの必修概念ね。大丈夫、今回の話だと、出てくる概念といえばこれくらいだから」
希「これらが全部って考えると、確かに少ないかも」にこ「ところで希も Haskell が好きよね。今回はこんな流れで、Haskell コードと解説を交えつつ進
めていければと思うわ」
希「Haskell かな〜やっぱ w」

1. F-代数について
2. F-代数の準同型写像について
3. F-始代数について
4. catamorphism について

2.4 F-代数を Haskell で表すにこ「改めて確認するけど、希は F-代数、知ってる？」
希「知らんなぁ。 モノイド、群、環とかの仲間？」にこ「ううん。F-代数は圏の上で考えられる構造だから、それらの代数的構造とは基本が違うかな」にこ「圏で語れる話だから、数式が苦手な人でも安心ね」
希「うち、可換図式も好きや〜」にこ「F-代数の F は、ある自己関手 F のことなの」
希「Haskell の Functor F インスタンス？」にこ「そうそう」

instance Functor F where...
にこ「だから例えば自己関手 G に対しては G-代数. . . みたいに言ったりするわ」
希「なるほど、F ありきのものやから F-代数なんやね」にこ「ええ、ある関手 F に対しての F-代数ね」にこ「F-代数は (Int, F Int -> Int) のような、適当な圏の上の、対象と射の組なの」
希「F Int -> Int って不思議な射の形やね」にこ「そうなのよ、そこがまた面白いのよー」にこ「F-代数 (X, F X -> X) を、言葉を乱用して F-代数 X とか言ったりもするわね」
希「ふむふむ。『F-代数 Z』って言ったら (Z, F Z -> Z) のことを指す. . . って感じでええ？」にこ「あってるわ」にこ「F-代数を Haskell の型クラスで表現してみると. . . こうね。f a -> a があれば a の値も 1 つ
以上あるはずだから、ここでは object :: a みたいなものは要請しないでおくわ」

2.4 F-代数を Haskell で表す

11-- | ある f に対する f-代数 (a, f a -> a) の表現
class Functor f => FAlgebra f a where
down :: f a -> a -- ^ ある f a -> a の値
「FAlgebra G Int は、圏 Hask*3 の上の G-代数 (Int, G Int -> Int)？」

希にこ「そうなるわね」にこ「ここでそのインスタンスを定義する前に、catamorphism を扱う上でわかりやすい関手を定義してみるわ」-- |-- ‘-- Cons 10 (Cons 20 (Cons 30 Nil))--:: List Int (List Int (List Int (List Int b)))-- ‘-- のように型が再帰するリスト
data List a b = Nil | Cons a bderiving (Show)-- | わかりやすさのために Int に特殊化する
type IntList = List Int• Cons :: Int -> b -> IntList b• Nil :: IntList bにこ「ちょっと多相性が犠牲になってしまうけど、簡単にするために今回は IntList というのを定義したわ」
希「ふむふむ」にこ「値はこんな感じに定義できる」

xs :: IntList (IntList (IntList (IntList b)))xs = Cons 10 (Cons 20 (Cons 30 Nil))
希「型と値の見た目が同じやね。あ、Nil :: IntList b だから、値と比べて型のネストが 1 つ多いな」希

「ふむふむ、ghci を起動して. . . っと」>>> :t Nil
Nil :: List a b>>> :t Cons 10 Nil*3 Haskell の各型が対象、各関数が射の圏ね。Hask が厳密に圏かどうかは諸説あるけど、ここではボトムや評価戦略について考えず、圏であるとするわ。

第 2 章 矢澤にこ先輩と一緒に catamorphism！

12Cons 10 Nil :: Num a1 => List a1 (List a2 b)>>> :t Cons 10 (Cons 20 Nil)Cons 10 (Cons 20 Nil) :: (Num a2, Num a1) => List a1 (List a2 (List a3 b))
希「IntList に特殊化すると、こうやんな」• Nil :: IntList b• Cons 10 Nil :: IntList (IntList b)• Cons 10 (Cons 20 Nil) :: IntList (IntList (IntList b))にこ「ちょっとちょっと希〜、理解力がはやいじゃないの」
希「型安全の精霊が、うちに教えてくれるんよ」にこ「なかなかスピリチュアルね」にこ「これは後でやる、F-始代数 Fix っていうので扱うとちょうどそれらが同一の型で扱えるよ
うになるの！」にこ「こんな感じね」

nil :: Fix IntList
cons :: Int -> Fix IntList -> Fix IntList
xs’ :: Fix IntList
xs’ = cons 10 (cons 20 (cons 30 nil))希「ほえー、それぞれ異なる型を持つ値を同一に扱える. . . ってすごいやんな」にこ「型が再帰しているという限定的な状況下でのみの話だけどね。そういう Fix みたいなものとかを recursion scheme とか言ったりするみたいね」にこ「あとはこれの Functor インスタンスが必要ね」-- | IntList が f-代数の f になれるようにする
instance Functor IntList wherefmap _ Nil = Nilfmap f (Cons x xs) = Cons x $ f xsにこ「いくつか IntList-代数のインスタンスを定義してみましょう」-- | IntList-代数 (String, IntList String -> String)
instance FAlgebra IntList String where
down :: IntList String -> String
down Nil = []down (Cons _ xs) = ’0’ : xs-- | IntList-代数 (Int, IntList Int -> Int)instance FAlgebra IntList Int where2.5 F-代数の準同型写像を Haskell で表す

13

down :: IntList Int -> Int
down Nil = 0
down (Cons _ n) = n + 1
希「ふむふむ」

xs :: IntList (IntList (IntList (IntList b)))xs = Cons 10 (Cons 20 (Cons 30 Nil))checkList :: IO ()checkList = print (xs @ ())-- {output}-- Cons 10 (Cons 20 (Cons 30 Nil))
希「なるほどな〜」

2.5 F-代数の準同型写像を Haskell で表すにこ「モノイド、群、環には準同型写像ってあったじゃない」
希「あったなぁ、代数の醍醐味やよね。 すきやわ〜」にこ「やっぱロマンよね〜、準同型写像は！」にこ「F-代数も代数って言われるだけあって、やはり準同型写像が定義されるわ」
希「話から察してたけど、さすがやんなー」にこ「ある Functor F と型 A,B に対して、(a, A) から (b, B) への準同型写像は. . . こんな (fmapf, f) よ」
• a : F A -> A
• b : F B -> B
• instance Functor F• (fmap f, f) :: (F A -> F B, A -> B)にこ「f . a = b . fmap f を満す必要があるわ」
希「なるほど。こんな太い矢印が準同型写像 (fmap f, f). . . っていうイメージであっとる？」にこ「ええ、まさにそれね」にこ「Haskell のコードで表現すると、こんな感じかしらね」-- | f-代数 a から f-代数 b への準同型写像
data FHomo f a b = FHomo{ higher :: f a -> f b, lower:: a -> b}-- | ‘a -> b‘から fmap で‘f a -> f b‘を導くスマートコンストラクタ
fhomo :: Functor f => (a -> b) -> FHomo f a b
fhomo f = FHomo

14

第 2 章 矢澤にこ先輩と一緒に catamorphism！

図 2.1: falg-homo

図 2.2: falg-homo-thin2.5 F-代数の準同型写像を Haskell で表す

図 2.3: list-alg-homo{ higher = fmap f, lower= f}にこ「試しに、さっきの IntList-代数 String と Int の準同型写像を定義してみるわ」-- | IntList-代数 String から Int の準同型写像
homoStringToInt :: FHomo IntList String Int
homoStringToInt = fhomo lengthにこ「homoCharInt がちゃんと法則を満たしているかは、これでチェックできるわ」-- |-- ‘FHomo f a b‘の満たすべき法則-- （Haskell 上で確認するために、特別に Eq 制約を追加）
homoLaw :: forall f a b. (FAlgebra f a, FAlgebra f b, Eq b)=> FHomo f a b-- ^ 検査の対象-> f a -- ^ 始点-> Bool
homoLaw FHomo{..} fa =let overWay= lower . down:: f a -> b

underWay = down . higher :: f a -> b
in overWay fa == underWay fa

15

第 2 章 矢澤にこ先輩と一緒に catamorphism！

16

図 2.4: list-alg-homo-thin

希「こんな感じかな？」にこ「その通り♪」
希「確認してみるなー。本当は QuickCheck 使うべきだと思うけど、今回は堪忍してや〜」

checkFHomo :: IO ()checkFHomo = dolet answer = homoLaw homoStringToInt Nil &&homoLaw homoStringToInt (Cons () "xyz")
putStrLn $ "Is homoStringToInt a valid homomorphism?: " <> show answer-- {output}-- Is homoStringToInt a valid homomorphism?: Trueにこ「おっけーね」
希「おっけーやんっ」

2.6 F-代数の圏にこ「F-代数とその準同型写像は圏を為すわ」
希「スピリチュアルやね！」にこ「さっき希が書いてくれたこれを使わせてもらうと」にこ「ある F-代数の圏の可換図式としては、ちょうどこんな感じに書けるわね」にこ「a は a : F A -> A、F-代数の片割れね。b も同じ」にこ「IntList-代数の方はこんな感じ」

2.7 F-始代数を Haskell で表す

17

図 2.5: falg-homo-thin

図 2.6: falg-category

2.7 F-始代数を Haskell で表すにこ「あとは F-始代数っていうのがわかれば、ついに catamorphism についての下地は完了かな」
希「始代数. . . これまたコスモな言葉やんな」にこ「F-始代数は F-代数の圏の始対象なの」
希「始対象？」にこ「始対象はね、任意の対象への射が各 1 つずつあるような対象よ。こんな感じ」

18

第 2 章 矢澤にこ先輩と一緒に catamorphism！

図 2.7: list-alg-category

図 2.8: initial-object

2.7 F-始代数を Haskell で表す

19

図 2.9: list-alg-initial-object

希「あーそういえば集合論だと、空集合から任意の集合にちょうど 1 ずつの写像が定義されたなぁ」にこ「そり。 集合と写像の圏だと空集合が始対象ね」にこ「F-代数の圏で、この Fix のような始対象 ― F-始代数 Fix F ―を考えてみましょう。(a, A) と(b, B) はさっき使った F-代数ね」にこ「実際 Fix は任意の f に対して、このように定義できるわ」-- | Fix f = f (Fix f)
newtype Fix f = Fix{ unFix :: f (Fix f)}にこ「ここで証明は省くけど*4 、Lambek の定理というのが F (Fix F) ~ Fix F であることを説明するわ」にこ「今回の~はいわゆる『同型を除いて一意』ってやつね」
希「同型を除いて一意？」*4 Lambekの 定 理 の 内 容 に つ い て は こ の 記 事 が わ か り や す い と 思 う わ
https://qiita.com/karrym/items/62c46a2c7640912a1a28#lambek%E3%81%AE%E5%AE%9A%E7%90%86

第 2 章 矢澤にこ先輩と一緒に catamorphism！

20にこ「うん。例えば. . . 集合の圏では圏論が集合の中身について言及しないから、別の一元集合を区別できないの。それについて {x} ~ {y} って表したりするわ」
希「わかったようなわからんような. . . 」にこ「ここでは『圏論的に同じ対象』っていうゆるい理解でもいいと思うわ」
希「めっちゃフランクになったな！ ありがとやん」

希「この Fix って、あの再帰関数を作るときに使う fix 関数*5 と関連あるんかな？」にこ「ええ、その名前を踏襲しているわ。fix 関数もとい不動点コンビネータ fix は fix(f) =f(fix(f)) が成立するもの*6 として説明されるけど、Fix はまさに Fix f = f (Fix f) ね」
希「ぐぬぬぬ. . . ちょっとむずかしいなぁ. . . 」にこ「にこも最初見た時に直感が追いつかなかったわ. . . 。 recursion scheme の型々はむずかしいわ
よね」にこ「大丈夫。F-始代数の特性が理解できたら、イメージがつかめると思うわ」
2.7.1 Fix に対する直感

希「Fix f っていう型やばない？ まだようわからんけど、無限再帰して止まらなさそうな. . . 」にこ「それは多分、これについての直感じゃないかしら」-- | Fix 版の値構築子 Identity（これは定義できる）
identity :: Fix Identity -> Fix Identity
identity = Fix . Identity-- ↑の値構築子の型
Fix:: Identity (Fix Identity) -> Fix Identity

Identity :: Fix Identity -> Identity (Fix Identity)-- | Identity は基底部がないので値が定義できない！
x :: Fix Identity
x = identity (identity (identity (...??)))
希「ああ、なるほど。 それや！」にこ「わかる（迫真） にこも最初、直感がついていかなくてね。同じ感覚に陥ったわー」にこ「Fix F のような型の値を定義するには再帰の基底部になる値が必要. . . というのを意識してみたら、にこはこれを直感に落とし込めるんじゃないかしら」にこ「まずは実際に、値を定義してみるわね」-- | Fix 版の値構築子 Nothingnothing :: Fix Maybe
nothing = Fix Nothing-- ↑の値構築子の型-- Fix:: Maybe (Fix Maybe) -> Fix Maybe*5 https://ja.wikibooks.org/wiki/Haskell/不動点と再帰*6 https://ja.wikipedia.org/wiki/不動点コンビネータ

2.7 F-始代数を Haskell で表す

21-- Nothing :: Maybe (Fix Maybe)-- | Fix 版の値構築子 Just
just :: Fix Maybe -> Fix Maybe
just = Fix . Just-- ↑の値構築子の型-- Fix:: Maybe (Fix Maybe) -> Fix Maybe-- Just :: Fix Maybe -> Maybe (Fix Maybe)にこ「Nothing :: Maybe a のような、型引数 a について forall な Value :: F a が基底部になるの」希「ああ、もしかして Nothing :: Maybe (Fix Maybe) に型付くから、なのかな」にこ「その通りよ！ そのような基底部が作れたら、あとはもう自由ね」-- | 再帰の基底部‘Nothing :: forall a. Maybe a‘のおかげで、値が定義できた！
x :: Fix Maybex = just (just (just nothing))
y :: Fix Maybey = just (just nothing)z :: Fix Maybez = just nothing
希「IntList も Nil :: IntList b あるし、それが基底部になるんかな」にこ「うん、その通りね！」
希「なるほど、やってみるな」

希「コンパイル実行っと」-- | Fix 版の値構築子 Nil
nil :: Fix IntList
nil = Fix Nil-- | Fix 版の値構築子 Cons
cons :: Int -> Fix IntList -> Fix IntList
cons x xs = Fix $ Cons x xs
xs’ :: Fix IntList
xs’ = cons 10 (cons 20 (cons 30 nil))希「わーい、通ったで！」にこ「やったニコッ」

第 2 章 矢澤にこ先輩と一緒に catamorphism！

22

図 2.10: catamorphism-composition

2.8 catamorphism を導出する
2.8.1 F-始代数からの準同型写像にこ「話は戻って F-始代数の特性についてなんだけど、前に言った通り F-始代数 Fix F は任意の対象への射が 1 つずつあるわ」にこ「ということで Haskell のコードとしてはこんなもんね」-- | f-始代数から任意の f-代数への射
homoFixToA :: forall f a. FAlgebra f a => FHomo f (Fix f) a
homoFixToA = fhomo f
wheref :: Fix f -> af (Fix x) = down $ fmap f x
希「うわっ、f を定義するのに fmap f を使ってるんな」にこ「変則的な再帰ね。ここではこの可換図式で f = down . fmap f . unFix になってることがわかるだけで大丈夫よ」にこ「その書いてくれた Hask の可換図式を拡張して、F-代数の圏の可換図式でこう書くとこうなって. . . 前に書いた (unFix, Fix F) と (a, A) と (b, B) の可換図式にちょうど合致するわね」にこ「んっしょ、元あった (fmap f, f) : (a, A) -> (b, B) は g っていう名前に退避して. . . っと」

2.8 catamorphism を導出する

23

2.8.2 カタモフィズムスにこ「ということで、やっとこさ catamorphism に必要な予備知識が揃ったわ！」
希「おお〜〜、やったやで〜！」にこ「それでね。 catamorphism って一般的にはこんな型をしててね」-- | catamorphism は右畳み込みを行うための、このような型を持つ
cata :: Functor f => (f a -> a) -> Fix f -> aにこ「こんな感じで右畳込みを行えるのよ」-- | 畳み込みの例
length’ :: Fix IntList -> Int
length’ = cata $ \case
Nil

-> 0

Cons _ xs -> 1 + xs-- | 畳み込みの例
sum’ :: Fix IntList -> Intsum’ = cata $ \case
Nil

-> 0

Cons x xs -> x + xs
checkCata :: IO ()checkCata = doprint $ length’ xs
print $ sum’ xs-- {output}
-- 3
-- 60
希

「うおお、catamorphism の実物やん！」にこ「いい型してるでしょ！ 本当にたまらない型よね. . . フフフ. . . ！」希

「せやな（恍惚）」にこ「さっきまで私たちが書いてた形式は簡単のためにいくらか変形してるから、この一般的な

cata を私たちと同じ形式に直してみるわね」
希「ほむ」にこ「まず、私たちの形式だと Functor f => f a -> a は FAlgebra f a によって導出できるわ」• down :: FAlgebra f a => f a -> a

第 2 章 矢澤にこ先輩と一緒に catamorphism！

24-- | ‘FAlgebra f a‘の指定によってその down が使えるので、引数で受け取らなくていいcata :: FAlgebra f a => Fix f -> aにこ「Fix f -> a は始代数の射 ―つまり f-始代数から f-代数への準同型写像 ―なので、準同型写像を表す FHomo の表現に置き換えることができる」-- | f-始代数 Fix f から f-代数 a への準同型写像 FHomo f (Fix f)cata :: FAlgebra f a => FHomo f (Fix f) aにこ「そしてこれはさっきの homoFixToA と同じ型ね」
希「おっ. . . 」にこ「何を隠そう、実はさっきの homoFixToA こそ catamorphism なのよ」
希

「な、なんやってー！！？」にこ「そう。つまり畳み込みっていう演算は、f-代数の上でとても自然な演算なの！」
2.8.3 実演カタモフィズムにこ「私たちの catamorphism と IntList で、実際に畳み込んで終わりといきましょう」
希「けっこう長かったな〜」にこ「でも、F-代数、楽しかったでしょ」
希「めっちゃ楽しかったでー！」にこ「そんで畳み込みだけど. . . 」にこ「簡単のために down を型クラスで固定しちゃったから、こんなものかしらね」-- | down を固定しているので、再帰の方法をここで示す必要はない
length’ :: FHomo IntList (Fix IntList) Int
length’ = cata希

「そのまんま cata なんな」にこ「ええ、FAlgebra IntList Int インスタンスからその down :: IntList Int -> Int‘を導出できるからね」にこ「さっき（『Fix に対する直感』）希が書いてくれた xs' :: Fix IntList を使って. . . 」にこ「こうね！」

checkOurCata :: IO ()checkOurCata =putStrLn $ "the length is " <> show (lower length’ xs’)-- {output}-- the length is 3
希

「わぁ〜。 うち、畳み込みを完全に理解した！」にこ「畳み込み完全に理解した」

2.8 catamorphism を導出する

25

2.8.4 catamorphism は実際 foldr だよにこ「ちなみにこれらの catamorphism の型をリスト型に向けて更にほぐすと、勝手のよく知るあのfoldr になるわ」にこ「ほぐしてみましょうか」にこ「私たちはもう理解に及んだし、ここらの簡単のための変な特殊化はいらないわね」-- | ‘Functor IntList‘インスタンスを一般化
instance Functor (List a) wherefmap f Nil = Nilfmap f (Cons x xs) = Cons x $ f xs-- | ‘nil :: Fix IntList‘を一般化
nil :: Fix (List a)nil = Fix Nil-- | ‘cons :: Int -> Fix IntList -> Fix IntList‘を一般化
cons :: a -> Fix (List a) -> Fix (List a)cons x xs = Fix $ Cons x xs-- |-- ‘cata :: FAlgebra f a => FHomo f (Fix f) a‘を一般化。
-- ‘f a -> a‘が FAlgebra から解放され-- 冗長な FHomo の表現はもはや必要とされない。
cata :: Functor f => (f a -> a) -> Fix f -> acata f = f . fmap (cata f) . unFixにこ「そしてこんなヘルパー関数を定義して」-- |-- Fix (List a) と [a] が等価な表現であること-- （双対は右辺と左辺を反転すると作れる）
unusual :: [a] -> Fix (List a)
unusual [] = Fix Nil
unusual (x:xs) = cons x $ unusual xs-- |-- ‘Cons x xs‘の x と xs を渡された関数で合わせるか、-- もしくは‘Nil‘をそのまま返す。
plus :: (a -> b -> b) -> b -> List a b -> bplus _ def Nil = defplus f _ (Cons x z) = f x zにこ「そしたらもう foldr の完成ね」

第 2 章 矢澤にこ先輩と一緒に catamorphism！

26

図 2.11: like-oppai-- | 各変換から cata で構成された foldr
foldr :: forall a b. (a -> b -> b) -> b -> [a] -> bfoldr f init = cata (plus f init) . unusual希「これっ. . . foldr やん〜。 すごーい！」にこ「でしょでしょ♪」2.9 終わりにこ「というところで、ふう。 今回はこれでおしまいね」
希「ボリューム満点やったね。 すごい楽しかったわ、ありがとうね♪」にこ「ええ」にこ「F-代数と catamorphism はどうだった？」希「そうやんね。構造がめっちゃフェチズム刺激する感じで、めっちゃ楽しかったな。にこっちともふたりきりでいっぱい話せて、うれしかったわ〜」にこ「あら、こちらこそ楽しかったわよ」
希「あとそうやね。 うち気づいたんやけど、この図は完全におっぱいやん」にこ「んっ？」
希「うんうん。 にこっちの胸は F-代数っていうより、対象 A やんね」にこ「う、うるさいわね、アイドルはバストサイズじゃないのよ。そういう希はどうなの. . . よ. . . 」
希「ふふふ。 見ての通り、うちのはしっかり F-代数やんよ*7 。ほれほれ」たゆんにこ「やめろ、胸をおしつけてくるなー！ 私の胸を揉もうとしてくるな！」
希「へへ、にこっちの対象 A は可愛いやんな」にこ「うるさいわよ！！ アイドルはおっぱいじゃないんだからー！！」2.10

その他参考記事• 代数的データ型と F 代数 https://qiita.com/karrym/items/62c46a2c7640912a1a28*7 http://lcsious.com/other/lovelive cupsize.php

27

第3章

チルノのパーフェクト超準解析教室— @dif engine

超準解析について，上部構造の議論を抽象化した公理系に基づいて説明します．大学の理数系の学部二年生ぐらいの方を読者として想定しています．具体的には，この記事では読者が(1) 記号論理 (命題論理、一階述語論理)(2) 公理的集合論 (ZFC)
をなんとなく身につけていることを想定してします．
超準解析をすでにある程度ご存知の方向けの説明
所謂上部構造を用いた超準解析について解説します．この方式が Robinson and Zakon [26] によって創始されたときには urelement を持つ集合論が用いられていました．これは urelement を持ちえない ZFC 集合論を「日常語」としている我々にはやや《居心地のわるい》ものです．本
記事では，《相対的な原子》を持つ宇宙を公理化して扱い，ZFC 集合論の中から出ることなく超準解析を展開します．上部構造の超準解析では，超フィルターを用いた Mostowski 崩壊の構成が述べられるのが通例です [26] [12] が，本記事ではこのあたりの構成を省きました．代わりに，広大化までの超準埋め込みを公理化して扱いました．《移行原理》や《理想化原理》は論理式の書き換え規則ともみなせるものです．数学的主張を自明とは言い難い規則によって変形しながら行う議論は最初のうち理解するのがやや難しいようです．本記事では，そのあたりの説明を(x )n
やや丁寧に行いました．記事の最後には応用として 1 +→ exp(x) (n → ∞) の《オイラーn風》の証明を超準解析で補強し正当化してみました．すでにある程度超準解析をご存知の方は，必要に応じて遡行しながら 3.6 のあたりからお読みいただけるかと思います．

3.1 プロローグ
すこし前からこの紅魔館の図書館にちょくちょく訪れることにしている．紅魔館の居候でありな
がらこの図書館の主のような顔をしているパチュリー・ノーレッジのことでも揶揄おうかと思っていたのだが，あいにくこの日は留守だった——珍しいこともあるものだ．バルザックの『セラフィタ』を読んでいるとチルノが図書館に入ってきた．
彼女はこちらを見つけると六枚の氷翼をはためかせながらこちらに来て，いきなりこう言ったのだった——「アリス・マーガトロイドさん，超準解析について教えてください！」
こちらが返事を言う暇も与えず，チルノは《超準解析》についてひとしきりまくしたてた．彼女の長広舌を要約すると，どうやら《超準解析によって微積分の話が全部簡単になる》と認識している

28

第 3 章 チルノのパーフェクト超準解析教室

らしい．
「——それはどうでしょう．超準解析自体の学習コストを考慮しないと《簡単になる》とはいい切れないのでは？」「んじゃあ超準解析でやる微積分は普通のやつより難しいんですか？」「少なくとも《簡単》とはいい難い」「ふーん...... なんでそんな難しいものが流行ってるんでしょうね？」「流行ってる——超準解析が？」どこで流行っているのだろうか．
「あたいは，実はユーチューバーなんですよ！」脈絡を無視して彼女は誇らしげに言った．ユー
チューバー……You chew bar?
「えーと，アリスさんにもわかりやすく言うとユーチューブってのがあって，これは電波の代わりにインターネットをつかったテレビです．そこでチャンネルを持ってるあたいみたいな人が《ユーチューバー》です」「なるほど，変調波の代わりにインターネット回線を流れるパケットで映像を受信するテレビ」「まーそんな感じ．でも，あたいみたいにチャンネルを持ってる人が何万人もいるんです．競合相手ってわけですよ．んで，あたいって色んなものを凍らせるの得意じゃないですか？ それで番組に特色を出そうと『いろんなものを凍らせてみたシリーズ』と銘打ってまあ色々やってみたんです
けどね．マヨネーズとかケチャップとかコーラとか……コーラは爆発したっけ……他にサバの味噌煮缶とかヨーグルトとかやったっけ．でも，あたいのチャンネルってば平均再生数が 9 とかで」「それは大変ね」「思いつきで奇抜なコンテンツを作ろうとしてもだめだったんで，今度は超準解析の講座をやろうと考えたってわけです．まーそんなわけで，詳しい人に教わろうと思って」「一体どうしてそこで超準解析」「だって超準解析ってなんかかっこいいし，なんか面白そうじゃないですか」
こんな会話が続くうちに——「いいでしょう．すこしだけなら超準解析について教えてあげる」——と言うことになったのだった．
つまりはバルザックの流麗たる筆致にいささか退屈を覚えていたということなのかもしれない．

3.2 超準解析の背景
3.2.1 素朴な《無限小》概念の問題点「ところで超準解析については何を知ってるの」「あたいも詳しくないけど，《無限小》とか《無限大》みたいな不合理な数を合理化してくれるっぽい」「《無限小》が不合理というのはどういうこと」「そういうのを考えると矛盾するわけです．たとえば ε がそういう《無限小》の実数でゼロじゃな
いやつとすると(1) ∀a > 0 ( |ε | < a).
(2) ε , 0.ってことになるはず——素直に考えれば——だけど (1)(2) を組み合わせると例えば |ε | < |ε | とか出てくるからダメです」「そうね．無限小量はその誕生当時から不合理なものとして批判されてきた．それでも初期の微積分においては無限小量が積極的に使われていた．たとえば関数 f の x における微分は無限小量 ε によって

3.2 超準解析の背景

29
f (x + ε ) − f (x)εと定義された． f (x) = xn の場合に計算してみると(n)(x + ε )n − xn
∑nk=1 k xn−k ε k
=
ε
ε ( )
n
n n−k k−1
= nxn−1 + ∑
x ε
k=2 k
= nxn−1 .

(3.1)
(3.2)
(3.3)

のようになる．式 (3.1) から式 (3.2) へ移行できるのは ε がゼロではないからだけど，式 (3.2) から式 (3.3) に移行できるのは ε がゼロだから．このように，一つの量をゼロではないとみなしたりゼ
ロだとみなしたりする恣意的な計算を，ジョージ・バークリーは『解析者』において論理の基礎に立ち戻って次のように批判した [2]」：bababababababababababababababababababab

二つの矛盾した仮定から正しい結論を直接導くことが不可能なのは全く明らかである．もちろん何を仮定することも可能である：しかしその後に最初の仮定を台無しにするような仮定をしてはいけない．
「それにしてもジョージのやつはなんでこんなに偉そうに上からものを言いなんです？ あたいはそっちのほうが気になるなあ」「バークリーは後にアイルランド国教会の主教にまでなった人」「ほう，ジョージはなかなかの大物じゃないですか」「バークリーが微積分を批判した意図は『解析者』のサブタイトル『不信心な数学者へ向けられた
談話．近代解析における目的，原理そして推論が宗教的神秘と信仰の観点よりも際立った着想であるか，あるいは確かに演繹されたものかどうかが検証されている』からある程度読み取れると思う」「あたいにはよくわからないな．なんでこんなに躍起になって微積分をディスったんでしょうか．
いまだって本を一冊書くってのは大変なことですけど昔はもっとずっと大変だったわけですよね．
その情熱は一体なんなんでしょうね？」「バークリーの微積分批判の背景には，科学の発達が唯物論的無神論に結びつくという懸念があったらしい」「ふーん，微積分のおかげで機械論的自然観が流行ると《神の摂理》みたいのが響かなくなってヤだから微積分の基礎にアヤをつけてみたって感じ？」「そうかもしれない」「それにしても，自分が主張したいことを補強するんじゃなく，敵の主張の欠陥を突く方面に論陣を張るってのは，やっぱり性格——ですかねえ？」「さあ．こっちもバークリーに詳しいわけじゃないので」
3.2.2 一度は葬られた《無限小》がどうして復活できたのか「《無限小》概念を復活させたのは超準解析．その超準解析が可能になったのは，論理学とメタ数学が発達したおかげ」「じゃあ論理学が最初から発達してたら《無限小》を追放する必要もなかったってことですか？」「If it was so, it might be; and if it were so, it would be, but as it isn’t, it ain’t.」「『ふしぎの国のアリス』でしたっけ，それ」

第 3 章 チルノのパーフェクト超準解析教室

30「『鏡の国のアリス』．トウィードルディーのセリフ」「ふーん...... まあ歴史はそうならなかったんだからそれ以上考えても仕方ないね，確かに．それにしてもメタ数学ってなんか難しそうですね」「難しいかどうかは人による」「そりゃそうか．でもなんだってメタ数学なんかが出てくるんで？」「《普通の》実数体 R とは別に超準解析では《∗R》というものを考える．この二つの数学的対象が• どのような意味で同じか• どのような意味で違うかを論じ，また二つの対象の間の行き来を記述するための適切な語彙をメタ数学は提供してくれるから」「なるほどそれは面白いのかもだけど，それって大事なことなんですか？」「《意味》についての複数の視点が交錯する場所に超準解析の《無限小》は存在する」「なんか難しそうな話ですねえ．えーと，じゃあ超準解析をやるにはメタ数学のことを知ってないとダメなんです？」「Robinson & Zakon [26] が創始したスタイルで議論すればメタ数学の前提知識はなくてもいい．この場合，メタ数学的な道具は必要に応じて導入することになるけど」「メタ数学っても色々みたいだけど，超準解析ってメタ数学のどの分野との関連が深いんですか？」「あえて言えば《モデル理論 (model theory)》かな．実際，モデル理論の教科書には超準解析の章が置かれることがある [18]．論理学の教科書で完全性定理やコンパクト性定理の応用として超準解析が解説されることもある [3] [4] [5]」3.2.3 超準解析の流儀「念のために言えば，《超準解析》にも実は色々なやり方がある」「一番いいやつで！」「どれにも一長一短あるから《これが一番》というのは決めがたい」「てか，そもそも超準解析のやり方には何種類あるんですか？」「はっきりしたことは言えないけど，ある人に言わせれば八種類あるということになる [8]．もちろん，もっと細かく分類することだってできる」「んー，じゃあ《一番人気があるやつ》って言ったら？」「さっきも少し言及した Robinson & Zakon が創始した上部構造のアプローチでしょうね」
人気があるスタイルを選ぶというのは悪くない考えだ——他人の話を理解しやすくなり，自分の話を他人に理解してもらいやすくなるというメリットを考慮すれば．
「じゃあそれでお願いします！」「上部構造のアプローチでは(1) V に似た性質を持つ集合 U を作る(2) 超フィルターを用いて U の有界超冪 (bounded ultrapower) を作る(3) Mostowski 崩壊を構成し，U の有界超冪を別の宇宙 W に埋め込むという話をすることになる．このあたりの話は面倒だし，この面倒さで超準解析に挫折してしまう人もいる．ここでは上部構造の議論を若干抽象化したものを用いるアプローチでやる」「要するに上部構造寄りの議論ってわけですね」

3.3 宇宙31

3.3 宇宙3.3.1 宇宙の定義「最初に《推移的集合》の定義を見ておく」
定義 3.3.1（推移的集合） A が推移的集合 (transitive set) であるとは，次の条件が成立することである：∀x, y (x ∈ y ∈ A =⇒ x ∈ A) .

(3.4)

A が推移的集合であることを Trans (A) と書く．
「推移的集合ってたとえば何ですか？」「順序数なんかがそう．ただし，そういった事を知らなくても以下の議論を理解するのには差し支えない」「なるほど，そういうものですか」「準備ができたので《宇宙》の定義をする．これから扱う《宇宙》は集合サイズなので真クラスである V = {x x = x} とは違う．ただし，色々な集合論的操作について閉じているという意味では Vと少し似ている．宇宙が集合サイズであることにより，《宇宙から別の宇宙への写像》のようなものを扱う上で疑義が生じない」「《別の宇宙》ってかっこいいな」
定義 3.3.2（原子を持つ宇宙） U, S を (ZFC における通常の) 集合とする．このとき，《 U がS の元を原子とする宇宙 (universe) である》あるいはもっと短く《U が S 上の宇宙である》とは次の (U1)(U2)(U3)(U4)(U5)(U6)(U7)(U8) を満たすことである：(U1)

S ∈ U.

(U2)∅ ∈ U − S.

(U3)∀a ∈ S ∀x ∈ U (x < a).

(U4)Trans (U) .

(U5)
(U6)

∀x, y ∈ U ({x, y} ∈ U) .
()∪∀x ∈ U − S x ∩ S = ∅ =⇒x ∈U .

(U7)∀x ∈ U − S (P(x) ∈ U) .

(U8)∀x ∈ U ∃y ∈ U (x ∈ y ∧ Trans (y)) .

集合 S が文脈から明らかな場合には S への言及を省略して《宇宙 U 》などと言う．
集合 S 上の宇宙 U が与えられたとき，S の元を《原子 (atom)》と呼び，U − S の元を《実体 (entity)》と呼ぶ．
原子からなる集合 S を《基礎集合 (base set)》と呼ぶことがある．
条件 (U1) は，原子たちの集合 S が宇宙 U に属する事を述べている．
条件 (U2) は，空集合が実体であることを述べている．
条件 (U3) は，宇宙 U のいかなる元も原子の元とはならないことを述べている．
条件 (U4) は，宇宙 U が推移的集合である事を述べている．
条件 (U5) は，宇宙 U の二つの元 x, y から作った非順序対 {x, y} が U に属することを述べている．
条件 (U6) は，宇宙 U の実体 x が原子を 1 つも含まないとき∪

x も U に属することを述べている．

第 3 章 チルノのパーフェクト超準解析教室

32

条件 (U7) は，宇宙 U の実体 x から作った冪集合 P(x) も U に属することを述べている．
条件 (U8) は，宇宙の任意の元 x は，ある推移的集合 y の元であることを述べている．
「ちょっと待ってくださいよ．この《原子》ってのが引っかかります．ZFC での V には《原子》って考えないですよね？」「確かに考えない．このような《原子》を考える理由の一つは，宇宙 U を《十分大きく》しかも《大きすぎない》ようにしたいから．《大きすぎない》の方は簡単．宇宙を集合サイズにとどめておきたいから真クラス V のようなものは大きすぎる．《十分大きく》に関連して，次の定理を紹介しておく」：
定理 3.3.1（原子を持つ宇宙の存在）

空でない任意の集合 B に対して，集合 S, U が存在し次の (1)(2) が成立する：
1–1

(1)

∃φ : B −−→ S.

(2)

U は S 上の宇宙.

onto

写像 φ によって B の元を S の元と同一視すれば，U は《事実上》B の上の宇宙だと思うことができる．
「定理 3.3.1 の証明は興味深いものだけど比較的長い．また，宇宙を扱う議論を理解する上で本質的な重要と思われるテクニックは含まれていないので証明の概略だけ紹介するにとどめる．この定理の証明の一つの焦点は基礎集合 S の構成にある．ひとたび基礎集合 S が構成されたならば

S0 := S,

Sn+1 := Sn ∪ P(Sn ) (n ≥ 0),

U :=

∪

Sn .

n≥0

としてやれば確かにこの集合 U は S 上の宇宙になることが確かめられる．S := B とすることができれば話は簡単に済む．しかしながら，そのようにした場合条件 (U3) がうまくいかないことがある．
というわけで基礎集合 S の構成には少し工夫をしなければならない．このような工夫の詳細は次のような本に載っている．気になったら読んでみて」：• Chang and Keisler [18] の p.287 演習問題 4.4.1• P. Loeb and M. P. H. Wolff (eds.) [19] の p.64 からの議論「なるほど，興味が出たら読んでみます」
3.3.2 原子の扱いと通常の数学の整合性について「定理 3.3.1 から，宇宙を考えるとき，原子の集合 S を実質的に自由に選べることがわかる．たとえば古典的な解析学をやる場合なら B := R または B := C などとしてやればいい．もちろんもっと大√きく B を取ってもよい．B := R とした場合のことを考える．この宇宙 U において《 2》と我々が√呼ぶものは実際には原子《φ ( 2)》である」「確かにそうですね」「さて，《実数の構成》の議論を思い出してみよう．集合論を前提——建前と言ってもいいが——√2 という実数は，《有理数とする通常の数学において，個々の実数も集合なのだった．たとえばの切断の同値類》かもしれないし《有理数のコーシー列の同値類》かもしれない（これらの話につ√いては例えば [6] [7] などを見よ）．実数の構成の議論を前提とすれば， 2 という実数が実際には√《有理数の切断》や《有理数のコーシー列》からなる《集合》であるということは，《 2》の代わり√に原子《φ ( 2)》を扱うという方針と整合しないように思えるかもしれない．とはいえ，通常の解
析学の議論において——よく知られているように——ある実数が切断として実現されているかコー3.3 宇宙

33

シー列として実現されているかを気にする必要はない．我々が日常的に行う数学的な営みのなかでは色々なものを《内部構造を持たない何か》として——建前はどうであれ——扱っていることに注意しておく」「なるほど，そういう意味では《原子》を考えるってのは数学をやる上での感覚からして自然ってわけですね」

3.3.3 弱宇宙

「U の性質の幾つかを備えたものを《弱宇宙》と呼ぶことにする．正確には」：
定義 3.3.3（弱宇宙） 集 合 U が《 基 礎 集 合 S 上 の 弱 宇 宙 》で あ る と は 次 の(W1)(W2)(W3)(W4)(W5) を満たすことである：(W1)

S ∈ U.

(W2)∅ ∈ U − S.

(W3)∀a ∈ S ∀x ∈ U (x < a).

(W4)

Trans (U) .

(W5)∀x, y ∈ U ({x, y} ∈ U) .

集合 S に言及する必要がない文脈では《弱宇宙 U 》などと言うことにする．

• 基礎集合 S 上の宇宙は基礎集合 S 上の弱宇宙である．
• 弱宇宙についても《原子》や《実体》という言葉を同様に使う．つまり，S の元を《原子 (atom)》と呼び，U − S の元を《実体 (entity)》と呼ぶ．
定理 3.3.2（メタ定理：弱宇宙について成立することは宇宙についても成立する）

弱宇宙の公理から導かれる定理は宇宙についての定理でもある．

Proof. (略証) 弱宇宙の公理 (W1)(W2)(W3)(W4)(W5) は，宇宙の公理 (U1)(U2)(U3)(U4)(U5) に一致□することから明らか．

弱宇宙 U が与えられたとき，実体 x のすべての要素は U に属することが条件 (W4) からわかる．
これを用いると次の命題が示せる：
命題 3.3.3 U を弱宇宙とし，x, y ∈ U − S とすると次の (1)(2) が成立する：

x = {t ∈ U t ∈ x} .
()
x = y ⇐⇒ ∀t ∈ U (t ∈ x ⇐⇒ t ∈ y) .

(1)
(2)

つまり，弱宇宙 U における任意の実体は U の部分集合であり，さらに《U に制限された外延性公理》が成立している．

Proof.

(1) 任意の t ∈ x に対して，t ∈ x ∈ U なので (W4) により t ∈ U. よって：∀t (t ∈ x =⇒ t ∈ U) .
∴ x ⊆ U.

よって x = {t ∈ U t ∈ x}.

第 3 章 チルノのパーフェクト超準解析教室

34(2) (⇒) は外延性公理より明らか．(⇐) は，すでに示した (1) により x, y ⊆ U であることに注意す□

ればすぐにわかる．

3.3.4 (弱) 宇宙の性質

宇宙または弱宇宙の性質を見てゆく．
補題 3.3.4 U を弱宇宙とするとき次が成立する：∀x, y ∈ U (x ∈ y =⇒ y < S) .
□Proof. (W3) から直ちに従う．

上の命題は与えられた U の元が実体であることを確かめるために便利である．本記事での以下の議論では「(W3) より」（あるいは「(U3) より」）として使うことにする．
弱宇宙 U が与えられたとき，公理 (W5) の「行き先」条件を U − S に絞ったものが成立する：
補題 3.3.5 U を弱宇宙とするとき次が成立する：∀x, y ∈ U ({x, y} ∈ U − S) .

(W5’)

条件 (W5’) は，二つの元 x, y ∈ U から作った非順序対 {x, y} が実体であることを述べている．

Proof. x ∈ {x, y} と (W3) より {x, y} < S. よって {x, y} ∈ U − S.

□

次の命題は弱宇宙については必ずしも成立しない．基礎集合 S 上の宇宙 U が与えられたとき，公理 (U5)(U6)(U7) の「行き先」条件を U − S に絞ったものが成立する：
補題 3.3.6 U を S 上の宇宙とするとき次が成立する：()∪
x ∩ S = ∅ =⇒x ∈U −S .

(U6’)∀x ∈ U − S(U7’)∀x ∈ U − S (P(x) ∈ U − S) .

条件 (U6’) は，宇宙 U の実体 x が原子を 1 つも含まないとき∪

x も実体であることを述べている．

条件 (U7’) は，宇宙 U の実体 x から作った冪集合 P(x) も実体であることを述べている．

Proof.

(U6’) x ∈ U − S かつ x ∩ S = ∅ とすると，(U6) により y :=∪x ∈ U. 集合 y が空集合かどうかで場合分けをする．

y = ∅ のとき : (U2) により y ∈ U − S.
y , ∅ のとき : このとき ∃t0 ∃z ∈ x (t0 ∈ z). よって次が成立する：z ∈ x ∈ U.
これに (U4) を適用すると z ∈ U となる. したがって：

t0 ∈ z ∈ U.
これに (U4) を適用すると t0 ∈ U が得られる．以上により:∃t0 ∈ U (t0 ∈ y).
これに (U3) を適用すると y < S が得られる．従って y =∪x ∈ U − S.
(U7’) x ∈ U − S とすると (U7) より P(x) ∈ U. そして，x ∈ P(x) と (U3) により P(x) < S. 以上に

3.3 宇宙35

より P(x) ∈ U − S.

□

次の命題も弱宇宙については必ずしも成立しない．
命題 3.3.7 U を基礎集合 S 上の宇宙とするとき次が成立する：∀x, y (x ⊆ y ∈ U − S =⇒ x ∈ U − S ) .
すなわち，宇宙における実体 y の部分集合はまた実体である．

Proof. y ∈ U − S と (U7) より P(y) ∈ U. よって x ∈ P(y) ∈ U − S. これに (U4) を適用すると x ∈ Uとなる．x が空集合かどうかで場合分けする．

case I (x = ∅) : (U2) により ∅ ∈ U − S.
case II (x , ∅) : x = x ∩ y , ∅ なので，ある t0 が存在して t0 ∈ y ∈ U となる．これに (U4) を適用す
ると t0 ∈ U となり，結局

t0 ∈ U かつ t0 ∈ xとなるので (U3) より x < S. よってこの場合も x ∈ U − S となる．
以上の議論により，確かに命題が成立することが示された．

□

宇宙 U における実体 x から分出公理図式によって得られる集合 y はまた実体である．すなわち：補題 3.3.8 U を S 上の宇宙とし，φ (t, u1 , ..., uk ) を LZFC の論理式とする．このとき次が成立する：∀a1 , ..., ak ∀x ∈ U − S)({}t ∈ x φ (t, a1 , ..., ak ) ∈ U − S .

ノート 1（注意） 集合 a1 , ..., ak は U の外部に属する集合であっても構わない．

Proof. 任意の集合 a1 , ..., ak に対し，y := {t ∈ x φ (t, a1 , ..., ak )} とする．すると y ⊆ x ∈ U − S なので
命題 3.3.7 により y ∈ U − S となる．

□

「分出公理図式より一般的な置換公理図式は使えないんですか？」「x ∈ U − S から置換公理図式によって得られる集合は，必ずしも U に属さない．でもこれは，古典的な数学を展開する上での大きな障害とはならない．というのも，古典的な数学において展開される議論において，置換公理図式を使って自然に表現されるような集合も大抵は論理的に同値な形
で分出公理図式を用いて表現することが可能だから」「つまりどういうことですか？」「具体例で説明する．以下の二例において，左辺の集合は置換公理図式を用いて構成されているが，右辺の集合は分出公理図式を用いて構成されている」
：

{

} {
}
{x} x ∈ X = t ∈ P(X) ∃x ∈ X (t = {x}) .

{

} {
}
f (x) x ∈ X = y ∈ Y ∃x ∈ X (y = f (x)) .

f : X → Y のとき「なるほど確かにそうなりますね」

第 3 章 チルノのパーフェクト超準解析教室

36

命題 3.3.9 U を S 上の宇宙とし，x, y ∈ U − S とする．このとき次が成立する：(1)x ∪ y ∈ U − S.

(2)x ∩ y ∈ U − S.

(3)

x − y ∈ U − S.

Proof.

(1) x, y ∈ U − S と (W5’) から {x, y} ∈ U − S. これに (U6’) を適用すると x ∪ y =∪{x, y} ∈U − S.
(2) (1) により x ∪ y ∈ U − S. 補題 3.3.8 により:x ∩ y = {t ∈ x ∪ y t ∈ x ∧ t ∈ y} ∈ U − S.
□(3) 補題 3.3.8 により．

二つの集合 x, y が与えられたとき，これらの集合からなる順序対 ⟨x, y⟩ を次のように定義する：⟨x, y⟩ := {{x}, {x, y}} .
順序対の最も大事な性質は：
命題 3.3.10（順序対の基本的な性質）∀x1 , x2 , y1 , y2(

⟨x1 , y1 ⟩ = ⟨x2 , y2 ⟩ ⇐⇒())(x1 = x2 ) ∧ (y1 = y2 ) .
□Proof. 簡単なので省略する．

与えられた集合 X,Y に対し，《 p ∈ X, q ∈ Y を取ってきて順序対 ⟨p, q⟩ を作ったもの全部を集めた集合》X × Y について考えてみよう．いま p ∈ X, q ∈ Y とすると {p} , {p, q} ⊆ X ∪ Y. よって{p} , {p, q} ∈ P(X ∪Y ) . よって ⟨p, q⟩ ∈ P(P(X ∪Y ))となる．よって X × Y は分出公理図式を用いて次のように定義できる：{
X ×Y := z ∈ P(P(X ∪Y ))}∃x ∈ X ∃y ∈ Y (z = ⟨x, y⟩) .

(3.5)

集合 X,Y が与えられたとき，X から Y への関数の集合を Map(X,Y ) と表す．関数とは一価の関係であったから，要するに：{Map(X,Y ) :=f ∈ P(X ×Y )}∀ x ∈ X ∃! y ∈ Y ⟨x, y⟩ ∈ f .

(3.6)

ただし，∃!y ∈ Y A(y) は次の論理式の略記とする：()(∃y ∈ Y A(y)) ∧ ∀y1 ∈ Y ∀y2 ∈ Y (A(y1 ) ∧ A(y2 ) =⇒ y1 = y2 ) .
ここで導入した概念に関連して次の命題が成立する：
命題 3.3.11 U を基礎集合 S 上の宇宙とするとき次の (1)(2)(3) が成立する：(1)∀x, y ∈ U (⟨x, y⟩ ∈ U − S).

(2)∀X,Y ∈ U − S (X ×Y ∈ U − S) .

(3)

∀X,Y ∈ U − S (Map(X,Y ) ∈ U − S) .

(3.7)

3.3 宇宙37

Proof. (1) x, y ∈ U に (U5) を適用すると {x} , {x, y} ∈ U.*1 これに (W5’) を適用すると ⟨x, y⟩ ={{x}, {x, y}} ∈ U − S がわかる．
(2) X ×Y は式 (3.5) のように集合 P(P(X ∪Y )) からの分出を用いて定義されている．命題 3.3.9(1)により X ∪ Y ∈ U − S である．これに (U7’) を二回適用すると P(P(X ∪Y )) ∈ U − S が得られる．
よって補題 3.3.8 により X ×Y ∈ U − S.

(3) Map(X,Y ) は式 (3.6) のように集合 P(X ×Y ) からの分出を用いて定義されている．いま示した (2) により P(X ×Y ) ∈ U − S なので，補題 3.3.8 により Map(X,Y ) ∈ U − S.

□

定義 3.3.4 関数 f : X → Y と集合 A ⊆ X が与えられたとき，

{
}( {
})
f [A] := y ∈ Y ∃x ∈ A (y = f (x)) = f (x) x ∈ A .

命題 3.3.12 U を基礎集合 S 上の宇宙とし，X,Y ∈ U − S, f ∈ Map(X,Y ) とする．このとき次の (1)(2)(3) が成立する：(1)

f ∈ U − S.

(2)∀x ∈ X ( f (x) ∈ U) .

(3)

∀A ⊆ X ( f [A] ∈ U − S) .

Proof.

(1) f が空集合かどうかで場合分けする*2 ．

f = ∅ のとき : このとき (U2) より f ∈ U − S.
f , ∅ のとき :X,Y ∈ U − S と 命 題 3.3.11(2) よ り X × Y ∈ U − S. こ れ に (U7) を 適 用 す る とP(X ×Y ) ∈ U. よって次が得られた：
f ∈ P(X ×Y ) ∈ U.
これに (U4) を適用すると f ∈ U.
一方， f , ∅ より ∃x0 ∈ X ∃y0 ∈ Y (⟨x0 , y0 ⟩ ∈ f )．よって(x0 ∈ X ∈ U − S) かつ (y0 ∈ Y ∈ U − S) .
これに (U4) を適用すると x0 , y0 ∈ U が得られる．従って命題 3.3.11(1) により ⟨x0 , y0 ⟩ ∈ U − S.
以上をまとめると：⟨x0 , y0 ⟩ ∈ U ∧ ⟨x0 , y0 ⟩ ∈ f ∈ U.
これに (U3) を適用すると f ∈ U − S が得られる．

(2) X , ∅ のときだけ扱えばよい．x ∈ X に対して
f (x) ∈ Y ∈ U − S*1*2

定義より {x} = {x, x} である．
たとえば X = ∅(∈ U − S) の場合，∅ ∈ Map(∅,Y ) となる．

第 3 章 チルノのパーフェクト超準解析教室

38
なので (U4) により f (x) ∈ U.

(3) Y ∈ U − S と
f [A] = {y ∈ Y ∃x ∈ X ⟨x, y⟩ ∈ f }□に補題 3.3.8 を適用すればよい．

ノート 2 場合分けを伴う式を通常の数学の本では
式1(条件1 ),式(条件 ),
2

2

(3.8)


········· ······




式n
otherwise.
のように書くが，本記事全体を通して(条件1 ): 式1 ,
(条件 ): 式2 ,
2

·
·
·
·
·
·
·
········otherwise : 式n .

(3.9)

のようなスタイルで書く．このようにすると場合分けの中でさらに場合分けするような式を記述しやすいからである．
定義 3.3.5（pr,ap） U を弱宇宙とするとき，pr, ap : U ×U → U を次のように定義する：

pr(x, y) := ⟨x, y⟩ .
{()∃! y ∈ U (⟨x, y⟩ ∈ f )ap( f , x) :=otherwise

: y,
: ∅.

「この《∃!》ってなんでしたっけ？」「p.36 の式 (3.7) で説明した《一意的存在》の記号」「ああそうでした．ところでこの定義って何がしたいんでしょうね？」「これらの定義は次の節の《言語》に関連している．pr は，《順序対を作る操作》を顕にしたいという動機に支えられている．ap は，関数の《適用》を顕にしたいという動機に支えられている．重
要なのは• f が関数で x ∈ dom( f ) ならば ap( f , x) = f (x) である• f が関数であっても x が f の定義域に入らない場合にも値が定まるということ．pr や ap の使い方について，二重数列 (am,n )m,n∈N を例に説明する．まず《二重数列》
は要するに関数 a : N × N → R だということに注意しておく．よって」：

am,n = a(⟨m, n⟩) = a(pr(m, n)) = ap(a, pr(m, n)).
「普通は一番左の書き方をしますけど，たしかに一番右の形で書けはしますね」「あとで出てくる論理式の操作を混乱なく行うためには，必要に応じて一番右の形に書けるということを理解しておくのが大事」

3.4 (弱) 宇宙の上の言語

39

3.3.5 宇宙の性質まとめ「宇宙に関する結果をまとめると，次のようになる」：
1–1

定理 3.3.13 空でない集合 B に対して集合 S と関数 φ : B −−→ S，そして集合 U が存在して次ontoが成立する：(1)S ⊆ U.

(2)∀a ∈ S ∀x ∈ U (a < x) .

(3)

Trans (U) .

(4)
(5)

∀x, y ∈ U ({x, y} , ⟨x, y⟩ ∈ U − S) .
()∪∀x ∈ U − S x ∩ S = ∅ =⇒x ∈U −S .

(6)∀x ∈ U − S (P(x) ∈ U − S) .

(7)

∀X,Y ∈ U − S (X ×Y, X ∩Y, X ∪Y ∈ U − S) .

(8)

∀X,Y ∈ U − S Map(X,Y ) ∈ U − S.

(9)

∀X,Y ∈ U − S ∀ f ∈ Map(X,Y ) ( f (x) ∈ U) .

(10)

∀X,Y ∈ U − S ∀A ⊆ X ( f [A] ∈ U − S) .

「U の中の実体から出発していろんな操作をしても U の中に収まるから U ってそこそこ大きな集合であることはわかるんですが，でも《十分広いか》ってのはピンとこないです」「例えば U の実体 X,Y があったとする．すると (8) によって Map(X,Y ) も U の実体になる．(3) によって，個々の関数 f ∈ Map(X,Y ) も U の実体になる．よって，たとえば N, R ∈ U − S だとすれ
ば《実数列》つまり Map(N, R) の元も U の実体となる．また，R ∈ U − S だとすれば (7) によってR × R, R × R × R, ... も U の実体となる．このことから P(R × R) , P(R × R × R) , ... も U の実体となる．これと (3) を組み合わせると R × R や R × R × R の任意の部分集合はまた U の実体となる．
よって任意の D ⊆ R × R に対して Map(D, R) はまた U の実体となる．とまあこんな感じにいくらでも話を続けることができる」「なるほど」「そんなわけで，N や R が U − S に入っていれば，微積分の教科書に出てくるような対象はすべて

U のなかに入っていると考えることができる」

3.4 (弱) 宇宙の上の言語
3.4.1 動機づけの議論「さて，弱宇宙 U が与えられたとして，その弱宇宙についての言語——つまり《我々が語りうることすべて》を扱う仕組み——を用意する」「普通に数学で使う述語論理じゃダメなんですか？」「《ある弱宇宙について述べた論理式》を《別の弱宇宙について述べた論理式》に読み替える，といった操作を混乱することなく扱えるようにしたい．そのために，弱宇宙 U に関する論理式を《数学的対象として》扱えるように概念を整備しておく」「なるほど」「定式化するにあたって，論理式が持つ自然な木構造を利用する」「どんな木構造ですか？」「例を挙げて説明する．数列 (an )n∈N が実数 α に収束することは，20 世紀以降《通常使われている》流儀で書けばこうかけるのだった」：

第 3 章 チルノのパーフェクト超準解析教室

40∀ε ∈ R+ ∃Nε ∈ N ∀n ∈ N(n > Nε =⇒ |an − α | < ε ) .

(3.10)「はい確かに」「上の論理式には量化《∀ε ∈ R+ 》，《∃Nε ∈ N》と《∀n ∈ N》が出現しているが，このような量化は
すべて U の中の集合に制限されていると——つまり，R+ や N は U の元だと仮定する．さらに詳しく考えると，数の大小関係については，例えば《n > Nε 》は関係を表す集合

GTN := {z ∈ N × N ∃p, q ∈ N (p > q) ∧ (z = ⟨p, q⟩)} (∈ U)
を通して《⟨n, Nε ⟩ ∈ GTN 》と表現できるし，《|an − α | < ε 》は集合

LTR := {z ∈ R × R ∃t, u ∈ R (t < u) ∧ (z = ⟨t, u⟩)} (∈ U)
を通して《⟨|an − α |, ε ⟩ ∈ LTR 》と表現できる」「なるほどそうですね」「更に，ap や pr を利用すれば式 (3.10) に次のようなラベル付き木を対応させることができる」：

∀

ε

R+

∃
Nε

N

∀
N

n

⇒

∈
pr
n

∈
pr

GTN
|·|

−

α

ap
a

LTR

ε

ap

Nε

n

「少し説明が飛び気味ですが，まあなんとなくわかります．ところで，こんなふうに論理式を扱うと混乱することなく論理式の操作を扱えるとのことですが，つまり何がそんなに混乱するんでしょう？」「少し遠回りな説明になる」「いいですよ」「たとえば《実数 a, b をパラメータとする関数 ϕa,b があったとき......》といった調子の主張があったとき，この a や b は，ある文脈では《非特定の》，あるいは《一般の》実数となっている．そしてまた別の文脈では特定の実数だったりする．《特定の実数》はよいとして，《非特定の》とか《一般の》ということをさらに噛み砕いて説明しようとすると難しい」「うーん，そこに何も代入されてないときが《非特定の》とか《一般の》ってことなのでは？」「そう．《非特定の》とか《一般の》を形式的な立場で説明しようとするとプレースホルダ——何かが代入されるようなもの——が必要になってくる．では《プレースホルダとは》と聞かれたらどうする？」「難しいですね」「この難しさというのは《多項式とは何か》を説明しようとするときに感じるものに近い．多項式

3.4 (弱) 宇宙の上の言語

41の計算は——面倒で計算間違いをしやすいという事を度外視すれば——概念としてそんなに難しいものではない．でも，多項式の計算が出来る人でも《多項式とは何か》とか《多項式の変数への代入とは何か》と聞かれたりすると意外と迷ったりする」「《それを自分が使える》ということと《それを明確に他人に説明できる》ことは別だってことですね」「あとの方の議論——たとえばセクション 3.5(p.50)——では，ある宇宙に関する論理式を別の宇宙に関する論理式に読み替えたり，いくつかの変数——つまりプレースホルダ——にだけ代入された論理式を扱ったりする」「なるほど」「《論理式に対する操作》のようなものをあらためて明確に説明しようとするとどうしても無味乾燥な定義が続くことになってしまう．しかし，このような論理式の操作は——大学の講義に使われる教科書を独りで読めるぐらいの実力があれば——ある程度すでになんとなくできているはず．以下では，次の順番で弱宇宙 U に関する言語を扱う」：• 言語の定義 3.4.2• 項の定義 3.4.3• 項の自由変数 3.4.4• 論理式の定義 3.4.5• 論理式の自由変数 3.4.6• 論理式の束縛変数 3.4.7• 項の変数への代入 3.4.8• 論理式の変数への代入 3.4.9• 「調整された」論理式 3.4.10• 意味論 3.4.11「——これらの話題について，自分がなんとなくでも理解していると思う読者は読み飛ばしてよい．
読み進める上で混乱する場合にのみ参照すればよい」
3.4.2 言語の定義

定義 3.4.1（言語） U を基礎集合 S 上の弱宇宙とする．このとき U 上の言語 LU は次のものからなる：(a) 変数の集合 Var．変数を x, y, ... のように書く．
(b) 関数記号 ap , pr(c) 述語記号 = , ∈(d) 論理記号 ∀ ， ∃ ， ¬ ， ∧ ， ∨ ， ⇒ ， ⇔ ．
上記の (a)(b)(c)(d) の要素は U の外にあるものとする．また，(a)(b)(c)(d) の要素は互いに交わらないものとする．
「ここでは慣例に従って《言語》と呼んだが，自然言語における《語彙》に近い」「あの，いろんな記号が四角の枠で囲まれてるのはどうしてでしょう？」「対象となる《言語》とこちらの言語で同じ記号を使っていると混乱するから」

3.4.3 項の定義

第 3 章 チルノのパーフェクト超準解析教室

42

定義 3.4.2（言語の項の定義） U を基礎集合 S 上の弱宇宙とするとき，項の集合 TermU を次のように定義する：
TermU :=

∪

Tk ,

k≥0

ただし

T0 := Var ∪U,
Tk+1 := Tk ∪∪{⟨ ap , t, u⟩ , ⟨ pr , t, u⟩}(k ≥ 0).

t,u∈Tk「ここでは論理式の集合 TermU を帰納的に構成したけれど，結局のところ次のような性質が成り立つことが重要」：• 任意のx ∈ Var に対して x ∈ TermU .
• 任意の a ∈ U に対して a ∈ TermU .
• 任意の t1 , t2 ∈ TermU に対して ⟨ ap , t, u⟩ , ⟨ pr , t, u⟩ ∈ TermU .
3.4.4 項の自由変数

定義 3.4.3（項の自由変数，閉項） 関数 termFV : TermU −→ P(Var) を次のように定義する：

(t ∈ T0 )termFV(t) :=otherwise{::(t ∈ Var): {t} ,

otherwise : ∅.
{(t = ⟨ ap , t1 , t2 ⟩): termFV(t1 ) ∪ termFV(t2 ),(t = ⟨ pr , t1 , t2 ⟩): termFV(t1 ) ∪ termFV(t2 ),.

項 t が閉項 (closed term) であるとは，termFV(t) = ∅ となることである．閉項全体からなる集
合を ClosedTermU とする．すなわち，ClosedTermU := {t ∈ TermU termFV(t) = ∅} .

「閉項ってのはつまり Var の元がつかわれてない項のことですよね」「そのとおり」
3.4.5 論理式の定義

定義 3.4.4（言語の論理式の定義） U を基礎集合 S 上の弱宇宙とするとき，論理式の集合
FormU を次のように定義する：
FormU :=

∪
k≥0

Fk ,

3.4 (弱) 宇宙の上の言語

43

ただし
∪

F0 :=

{⟨ = , t, u⟩, ⟨ ∈ , t, u⟩} ,t,u∈TermU

Fk+1 = Fk ∪ {⟨ ∀ , x, t, A⟩ x ∈ Var, t ∈ TermU , x < termFV(t), A ∈ Fk }∪ {⟨ ∃ , x, t, A⟩ x ∈ Var, t ∈ TermU , x < termFV(t), A ∈ Fk }∪ {⟨ ¬ , A⟩ A ∈ Fk }∪ {⟨ ∧ , A, B⟩ A, B ∈ Fk }∪ {⟨ ∨ , A, B⟩ A, B ∈ Fk }∪ {⟨ ⇒ , A, B⟩ A, B ∈ Fk }∪ {⟨ ⇔ , A, B⟩ A, B ∈ Fk }(k ≥ 0).

「ここでは論理式の集合 FormU を帰納的に構成したけれど，結局のところ次のような性質が成り立つことが重要」：• 任意の t, u ∈ TermU に対して
⟨ = , t, u⟩ , ⟨ ∈ , t, u⟩ ∈ FormU .
• 任意のx ∈ Var, t ∈ TermU , A ∈ FormU に対して⟨ ∀ , x, t, A⟩ , ⟨ ∃ , x, t, A⟩ ∈ FormU .
• 任意の A ∈ FormU に対して⟨ ¬ , A⟩ ∈ FormU .
• 任意の A, B ∈ FormU に対して⟨ ∧ , A, B⟩ , ⟨ ∨ , A, B⟩ , ⟨ ⇒ , A, B⟩ , ⟨ ⇔ , A, B⟩ ∈ FormU .
3.4.6 論理式の自由変数

定義 3.4.5（論理式の自由変数） 関数 FV : FormU −→ P(Var) を次のように定義する：

(A ∈ F0 )















FV(A) :=otherwise















:

:

{
(A = ⟨ = , t, u⟩): termFV(t) ∪ termFV(u),(A = ⟨ ∈ , t, u⟩) : termFV(t) ∪ termFV(u).
(A = ⟨ ∀ , x, t, B⟩) : FV(B) ∪ termFV(t) − {x} ,





(A = ⟨ ∃ , x, t, B⟩) : FV(B) ∪ termFV(t) − {x} ,




.
¬
: FV(B) ,(A = ⟨ , B⟩)(A = ⟨ ∧ , B, C⟩)(A = ⟨ ∨ , B, C⟩)(A = ⟨ ⇒ , B, C⟩)(A = ⟨ ⇔ , B, C⟩): FV(B) ∪ FV(C) ,: FV(B) ∪ FV(C) ,: FV(B) ∪ FV(C) ,: FV(B) ∪ FV(C) .

論理式 A が文 (sentence) あるいは閉論理式 (closed formula) であるとは，FV(A) = ∅ となることである．文全体からなる集合を SentenceU とする．すなわち，SentenceU := {A ∈ FormU FV(A) = ∅} .

3.4.7 論理式の束縛変数

定義 3.4.6（論理式の束縛変数） 関数 BV : FormU −→ P(Var) を次のように定義する：

第 3 章 チルノのパーフェクト超準解析教室

44
(A ∈ F0 )















BV(A) :=: ∅,
(A = ⟨ ∀ , x, t, B⟩)





(A = ⟨ ∃ , x, t, B⟩)





¬

(A = ⟨ , B⟩)otherwise















:

(A = ⟨ ∧ , B, C⟩)(A = ⟨ ∨ , B, C⟩)





(A = ⟨ ⇒ , B, C⟩)(A = ⟨ ⇔ , B, C⟩): {x} ∪ BV(B) ,: {x} ∪ BV(B) ,: BV(B) ,: BV(B) ∪ BV(C) ,.

: BV(B) ∪ BV(C) ,: BV(B) ∪ BV(C) ,: BV(B) ∪ BV(C) .

3.4.8 項の変数への代入

定義 3.4.7（項の変数への代入） t, u1 , ..., um ∈ TermU , x1 , ..., xm ∈ Var とするとき：

[












(t ∈ T0 ∩ Var)










)
(
t = x1()
 t = x2
:]
x · · · xm
t 1:=
u1 · · · um
(t ∈ T ∩U)


0







(t = ⟨ ap , t1 , t2 ⟩)








(t = ⟨ pr , t1 , t2 ⟩)[]x1 · · · xmt
を《項 t への代入》と呼ぶ．
u1 · · · um
演習問題 3.4.1（exc:3.1）: u1 ,: u2 ,······()

t = xnotherwise: un ,
: t,

: t,
⟨
[
] [
]⟩
x · · · xm
x · · · xm
: ap , t1 1
, t2 1,
u1 · · · um
u1 · · · um
⟨
[
] [
]⟩
pr , t1 x1 · · · xm , t2 x1 · · · xm .
:u1 · · · um
u1 · · · um

任意の項 t に対し，t への代入は再び項であることを示せ．

（ヒント：T0 に属する項への代入が項であることは定義より明らか．Tk (k ≥ 0) に属する項への代入がすべて項であると仮定すると……数学的帰納法により……）{}t ∈ TermU に対して，termFV(t) ⊆ x1 , ..., xn であるとき，項 t が持ちうる自由変数を明記して()
t x1 , ..., xn[のように書く．また，項 u1 , ..., um に対して t への代入 t]x1 · · · xm
を
u1 · · · umt(u1 , ..., um , xm+1 , ..., xn )のように書く．
3.4.9 論理式の変数への代入

定義 3.4.8（論理式の変数への代入）
き：A ∈ FormU , u1 , ..., um ∈ TermU , x1 , ..., xm ∈ Var とすると

3.4 (弱) 宇宙の上の言語[]
x1 · · · xm
A:=u1 · · · um(A = ⟨ = , t1 , t2 ⟩)









(A = ⟨ ∈ , t1 , t2 ⟩)









(
⟩)
⟨


 A = ∀ , y, t, B












(
⟨
⟩)



A = ∃ , y, t, B







(A = ⟨ ¬ , B⟩)









(A = ⟨ ∧ , B, C⟩)









(A = ⟨ ∨ , B, C⟩)









(A = ⟨ ⇒ , B, C⟩)









(A = ⟨ ⇔ , B, C⟩)

45

⟨

[

] [
]⟩
x1 · · · xm
x · · · xm
, t2 1,
u1 · · · um
u1 · · · um
⟨
[
] [
]⟩
x · · · xm
x · · · xm
: ∈ , t1 1
,t 1,
u1 · · · um 2 u1 · · · um
(
{
})

: A,
 y ∈ x1 , ..., xm
[
] [
]⟩
⟨
:
x1 · · · xm
x1 · · · xm
,:
∀ , y, t u · · · u , B u · · · uotherwise
m
m
1
1
(
{
})

: A,
 y ∈ x1 , ..., xm
⟨
[
] [
]⟩
:
x1 · · · xm
x1 · · · xm
:,
∃ , y, t u · · · u , B u · · · uotherwise
m
m
1
1
⟨
[
]⟩
x · · · xm
: ¬,B 1,
u1 · · · um
⟨
[
] [
]⟩
x · · · xm
x · · · xm
: ∧,B 1,C 1,
u1 · · · um
u1 · · · um
⟨
[
] [
]⟩
x · · · xm
x · · · xm
: ∨,B 1,C 1,
u1 · · · um
u1 · · · um
⟨
[
] [
]⟩
x · · · xm
x · · · xm
: ⇒, B 1,C 1,
u1 · · · um
u1 · · · um
⟨
[
] [
]⟩
x · · · xm
x · · · xm
: ⇔, B 1,C 1.
u1 · · · um
u1 · · · um:

= , t1[]x1 · · · xm
Aを論理式 A への代入と呼ぶ．
u1 · · · um
演習問題 3.4.2（exc:3.2）

任意の論理式 A に対し，A への代入は再び論理式であることを示せ．
（ヒント：F0 に属する項への代入が項であることは定義より明らか．Fk (k ≥ 0) に属する論理式への代入がすべて論理式であると仮定すると……数学的帰納法により……）{}A ∈ FormU に対して，FV(A) ⊆ x1 , ..., xn であるとき，論理式 A が持ちうる自由変数を明記して)(A x1 , ..., xn[]
x · · · xmのように書く．また，項 u1 , ..., um に対して，A への代入 A 1を
u1 · · · umA(u1 , ..., um , xm+1 , ..., xn )のように書く．
3.4.10「調整された」論理式

定義 3.4.9（調整された論理式） A ∈ FormU が《調整された (rectified)》論理式であるとは
FV(A) ∩ BV(A) = ∅となることである．

第 3 章 チルノのパーフェクト超準解析教室

46
例えば

⟨

⟩⟩
∀ , y, t, G(y)(3.11)⟨ ∧ , F(x), ⟨ ∀ , x, t, G(x)⟩⟩(3.12)∧ , F(x),⟨は調整された論理式である．その一方で，は調整された論理式ではない．論理式を扱う議論においては，基本的には調整された論理式が与えられていることを前提に置く．
3.4.11

意味論「いままでは論理式の構成，言語における《統語論 (syntax)》について述べてきた．これから《意味論 (semantics)》を扱う．『意味論』などというと難しそうだけど，ここでは文——つまり閉論理
式——に真偽を割り当てることだけを考える」「『《意味》ってどういうこと？』みたいなややこしいことは考えなくていいんですね」「写像 | · |U と ∥ · ∥U を定義し，それを通して文の真偽を定める」：
定義 3.4.10（閉項の解釈）| · |U : ClosedTermU → U を次のように再帰的に定義する：)
( ある x ∈ U に対して t = x|t|U := (t = ⟨ ap , u1 , u2 ⟩)(t = ⟨ pr , u1 , u2 ⟩): x,: ap (|u1 |U , |u2 |U ) ,: pr (|u1 |U , |u2 |U ) .

|t|U を，U における項 t の解釈 (interpretation) と呼ぶ．

定義 3.4.11（文の解釈） 弱宇宙 U の外の記号 ⊤, ⊥ を用いて ∥ · ∥U : → {⊤, ⊥} を次のように定義する：

3.4 (弱) 宇宙の上の言語(A = ⟨ = , t1 , t2 ⟩)










(A = ⟨ ∈ , t1 , t2 ⟩)












(A = ⟨ ∀ , x, t, B(x)⟩)











(A = ⟨ ∃ , x, t, B(x)⟩)








∥A∥U := (A = ⟨ ¬ , B⟩)










(A = ⟨ ∧ , B, C⟩)











(A = ⟨ ∨ , B, C⟩)











(A = ⟨ ⇒ , B, C⟩)












(A = ⟨ ⇔ , B, C⟩)

47

:
:
:
:
:
:
:
:
:

{
( |t1 |U = |t2 |U )otherwise{( |t1 |U ∈ |t2 |U )

: ⊤.
: ⊥.
: ⊤.

otherwise: ⊥.
{(∀a ∈ |t|U (∥B(a)∥U = ⊤)): ⊤.

otherwise{(∃a ∈ |t|U (∥B(a)∥U = ⊤)): ⊥.

otherwise{(∥B∥U = ⊤)

: ⊥.

: ⊤.

: ⊥.

otherwise: ⊤.
{(∥B∥U = ⊤ ∧ ∥C∥U = ⊤)otherwise{(∥B∥U = ⊤ ∨ ∥C∥U = ⊤)

: ⊤.
: ⊥.
: ⊤.

otherwise: ⊥.
{(∥B∥U = ⊤ =⇒ ∥C∥U = ⊤) : ⊤.
otherwise: ⊥.
{(∥B∥U = ⊤ ⇐⇒ ∥C∥U = ⊤) : ⊤.
otherwise: ⊥.

∥A∥U を，U における A の解釈 (interpretation) と呼ぶ．∥A∥U = ⊤ のとき《A は U において真である》と言う．また，∥A∥U = ⊥ のとき《A は U において偽である》と言う．
以下では，∥A∥U = ⊤ のときに U |= A と書く．また，∥A∥U = ⊥ のときに U ̸|= A と書く．

U |= A あるいは U ̸|= A のどちらか一方だけが成り立つ（二値原理）ので，次のような関係が成立していることに注意しておく：

(A = ⟨ = , t1 , t2 ⟩)(A = ⟨ ∈ , t1 , t2 ⟩)






(A = ⟨ ∀ , x, t, B(x)⟩)






(A = ⟨ ∃ , x, t, B(x)⟩)
U |= A ⇐⇒ (A = ⟨ ¬ , B⟩)
(A = ⟨ ∧ , B, C⟩)






(A = ⟨ ∨ , B, C⟩)





(A = ⟨ ⇒ , B, C⟩)(A = ⟨ ⇔ , B, C⟩): |t1 |U = |t2 |U ,
: |t1 |U ∈ |t2 |U ,(): ∀a ∈ |t|U U |= B(a) ,(): ∃a ∈ |t|U U |= B(a) ,: U ̸|= B,() (): U |= B ∧ U |= C ,() (): U |= B ∨ U |= C ,()(): U |= B =⇒ U |= C ,()(): U |= B ⇐⇒ U |= C .

「扱っている言語における《文》——つまり SentenceU の元——を解釈して得られる主張における量化は制限量化 (bounded quantification) の形でのみ出現することに注意しておく」「《∀x ∈ X 》とか《∃x ∈ X 》みたいに量化の範囲が制限されてるってことですね」「そのとおり」
3.4.12 U の文へのエンコーディング「意味論の仕組みを使うと，次が言える」：

第 3 章 チルノのパーフェクト超準解析教室

48

定理 3.4.1（メタ定理：U の文へのエンコーディング）

弱宇宙 U についての述語論理で書け

る主張 C であって (i) C に出現するすべての量化が制限量化であり，さらに (ii) C に出現する制限量化の範囲が (ii-1) U の元，あるいは (ii-2) すでに束縛済みの変数 となっているとき，この主張 C をある A ∈ SentenceU の元に対応させ，C ⇐⇒ U |= Aとなるようにできる．
「これはどういうことでしょう？」「例で説明する」：
集合 D とその上の二項関係 R があり，どちらも U の元だったとする．そして C が∀x, y ∈ D ∃z ∈ D (⟨x, z⟩ , ⟨y, z⟩ ∈ R)という主張だったとする．このとき，

C ⇐⇒ ∀x, y ∈ D ∃z ∈ D (⟨x, z⟩ , ⟨y, z⟩ ∈ R)⇐⇒ ∀x, y ∈ D ∃z ∈ D ((pr(x, z) ∈ R) ∧ (pr(y, z) ∈ R))⇐⇒ ∀x, y ∈ D ∃z ∈ D ((U |= ⟨ ∈ , ⟨ pr , x, z⟩, R⟩) ∧ (U |= ⟨ ∈ , ⟨ pr , x, z⟩, R⟩))
B(t, u) := ⟨ ∈ , ⟨ pr , t, u⟩, R⟩ とすると⇐⇒ ∀x, y ∈ D ∃z ∈ D ((U |= B(x, z)) ∧ (U |= B(y, z)))⇐⇒ ∀x, y ∈ D ∃z ∈ D (U |= ⟨ ∧ , B(x, z), B(y, z)⟩)⇐⇒ ∀x ∈ D ∀y ∈ D (U |= ⟨ ∃ , z, D, ⟨ ∧ , B(x, z), B(y, z)⟩⟩)
(
⟨
⟨
⟨
⟩⟩⟩)
⇐⇒ ∀x ∈ D U |= ∀ , y, D, ∃ , z, D, ∧ , B(x, z), B(y, z)
⟨
⟨
⟨
⟩⟩⟩⟩
⟨
⇐⇒ U |= ∀ , x, D, ∀ , y, D, ∃ , z, D, ∧ , B(x, z), B(y, z)
よって，

A :=

⟨

∀ , x, D,⟨∀ , y, D,

⟨

⟨
⟩⟩⟩⟩
∃ , z, D, ∧ , B(x, z), B(y, z)とすれば次が成立する：

C ⇐⇒ U |= A.
「出来上がった文 A はそこそこ複雑になりましたけど，変形の各ステップは意味論の定義のところをそのまま逆になぞっただけですね」「そのとおり」「ところで，定理の条件で《(ii) C に出現する制限量化の範囲が (ii-1) U の元，あるいは (ii-2) すでに束縛済みの変数 となっているとき》ってのがちょっとわかりにくいです．U の性質を述べたやつでこの条件を満たさないものってどんなのがありますか？」「条件 (ii-1) を満たさないためにエンコードがうまくいかない例は Trans (U) つまり《U が推移的集合であること》．これは∀y ∈ U ∀x ∈ y (x ∈ U)と書けるけど，U < U なのでこれはいかなる A ∈ SentenceU にもエンコードできない」「なるほど」「条件 (ii-2) は実のところ，正確な表現ではない．正確に述べるのが難しいので，例をいくつか挙

3.4 (弱) 宇宙の上の言語49げることで説明する」：

X ∈ U − S とするとき，次の主張 (1)(2)(3)(4) を考える
(1)∀x ∈ X ∃y ∈ P(x) (y = y).

(2)∀x, y ∈ X ∀ f ∈ Map(x, y) ( f = f ).

(3)

∀x ∈ X ∃y ∈(4)Fin(X).

∪x (y = y).

「——こ れ ら の 主 張 の (1)(2)(3) に つ い て は ，そ れ ぞ れ 束 縛 済 み の 変 数 を 用 い て 作 ら れ たP(x) , Map(x, y),∪x の箇所が障害となって U の文にエンコードすることができない．(4) につ

いては，
1–1

Fin(X) ⇐⇒ ∃n ∈ N ∃ f : X −−→ n.
⇐⇒ ∃n ∈ N ∃ f ∈ Map(X, n) ( f は単射).
と書き換えたとき，束縛済みの変数を用いて作られた Map(X, n) の箇所が障害となって，やはり Uの文にエンコードすることができない」「なるほど，確かに意味論のところを見てもとっかかりがありませんね」「そんなわけで，SentenceU の元によって《U について語りうること》はある程度制限されていることには注意が必要」「それにしても，Fin(X) みたいなのが SentenceU にエンコードできないのはちょっと意外ですね」
3.4.13

定義可能集合定義 3.4.12（定義可能集合） U を基礎集合 S 上の弱宇宙とするとき，X ⊆ U が（U において）定義可能である (definable) とは，ある A ∈ FormU (x) によって{}
X = a ∈ U U |= A(a)となることである．定義可能な U の部分集合全体を Def(U) とする．すなわち：{}Def(U) := X ∈ P(U) X は定義可能

{
(
(
) )}
= X ∈ P(U) ∃A(x) ∈ FormU ∀a ∈ U a ∈ X ⇐⇒ U |= A(a).

命題 3.4.2 U を基礎集合 S 上の弱宇宙とし，P, Q ∈ Def(U) とする．このとき，次の (1) (2) (3)(4) (5) が成立する：(1)

U − S ⊆ Def(U) .

(2)

U ∈ Def(U) .

(3)

P ∩ Q ∈ Def(U) .

(4)

P ∪ Q ∈ Def(U) .

(5)

P − Q ∈ Def(U) .

Proof.

(1) 命題 3.3.3(1) より，任意の x ∈ U − S に対して：
x = {a ∈ U a ∈ x} = {a ∈ U U |= ⟨ ∈ , a, x⟩} ∈ Def(U) .

(2)

第 3 章 チルノのパーフェクト超準解析教室

50

U = {a ∈ U a = a} = {a ∈ U U |= ⟨ = , a, a⟩} ∈ Def(U) .
(3) P = {a ∈ U U |= A(a)} , Q = {a ∈ U U |= B(a)} とすると{}
P ∩ Q = a ∈ U U |= A(a) かつ U |= B(a)= {a ∈ U U |= ⟨ ∧ , A(a), B(a)⟩} ∈ Def(U) .
□(4) (5) (3) と同様に示せる．

命題 3.4.3 X ∈ U − S と A(t) ∈ FormU に対して：{}x ∈ X U |= A(x) ∈ Def(U) .
この命題は，U の実体から FormU の論理式で分出したものが定義可能集合であることを主張している．

Proof. X ∈ U − S と (U4) より X ⊆ U なので{}x ∈ X U |= A(x){}= x ∈ U x ∈ X ∧ U |= A(x)}{= x ∈ U U |= ⟨ ∧ , ⟨ ∈ , x, X⟩, A(x)⟩ ∈ Def(U) .
□3.5 超準宇宙
宇宙 U が与えられたとき，その宇宙から別の宇宙 W への《超準埋め込み》と呼ばれる写像について考えてゆく．宇宙 U の基礎集合 S が十分大きく取られていれば，3.3.5 で議論したように《通常の数学的対象》はすべて U の中に含まれていると思って良い．そのような意味で，この U を《標準宇宙》と呼ぶことにする．これに対し，以下で論じるような《超準埋め込み》が存在するとき，
宇宙 W は——多少乱暴な表現を使えば——より《密度が高い》領域だとみなせる．
3.5.1 論理式の移行

U を基礎集合 S 上の弱宇宙とし，W を基礎集合 G の上の弱宇宙とする．W に対してもその上の
言語 LW を考える（言語の定義は p.41）．ただし，言語 LW とは LU とは定数記号の集合のみが異なり，変数の集合，関数記号，述語記号，論理記号は共通だとする．
さ て ，写 像 j : U → W が 与 え ら れ た と し よ う ．こ の と き ，termXfer : TermU → TermW とxfer : FormU → FormW を次のように定義する：

(t ∈ Var)(t ∈ U)
termXfer(t) :=(t = ⟨ ap , t1 , t2 ⟩)(t = ⟨ pr , t1 , t2 ⟩): t,: j(t),: ⟨ ap , termXfer(t1 ), termXfer(t2 )⟩ ,: ⟨ pr , termXfer(t1 ), termXfer(t2 )⟩ .

3.5 超準宇宙51(A = ⟨ = , t1 , t2 ⟩)(A = ⟨ ∈ , t1 , t2 ⟩)






(A = ⟨ ∀ , x, t, B(x)⟩)






(A = ⟨ ∃ , x, t, B(x)⟩)
xfer(A) := (A = ⟨ ¬ , B⟩)
(A = ⟨ ∧ , B, C⟩)





(A = ⟨ ∨ , B, C⟩)






(A = ⟨ ⇒ , B, C⟩)(A = ⟨ ⇔ , B, C⟩): ⟨ = , termXfer(t1 ), termXfer(t2 )⟩ ,: ⟨ ∈ , termXfer(t1 ), termXfer(t2 )⟩ ,: ⟨ ∀ , x, termXfer(t), xfer(B(x))⟩ ,: ⟨ ∃ , x, termXfer(t), xfer(B(x))⟩ ,: ⟨ ¬ , xfer(B)⟩ ,: ⟨ ∧ , xfer(B), xfer(C)⟩ ,: ⟨ ∨ , xfer(B), xfer(C)⟩ ,: ⟨ ⇒ , xfer(B), xfer(C)⟩ ,: ⟨ ⇔ , xfer(B), xfer(C)⟩ .

ノート 3 以下では termXfer(t), xfer(A) の代わりに ∗t, ∗A と書く．
3.5.2 超準埋め込み

定義 3.5.1（超準埋め込み） U を基礎集合 S 上の宇宙とし，W を基礎集合 G の上の宇宙とする．写像 j : U → W が U の《超準埋め込み (nonstandard embedding)》であるとは，(E1)(E2)(E3)(E4)(E5) が成立していることである：(E1)

j は単射.

(E2)

j(S) = G.

(E3)∀a ∈ U − S(E4)

任意の A(x1 , ..., xn ) ∈ FormU , a1 , ..., an ∈ U (n ≥ 0) に対し次の (1)(2) は同値：()
Fin(a) =⇒ j[a] = j(a) .

(1) U |= A(a1 , ..., an ),(2) W |= ∗A ( j(a1 ), ..., j(an )) .
(E5)

任意の X,Y ∈ U − S と X ×Y 上の二項関係 Φ ∈ U に対して次が成り立つ：()∀F ∈ PFin (X) ∃y ∈ Y ∀x ∈ F ⟨x, y⟩ ∈ Φ(⟨⟩)=⇒ ∃y′ ∈ j(Y ) ∀x ∈ X
j(x), y′ ∈ j(Φ) .

ただし，

)
{
} (
PFin (x) := t ∈ P(x) − {∅} Fin(t)= x の非空有限部分集合全体 .

(3.13)(E4) を，以下では《移行原理 (transfer principle)》として引用する．
(E5) を，以下では《理想化原理 (idealization principle)》として引用する．
超準埋め込みの構成についてはこの記事では省略する．超準埋め込みは，その構成方法に依存していろいろな種類のものが考えられる．(E1)-(E5) では，《広大化 (enlargement)》と呼ばれる，最も基本的な超準埋め込みを考えている．これよりさらに適用範囲が広いものとして《飽和モデル(saturated model)》というものが考えられる．本記事では広大化までしか扱わない．
超準埋め込み j : U → W が与えられたとき，（写像 j は文脈から明らかだとして）

e :=
U

∪

(
j[U] =

∪
x∈U

とする．

)
j(x)

第 3 章 チルノのパーフェクト超準解析教室

52

命題 3.5.1

ej[U] (= { j(x) x ∈ U}) ⊆ U.
Proof.
任意の x ∈ U に対して，(U5) により {x, x} = {x} ∈ U. (E3) により

j(x) ∈ { j(x)} = j ({x}) ∈ j[U].
したがって∃z ∈ j[U] ( j(x) ∈ z).
⇐⇒ j(x) ∈∪ej[U] = U.

e
以上により j[U] ⊆ U.

□

命題 3.5.2∀x ∈ U (Trans (x) ⇐⇒ Trans ( j(x))) .
Proof.
Trans (x)⇐⇒ ∀t, u (t ∈ u ∈ x =⇒ t ∈ x) .
⇐⇒ ∀u ∈ x ∀t ∈ u (t ∈ x) .
⇐⇒ U |= ⟨ ∀ , u, x, ⟨ ∀ , t, u, ⟨ ∈ , t, x⟩⟩⟩移行原理により⇐⇒ W |= ⟨ ∀ , u, j(x), ⟨ ∀ , t, u, ⟨ ∈ , t, j(x) ⟩⟩⟩⇐⇒ ∀u ∈ j(x) ∀t ∈ u (t ∈ j(x) ) .
⇐⇒ Trans ( j(x))□
e は基礎集合 G の上の弱宇宙である．
命題 3.5.3 Ue(W1) 宇宙 U についての (U1) より S ∈ U なので G = j(S) ∈ j[U]. 命題 3.5.1 より j[U] ⊆ Ue
なので結局 G ∈ U.
Proof.

(W2) ∅ は（当然）有限集合なので (E3) より ∅ = j[∅] = j(∅). また，任意の x ∈ U − S に対して
∅ ∈ P(x) なので∅ ∈ P(x) .
⇐⇒ ∅ = j(∅) ∈ j (P(x)) (⊆ j[U]) .
e 宇宙 W についての条件 (U2) より ∅ < G. 以上により ∅ ∈ U
e − G.
よって ∅ ∈ U.
(W3) 宇宙 W についての条件 (U3) より従う．

3.5 超準宇宙

53e とする．y ∈ U
e より，ある z ∈ U によって y ∈ j(z) となる．宇宙 U についての条件(W4) x ∈ y ∈ U(U8) により：∃w ∈ U (z ∈ w ∧ Trans (w)) .
移行原理により j(z) ∈ j(w) なのでy ∈ j(z) ∈ j(w).
命題 3.5.2 により j(w) は推移的集合なので y ∈ j(w) となる．したがって x ∈ y ∈ j(w)． j(w) が推移e
的集合であることを再び用いると x ∈ j(w) が得られる. したがって x ∈ U.

e とする．するとある a, b ∈ U によって x ∈ j(a), y ∈ j(b). 宇宙 W における (U3) に(W5) x, y ∈ U
より j(a), j(b) は共に実体である．さて，任意の x ∈ S に対して U |= ⟨ ∈ , x, S⟩ なので (E4) により
W |= ⟨ ∈ , j(x), j(S)⟩ となる．これと (E2) を合わせると j(x) ∈ j(S) = G が得られる．よって：∀x ∈ U (x ∈ S =⇒ j(x) ∈ G) .
対偶を取れば：∀x ∈ U ( j(x) ∈ W − G =⇒ x ∈ U − S) .
これを a, b に適用することにより a, b ∈ U − S となる．したがって {a, b} ∩ S = ∅ となる．(U6) により a∪b =∪{a, b} ∈ U − S. よって (U7) により P(a ∪ b) を考えることができる．c := P(a ∪ b) とすると c ∈ U − S．次を観察せよ：∀p ∈ a ∀q ∈ b ∃r ∈ c (r = {p, q}) .
()⇐⇒ ∀p ∈ a ∀q ∈ b ∃r ∈ c (∀t ∈ r (t = p ∨ t = q)) ∧ (p ∈ r ∧ q ∈ r) .
適切に U |= A の形に書き換えた後に移行原理を適用して再び整理すると()⇐⇒ ∀p ∈ j(a) ∀q ∈ j(b) ∃r ∈ j(c) (∀t ∈ r (t = p ∨ t = q)) ∧ (p ∈ r ∧ q ∈ r) .

⇐⇒ ∀p ∈ j(a) ∀q ∈ j(b) ∃r ∈ j(c) (r = {p, q}) .
ここで p := x, q := y とすると次が得られる：∃r ∈ j(c) (r = {x, y}) .
⇐⇒ {x, y} ∈ j(c).
e
よって {x, y} ∈ U.

□
( )e を次のように定義する：
star : S ∪ Def(U) → G ∪ Def U(x ∈ S)
star x =(x = {a ∈ U U |= A(a)}): j(x).
{}
e W |= ∗A(b) .
: b∈U(3.14)

命題 3.5.4 star は well-defined である

Proof. x ∈ Def(U) が A(t), B(t) ∈ FormU によって二通りに
x = {a ∈ U U |= A(a)} = {a ∈ U U |= B(a)}と表されているとせよ．(W4) により b ∈ a ∈ U =⇒ b ∈ U なので (3.15) から次が従う：(3.15)

第 3 章 チルノのパーフェクト超準解析教室

54()
U |= A(b) ⇐⇒ U |= B(b) .
()⇐⇒ ∀a ∈ U ∀b ∈ a U |= ⟨ ⇔ , A(b), B(b)⟩ .
)(⇐⇒ ∀a ∈ U U |= ⟨ ∀ , t, a, ⟨ ⇔ , A(t), B(t)⟩⟩ .
∀a ∈ U ∀b ∈ a

移行原理により()
W |= ⟨ ∀ , t, j(a), ⟨ ⇔ , ∗A(t), ∗B(t)⟩⟩ .
()⇐⇒ ∀a ∈ U ∀b ∈ j(a) W |= ⟨ ⇔ , ∗A(b), ∗B(b)⟩ .
()⇐⇒ ∀a ∈ U ∀b ∈ j(a) W |= ∗A(b) ⇐⇒ W |= ∗B(b) .
()
e W |= ∗A(b) ⇐⇒ W |= ∗B(b) .
⇐⇒ ∀b ∈ U{
} {}e W |= ∗A(b) = b ∈ U
e W |= ∗B(b) .
⇐⇒ b ∈ U⇐⇒ ∀a ∈ U□

命題 3.5.5∀x ∈ U()

star x = j(x) .

命題 3.4.2(1) により U ⊆ S ∪ Def(U) となり star の定義域は U を包含していることと合わせると，写像 star は j の拡張写像となっていることがわかる．

Proof. x ∈ U − S の場合だけ示せばよい．命題 3.3.3 より
x = {a ∈ U a ∈ x} = {a ∈ U U |= ⟨ ∈ , a, x⟩} .
よって

{

}

e W |= ⟨ ∈ , a, j(x)⟩star x = b ∈ U}{ee b ∈ j(x) = j(x) ∩ U.
= b∈U

(3.16)

e なので j(x) ∈ U.
e U
e は弱宇宙（命題 3.5.3）なので (W4) より
j(x) ∈ j[U] と命題 3.5.1 より j[U] ⊆ Ue これを (3.16) と合わせれば：
j(x) ⊆ U.
e = j(x).
star x = j(x) ∩ U□「以下では star x の代わりに ∗x と書く．結合力は最強とする．また，x ∈ S に対しては x と j(x) を，したがって x と ∗x を同一視する」「原子はつるつるなので星をつけても剥がれてしまうって感じに憶えておくことにします」「それから，a ∈ S と j(a) ∈ G を同一視する」「なるほど」「宇宙 U の実体 x に対して次のように σ x を定義する」：
σx := {∗t t ∈ x} .

(3.17)「——t ∈ x ∈ U なので (W4) より t ∈ U であり，いま示した命題 3.5.5 により ∗x = j(x) なので，結局次が言える」：σx = j[x].

3.5 超準宇宙

55

命題 3.5.6∀X ∈ U − S (σ X ⊆ ∗X) .

(3.18)

Proof. 見よ：u ∈ σ X ⇐⇒ ∃t ∈ X (u = ∗t).
⇐⇒ ∃t ∈ X (t ∈ X ∧ u = ∗t) .
⇐⇒ ∃t ∈ X (U |= ⟨ ∈ , t, X⟩) ∧ u = ∗t.
移行原理により⇐⇒ ∃t ∈ X (W |= ⟨ ∈ , ∗t, ∗X⟩) ∧ u = ∗t.
⇐⇒ ∃t ∈ X (∗t ∈ ∗X ∧ u = ∗t) .
=⇒ u ∈ ∗X.
よって σ X ⊆ ∗X.

□

定理 3.5.7 U を基礎集合 S 上の宇宙とし，W を基礎集合 G 上の宇宙とする．超準埋め込み

j : U → W が与えられたとき次の (E2’)(E3’)(E4’)(E5’) が成立する：
(E2’)

∗

S = G.

()
Fin(a) =⇒ σ a = ∗a .

(E3’)

∀a ∈ U − S(E4’)

任意の A(x1 , ..., xn ) ∈ FormU , a1 , ..., an ∈ U (n ≥ 0) に対し次の (1)(2) は同値：

(1) U |= A(a1 , ..., an ),(2) W |= ∗A (∗a1 , ..., ∗an ) .
(E5’)

任意の X,Y ∈ U − S と X ×Y 上の二項関係 Φ ∈ U に対して次が成り立つ：()∀F ∈ PFin (X) ∃y ∈ Y ∀x ∈ F ⟨x, y⟩ ∈ Φ
(
⟨
⟩
)
∗
⇐⇒ ∃y′ ∈ ∗Y ∀x ∈ X
x, y′ ∈ ∗Φ .

(E5”)

任意の X,Y ∈ U − S と X ×Y 上の二項関係Φ ∈ U に対して次が成り立つ：()∃F ∈ PFin (X) ∀y ∈ Y ∃x ∈ F ⟨x, y⟩ ∈ Φ( ⟨∗ ′ ⟩ ∗ )⇐⇒ ∀y′ ∈ ∗Y ∃x ∈ X
x, y ∈ Φ .

Proof. (E2’)(E3’)(E4’) と (E5’) の《⇒》は，上で導入した記法によって (E2)(E3)(E4)(E5) を書き直しただけである．よって (E5’) の《⇐》と (E5”) を示せばよい．

(E5’) 任意の F ∈ PFin (X) に対して，明らかに∀x ∈ F(⟨∗ ′ ⟩ ∗ )x, y ∈ Φ .

⇐⇒ ∀x′ ∈ ∗F(⟨ ′ ′ ⟩ ∗ )x,y ∈ Φ .

(E3’) より σ F = ∗F なので以上により：∃y′ ∈ ∗Y ∀F ∈ PFin (X) ∀x′ ∈ ∗F
主張を弱めれば：∀F ∈ PFin (X)(⟨ ′ ′ ⟩ ∗ )x,y ∈ Φ .

( ′ ∗(⟨ ′ ′ ⟩ ∗ ))∃y ∈ Y ∀x′ ∈ ∗Fx,y ∈ Φ .

(3.19)(3.20)

第 3 章 チルノのパーフェクト超準解析教室

56
一番外側のカッコ内を移行すれば⇐⇒ ∀F ∈ PFin (X)()∃y ∈ Y ∀x ∈ F (⟨x, y⟩ ∈ Φ) .

(3.21)□(E5”) (E5’) の双対を取ればよい．

ノート 4 以上により，(E5’) も (E5”) も (E5) と同値であることが示された．そこで，以下では (E5’)
や (E5”) のことも《理想化原理》と呼ぶことにする．
定義 3.5.2（標準，内的，外的） X ∈ W に対して：X が標準的 (standard) ⇐⇒ X ∈ j[U].
def

def
e
X が内的 (internal) ⇐⇒ X ∈ U.
defe
X が外的 (external) ⇐⇒ X ∈ W − U.

集合 X ∈ W − S が標準的であるとき，X を《標準集合》と呼ぶ．
集合 X ∈ W − S が内的であるとき，X を《内的集合》と呼ぶ．
集合 X ∈ W − S が外的であるとき，X を《外的集合》と呼ぶ．
ノート 5 命題 3.5.1 より，《標準的ならば内的》「これらの用語の《気持ち》について少し説明してみる．超準埋め込み j : U → W が与えられたとき，宇宙 U はわれわれにとって馴染み深いもので構成されていると思うことができる．たとえば Nなどは U に入っていると思っていい． j は単射なので，x ∈ U と ∗x ∈ W も 1 対１に対応している」「えーとつまりこういうことですね」：∀x1 , x2 ∈ U (∗x1 = ∗x2 =⇒ x1 = x2 ) .
「そのとおり．さて，W には例えば ∗N のような集合が入っている．《標準宇宙》の要素 E ∈ U に対応しているという意味で ∗E のような集合を《標準的》と呼ぶ．いま述べた ∗N は標準的な集合の例となっている」「W 側から見たとき《こいつは標準宇宙から来たお客さんだなー》ってなってるやつですね」「そして，W における《標準的》な集合の元となっているものを《内的》と言う」「《標準的》なやつの元になってるから《内的》ってわけですか」「そんな感じで理解していい．そして《内的》ではない W の元を《外的》と言う」「なるほど」「命題 3.5.6 でも示したように σ X ⊆ ∗X となるので，つまりは ∗X には各 x ∈ X に対する ∗x が入っている．あとで見るように，X が無限集合である限り σ X ⊊ ∗X となる (p.70)．つまり ∗X は X より豊かな情報を持つ．このおかげで，X を考えることと ∗X を考えることは決して《同じこと》にはならない」
3.5.3 共起性

定義 3.5.3（共起的） Φ を X ×Y 上の二項関係とする．また，A ⊆ X, y0 ∈ Y とする．このとき

3.5 超準宇宙57『Φ は A の上で y0 によって充足される (satisfied)』⇐⇒ ∀x ∈ A (⟨x, y0 ⟩ ∈ Φ) .
def『Φ は有限共起的』()Φ は F の上で y によって充足される()⇐⇒ ∀F ∈ PFin (X) ∃y ∈ Y (∀x ∈ F (⟨x, y⟩ ∈ Φ)) .
⇐⇒ ∀F ∈ PFin (X) ∃y ∈ Ydef「この《共起性》を使って整理すれば，理想化原理 (E5’) は次のように言い換えられる」：

Φ が有限共起的 ⇐⇒ ある y′ ∈ ∗Y によって ∗Φ は σ X の上で充足される．
「単に用語を導入して言い換えただけですか？」「言い換えただけとも言えるが，《充足性》や《共起性》という言葉を使うと，長い論理式を分節化して理解することができ，記憶や想起がしやすくなる」「なるほど」
3.5.4 超準埋め込みの基本的性質

命題 3.5.8

e = ∗U.
U
Proof. U = {a ∈ U a = a} = {a ∈ U U |= ⟨ = , a, a⟩} より{} {}e W |= ⟨ = , a, a⟩ = a ∈ U
e a = a = U.
e
U = a∈U∗□
命題 3.5.9 X ∈ U − S と A(t) ∈ FormU に対して：
∗

{
} {
}
x ∈ X U |= A(x) = x ∈ ∗X W |= ∗A(x) .

(3.22)

Proof. 命題 3.4.3 より Y := {x ∈ X U |= A(x)} は定義可能集合であり，{}
Y = x ∈ U U |= ⟨ ∧ , ⟨ ∈ , x, X⟩, A(x)⟩ .
{}e W |= ⟨ ∧ , ⟨ ∈ , x, ∗X⟩, ∗A(x)⟩ .
∴ ∗Y = x ∈ U{}
e x ∈ ∗X ∧ W |= ∗A(x)= x ∈Ue なので
X ⊆ U より ∗X ⊆ ∗U = U{}= x ∈ ∗X W |= ∗A(x) .
□命題 3.5.10 A, B ∈ U − S に対して次の (1)(2) が成立する：

第 3 章 チルノのパーフェクト超準解析教室

58

A ⊆ B =⇒ ∗A ⊆ ∗B.

(1)∗(A × B) = ∗A × ∗B.

(2)
Proof.

(1) 見よ：A ⊆ B.
⇐⇒ ∀t ∈ A (t ∈ B).

移行原理により⇐⇒ ∀t ∈ ∗A (t ∈ ∗B).
⇐⇒ ∗A ⊆ ∗B.
(2) C := A × B とすると：
C = A × B.
⇐⇒ (C ⊆ A × B) ∧ (A × B ⊆ C).
() ()⇐⇒ ∀c ∈ C ∃a ∈ A ∃b ∈ B (c = ⟨a, b⟩) ∧ ∀a ∈ A ∀b ∈ B (⟨a, b⟩ ∈ C) .
移行原理により() ()⇐⇒ ∀c ∈ ∗C ∃a ∈ ∗A ∃b ∈ ∗B (c = ⟨a, b⟩) ∧ ∀a ∈ ∗A ∀b ∈ ∗B (⟨a, b⟩ ∈ ∗C) .
⇐⇒ (∗C ⊆ ∗A × ∗B) ∧ (∗A × ∗B ⊆ ∗C).
⇐⇒ ∗C = ∗A × ∗B.
⇐⇒ ∗(A × B) = ∗A × ∗B.
□(U6)(U7) に関連して次の命題が成立する：
命題 3.5.11 X ∈ U − S に対して次の (1)(2) が成立する：

X ∩ S = ∅ =⇒ ∗(1)e
P(X) = P(∗X) ∩ U.

∗

(2)
Proof.

(∪ ) ∪
X = ∗X.

(1) (U6’) と命題 3.3.3 より∪

X = {a ∈ U a ∈∪X} なので：{∪ }X = a∈U a∈ X{}
= a ∈ U ∃x ∈ X (a ∈ x){}
= a ∈ U U |= ⟨ ∀ , x, X, ⟨ ∈ , a, x⟩⟩ .
(∪ ) {}
e W |= ⟨ ∀ , x, ∗X, ⟨ ∈ , b, x⟩⟩∴∗
X = b∈U{}e ∃x ∈ ∗X (b ∈ x)= b∈U{∪ } (∪ )∗e b ∈ ∗X =e= b∈U
X ∩ U.
∪(3.23)(U8) より，ある推移的集合 Y ∈ U によって X ∈ Y となる．移行原理により ∗X ∈ ∗Y ．命題 3.5.2 により ∗Y も推移的集合である．
さて，任意の b ∈∪∗X に対して，ある x ∈ ∗X が存在して b ∈ x となる．よって

3.5 超準宇宙59b ∈ x ∈ ∗X ∈ ∗Y.

∗Y が推移的集合であることを繰り返し使えば=⇒ b ∈ x ∈ ∗Y.
=⇒ b ∈ ∗Y.
e∴ b ∈ U.
以上の議論により∪e であることがわかる．これと (3.23) を合わせれば：
X ⊆U

∗

∗

(∪ ) ∪
X = ∗X.

(2) (U7’) より P(x) ∈ U − S であることに注意する．よって命題 3.3.3 より P(x) = {a ∈ U a ⊆ x}.
したがって：{} {}e b ⊆ ∗x = P(∗x) ∩ U.
e
P(x) = ∗ a ∈ U a ⊆ x = b ∈ U∗□e 》っていう尻尾が右辺に付いていてもっ「あの，上の命題の (1) はシュッとしてるのに (2) は《∩U
ちゃりしてますねぇ．これなんとかならないんですか？」「結論から言えば，ならない（p.70）．そして，この尻尾が取れないことは超準解析の微妙な結果にもつながっている」
命題 3.5.12 a1 , ..., an ∈ U とするとき：∗∅ = ∅.

(1)
(2)
(3)

∗

{a1 } = {∗a1 } .

∗{a1 , ..., an } = {∗a1 , ..., ∗an } .

Proof. 有限集合 F ⊆ U に対して F ∈ U − S であり，(E3) により
F = j(F) = j[F] = σ F.

∗□
補題 3.5.13 x ∈ U − S に対して

Fin(x)=⇒∗

P(x) = P(∗x) .

(3.24)

Proof. x ∈ U − S が有限集合ならば P(x) も有限集合である．よって (E3) より∗P(x) = j (P(x)) = j [P(x)] = {∗t t ∈ P(x)}であり，移行原理により{∗t t ∈ P(x)} = {∗t ∀u ∈ t (u ∈ x)}= {∗t U |= ⟨ ∀ , u, t, ⟨ ∈ , u, x⟩⟩}= {∗t W |= ⟨ ∀ , u, ∗t, ⟨ ∈ , u, ∗x⟩⟩}= {∗t ∗t ⊆ ∗x} = P(∗x) .
□第 3 章 チルノのパーフェクト超準解析教室

60
命題 3.5.14 x, y, f ∈ U に対して：(1)

x = y ⇐⇒ ∗x = ∗y.

(2)x ∈ y ⇐⇒ ∗x ∈ ∗y.

(3)(4)
Proof.

∗⟨x, y⟩ = ⟨∗x, ∗y⟩ .

∗(ap( f , x)) = ap(∗ f , ∗x).

(1) 移行原理により
x = y ⇐⇒ U |= ⟨ = , x, y⟩ ⇐⇒ W |= ⟨ = , ∗x, ∗y⟩ ⇐⇒ ∗x = ∗y.

(2) (1) と同様に示せる．
(3) 順序対の定義 (p.36) と命題 3.5.12 により∗⟨x, y⟩ = ∗ {{x}, {x, y}} = {∗ {x}, ∗ {x, y}} = {{∗x}, {∗x, ∗y}} = ⟨∗x, ∗y⟩ .

(4) 場合分けして考える．
⟨x, y⟩ ∈ f となる y ∈ U がただ一つ存在する場合 : 移行原理により次が言える：∗⟨x, y⟩ ∈ ∗ f .

すでに示した (3) により⇐⇒ ⟨∗x, ∗y⟩ ∈ ∗ f .

(3.25)

e において一意であることを示す． 仮に ある z ∈ U
e に対してこのような ∗y が U⟨∗x, z⟩ ∈ ∗ f ∧ z , ∗y.
e の定義より，ある a ∈ U に対して z ∈ ∗a だから：だったとする．U∃a ∈ U(())∃z ∈ ∗a ⟨∗x, z⟩ ∈ ∗ f ∧ z , ∗y .

∃a ∈ U(())∃z ∈ a ⟨x, z⟩ ∈ f ∧ z , y .

移行原理によりz ∈ a ∈ U と (U4) より z ∈ U であるから，これは y についての一意性の仮定に反する．以上の議論

e はただ一つ存在し，それは ∗y である．つまりから，⟨∗x, t⟩ ∈ ∗ f となる t ∈ Uap(∗ f , ∗x) = ∗y = ∗ (ap( f , x)) .
⟨x, y⟩ ∈ f となる y ∈ U が存在しない場合 :eが上と同様の議論を行えば，⟨∗x, z⟩ ∈ ∗ f となる z ∈ U

存在し得ない事が示せる．よってこのとき ap(∗ f , ∗x) = ∅ となり，

ap(∗ f , ∗x) = ∅ = ∗∅ = ∗ (ap( f , x)) .
⟨x, y⟩ ∈ f となる y ∈ U が複数存在する場合 :e
上と同様の議論を行えば，⟨∗x, z⟩ ∈ ∗ f となる z ∈ Uが複数存在する事が示せる．よってこのとき ap(∗ f , ∗x) = ∅ となり，やはりap(∗ f , ∗x) = ∅ = ∗∅ = ∗ (ap( f , x)) .
□3.5 超準宇宙

61

命題 3.5.15 P, Q ∈ Def(U) に対して：∗(P ∪ Q) = ∗P ∪ ∗Q.

(1)∗(P ∩ Q) = ∗P ∩ ∗Q.

(2)∗(P − Q) = ∗P − ∗Q.

(3)□

Proof. 演習問題とする．

3.5.5 関数の扱い

命題 3.5.16 X,Y ∈ U − S, f ∈ Map(X,Y ) に対して次の (1)(2)(3)(4)(5)(6) が成立する：∗(1)

f ∈ Map(∗X, ∗Y ).

∀x ∈ X∗(3)∀Z ⊆ X∗(4)

f : A −−→ B =⇒ ∗ f : ∗A −−→ ∗B.

(5)

f : A −−→ B =⇒ ∗ f : ∗A −−→ ∗B.

(2)( f [Z]) = ∗ f [∗Z].

onto

onto

1–1

∗

(6)
Proof.

( f (x)) = ∗ f (∗x).

1–1e
Map(X,Y ) = Map(∗X, ∗Y ) ∩ U.

(1) 次を見よ：f ∈ Map(X,Y )⇐⇒ ( f ⊆ X ×Y ) ∧ ∀x ∈ X ∃!y ∈ Y (⟨x, y⟩ ∈ f ) .

移行原理により⇐⇒ (∗ f ⊆ ∗(X ×Y )) ∧ ∀x ∈ ∗X ∃!y ∈ ∗Y (⟨x, y⟩ ∈ ∗ f ) .
命題 3.5.10 より⇐⇒ (∗ f ⊆ ∗X × ∗Y ) ∧ ∀x ∈ ∗X ∃!y ∈ ∗Y (⟨x, y⟩ ∈ ∗ f ) .
⇐⇒ ∗ f ∈ Map(∗X, ∗Y ).
(2) 命題 3.5.14(4) により∗( f (x)) = ∗(ap( f , x)) = ap(∗ f , ∗x) = ∗ f (∗x).

(3) 明らかに：
f [Z] = {y ∈ Y ∃x ∈ Z (⟨x, y⟩ ∈ f )} .
命題 3.5.9 を適用すると∗( f [Z]) = {y ∈ ∗Y ∃x ∈ ∗Z (⟨x, y⟩ ∈ ∗ f )} = ∗ f [∗Z].

(4) 見よ：onto

f : X −−→ Y.
=⇒ ∀y ∈ Y ∃x ∈ X (⟨x, y⟩ ∈ f ) .
移行原理により⇐⇒ ∀y ∈ ∗Y ∃x ∈ ∗X (⟨x, y⟩ ∈ ∗ f ) .

第 3 章 チルノのパーフェクト超準解析教室

62
すでに示した (1) により ∗ f : ∗X → ∗Y なので=⇒ ∗ f : ∗X −−→ ∗Y.
onto(5) (4) と同様に示せる．
(6) 定義 (3.6)(p.36) に命題 3.5.9 を適用すると：∗{Map(X,Y ) =}f ∈ ∗P(X ×Y ) ∀x ∈ ∗X ∃!y ∈ ∗Y (⟨x, y⟩ ∈ f ) .

e = P(∗X × ∗Y ) ∩ U
e なので
命題 3.5.11 と命題 3.5.10 により ∗P(X ×Y ) = P(∗(X ×Y )) ∩ U{}e ∀x ∈ ∗X ∃!y ∈ ∗Y (⟨x, y⟩ ∈ f )= f ∈ P(∗X × ∗Y ) ∩ U}{e= f ∈ P(∗X × ∗Y ) ∀x ∈ ∗X ∃!y ∈ ∗Y (⟨x, y⟩ ∈ f ) ∩ Ue= Map(∗X, ∗Y ) ∩ U.
□
命題 3.5.17 X,Y ∈ U − S, f : X → Y に対して：∗(1)

f σ : σ X −→ σY.
X(2)

f : X −−→ Y =⇒ ∗ f σ : σ X −−→ σY.

(3)

f : X −−→ Y =⇒ ∗ f σ : σ X −−→ σY.

onto

onto

X

1–1

1–1

X

ただし，
∗

{
}
f σ := ⟨x, y⟩ ∈ ∗ f x ∈ σ X .
XProof.

(1) f が関数であることから∀x ∈ X ∃!y ∈ Y (⟨x, y⟩ ∈ f ) .
⇐⇒ ∀x ∈ X ∃!y ∈ Y (U |= ⟨ ∈ , ⟨ pr , x, y⟩, f ⟩) .
⇐⇒ ∀x ∈ X ∃!y ∈ Y (W |= ⟨ ∈ , ⟨ pr , ∗x, ∗y⟩, ∗ f ⟩) .
⇐⇒ ∀x ∈ X ∃!y ∈ Y (⟨∗x, ∗y⟩ ∈ ∗ f ) .
⇐⇒ ∀p ∈ σ X ∃!q ∈ σY (⟨p, q⟩ ∈ ∗ f ) .

(3.26)

同様にして，《∀x ∈ X (∃!y ∈ Y ⟨x, y⟩ ∈ f )》のカッコ内に移行原理を適用することで次が得られる：∀p ∈ ∗X ∃!y ∈ ∗Y ⟨p, y⟩ ∈ ∗ f .

(3.27)

式 (3.26)(3.27) より∗

f σ ⊆ ∗X × ∗Y.
X

これと式 (3.26) を合わせれば

(

∗

)
)
(
f σ ⊆ ∗X × ∗Y ∧ ∀p ∈ σ X ∃!q ∈ σY ⟨p, q⟩ ∈ ∗ f σ .
X

X

σ

∗

σ

⇐⇒ f σ : X −→ Y.
X

3.5 超準宇宙

63(2) 見よ：onto

f : X −−→ Y⇐⇒ ∀y ∈ Y ∃x ∈ X (⟨x, y⟩ ∈ f ) .
⇐⇒ ∀y ∈ Y ∃x ∈ X U |= ⟨ ∈ , ⟨ pr , x, y⟩, f ⟩ .
移行原理により⇐⇒ ∀y ∈ Y ∃x ∈ X W |= ⟨ ∈ , ⟨ pr , ∗x, ∗y⟩, ∗ f ⟩ .
⇐⇒ ∀y ∈ Y ∃x ∈ X (⟨∗x, ∗y⟩ ∈ ∗ f ) .
⇐⇒ ∀q ∈ σY ∃p ∈ σ X (⟨p, q⟩ ∈ ∗ f ) .
⇐⇒ ∗ f σ : σ X −−→ σY.
onto

X

□

(3) (2) と同様にして示せる．

3.5.6 定義域と値域が S の部分集合となる関数と関係

命題 3.5.18 X ⊆ S かつ X ∈ U とする．このとき次の (1)(2) が成り立つ：

X ⊆ ∗X.

(1)∗

X ∩ S = X.

(2)
Proof.

(1) 仮定より σ X = X である．これと命題 3.5.6 命題 3.5.10 より
X = σ X ⊆ ∗X.

(2) （「∗」の結合強度の取り決めから ∗X ∩ S = (∗X) ∩ S であることに注意しておく．）仮定といま示した (1) により：

X = X ∩ S ⊆ ∗X ∩ S.

(3.28)

次に ⊇ を示す．任意の x ∈ ∗X ∩ X に対して，x ∈ S より j(x) = x であり，X ∈ U より ∗X = j(X) なので：j(x) = x ∈ ∗X ∩ S ⊆ ∗X = j(X).
∴ W |= ⟨ ∈ , j(x), j(X)⟩ .
移行原理により⇐⇒ U |= ⟨ ∈ , x, X⟩ .
⇐⇒ x ∈ X.
以上により ∀x ∈ ∗X ∩ S (x ∈ X). したがって ∗X ∩ S ⊆ X. これと (3.28) を合わせて所期の結果を得る．

□
応用上重要な話題に触れておく．ある集合 X の個々の元の内部構造に興味がない場合には X ⊆ Sとなるように S を取ってよい．（S を自由に選べることについては p.32 の議論を見よ）．このようにすると X = σ X となるので記号が簡便になる．このような利点の他に，一貫性の原則を適用すると他の対象についての記号も簡単にしてよい場合がある：

X,Y ∈ U − S かつ X,Y ⊆ S とすると命題 3.5.18 より

第 3 章 チルノのパーフェクト超準解析教室

64

X ⊆ ∗X かつ Y ⊆ ∗Yである．また，関数 f : X → Y に対して，命題 3.5.16 より ∗ f : ∗X → ∗Y となる．任意に取った x ∈ Xに対して y := f (x) とする． f : X → Y より y ∈ Y である．∗x = x, ∗y = y なので

y = f (x).
⇐⇒ U |= ⟨ = , y, ⟨ ap , f , x⟩⟩ .
⇐⇒ W |= ⟨ = , y, ⟨ ap , ∗ f , x⟩⟩ .
⇐⇒ y = ∗ f (x).
以上により：∀x ∈ X ( f (x) = ∗ f (x)) .

(3.29)つまり ∗ f は f の拡張写像になっている．このような場合は ∗ f と書かずに f と書く．
同様に，X,Y ∈ U − S かつ X,Y ⊆ S であるとき関係 Φ ⊆ X ×Y についても ∗Φ を Φ と同一視する．
3.5.7 内的定義原理

与えられた内的集合から出発して別の内的集合を得ようとする際に便利な，内的定義原理(internal definition principle) を紹介する．
命題 3.5.19

e ∃a ∈ U (x ∈ ∗a ∧ Trans (a)) .
∀x ∈ U(3.30)

e の元とする．U
e の定義より y ∈ U が存在して x ∈ ∗y. (U8) より，U の推移的集
Proof. x を任意の U
合 a が存在して y ∈ a となる．移行原理より ∗y ∈ ∗a. よって x ∈ ∗y ∈ ∗a. 命題 3.5.2 より ∗a も推移的集合なので x ∈ ∗a.

□

定理 3.5.20（内的定義原理）

x ∈ W − S に対して次の (1)(2)(3) は同値である：

ex ∈ U.

(1)
(2)

( )
e ∃z ∈ Def Ue∃y ∈ U(3)e ∃A(t) ∈ Form e (x = {u ∈ y W |= A(u)}) .
∃y ∈ UU

Proof.

(x = y ∩ z) .

(1)⇒(2) z := x とすればよい．

(2)⇔(3) 単なる言い換えである．
(3)⇒(1) 論理式 A(t) に出現する定数を q1 , ..., qn とする．命題 3.5.19 により，U の推移的集合
p0 , p1 , ..., pn が存在してy ∈ ∗ p0 , q1 ∈ ∗ p1 , ..., qn ∈ ∗qn .

(3.31)

明らかに，定数を含まない論理式 B(t, u1 , ..., un ) ∈ FormU が存在しA(t) = B(t, u1 , ..., un )となる．（定数を含まないので ∗B = B である．）また，次も明らかである：∀z0 ∈ p0 ∀z1 ∈ p1 · · · ∀zn ∈ pn}{t ∈ z0 U |= B(t, z1 , ..., zn ) ⊆ z0 .

(3.32)

3.6 自然数について

65

p0 が推移的集合であることにより，任意の z0 ∈ p0 に対して z0 ⊆ p0 . よって：{}∀z0 ∈ p0 ∀z1 ∈ p1 · · · ∀zn ∈ pn t ∈ z0 U |= B(t, z1 , ..., zn ) ∈ P(p0 ) .
⇐⇒ ∀z0 ∈ p0 ∀z1 ∈ p1 · · · ∀zn ∈ pn ∃w ∈ P(p0 )()∀t ∈ z0 t ∈ w ⇐⇒ U |= B(t, z1 , ..., zn ) .
全体を U |= C という形に直してから移行原理を適用し，再び整理すると⇐⇒ ∀z0 ∈ ∗ p0 ∀z1 ∈ ∗ p1 · · · ∀zn ∈ ∗ pn ∃w ∈ ∗P(p0 )()∀t ∈ z0 t ∈ w ⇐⇒ W |= B(t, z1 , ..., zn ) .
ここで z0 := y, z1 := q1 , · · · zn := qn とすれば次が得られる．

{}t ∈ y W |= B(t, q1 , ..., qn ) ∈ ∗P(p0 ) .
{}⇐⇒ t ∈ y W |= A(t) ∈ ∗P(p0 ) .
e⇐⇒ x ∈ ∗P(p0 ) ⇐⇒ x ∈ U.
□
次の定理も紹介しておく．
定理 3.5.21（標準的定義原理） x ∈ W − S に対して次の (1)(2) は同値である：(1)

x は標準的.

(2)ある y ∈ U と標準的な定数しか持たない A(t) ∈ FormW によって{}x = u ∈ ∗y W |= A(u) .

Proof. 内的定義原理の証明を見て各自やってみよ．（内的定義原理の証明より少しだけ簡単である）．

□

3.6 自然数について「自然数について考える．ここでの自然数についての考察は，超準解析についての理解を深めてくれ
る．それだけでなく，超準解析における無限集合の扱いの議論の基礎的な道具を提供してくれる．
以下では N ∈ U − S, N ⊆ S として考える．つまり，N ∈ U − S, N ⊆ S であればこの節の内容はいかな
る宇宙 U についても成立する」「ちょっと待ってください，それ不可能です．だってどんな宇宙 U に対しても N ⊆ U − S が成り立
つはずですから．証明してみますね」：

Proof. (U2) より 0 = ∅ ∈ U − S である．さらに補題 3.3.6 と命題 3.3.9 より任意の x ∈ U − S に対して SUCC(x) = x ∪ {x} ∈ U − S である．よって，数学的帰納法により任意の自然数が U − S に入ることが言える．したがって N ⊆ U − S．

□

「チルノのこの《証明》には実のところおかしいところはない．おかしいのは《N ⊆ S として考える》の理解．いまいちど p.32 の議論を読んで欲しい．そこでの用語を用いてもう一度説明すると，
例えば以下の議論で《自然数 1》と言ったときには実際には《φ (1)》を意味している」「あー！ つまり，これからの議論で《N》って呼ばれるのは実際には《φ [N]》で，これが S の部分集合なわけですね」「そのとおり」「やっと《N ⊆ S として考える》の意味がわかりました」

第 3 章 チルノのパーフェクト超準解析教室

66「例外はある．有限性を述べるときの自然数は《本来の》自然数を用いる．集合 x が有限であること——Fin(x) と書く——は次のように定義されているのだった：
1–1

Fin(x) ⇐⇒ ∃n ∈ N ∃ f : x −−→ n.
def(3.33)

ここに出てくる n は《本来の》つまり U − S に属する自然数であり，次の関係を満たす」：

n={(n = 0)otherwise: ∅,: {0, ..., n − 1} .

(3.34)「なるほど，確かにそこでの n を原子である φ (n) と同一視するわけにはいきませんね」「さて，N 上の二項関係{}
Φ := ⟨x, y⟩ ∈ N2 x < y(3.35)

を考えるとこれは有限共起的 (p.56) となる」
「えーと，つまりこういうことが成り立つってことですね」：∀F ∈ PFin (N) ∃y ∈ N (∀x ∈ F (⟨x, y⟩ ∈ Φ)) .
⇐⇒ ∀F ∈ PFin (N) ∃y ∈ N (∀x ∈ F (x < y)) .

(3.36)(3.37)「どうして成り立つかはわかる？」「y := 1 + max F ってしてやれば確かに成り立ちます」「それでよい．よって理想化原理 (E5’) を使えば次が得られる」：∃ν ∈ ∗N ∀n ∈ N (⟨n, ν ⟩ ∈ Φ).

(3.38)「ん？ この式の『Φ』って星をつけ忘れてませんか？」「もう一度 p.64 の議論を読んで欲しい．N ⊆ S なので，∗Φ は Φ の拡張とみなせる．このような場
合には ∗Φ と Φ を同一視するルールに従っている」「あー，なるほど」「さて，Φ は二項関係『<』の別名に過ぎないから，∗Φ もまた ∗< の別名に過ぎない．そして，∗Φと Φ を同一視すると決めたのだから，∗< のことも < と同一視しましょう．すると式 (3.38) は次のように書きなおせる」：∃ν ∈ ∗N ∀n ∈ N (n < ν ).

(3.39)「ほーん，なるほどね」「意味は？」「えーと，ある ν ∈ ∗N があって，いかなる n ∈ N よりデカい」「つまり？」「あれ...... この ν は......《無限大自然数》なのか！？」「どんな自然数 n ∈ N より《大きい》のだから，そういうことになる」「一体何が起こったんでしょう？」「ある X ∈ U − S に対して，X ⊆ S ならば σ X = X となる．そして，命題 3.5.6 より σ X ⊆ ∗X となっている．X が有限集合のときには (E3) から σ X = ∗X となってしまうけれど，少なくとも X = N の場合にはこうなる」：
σ

N (= N) ⊊ ∗N.

3.6 自然数について

67「確かに，仮に ν ∈ N だとしたら《ν < ν 》が言えちゃうから，確かに N ⊊ ∗N ですね」
「つまり ∗N には少なくとも一つ——あとで見るように実はたくさん——N に属さない元がある．
いま得られた ν もそんな《超自然数》の一つ．この ν によって，二項関係 Φ (= ∗Φ) は，N (= σ N)の上で充足されるわけ」「議論の舞台を N から ∗N に広げたおかげで関係が充足されやすくなった......？」「そんな感じの理解でいいと思う．とりあえず，あとで参照しやすいようにいまの結果を命題にしておきましょう」：
命題 3.6.1

N ⊊ ∗N.
□

Proof. 上の会話を証明にまとめてみよ．
「さて，実は ∗N − N の元はすべて《無限大自然数》であることが示せる」：
定理 3.6.2∀ν ∈ ∗N − N ∀n ∈ N (ν > n).

(3.40)

Proof. 背理法によって示す．仮に 式 (3.40) が成立しなかったとすると次が言える：∃ν0 ∈ ∗N − N ∃n0 ∈ N (ν0 ≤ n0 ).

(3.41)

自然数の空でない部分集合は最小元を持つので，この ν0 に対し

n′ := min {n ∈ N n ≥ ν0 }(3.42)とすると n′ ∈ N. 仮に n′ = 0 とすると ν0 = 0 ∈ N となるが，これは ν0 ∈ ∗N − N という仮定に反する．よって n′ ≥ 1.
この n′ の最小性により次が言える：

n′ − 1 < ν0 ≤ n′ .
ここで，ν0 ∈ ∗N − N, n′ ∈ N なので上の不等式の等号は成立しない．したがって：

n′ − 1 < ν0 < n′ .

(3.43)

以上から次が言える：∃ν ∈ ∗N (n′ − 1 < ν < n′ ).

(3.44)⇐⇒ ∃m ∈ N (n′ − 1 < m < n′ ).

(3.45)

移行原理により明らかに (3.45) は起こりえない．（隣り合う自然数の「間に挟まれる」自然数は存在しない）．した
がって (3.41) という仮定は否定され，所期の命題の主張が成立する．

定義 3.6.1（有限自然数と無限自然数）n ∈ ∗N について，n ∈ N のとき《有限 (finite)》と言う．n ∈ ∗N − N のとき《無限 (infinite)》と言う．以下ではしばしば ∗N − N を ∗N∞ と書く．

□

第 3 章 チルノのパーフェクト超準解析教室

68「この《有限》の使い方は普通の意味と整合しますね」「さて，命題 3.6.2 で示したように∀n ∈ N ∀ν ∈ ∗N − N (ν > n)なので，順序集合 ∗N の《最初の部分》は N になっている．そして《その続き》が ∗N − N だということになる．ただし，この順序には微妙に直観的理解を阻むような側面がある」「どんなことでしょう？」「仮に ∗N − N（これは命題 3.6.1 より空ではない）が最小元 ν0 を持っていたとしよう．すると

ν0 の最小性から ν0 − 1 ∈ N でなければならない．一方で，自然数の（当たり前の）性質から，
ν0 = (ν0 − 1) + 1 はまた N に属することになる．しかしこれは ν0 ∈ ∗N − N という仮定と矛盾する」「ってことは ∗N − N は最小元を持たないんですね」「そのとおり．以上の議論の結論をまとめると」：• ∗N − N は最小元を持たない()• 言えない： ∀F ⊆ ∗N F , ∅ =⇒ F は最小元を持つ .
「ん......？ 上の箇条書きの二番目は《数学的帰納法の原理》の言い換えで N を ∗N に変えただけですよね．でも変だな，移行原理を使えばこれも成り立つって言えますよね？」「ではやってみて」「はい」：

N については次が成立する（数学的帰納法の原理）：∀F ⊆ N (F , ∅ =⇒ ∃x ∈ F ∀y ∈ F (x ≤ y)) .

(3.46)

後半の論理式をまとめて A(F) と書くことにすると：∀F ⊆ N (F , ∅ =⇒ A(F)) .

(3.47)⇐⇒ ∀F ⊆ ∗N (F , ∅ =⇒ ∗A(F)) .

(3.48)

移行原理により論理式 A には定数が含まれてないので ∗A = A となって⇐⇒ ∀F ⊆ ∗N (F , ∅ =⇒ A(F)) .

(3.49)

はい，できました！
「式 (3.47) から式 (3.48) に移るところで移行原理を間違って使っている．移行原理を正しく使うためには，制限量化を《⊆ N》ではなく《∈ P(N)》の形で扱わねばならない」「なるほど......？

やりなおしてみますね」：∀F ⊆ N (F , ∅ =⇒ A(F)) .

(3.50)⇐⇒ ∀F ∈ P(N) (F , ∅ =⇒ A(F)) .

(3.51)⇐⇒ ∀F ∈ ∗P(N) (F , ∅ =⇒ A(F)) .

(3.52)e (F , ∅ =⇒ A(F)) .
⇐⇒ ∀F ∈ P(∗N) ∩ U(3.53)

移行原理と ∗A = A により

命題 3.5.11(2) から3.6 自然数について

69「それでいい．最後の式を読み下してみて」「∗N の内的な部分集合は，空でなければ最小元を持つ」「それと，∗N − N(, ∅) が最小元を持たなかったことを合わせると？」「∗N − N は内的集合ではない！」「言い換えれば ∗N − N は外的集合ということ．以上をまとめると」：
命題 3.6.3 次の (1)(2) が成立する：

(1)
(2)

∀F ∈ P(∗N) − {∅}()
e =⇒ F は最小元を持つ .
F ∈Ue
N − N ∈ W − U.

∗

「なるほど，移行原理があるから N と ∗N はそっくりさんだと思ってましたが，そうとも限らないんですね」「冪集合が関わるときには少し気をつけたほうがいい」e ⊊ W も上の命題の (2) から出てきますね」「あと，ずっと気になってたけど U

e ⊆ W であることまでしかわかっていなかった．簡単な議論により，N が外「確かに，今までは U的集合であることも言える」：
命題 3.6.4eN ∈ W − U.

(3.54)

e であったとすると：Proof. 仮に N ∈ U{}
N − N = x ∈ ∗N x < N}{= x ∈ ∗N W |= ⟨ ¬ , ⟨ ∈ , x, N⟩⟩ .

∗内的定義原理（定理 3.5.20）により，∗N − N は内的集合でなければならない．しかしそれは命題

3.6.3 に反する．よって N は外的集合である．

□「内的定義原理って，こんな風に使うんですねえ」「N が外的集合であることを利用すると次の定理が示せる」：
定理 3.6.5 X ∈ U − S に対して：eFin(X) ⇐⇒ σ X ∈ U.

(3.55)

Proof. (⇒) (E3) より明らか．
(⇐) 対偶を示す．X を無限集合とする．このとき，ある f が存在して
onto

f : X −−→ Nとなる．命題 3.3.11 より Map(X, N) ∈ U − S なので f ∈ U − S である．命題 3.5.16(4) により：∗f : ∗X −−→ ∗N(3.56)

f σ : σ X −−→ N.

(3.57)

onto

さらに命題 3.5.17(2) と σ N = N により
∗

onto

X

第 3 章 チルノのパーフェクト超準解析教室

70
式 (3.56)(3.57) により次が言える：∗

f [σ X] = N.

(3.58)仮に σ X が内的集合であったとする．このとき，∗

f [σ X] = {y ∈ ∗N ∃x ∈ σ X (y = f (x))}(3.59)

なので，内的定義原理によって式 (3.59) の両辺は内的集合となる．これを式 (3.58) と合わせると N
が内的集合であることが従う．しかし，これは命題 3.6.4 と矛盾する．よって σ X は外的集合であ□る．

系 3.6.6

X ∈ U − S が無限集合のとき， ∗P(X) ⊊ P(∗X).

e なので
Proof. 命題 3.5.6 より σ X ∈ P(∗X). 命題 3.6.5 より σ X < Uσe
X ∈ P(∗X) − U.

e なので
命題 3.5.11(2) より ∗P(X) = P(∗X) ∩ Uσ

X < ∗P(X) .

以上により ∗P(X) ⊊ P(∗X).

□

「この結果を補題 3.5.13 とまとめると次が言える」：
命題 3.6.7 X ∈ U − S に対して次の (1)(2) が成り立つ：(1)

Fin(X) ⇐⇒ ∗P(X) = P(∗X) .

(2)¬Fin(X) ⇐⇒ ∗P(X) ⊊ P(∗X) .

Proof. (1) の (⇐) だけ示せばよい．仮に ∗P(X) = P(∗X) であって X が無限集合であったとする
e なので，こと，外的集合である σ X が ∗P(X) に属することになる．命題 3.5.11(2) より ∗P(X) ⊆ U
れは矛盾．よって ∗P(X) = P(∗X) のとき X は有限集合である．

□「命題 3.5.11(p.58) を扱ったときに，関係eP(X) = P(∗X) ∩ U∗e 》が取れるかどうかという話が出たけれど，これで《無限集合の場合尻尾は取れない》の尻尾《∩U
ことがはっきりわかった」「この冪集合ってのはほんと微妙ですねえ」「さて，定理 3.6.5 と命題 3.5.6 を組み合わせると次が言える」：
系 3.6.8

X ∈ U − S が無限集合ならば σ X ⊊ ∗X.

Proof. 命題 3.5.6 より σ X ⊆ ∗X. X は無限集合なので定理 3.6.5 より σ X は外的集合である．一方
で ∗X は標準的，したがって内的集合である．したがって σ X と ∗X が一致することはあり得ない．
よって σ X ⊆ ∗X.

□：「(E3)，命題 3.6.7 そして系 3.6.8 を組み合わせると，冪集合に関して次のような定理が得られる」

3.7 実数について

71

定理 3.6.9 X ∈ U − S に対して次の (1)(2) が成り立つ：(1)

Fin(X) =⇒ σ P(X) = ∗P(X) = P(∗X) .

(2)¬Fin(X) =⇒ σ P(X) ⊊ ∗P(X) ⊊ P(∗X) .
□Proof. 容易．

3.7 実数について「さて，では実数の話をする．ところでチルノは実数についてどれくらい知ってるの」「実数の集合 R が完備なアルキメデス的順序体であることぐらいですね．あ，そう言えばアルキメ
デスの持ちネタがあるんですよ」
：

... 貝

＜ 歩き目です「...... なるほど，《目》という漢字に足が二本生えて歩けるというわけね」「これはね，あとからジワジワ来るタイプのやつですから！」「それはそれとして，例えば《順序体の標数は 0 であること》はわかる？」「すみません，標数っての自信なくて」「なるほど，そういうことなら代数学を手早く復習しましょう」
3.7.1 代数学の復習

定義 3.7.1（可換体） 集合 K とその特別な元 0K , 1K と四つの写像

plus : K × K → K.
minus : K → K.
mul : K × K → K.
inv : K − {0K } → K.
が与えられているとする．なお，以下では次のような記法を導入する：• 《plus(x, y)》を《x + y》と書く．
• 《minus(x)》を《−x》と書く．
• 《x + (−y)》を《x − y》と書く．
• 《mul(x, y)》を《x · y》と書く．
• 《inv(x)》を《x−1 》と書く．
• 《x · y−1 》を《x/y》あるいは《

x
》と書く．
y

⟨K, 0K , 1K , plus, minus, mul, inv⟩ が体 (field) であるとは，次の (F1)–(F10) が成立することである：

第 3 章 チルノのパーフェクト超準解析教室

72
(F1)

∀x, y ∈ K (x + y = y + x).

(F2)∀x ∈ K (x + 0K = x).

(F3)∀x ∈ K (x − x = 0K ).

(F4)∀x, y, z ∈ K ((x + y) + z = x + (y + z)) .

(F5)∀x, y ∈ K (x · y = y · x).

(F6)∀x ∈ K (x · 1K = x).

(F7)∀x ∈ K − {0K } (x/x = 1K ).

(F8)∀x, y, z ∈ K ((x · y) · z = x · (y · z)) .

(F9)0K , 1K .

(F10)∀x, y, z ∈ K (x · (y + z) = x · y + x · z) .

混乱の恐れがない場合は 0K , 1K , plus, minus, mul, inv への言及を省略し，集合 K 自体を体と呼ぶ．
「いくつかの箇所で《∀x, y ∈ K 》などと書いたけれどこれはもちろん《∀x ∈ K ∀y ∈ K 》の略記である」「あー，つまり K ∈ U であれば体の公理は全部 SentenceU にエンコードできるわけですね」「そのとおり．さて，上の公理から関数 inv と (F7) を除外したものは可換環と呼ばれるのだった．
次の命題は可換環論の初歩的な結果である」：
命題 3.7.1 K を体とするとき：(1)

0K は一意である．

(2)

1K は一意である．

(3)∀x ∈ K (x · 0K = 0K ).

(4)
(5)

∀x, y ∈ K (x + y = 0K ⇐⇒ y = −x).
()∀x ∈ K (−1K ) · x = −x .

(6)(−1K ) · (−1K ) = 1K .
□Proof. 代数学の教科書を見よ．
「体 K に対し，Z からの写像 f を次のように定義する」：

(z > 0)
f (z) :=(z = 0)(z < 0): 1K + · · · + 1K .
|{z}z times: 0K .
: − ( f (−z)).

「——すると f は環準同型写像になる．よって Ker( f ) は Z のイデアルとなる．ここまではいい？」「はい，大丈夫です」「初等整数論の結果から，Z のイデアルは {pz z ∈ Z} の形になる．ただし p は 0 または素数」「そういえば Z は単項イデアル整域でしたね」「Ker( f ) = {pz z ∈ Z} と表したとき，この p のことを体 K の標数 (characteristic) と呼ぶ」
p個

z
}|
{
「うろ覚えですけど標数って 1K + · · · + 1K ってやったとき 0K になるような最小の p として定義しませんっけ？」

3.7 実数について

73「 p > 0 の場合はそう定義しても《同じこと》になる．いま与えた方法では標数 0 を特別に扱う必要がない．さて，では順序体の話に行きましょう」
定義 3.7.2（順序体） 体 K とその上の二項関係 ≤ が与えられたとする．⟨K, ≤⟩ が順序体

(ordered field) であるとは，次の (OF1)(OF2)(OF3) が成り立つことである：(OF1)⟨K, ≤⟩ は全順序集合.

(OF2)∀x, y, z ∈ K (x ≤ y =⇒ x + z ≤ y + z).

(OF3)∀x, y ∈ K (0K ≤ x ∧ 0K ≤ y =⇒ 0 ≤ x · y).

混乱の恐れがない場合は《≤》への言及を省略して集合 K 自体を順序体と呼ぶ．

命題 3.7.2 K を順序体とするとき次の (1)(2) が成立する：(1)

0K < 1K .

(2)∀x ∈ K (x < x + 1K ).

ただし，x < y ⇐⇒ x ≤ y ∧ x , y.
def

Proof.

(1) 0K , 1K と全順序性から 0K < 1K または 1K < 0K . 仮に 1K < 0K であったとすると

0K < (−1K ). よって (OF3) より 0K < (−1K ) · (−1K ) = 1K . 全順序性により，これは 1K < 0K という仮定と矛盾する．よって 0K < 1K である．

□

(2) (1) と (OF2) より．

命題 3.7.3 順序体の標数は 0 である．

Proof. 順序体 K の標数を p とする．仮に p > 0 とすると：
1K + · · · + 1K = −1K < 0K .
|{z}(p−1) times

これは 0K < 1K であることと矛盾する．よって p = 0．

□

「順序体の標数が 0 ということは，つまり環準同型 f が単射であることを意味する．よって写像 fによって Z を順序体 K に埋め込むことができる」「つまり z ∈ Z と f (z) ∈ K を同一視するわけですね」「そう．特に 0K = 0, 1K = 1 とみなせる．また，N, Z ⊆ K とみなせる」「Q ⊆ K も言えますか？」「言える．g : Q → K を

a
f (a)
7−→
b
f (b)
として定義したときにこれが (i) 環準同型であり (ii) 単射であることがわかる．よって g によって

Q ⊆ K とみなせる」
3.7.2 最小上界性を持つ順序体「実数体は色々な方法で特徴づけすることができる [6]．《最小上界性を持つ順序体》としての特徴づけもその一つ．これは微積分の基本事項だけど念のため復習しておきましょう」

第 3 章 チルノのパーフェクト超準解析教室

74「あたいも細かいことは抜けてるんで助かります」「K を順序体とし，∅ ⊊ E ⊆ K とする．次のように定める：

U(E) := {a ∈ K ∀x ∈ E (x ≤ a)} .
a ∈ U(E) であるとき《a は E の上界 (upper bound) である》と言う．U(E) が無数の元を持つこともあるし，空集合となることもある．U(E) ⊋ ∅ のとき《E は上に有界である》と言う」

定義 3.7.3（最小上界性を持つ順序体）

順序体 K が最小上界性 (least-upper-bound property)を持つとは：∀E ∈ (P(K) − {∅}) (U(E) , ∅ =⇒ min U(E) ∈ U(E)) .
(())⇐⇒ ∀E ∈ (P(K) − {∅}) U(E) , ∅ =⇒ ∃s ∈ U(E) (s = min U(E)) .

(3.60)(3.61)

ただし，《min U(E) ∈ U(E)》は∃s ∈ U(E) ∀t ∈ U(E) (s ≤ t)の略記とする．順序体 K が最小上界性を持つ事を言葉になおせば《K の空でない部分集合 Eが上に有界のとき U(E) が最小元を持つ》ということである．s := min U(E) ∈ U(E) であるとき，s を《E の最小上界》と呼び，記号では《sup E 》と書く．
「最小上界性も制限量化で書けている．したがって K ∈ U であれば宇宙 U に関する文としてエンコードできることに注意しておく」
ノート 6 以後は慣例に従い，誤解の恐れがない限り積の記号《·》を省略して x と y の積を xy のよ
うに書く．
最小上界性を持つ順序体を実数体 (real number field) と呼び，R で表す．
{r
また， R+ := ∈ R r > 0} .
定義 3.7.4（実数）「このように定義された《実数》をつかって解析学を展開できることは，微積分の教科書で述べられている」「ちょっと待ってください，アルキメデス性は定義に入れなくていいんですか？」「アルキメデス性は最小上界性から出る」：
命題 3.7.4（R のアルキメデス性）∀x, y ∈ R (x > 0 ∧ y > 0 =⇒ ∃n ∈ N (nx > y)) .

(3.62)

Proof. 背理法による．仮に∀n ∈ N (nx ≤ y)

(3.63)であったとすると X := {nx n ∈ N} は上に有界である（y ∈ U(X) なので）．そこで s := sup X とすると，x > 0 だから s − x < x. s = min U(X) なのだから s − x < U(X). よって次が言える：∃m ∈ N (s − x < mx).
∴ s < x + mx = (m + 1)x (∈ X).

(3.64)(3.65)

3.7 実数について75

これは s が X の上界であることに反する．よって (3.63) は偽であり，所期の命題が成立する．

□「なるほど，こうやるんですね」

定義 3.7.5（絶対値） x ∈ R に対し{|x| :=(x ≥ 0):otherwise: − x.

x,「——絶対値については次の性質が重要」：
命題 3.7.5(1)∀a ∈ R (a ≤ |a|).

(2)∀a ∈ R (a = 0 ⇐⇒ ∀ε ∈ R+ (|a| < ε )) .

Proof.

(1) 明らか．

(2) (⇒)：明らか．(⇐)：仮に a , 0 だとすると |a| < |a| となり矛盾する．

□

3.7.3 超実数

「先程の N についての議論と同様に，以下では R ⊆ S とする．R の公理たちは——すべて限定量化で書けているので——宇宙 U の文に読み替えられる．これらの公理のうち，冪集合を含まないもの
は形を保ったまま移行できる．よって次が成立する」：
命題 3.7.6∗R は順序体である．

Proof. 上の議論が明確ではないと思った読者は順序体のすべての公理を移行して確認せよ．

□「アルキメデス性や最小上界性は成り立たないんでしょうか？」「どちらも成り立たない．順番に答えていく」：
命題 3.7.7∗R はアルキメデス的順序体ではない.

Proof. 仮に ∗R がアルキメデス的であったとしよう．すると，任意の x, y ∈ ∗R に対して次が成り
立つ：

x > 0 ∧ y > 0 =⇒ ∃n ∈ N (nx > y).

(3.66)いま x := 1, y := ν ∈ ∗N − N とすると (3.66) から：∃n ∈ N (n > ν ).

(3.67)

しかし，これは ν が無限大自然数であること (定理 3.6.2) に反する．よって ∗R はアルキメデス的で

□

はない．

「ちょっと待ってください，さっきは《R が最小上界性を持つ》ことから《R がアルキメデス的である》事が言えたんだから，対偶を取っていまの結果を使えばこれが言えますよね」：
系 3.7.8∗R は最小上界性を持たない．

「そのとおり」

第 3 章 チルノのパーフェクト超準解析教室

76「ってことは，∗R の空でない部分集合であって，上に有界だけど最小上界を持たないようなものがあるってことですか？」「そのとおり．ただし，そういう部分集合は外的集合になる」「どうしてでしょう？」「R の最小上界性を述べた文を移行してみて」「やってみますね」：∀E ∈ ∗(P(R) − {∅})()
U(E) , ∅ =⇒ min U(E) ∈ U(E) .

(3.68)

e なので
命題 3.5.11 と命題 3.5.15 より ∗(P(R) − {∅}) = (P(∗R) − {∅}) ∩ Ue⇐⇒ ∀E ∈ (P(∗R) − {∅}) ∩ U()
U(E) , ∅ =⇒ min U(E) ∈ U(E) .

(3.69)「つまり次が成立する」：
命題 3.7.9 空でなく上に有界な内的部分集合は最小上界を持つ．すなわち：e∀E ∈ (P(∗R) − {∅}) ∩ U()
U(E) , ∅ =⇒ ∃s ∈ ∗R (s = sup E) .

「——話を戻すと，上に有界な E ∈ P(∗R) − {∅} であって sup E を持たないようなものは外的集合でなければならないことがわかる」「そういう外的集合って具体的に作るのは難しいんでしょうか？」「いいえ簡単」：命題 3.7.10

{
}( {
})
H := 1/ν ν ∈ ∗N∞ = a ∈ ∗R ∃ν ∈ ∗N∞ (a = 1/ν ) .
このとき次の (1)(2)(3) が成立する：(1)

H は外的集合である.

(2)

U(H) , ∅.
()
sup H = min U(H) は存在しない.

(3)

Proof.
(1) 仮に H が 内 的 集 合 で あ っ た と す る と ，内 的 定 義 原 理 に よ り J :=∗{r ∈ R ∃x ∈ H (r = 1/x)} も内的集合となる．明らかに J = ∗N∞ = ∗N − N だが命題 3.6.3 によりこれは外的集合であった．よって H は内的集合ではあり得ない．

(2) 実際，1 ∈ U(H) である．
(3) 仮に r := sup H が存在したとしよう．すると r (= min U(H)) の最小性から：∀µ ∈ ∗N∞ (r − 1/µ < U(H)) .

(3.70)⇐⇒ ∀µ ∈ ∗N∞ ∃ν ∈ ∗N∞ (r − 1/µ < 1/ν ).

(3.71)(3.72)

よってこの µ , ν に対して：

r<
⌊

µν
最後の式に現れる分母
µ +ν

1
1
µ +ν
1 1
⌋.
+ =
= µν ≤ ⌊
µν
µ ν
µν
µ +ν

(3.73)µ +ν

⌋は無限自然数である．よって r < U(H) となるが，これは r についての仮定に反する．したがって sup H は存在しない．

□

3.7 実数について⌊µν「最後のほうのµ +ν

77⌋
が無限自然数であるとこに自信が持てないです」「次のように示せる」：
仮に ある自然数 n ∈ N に対して

⌋
⌊
µν
µν
=n
−1 <
µ +ν
µ +ν
だとすると (µ − n)(ν − n) < n2 となり，このことから次の評価が得られる：µ ≤ (µ − n)(ν − n) + n < n(n + 1).
⌊
右辺は有限なので µ が無限自然数であることに反する．よって

µν
µ +ν

⌋
は無限自然数である．

「なるほど．わかってきた気がしますが，床関数 ⌊ ⌋ を無限自然数に適用していいのはどうしてでしょう？」「それについては p.64 の議論をもう一度読んでほしい」「わかりました」「超実数の扱い上重要な区分を導入しておく」：
定義 3.7.6（無限大，無限小，被限）x ∈ ∗R に対して

x は無限大 (inifinitely large) ⇐⇒ ∀r ∈ R+ (|x| > r).
def

x は無限小 (infinitesimal) ⇐⇒ ∀r ∈ R+ (|x| < r).
def

x は被限 (limited) ⇐⇒ ∃M ∈ R+ (|x| ≤ M).
def

そして

{
}
R∞ := x ∈ ∗R x は無限大 .
{}∗Rlimited := x ∈ ∗R x は被限 .

∗

また，x, y ∈ ∗R に対し：x ≃ y ⇐⇒ (x − y) は無限小
def( ⇐⇒ ∀ε ∈ R+ |x − y| < ε ) .
x ≃ y であることを，言葉では《x は y に無限に近い》と言う．
「《被限》て言葉は見慣れないですね」「少し古い本だとこれを《有限 (finite)》と呼んでいるけれど，集合の有限性と紛らわしいのでDiener [20] に習ってこれを《limited》と呼び，それに合わせて訳語を造語した」「なるほど」「さて，いま導入した二項関係 ≃ は ∗R 上の同値関係となる」：
命題 3.7.11 x, y, z ∈ ∗R に対して：(1)a ≃ a.

(2)a ≃ b =⇒ b ≃ a.

(3)

a ≃ b ∧ b ≃ c =⇒ a ≃ c.

第 3 章 チルノのパーフェクト超準解析教室

78□

Proof. 容易．

定義 3.7.7（光暈）x ∈ R に対して
hal(x) := {t ∈ ∗R t ≃ x} .

(3.74)

hal(x) を実数 x の周りの光暈 (こううん；halo) と呼ぶ．
「0 の周りの光暈に関する次の関係を示すことは容易である」：
命題 3.7.12∀a ∈ ∗R − {0} ( a ∈ hal(0) ⇐⇒ 1/a ∈ ∗Rlimited ) .

(1)
(2)

∀a1 , a2 ∈ hal(0) ( a + b ∈ hal(0) ) .

(3)∀a ∈ hal(0) ( −a ∈ hal(0) ) .

(4)∀a ∈ hal(0) ∀b ∈ ∗Rlimited ( ab ∈ hal(0) ) .
□Proof. 容易なので省く．
「光暈に関しては次が基本的」：
命題 3.7.13 x ∈ R に対し次の (1)(2)(3) が成立する：(1){x + 1/ν ν ∈ ∗N∞ } ⊆ hal(x).

(2)

hal(x) = {x + α α ∈ hal(0)} .

(3)

hal(x) は外的集合.

Proof.

(1) 仮に 《∃ν ∈ ∗N∞ ∃ε ∈ R+ (1/ν ≥ ε )》だとする．すると：ν ≤ 1/ε ≤ ⌈1/ν ⌉ ∈ Nとなるが，これは ν が無限であることに反する．よって∀ν ∈ ∗N∞ ∀ε ∈ R+ (1/ν < ε ).
⇐⇒ ∀ν ∈ ∗N∞ (1/ν ≃ 0).
⇐⇒ ∀ν ∈ ∗N∞ (x + 1/ν ≃ x).
(2) 見よ：t ∈ hal(x).
⇐⇒ t ≃ x.
⇐⇒ t − x ∈ hal(0).
⇐⇒ t ∈ {x + α α ∈ hal(0)} .
(3) 仮に hal(x) が内的集合であったとする．すると
hal(0) = {α − x α ∈ hal(x)} = {β ∈ ∗R ∃α ∈ hal(x) (β = α − x)}は内的定義原理 (定理 3.5.20) により内的集合である．よって命題 3.7.9 により s := sup (hal(0)) (∈ ∗R)が存在する．s の U (hal(0)) における最小性により：

3.7 実数について

79∀α ∈ hal(0) ( s − α < U (hal(0) )) .
⇐⇒ ∀α ∈ hal(0) ∃β ∈ hal(0) ( s − α < β ).

よって：

s < α +β.

(3.75)

命題 3.7.12 より α + β ∈ hal(0) なので，s ∈ U (hal(0)) より：

α + β ≤ s.

(3.76)

式 (3.75)(3.76) より s < s が導かれるがこれは起こりえない．よって：□

hal(x) は外的集合である．
「いまの (1) で，0 でない無限小が確かに存在することが保証されたわけですね」「そのとおり」「そっかー，これが……これが無限小量！」そう言うとチルノは呵々と大笑した．そしてこう続けた：「——どうだジョージ，無限小量は確かに存在してるぞ！」「バークリーのことが随分気に入ったみたいね」「いやーしかし無限小量が確固たるものになったいま，今度はジョージがこう問われてるわけですよ．『無限小よりも曖昧な宗教的神秘の上に立ってるお前は何者だ？ ちゃんと存在してるか？』ってね！」「とりあえず先に行きましょう．つぎの定理は非常に重要」：
定理 3.7.14（標準部分） 次が成立する：∀x ∈ ∗Rlimited ∃! x′ ∈ R (x′ ≃ x).

(3.77)

言葉で言えば：被限な x ∈ ∗R は，ある x′ ∈ R と無限に近い．しかもそのような x′ は x に対して一意的に定まる．

Proof.

存在 A := {a ∈ R a ≤ x} とすると x が被限なので U(A) , ∅. よって x′ := sup A が存在する．

仮に ある ε1 ∈ R+ に対して x − x′ ≥ ε1 だったとすると x′ + ε1 < x．よって x′ + ε1 ∈ A. ここでx′ ∈ U(A) であることを使うと x′ + ε1 ≤ x′ ．よって ε1 ≤ 0. これは ε1 のとり方と矛盾する．よって：∀ε1 ∈ R+ (x − x′ < ε1 ).

(3.78)

また，仮に ある ε2 ∈ R+ に対して x′ − x ≥ ε2 だったとすると x ≤ x′ − ε2 ．よって集合 A の定義から∀a ∈ A (a ≤ x′ − ε2 ) が言える．よって x′ − ε2 ∈ U(A) となるが，これは x′ (= min U(A)) の最小性に反する．よって：∀ε2 ∈ R+ (x′ − x < ε2 ).

(3.79)(3.78)(3.79) により：∀ε ∈ R+ ( x′ − x < ε ).
⇐⇒ x′ ≃ x.
一意性 y1 , y2 に対して y1 ≃ x かつ y2 ≃ x だとすると y1 ≃ y2 ．すると：∀ε ∈ R+ (|y1 − y2 | < ε ) .
⇐⇒ y1 = y2

：命題 3.7.5 より．

□

第 3 章 チルノのパーフェクト超準解析教室

80

記法 1（標準部分の記法） x ∈ ∗Rlimited に対応する x′ ∈ R を以下では ◦ x で表す．すなわち：◦: ∗Rlimited → R.

◦ x を x ∈ ∗R
limited の標準部分 (standard part) と呼ぶ．

「標準部分については次が基本的」：
命題 3.7.15 x, y ∈ ∗R に対して：∀x ∈ ∗Rlimited (◦ x ≃ x).

(1)
(2)
(3)
(4)

◦

(x + y) = ◦ x + ◦ y.

◦(−x) = −◦ x.

◦(x · y) = (◦ x) · (◦ y).

(5)x ≤ y =⇒ ◦ x ≤ ◦ y.

(6)

x ∈ R =⇒ ◦ x = x.

(7)(8)
Proof.
(2)◦|x| = |◦ x| .

◦max {x, y} = max {◦ x, ◦ y} .

(1) 定理 3.7.14 より明らか．

◦ x ≃ x, ◦ y ≃ y より

x − ◦ x, y − ◦ y ∈ hal(0).

命題 3.7.12(2) より

x + y − (◦ x + ◦ y) ∈ hal(0).
⇐⇒ x + y ≃ ◦ x + ◦ y.
一方で ◦ (x + y) ≃ x + y なので命題 3.7.11 より：◦(x + y) ≃ ◦ x + ◦ y.

◦(x + y) = ◦ x + ◦ y.

上式両辺は実数なので命題 3.7.5 より(3)◦ (−x) ≃ −x, −◦ x ≃ −x より ◦ (−x) ≃ −◦ x. 関係 ≃ の両辺が実数なので ◦ (−x) = −◦ x.

(4) (2)(3) と同様．
(5) 次の関係を示せば十分である：∀t ∈ ∗R (t ≥ 0 =⇒ ◦t ≥ 0).

(3.80)

仮に t ≥ 0 かつ ◦t < 0 となる t ∈ ∗R が存在したとしよう．すると ε := −t(∈ R+ ) に対して |t − ◦t| ≥ εとなり t ≃ ◦t に反する．

(6) 一意性により．
(7) x の符号で場合分けをする．
x ≥ 0 のとき : |x| = x なので ◦ |x| = ◦ x. よって ◦ |x| = |◦ x|.
x < 0 のとき : |x| = −x なので ◦ |x| = ◦ −x = −◦ (−x)．x < 0 ゆえに x ≤ 0 なので ◦ x ≤ 0 が言える．

3.8 応用例

81

よって |◦ x| = −(◦ x)．よってこの場合にも ◦ |x| = |◦ x|.

(8) x ≥ y としても一般性を失わない（どうして？）．すると ◦ x ≥ ◦ y なので：◦max {x, y} = ◦ x = max {◦ x, ◦ y} .
□3.8 応用例「さて，そろそろ微積分らしい話題を扱う準備ができてきた」「おお！ やっとですか」3.8.1 数列の極限「さて，数列の話をする．《実数列 (an )n∈N 》は要するに関数a: N → R
だと思うことができる．p.64 での議論をここでも適用すれば関数 a は

a : ∗N → ∗Rに延長して考えることができる．したがって ν ∈ ∗N∞ に対しても《aν 》は意味をなすことに注意しておく．次の定理が成立する」：
定理 3.8.1 数列 a : N → R と b ∈ R に対して次の (1)(2) は同値である：

lim an = b.

(1)

n→∞

∀ν ∈ ∗N∞ (aν ≃ b).

(2)
Proof.

(1)⇒(2) 見よ：
lim an = b.

n→∞⇐⇒ ∀ε ∈ R+ ∃N ∈ N ∀n ∈ N (n > N =⇒ |an − b| < ε ) .
Φ := {⟨N, n⟩ ∈ N × N n > N =⇒ |an − b| < ε } とすると⇐⇒ ∀ε ∈ R+ ∃N ∈ N ∀n ∈ N ⟨N, n⟩ ∈ Φ.

(3.81)=⇒ ∀ε ∈ R+ ∃F ∈ PFin (N) ∀n ∈ N ∃N ∈ F ⟨N, n⟩ ∈ Φ.

(3.82)

F := {N} とすれば理想化原理 (E5”) により⇐⇒ ∀ε ∈ R+ ∀ν ∈ ∗N ∃N ∈ N ⟨∗N, ν ⟩ ∈ ∗Φ.
N ∈ N ⊆ S より ∗N = N となる．また，N ⊆ ∗N なので⇐⇒ ∀ε ∈ R+ ∀ν ∈ ∗N ∃N ∈ N (ν > N =⇒ |aν − b| < ε ) .
⇐⇒ ∀ε ∈ R+ ∀ν ∈ ∗N ((∀N ∈ N (ν > N)) =⇒ |aν − b| < ε ) .
⇐⇒ ∀ε ∈ R+ ∀ν ∈ ∗N∞ (|aν − b| < ε ) .
先頭の二つの全称量化の順序を交換して⇐⇒ ∀ν ∈ ∗N∞ ∀ε ∈ R+ (|aν − b| < ε ) .
⇐⇒ ∀ν ∈ ∗N∞ (aν ≃ b) .

第 3 章 チルノのパーフェクト超準解析教室

82(2)⇒(1) (1)⇒(2) の証明は一箇所を除いて同値変形で証明されている．よってその逆を示すには式 (3.82) から式 (3.81) を導けばよい．N ′ := max F とすれば，《∀N ∈ F (n > max F =⇒ n > N)》だから：∀ε ∈ R+ ∃N ′ ∈ N ∀n ∈ N⟨ ′ ⟩N , n ∈ Φ.
□

よって示された．

「この言い換えはなんかそれっぽくていい感じがしますが，これを使って何か数列の性質を示せた
りしますか？」「ここでは例として《数列の和の極限は極限の和であること》を示す」：
定理 3.8.2 数列 a, b : N → R が収束するとき() ()
lim (an + bn ) = lim an + lim bn .

n→∞

n→∞

n→∞

Proof. s := lim an , t := lim bn とすると次の (3.83)(3.84) が成立する：
n→∞

n→∞

∀ν ∈ ∗N∞ (aν − s ∈ hal(0)).

(3.83)∀ν ∈ ∗N∞ (bν − t ∈ hal(0)).

(3.84)

命題 3.7.12(2) より：∀ν ∈ ∗N∞ (aν + bν − (s + t) ∈ hal(0)) .
⇐⇒ ∀ν ∈ ∗N∞ (aν + bν ≃ s + t) .
⇐⇒ lim (an + bn ) = s + t.
n→∞□「上の証明では，数列の極限の性質が光暈の代数的な性質に還元されたことに注意しておく」
3.8.2 閉区間のコンパクト性a, b ∈ R に対して，通常のように区間 [a, b] を次のように定義する：[a, b] := {x ∈ R a ≤ x ≤ b} .
この区間の超準化 ∗[a, b] を考えてみよう．次のように考えればよい：
命題 3.5.9 により[a, b] = {x ∈ ∗R ∗a ∗≤ x ∗≤

∗

∗

b}

R ⊆ S という仮定により ∗a = a, ∗b = b であり，さらに 3.5.6 の議論により ∗≤ と ≤ は同一視できるので= {x ∈ ∗R a ≤ x ≤ b} .
閉区間に関しては次が基本的である：
命題 3.8.3 a, b ∈ R に対して：∀x ∈ ∗[a, b] (◦ x ∈ [a, b]) .
Proof. 命題 3.7.15(4)(5) より．

(3.85)□「あとで（定理 3.8.6）見るように，これは（有界な）閉区間のハイネ＝ボレル性の超準的な表現の3.8 応用例

83

一種だと考えることができる」「閉区間 [a, b] のハイネ=ボレル性は《[a, b] の開被覆 G が与えられると，G の有限部分集合で [a, b]の開被覆になってるやつがある》ってやつでしたね」「そのとおり」
3.8.3 連続性

「次の定理は，連続性の超準的な表現を与える」：
定理 3.8.4 a, b ∈ R, f : [a, b] → R, x0 ∈ [a, b] とする．このとき次の (1)(2) は同値である：(1)

f は x0 で連続.

(2)

∀x ∈ ∗[a, b] (x ≃ x0 =⇒ f (x) ≃ f (x0 )) .

Proof.

(1)⇒(2) 見よ：f は x0 で連続.

⇐⇒ ∀ε ∈ R+ ∃δ ∈ R+ (|x − x0 | < δ =⇒ | f (x) − f (x0 )| < ε ) .
{}Φ := ⟨δ , x⟩ ∈ R+ × [a, b] |x − x0 | < δ =⇒ | f (x) − f (x0 )| < ε とすると⇐⇒ ∀ε ∈ R+ ∃δ ∈ R+ ⟨δ , x⟩ ∈ Φ.

(3.86)

D := {δ } とすれば：=⇒ ∀ε ∈ R+ ∃D ∈ PFin (R+ ) ∃δ ∈ D ⟨δ , x⟩ ∈ Φ.

(3.87)

理想化原理 (E5”) より⇐⇒ ∀ε ∈ R+ ∀x ∈ ∗[a, b] ∃δ ∈ R+ ⟨∗δ , x⟩ ∈ ∗Φ.
∗δ = δ , ∗ f = f , ∗x

0 = x0 という同一視により⇐⇒ ∀ε ∈ R+ ∀x ∈ ∗[a, b] ∃δ ∈ R+ (|x − x0 | < δ =⇒ | f (x) − f (x0 )| < ε ) .

δ についての量化を内側に送り込めば⇐⇒ ∀ε ∈ R+ ∀x ∈ ∗[a, b] ((∀δ ∈ R+ (|x − x0 | < δ )) =⇒ | f (x) − f (x0 )| < ε ) .
⇐⇒ ∀ε ∈ R+ ∀x ∈ ∗[a, b] (x ≃ x0 =⇒ | f (x) − f (x0 )| < ε ) .
先頭の全称量化の順序を交換して整理すれば⇐⇒ ∀x ∈ ∗[a, b] (x ≃ x0 =⇒ f (x) ≃ f (x0 )) .
(2)⇒(1) (1)⇒(2) の証明は一箇所を除いて同値変形で証明されている．よってその逆を示すには式(3.87) から式 (3.86) を導けばよい．δ ′ := min D(∈ R+ ) とすれば，∀δ ∈ D()|x − x0 | < δ ′ =⇒ |x − x0 | < δ

であることから次が言える：∀ε ∈ R+ ∃δ ′ ∈ R+ ∀x ∈ [a, b](⟨ ′ ⟩)
δ ,x ∈Φ .

よって示された．
「なんか見たような議論だなと思ったら，さっきの定理 3.8.1 とほとんど《同じ》ですね」「そのとおり．さきに進む前に次の補題を用意する」：□

第 3 章 チルノのパーフェクト超準解析教室

84

補題 3.8.5 x ∈ R, α ∈ hal(0) とする．このとき次が言える：

x ≥ α =⇒ x ≥ 0.
「この補題に対しては，二つの証明を与える．まずは第一の証明」：

Proof. 仮に x < 0 だったとすると 0 > x ≥ α より：

α < 0.

(3.88)

ε := −x(> 0) とすると α ∈ hal(0) であることにより |α | < ε ．これを不等式 (3.88) と合わせると−ε < α < 0 となる．よって最初の仮定と合わせると− ε < α ≤ x.
⇐⇒ x < α ≤ x.
これは起こりえない．よって x ≥ 0 でなければならない．

□「二番目の証明は，より形式的」：

Proof. 見よ：∃α ∈ hal(0) (x ≥ α ).
⇐⇒ ∃α ∈ ∗R (α ≃ 0 ∧ x ≥ α ) .
⇐⇒ ∃α ∈ ∗R ((∀ε ∈ R+ (|α | < ε )) ∧ x ≥ α ) .
移行原理により⇐⇒ ∃α ∈ R ((∀ε ∈ R+ (|α | < ε )) ∧ x ≥ α ) .
⇐⇒ ∃α ∈ R (α = 0 ∧ x ≥ α ) .
=⇒ x ≥ 0.
□「あたいは二番目の証明みたいのが機械的にできて好きかな」「やり方は一つじゃないから好きな方でやればいい．さて，閉区間上の実数値連続関数に関しては次の定理が有名」：
定理 3.8.6 a, b ∈ R, f : [a, b] → R とする．もし f が [a, b] の各点において連続ならば f はこの区間で最大値を取る．

Proof. 実数の有限集合が最大元を持つことは明らか．よって次が言える：∀F ∈ PFin ([a, b]) ∃x ∈ [a, b] ∀t ∈ F ( f (x) ≥ f (t)) .
理想化原理 (E5”) により⇐⇒ ∃z ∈ ∗[a, b] ∀t ∈ [a, b] ( f (z) ≥ f (t)) .

(3.89)

x0 := ◦ z とする．この x0 が f の最大値を与える点であることをみてゆく．まず，命題 3.8.3 により
x0 ∈ [a, b] である．また，x0 ≃ z なので f の連続性により f (x0 ) ≃ f (z) である．よって∃α ∈ hal(0) ( f (x0 ) = f (z) + α ) .
これを式 (3.89) に代入すると次が得られる：

3.8 応用例

85∀t ∈ [a, b] ( f (x0 ) − α ≥ f (t)) .
⇐⇒ ∀t ∈ [a, b] ( f (x0 ) − f (t) ≥ α ) .

f (x0 ) − f (t) ∈ R なので，補題 3.8.5 により=⇒ ∀t ∈ [a, b] ( f (x0 ) − f (t) ≥ 0) .
よって f は x0 ∈ [a, b] で最大値を取る．

□「この定理の証明において，z の標準部分 x0 が再び区間 [a, b] に入ることが重要だったことに注意しておく」
3.8.4 指数関数の表示「最後に指数関数についての定理を示しておしまいにする．まずは総和についての一般的注意から」：
数列 a : N → R が与えられたとき sigma : N × N → R を次のように定義する：

(n < m)sigma(m, n) := (n = m)otherwise: 0,: am ,(3.90): sigma(m, n − 1) + an .

n

明 ら か に 通 常 の 記 法 を 使 え ば sigma(m, n) = ∑ ak で あ る ．3.5.6(p.63) の 議 論 を 適 用 す る と ，k=m∗sigma : ∗N × ∗N → ∗R は sigma の拡張写像だとみなせる．そこで µ , ν ∈ ∗N に対する ∗sigma( µ , ν )

を
ν

∑ ak

k=µ

と書くことにする．特に，無限大自然数 N ∈ ∗N∞ に対しても
N

∑ ak

k=0

のような量が，極限の理論を介さずに定まっていることに注意しておく．
級数に関しては次が基本的である：
定理 3.8.7 数列 a : N → R と s ∈ R に対して次の (1)(2) は同値：∞

(1)

∑ an = s.

n=0

(2)

∗

∀ν ∈ N∞(ν)∑ ak ≃ s .

k=0

Proof. 定理 3.8.1 を級数の場合に言い換えただけである．
次の補題も有用である：
補題 3.8.8 数列 a : N → R から作った無限級数 ∑∞n=0 an が収束するとき次が成立する：□

第 3 章 チルノのパーフェクト超準解析教室

86(∗∀ µ , ν ∈ N∞)ν

∑ ak ≃ 0 .

k=µProof. s := ∑∞n=0 an とし， µ , ν を任意の無限大自然数とする． µ − 1 も無限大自然数である（どうして？）．
定理 3.8.7 により：
µ −1

ν

k=0

k=0

s − ∑ ak ≃ 0, s − ∑ ak ≃ 0.
よって 0 の周りの光暈についての命題 3.7.12 より()ν∑ ak =

k=µ

ν

(

µ −1

s − ∑ ak − s − ∑ ak
k=0

(3.91))≃ 0.

(3.92)k=0□
次の定理は，それ自体興味深いものである．以下では定理 3.8.10 の証明のために使われる．
定理 3.8.9（ロビンソンの延長定理）a ∈ ∗ Map(N, R)()
e に対して次が成= Map(∗N, ∗R) ∩ U

立する：

(
)
∀n ∈ N (an ≃ 0) =⇒ ∃N ∈ ∗N∞ ∀k ∈ ∗N (k ≤ N =⇒ ak ≃ 0) .
Proof. ∀n ∈ N (an ≃ 0) と仮定する．集合 X を次のように定義する：{}
X := n ∈ ∗N ∀k ∈ ∗N (k ≤ n =⇒ k |ak | ≤ 1) .
仮定により N ⊆ X. 命題 3.6.4 により N は外的集合である．一方，定理 3.5.20(3) により X は内的集合である．したがって両者が一致することはありえない．よって X ⊆ ∗N(= N ∪ ∗N∞ ) は N より真に大きい．したがって：∃N ∈ ∗N∞ (N ∈ X).
⇐⇒ ∃N ∈ ∗N∞ ∀k ∈ ∗N (k ≤ N =⇒ k |ak | ≤ 1) .
⇐⇒ ∃N ∈ ∗N∞ ∀k ∈ ∗N (k ≤ N =⇒ |ak | ≤ 1/k) .
=⇒ ∃N ∈ ∗N∞ ∀k ∈ ∗N (k ≤ N =⇒ |ak | ≃ 0) .
□実数 x ∈ R に対し，次数 m(∈ N) の不完全指数関数 exp(x; m) と指数関数 exp(x) を次のように定義
する：
m

xk
.
k=0 k!
)∞ n (x= lim exp(x; m) .
exp(x) := ∑m→∞n=0 n!

exp(x; m) := ∑次の定理は，よく知られた関係()
1 n
lim 1 +=en→∞nの一般化とみなせる：(3.93)(3.94)

3.8 応用例

87

定理 3.8.10 x ∈ R に対して次が成立する：(
x )n
lim 1 +
= exp(x).
n→∞n「証明に移る前に，これが成り立ちそうであることを《オイラー風の》おおらかな計算で確かめてみる」：

N を無限大自然数とすると(N ( ) ( )kx )NNxx )n (= 1+=∑
lim 1 +
n→∞
n
N
N
k=0 k
x0
x1
N − 1 x2
(N − 1)(N − 2) x3++++ ......
0!
1!
N 2!
N2
3!
N k
x
=∑
= exp(x).
k=0 k!
=「——もちろんこの《証明》は厳密さという意味では満足の行くものではない．超準解析を用いる
ことにより，上の《証明》議論の方向を保ちつつ，厳密さへの要求も満たす証明を書くことができる」：

Proof. n ∈ N に対して，二項展開により：(
n ( ) ( )k
x )n
n
x
1+
=∑
n
k
n
k=0
(
)
n
1
xk
=∑
(n − j)∏nk
k=0 k! 0≤ j<kn= ∑ gn (k)
k=0

xk
,
nk

ただし

gn (k) :=

)
(
j
.
1
−
∏
n
0≤ j<k以上により：

(
)
(
n
x )n
xk
∀n ∈ N1+= ∑ gn (k)
.
n
k!
k=0

(3.95)∀n ∈ N ∀k ∈ N (|gn (k)| ≤ 1) .

(3.96)∀n ∈ N (gn (0) = 1) .

(3.97)∀n ∈ N ∀k ∈ N (k ≥ n + 1 =⇒ gn (k) = 0) .

(3.98)

また，明らかに：証明の残りでは N ∈ ∗N

∞ を一つ固定する．(3.95)(3.96)(3.97)(3.98) を移行して n の箇所に N を代入することにより次を得る：

(
N
x )N
xk
= ∑ gN (k) .
1+
N
k!
k=0

(3.95’)∀κ ∈ ∗N (|gN (κ )| ≤ 1) .

(3.96’)

gN (0) = 1.

(3.97’)∀κ ∈ ∗N (κ ≥ N + 1 =⇒ gN (κ ) = 0) .

(3.98’)

第 3 章 チルノのパーフェクト超準解析教室

88

さて，もし ある k ∈ N に対して gN (k) ≃ 1 だったとすると：()
kkgN (k + 1) = gN (k) 1 −= gN (k) − gN (k).
NN
1/N ∈ hal(0) なので命題 3.7.12(2) より k/N ∈ hal(0). 式 (3.96’) より gN (k) は被限なので命題 3.7.12(4)より Nk gN (k) ∈ hal(0)．これを式 (3.98) に代入すれば次を得る：

gN (k + 1) ≃ gN (k) ≃ 1.
以上により：∀k ∈ N (gN (k) ≃ 1 =⇒ gN (k + 1) ≃ 1) .

(3.99)

これと式 (3.97’) により，数学的帰納法から次が得られる：∀k ∈ N (gN (k) ≃ 1) .

(3.100)ロビンソンの延長定理をこれに適用すると次が得られる：∃M ∈ ∗N∞ ∀m < M + 2 (gN (m) ≃ 1) .

(3.101)式 (3.98’) において κ := M + 1 とすると次が得られる：

M ≥ N =⇒ gN (M + 1) = 0.

(3.102)

したがって，仮に M ≥ N だったとすると式 (3.101) より gN (M + 1) ≃ 1 であることと矛盾する．よって M < N である．したがって：(x )N− exp(x; M + 1)
1+
N
M+1

≤ ∑ |gN (k) − 1|
k=0

N
|x|k
|x|k
+ ∑ |gN (k)|.
k! k=M+2k!

(3.103)n, m ∈ N に対して，実数の有限集合 {gn (0), ..., gn (m)} は最大値を持つので次が言える：∀n ∈ N ∀m ∈ N ∃k ∈ m ∀ j ∈ m()|gn (k) − 1| ≥ |gn ( j) − 1| .

移行原理を適用して n の箇所に N を代入し，m の箇所に M + 1 を代入すると：()∃κ0 ∈ {0, ..., M + 1} ∀ j ∈ {0, ..., M + 1} |gN (κ0 ) − 1| ≥ |gN ( j) − 1| .

(3.104)

よって：
M+1
(
)
|x|k
式 (3.103) の第一項 ≤ |gN (κ0 ) − 1| ∑k=0 k!
knM+1
級数 exp(|x|) = ∑∞n=0 |x| /n! の収束性と定理 3.8.7 により ∑k=0 |x| /k! ≃ exp(|x|) であり，gN (κ0 ) − 1 ≃
0 なので

≃ 0.

(3.105)式 (3.96’) により：()
式 (3.103) の第二項 ≤|x|k
k=M+2 k!
N∑

3.9 まとめ89

補題 3.8.8 より≃ 0.

(3.106)

以上の評価 (3.105)(3.106) をまとめると次が得られる：

(
x )N
1+
≃ exp(x; M + 1).
N(3.107)

N, M + 1 は無限大自然数だから定理 3.8.1 より次が成り立つ：(
x )n (x )N
lim 1 +
≃ 1+
,
n→∞
n
N

exp(x) ≃ exp(x; M + 1).

式 (3.107) とこれらを合わせれば次を得る：(
x )nlim 1 +
≃ exp(x).
nn→∞両辺は実数だから上の式の ≃ は等号に置き換えられる．

(3.108)□3.9 まとめ「さて，超準解析について学んでみてどうだった？」「んー，確かに《無限小量》や《無限大量》は合理化されたってことになるんでしょうけど，自分で微積分のいろんな定理の証明を考えてみるとかの練習をしないと身につかないかなと思いました」「それはそうでしょうね」「あと，定理 3.8.10 の証明とかって途中で出てくる不等式評価の使い方がいかにも微積分ぽいというか……つまり超準解析だから全部すぱーっと行くわけじゃないんだなって」「超準解析は，通常の解析学で極限を通して捉えられるような対象を多少扱いやすくしてくれるだ
け．問題そのものが根本的に変質してしまうわけではない」
3.9.1 無限小量の不思議「超準解析では，もはや無限小量にはいかなる不合理性もないわけですよね」「そのとおり」「それでちょっと疑問が出てきたんです．ニュートンやライプニッツやオイラーの時代——つまり1960 年代よりずっと前——には無限小量のようなものを確実に扱う基盤がなかったのに，わりとしっかり微積分を展開できたのって不思議に思えませんか？」「憶測を交えていいなら説明できなくもない」「おねがいします」「数学に長けた人間の多くは，ある種の幾何学的直感を備えている．それでも，その人間が言葉で物事を説明しようとするならばその時代に使える《言葉》の枠の中に落とし込まねばならない．でも，もしその《言葉》が幾何学的直感を十全に表現するだけの記述力を持たなかったらどうなる？」「その《言葉》に合わせて歪んだ事を言っちゃうかもしれません」「ニュートンやライプニッツが扱った無限小量も，その時代に使用可能だった《言語》が未熟だったために矛盾した表現をもたざるを得なかったのかもしれない」「うーん，過去の人間の内面の話を検証する方法なんてないから，それが事実かどうかは知りようがないですね」「だからこの説明は根拠のない憶測に過ぎない」「でもまあ，そういうことなのかもしれません」

第 3 章 チルノのパーフェクト超準解析教室

90
3.9.2 超実数は本当に存在するか「次の疑問なんですが，超準解析で考えると，0 という実数の周りには無限小実数 α ∈ hal(0) がびっ
しり集まってますよね」「念のために聞くけど，その根拠は？」「命題 3.7.13(1) とかです」「それでよい．続けて」「でも，無限小量——つまり hal(0) の元——みたいな超実数って現実には存在しないですよね？」√「念のために確認したいんだけど，チルノは 2 や円周率 π みたいな実数なら現実に存在する——と考えているの？」「いやいや，あたいがどう考えるかに関係なく√
2 や π みたいな実数は，事実として現実に存在す

るんじゃないですか？」√「なるほど．じゃあ 2 や π は《どこ》に存在すると考えてるの？」「そりゃ身の回りのものは実数で測定できるんだし，いろんなところにありますよね．たとえば一√辺が 1 メートルの正方形を考えれば対角線の長さは 2 メートルだし，直径が 1 メートルの円を考えれば周の長さは π メートルです．針金をその円にぴったり巻き付けて丁度一周するように切ってから伸ばせば，ぴったし π メートルの針金が手に入ります」「例えばだけど，その《長さが π メートルの針金》だって無限の精度では実現できないのでは？」「無限の精度……ですか？ うーん，物体をどんどん拡大してくと原子がぽこぽこ並んでるところまで行くし，さらにそれ以下の精度を気にするなら確かに無理かもです」「ぴったり π メートルの針金が存在しないなら，では π という数字は《どこ》にある？」「あたいの頭のなか……ということですかね？」「つまりチルノの頭を開けるとそこに π という実数が入っている？」「そんなわけはなくて，えーと，私の頭の中の《心の世界》の中です」「つまり π という実数はチルノの頭の中の《観念》として存在してる」「なんかうまく丸め込まれてる気がします」「π という実数が観念でしかない，というのは極端すぎる？」「だってちょっと割り引いて——素粒子サイズ以下の精度とかいい出すと面倒ですから——《直径がほぼぴったり 1.0 メートルの円を丁度一周するような針金を伸ばして長さを測ったら π メートルにすごく近い》と言うことにすれば現実とすごく合いますから」「チルノがいま言ったように，実数という概念は現実を理解したり分析したりするための良い道具ね」「ほらそうじゃないですか！」「良い道具ではあるけれど，もっと別の，そしてもっと良い道具だってあるかもしれない」「それが超準解析だって言いたいんですか？」「そこまで主張するつもりはない．ただし，いままで見てきたように超実数は《実数の世界や現象》
をいくらか直観的に理解する手助けをしてくれる．その意味において良い道具の候補だし，実数と同じくらいには信頼できる．そう考えれば超実数は——少なくとも実数と同じ程度には——実在すると思ってよい」「あたいが知りたいのはそんなことじゃなくて《超実数は本当の本当に存在するか》ってことなんです」「形式的に存在することはすでに述べてきた．そしてそのような形式的な存在が実数についての議論を手助けしてくれることも見てきた．形式や思考様式を超えて，《生の現実》の中に超実数が存在するかというのがチルノの問いなら，それには答えられない．答えを知ってるけれど教えないとい3.10 エピローグ

91

うことではなく，そんな質問には誰も答えられない」「じゃあ《超実数が本当の本当に存在するか》ってのはわからないんですか」
こういうとチルノは声を詰まらせ，目に大粒の涙を浮かべた．その涙を指ですくい取って舐めてみたいという誘惑を押しのけつつこう言ってみた：「チルノの参考になるかわからないけど，ジョージ・バークリーは《esse is percipi》という言葉を残している」「……どういう意味ですか？」「《存在することは知覚されることである》」
チルノが首をかしげる．
「存在するなら知覚されるんじゃないですか？」「そうじゃなく，バークリーが言ってるのは《知覚されることは存在の根拠となる》ということ」√「そうなると 2 や円周率 π みたいなものは存在しないということですか？ だってこういう量は《観念》の中にしかないじゃないですか」「彼は観念も知覚の対象に入れている．だからバークリーの考えに従えば，チルノが超実数の観念を持っているならばそれは《チルノが知覚した世界》の中に確かに存在するということになる」「超実数は《あたいが知覚した世界》に存在する——？」
チルノはしばらくその言葉を反芻していたようだが，やがてこう言った：「——ジョージは意外と面白いやつなのかもしれませんね」

3.10

エピローグ

すべての話を終えた頃にはかなり遅い時間になってしまった．咲夜さんが差し入れてくれたお茶とサンドイッチを食べながら，チルノの今後の計画を聞いてみた．
「超準解析の番組は作れそう？」「まーここまで丁寧に教わっちゃいましたし，あとは前に出るだけッス！ ちなみにタイトルは『チルノのパーフェクト超準解析教室』にする予定です」
まあ好きにしてください．
「それにしても，テレビで人気者になりたいなら少しは化粧もしたほうがいい」
顔まで日焼けし，朝顔のつるを青いワンピースの上から巻き付け向日葵の花をコサージュ代わりにしたその姿はおしゃれとは程遠い．
「今度からやる番組ではあたいは生では出ませんよ．VTuber やるんです．アバターは今発注してるとこです．読み上げはボイスロイドにやらせます」
ブイチューバー？ ボイスロイド？ さっぱり言ってることがわからない．
「まーアリスさんはそのへんからですかね」
チルノはそう言うとカラカラ笑った．

3.11

あとがき

本記事は，筆者が Davis の本 [13] を勉強する上で湧いてきた不明点や疑問点を解消するために他の本を参照しながら作成していたノートを元にして書いたものです．参照した本は参考文献に掲げましたが，[15] [16] [22] は本記事の範囲を書くうえで特に参考になりました．
3.11.1

登場キャラクターおよび舞台について

本記事の執筆にあたり，上海アリス幻樂団様の東方 Project シリーズからキャラクターや舞台をお借りしました．素晴らしい作品を発表されている原作者様に敬意を表明いたします．それとともに，キャラクターおよび舞台の勝手な拝借および改変について寛恕くださいますよう平にお願い申第 3 章 チルノのパーフェクト超準解析教室

92
し上げます．
3.11.2定理 3.8.10 の証明について

この定理の《おおらかな証明》はオイラー自身の本 [23] に現れる議論を模倣したものです．定理の超準解析的な証明は本記事のために筆者が考案したものです．
3.11.3公理 (E1)-(E5) について

上部構造に基づく超準解析の議論は，[26] で創始されて以来中心的な重要性を持っています．この方法による超準解析の展開をする場合，超準宇宙の構成も行うのが通例です．とはいえ有界超冪(bounded ultrapower) による超準宇宙の構成の議論は，なかなか面倒です．しかしながら，超準解析を《使う》ことに集中するならばこれらの議論は全く不要とすら言えるものです．そこで，本記事では上部構造の議論によって得られる結果を公理化して超準解析を解説しました．本記事における公理 (E1)-(E5) は，[15] [16] [21] を参考にして本記事のために筆者が考案したものです．これらの公理が正当であることについての議論については，この記事ではすべて省略しました．
3.11.4

宇宙について《宇宙》という言葉の指す内容は文献によって異なるので注意が必要です．本記事での《宇宙》
は [14] のものに近いです．Davis [12] が《宇宙》( [13] では《域》という訳語が宛てられています)と呼んでいるものは本記事における《弱宇宙》に近いです．
上部構造の議論が [26] で創始されたときには《本物の》——つまり ZFC 集合論の外延性公理からは許容できない——原子の集合 S から出発して

S0 := S,

Sk+1 := Sk ∪ P(Sk ) (k ≥ 0),

U :=

∪

Sn .

n≥0

として《上部構造 (superstructure)》と呼ばれる宇宙が構成されていました．このような——つまりZFC 集合論では存在を許されない種類の——原子を用いた [26] の議論は，超準解析を扱った初期の本（たとえば [16] [12]）にそのまま受け継がれています．このような議論に接した人は「超準解析の議論は，厳密な意味では ZFC の枠内で行えないのではないか」という疑問を持つかも知れません．しかしながら，[18] の p.287 演習問題 4.4.1 や [19] の p.64 からの議論にあるような方法で《相対的な原子》を導入することでこの難点を回避することができます．《相対的な原子》を考慮した宇宙の公理化を扱った文献は，筆者が探した範囲では見つけることが出来ませんでした．本記事での《相対的な原子》を持つ上部構造の性
宇宙（3.3.2）は，[12] [14] [15] [16] [18] [19] を参考にしつつ，質をこの記事のために筆者が公理化したものです．
3.11.5

言語について論理式に関連する《自由変数》や《束縛変数》などの概念を明確に記述するために，Gallier [10]を参考にしました．また，Smullyan [9] のアイデアを取り入れて項や論理式を——《記号列》としてではなく——タプルとして定義しました．これにより，項や論理式の操作の記述が明確になったと思います．
3.11.6

ネルソンの IST(internal set theory, 内的集合論) との関係

e の持つ性質をネルソンの IST は，やや乱暴に言えば，本記事における《内的集合全体の集合》U公理化したものとみなせます（ [15], p.40）．形式的な面から言えば IST は ZFC にアリティ 1 の基本
述語 st() と三つの公理図式を追加したものになっています．ZFC 集合論がそうであるように，ISTのすべての対象は集合です．IST の述語 st() は，《集合が標準的であること》を抽象化したものです．たとえば，IST において R と呼ばれている集合は，本記事における ∗R に対応しています．ISTの立場では，外的集合は文字通り「理論の外側」にあることになります．したがって，《IST における外的集合》は実際には真クラスとなります．真クラスは論理式の別称と思うことができますか

参考文献

93

ら，真クラス同士の簡単な《集合演算》を考えることができます．しかしながら《真クラスの冪集合》のようなものは考えることができません．したがって，上部構造における議論のうち，外的集合の冪集合を用いた議論をそのまま IST に持ち込むことができません．

参考文献[1] 結城浩 『数学ガール』，ソフトバンク クリエイティブ (2007).
本記事の直接のネタ元ではありませんが，主人公「僕」が周囲の人間との対話を通して数学を学んでいくというスタイルには多大な影響を受けました．

[2] G. Berkeley, “The Analyst”(1734).
[3] 江田勝哉 『数理論理学 使い方と考え方：超準解析の入り口まで』，内田老鶴圃 (2010).
[4] 坪井明人 『数理論理学の基礎・基本』，牧野書店 (2012).
[5] E. Mendelson, “Introduction to Mathematical Logic”(6th ed.), CRC Press (2015).
[6] エビングハウス他 『数 (上)』，丸善出版[7] 島内剛一 『数学の基礎』，日本評論社 (1971).
[8] V. Benci, M. Di Nasso, M. Forti, “The Eightfold Path to Nonstandard Analysis”, in Nonstandard
Methods And Applications in Methematics, Association for Symbolic Logic, (2006).
[9] R. Smullyan, “First-Order Logic”, Springer-Verlag (1968).
[10] J. H. Gallier, “Logic for Computer Science (2nd ed.)”, Dover (2015).
[11] P. B. Andrews, “An Introduction to Mathematical Logic and Type Theory : to Truth through Proof”,
Academic Press(1986).
(邦訳) 小川原倫子（訳）『数理論理学とタイプ理論』，丸善出版 (1987).
論理に関する箇所の執筆に際して上記三冊の本を参考にしました．

[12] M. Davis,“Applied Nonstandard Analysis”, John Wiley & Sons, Inc., (1977).
[13] M. デービス 『超準解析』 難波莞爾（訳），培風館 (1982). これは [12] の邦訳です．
残念ながら [13] は 2018 年現在品切れですが，原書 [12] は Dover から再販されています．

[14] 斉藤正彦 『超積と超準解析 ノンスタンダード・アナリシス』，東京図書 (1976, 増補新版 1987).
[15] M. Väth,“Nonstandard Analysis”, Birkhäuser, (2007).
[16] K. D. Stroyan and W. A. J. Luxemburg, “Introduction to the Theory of Infinitesimals”, Academic
Press.(1976)[17] J. S. Pinto,“Infinitesimal Methods for Mathematical Analysis”, Horwood, (2004).
[18] C. C. Chang and H. J. Keisler, “Model Theory” 3rd ed., North-Holland., (1990).
[19] P. Loeb and M. P. H. Wolff (eds), “Nonstandard Analysis for the Working Mathematician” 2nd ed.,Springer., (2015).
[20] F. Diener and M. Diener (eds), “Nonstandard Analysis in Practice”, Springer., (1991).
[21] 竹内外史 『無限小解析と物理学』，遊星社 (1985, 第二版 2001).
[22] 中村徹 『超準解析と物理学』，日本評論社 (1998, 増補改訂版 2017).
[23] L. Euler, “Introductio in Analysin Infinitorum”,(1748).
(邦訳) レオンハルト・オイラー『オイラーの無限解析』 高瀬正仁（訳），海鳴社 (2001).
[24] 能海正俊 『オイラーに学ぶ』 日本評論社 (2007).
[25] A. Robinson,“Non-standard Analysis”, North-Holland(1974).
[26] A. Robinson and E. Zakon, “A set-theoretical characterization of enlargements”, in W. A. J. Luxemburg(ed) “Applications of Model Theory to Algebra Analysis and Probability”, (1969).

[27] 前原昭二 『記号論理入門』，日本評論社 (1967).
[28] 本橋信義 『新しい論理序説』，朝倉書店 (1997).
本記事は，読者が「自然言語と一体化した述語論理」とでも言うべきものを身につけていることを前提としています．記号で書かれた文章が苦手な方は上記二書のような本で学ぶとよいかもしれません．

[29] 永田雅宜 『可換体論』，裳華房 (1967, 新版 1985).
[30] 岩堀長慶 『微分積分学』，裳華房 (1983).
[31] G. Berkeley, “Three Dialogues Between Hylas and Philonous”(1713).
(邦訳) バークリー 『ハイラスとフィロナスの三つの対話』 戸田剛文 (訳)， 岩波書店 (2008).
[32] 冨田恭彦 『観念論の教室』，筑摩書房 (2015).

参考文献

95

正誤表
C94 初版に何箇所か誤りがありました．お詫びするとともに以下のように訂正いたします．
3.3 節
p.31

誤

(U1)

S ⊆ U.

定義 3.3.2

正(U1)

S ∈ U.

p.31

誤条件 (U1) は，いかなる原子も宇宙 U に属する事を述べている．

定義 3.3.2 の下正

条件 (U1) は，原子たちの集合 S が宇宙 U に属する事を述べている．

p.33

誤

(W1)

S ⊆ W.

定義 3.3.3

正(W1)

S ∈ W.
3.5 節
j[S] (= { j(s) s ∈ S}) = G.

p.51

誤

(E2)

定義 3.3.3

正

(E2)

p.52

誤

宇宙 U についての (U1) より S ⊆ U なので G = j[S]. 命題 3.5.1 より
e なので結局 G ⊆ U.
ej[S] ⊆ j[U] ⊆ U(W1) の証明

正

宇宙 U についての (U1) より S ∈ U なので G = j(S) ∈ j[U]. 命題 3.5.1 よe なので結局 G ∈ U.
e
り j[U] ⊆ U

p.52

誤

いま，仮に ∅ ∈ G であったとすると j(∅) = ∅ ∈ G = j[S] と j の単射性に(W2) の証明

正

p.53

誤

j(S) = G.

より ∅ ∈ S でなければならないがこれは (U2) に反する．よって ∅ < G.
宇宙 W についての条件 (U2) より ∅ < G.

(E1)(E2) により，写像 j によって実体は実体にしか移らないから a, b ∈U − S である．

(W5) の証明

正

さて，任意の x ∈ S に対して U |= ⟨ ∈ , x, S⟩ なので (E4) により W |=⟨ ∈ , j(x), j(S)⟩ となる．これと (E2) を合わせると j(x) ∈ j(S) = G が得られる．よって：∀x ∈ U (x ∈ S =⇒ j(x) ∈ G) .
対偶を取れば：∀x ∈ U ( j(x) ∈ W − G =⇒ x ∈ U − S) .
これを a, b に適用することにより a, b ∈ U − S となる．

p.54

誤

「それから，S と G を同一視する．言い換えれば，宇宙 U と W の，原子からなる集合は共通だということ」

会話

正「それから，a ∈ S と j(a) ∈ G を同一視する」

p.55

誤

(E2’)

σ

S = G.

∗

定理 3.5.7

正

(E2’)

p.64

誤

ページ中段

正

p.64

誤

⇐⇒ U |= ⟨ = , b, ⟨ ap , f , x⟩⟩ .
⇐⇒ U |= ⟨ = , y, ⟨ ap , f , x⟩⟩ .
⇐⇒ W |= ⟨ = , b, ⟨ ap , ∗ f , x⟩⟩ .

ページ中段

正

⇐⇒ W |= ⟨ = , y, ⟨ ap , ∗ f , x⟩⟩ .

S = G.

エピローグ

p.91

誤

「まーここまで丁寧に教わっちゃいましたし，あとは前に出るだけッ
ス！

会話

正

「まーここまで丁寧に教わっちゃいましたし，あとは前に出るだけッス！
ちなみにタイトルは『チルノのパーフェクト超準解析教室』にする予定です」

会員名簿じゃなイカ?
@xhl kogitsune (1 章)
映画を見て、括弧の対応が取れる六花ちゃんかわいいという一念だけで書いてしまった。六花ちゃんにたくさん括弧括弧閉じ言ってもらえたので満足です。

@public ai000ya (2 章)にこちゃんの対象 A は A だからこそ、にこちゃんのその魅力に繋がってると思うんですよ。

@dif engine (3 章)
たまにはアリチルもいいよね……。

(S(KS)K)(S(S(KS)K)I)))(S(S(KS)K)(S(S(KS)K)I(S(S(KS)K)(M(S(S(KS)K)I)))))) .
(S

かんやく

らむだ か むすめ

「簡約！？ λ カ 娘 11」2018 年 8 月 10 日 コミックマーケット 94 初版発行

原作：安部真弘「侵略！ イカ娘」より
発行：参照透明な海を守る会

https://ikmsm.pastillage-research.org/ikmsm/
ikmsm-authors@googlegroups.com
著者：@xhl kogitsune, @public ai000ya, @dif engine
表紙：@dif engine
印刷：丸正インキ有限会社 様 http://www.marusho-ink.co.jp/K)I))))))).S(S(KS)K)(S(K(M(S(S(KS)K)I)))(S(S(KS)K)(S(S(KS)K)I(M(S(S(KS)K)S). S(S(KS)K)(S(S(KS)K)(S(S(KS)K)(S(K(M(S(S(KS)K)I)))(S(S(KS)K)(S(S(KS)K)I(M(S(S(KI))))).S(S(KS)K)(S(S(KS)K)(M(S(S(KS)K)I)(S(S(KS)K)(S(S(KS)K)I)))).S(S(KS)K)(S(K