Step * 1 1 1 2 2 1 of Lemma bag-member-parts


1. Type
2. valueall-type(T)
3. eq EqDecider(T)
4. : ℕ
5. ∀n:ℕn. ∀bs:bag(T).
     ((#(bs) ≤ n)
      (∀L:bag(T) List+uiff(L ↓∈ bag-parts(eq;bs);(bag-union(L) bs ∈ bag(T)) ∧ (∀x∈L.¬(x {} ∈ bag(T))))))
6. bs bag(T)
7. #(bs) ≤ n
8. bag(T) List+
9. bag(T)
10. bag(T)
11. (a b) bs ∈ bag(T)
12. ¬(a {} ∈ bag(T))
13. ¬(b {} ∈ bag(T))
14. L ↓∈ bag-map(λL.[a L];bag-parts(eq;b))
⊢ bag-union(L) bs ∈ bag(T)
BY
(BagMemberD (-1)⋅
   THEN SquashExRepD
   THEN Fold `cons-bag` (-1)
   THEN HypSubst' -1 0
   THEN Auto
   THEN (RWO "bag-union-cons" THENA Auto)) }

1
1. Type
2. valueall-type(T)
3. eq EqDecider(T)
4. : ℕ
5. ∀n:ℕn. ∀bs:bag(T).
     ((#(bs) ≤ n)
      (∀L:bag(T) List+uiff(L ↓∈ bag-parts(eq;bs);(bag-union(L) bs ∈ bag(T)) ∧ (∀x∈L.¬(x {} ∈ bag(T))))))
6. bs bag(T)
7. #(bs) ≤ n
8. bag(T) List+
9. bag(T)
10. bag(T)
11. (a b) bs ∈ bag(T)
12. ¬(a {} ∈ bag(T))
13. ¬(b {} ∈ bag(T))
14. bag(T) List+
15. v ↓∈ bag-parts(eq;b)
16. a.v ∈ bag(T) List+
⊢ (a bag-union(v)) bs ∈ bag(T)


Latex:


Latex:

1.  T  :  Type
2.  valueall-type(T)
3.  eq  :  EqDecider(T)
4.  n  :  \mBbbN{}
5.  \mforall{}n:\mBbbN{}n.  \mforall{}bs:bag(T).
          ((\#(bs)  \mleq{}  n)
          {}\mRightarrow{}  (\mforall{}L:bag(T)  List\msupplus{}.  uiff(L  \mdownarrow{}\mmember{}  bag-parts(eq;bs);(bag-union(L)  =  bs)  \mwedge{}  (\mforall{}x\mmember{}L.\mneg{}(x  =  \{\})))))
6.  bs  :  bag(T)
7.  \#(bs)  \mleq{}  n
8.  L  :  bag(T)  List\msupplus{}
9.  a  :  bag(T)
10.  b  :  bag(T)
11.  (a  +  b)  =  bs
12.  \mneg{}(a  =  \{\})
13.  \mneg{}(b  =  \{\})
14.  L  \mdownarrow{}\mmember{}  bag-map(\mlambda{}L.[a  /  L];bag-parts(eq;b))
\mvdash{}  bag-union(L)  =  bs


By


Latex:
(BagMemberD  (-1)\mcdot{}
  THEN  SquashExRepD
  THEN  Fold  `cons-bag`  (-1)
  THEN  HypSubst'  -1  0
  THEN  Auto
  THEN  (RWO  "bag-union-cons"  0  THENA  Auto))




Home Index