2017年9月25日月曜日

C# 数学5 「集合 集合記号 論理記号 命題 証明 」(NZQRC ∈∉⊂⊆⊊∩∪ΦA− ∧&∨¬⇒→⊕⊻≠⇔⇄↔≡=∀∃)

C# 統計・微分積分・線形代数への道
目次→http://1studying.blogspot.jp/2017/08/senkei-index.html#kuw05

「集合」と「集合記号」と「理論記号」
「命題」の「逆 裏 対偶」、「P⇒Q」の考察
メモっておく。

ここでは、
「×」を「*」
「÷」や「分数」を「/」
で表現します。



「集合」(自然数N整数Z有理数Q実数R複素数C 無理数R-Q)と「要素」


「集合」と「要素」…
「集合」とは「{1, 3, 5, 7}」などの「複数の要素(数字など)」の集まり(配列)の事です。
  「A = {1, 3, 5, 7}」
  「集合A」
  「要素1, 3, 5, 7」
のような書き方をします。
「集合」の記号は「英字の大文字1字」で表す事が多いです。
注意点としては、
「集合」の「要素」は順番を持ちません。(「順序集合」は除く)
その為、
「A = {1, 3, 5, 7}」でも「A = {5, 3, 1, 7}」でも同じ意味となります。

「集合」はC#で扱う「配列」にイメージが近いのですが、
大きな違いは要素を指定する為の方法(「インデックス(添え字)」の扱い方)です。
  「集合A」(配列A)があります。
  「集合A」(配列A)には「要素a、b、c、d」が存在します。
  「要素a = 1、b = 3、c = 5、d = 7」が各要素の数値の場合、
  「集合Aの要素bは3となります」
