量化子 Quantifier


|| 量を扱うための形式的な表現

概要は『述語論理』をどうぞ。

ざっと言うと「量を指定する表現」のことですね。

スポンサーリンク





目次


量化子と数学の関係「なんで真偽が判定できるのか」



全称量化子「条件を満たすもの全てを表す」

存在量化子「条件を満たすものが存在することを表す」



・量化子についていろいろ







真偽と量化子


さて、そもそもの話ですが、なんでこれ数学で扱えるんでしょう?

疑問ですよね。どうやって「真偽の判定」を行うのやら。




「全て」も「ほとんど」も「存在する」も、

あくまで『人間の作った言語』です。

最初から数学的に扱えると分かって作られたものではありません。




なのに、数学的に扱える。

どうしてなんでしょう? 不思議ですよね。

というわけで、その理由について考えてみましょうか。






命題記号との関連


というわけで「真偽を確定」させてみましょう。

そのために、まずは『意味』について考えてみます。




まず、量化について語る前に、以下のような文を見てみます。

1 は自然数だよ」「 2 は自然数だよ 」…「 k は自然数だよ 」…



見て分かる通り、なんか非効率です。

それに、間にある「…」に、ちょっと誤魔化されてる感じがします。




ともあれ、見やすいように「~は自然数だよ」を「 A 」として、

「 ~ 」の部分を「 x 」と、雑に置き換えてみると、



上の文を「 A(x) 」と省略できちゃいます。(なんでも良いです)

(これはざっくりとした命題の作り方になります)




さて、というわけで『意味』の『解釈』を行っていきましょうか。

上の文を繋げると、

「全部の x 」が「 A を満たしてる」のが分かります。



これを和訳すると、

1 は自然数であり 」かつ「 2 は自然数であり」かつ …

と『解釈』するのが自然です。

(どれもそうなんで)




というわけで、この文に「命題記号」を対応させてみましょうか。

すると「 A(1)∧A(2)∧…∧A(x)∧… 」と書けます。

( ~であり かつ ~であり かつ …)

(↑こいつが正しいのは全部正しい時だけ)






はい、というわけでここで一区切り。



どうやら「 A(1)∧A(2)∧…∧A(x)∧… 」と、

「全ての x は、A を満たします」は、

同じものだと『解釈』するのが、なんか自然なようです。






はい、とにかく『意味』はこんな感じです。

普通に、直観的に理解できると思います。



というわけで、さっそく「全称量化」について見ていきましょうか。

もっと詳しく、使い方から使われ方からなにからなにまで。

(真偽についてもまだですし)







全称量化子 All,Any


|| 全ての~は条件を満たす、の形式的な表現

形式としての「記号」とその「意味」を確認します。




記号



( All,Any の A をひっくり返してる )




意味


条件(命題)を P

なんか(変数)を x として、



∀x\,P(x) 」の意味は、

全ての x が、条件 P(x) を満たす。




形式的な英語訳だと、

\mathrm{For \,any} \,x, \,P(x)」もしくは「 P(x), \,\mathrm{for \,any} \,x

Any じゃなく All の方が主流なのかな?「 \mathrm{For \,all} \,x, \,P(x) 」とも。






具体的な話


「量化」された『命題』の作り方を見ていきます。

とりあえずざっと見てみましょう。




まず『なんか』があります。なんでもいいです。

とりあえず「あんぎゃー!」とでもしておきましょうか。

このようなものをいくつか用意して「 x 」とします。



次に、なんらかの『文』を用意します。

これに関しては、上のに合わせて「~は文字ですよ」としましょう。

これを条件として「 Char 」という別の言い方をします。




はい、というわけで「個体 x 」と「命題 Char 」が完成。

そしてこの二つを使って「正しい文」を作ると、




論理式は「 ∀x\,Char(x) 」となります。

そしてその意味は「 x は、全て文字ですよ」です。




なぜなら「あんぎゃー!は文字であり かつ ぐわーは文字であり …」

なので「全ての x は文字」でなければ、正しくはなりません。




これの正しさを決める順番は、

「同じ条件を持つ個体が複数ある」→「正しい文だけ抜き出す」

→「それらをたくさん集める」→「量化子でひとまとめにする」です。



「量化子」はあくまで『正しいものを一纏めにしている』だけで、

「真偽の決定」は、あくまで命題の解釈に依存してます。






厳密な定義


x 」を「 命題 P 」を満たす「個体(変数)」としましょう。

その「 x 」の『集合』を、大文字で「 X 」としておきます。






補足

x∈X 」の意味は、「 xX に属する」

例えば「 x 」が「 1 から 100 まで」なら、

X 」の中身は「 1,2,3,…,100 」になる。




このとき、

∀x \,P(x) 」は、

\displaystyle\bigwedge_{x∈X}P(x)

と定義されます。




「左のが、右のように定義されてるよ」を示す記号「 := 」を使うと、

\displaystyle∀x \,P(x) \,:= \,\bigwedge_{x∈X}P(x)

と書けます。






補足

X 」が「 1 から 10 まで」なら、

\displaystyle\bigwedge_{x∈X}P(x)=P(1)∧P(2)∧…∧P(10)

という意味



これは「 X 」が『無限集合』でもOK。

というかそのためにこういう表現を使ってます。






