論理式処理系を途中まで書きました
今日, 院試の勉強をしていて, あまりにも何もかもがわからなくて, 何故か論理式処理系を書いていました.
途中でよく考えたらCNFが元の真理値と等しいかQuickCheckで検証をする用途にパーサーを書く必要は無いと気が付きました.
中途半端なものですが, これ以上書き足す予定が無いので公開します.
未来にparsecの参考になるかもしれない.
以下のように使えます.
λ> execPropForm "a -> !b" [("a", True), ("b", False)]
True