Step * 1 2 of Lemma bag-subtract-member-if-no-repeats


1. Type
2. eq EqDecider(T)
3. T
4. T
5. List
6. ∀bs:bag(T). (bag-no-repeats(T;bs)  uiff(x ↓∈ bag-subtract(eq;bs;v);x ↓∈ bs ∧ x ↓∈ v)))
7. bs bag(T)
8. bag-no-repeats(T;bs)
⊢ uiff(x ↓∈ bag-subtract(eq;bs;[u v]);x ↓∈ bs ∧ x ↓∈ [u v]))
BY
(RepUR ``bag-subtract bag-accum`` THEN Fold `bag-accum` THEN Fold `bag-subtract` 0) }

1
1. Type
2. eq EqDecider(T)
3. T
4. T
5. List
6. ∀bs:bag(T). (bag-no-repeats(T;bs)  uiff(x ↓∈ bag-subtract(eq;bs;v);x ↓∈ bs ∧ x ↓∈ v)))
7. bs bag(T)
8. bag-no-repeats(T;bs)
⊢ uiff(x ↓∈ bag-subtract(eq;bag-drop(eq;bs;u);v);x ↓∈ bs ∧ x ↓∈ [u v]))


Latex:


Latex:

1.  T  :  Type
2.  eq  :  EqDecider(T)
3.  x  :  T
4.  u  :  T
5.  v  :  T  List
6.  \mforall{}bs:bag(T).  (bag-no-repeats(T;bs)  {}\mRightarrow{}  uiff(x  \mdownarrow{}\mmember{}  bag-subtract(eq;bs;v);x  \mdownarrow{}\mmember{}  bs  \mwedge{}  (\mneg{}x  \mdownarrow{}\mmember{}  v)))
7.  bs  :  bag(T)
8.  bag-no-repeats(T;bs)
\mvdash{}  uiff(x  \mdownarrow{}\mmember{}  bag-subtract(eq;bs;[u  /  v]);x  \mdownarrow{}\mmember{}  bs  \mwedge{}  (\mneg{}x  \mdownarrow{}\mmember{}  [u  /  v]))


By


Latex:
(RepUR  ``bag-subtract  bag-accum``  0  THEN  Fold  `bag-accum`  0  THEN  Fold  `bag-subtract`  0)




Home Index