Step
*
1
8
2
1
1
1
of Lemma
FOL-proveable-evidence
1. hyps : mFOL() List
2. concl : mFOL()
3. hypnum : ℕ
4. hypnum < ||hyps||
5. ↑mFOconnect?(hyps[hypnum])
6. mFOconnect-knd(hyps[hypnum]) = "and" ∈ Atom
7. FOL-sequent-evidence{i:l}(<[mFOconnect-left(hyps[hypnum]); [mFOconnect-right(hyps[hypnum]) / hyps]], concl>)
8. hyps[hypnum] = mFOconnect-left(hyps[hypnum]) ∧ mFOconnect-right(hyps[hypnum]) ∈ mFOL()
9. mFOL-freevars(mFOconnect-left(hyps[hypnum])) ⊆ mFOL-freevars(hyps[hypnum])
10. FOL-sequent-evidence{i:l}(<[mFOconnect-right(hyps[hypnum]) / hyps], concl>)
11. Dom : Type
12. S : FOStruct+{i:l}(Dom)
13. a : FOAssignment(mFOL-sequent-freevars(<hyps, mFOconnect-right(hyps[hypnum])>),Dom)
14. Dom,S,a +|= FOL-abstract(hyps[hypnum])
15. z : mFOL()
16. z = mFOconnect-left(hyps[hypnum]) ∧ mFOconnect-right(hyps[hypnum]) ∈ mFOL()
17. a = a ∈ FOAssignment(mFOL-sequent-freevars(<hyps, mFOconnect-right(hyps[hypnum])>),Dom)
⊢ mFOL-freevars(z) ⊆ mFOL-sequent-freevars(<hyps, mFOconnect-right(hyps[hypnum])>)
BY
{ (HypSubst' (-2) 0 THENA Auto) }
1
1. hyps : mFOL() List
2. concl : mFOL()
3. hypnum : ℕ
4. hypnum < ||hyps||
5. ↑mFOconnect?(hyps[hypnum])
6. mFOconnect-knd(hyps[hypnum]) = "and" ∈ Atom
7. FOL-sequent-evidence{i:l}(<[mFOconnect-left(hyps[hypnum]); [mFOconnect-right(hyps[hypnum]) / hyps]], concl>)
8. hyps[hypnum] = mFOconnect-left(hyps[hypnum]) ∧ mFOconnect-right(hyps[hypnum]) ∈ mFOL()
9. mFOL-freevars(mFOconnect-left(hyps[hypnum])) ⊆ mFOL-freevars(hyps[hypnum])
10. FOL-sequent-evidence{i:l}(<[mFOconnect-right(hyps[hypnum]) / hyps], concl>)
11. Dom : Type
12. S : FOStruct+{i:l}(Dom)
13. a : FOAssignment(mFOL-sequent-freevars(<hyps, mFOconnect-right(hyps[hypnum])>),Dom)
14. Dom,S,a +|= FOL-abstract(hyps[hypnum])
15. z : mFOL()
16. z = mFOconnect-left(hyps[hypnum]) ∧ mFOconnect-right(hyps[hypnum]) ∈ mFOL()
17. a = a ∈ FOAssignment(mFOL-sequent-freevars(<hyps, mFOconnect-right(hyps[hypnum])>),Dom)
⊢ mFOL-freevars(mFOconnect-left(hyps[hypnum]) ∧ mFOconnect-right(hyps[hypnum]))
  ⊆ mFOL-sequent-freevars(<hyps, mFOconnect-right(hyps[hypnum])>)
Latex:
Latex:
1.  hyps  :  mFOL()  List
2.  concl  :  mFOL()
3.  hypnum  :  \mBbbN{}
4.  hypnum  <  ||hyps||
5.  \muparrow{}mFOconnect?(hyps[hypnum])
6.  mFOconnect-knd(hyps[hypnum])  =  "and"
7.  FOL-sequent-evidence\{i:l\}(<[mFOconnect-left(hyps[hypnum]);
                                                              [mFOconnect-right(hyps[hypnum])  /  hyps]]
                                                          ,  concl
                                                          >)
8.  hyps[hypnum]  =  mFOconnect-left(hyps[hypnum])  \mwedge{}  mFOconnect-right(hyps[hypnum])
9.  mFOL-freevars(mFOconnect-left(hyps[hypnum]))  \msubseteq{}  mFOL-freevars(hyps[hypnum])
10.  FOL-sequent-evidence\{i:l\}(<[mFOconnect-right(hyps[hypnum])  /  hyps],  concl>)
11.  Dom  :  Type
12.  S  :  FOStruct+\{i:l\}(Dom)
13.  a  :  FOAssignment(mFOL-sequent-freevars(<hyps,  mFOconnect-right(hyps[hypnum])>),Dom)
14.  Dom,S,a  +|=  FOL-abstract(hyps[hypnum])
15.  z  :  mFOL()
16.  z  =  mFOconnect-left(hyps[hypnum])  \mwedge{}  mFOconnect-right(hyps[hypnum])
17.  a  =  a
\mvdash{}  mFOL-freevars(z)  \msubseteq{}  mFOL-sequent-freevars(<hyps,  mFOconnect-right(hyps[hypnum])>)
By
Latex:
(HypSubst'  (-2)  0  THENA  Auto)
Home
Index