Step
*
1
2
2
of Lemma
sv-bag-only-combine
1. A : Type
2. B : Type
3. b : bag(A)
4. f : A ⟶ bag(B)
5. single-valued-bag(b;A)
6. 0 < #(b)
7. ∀a:A. single-valued-bag(f[a];B)
8. ∀a:A. 0 < #(f[a])
9. sv-bag-only(b) ↓∈ b
10. c : bag(A)
11. b = ({sv-bag-only(b)} + c) ∈ bag(A)
12. a : B
13. a ↓∈ ⋃x∈c.f[x]
14. b1 : B
15. b1 ↓∈ f[sv-bag-only(b)]
16. ∀x,y:A.  (x ↓∈ {sv-bag-only(b)} + c 
⇒ y ↓∈ {sv-bag-only(b)} + c 
⇒ (x = y ∈ A))
⊢ a ↓∈ f[sv-bag-only(b)]
BY
{ (BagMemberD (-4)
   THEN TrySquashExRepD (-4)
   THEN (InstHyp [⌜sv-bag-only(b)⌝;⌜x⌝] (-1)⋅ THENA (Auto THEN BagMemberD 0 THEN D 0 THEN Auto))
   THEN (InstHyp [⌜x⌝] (-13)⋅ THENA Auto)
   THEN Unfold `single-valued-bag` (-1)
   THEN InstHyp [⌜a⌝;⌜b1⌝] (-1)⋅
   THEN Auto) }
Latex:
Latex:
1.  A  :  Type
2.  B  :  Type
3.  b  :  bag(A)
4.  f  :  A  {}\mrightarrow{}  bag(B)
5.  single-valued-bag(b;A)
6.  0  <  \#(b)
7.  \mforall{}a:A.  single-valued-bag(f[a];B)
8.  \mforall{}a:A.  0  <  \#(f[a])
9.  sv-bag-only(b)  \mdownarrow{}\mmember{}  b
10.  c  :  bag(A)
11.  b  =  (\{sv-bag-only(b)\}  +  c)
12.  a  :  B
13.  a  \mdownarrow{}\mmember{}  \mcup{}x\mmember{}c.f[x]
14.  b1  :  B
15.  b1  \mdownarrow{}\mmember{}  f[sv-bag-only(b)]
16.  \mforall{}x,y:A.    (x  \mdownarrow{}\mmember{}  \{sv-bag-only(b)\}  +  c  {}\mRightarrow{}  y  \mdownarrow{}\mmember{}  \{sv-bag-only(b)\}  +  c  {}\mRightarrow{}  (x  =  y))
\mvdash{}  a  \mdownarrow{}\mmember{}  f[sv-bag-only(b)]
By
Latex:
(BagMemberD  (-4)
  THEN  TrySquashExRepD  (-4)
  THEN  (InstHyp  [\mkleeneopen{}sv-bag-only(b)\mkleeneclose{};\mkleeneopen{}x\mkleeneclose{}]  (-1)\mcdot{}  THENA  (Auto  THEN  BagMemberD  0  THEN  D  0  THEN  Auto))
  THEN  (InstHyp  [\mkleeneopen{}x\mkleeneclose{}]  (-13)\mcdot{}  THENA  Auto)
  THEN  Unfold  `single-valued-bag`  (-1)
  THEN  InstHyp  [\mkleeneopen{}a\mkleeneclose{};\mkleeneopen{}b1\mkleeneclose{}]  (-1)\mcdot{}
  THEN  Auto)
Home
Index