というような(C#の連想配列みたいな)言い回しが出来ます。
ただ普段はもっとシンプルに、
  「集合(配列)A = {1, 3, 5, 7}」が存在します。
  「集合Aは要素3を持っています」
というように、
「要素?」という言葉が直接「配列内の値(内容)」を指す言い方をします。


「集合」の「濃度」は要素の数
「集合A」の「濃度」と言った場合、要素の総数(Length)の事を指します。
「濃度」を表す時は「集合」を「||」で囲み、
「|A|」のように書きます。(絶対値absと同じ書き方です)
例えば
  「A = {1, 3, 5, 7}」は要素の総数が4つなので、
  「|A| = 4」
となります。


「集合」を表す文字(自然数N整数Z有理数Q実数R複素数C 無理数R-Q)…
「集合」で特定条件範囲の数字を使用したい場合、
あらかじめ決められた文字(NZQRCのメタ文字)が使用できます。
  

N」:「自然数」の全値(Natural number)ℕ
    1から1ずつ足した全ての数。
    プラスの「整数」の事。
    0とマイナスや小数点は含まれない。
    (但し、大学以降での集合論などでは
    0を「自然数」に含める前提で話が進む事があるので注意が必要)

Z」:「整数」の全値(Zahlen、Integer)ℤ
    1刻みの全ての数。
    0を含むプラスとマイナスの全ての数の事。
    但し、小数点は含まれない。

Q」:「有理数」の全値(Quotient)ℚ
    「整数の分数」の
      「整数 / 0以外の整数 = ?」(整数の比)
    で表せる全ての数「有理数」の事。

    「有理数」とは…
      「整数の分数」で表せる数は全て「有理数」です。
      (「整数」と「ランダムに繰り返さない小数点」が「有理数」)
      つまり、
      ・「自然数」「整数」は全て「有理数」です。
        「プラスの整数」や「マイナスの整数」は
        「1 =  1 / 1」や「-1 = -1 / 1」で全て表せるので「有理数」
      ・「有理数」には「0」も含まれます。
        「0」は
        「0 = 0 / 1」で表せるので「有理数」
      ・「ランダムに繰り返さない小数点」は全て「有理数」です。
        「0.1 = 1 / 10」、「0.01 = 1 / 100」、
        「0.123 = 123/1000」で表せるので「有理数」。
      ・「同じパターンの数字が繰り返す小数点」も「有理数」です。
        「0.3333… = 1 / 3」や、
        「0.12341234… = 1234 / 9999」などは、
        「同じパターンの数字が繰り返す小数点」なので「有理数」。
        これらは「整数の分数」でも表す事がでるので「有理数」。

    「無理数」とは…(「R-Q」で表します)ℝ-ℚ
      「有理数」でないもは全て「無理数」です。
      (「ランダムに繰り返される小数点」が「無理数」)
      つまり、
      ・ランダムに繰り返される小数点は「無理数」です。
        「π」のように「3.141592…」と「ランダムな数字が∞に続く」場合、
        「無理数」。
      ・「√を外せない数」は全て「無理数」となります。
        「√2」は√を外せないので「無理数」。
        「√2」の√を無理矢理外したとしても、
        「1.414213…」と「ランダムな数字が∞に続く」ので「無理数」。
        (「√4」などは√を外せば「2」となるので「有理数」。)

R」:「実数」の全値(Real number)ℝ
    「自然数」「整数」「有理数」「無理数」「小数」「分数」「0」
    世に存在する全ての数は「実数」です。

C」:「複素数」の全値(Complex number)ℂ
    「実数」と「虚数i」を合わせた全数字の事。
    「実数」と「虚数i」を組み合わせると「複素数」になります。

    「虚数i」とは…
      「i * i = -1」や「i2 = -1」というあり得ない計算式の、
      「i」が「虚数i」となります。
      この式を変形すると、
      「虚数i = √(-1)」という世に存在出来ない数字となります。
      「虚数i」とは「二乗したら-1となる」想像上の数です。

    「複素数」とは…
      「実数」は「1」「0.5」「-5」などと記述されます。
      「虚数i」は「i」「3i」「-8i」などと記述されます。
      「複素数」は「3+8i」など「実数+虚数i」の式で構成された物です。
      「複素数平面(ガウス平面)」という物を利用すれば
      「複素数z = x + yi」の公式を使い、
      「横x」を実数の軸「実軸x」、「縦y」を虚数の軸「虚軸y」と仮定して
      「3+8i」などの「複素数」を2次元の「ベクトル」で表す事ができます。
      3次元より上の次元が扱える「超複素数」なども存在します。
      ちなみに、
      「複素数」は「素数」とは何の関係もありません。

    「超複素数」とは…
      ここでは関係ありませんが、
      「超複素数」は「クォータニオン」と呼ばれ、
      「3次元行列」や「3次元ベクトル」の計算に使います。    
      「クォータニオン」はCPUの演算負荷を低く抑えながら
      「行列」の計算を素早く行う為のアルゴリズムで使われています。
      後に、回転行列などで扱うかもしれません。

「複素数」や「虚数i」については、
今はあまり深入りする必要が無いので分からないまま先に進めます。
↓深入りしたい方はこれらのサイトよ読むと良いかもしれません。
「虚数とは何か?複素数とは何か?が一気に分かりやすくなる記事」
https://atarimae.biz/archives/500
「複素数とベクトルの話」
http://dende777.fc2web.com/ziten/denkiziten/bekutoru1/fukusosu.pdf
「ゲームの中に虚数あり」
http://enjoymath.pomb.org/?p=1093
「やっぱり欲しい回転行列⇔クォータニオン相互変換」
http://marupeke296.com/DXG_No58_RotQuaternionTrans.html



集合記号「∈∉⊂⊆⊊、∩∪Φ(大文字のファイ)A


「集合記号」は
「状態」を示す基本4パターン
「エリア(範囲)」を示す基本5パターンがあります。
  「∈⊂⊆∩∪」は「シュウゴウ」で変換できます。
  「Φ」は「ファイ」で変換できます。


集合「状態」を示す物基本4パターン(∈∉⊂⊆⊊)
 
「a ∈ A」…「属する∈」
  「要素aは集合Aに属す」状態。
  「集合Aに属する要素a」、「集合Aは要素aを持つ」などとも読む。

 
「b ∉ A」…「属さない∉」
  「要素bは集合Aに属さない」状態。
  「集合Aに属さない要素b」、「集合Aは要素bを持たない」などとも読む。

 
「A ⊆ B」…「部分集合⊆」(⊆を⊂と記述する事もあります)
  「集合Aが集合Bに含まれる」状態。
  「集合Bの部分集合A」や
  「集合Aの上位集合B」などとも読む。
  「包含」とも呼ばれます。
  「包含関係」…1つの集合に別の集合が含まれている」状態。

 
「A ⊊ B」…「真部分集合⊊」(⊊を⊂と記述する事もあります)
  「集合Aが集合Bに含まれ
  且つ、集合Aと集合Bが同じでない」状態。
  「集合Aの一部だが、集合Aとは異なるものが集合B」


集合「エリア(範囲)」を示す基本5パターン(∩∪UΦA
 
「A ∩ B」…「積集合∩、共通集合∩」
  「集合A & 集合B」の範囲。
  「集合A および 集合B」、「集合A かつ 集合B」などとも読む。

 
「A ∪ B」…「和集合∪、合併集合∪」
  「集合A or 集合B」の範囲。
  「集合A または 集合B」、「集合A もしくは 集合B」などとも読む。

 
「U」…「全体集合U(大文字のユー)」
  「全エリア」の範囲。

 

「Φ」…「空集合Φ(大文字のファイ、フィー)」
  「集合や要素を持たない集合」の範囲を「Φ」と言います。
  故に「集合」の「部分集合」には必ず「Φ」が含まれます。
  「集合内」には必ず「集合や要素の無い範囲(エリア)」が
   存在する為です。
  例:
    「集合A={1,2}」の部分集合は?
    「{1}と{2}と{1,2}と{Φ}」が
    「集合A」の「部分集合」です。と言えます。

 
「A」…「補集合A」(上部に横線でnotとなる)
  「not 集合A」の範囲。
  「集合Aを除く」などとも読む。
  横線の意味に注意:
    


ドモルガンの法則…
「集合」では以下の公式がなりたちます。
  
  「not(A & B)=(notA or notB)」
  
  「not(A or B)=(notA & notB)」

C#で記述した場合…
「not(A & B)」と「(notA or notB)」は同じ
        //この2つの条件式は同じ意味です
        int _A1 = 0, _A2 = 0, _B1 = 0, _B2 = 0;
        if (!(_A1 == _A2 && _B1 == _B2)){   処理   }
        // 「and ←→ or」 への変換↑↓
        if ((_A1 != _A2) || (_B1 != _B2)){   処理   }
「not(A or B)」と「(notA & notB)」は同じ
        //この2つの条件式は同じ意味です
        int _A1 = 0, _A2 = 0, _B1 = 0, _B2 = 0;
        if (!(_A1 == _A2 || _B1 == _B2)){   処理   }
        // 「or ←→ and」 への変換↑↓
        if ((_A1 != _A2) && (_B1 != _B2)){   処理   }
プログラムを記述するに当たり、最初の頃に覚えなければいけない法則です。


「集合」を「n(集合式)」や「|集合式|」で記述
「集合」を数式で記述する時「n(集合式)」で表す事が出来ます。
たとえば、
  「集合A」は「n(A)」
  「A∩B」は「n(A∩B)」
のような書き方が出来ます。

「集合」を数式で記述する時「|集合式|」でも表す事が出来ます。
(「|集合式|」は本来、「| |」で挟まれた式の「要素数」を表す記述です。)
たとえば、
  「集合A」は「|A|」(「|A|」は「集合Aの要素数」)
  「A∩B」は「|A∩B|」(「|A∩B|」は「A∩Bの要素数」)
のような書き方が出来ます。

「n(集合式)」と「|集合式|」はどちらの書き方も一般的によく使われますので、
覚えておきましょう。


「和集合」の式(2つの集合、3つの集合)
2つの集合の「和集合」の式
  「n(A∪B)=n(A)+n(B)−n(A∩B)」
  

3つの集合の「和集合」の式
  「n(A∪B∪C)=n(A)+n(B)+n(C)+n(A∩B∩C)−n(A∩B)−n(B∩C)−n(C∩A)」
  



「集合」の「条件式」記述


「条件式」を記述して「集合」を作る事が出来ます。
「条件に従った要素」で構成された「集合」を作りたい時に使います。

「条件式付き集合」の記述…
「条件式付き集合」は以下の形式で記述します。
  
  「集合」の名称は「A」以外でも良いです。
  「要素」の名称は「x」以外でも良いです。
「xの条件式」を記述する方法を説明します。

記述例1:
  「A = {x | -2 < x < 4, xは自然数N}」や、
  「A = {x | -2 < x < 4, x∈N}」
とした場合、「集合A」の要素はどのようになるでしょうか。
まず、
「自然数N」は「1以上の整数」を指します。
「x∈N」とした場合も「x」は「1以上の整数」を指しますね。
(「自然数N」に「x」が「属する∈」状態という意味です)
その中で、「-2より上、4より下」の数を抽出するので、
答えは
  「集合A = {1, 2, 3}」
となります。

記述例2:
  「A = {2n+1 | -2 < n < 3, 整数Z}」
とした場合、「集合A」の要素はどのようになるでしょうか。
この場合、
「整数Z」の範囲から「-2より上、3より下」を抽出すると
  「各要素n」は「{-1, 0, 1, 2}」
「各要素n」に「2n+1」を計算して、
答えは
  「集合A = {-1, 1, 3, 5}」
となります。

記述例3:
  「(X, Y) = {(x, y) | x+y=5, xとyは自然数N}」や、
  「(X, Y) = {(x, y) | x+y=5, x∈N, y∈N}」
とした場合、「集合A」の要素はどのようになるでしょうか。
答えは
  「集合(X,Y)={(1, 4), (2, 3), (3, 2), (4, 1)}」
となります。


「P」と「P(x)」などの「条件式付き集合」の記述方法(重要)
「集合P」を
  集合P = {x | xは6の倍数}
のように記述すると、
  集合P = {6, 12, 18, 24, …}
となります。
この「条件付き集合P」は記述は以下のような書き方が可能です。
以下は全て同じ意味
  集合P = {x | xは6の倍数}
  集合P =「6の倍数」
  集合P( 6の倍数 )
  集合P(x) = {x | xは6の倍数}
  集合P(x) = 「6の倍数」
  条件P = {x | xは6の倍数}
  条件P = 「6の倍数」
  条件P( 6の倍数 )
  条件P(x) = {x | xは6の倍数}
  条件P(x) = 「6の倍数」



「論理記号」(∧&∨¬⇒→⊕⊻≠⇔⇄↔≡=)


「論理記号」は
  基本の「and(∧)」「or(∨)」「not(¬) 」と
  「論理包含imp(⇒)」「排他的論理和xor(≠)」「同値xnor(⇔)」の
全部で6パターン。
これらの「ベン図」と「真理値表」を記載します。
  「¬∨∧」は「シュウゴウ」で変換出来ます。
  「⇒≠⇔」は「キゴウ」で変換出来ます。
  「≠≡」は「=」で変換出来ます。


「真理値表」の「真1」と「偽0」の表記について
「真偽」記述方法を「真理値表」などでは
  「真」「True」「T」「yes」「Y」「1」
  「偽」「False」「F」「no」「N」「0」
と表現します。


「∧」「&」…「論理積and」「かつ」「および」
「P ∧ Q」「P & Q」
  
PかつQの「集合範囲内の各要素」は「真1」。
  


「∨」…「論理和or」「または」「もしくは」
「P ∨ Q」「P or Q」
  
PまたはQの「集合範囲内の各要素」は「真1」。
  


「¬」「!」…「否定not」「〜でない」
「¬P」「!P」
  
Pでない。Pのが成立しない「集合範囲内の各要素」は「真1」。
  


「⇒」「→」…「論理包含imp」「含意imp」(条件式)「証明▶〜ならば〜である」
「P ⇒ Q」はよく使われる「論理記号」の形です。
正しく理解しようとすると混乱しやすい「論理記号」ですので、
理屈の部分は後述するトピックで少しずつ詳しく説明する予定です。
「P ⇒ Q」は「!P or Q」や「!(P & !Q)」のような「論理式」でも記述が可能です。
「P ⇒ Q」(「PならばQ」と読む)(「PはQを含む、QはPに含まれる」)
一般的には、
  
のような「エリア(範囲)」で表現されるが、
  
  「!P or Q」としたとき「真偽」がどうなるか?
のような「条件」を指すと思った方が良い。

「論理包含imp」は以下のような「条件」で判断を行うと良い。
  
「論理包含imp」の判断が「真1」となる時には以下のような事が言えます。
  Pが成立して、Qも成立する状態。
  Pが成立しない状態。
 ▶「証明」としても「⇒」記号を使用出来ます。
  「P ⇒ Q」(「PならばQが成り立つ」と読む)
  「Pの式」が成り立った時、「Qの式」も同じように成り立つという意味です。
  但し、
  「Qの式」が成り立っても「Pの式」が成り立つとは限らないです。
  (「P ⇒ Q」であっても「Q ⇒ P」とは限らないです。)

bool boolFlg1 = true;
bool boolFlg2 = true;
//「boolFlg1 ⇒ boolFlg2」論理包括impの状態かチェック
if ( !boolFlg1 || boolFlg2 ){
  //「boolFlg1」が「boolFlg2」に含まれるならココに処理が来る
}
//「boolFlg1 ⇒ boolFlg2」は以下のように書く事も出来ます
if ( !(boolFlg1 && !boolFlg2) ){
  //「boolFlg1」が「boolFlg2」に含まれるならココに処理が来る
}


「⊕」「⊻」(≠)…「排他的論理和xor」「証明▶≠等しくない」
「P ⊕ Q」「P ⊻ Q」(「PエックスオアQ」と読む)
一般的には、
  
のような「エリア(範囲)」で表現されるが、
  
のような「条件」を指すと思った方が良い。

「排他的論理和xor」は以下のような「条件」で判断を行うと良い。
  
「排他的論理和xor」の判断が「真1」となる時には以下のような事が言えます。
  PとQは成り立たない(notの)状態。
  PとQが同じ(同値)にならない。
  Pが成立するとQは成立しない。Qが成立するとPは成立しない。
  (「P⊕Q」は「(P∧¬Q)∨(¬P∧Q)」のような式でも表す事が出来ます)
▶「証明」としても「≠(ノットイコール)」記号を利用出来ます。
  「P ≠ Q」(「PとQは等しくない」と読む)
  「PとQ」は成り立たないという意味です。


「⇔」「⇄」(↔≡=)…「同値xnor」(又は「同値iff」)「証明▶互いに成り立つ」
「P ⇔ Q」(「PとQは同値である」と読む)
一般的には、
  
のような「エリア(範囲)」で表現されるが、
  
のような「条件」を指すと思った方が良い。

「同値xnor」は以下の様な「条件」で判断を行うと良い。
  
「同値xnor」の判断が「真1」となる時には以下のような事が言えます。
  Pが成立すれば、Qも成立する。Qが成立すればPも成立する。
  Pが成立しなければ、Qも成立しない。Qが成立しなければPも成立しない。
  「P ⇒ Q」と「Q ⇒ P」が互いに成り立ちます。
  (「xor」を「not」した物とも同じ結果となります)
▶「証明」としても「⇔」 記号を使用出来ます。
  「P ⇔ Q」(「PとQは同値。互いに成り立つ」と読みます)
  「Pの式」が成り立った時、「Qの式」も同じように成り立ち、
  逆に「Qの式」が成り立った時、「Pの式」も同じように成り立ちます。
  「PとQの式」で、
  式の見た目は違うが完全に同じ意味である場合などに使用されます。


「論理記号」使用例
「P ∧ Q」論理積and
  p「私は人間です」が真実、q「私は猫です」が真実なら
    p∧q「私は猫人間です(人間でも猫でもありません)」が真実
  P「20歳以下です」が真実、Q「10歳以上です」が真実なら
    P∧Q「10歳以上20歳以下です」が真実
「P ∨ Q」論理和or
  p「私は人間です」が真実、q「私は猫です」が真実なら
    p∨q「私は人間か猫か猫人間です」が真実
  P「20歳以上です」が真実でQ「10歳以下です」が真実なら
    P∨Q「20歳以上か10歳以下です」が真実
「¬P」否定not
  p「私は猫人間です」が真実なら
    ¬p「私は猫人間ではありません」が真実
  p「15歳です」が真実なら
    ¬p「15歳ではない年齢です」が真実
「P ⇒ Q」論理包含imp
  p「私は猫娘です」が真実、q「私は猫人間です」が真実なら
  p⇒q「猫娘ならば猫人間である」が真実
「P ⊕ Q」排他的論理和xor
  p「私は人間です」が真実、q「私は猫です」が真実なら
  p⊕q「人間と猫は同じではありません」が真実
「P ⇔ Q」同値xnor
  p「5年前10歳でした」が真実、q「5年後20歳です」が真実なら
  p⇔q「15歳です」が真実

参考→wiki:論理演算
https://ja.wikipedia.org/wiki/%E8%AB%96%E7%90%86%E6%BC%94%E7%AE%97


「集合」と「論理演算」の関係


例えば「P(x) ∧ Q(x)」では、
「要素x」が「ベン図」の朱色の範囲領域内に存在するときに「真」となる為、
「要素x」の存在する範囲により以下のような結果の違いが出ます。
  
「P(6の倍数)、Q(3の倍数)」とすると「P ∧ Q」は以下のイメージです。
  
それでは、
「ベン図」内のどの範囲に「要素x」が存在するのかで変わる「真偽」判定と
「論理演算」の「真理値表」との関係を示した物を見て行きましょう。

「and」(PかつQである)
  
  例:P「6の倍数」、Q「3の倍数」、P∧Q「6の倍数」  


「or」(PまたはQである)
  
  例:P「6の倍数」、Q「3の倍数」、P∨Q「3の倍数」


「not」(Pでない)
  
  例:P「6の倍数」、¬P「6の倍数ではない全ての数」


「論理包含⇒」(PならばQである)
  
  例:P「6の倍数」、Q「3の倍数」、P⇒Q「6の倍数ならば3の倍数である」



「命題」と「否定」 (論理演算)


「論理演算(bool演算)」「論理変数(命題変数、bool変数)」について
  ・「論理演算(bool演算)」は「真偽」を返す
  コンピュータの世界では「論理演算」により様々な論理計算が行われます。
  「論理演算(bool演算)」は別名「bool演算」とも呼ばれます。
  「bool」は「真である1」か「偽である0」の2種類の値しか表現出来ません。
  例えば「論理演算」である
    「P ∧ Q」(p ∧ q)は常に「真1」を返す
    「P ∧ ¬Q」(p ∧ ¬q)は常に「偽0」を返す
    「¬P ∧ Q」(¬p ∧ q)は常に「偽0」を返す
    「¬P ∧ ¬Q」(¬p ∧ ¬q)は常に「偽0」を返す
  のように必ず「真偽」のどちらかを返します。
  このように「集合P」「集合Q」の各範囲内にある「要素」に対して
  「論理演算」を行うのに「論理記号」を使用する事になります。

  ・「論理変数(命題変数、bool変数)」は「真偽」を表現する
  「論理演算」で使用する小文字の「pやq」などの事を「論理変数」と言います。
    「命題p」「命題q」、
    「条件p」「条件q」、「条件p(x)」「条件q(x)」
    (「命題」「条件(命題)」に付いては後述)
  と記述したとき「pやq」を「論理変数pやq」と言います。
  「論理変数pやq」は「bool(真偽)」のどちらかを表現する為の「変数」で、
  別名「命題変数、bool変数」とも言われています。


大文字と小文字の違い「Pとp」「Qとq」
「論理演算」で使用する「大文字のPやQ」は「集合」を指す場合が多いです。
その為、
  「pの集合P」「qの集合Q」、
  「命題P」「命題Q」、「条件P」「条件Q」
  (「命題」「条件命題」に付いては後述)
のように「大文字と小文字」を使い分ける事があります。
ところが実は、
  「条件p(x)」と「条件P(x)」と「集合P(x)」は実質同じ意味を指します
  (後述『「条件命題p(x)」と「集合P(x)」の区別(真理集合)』にて再度説明)
その為に実際では「集合」である無しに関係無く、
「論理変数」全てを「集合」との区別無く「小文字のpやq」で記述する事があります。
逆に全てを「集合」との区別無く「大文字のPやQ」で記述する事もあります。


「命題」「真の命題」「偽の命題」とは
「論理演算」は必ず「真偽」のどちらかを判断して結果を返(出力)します。
必ず「真偽」の一方に確定する「文章や言葉や式」の事を「命題」と言います。
「真と偽のどちらとも取れるグレーな文章や式」は「命題でない」と言います。
  「命題」の答えは必ず「真」か「偽」です。

「真の命題」
基準が常に「真」と確定した「命題」を「真となる命題」や「真の命題」と言います。
  
    「命題pが真」=「命題(¬p)が偽」
  である事が基準となる。

「偽の命題」
基準が常に「偽」と確定した「命題」を「偽となる命題」や「偽の命題」と言います。
  
    「命題pが偽」=「命題(¬p)が真」
  である事が基準となる。

「命題でない」
「真偽」の判断が付かない物は「命題」にはなりません。
  

「真の命題」「偽の命題」は「命題」と省略して書く
殆どの場合「真の命題」「偽の命題」は「命題」と省略されます。
その場合「真偽」どちら基準の「命題」かは自分で見て判断します。
  「論理演算」を使用した例
  
  上記「命題p」「命題q」「命題s」「命題r」は全て「真の命題」です。
  それぞれの「命題」が以下のような「真」である事が確定しています。
    「真の命題p」=「オスである」
    「真の命題q」=「猫である」
    「真の命題r」=「p ∧ q」=「オス猫である」「オス かつ 猫である」
    「真の命題s」=「p ∨ q」=「オスか猫かオス猫である」
  となります。
    「命題p」「命題q」のような命題を「単純命題」
    「命題r」「命題s」のような命題を「複合命題」
  と呼びます。これらについては後述します。


「否定¬」について
「命題p」の「否定」について
  「否定」は「¬」や「!」や「文字に上線」で表現出来ます。
    「¬p」「!p」「
  どれを使っても意味は同じです。
「p」が「真」であれば、
「¬p」は「偽」、「!!p」は「真」、「!¬」は「偽」となります。
  「〜です」を「否定¬」すると「〜ではない」となります。
  「オスです」を「否定¬」すると「オスではない」や「メスです」となります。

「p and q」「p or q」の「否定」(ドモルガンの法則)
  「ドモルガンの法則」(「集合記号」にて前述)
「!(p & q)」=「!p or !q」
「!(p or q)」=「 !p & !q」

「命題」の「否定」でよく使われる形
  以下の「否定」の形は非常によく登場しますので知っておくと良いでしょう。
  「x=3」を「¬否定」すると「x≠3」(x≦2または4≦x)
  「x<3」を「¬否定」すると「3≦x」
  「有理数」を「¬否定」すると「無理数」
  「偶数」を「¬否定」すると「有理数」

「否定¬」は後述する「背理法」でも頻繁に使用されます。
しっかり覚えておきましょう。



「条件、条件命題」「命題関数 述語 性質」


「条件、条件命題」と「命題関数」とは(「事柄p(x)」と「変数x」)
「命題関数」とは(変数x)
  「命題」には「変数」を持たせる事が出来ます。
  「変数x」などの「変数」を持った「命題」の事を「命題関数」と言います。
命題p=「私は人間です」
命題関数p(x)=「xは人間です」
命題関数p( xは人間です )
(更にxを省略して「命題関数p( 人間です )」とも記述出来ます)
  「命題関数」は持っている「変数」の値や状態が決定すると「真偽」が確定し、
  「命題」となります。
  逆に言うと、
  「命題関数」は持っている「変数」の値や状態が決定し「真偽」が確定しない限り、
  「命題」にはなりません。
  例えば、
    「命題関数p(x)」は「変数x」の値や状態により「真偽」の判定が変わります。
    (この時、この「p(x)」の事を「事柄」と言う事があります)
  この
    「命題関数p(x)」は
    「条件命題p(x)」や「条件p(x)」や「条件p」と言い換える事が出来ます。

「条件、条件命題」とは「命題関数」の事である
    命題関数p(x)=「xは人間です」
  では「変数x」の「条件」が決まれば「命題」となり「真偽」の一方が返って来ます。
  この事から普段は、
  「命題関数」の事を「条件、条件命題」と呼びます。
「命題関数」は別名「条件、条件命題」と呼ばれています。
条件p(x)=「xは人間です」
条件p( xは人間です )
(更にxを省略して「条件p( 人間です )」とも記述出来ます)
  「条件p(x)」は「変数x」の指す先(条件)により「真偽」が変わります。
「条件、条件命題」とは…
「変数x」が決まれば「事柄p(x)」の「真偽」が決定し「命題p」となる場合、
「変数x」の「条件」により事柄「p(x)」の「真偽」が決まるので、
それを「条件p(x)」と言います。

「条件」とは「命題関数 述語 性質」の事である
  「条件命題」は「命題関数」の他にも「述語」や「性質」などと呼ぶ事があります。
  条件p(x)=「xは人間です」
  条件p( xは人間です )
上記「xは人間です」の事を
  「条件」又は「xに関する条件」と呼びます。
  「述語」又は「xに関する述語」と呼びます。
  「性質」又は「xに関する性質」と呼びます。
  ここでは詳しくやりませんが、
  「命題論理」と「述語論理」という理論があり、
    命題では「¬、∧、∨、⇒」の論理記号を扱えます。
    命題関数、述語では「¬、∧、∨、⇒」の他に「∀、∃」の論理記号を扱えます。
  という考え方があります。
    普遍量化子「∀」(任意の〜について〜である)
    存在量化子「∃」(〜を満たす〜の存在がある)
  については後述する予定です。



「命題」と「条件、条件命題」と「集合」


「命題と条件命題」の考え方
「条件命題p(x)」とは「変数x」の値や状態(条件)が定まる事により
「真偽」が決まり「命題p」となります。
これは
  「変数x」の「条件」によって、
  返す「真偽」が変わる「変数xを含んだ文や論理演算式」
とも言えます。
「命題」と「条件」の幾つかの例を挙げておきます。

「命題p」(「変数を持たない」時)
「変数」がない場合は必ず「命題」となります。(「条件命題」にはなりません)
  命題s=「猫人間である」
  
これら「命題s」は全て同じ意味。常に「真1」を返します。
(常に「偽0」を返す「命題」もあります)

「条件p(x)」(「変数を1つ」持つ時)
「条件命題」の場合には必ず「変数」が存在する形となります。
  条件r(x)=「xは猫人間である」
  条件r=猫人間である
  条件r( 猫人間である )
  
これら「条件r」は両方同じ意味。
「変数x」の状態により「条件r」の「真偽」が決まります。
  「変数x」が「猫人間」の時「条件r(x)」は「真1」を返す
  「変数x」が「猫人間」でない時「条件r(x)」は「偽0」を返す

「猫である」「人間である」が「条件」とすると以下のようになります。
  「条件p( 猫である )」「条件q( 人間である )」「命題s=p∧q」
  
「変数x」の状況で常に「真」となる「命題s」が
「否定¬」されて「偽」となる「条件」が「真理値表」により分かります。
  「条件pが 真1(猫である)」、「条件qが 真1(人間である)」の時、
    「命題s」の「p∧q(猫人間である)」は「真1」
  「条件pが 真1(猫である)」、「条件qが 偽0(人間でない)」の時、
    「命題s」の「p∧q(猫人間である)」は「否定¬」され「偽0」
  「条件pが 偽0(猫でない)」、「条件qが 真1(人間である)」の時、
    「命題s」の「p∧q(猫人間である)」は「否定¬」され「偽0」
  「条件pが 偽0(猫でない)」、「条件qが 偽0(人間でない)」の時、
    「命題s」の「p∧q(猫人間である)」は「否定¬」され「偽0」
「条件命題」は以下のような記述も可能です。
  条件p(x)=「xは6の倍数である」
この「条件p(x)」は
  条件p(6)=「真1」
  条件p(7)=「偽0」

「条件p(x, y)」(「変数を2つ」持つ時)
「条件命題」では「変数を2つ」以上持つ事もあります。
  条件p(x, y)=「x+y=3である」
この「条件p(x, y)」は
  p(1, 2)=「真1」
  p(2, 2)=「偽0」


「条件命題p(x)」と「集合P(x)」の区別(真理集合)
  「条件p(x)」と「条件P(x)」と「集合P(x)」と
  「変数x」を省略した「条件p」と「条件P」と「集合P」は実質同じ意味です。
もし意味を無理矢理に分けると以下のようなイメージでしょうか、
  
  「条件p(x)」とは「変数xに関する条件」の事
  「条件P(x)」とは「変数xに関する条件の集合範囲」の事
  「集合P(x)」での「変数xは集合範囲(値の制限)」の事
どれも実質同じ意味ですので、
「条件p(x)」や「条件P(x)」で全てを記述しても問題ありません。
「条件命題」を書く時に普段は「条件p(x)、条件p」と書いて、
「集合」である事を意識したい時だけ「条件P(x)、条件P」と好みで書く人もいます。
(「命題」でも同じように「命題p」と「命題P」で同じ扱いが可能です)

「真理集合」とは…
  「条件P(x)」の「変数x」を「集合範囲」と見ると
  以下のように「真理集合」を説明出来ます。
  「集合P(x) = {x | xは6の倍数}」である時、
  「{6, 12, 18, 24 , …}」の「集合範囲」を「真理集合」と呼びます。
この時、
  「xは6の倍数」(集合範囲)の事を「xに関する条件」と言う事が出来ます。
「条件命題」は「集合」と同じように記述できるので、
  「条件P(x) = {x | xは6の倍数}」である時、
  「条件P」である「{6, 12, 18, 24 , …}」は「真理集合」と言えます。
  「条件P(x)」の「真理集合」と言った時、
  「条件P」が「真」となる「要素の集合」を指します。



「単純命題(要素命題)」と「複合命題(合成命題)」




ここから先は
執筆中です
しばしまたれよ





「命題 条件命題 集合 推論の命題」のまとめ
「命題」とは(〜である)
  必ず「真偽」の一方に確定した「式や言葉」の事を「命題」と言います。
  「単純命題」は「論理記号」が入らず必ず「真」と確定。
  「複合命題」は「論理記号(論理演算)」が入り必ず「真偽」のどちらかに確定。
「条件命題、条件」とは
  「条件命題」は単に「条件」と省略される事があります。
  「変数x」の状態によって「真偽」が変わる「式や言葉」の事を「条件」と言います。
  「条件命題」は「命題関数」「述語」「性質」とも呼ばれます。
「集合」とは
  「条件」が示す「集合範囲」に「変数x」が入るかで「真偽」が変わります。
  「条件」が示す「真理集合」の範囲内に「変数x」があれば「真」、
  範囲外に「変数x」があれば「偽」を返します。
「推論の命題」(⇒ 〜ならば〜である)(重要)
  命題「p⇒q」(「pならばqである」)とは、
  「p⇒qは常に真である」という「命題」と言えます。
  (常に「真(〜である)」と判断できるので「(複合)命題」と言えます)
  命題「p⇒q」において「(pならばqである)ではない」場合、
  「¬(p⇒q)」となり、この時の『命題「p⇒q」は「偽」』と言えます。
  この「¬(p⇒q)」については、
  以下のような解釈ができます。
    (「¬(p⇒q)」=「p & ¬q」)「pが成り立ち かつ qが成り立たたない」
    (「¬(p⇒q)」=「¬p or q」)「pが成り立たない もしくは qが成り立つ」
  これについては後述『推論命題「p ⇒ q」の「否定」(重要)』で説明します。


「推論の命題」は「命題」だが実は「条件命題」と同じ意味(重要)
  p(x)=xは6の倍数である
  q(x)=xは3の倍数である
  命題「p⇒q」(「pならばqである」)とは
  「」

執筆中です。
しばしまたれよ




「条件、条件命題」
「命題」とは「真偽」どちらを基準とするかが「真の命題」「偽の命題」と言う言葉で
確定している物でした。
「命題」と同じで、
「条件命題」も「真偽」どちらを基準とするかは確定しています。
「しかし要素x」
ただし「条件命題」では、
「否定¬」したらどうなるかの「場合分け」を考慮にいれる必要があります。
「真偽値表」
は「命題」の基準となる「真偽」以外の「条件」で「場合分け」をした結果を
表す物です。

ここから先は執筆中です

・「条件命題」は「条件」と省略して書く

「条件命題p」=「xはオスである」
「条件命題q」=「xは猫である」
「真の命題r」=「p ∧ q」=「オス猫である」
「真の命題s」=「p ∨ q」=「オスか猫かオス猫である」


おそらく…
「xが真(オスの範囲内)」ならば「オス」である(同値じゃね?)
「xが真(猫の範囲内)」ならば「猫」である(同値じゃね?)

「xが真(オスの範囲内)」と決まれば命題となり命題「オスである」となる
「xが真(猫の範囲内)」と決まれば命題となり命題「猫である」となる

xの内容が決まれば「命題」となる「p(x)」を条件と言う

「xが偽」または「オス」である




「命題」には「単純命題」と「複合命題」が存在します。
これに付いては後述します。
「命題P」、命題「」






「命題」と「条件命題」
「命題」と「条件命題」の勘違いしやすい部分を先に説明しておきます。
・「命題」(単純命題と復号命題)は「真偽」が確定している。
・「条件命題」とは場合分けで対処する





「命題 条件命題 集合 推論の命題」の曖昧な部分
p=「6の倍数である」
とした場合、



pは「6の倍数である」
とした時、
命題p「6の倍数である」
条件P(x)「xは6の倍数である」
の2つともとれるが「⇒ならば」が使われている場合、
「」


猫である
xは猫である

ここまでやってきた事をひっくり返すようですが、
主観で命題と条件命題は変わります。

p=「3の倍数」
これは命題?条件命題?

命題、3の倍数?「真偽」
命題、xは3の倍数?「真偽」
条件、xは3の倍数「3, 6, 9, 12, …」
以下のように書く
条件、3の倍数「3, 6, 9, 12, …」
変数がx無くてもあると見なしている

○である
も結局は「条件」とも言える

「命題関数」は単に「命題」と言う


「条件命題」とは「命題関数」なので、
変数の付いた命題の事は
考えようによっては「命題」の一種に含められる?






「命題 条件命題 集合 推論の命題 否定」(論理演算)


「あああ
あああ


「単純命題(要素命題)」と「複合命題(合成命題)」
  必ず「真偽」のどちらかを返す「文章や論理演算」の事を
  「命題」と言います。
「命題」には「真(肯定)」を返す事を前提とした「単純命題」と、
「真偽」を受け取って「論理演算」後
確定した結果の「真偽」を返す「複合命題」があります。
  ・「単純命題(要素命題)」(「論理演算」を含まない「命題」)
  「単純命題」は「要素命題」とも言われています。
  「かつ(and)」や「〜でない」等を使わない「それ以上分ける事のできない命題」
  の事を言います。
「単純命題」では「接続詞∧∨⇒」や「否定詞¬」などの
「論理演算」を含みません。
  「私はオスである」「私は猫である」(単純命題 p、q)
  
  「単純命題pやq」は「論理演算」を含まない「肯定型(〜である)」です。
「単純命題」は常に「真(肯定)」と確定した「命題」と言えます。
・「条件命題」を受け取る「命題」について…
  「命題r」に「pである」と「記述」されている為、
  「pは常に真である」という「命題」と言えます。
  「条件p」は「真偽」の可能性がありますが「命題r」により
  「条件pは真である は常に真である」と確定され、
  「命題rは常に真である」と確定しています。(「条件qと命題s」も同様)
  その為、
  もし「条件p」が「偽」であれば、
  「命題r」の「pである」は「否定(〜でない)」されて
  「命題r」は「偽」となります。
  その「場合分け」を表にしたのが「真理値表」です。
  「条件命題」については後述します。

  ・「複合命題(合成命題)」(「論理演算」を含む「命題」)
  「複合命題」は「合成命題」とも言われています。
  「かつ(and)」や「〜でない」のような「接続詞や否定詞などの論理記号を含む命題」
  の事を言います。
「複合命題」では「接続詞∧∨⇒」や「否定詞¬」などの
「論理演算」が含まれます。
  「オスである かつ 猫である」(複合命題 p∧q)
  
「命題pとq」両方の「確定した真偽」を「複合命題s」が受け取り、
「論理演算」した結果の「確定した真偽」を「複合命題s」は返します。
・「条件命題」を受け取る「命題」について…
  「命題s」が「p∧q」(pかつqである)と「記述」されている為、
  「p∧qは常に真である」という「命題」と言えます。
  「条件p、条件q」は「真偽」の可能性がありますが「命題s」により
  「条件pは真である かつ 条件qは真である は常に真である」と確定され、
  「命題sは常に真である」と確定しています。
  その為、
  もし「条件p、条件q」が共に「偽」であれば、
  「命題s」の「p∧qは常に真である」は「否定」されて
  「命題s」は「偽」となります。
  その「場合分け」を表にしたのが「論理積and」の「真理値表」です。
  「条件命題」については後述します。
  「〜である」が「単純命題p」の時、
  「〜でない」は「複合命題 ¬p」となります。
    
  これは、もっと詳細に分解すると以下のように書く事もできます。
    

「複合命題」(「論理演算」を含む「命題」)の種類の中で最も頻繁に使われるのが
「(⇒)論理包含imp」を使った「複合命題」である「推論の命題」です。
次に「推論の命題」について学びます。


「推論の命題(〜ならば〜である)」
「複合命題」の中で「(⇒)論理包含imp」の「論理演算」を使用した「命題」の事を、
ここでは「推論の命題」と呼びます。
「推論の命題」は非常によく使われる「命題」の形です。
  ・「推論の命題」(⇒ 〜ならば〜である)
  推論の命題「p ⇒ q」(pならばqである)
の時「pを仮定(前件)」「qを結論(後件)」と言います。
「p(仮定)」を元に(使って)「q(結論)」へと導く
「p(仮定)」があって始めて「q(結論)」が出る
  「猫娘 ならば 猫人間 である」(推論の命題 p⇒q)
  
「p)私は猫娘 ならば q)私は妖怪 でもある」が「真」なので、  
  「p)私は猫娘であると仮定」すると「q)私は妖怪であると結論」出来る
