本郷学園マイコン部アドカレ12/19の記事

# ちゃんと考えると面白いパラドックスの仕組み

## 始めに
何書いてもいいよと次期部長さんが仰っていたので参加させていただいた訳ですが、前の方たちがちゃんとマイコン部している状況に危機感を覚えております。ですのでここでちょっとズレた事書いて、まだ参加してない人が記事を作る後押しになるような環境作りをさせて頂きたいと思います。~~僕もやったんだから皆書け~~


## 本記事について
本記事は、パラドックスと呼ばれる事象の内、数理論理学と言われるような分野を用いてきちんと考えていこう！という趣旨の文...**でした。** しかし、記事を書いていく内にたかが1記事に解説出来るレベルを超えてしまっているという事に気づきました。なので、**論理についての紹介のみとさせていただきます。**
もし万が一この記事が好評であれば、続きを書く事を約束致します。~~許してください何でもしますから~~

プログラミングが得意な皆さんが見慣れた論理積や論理和といった考え方が出てくるので、比較的読みやすい（簡単）な内容となっているかもしれませんがご了承ください。

この文は普段見慣れない単語や記号の意味について出来るだけ詳しく書いていきます。ですが先ほどの論理和の例のように、読み手が知っている事柄も多く出てくる事かと思います。それについては飛ばしていただいて構いません。



## パラドックスについて
パラドックスは論理的に矛盾する現象や命題を指し、直感と合わない状況を示す概念の事を言います。パラドックスのもたらす状況は論理的に解決が難しく、新たな理論の構築を促す要素を持ちます。（本文で扱うものとは趣旨がズレますが、**シュレディンガーの猫**もパラドックスの1つです）

## 論理について

論理学は論理的な推論や議論の原則を研究する学問で、命題や論理構造を分析し、妥当性や矛盾を明らかにします。形式記号を用いる事で、論理学は論理的思考の基盤を提供し、哲学や数学などに深く関わっています。

以下では、論理学で用いられる論理記号をプログラミングに慣れている皆さまにも分かりやすいように簡単に述べて行きます。
### 集合
集合って何ぞ？という方に説明すると、**集合は数学的性質を持つものなら何でも入る袋のようなもの**です。
今回はあまり取り扱いませんが(趣旨と違うので)、興味がある方は、この内容を書くきっかけとなったtoby氏の*琴葉姉妹の数学キソ論*をご覧ください。
https://www.nicovideo.jp/user/16564546/mylist/60751437?ref=pc_watch_description

以下に今回用いる集合の記号を表します。
1. ∈　元
   
    P ∈ Q(尚、以下のPとQは命題である。)は、Pが、Qの集合に属するという事を表します。・・・*1
    
    (例)P ∈ **R** は、Pという集合が、実数である事を示しています。＊**R**はreal number の略

    *1 **本当はこのような定義は全く持って無い。** ←これについて興味を持った方は、先ほども述べたtoby氏の *琴葉姉妹の数学キソ論*4講をご覧ください。
https://www.nicovideo.jp/watch/sm32621311
### 命題と条件

・**命題** ：命題とは、正しいか正しくないか（真であるか偽であるか）が明確に決まる文や式のことを言います。

(例)「太陽は明るい。」　太陽を見て暗いと判断する人はいないです。より、この文は真であると分かります。尚、このような自明な命題以外にも、後に述べる**条件**のようなものが存在します。

・**条件** ：条件は、数値や結果を代入するまで真偽が分からないが、それを入れると真偽がはっきりする文の事を言います。（その特性から高校数学では、条件を命題の一種であると捉えています）私達が普段学校で解いている数学の問題は、条件の考え方を数多く取り入れています。

（例）「X・Y＝16　(X,Yは実数)　・・・①」これに「X=4,Y=4」を代入すると、真であると分かります。そして、①を満たすようなＸ，Ｙを沢山集めて線を引くと、以下の実線のようなグラフが完成します。

![main-qimg-8df0e81783f3981394cff752e22af1d9-lq.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3623089/8ad22094-f25f-ad20-14de-17e2ab1fb984.jpeg)


我々が数学の問題を解いている時に数多く目にする図形を図示する問題が、**条件の考え方**を用いて作られている事を納得して頂けたら幸いです。

### 論理記号

1. ∨　**論理和の事**です。(尚、以下のPとQは命題である。)
    
 ![Venn-Diagram-OR.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3623089/fa2361b9-56ed-d1e2-64ef-084ab5ff84c8.png)


2. ∧  **論理積の事**です。(尚、以下のPとQは命題である。)

![Venn-Diagram-AND.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3623089/8557f74b-c151-3c95-41f6-627101977175.png)


3. ¬　**否定を表します**。(尚、以下のPとQは命題である。)
   
