第18話 束縛変数
「今何時?」
湾が聞く。
「1時半。明日は何も無いんだよね?」
「うん」
「じゃあゆっくり寝れるね。半日動いてたし、頭も使ったし疲れてるでしょ」
「でも、仕事もうまく行きそうだし、論理式も楽しかったし、いい一日だったよ。ありがとう」
「それは良かった…おやすみ」
「おやすみ」
電気が消えて暗闇になると、湾の目前には目に焼き付いた論理式が映っている。
耳元に残る藍の声。
今夜の話、分かったようで分からなかったところがあった気がする、なんだっけ?
胸元に藍の手の重みを感じる。
∑、本当にわかっていただろうか?
藍の寝息が耳元をくすぐる。
…ただの記号。∑の中で使われている記号で、∑の束縛変数って言ったりする。∑のなかで完結している記号だから、∑の外から定義する必要はない…
言いたいことはなんとなくわかる。しかしモヤモヤする。
∑の中で使われていたkを、∑の外で使ったら何が起きるんだろうか?それとも使ってはいけないのだろうか?
考えてみようか。
具体例…
シグマ、kは0から3、kの二乗、それからこのシグマをカッコで囲って足すことのk。
ええと…、だめだ、覚えてられない。
紙と鉛筆があれはなあ…
あれ、なんか目が冴えてくるな。えっと、もうちょっと簡単な例でっと。
…何考えてるの…
藍のささやき声が聞こえる。
何考えてるんだっけ。
そう、シグマの束縛変数、束縛ってなんだ?何が何を束縛してるんだろう?
「ねえ?」
ふと藍の声が本当に囁いていた声だとわかる。
「束縛変数ってなんだろうって…」
「そんなことは明日の朝考えよう。ね」
………
………
………
空が白みはじめた。
「ん…」
藍が寝返りを打つ。
「おはよう」
「もう朝?」
「今は…6 時くらいかな」
「早いよ…もうちょっと寝よう」
「うん、寝てていいよ」
「寝れた?」
「いや、あんまり」
「そっか」
「眼が冴えちゃてて」
「今日予定無いんでしょ、ゆっくりしよう」
「うん」
………
………
………
「今何時?」
藍が聞く。
「10時くらいだと思うよ」
「だいぶ寝たね。そろそろ起きようか。湾は寝られた?」
「すこしうとうとしてた」
「束縛変数だっけ」
「うん、よくわからない」
「説明する」
むっくり起き上がって、ノートと鉛筆を持ってきてベッドに戻った。
うつ伏せで横に並んで束縛変数の話が始まる。
「束縛変数は、全て"∀"と存在"∃"のときだけ現れる。そして、文法を思い出そう」
xが任意の変数記号、Aが論理式なら、
∀x(A)
∃x(A)
は論理式になる。
「さて、実は何気なく書いたAだけど、ここはxを使った式が入ることを想定している。そして、Aのなかに出てくる変数記号xのことを束縛変数という。注意が必要で、この全てとか存在とかのカッコの外は束縛変数ではない」
「"全てのxの"のxは束縛変数なの?」
「それも束縛変数だ。今から次のカッコの中のxは束縛変数ですよ、という宣言のようなものだけどね」
「なるほど。何か例がほしい」
「例えばこういうのを思い出そう」
∀x(x∉0)
「覚えてる?」
「うん、0の定義だったね」
「そう。まあ空集合の定義でもあるけど。ここのxは束縛変数だ」
「なるほど。わかりやすい」
「じゃあ、次の論理式のどれが束縛変数だろう?」
∀ε>0,∃N∈ℕ,∀m∈ℕ(m>N→|r-aₘ|<ε)
「えっと、"全て"と"存在"の後にある文字が束縛変数なんだよね」
「その通り」
「じゃあ、ε、N、mの三つだね」
「その通りだ。ではこの式ではどうだろう?」
∀x(x∈A↔(∀y(y∉x)∨(∀z(z∈x↔∀w(w∉z)))))
「これは複雑すぎるのでは…」
「複雑なら意味を考える気持ちがそがれるので、逆に考えやすくて良い」
「ちょっと待ってね、とりあえず、はじめのxは束縛変数だね」
「どこまで?」
「どこまで…とは?」
「束縛変数をもう一回しっかり書いて確認しよう」
束縛変数とは、
∀x(A)
あるいは
∃x(A)
の式の中にある変数記号xである。
「簡単に言えば」
∀x(A)∨∀y(B)
「という式の中に出てくるBの中のxは束縛変数ではないし、Aのなかのyも束縛変数ではない」
「なるほど、式の位置によって束縛変数かどうかが変わるのか」
「まあ普通は、どこかで束縛した変数を、他の場所で使うことは少ないけれど、こういうパターンならまだあり得る」
∀x(A)∨∀x(B)
「これは、Aのなかの束縛変数もxだし、Bのなかの束縛変数もxだが、別々に束縛している」
「これは例作れる?」
「うん。6の倍数なら2の倍数かつ3の倍数」
∀x∈ℕ(∃m∈ℕ(x=6m)↔(∃m∈ℕ(x=2m)∧∃m∈ℕ(x=3m)))
「長い…」
「これは下の式とまったく同じになる」
∀x∈ℕ(∃m∈ℕ(x=6m)↔(∃s∈ℕ(x=2s)∧∃t∈ℕ(x=3t)))
「違いわかる?」
「確認するね」
湾は注意深く確認する。
「わかった、上のmがsになったりtになったりしてる」
「そう。上の式のmの束縛範囲の間で、mを別の文字に変えても何の問題もない。ただし、同じ束縛範囲にある文字は同じ文字に変えなければいけない」
「なるほど。例えば上の式のxをyに変えたかったら、」
∀y∈ℕ(∃m∈ℕ(y=6m)↔(∃m∈ℕ(y=2m)∧∃m∈ℕ(y=3m)))
「こうやって全部変えなきゃいけないってことだね」
「そういうこと。今書いてくれた式のyを束縛しているカッコを角カッコにしてみよう」
∀y∈ℕ[∃m∈ℕ(y=6m)↔(∃m∈ℕ(y=2m)∧∃m∈ℕ(y=3m))]
「こうしてみると、カッコは束縛範囲を表しているという意味もあることがわかるね。では話を戻そう」
∀x(x∈A↔(∀y(y∉x)∨(∀z(z∈x↔∀w(w∉z)))))
「この式の束縛変数とその束縛範囲はどうなっている?」
湾は黙ってカッコの数を数え始める。
「わかった、こうだ。束縛範囲を大きい角カッコでくくってみる」
束縛変数xの束縛範囲
∀x[x∈A↔(∀y(y∉x)∨(∀z(z∈x↔∀w(w∉z))))]
束縛変数yの束縛範囲
∀x(x∈A↔(∀y[y∉x]∨(∀z(z∈x↔∀w(w∉z)))))
束縛変数zの束縛範囲
∀x(x∈A↔(∀y(y∉x)∨(∀z[z∈x↔∀w(w∉z)])))
束縛変数wの束縛範囲
∀x(x∈A↔(∀y(y∉x)∨(∀z(z∈x↔∀w[w∉z]))))
「そういうこと」
「これって、束縛範囲のなかに別の束縛変数が出てくることあるけど、さすがにこれは同じ文字にはできないよね」
「うん。たとえば、全部xにしてしまったら」
∀x(x∈A↔(∀x(x∉x)∨(∀x(x∈x↔∀x(x∉x)))))
「これでは意味がわからない」
「オーケー」
「なお、束縛されていない変数のことを自由変数という。たとえば上の式のAは自由変数だ」
「なるほど」
「さて、ここからが面白いんだけど、自由変数だけを取り出して、論理式を省略することがある。通常記号はファイ"φ"を使う」
φ(A):↔
∀x(x∈A↔(∀y(y∉x)∨(∀z(z∈x↔∀w(w∉z)))))
「お、お?」
「たとえばε-N論法の自由変数はrだから、このrに注目して」
φ(r):↔
∀ε>0,∃N∈ℕ,∀m∈ℕ(m>N→|r-aₘ|<ε)
「こう書いたりできる」
「あれ?ℕは自由変数じゃないの?」
「実は∀N∈ℕ(…)という文は、とある…長い…論理式の省略形であって、ここに自由変数はないんだ」
「よくわからないけど、とりあえずℕは自由変数扱いにしないってことね」
「うん。それからaₘは、数列が定義されていれば、mという自由変数ひとつを用いた…とても長い…論理式の省略なので、ここには自由変数mがひとつだけある。ただし、その外から束縛されているので結果的に全体の式の中では束縛変数になっている」
「なるほど、局部的に見ると自由変数だけど、大きくみると束縛変数にもなるってことね」
「そう。例えば以前湾が書いてくれたこの式」
∃r∈ℝ,∀ε>0,∃N∈ℕ,∀m∈ℕ(m>N→|r-aₘ|<ε)
「これは数列が定義されていれば、自由変数が一つもない式だ」
「ああ、ほんとだ。ちょっと確認なんだけど」
「なに?」
「この式はこう書いていいの?」
∃r∈ℝ(φ(r))
「上で定義したφならオーケー」
「わかったよ!これは理解した感じがする。そして、この式には自由変数が一つもないんだね」
「その通り。ではもう二つだけ、用語を教えよう」
「何?」
「自由変数を一つも含まない論理式を"命題"、自由変数を一つ以上含む論理式を"述語"という」
「命題、懐かしい響き。たしか、真か偽かどちらかに定まるもの、だっけ」
「そう。だから、自由変数を一つも含まない論理式は真偽が定まる」
「述語は?」
「述語は、自由変数をどのようにするかで真偽が変わる。例えば」
φ(x):↔
xは偶数
「としたら、xが1なら偽、2なら真だ。例えば、この述語にx=1を代入した式を考えよう。こうだ」
∀x(x=1→φ(x))
「これは偽だね」
「そうだけど、それよりはどのように自由変数を消しているか、ということのほうが大事だけどね」
「うん、わかった。自由変数が二つある式も省略できるの?」
「もちろん。こんな感じで書く」
φ(x,y)
「なるほど」
「それにしても湾は良いね」
「何が?」
「これでペアノ算術の準備が整った。早速!」
「え、ちょっとまだ寝巻だよ」
「歯を磨こう」
「そうだね」
藍は朝食の前後に必ず歯磨きをする。
新規登録で充実の読書を
- マイページ
- 読書の状況から作品を自動で分類して簡単に管理できる
- 小説の未読話数がひと目でわかり前回の続きから読める
- フォローしたユーザーの活動を追える
- 通知
- 小説の更新や作者の新作の情報を受け取れる
- 閲覧履歴
- 以前読んだ小説が一覧で見つけやすい
アカウントをお持ちの方はログイン
ビューワー設定
文字サイズ
背景色
フォント
組み方向
機能をオンにすると、画面の下部をタップする度に自動的にスクロールして読み進められます。
応援すると応援コメントも書けます