と言えます。
「P)xは6の倍数 ならば Q)xは3の倍数 でもある」が「真」であれば、
  「P)xは6の倍数と仮定」すると「Q)xは3の倍数でもあると結論」出来る
と言えます。

  「p ⇒ q」とは「p or !q」や「!(p&!q)」のことである(重要)
命題「p⇒q」は「!p or q」や「!(p&!q)」を省略した記述です。
  
「p⇒q」「!p or q」「!(p&!q)」が互いに同じ結果となる事が
上記「真理値表」を見ると分かると思います。

「ならば」について…(重要)
命題「p ⇒ q」は通常「p ならば q である」と日本語に訳されます。
この「ならば」は普段私たちが使っている「ならば」いう言葉とは違う意味です。
単純に、「!p or q」や「!(p&!q)」という
特殊な「真理値表」の状態をうまく日本語で表現出来ない為に、
「ならば」と言う言葉でとりあえず表現しているだけである事に注意して下さい。

  ・「p ⇒ q」が「真」の時、「P ⊆ Q」となる(重要)
「P ⇒ Q」(PならばQである)は別名「論理包含」と呼ばれています。
「P ⇒ Q」が「真」の時は「P ⊆ Q」の関係であると言えます。
  
「P ⇒ Q」が「真」である場合は必ずPの範囲よりQの範囲が大きくなり、
QがPを包んだ状態となる事が約束されています。
何故そうなるのかについては後述します。
「PならばQである」の「P ⊆ Q」との関係や「真理値表」の結果については、
何故そうなるのかの理屈を理解するのに殆どの人が難儀します。
  『「推論の命題」「論理包含⇒」の違和感の解決』
