計算機科学のブログ

命題論理 論理式、真理値表、恒真、恒偽、充足可能

情報系のための離散数学 (猪股 俊光 (著)、南野 謙一 (著)、共立出版 )の第1章(命題論理)、章末問題1.5の解答を求めてみる。

a)

p

q

p q

p q

(p q) (p q)

T

T

T

T

T

T

F

F

F

T

F

T

F

T

T

F

F

F

T

T

b)

p

q

¬p

¬p q

p q

¬(p q)

(p q) (¬(p q))

T

T

F

T

T

F

F

T

F

F

T

T

F

F

F

T

T

F

T

F

F

F

F

T

F

F

T

F

c)

p

q

r

¬p

¬p q

p r

(p r) q

(¬p q) ((p r) q)

T

T

T

F

F

T

T

T

T

T

F

F

F

F

T

T

T

F

T

F

F

T

T

T

T

F

F

F

F

F

F

T

F

T

T

T

T

F

T

T

F

T

F

T

T

F

T

T

F

F

T

T

F

F

F

T

F

F

F

T

F

F

F

T

a、cが恒真。bが恒偽。充足可能なのはaとc。

コード(Wolfram Language)

blns = {True, False}
Output
Flatten[
    Table[
        Table[Implies[p && q, Implies[p, q]], {q, blns}],
        {p, blns}
    ],
    1
]
Output
Flatten[
    Table[
        Table[
            Implies[!p, q] && !(p || q),
            {q, blns}
        ],
        {p, blns}
    ],
    1
]
Output
Flatten[
    Table[
        Table[
            Table[
                Implies[!p && q, (p && r) || q],
                {r, blns}
            ],
            {q, blns}
        ],
        {p, blns}
    ],
    2
]
Output