Step * 1 1 of Lemma bag-map-union2


1. Type
2. Type
3. A ⟶ B
4. bag(bag(A))
5. bag-map(λa.{g a};bag-union(x)) bag-union(bag-map(λb.bag-map(λa.{g a};b);x)) ∈ bag(bag(B))
6. bag-union(bag-map(λa.{g a};bag-union(x))) bag-union(bag-union(bag-map(λb.bag-map(λa.{g a};b);x))) ∈ bag(B)
⊢ bag-map(g;bag-union(x)) bag-union(bag-map(λz.bag-map(g;z);x)) ∈ bag(B)
BY
(NthHypEq (-1) THEN EqCDA) }

1
.....subterm..... T:t
2:n
1. Type
2. Type
3. A ⟶ B
4. bag(bag(A))
5. bag-map(λa.{g a};bag-union(x)) bag-union(bag-map(λb.bag-map(λa.{g a};b);x)) ∈ bag(bag(B))
6. bag-union(bag-map(λa.{g a};bag-union(x))) bag-union(bag-union(bag-map(λb.bag-map(λa.{g a};b);x))) ∈ bag(B)
⊢ bag-map(g;bag-union(x)) bag-union(bag-map(λa.{g a};bag-union(x))) ∈ bag(B)

2
.....subterm..... T:t
3:n
1. Type
2. Type
3. A ⟶ B
4. bag(bag(A))
5. bag-map(λa.{g a};bag-union(x)) bag-union(bag-map(λb.bag-map(λa.{g a};b);x)) ∈ bag(bag(B))
6. bag-union(bag-map(λa.{g a};bag-union(x))) bag-union(bag-union(bag-map(λb.bag-map(λa.{g a};b);x))) ∈ bag(B)
⊢ bag-union(bag-map(λz.bag-map(g;z);x)) bag-union(bag-union(bag-map(λb.bag-map(λa.{g a};b);x))) ∈ bag(B)


Latex:


Latex:

1.  A  :  Type
2.  B  :  Type
3.  g  :  A  {}\mrightarrow{}  B
4.  x  :  bag(bag(A))
5.  bag-map(\mlambda{}a.\{g  a\};bag-union(x))  =  bag-union(bag-map(\mlambda{}b.bag-map(\mlambda{}a.\{g  a\};b);x))
6.  bag-union(bag-map(\mlambda{}a.\{g  a\};bag-union(x)))
=  bag-union(bag-union(bag-map(\mlambda{}b.bag-map(\mlambda{}a.\{g  a\};b);x)))
\mvdash{}  bag-map(g;bag-union(x))  =  bag-union(bag-map(\mlambda{}z.bag-map(g;z);x))


By


Latex:
(NthHypEq  (-1)  THEN  EqCDA)




Home Index