Step
*
1
3
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)) ⟶ (FOL-abstract(∀x;body)) Dom S a)
BY
{ (RW (AddrC [2] (UnfoldC `FOL-abstract`)) 0 THEN Reduce 0 THEN Fold `FOL-abstract` 0 THEN RepUR ``FOQuantifier+`` 0) }
1
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" []))
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{}  (FOL-abstract(\mforall{}x;body))  Dom  S  a)
By
Latex:
(RW  (AddrC  [2]  (UnfoldC  `FOL-abstract`))  0
  THEN  Reduce  0
  THEN  Fold  `FOL-abstract`  0
  THEN  RepUR  ``FOQuantifier+``  0)
Home
Index