はてなキーワード: 伝統的論理学とは
https://qiita.com/saetegaljewp/items/60a3580d8f08a53679c6
センスのあるなしではなく、
誤って語っていることを、誤りだと指摘されているだけです。
存在措定が問題になるのは「会話の含意」「伝統的論理学」の文脈においてであって、
現代の論理学、数理論理学においては、存在措定は問題になりません。
伝統的論理学の三段論法を説明します。(以下の例は存在措定してる例)
1.すべてのSはMである
2.すべてのPはSである
3.あるPはMである
このとき、Pであるような何かが存在しない限り、1と2から3を導くことができません。
したがって伝統的論理学は隠れた前提として「存在措定」が成されている、と指摘されているわけです。
だからこそ、空集合を前提しても、命題が真であることを帰結できるのです。
そして、ここでセンス云々問われている問題が前提している論理の体系は、現代論理学であって、伝統的論理学ではありません。
なので、存在措定の話はしないでください。
それは伝統的論理学の文脈の話であって、もともとの話が前提してる数理論理学とは直接的関係を持たない話題です。
しかし、命題にはP(x)に対する前提が隠蔽されており、この「P(x)なものが存在する」という隠れた前提(これを存在措定と言います)を勝手に補って読んでいるのです。
存在措定してるのは、「前件が空集合ならfalseが返されるべきだ」と主張してる側であることを理解してください。
なぜなら、「存在していないものに命題Pを適用できないはずだ」という主張は、まさに、「集合に対する存在の措定」を前提しているからです。
trueを返すべきと主張する側は、そのような「集合に対する存在措定」を前提していないからこそ、trueが返るべきだという話をしています。
また、プログラミングにおいては、論理の体系を自然言語に近づけるべきだとは、(私は)考えません。
そして、自然言語のあいまいさを排除すれば、「AならばB」という文の意味は論理包含となります。