Step
*
1
1
1
1
1
1
of Lemma
bag-remove1-property
1. T : Type
2. eq : EqDecider(T)
3. x : T
4. bs : T List
5. ∀x:T. ∀bs:bag(T).  Dec(x ↓∈ bs)
6. x ↓∈ bs
7. as : T List
8. bs@0 : T List
9. bs = ((as @ [x]) @ bs@0) ∈ (T List)
10. bag-remove1(eq;bs;x) = (inl (rev(as) @ bs@0)) ∈ (T List?)
11. True
⊢ bs = ({x} + (rev(as) @ bs@0)) ∈ bag(T)
BY
{ (All (Fold `bag-append`) THEN HypSubst' (-3) 0 THEN Auto)⋅ }
Latex:
Latex:
1.  T  :  Type
2.  eq  :  EqDecider(T)
3.  x  :  T
4.  bs  :  T  List
5.  \mforall{}x:T.  \mforall{}bs:bag(T).    Dec(x  \mdownarrow{}\mmember{}  bs)
6.  x  \mdownarrow{}\mmember{}  bs
7.  as  :  T  List
8.  bs@0  :  T  List
9.  bs  =  ((as  @  [x])  @  bs@0)
10.  bag-remove1(eq;bs;x)  =  (inl  (rev(as)  @  bs@0))
11.  True
\mvdash{}  bs  =  (\{x\}  +  (rev(as)  @  bs@0))
By
Latex:
(All  (Fold  `bag-append`)  THEN  HypSubst'  (-3)  0  THEN  Auto)\mcdot{}
Home
Index