// To run the test please issue:
// cargo run ./test.txt
// Not L-True
// (p -> (!p & r))
// !p -> q
// L-True
// p | q | !p
// a -> b -> c -> d
// L-True
// ((p & q) -> p)
// Contingent
// ((p | q) -> (r -> p))
// L-True
// p -> (q -> r | p)
// L-True
// p & q -> p
// L-True
// (p -> q) -> ((q -> r) -> (p -> r))
// Contingent
// !((!p | !q) & (p <-> !r) -> !(q & r))
// Contingent
// p & q <-> !(p & q) | !q
// p & !p
// p | !p
// (!p | !q) & (p <-> !r) -> !(q & r)
// Contingent
// !(p & q <-> !(p & q) | !q)
// L-True - Modus Ponens
// p & (p -> q) -> q
// L-True - Disjunctive syllogism
// (p | q) & !p -> q
// Contingent
// q & (p -> q) -> p
// L-True
p -> q -> (p & r -> p)