MatchingLogic.DoubleCover #
Definition 10. The double cover N := C × {0,1}.
Definition 10 sits under the standing assumptions ∅ ≠ C ≠ M and C backward
closed, and picks star ∈ M \ C. cover and proj below do NOT carry those
assumptions in their own signatures -- only C.Nonempty, which the carrier
needs. Backward closure, and star ∉ C, are hypotheses of Lemma 11 instead.
So cover and proj are well formed outside the paper's domain, where they
mean nothing; every theorem about them restores the assumptions.
Equations
- MatchingLogic.cover M C hne = { carrier := ↑C × Bool, nonempty := ⋯, interp := MatchingLogic.coverInterp M C }
Instances For
Lemma 11 (two copies), in membership form. Equivalent to the display in
the paper (see two_copies_set); this form is the one to prove by induction.
Lemma 11 (two copies), in the paper's displayed set form:
ν(ψ)_N = (π₀(ν)(ψ)_M ∩ C) × {0} ∪ (π₁(ν)(ψ)_M ∩ C) × {1}.
The ∩ C is absorbed by the subtype ↥C.