Step * 1 2 2 of Lemma bag-union-is-single


1. Type
2. T
3. List
4. bag(T) List
5. (bag-union(v) {x} ∈ bag(T))
 (↓∃bbs':bag(bag(T)). ((v {x}.bbs' ∈ bag(bag(T))) ∧ (bag-union(bbs') {} ∈ bag(T))))
6. bag-union(v) {x} ∈ bag(T)
7. {} ∈ bag(T)
⊢ ↓∃bbs':bag(bag(T)). (([u v] {x}.bbs' ∈ bag(bag(T))) ∧ (bag-union(bbs') {} ∈ bag(T)))
BY
((D (-3) THENA Auto)
   THEN SquashExRepD
   THEN (HypSubst' (-4) THENA Auto)
   THEN ThinVar `u'
   THEN Try (Fold `cons-bag` 0)
   THEN (HypSubst' (-2) THENA Auto)
   THEN 0
   THEN InstConcl [⌜{}.bbs'⌝]⋅
   THEN Auto) }

1
1. Type
2. T
3. bag(T) List
4. bag-union(v) {x} ∈ bag(T)
5. bbs' bag(bag(T))
6. {x}.bbs' ∈ bag(bag(T))
7. bag-union(bbs') {} ∈ bag(T)
⊢ {}.{x}.bbs' {x}.{}.bbs' ∈ bag(bag(T))


Latex:


Latex:

1.  T  :  Type
2.  x  :  T
3.  u  :  T  List
4.  v  :  bag(T)  List
5.  (bag-union(v)  =  \{x\})  {}\mRightarrow{}  (\mdownarrow{}\mexists{}bbs':bag(bag(T)).  ((v  =  \{x\}.bbs')  \mwedge{}  (bag-union(bbs')  =  \{\})))
6.  bag-union(v)  =  \{x\}
7.  u  =  \{\}
\mvdash{}  \mdownarrow{}\mexists{}bbs':bag(bag(T)).  (([u  /  v]  =  \{x\}.bbs')  \mwedge{}  (bag-union(bbs')  =  \{\}))


By


Latex:
((D  (-3)  THENA  Auto)
  THEN  SquashExRepD
  THEN  (HypSubst'  (-4)  0  THENA  Auto)
  THEN  ThinVar  `u'
  THEN  Try  (Fold  `cons-bag`  0)
  THEN  (HypSubst'  (-2)  0  THENA  Auto)
  THEN  D  0
  THEN  InstConcl  [\mkleeneopen{}\{\}.bbs'\mkleeneclose{}]\mcdot{}
  THEN  Auto)




Home Index