数学をするための基本事項 ~変数が多めの条件~

これまで条件について解説してきましたが,主に1変数について扱っていました.数学をしていると変数が2個や3個ある条件もよく出てきます.そしてその条件に「すべての~(\forall)」や「~存在する(\exist)」をつけることにより,1変数のときと同じように命題を作ることができます.

次の記事の続きです:

2変数の条件と量化子

命題の作り方と証明の方法

例えば次のような2変数x,yの条件p(x,y)を考えます:

x + y = 0である.」

1変数のときと同じように「すべての~(\forall)」や「~存在する(\exist)」をつけることを考えたいわけですが,この場合2変数あります.なのでつけ方にはより多くのバリエーションが生まれます.例えば次のようなものが考えられます:

「すべての実数xに対して x + y = 0である.」

注意しないといけないのはこれはyの条件となっているということです.xの条件ではなくて,y単体の条件です.なぜなら,例えばy=1を代入すると次のようになります:

「すべての実数xに対して x + 1 = 0である.」

記号で書けば

\forall x(p(x,y))

となります.

これは1変数の条件「x + 1 = 0である.」に「すべての~」をつけた形ですから,命題です.つまり,yに何かしら代入することで命題となる文なので,yの条件なわけです.「すべてのxに対して~」という文言があるため,xに具体的な数などを代入するという操作はできないので,xの条件ではなくなっています.このように「すべてのxに対して~」をつければ,y単体の条件を作ることができます.ですから

「すべての実数yに対して x + y = 0である.」

という文はxについての条件となります.

「~が存在する」も全く同じです.例えば

「ある実数xx + y = 0を満たすものが存在する.」

という文はyに何かを代入すると命題になるので,yの条件となります.

話を戻して条件p(x,y)

x + y = 0である.」

から始めて,yの条件

「すべての実数xに対して x + y = 0である.」

を作ったとします.これはyの条件ですから,さらに「すべてのyに対して~」という文言を付け加えることができます.変数yが動く範囲を実数だとすると次のようになります:

「すべての実数yに対して,すべての実数xに対して x + y = 0である.」

これだと少し読みづらいので,もう少し日本語を整えて

「すべての実数yとすべての実数xに対して x + y = 0である.」

とできます.記号で書けば

\forall y\forall x(p(x,y))

となります.

これはもはや条件ではなくて,命題です.なので真偽を確かめることができます.実際この命題はそこまで難しくなくて,x=y=1x+y=1に代入すれば,1+1=1という偽の命題が現れるので,偽の命題となります.

もちろん「~存在する」をつけて

「ある実数yで,すべての実数xに対して x + y = 0を満たすものが存在する.」

というものを考えることもできます.ここら辺からだんだんややこしくなってきます.この文を記号で書けば次のように書けます:

\exist y\forall x(p(x,y))

この命題の真偽を考えてみましょう.そのためにきちんとこの文章が言っていることを理解しなければなりません.ごちゃごちゃしてきたので一旦簡単なところから考えていきます.まず\forall x(p(x,y))yの条件だったので,これをq(y)と書くことにします.そうすると上の命題は次のように述べることができます:

「ある実数yq(y)を満たすものが存在する.」

こうすれば少し構造が見やすくなったのではないでしょうか?この命題が真であることを言いたければ,q(y)を真とするような実数yを見つけてくればいいわけです.例えばy=1としてみてq(1)は真となるかを見てみましょう.q(1)とは\forall x(p(x,1))なので,次のような命題です:

「すべての実数xに対して x + 1 = 0

これは偽の命題です。なぜならx=0x + 1 = 0に代入すれば,0+1=0となり偽となるからです.つまり,q(1)は偽であることが分かります.それではq(2)はどうでしょうか.これは

「すべての実数xに対して x + 2 = 0

となりますが,これもq(1)のときと同じようにして偽の命題となることが分かります.ここまでで分かると思いますが,どのような実数yを取ってきたとしてもq(y)は成り立ちません.つまりこの命題は偽となります.そのことを証明しましょう.

そのためには否定した命題が真であることを示せばよいのです.\exist y(q(y))を否定すると\forall y(\neg q(y))となります.つまり

「すべての実数yに対して\neg q(y)が成り立つ.」

となります.これは全称命題なので,yを実数として取ってきます(数学をするための基本事項 ~証明の流れ~を参照してください.).このとき\neg q(y)が真であることを示せば,上の全称命題が示されたことになります.\neg q(y)を具体的に書きだすと次のようになります:

「ある実数xに対して x + y \neq 0が成り立つ.」

