§ You could have invented Sequents
- Key idea: define a notation called
Γ => Δ iff the conjunction of sentences in gamma implies the disjunction of terms in delta. - Why would anybody do this? isn't this weird?
- It's because we first note what we need to think about consequence, validity, and unsatisfiability.
-
d1 is a consequence of Γ iff g1 /\ g2 .. /\ gn => d1 -
d1 is valid iff empty => d1, or written differently, 0 => {d1}. -
Γ is unsatisfiable iff g1 /\ ... /\ gn => False, or written differently, Γ => 0 - Thus, see that on the RHS, we need a set with 0 or 1 inhabitant. We can think of this as
Maybe, smooshed together with \/, since we want the empty set to represent False. - Recall that haskell teaches us to replace failure with a list of successes!
- Thus we should use
Γ => Δ where on the RHS, we have a list that is smooshed together by or ( \/)! - Great, we have successfully invented sequents.