Example #1
0
from proveit.basiclogic import FALSE, Equals, Implies
from proveit.common import A

# FALSE = A
FeqA = Equals(FALSE, A)
# FALSE assumen FALSE=A and A
FeqA.deriveReversed().deriveContradiction().proven({FeqA, A})
# forall_{A} (FALSE=A) => [A => FALSE]
Implies(FeqA, Implies(A, FALSE)).generalize([A]).qed(__file__)
Example #2
0
from proveit.basiclogic import Implies, Equals, TRUE
from proveit.common import A

hypothesis = Equals(TRUE, A)
Implies(hypothesis,
        hypothesis.deriveReversed().deriveViaBooleanEquality()).generalize(
            A).qed(__file__)
Example #3
0
from proveit.basiclogic import Implies, Equals, FALSE
from proveit.common import A

# FeqA := (F=A)
FeqA = Equals(FALSE, A)
# Not(A) assuming FeqA
notA = FeqA.deriveReversed().deriveViaBooleanEquality().proven({FeqA})
Implies(FeqA, notA).generalize(A).qed(__file__)