logic/readme.md
2025-08-15 14:21:23 +00:00

1.1 KiB

statement logic !!!

see lib/Logic/readme.md for more details about what's here

requirements

  • a haskell compiler e.g. GHC
  • cabal the haskell build system if you want
  • containers this is the one package i depend on and i'm using cabal to handle it properly, i apologize in advance

compile it

make

or look in Makefile

or

cabal build

I guess...

usage

only this kind of this has been implemented in the main function so far:

echo '((p->q)<->(!q->!p))' | ./logic

output

Iff (Implies (Atom "p") (Atom "q")) (Implies (Not (Atom "q")) (Not (Atom "p")))
Tautology
\begin{tabular}{cc||cccccc|c|cccccccc}
$p$ & $q$ & $($ & $($ & $p$ & $\to $ & $q$ & $)$ & $\leftrightarrow $ & $($ & $\neg $ & $q$ & $\to $ & $\neg $ & $p$ & $)$ & $)$ \\
\hline
0 & 0 &  &  & 0 & 1 & 0 &  & \textbf 1 &  & 1 & 0 & 1 & 1 & 0 &  & \\
0 & 1 &  &  & 1 & 0 & 0 &  & \textbf 1 &  & 1 & 0 & 0 & 0 & 1 &  & \\
1 & 0 &  &  & 0 & 1 & 1 &  & \textbf 1 &  & 0 & 1 & 1 & 1 & 0 &  & \\
1 & 1 &  &  & 1 & 1 & 1 &  & \textbf 1 &  & 0 & 1 & 1 & 0 & 1 &  & \\
\end{tabular}