存在量化子 Exist


|| 条件を満たすような~は存在する、の形式的な表現

定義のされ方は「全称量化」とほとんど同じ。




・記号



(Exist の E を反転させてる)




・意味


∃x\,P(x) 」の意味は、

P(x) を満たす x が存在する。




形式的な訳(英語)だと、

\mathrm{There \,exists} \,x \mathrm{\,such \,that} \,P(x)






具体的な話


全称量化と似たようなことをしましょう。




まず『なんか』を「 x 」として、

中身の一つを、正しいっぽい「人は全てを覚えられない」

もいっこ変なのを「人はなんでもできる」とします。(なんでもいい)




『文』を「~は正しい(直観頼り)」としましょう。

そんでまあ、さっきのように「 T 」と置きます。




これで「個体(変数)」(仮)と「命題」が完成しました。

というわけで、さっそく「存在量化」にご登場を願います。



すると、論理式(仮)は「 ∃x\,T(x) 」とできます。

意味は「 T を満たす x が存在しますよ 」です。




「全称量化」と違って「存在量化」の『意味』は、

「~が存在する」もしくは「~がある」ことなので、



「 ~でーす もしくは ~でーす もしくは ~でーす …」のように、

その中に「条件」に合うものが、

『一個でもあれば』その「文」は正しくなります。




比較すると、

「全称量化」が『正しい全てのもの』を表すなら、

「存在量化」は『正しいものが、少なくとも一つはある』を表します。



なので、たくさんある内の、どれかが合ってればいいわけです。






厳密な定義


こうです。

前提は全称量化のやつと同じとして、

\displaystyle∃x \,P(x) \,:=\, \bigvee_{x∈X}P(x)






「全称量化」との違いは、主に「 X 」です。

なんとなく分かると思いますが、確認してみましょう。




「全称量化」では、

X 」には「条件 P(x) 」を満たすものしか入ってません。



「存在量化」では、

「条件 P(x) 」を満たすものだけとは限りません。




確実なのは、

「条件 P(x) 」を満たす「 x 」が、

X 」に「確実に 1 つは」入っていることだけです。








要点


この「量化」についてですが、以下のことは確実に押さえましょう。



全称では「全てが正しい」ということを主張しています。

存在では「それが在る」ことを主張しています。




これらは「断定」ですので『こうだ!』と言ってるわけです。

なので「量化」されたものは「真」でなくちゃいけません。

「全部正しい(確定)存在する(確定)なので」




そんなわけなので「量化」された論理式の、

その「具体的なもの」を挙げるとすると、



「全称量化」なら「正しい(条件を満たす)ものの集合」になって、

「存在量化」であっても「正しいものの集合」になります。



ここは同じなんです。

(両方 X⊇S=\{\,x∈X\,|\,P(x)\,\})(集合論






「全称」と「存在」の違い


この二つは、当然「意味」は異なるわけですが、

他にも「正しいもの」の『選び方』が異なります。




「全称量化」では、全てが正しいです。

なので、漠然とした広がりから「正しいものだけ」を選んで、

それらを「正しいものの集合」として扱います。




これに対して「存在量化」では、在ることが確定しています。

漠然とした広がりの中に「正しいものがある」と言ってるわけです。

ですから、そのまま漠然とした広がりを扱えます。






全称では「正しいものだけとなるように、集合を限定」していますが、

存在では「正しいものがあれば、集合に手を加えない」わけです。




全称だと「個体(変数)の集合」に穴が無い

存在だと「個体(変数)の集合」に穴だらけ

と自分は認識しています。




堅い言い方をするなら、

「全称量化」は「条件(命題)」の内側しかない。

「存在量化」は「条件(命題)」の外側がある 。

としても良いでしょう。






具体例


「自然数」と「整数」を使って比較してみましょう。

たぶんそれが一番わかりやすいので。




命題「 N(x) 」を、「 x は自然数 1,2,3,4,5,... だ」

命題「 Z(x) 」を、「 x は整数 0,1,2,...-1,-2,... だ」

としましょうか。




そしてここが重要になるのですが「 x 」の範囲を決めます。

x∈N 」と「 x∈Z 」の二通りとしましょう。




というわけで、

∀x∈N\,N(x) 」と「 ∃x∈N\,N(x) 」を見ます。

どっちも正しいです。



それでいて、この条件満たす「 x 」は、

両方、自然数のことを指してます。




しかし、

∀x∈Z\,N(x) 」と「 ∃x∈Z\,N(x) 」を見ると、

左の文だけがおかしいです。




なぜなら「全ての整数」は「自然数である」条件を満たしません。

-1,-2 」などは「自然数ではない」ですから。



しかし「 自然数である整数」は「存在します」

なぜなら「自然数」のどの値も「整数」ですから。

1 は自然数であり、整数でもある )




簡単なものだと、こういう違いがあるわけですね。






といっても、普通は上のような式は作られません。

なぜなら「真となるもの」だけを集めて宣言するので、

「偽と分かる」ものと「真偽が不明」なものは入りませんから。




感覚的には「帰納的定義」に近いです。(全称のこと)

既にあるサンプルから、全体を正しいと言うわけですから。






量化子の性質」は別記事にて。

「二つの記号の関係」だとか「 ∀x\,∃y\,P(x) 」みたいなのとか。