にて理屈の部分を説明します。


「推論の命題」「論理包含⇒」の違和感の解決(超重要)
・「P ⇒ Q」が「真」の時、何故「P ⊆ Q」と言えるのか


・「P ⇒ Q」(PならばQである)の「P」が「偽」の場合



執筆中ですごめんなさい




「推論の命題」については
  「命題 条件命題 集合 推論の命題」のまとめ
  「推論の命題」は「命題」だが実は「条件命題」と同じ意味(重要)
  「命題 条件命題 集合 推論の命題」の曖昧な部分
  「否定」についてのまとめ(推論命題「p⇒q」の否定)
  「命題 推論の命題 背理法」(逆 裏 対偶)
などで更に掘り下げます。







「否定」についてのまとめ(推論命題「p⇒q」の否定)
推論命題「p ⇒ q」の「否定」(重要)
  「p ⇒ q」(p ならば q である)の「否定」
前述『「p ⇒ q」とは「p or !q」や「!(p&!q)」のことである(重要)』
により、
  「p ⇒ q」=「!p or q」=「!(p & !q)」
を前提として「p ⇒ q」を「¬否定」すると以下の式が導けます。
  「¬!(p & !q)」=「p & !q」
結果、
  「p ⇒ q」(p ならば q である)の「否定」は
  「p & !q」(p かつ q でない)
