Step
*
2
of Lemma
set-equal-cons2
1. [T] : Type
2. eq : EqDecider(T)
3. u : T
4. v : T List
5. bs : T List
6. (u ∈ bs)
7. set-equal(T;filter(λx.(¬b(eq x u));v);filter(λx.(¬b(eq x u));bs))
⊢ set-equal(T;[u / v];bs)
BY
{ (RepeatFor 2 (ParallelLast)
   THEN (RWO "cons_member" 0 THENA Auto)
   THEN (RWO "member_filter" (-1) THENM (Reduce (-1) THEN RW assert_pushdownC (-1)))
   THEN Auto
   THEN BoolCase ⌜eq t u⌝⋅
   THEN Auto
   THEN D -1
   THEN Auto) }
Latex:
Latex:
1.  [T]  :  Type
2.  eq  :  EqDecider(T)
3.  u  :  T
4.  v  :  T  List
5.  bs  :  T  List
6.  (u  \mmember{}  bs)
7.  set-equal(T;filter(\mlambda{}x.(\mneg{}\msubb{}(eq  x  u));v);filter(\mlambda{}x.(\mneg{}\msubb{}(eq  x  u));bs))
\mvdash{}  set-equal(T;[u  /  v];bs)
By
Latex:
(RepeatFor  2  (ParallelLast)
  THEN  (RWO  "cons\_member"  0  THENA  Auto)
  THEN  (RWO  "member\_filter"  (-1)  THENM  (Reduce  (-1)  THEN  RW  assert\_pushdownC  (-1)))
  THEN  Auto
  THEN  BoolCase  \mkleeneopen{}eq  t  u\mkleeneclose{}\mcdot{}
  THEN  Auto
  THEN  D  -1
  THEN  Auto)
Home
Index