Step
*
1
3
1
1
1
1
of Lemma
FOL-proveable-evidence
1. hyps : mFOL() List
2. var : ℤ
3. (∀h∈hyps.¬(var ∈ mFOL-freevars(h)))
4. body : mFOL()
5. x : ℤ
6. FOL-sequent-evidence{i:l}(<hyps, body[var/x]>)
7. ¬(var ∈ mFOL-freevars(∀x;body)))
8. [Dom] : Type
9. [S] : FOStruct+{i:l}(Dom)
10. a : FOAssignment(mFOL-sequent-freevars(<hyps, ∀x;body)>),Dom)
⊢ tuple-type(FOL-hyps-meaning(Dom;S;a;hyps)) ⟶ ((∀v:Dom. Dom,S,a[x := v] +|= FOL-abstract(body)) ⋃ (S "false" []))
BY
{ (Auto THEN RenameVar `z' 2) }
1
1. hyps : mFOL() List
2. z : ℤ
3. (∀h∈hyps.¬(z ∈ mFOL-freevars(h)))
4. body : mFOL()
5. x : ℤ
6. FOL-sequent-evidence{i:l}(<hyps, body[z/x]>)
7. ¬(z ∈ mFOL-freevars(∀x;body)))
8. [Dom] : Type
9. [S] : FOStruct+{i:l}(Dom)
10. a : FOAssignment(mFOL-sequent-freevars(<hyps, ∀x;body)>),Dom)
11. tuple-type(FOL-hyps-meaning(Dom;S;a;hyps))
⊢ (∀v:Dom. Dom,S,a[x := v] +|= FOL-abstract(body)) ⋃ (S "false" [])
Latex:
Latex:
1.  hyps  :  mFOL()  List
2.  var  :  \mBbbZ{}
3.  (\mforall{}h\mmember{}hyps.\mneg{}(var  \mmember{}  mFOL-freevars(h)))
4.  body  :  mFOL()
5.  x  :  \mBbbZ{}
6.  FOL-sequent-evidence\{i:l\}(<hyps,  body[var/x]>)
7.  \mneg{}(var  \mmember{}  mFOL-freevars(\mforall{}x;body)))
8.  [Dom]  :  Type
9.  [S]  :  FOStruct+\{i:l\}(Dom)
10.  a  :  FOAssignment(mFOL-sequent-freevars(<hyps,  \mforall{}x;body)>),Dom)
\mvdash{}  tuple-type(FOL-hyps-meaning(Dom;S;a;hyps))
{}\mrightarrow{}  ((\mforall{}v:Dom.  Dom,S,a[x  :=  v]  +|=  FOL-abstract(body))  \mcup{}  (S  "false"  []))
By
Latex:
(Auto  THEN  RenameVar  `z'  2)
Home
Index