Step * 1 1 of Lemma bag-bind-append2


1. Type
2. Type
3. A ⟶ bag(B)
4. A ⟶ bag(B)
5. as List@i
⊢ bag-bind(as;λa.((F a) (G a))) (bag-bind(as;F) bag-bind(as;G)) ∈ bag(B)
BY
(ListInd (-1)
   THEN RepUR ``bag-bind bag-union concat bag-map bag-append`` 0
   THEN Try (Fold `concat` 0)
   THEN Folds ``empty-bag bag-union bag-map bag-append`` 0
   THEN Auto
   THEN Fold `bag-bind` 0)⋅ }

1
1. Type
2. Type
3. A ⟶ bag(B)
4. A ⟶ bag(B)
5. A@i
6. List@i
7. bag-bind(v;λa.((F a) (G a))) (bag-bind(v;F) bag-bind(v;G)) ∈ bag(B)
⊢ (((F u) (G u)) bag-bind(v;λa.((F a) (G a)))) (((F u) bag-bind(v;F)) (G u) bag-bind(v;G)) ∈ bag(B)


Latex:


Latex:

1.  A  :  Type
2.  B  :  Type
3.  F  :  A  {}\mrightarrow{}  bag(B)
4.  G  :  A  {}\mrightarrow{}  bag(B)
5.  as  :  A  List@i
\mvdash{}  bag-bind(as;\mlambda{}a.((F  a)  +  (G  a)))  =  (bag-bind(as;F)  +  bag-bind(as;G))


By


Latex:
(ListInd  (-1)
  THEN  RepUR  ``bag-bind  bag-union  concat  bag-map  bag-append``  0
  THEN  Try  (Fold  `concat`  0)
  THEN  Folds  ``empty-bag  bag-union  bag-map  bag-append``  0
  THEN  Auto
  THEN  Fold  `bag-bind`  0)\mcdot{}




Home Index