Step
*
1
2
of Lemma
mFOL-proveable-evidence
1. hyps : mFOL() List@i
2. concl : mFOL()@i
3. subgoals : mFOL-sequent() List@i
4. subproofs : ℕ||subgoals|| ─→ proof-tree(mFOL-sequent();mFOLRule();λsr.mFOLeffect(sr))@i'
5. ∀b:ℕ||subgoals||. ∀s:mFOL-sequent().
(correct_proof(mFOL-sequent();λsr.mFOLeffect(sr);s;subproofs b)
⇒ mFOL-sequent-evidence(s))@i'
6. ∀i:ℕ||subgoals||. correct_proof(mFOL-sequent();λsr.mFOLeffect(sr);subgoals[i];subproofs i)@i'
7. ↑mFOconnect?(concl)
8. mFOconnect-knd(concl) = "imp" ∈ Atom
9. [<[mFOconnect-left(concl) / hyps], mFOconnect-right(concl)>] = subgoals ∈ (mFOL-sequent() List)
10. mFOL-sequent-evidence(<[mFOconnect-left(concl) / hyps], mFOconnect-right(concl)>)
⊢ mFOL-sequent-evidence(<hyps, concl>)
BY
{ ((Subst ⌈concl = mFOconnect-left(concl)
⇒ mFOconnect-right(concl) ∈ mFOL()⌉ 0⋅
THENA (Auto
THEN MoveToConcl 2
THEN BLemmaUp `mFOL-induction`⋅
THEN Reduce 0
THEN Auto
THEN Try ((Fold `AbstractFOFormula` 0 THEN Auto))
THEN Unfold `mFOL-sequent` 0
THEN Auto)
)
THEN D 0
THEN Auto
THEN (Assert Dom,S,a |= mFOL-sequent-abstract(<[mFOconnect-left(concl) / hyps], mFOconnect-right(concl)>) BY
(Auto THEN All (RepUR ``mFOL-sequent-evidence mFO-uniform-evidence``) THEN BackThruSomeHyp))
THEN Thin (-5)
THEN RenameVar `g' (-1)
THEN (All (RepUR ``mFOL-sequent-abstract FOSatWith``)
THEN RepUR ``mFOL-abstract`` 0
THEN Fold `mFOL-abstract` 0
THEN RepUR ``FOConnective FOSatWith let`` 0
THEN All (Fold `FOSatWith`))⋅)⋅ }
1
1. hyps : mFOL() List@i
2. concl : mFOL()@i
3. subgoals : mFOL-sequent() List@i
4. subproofs : ℕ||subgoals|| ─→ proof-tree(mFOL-sequent();mFOLRule();λsr.mFOLeffect(sr))@i'
5. ∀b:ℕ||subgoals||. ∀s:mFOL-sequent().
(correct_proof(mFOL-sequent();λsr.mFOLeffect(sr);s;subproofs b)
⇒ mFOL-sequent-evidence(s))@i'
6. ∀i:ℕ||subgoals||. correct_proof(mFOL-sequent();λsr.mFOLeffect(sr);subgoals[i];subproofs i)@i'
7. ↑mFOconnect?(concl)
8. mFOconnect-knd(concl) = "imp" ∈ Atom
9. [<[mFOconnect-left(concl) / hyps], mFOconnect-right(concl)>] = subgoals ∈ (mFOL-sequent() List)
10. [Dom] : Type
11. [S] : FOStruct(Dom)
12. a : FOAssignment(Dom)@i
13. g : if null(map(λh.Dom,S,a |= mFOL-abstract(h);hyps))
then Dom,S,a |= mFOL-abstract(mFOconnect-left(concl))
else Dom,S,a |= mFOL-abstract(mFOconnect-left(concl)) × tuple-type(map(λh.Dom,S,a |= mFOL-abstract(h);hyps))
fi ─→ Dom,S,a |= mFOL-abstract(mFOconnect-right(concl))
⊢ tuple-type(map(λh.Dom,S,a |= mFOL-abstract(h);hyps)) ─→ (Dom,S,a |= mFOL-abstract(mFOconnect-left(concl))
⇒ Dom,S,a |= mFOL-abstract(mFOconnect-right(concl)))
Latex:
1. hyps : mFOL() List@i
2. concl : mFOL()@i
3. subgoals : mFOL-sequent() List@i
4. subproofs : \mBbbN{}||subgoals|| {}\mrightarrow{} proof-tree(mFOL-sequent();mFOLRule();\mlambda{}sr.mFOLeffect(sr))@i'
5. \mforall{}b:\mBbbN{}||subgoals||. \mforall{}s:mFOL-sequent().
(correct\_proof(mFOL-sequent();\mlambda{}sr.mFOLeffect(sr);s;subproofs b) {}\mRightarrow{} mFOL-sequent-evidence(s))@i'
6. \mforall{}i:\mBbbN{}||subgoals||. correct\_proof(mFOL-sequent();\mlambda{}sr.mFOLeffect(sr);subgoals[i];subproofs i)@i'
7. \muparrow{}mFOconnect?(concl)
8. mFOconnect-knd(concl) = "imp"
9. [<[mFOconnect-left(concl) / hyps], mFOconnect-right(concl)>] = subgoals
10. mFOL-sequent-evidence(<[mFOconnect-left(concl) / hyps], mFOconnect-right(concl)>)
\mvdash{} mFOL-sequent-evidence(<hyps, concl>)
By
((Subst \mkleeneopen{}concl = mFOconnect-left(concl) {}\mRightarrow{} mFOconnect-right(concl)\mkleeneclose{} 0\mcdot{}
THENA (Auto
THEN MoveToConcl 2
THEN BLemmaUp `mFOL-induction`\mcdot{}
THEN Reduce 0
THEN Auto
THEN Try ((Fold `AbstractFOFormula` 0 THEN Auto))
THEN Unfold `mFOL-sequent` 0
THEN Auto)
)
THEN D 0
THEN Auto
THEN (Assert Dom,S,a |= mFOL-sequent-abstract(<[mFOconnect-left(concl) / hyps]
, mFOconnect-right(concl)
>) BY
(Auto
THEN All (RepUR ``mFOL-sequent-evidence mFO-uniform-evidence``)
THEN BackThruSomeHyp))
THEN Thin (-5)
THEN RenameVar `g' (-1)
THEN (All (RepUR ``mFOL-sequent-abstract FOSatWith``)
THEN RepUR ``mFOL-abstract`` 0
THEN Fold `mFOL-abstract` 0
THEN RepUR ``FOConnective FOSatWith let`` 0
THEN All (Fold `FOSatWith`))\mcdot{})\mcdot{}
Home
Index