Step * 8 of Lemma member-free-vars-aux


1. [opr] Type
2. bts bound-term(opr) List
3. ∀bt:bound-term(opr)
     ((bt ∈ bts)
      (∀v:varname(). ∀bnds:varname() List.
           ((v ∈ free-vars-aux(bnds;snd(bt))) ⇐⇒ (v ∈ free-vars-aux([];snd(bt))) ∧ (v ∈ bnds)))))
4. opr
5. varname()
6. bnds varname() List
7. (v ∈ free-vars-aux([];mkterm(f;bts)))
8. ¬(v ∈ bnds)
⊢ (v ∈ free-vars-aux(bnds;mkterm(f;bts)))
BY
((Unfold `free-vars-aux` -2 THEN Reduce -2)
   THEN Unfold `free-vars-aux` 0
   THEN Reduce 0
   THEN (RWO "member-l-union-list" (-2) THENA Auto)
   THEN (RWO "member-l-union-list" THENA Auto)
   THEN (RWO "member-map" (-2) THENA Auto)
   THEN (RWO "member-map" THENA Auto)
   THEN Reduce -2
   THEN Reduce 0
   THEN ExRepD) }

1
1. [opr] Type
2. bts bound-term(opr) List
3. ∀bt:bound-term(opr)
     ((bt ∈ bts)
      (∀v:varname(). ∀bnds:varname() List.
           ((v ∈ free-vars-aux(bnds;snd(bt))) ⇐⇒ (v ∈ free-vars-aux([];snd(bt))) ∧ (v ∈ bnds)))))
4. opr
5. varname()
6. bnds varname() List
7. varname() List
8. bound-term(opr)
9. (y ∈ bts)
10. let vs,a in free-vars-aux(rev(vs) [];a) ∈ (varname() List)
11. (v ∈ l)
12. ¬(v ∈ bnds)
⊢ ∃l:varname() List
   ((∃y:bound-term(opr). ((y ∈ bts) ∧ (l let vs,a in free-vars-aux(rev(vs) bnds;a) ∈ (varname() List))))
   ∧ (v ∈ l))


Latex:


Latex:

1.  [opr]  :  Type
2.  bts  :  bound-term(opr)  List
3.  \mforall{}bt:bound-term(opr)
          ((bt  \mmember{}  bts)
          {}\mRightarrow{}  (\mforall{}v:varname().  \mforall{}bnds:varname()  List.
                      ((v  \mmember{}  free-vars-aux(bnds;snd(bt)))  \mLeftarrow{}{}\mRightarrow{}  (v  \mmember{}  free-vars-aux([];snd(bt)))  \mwedge{}  (\mneg{}(v  \mmember{}  bnds)))))
4.  f  :  opr
5.  v  :  varname()
6.  bnds  :  varname()  List
7.  (v  \mmember{}  free-vars-aux([];mkterm(f;bts)))
8.  \mneg{}(v  \mmember{}  bnds)
\mvdash{}  (v  \mmember{}  free-vars-aux(bnds;mkterm(f;bts)))


By


Latex:
((Unfold  `free-vars-aux`  -2  THEN  Reduce  -2)
  THEN  Unfold  `free-vars-aux`  0
  THEN  Reduce  0
  THEN  (RWO  "member-l-union-list"  (-2)  THENA  Auto)
  THEN  (RWO  "member-l-union-list"  0  THENA  Auto)
  THEN  (RWO  "member-map"  (-2)  THENA  Auto)
  THEN  (RWO  "member-map"  0  THENA  Auto)
  THEN  Reduce  -2
  THEN  Reduce  0
  THEN  ExRepD)




Home Index