![Venn-Diagram-NOT.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3623089/2d92d0eb-3c27-24e6-ba50-5fb530e0ea86.png)


4. ⇒　**日本語で言うところのならば**を表します。(尚、以下のPとQは命題である。)

![Venn-Diagram-Implication.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3623089/bf7da8d0-d914-6425-794b-e62c1b312026.png)


 尚、この⇒については直感的に理解しづらいので詳しく解説させていただきます。表を用いた方が直感的に理解しやすいと思うので、以下の真理表を見てください。⇒の特徴として、命題P（左側）が偽である時の事については右がどんな命題であれ成り立つというものがあります。

 （例）　父親「試験に合格したならば、高級半田ごてを買ってあげる。」
 
 この文において、P（試験に合格するか？）⇒ Q(高級半田ごてを買ってあげるか？)という約束が成立しています。
   
①：Pが真であるにも関わらずQが満たされなかった場合は、父親が約束を果たしていないので、**偽**となります。

②：Pが偽であるにも関わらずQが満たされなかった場合は、**父親は、試験に合格しなかった時の事について全く約束をしていない**ので、**真**となります。

![スクリーンショット 2023-12-19 213641.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3623089/37c6fa4e-24fb-dc3d-28b3-a4f7d68004a5.png)


5. ⇔　**同値記号**　

同値記号とは、前述した⇒を双方で満たしている　つまり、**(P⇒Q ∧ Q⇒P)**の事です。これを同値性を満たしていると言います。数学１の問題で頻出の **必要十分条件** は即ち同値性の事を示しています。そして、同値性を変えずに論理式を変形する事を **同値変形** といい、私達が数学の問題を解くのは同値変形をしているのとほぼ同義です。

    コラム：∧と∨について　
    数学の答案でよく、X＝-3,7　といったように
    記述する事があるが、この,は∨と同義。
    また、点の座標を(2,-8)といったように記述する事があるが、この,は∧と同義。
    これは、この二つの記号双方の略し方が同じ,を用いている事から生じています。
    普段私達中高生が見慣れない記号達を、私達は気づかない間に使って来ていた...ってコト！？

6. ∃ **存在記号**
   
存在記号とは、**「∨」をいっぱい繋げたものです。** ちゃんとした言葉で説明するなら、ある定められた数の取りうる範囲の中で、**1つでも後述する命題を満たしていれば**真となる物の事を言います。（自分でも何書いてるか分からなくなってきたので例を用いて説明します。）

(例)「ある地域で行われたマラソン大会で、50kmを完走出来た選手が1人でも存在するならば、彼を称える宴会を開く。」

⇔

「∃x∈P,y⇒z」　(尚、Pはマラソン大会の参加者全員　xはある1人の参加者　yはxの条件：xが50kmを完走出来たか　zは命題:彼を称える宴会を開く　を示している)

要は、Pという集合に属しているxのどれでもいいよ～というような優しい事を言っています。

1. ∀ **全称記号**

前述した∃とは対照的に存在記号とは、**「∧」をいっぱい繋げたものです。** ちゃんとした言葉で説明するなら、ある定められた数の取りうる範囲の中で、**全てが後述する命題を満たしていれば**真となる物の事を言います。（同じような例を用いて説明します。）

(例)「ある地域で行われたマラソン大会で、全員が50kmを完走出来たならば、彼らを称える宴会を開く。」

⇔

「∀x∈P,y⇒z」　(尚、Pはマラソン大会の参加者全員　xはある1人の参加者　yはxの条件：xが50kmを完走出来たか　zは命題:彼らを称える宴会を開く　を示している)

要は、Pという集合に属しているx全てが満たさなければ駄目だぞという厳しい事を言っています。

## 終わりに

書きたいことの1/20も書けていませんが、いかがだったでしょうか。同値変形は、受験数学においてとても大事な考え方であると僕は考えています。何故教育課程から外れているのでしょうね。

この文は、元々書きたかった文とはかけ離れてしまいましたが、toby氏の *琴葉姉妹の数学キソ論*の補講となるような記事を目指して作りました。彼の動画はとても初学者に分かりやすいものとなっていますが、論理についての説明が少ししか無い（彼は作るつもりであったが作者失踪済みである）のです。ですので、彼の動画を見て分からなかった記号についての理解への一助となれば幸いです。

Q.内容が数学同好会っぽいね。

A.論理積と論理和がプログラムで出てくるし行けるか...？という心境で書きました。
## 参考文献
琴葉姉妹の数学キソ論
https://www.nicovideo.jp/user/16564546/mylist/60751437?ref=pc_watch_description

次は、@yosshi9990　さんの
bitの基本 bit全探索~bitDP　です。