となります。
これらの「否定」の方法はこの後「背理法」を学ぶ際に必要となる知識です。


「命題 推論の命題 背理法」(逆 裏 対偶)




「命題P⇒Q」の「真の命題」「偽の命題」(命題と条件命題)
「P ⇒ Q」とは以下のような物でした。
  P「私は猫娘です」 Q「私は猫人間です」
  P⇒Q「猫娘ならば猫人間である」

「命題」では「P ⇒ Q」などの式を使い「集合範囲の真偽」を問う事がよく有ります。
この時の「PとQ」を「条件P、条件Q」と言います。
  答えが必ず「真」となる「命題」であれば「真の命題」、
  答えが必ず「偽」となる「命題」であれば「偽の命題」
と言う事が出来ます。
「P ⇒ Q」を使った「真の命題」
  
『「P⇒Q」が「真」』⇔『P⊆Q』
  
  「条件P」に含まれていれば(「Pが真」であれば)
  必ず「条件Q」にも含まれます(「Qも真」となります)。
  P「 の倍数(私は猫娘)ならば」を常に「真」とすると、
    Q「3の倍数(私は猫人間)である」が「真」であるなら「真の命題」
    Q「12の倍数(私は狼人間)である」が「偽」であるなら「偽の命題」
  となります。
「P ⇒ Q」を使った「偽の命題」
  