これは存在命題ですから,x+y\neq 0を満たすようなxを具体的に見つけてくれば示せたことになります.そのxとしては-y+1を持ってくればよいのです.そのときx+y=(-y+1)+y=1ですから,上の命題は真であることが分かります.よって,元の全称命題

「すべての実数yに対して\neg q(y)が成り立つ.」

が真であることが分かります.これより

「ある実数yq(y)を満たすものが存在する.」

が偽であることが分かりました.

結構丁寧にやってみたので,長くなってしまったのですが,このように量化子が複数ある場合は外側から順に全称命題,または存在命題の証明の方法を適用していきます.

例1

次の命題の真偽を考える:

「すべての実数xに対して,ある実数yx+y=0を満たすようなものが存在する.」

これが真の命題であることを証明する.まずxを実数とする.このときy=-xとすればx+y=0が満たされるから,上の命題は真である.

例1を詳しく見ると,例えばx=1のときはy=-1として取ればよい,ということを証明では述べています.どんなxに対しても上の証明のとおりにyを見つけてくればx+y=0は満たされるということです.

量化子の順序について

p(x,y)x,yに関する条件とします.次の2つの命題はまったく同じものになります.

\begin{gather*}\forall x \forall y(p(x,y))\\ \forall y \forall x(p(x,y)). \end{gather*}

次の2つの命題も全く同じものになります:

\begin{gather*}\exist x \exist y(p(x,y))\\ \exist y \exist x(p(x,y)). \end{gather*}

つまり,「すべての~」が2個続いている場合や「~存在する」が2個続いている場合は,その順序を気にする必要がありません.

注意点としては次の命題は異なる命題です:

\begin{gather*}\forall x\exist y(p(x,y))\\ \exist y\forall x(p(x,y)). \end{gather*}

そのことは上の例で確認することができます.p(x,y)

x+y=0である.」

としたとき,\forall x\exist y(p(x,y))は例1で述べたように真の命題となりますが,\exist y\forall x(p(x,y))は偽の命題でした.これらの違いを見ておきましょう.

\forall x\exist y(p(x,y))という命題を証明するには,まずxを任意に取ってきてから,yを見つけてきます.yの存在を示すときには,xはすでに何かしらの性質を備えたものとして考えているので,このxを使ってyを具体的に見つけてきてもよいのです.つまり,yxに依存して取ってきてもよいのです.そのような視点で例1を見返してみると,確かにy=-xとして,yxに依存しています.

一方\exist y\forall x(p(x,y))という命題では,\forall x(p(x,y))というyの条件を満たすようなyを見つけてこないといけません.この場合,yxに依存してはいけません.次の命題の証明を思い返してみましょう.

「ある実数yで,すべての実数xに対して x + y = 0を満たすものが存在する.」

これが真であるといいたければ,yに実数で,yの条件

「すべての実数xに対して x + y = 0を満たすものが存在する.」

を満たすようなものを見つけなければなりません.つまり,いい感じのyを1つ見つけてきて代入したときに出来上がったxの全称命題が真であることを言えばよいのです.ですから,xの全称命題を考える前に独立してyを見つけてくる必要があるのです.このためにyxに依存することはありません(この命題においては,そのことを試してみると不可能でありそうなことが分かったのでした.).

さらにこれらの命題を日本語に直す場合も少し注意が必要になります.「すべての~」と「~存在する」は順番を入れ替えられなかったので,この順番がきちんと伝わるように表現しなければなりません.次のような書き方はあまり好まれません.

「すべての実数xに対してp(x,y)を満たすようなyが存在する.」

この書き方からは\forall x\exist y(p(x,y))なのか\exist y\forall x(p(x,y))なのかどちらか分からないのです.ですから,日本語に直す場合も量化子の順番に合わせて書くべきで,\forall x\exist y(p(x,y))は次のように書けます:

「すべてのxに対して,あるy が存在してp(x,y) が成り立つ.」

\exist y\forall x(p(x,y)) の場合は次のようになります:

「あるyが存在して,すべてのxに対してp(x,y)が成り立つ.」

この順番を明確にするために「~が存在して~」のように日本語としてすこし不自然な表現を使うのです.

もう1つの例

もう1つ例を見ることにしましょう.次の命題が真であることを示してみましょう:

「任意の正の実数\varepsilonに対して,ある自然数Nが存在して,n>Nならば\dfrac{1}{n}<\varepsilonが成り立つ.」

まず外側に「任意の」があるので,正の実数として\varepsilonを取ってきます.その内側にあるのは「存在して」があるので

n>Nならば\dfrac{1}{n}<\varepsilonが成り立つ.」

