Step * 1 2 of Lemma bag-member-union


1. Type
2. T
3. bag(T)
4. bag(T) List
5. uiff(x ↓∈ bag-union(v);↓∃b:bag(T). (x ↓∈ b ∧ b ↓∈ v))
⊢ uiff(x ↓∈ bag-union([u v]);↓∃b:bag(T). (x ↓∈ b ∧ b ↓∈ [u v]))
BY
((Unfold `bag-union` THEN Unfold `concat` THEN Reduce THEN Fold `concat` THEN Fold `bag-union` 0)
   THEN Fold `bag-append` 0
   THEN (RWO "bag-member-append" THENA Auto)
   THEN Auto
   THEN Try (Complete (Auto))) }

1
1. Type
2. T
3. bag(T)
4. bag(T) List
5. ↓∃b:bag(T). (x ↓∈ b ∧ b ↓∈ v) supposing x ↓∈ bag-union(v)
6. x ↓∈ bag-union(v) supposing ↓∃b:bag(T). (x ↓∈ b ∧ b ↓∈ v)
7. x ↓∈ u ↓∨ x ↓∈ bag-union(v)
⊢ ↓∃b:bag(T). (x ↓∈ b ∧ b ↓∈ [u v])

2
1. Type
2. T
3. bag(T)
4. bag(T) List
5. ↓∃b:bag(T). (x ↓∈ b ∧ b ↓∈ v) supposing x ↓∈ bag-union(v)
6. x ↓∈ bag-union(v) supposing ↓∃b:bag(T). (x ↓∈ b ∧ b ↓∈ v)
7. ↓∃b:bag(T). (x ↓∈ b ∧ b ↓∈ [u v])
⊢ x ↓∈ u ↓∨ x ↓∈ bag-union(v)


Latex:


Latex:

1.  T  :  Type
2.  x  :  T
3.  u  :  bag(T)
4.  v  :  bag(T)  List
5.  uiff(x  \mdownarrow{}\mmember{}  bag-union(v);\mdownarrow{}\mexists{}b:bag(T).  (x  \mdownarrow{}\mmember{}  b  \mwedge{}  b  \mdownarrow{}\mmember{}  v))
\mvdash{}  uiff(x  \mdownarrow{}\mmember{}  bag-union([u  /  v]);\mdownarrow{}\mexists{}b:bag(T).  (x  \mdownarrow{}\mmember{}  b  \mwedge{}  b  \mdownarrow{}\mmember{}  [u  /  v]))


By


Latex:
((Unfold  `bag-union`  0
    THEN  Unfold  `concat`  0
    THEN  Reduce  0
    THEN  Fold  `concat`  0
    THEN  Fold  `bag-union`  0)
  THEN  Fold  `bag-append`  0
  THEN  (RWO  "bag-member-append"  0  THENA  Auto)
  THEN  Auto
  THEN  Try  (Complete  (Auto)))




Home Index