『「P⇒Q」が「偽」』⇔『!(P⊆Q)』
  
  「条件P」に含まれていても(「Pが真」であっても)
  必ずしも「条件Q」には含まれない(「Qは真」とならない)。
  P「6の倍数(私は猫娘)ならば」を常に「真」とすると、
    Q「8以下の数(私は狼人間)である」が「偽」であるなら「偽の命題」
    Q「2の倍数(猫人間)である」が「真」であるなら「真の命題」
  となります。
「命題」と「条件命題」
  下図では「命題」に「input」する値によって「真偽」が変化します。
    
    命題の「Pが4以上」なら「真」、「Pが3以下」なら「偽」となります。
  例えば
    「3<Pの集合範囲」が「真」となる「条件」を求めなさい
  とした時、
    「P≧4の集合範囲」
  となります。



「十分条件」「必要条件」「必要十分条件」とは
「十分条件」(Qである為にはPであれば十分)
  「P ⇒ Q」が「真の命題」である時、
    PでさえあればQである為には「十分(条件)」です
  と言えます。
  「P ⇒ Q」(PならばQである)が「真」の時、
  「P」を「Qの十分条件」と言う
  「包まれている方のP」が分かれば「十分」
  (「Pで十分 ⇒ Qが必要」、常に「Pで十分 ⇒」の矢印の形となる)
  
  「P猫娘」でさえあれば「Q猫人間」と言われるには十分だ。
  「P 6の倍数」は「Q 3の倍数」に所属する為の「十分条件」である。