部分を真にするのような自然数Nを見つけてくればよいのです.変数が複数あるので若干複雑に見えますが,落ち着いて考えるとそこまで難しくないことが分かります.まず,この文で出てくる\varepsilonは正の実数です.ですから,1とか0.2とか勝手な実数が代入されていることを想定しています.そして,Nはまだ見つけていないわけですが,とりあえず見つけたとすれば,それよりもnを大きくとれば,\dfrac{1}{n}とできる,ということをこの文章は述べているわけです.

Nを見つけましょう.まずNを見つけたとして,話を進めてみることにします.Nを見つけたとして,後ろの文を見れば,これは「ならば」でつながれた命題です.ですから,このNよりもnを大きくとることを考えてみます.つまり

n>N

となるnを取ってきて,結論部分の

\dfrac{1}{n}<\varepsilon

が満たされることを確認すればよいのです.n>Nの逆数を取れば

\dfrac{1}{n}<\dfrac{1}{N}

となるので,\dfrac{1}{N}\varepsilonよりも小さければ,結論部分が満たされることが分かります.なので,\dfrac{1}{N}<\varepsilonが満たされるようにN\dfrac{1}{\varepsilon}よりも大きい自然数を持ってくればいいのです.このようにNを見つけてくれば

n>Nならば\dfrac{1}{n}<\varepsilonが成り立つ.」

ことが分かるので,結局元の命題の

「任意の正の実数\varepsilonに対して,ある自然数Nが存在して,n>Nならば\dfrac{1}{n}<\varepsilonが成り立つ.」

が真であることが示されたことになります.

少し複雑な命題だったので上でやったことを順番に整理してみます.

  1. \varepsilonを正の実数とする.
  2. N\dfrac{1}{\varepsilon}より大きい自然数とする.
  3. n>Nならば\dfrac{1}{n}<\varepsilonを示す.

1つ目のステップは全称命題の証明の仕方です.ステップ2ではNを見つけてくるステップです.これは存在命題の証明の仕方でした.そして,ステップ3で1と2でそろえた\varepsilonNを使ってnに関する条件を「ならば」でつないだ命題を示します.

例えば\varepsilon=0.1としたとき,上の3つのステップは次のようになります:

  1. \varepsilon=0.1とする.
  2. N\dfrac{1}{0.1}=10より大きい自然数,例えばN=11とする.
  3. n>11ならば\dfrac{1}{n}<0.1を示す.

文字ばかりあると混乱してしまうかもしれませんが,1ステップ目と2ステップ目で変数に数を代入しているだけで,3ステップ目に残っている文字はnだけです.

このように複雑な命題でも外から順に処理していくのが基本的です.

次の例で出てくる三角不等式とは,実数x,yに対して成り立つ

|x+y|\le|x|+|y|,\quad |x|-|y|\le |x+y|

という不等式のことです.

例2

次の命題を考える:

「任意の正の実数qに対して,ある正の実数rが存在して,実数xに対して|x-1|<rならば|x^2-1|<qが成り立つ.」

これが真の命題であることを示す.qを正の実数とする.このときr1\dfrac{q}{3}のうち小さいほうとする.1\dfrac{q}{3}はどちらも正なので,rは正の実数である.このようにrを定めると,|x-1|<rならば|x^2-1|<qが成り立つことを確認する.x|x-1|<rを満たす実数とする.このとき三角不等式より

|x|-1\le|x-1|

が成り立ち右辺はrより小さいから|x|-1\le r,両辺に2を足せば

|x|+1\le r+2

が成り立つ.さらに三角不等式より|x+1|\le |x|+1だから|x|+1\le r+2と合わせて

|x+1|\le r+2

r1\dfrac{q}{3}のうち小さいほうだったからr\le 1である.このことと|x+1|\le r+2より

|x+1|\le 3

を得る.よって|x^2-1|=|x-1||x+1|だから,|x+1|\le 3より

|x^2-1|=|x-1||x+1|\le 3|x-1|

となる.今x|x-1|<rを満たすように取っているから,右辺は3rより小さい.rの定め方からr\dfrac{q}{3}以下だから

3r\le 3\cdot \dfrac{q}{3}=q

よって

|x^2-1|=|x-1||x+1|<3r\le q

となることが分かり,命題が真であることが示された.

後ろらへんが不等式をごちゃごちゃ触ってるせいで難しく見えるかもしれませんが,証明の流れとしては全称命題,存在命題,「ならば」の入った命題の証明手順を順に踏んでいるだけです.その構造を理解することができればここでは十分です.

まとめ

変数が多い条件での命題の作り方や証明の仕方について説明しました.最後の例のような一見複雑な命題も1つ1つ丁寧に見ていけば,案外そうでもなかったりします.2変数の場合を中心に見ましたが,3変数や4変数なども全く同じです.

コメント

タイトルとURLをコピーしました