Step * 2 1 of Lemma alpha-avoid-binders-disjoint


1. opr Type
2. varname() List
3. ¬(nullvar() ∈ L)
4. term(opr)
5. {v:varname()| (v ∈ all-vars(t))} 
6. ((alist-map(VarDeq;alpha-rename-alist(t;L)) x) nullvar() ∈ varname())  (x nullvar() ∈ varname())
7. x1 varname()
8. apply-alist(VarDeq;alpha-rename-alist(t;L);x) (inl x1) ∈ (varname()?)
⊢ ¬(x1 ∈ L)
BY
((FLemma `apply-alist-inl` [-1] THENA Auto)
   THEN InstLemma `alpha-rename-alist-property` [⌜opr⌝;⌜t⌝;⌜L⌝]⋅
   THEN Auto
   THEN InstHyp [⌜x⌝;⌜x1⌝(-2)⋅
   THEN Auto) }


Latex:


Latex:

1.  opr  :  Type
2.  L  :  varname()  List
3.  \mneg{}(nullvar()  \mmember{}  L)
4.  t  :  term(opr)
5.  x  :  \{v:varname()|  (v  \mmember{}  all-vars(t))\} 
6.  ((alist-map(VarDeq;alpha-rename-alist(t;L))  x)  =  nullvar())  {}\mRightarrow{}  (x  =  nullvar())
7.  x1  :  varname()
8.  apply-alist(VarDeq;alpha-rename-alist(t;L);x)  =  (inl  x1)
\mvdash{}  \mneg{}(x1  \mmember{}  L)


By


Latex:
((FLemma  `apply-alist-inl`  [-1]  THENA  Auto)
  THEN  InstLemma  `alpha-rename-alist-property`  [\mkleeneopen{}opr\mkleeneclose{};\mkleeneopen{}t\mkleeneclose{};\mkleeneopen{}L\mkleeneclose{}]\mcdot{}
  THEN  Auto
  THEN  InstHyp  [\mkleeneopen{}x\mkleeneclose{};\mkleeneopen{}x1\mkleeneclose{}]  (-2)\mcdot{}
  THEN  Auto)




Home Index