「必要条件」(Pである為にはQである事が必要)
  「P ⇒ Q」が「真の命題」である時、
    Pである為にはQである事が「必要(条件)」です
  と言えます。
  「P ⇒ Q」(PならばQである)が「真」の時、
  「Q」を「Pの必要条件」と言う
  「包んでいる方のQ」が「必要」
  (「Pで十分 ⇒ Qが必要」、常に「⇒ Qが必要」の矢印の形となる)
  
  「P猫娘」でいる為には「Q猫人間」である事が絶対必要。
  「P 6の倍数」である為には「Q 3の倍数」への所属が「必要条件」である。

「必要十分条件」
  「必要十分条件」とは以下の状態の事を指します。
    「P ⇒ Q」が「真の命題」
    「Q ⇒ P」が「真の命題」
  このような「必要十分条件」状態の事を
    「P ⇔ Q」と記述し「同値」
  とも言います。


「命題」を「背理法」で「証明」(「仮定 結論」「反例」「 否定 矛盾」)
「命題」の「仮定と結論」
  「命題」が以下のような式の時、
    「P ⇒ Q」(PならばQである)
  「Pを仮定」「Qを結論」と言います。
  (「Pを前件」「Qを後件」と言う事もあります)
    『「P仮定」を元に(使って)「Q結論」へと導く』
    『「P仮定」があって始めて「Q結論」が存在出来る』
    「P私は猫娘(6の倍数)」と「仮定」すると
    「Q私は猫人間(3の倍数)」でもあると「結論」出来る。
  のような関係になります。

「否定と反例」(「!(P⇒Q)」が「真」なら反例)
 「命題P ⇒ Q」を「否定」するとは以下の事を言います。
「命題の否定」となる「!(P⇒Q)」が「真」であれば、
  「(P ⇒ Q)ではない」
  「PであるがQとならない部分がある」
    (Pの一部がQとなる場合と、P全部がQにならない場合があります)
  「Pであるが、Pの全てをQは含まない」(Pが真、Qが偽)
    (Pの一部がQに含まれる場合と、Pの全てがQに含まれない場合があります)
と言う意味です。
「P⇒!Q」は「命題の否定」では無いので注意する事。
  「P⇒ (Qではない)」
  「PであるがQではない」
    (Qではない部分に全てのPがあります)
  「Pであれば、Pの全てをQでない部分が含む」(Pが真、!Qが真)
    (必ず、Qで無い部分に全部のPが含まれます)

 「命題P ⇒ Q」の「反例」を示すとは…
「命題」を「P仮定 ⇒ Q結論」
  「P仮定」が正しいならば「Q結論」も正しい
とした場合、
「命題の否定となる!(P ⇒ Q)」が
  「P仮定」は正しいのに「Q結論」が正しくならない
です。
「否定」に当てはまる例を上げる事が「反例」を示す事となります。

  「命題P ⇒ Q」で、
    「命題の否定となる!(P⇒Q)」が「真」となる例
    「P仮定」は正しいのに「Q結論」が正しくならない例
  を示す事を「反例」を示すと言う事が分かった所で一つの例を挙げてみます。
  「命題の否定となる!(P⇒Q)」とは以下のような事を言います。
  「P私は猫娘(6の倍数)」と「仮定」したが
  「Q私は狼人間(8以下の数)」とは「結論」できない。
  次に「P仮定」は正しいのに「Q結論」が正しくならない例(反例)を示します。
  なぜならば
  「P猫娘(6の倍数)」である「猫人間(12)」は
  「Q狼人間(8以下の数)」ではないからだ。
このように「反例」を1つでも見つけることが出来た場合、
  その元となった「命題」は「証明されない」事が「証明」されます。
  次に、「命題」を「証明」する方法を学んで行きましょう。

「命題」を「背理法」で「証明」する(命題を否定したら矛盾するか?)
  「命題P ⇒ Q」が「真」である事を「証明」するには、
  「背理法」と言われる方法で「否定と矛盾」を使う事で「証明」出来ます。
  「背理法」とは「逆説(否定)」を「矛盾」させる事で「証明」を行う方法です。
  「命題」を「背理法」を使い「証明」してみます。
「命題P⇒Q」
  「PであるならばQに所属している」は「真」
  「P猫娘(6の倍数)」ならば「Q猫人間(3の倍数)」である
「背理法」の手順
1)「命題」を「否定!(P⇒Q)」した「新たな仮定」を立てます。
  「PであるならばQに所属しているとは限らない」は「真」である
  「P猫娘(6の倍数)」ならば「Q猫人間(3の倍数)」とは限らない
2)「新たな仮定」が「矛盾」するか調べます。
  「1)」で立てた「新たな仮定」が「矛盾」していれば
  最初の「命題」は正しいと「証明」された事になります。
  (「矛盾」しないで「反例」が示せた場合、
  「命題」は「証明」されない事になります。)


「背理法」「命題と非命題」




「命題」の「逆 裏 対偶」
「①命題」とした時、
「②命題の逆」「③命題の裏」「④命題の対偶」との関係は下図のようになります。
  
  「命題 逆 裏 対偶」それぞれの「真偽」は
  必ず上記4パターン中のどれかに収まります。  
「P私は猫娘です(6の倍数)」、「Q私は猫人間です(3の倍数)」として、
「①命題」を「真」、「②逆」を「偽」とした時の
「①命題 ②逆 ③裏 ④対偶」を見てみましょう。
①命題「P ⇒ Q」
    『「P猫娘(6の倍数)」ならば「Q猫人間(3の倍数)」である』
  「P猫娘(6の倍数)」は「Q猫人間(3の倍数)」に含まれますので
  これは「真の命題」です。
②逆「Q ⇒ P」
    『「Q猫人間(3の倍数)」ならば「P猫娘(6の倍数)」である』
  「Q猫人間(3の倍数)」は「P猫娘(6の倍数)」以外にも存在しますので、
  これは「偽の命題」です。
③裏「!P ⇒ !Q」
    『「P猫娘(6の倍数)」でないならば「Q猫人間(3の倍数)」ではない』
  「P猫娘(6の倍数)」以外にも「Q猫人間(3の倍数)」は存在しますので、
  これは「偽の命題」です。
④対偶「!Q ⇒ !P」
    『「Q猫人間(3の倍数)」でないならば「P猫娘(6の倍数)」ではない』
  「Q猫人間(3の倍数)」でない範囲は「P猫娘(6の倍数)」でない範囲に含まれるので
  これは「真の命題」です。



「集合記号」と「論理記号」と「命題(逆裏対偶)」の関係


ここでは「集合記号」と「論理記号」と「命題(逆裏対偶)」の関係について理解を深める為、
もう少し掘り下げて考えてみます。




「命題の逆裏対偶」と「論理演算」の関係
まず、
  「①命題」と「④命題の対偶」の「真偽」が常に同じ
  「②命題の逆」と「③命題の裏」の「真偽」が常に同じ
となる事を思い出して下さい。
  
  「!P or Q」で「①命題」と「④命題の対偶」の「真偽」を求められます。
  「P or !Q」で「②命題の逆」と「③命題の裏」の「真偽」を求められます。
何故「!P or Q」と「P or !Q」でそれぞれの「真偽」を求められるのか、
理由を見ていきましょう。

「①命題 と P⇒Q」と「④命題の対偶 と¬Q⇒¬P」の関係(!P or Q)
  「!P or Q」は以下の「条件」により「真偽」が変化します。
  
  「!P or Q」を使えば比較的楽に
  「①命題 と P⇒Q」と「④命題の対偶 と¬Q⇒¬P」を求める事が出来ます。
  
  「①命題」と「④対偶」は常に同値(必要十分条件)「①命題 ⇔ ④対偶」の関係です。

「②命題の逆 Q⇒P」と「③命題の裏 ¬P⇒¬Q」の関係(P or !Q)
  「P or !Q」の「真偽」は以下のように求めます。
  
  「P or !Q」を使えば比較的楽に
  「②命題の逆 Q⇒P」と「③命題の裏 ¬P⇒¬Q」を求める事が出来ます。
  
  「②逆」と「③裏」は常に同値(必要十分条件)「②逆 ⇔ ③裏」の関係です。


「含む(包む)」とは





「含む(包む)」と「論理演算」の関係












「P⇒Q」の考察(論理包含 含意 imp)


