Step * of Lemma same-binding-not-bound

No Annotations
[vs,ws:varname() List].
  ∀v,w:varname().
    ((↑same-binding(vs;ws;v;w))  (v ∈ vs))  {(¬(w ∈ ws)) ∧ (w v ∈ varname()) ∧ (||vs|| ||ws|| ∈ ℤ)})
BY
(Unfold `guard` 0
   THEN RepeatFor (InductionOnList)
   THEN Unfold `same-binding` 0
   THEN Reduce 0
   THEN Try (Complete ((RW assert_pushdownC THEN Auto)))
   THEN RepeatFor (Intro)) }

1
1. varname()
2. varname() List
3. ∀[ws:varname() List]
     ∀v@0,w:varname().
       ((↑same-binding(v;ws;v@0;w))  (v@0 ∈ v))  ((¬(w ∈ ws)) ∧ (w v@0 ∈ varname()) ∧ (||v|| ||ws|| ∈ ℤ)))
4. u1 varname()
5. v1 varname() List
6. ∀v@0,w:varname().
     ((↑same-binding([u v];v1;v@0;w))
      (v@0 ∈ [u v]))
      ((¬(w ∈ v1)) ∧ (w v@0 ∈ varname()) ∧ (||[u v]|| ||v1|| ∈ ℤ)))
7. v@0 varname()
8. varname()
⊢ (↑case eq_var(u;v@0) of inl(_) => eq_var(u1;w) inr(_) => beq_var(u1;w)) ∧b same-binding(v;v1;v@0;w))
 (v@0 ∈ [u v]))
 ((¬(w ∈ [u1 v1])) ∧ (w v@0 ∈ varname()) ∧ ((||v|| 1) (||v1|| 1) ∈ ℤ))


Latex:


Latex:
No  Annotations
\mforall{}[vs,ws:varname()  List].
    \mforall{}v,w:varname().
        ((\muparrow{}same-binding(vs;ws;v;w))  {}\mRightarrow{}  (\mneg{}(v  \mmember{}  vs))  {}\mRightarrow{}  \{(\mneg{}(w  \mmember{}  ws))  \mwedge{}  (w  =  v)  \mwedge{}  (||vs||  =  ||ws||)\})


By


Latex:
(Unfold  `guard`  0
  THEN  RepeatFor  2  (InductionOnList)
  THEN  Unfold  `same-binding`  0
  THEN  Reduce  0
  THEN  Try  (Complete  ((RW  assert\_pushdownC  0  THEN  Auto)))
  THEN  RepeatFor  2  (Intro))




Home Index