何故「P⇒Q」は理解しづらいのか?
「論理記号」で学んだ「P ⇒ Q」はよく使われる「論理記号」の形です。
前述『「命題」の「逆 裏 対偶」』でも当たり前のように使われます。
にもかかわらず深く理解しようとすると混乱し悩まされやすいので
ここでは良く出る2つの疑問について一度考察しておこうと思います。

「P ⇒ Q」は「PならばQである」と読みます。
「ベン図」では
  図入る
のような「エリア(範囲)」で表現されます。
「notP or Q」の「条件」で判断をした場合の答えは以下のようになります。
  図入る

この時、以下の2つの疑問が湧くのです。
疑問1
  「P ⇒ Q」は「PならばQである」
  つまり「Pが成り立てばQも成り立つ」って意味なのに何で
  「Pが成り立たない」時の答えが全て「真」になるんだ?
  (「Pが成り立ってQが成り立たない」時に答えが「偽」になるのも何でだ?)
疑問2
  「P ⇒ Q」は「P ⊃ Q」とも記述できるみたいだけど、
    「P ⊆ Q」QはPの部分集合(Qの中にPが有る)
    「P ⊃ Q」PはQの部分集合(Pの中にQが有る)
  と学んだ。
  これを元にして考えた場合、「P ⊃ Q」は「P ⊆ Q」の間違いではないか?

ごめんなさい執筆中です!!


疑問を解決する為の前知識

「P⊆Q」と「P⊃Q」の考え方
  図入る
  『「P⇒Q」の「真(真の命題)」⇔「P⊆Q」』
    「P⇒Q」の「真(真の命題)」とは、「P⊆Q」と同じ
    「P⊆Q」とは、「P⇒Q」の「真(真の命題)」と同じ

「P⊆Q」「P⇒Q」を「否定」する
  図入る
  「!(P ⊆ Q)」
    「Q狼人間(8以下の数)」の範囲に
    「P猫娘(6の倍数)」の範囲が全て含まれるとは限らない
  「!(P ⇒ Q)」
    「P猫娘(6の倍数)」ならば「Q狼人間(8以下の数)」であるとは限らない

「P⊆Q」「P⇒Q」の「対偶」
  図入る
  「!Q ⊆ !P」
    「P猫娘(6の倍数)」ではない範囲には
    「Q猫人間(3の倍数)」ではない範囲が全て含まれる
  「!Q ⇒ !P」
    「Q猫人間(3の倍数)」でないならば「P猫娘(6の倍数)」ではない

「P⇒Q」と「!P or Q」と「!(P and Q)」




・「P⇒Q」の「真(真の命題)」で「Pが偽」の場合



『「P」は「Q」でもある』と十分言える←「十分条件」
『「P猫娘(6の倍数)」は「Q猫人間(3の倍数)」でもある』




  
  
  


狼人間は
猫人間に全てを含まれていない



疑問1の考察
「P ⇒ Q」は「PならばQである」
  真「P猫娘」であり ⇒ 真「Q猫人間」である 真「猫娘は猫人間だものね」
  真「P猫娘」であり ⇒ 偽「Q猫人間」でない 偽「そんな猫娘は存在しない!」
  偽「P猫娘」でない ⇒ 真「Q猫人間」である 真「猫人間は他にもいるからね」
  偽「P猫娘」でない ⇒ 偽「Q猫人間」でない 真「他にも人や猫や犬がいるからね」



疑問2の考察

「Wiki:論理包含」を元に経緯を書くと、
最初に数学者「ジュゼッペ・ペアノ」さんが
「論理包含imp」を「P ⊃ Q」と記述して発表しました。
この記号「⊃」は、
「部分集合の逆」や「真部分集合の逆」で使われる事のある「⊃」と記号が同じなのですが、
それとは直接の関係が無い物として記号「⊃」を使いました。
その後、数学者「アレン・ハイティング」さんが
「論理包含imp」を「P → Q」と記述するようになり
現在、「P ⇒ Q」や「P → Q」と記述されるようになりました。
って事でまとめると、
  「論理包含imp」では「P ⇒ Q」を「P ⊃ Q」と書いても表記的には正しいのですが、
  それは「集合」で使う「P ⊃ Q」とは違う物として解釈しなさい
という事です。
なんてややこしい!


ちなみに
数学者「ジュゼッペ・ペアノ」さんがなんで最初に「⊃」の記号を使ったのか
の理由は




「証明」としての「P⇒Q」


「P⇒Q」を「論理の組み立て」に使う


トートロジー(恒真命題)
「トートロジー」
「トートロジー」「同じ事を二度言う」
技とはテクニックだ
「Aが真」&かつ「A⇒Bが真」ならば、「Bも真」
「「Aが真」ならば「B真」&かつ「Aが真」」ならば「Bも真
命題の式にすると「((A⇒B)∧A)⇒B

「p or !p」は恒真命題
他にも
「por !p」を「排中律」と呼ぶ場合がある (law of excluded middle)
他にも
「por !p」を「矛盾」と呼ぶ場合がある




「三段論法」

P⇒Q
「ソクラテスは人間である」
Q⇒R
「全ての人間はいつか死ぬ」
P⇒R
「故にソクラテスはいつか死ぬ」

人間x=「ソクラテス」
関数P=「いつか死ぬ」
関数Pに変数「人間x」を(引数として)持たせる
P(x)=「xはいつか死ぬ」
P(「ソクラテス」)=「ソクラテスはいつか死ぬ」



「推論法 帰納法と演繹(エンエキ)法」

「帰納」(推論)
「結論」に「たぶん、おそらく」が付く
「結論」が確実に正しいとは保証されない


「数学的帰納法」(演繹)


三段論法も演繹法?

ごめんなさい執筆中です


「一階述語論理」(∀∃)


「P⇒Q」を「論理の組み立て」に使う

「∀x : P(x)」
「∃ x: P(x)」







C# 統計・微分積分・線形代数への道
次へ→http://1studying.blogspot.jp/2017/08/senkei-index.html#kuw06





以下のサイトを参考にしました。


wiki:集合
https://ja.wikipedia.org/wiki/%E9%9B%86%E5%90%88

集合と要素[わかりやすい説明と記号の書き方・練習問題]
http://manapedia.jp/text/2478

【プログラマーのための数学】集合と要素
http://qiita.com/Esfahan/items/5e0246ba511d5e4a132d

有理数と無理数とはなんだろう??
http://media.qikeru.me/rational-irrational-number/

【集合】必ず覚えなくてはならない6つの記号&3つの法則
https://juken-mikata.net/how-to/mathematics/shugou.html

【辞書】集合の要素の書き方
http://wakarimath.net/explanation/q.php?pID=E00040

単語記事: 命題
http://dic.nicovideo.jp/a/%E5%91%BD%E9%A1%8C

七誌の開発日記
論理包含の定義に関する違和感について
http://7shi.hateblo.jp/entry/2016/07/31/143604

wiki:論理包含
https://ja.wikipedia.org/wiki/%E8%AB%96%E7%90%86%E5%8C%85%E5%90%AB

命題(逆・裏・対偶・真偽)を図説で即理解!
https://juken-mikata.net/how-to/mathematics/meidai.html

逆,裏,対偶
http://www.geisya.or.jp/~mwm48961/kou3/gyaku.htm

論理演算について
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q13103965978
数学(必要十分条件)
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1444478239?__ysp=6KuW55CG5YyF5ZCr

論理記号
http://www.ne.jp/asahi/search-center/internationalrelation/mathWeb/meidai/meidai.htm

数学の論理
http://www004.upp.so-net.ne.jp/s_honma/logic/logic.htm


Wiki:論理記号の一覧
https://ja.wikipedia.org/wiki/%E8%AB%96%E7%90%86%E8%A8%98%E5%8F%B7%E3%81%AE%E4%B8%80%E8%A6%A7

Wiki数学記号の表
https://ja.wikipedia.org/wiki/%E6%95%B0%E5%AD%A6%E8%A8%98%E5%8F%B7%E3%81%AE%E8%A1%A8

数式記号の読み方・表し方
http://izumi-math.jp/sanae/report/suusiki/suusiki.htm




0 件のコメント:

コメントを投稿

↑Topへ