Step * 1 of Lemma bag-partitions-assoc


1. Type
2. valueall-type(T)
3. eq EqDecider(T)
4. bs bag(T)
5. proddeq(bag-deq(eq);bag-deq(eq)) ∈ EqDecider(bag(T) × bag(T))
6. proddeq(bag-deq(eq);proddeq(bag-deq(eq);bag-deq(eq))) ∈ EqDecider(bag(T) × bag(T) × bag(T))
⊢ ⋃x∈bag-partitions(eq;bs).bag-map(λy.<fst(x), y>;bag-partitions(eq;snd(x)))
bag-map(λ2p.<fst(snd(p)), snd(snd(p)), fst(p)>;⋃x∈bag-partitions(eq;bs).bag-map(λy.<snd(x), y>;bag-partitions(eq;fst(x\000C))))
∈ bag(bag(T) × bag(T) × bag(T))
BY
(Using [`eq',⌜proddeq(bag-deq(eq);proddeq(bag-deq(eq);bag-deq(eq)))⌝(BLemma `bag-extensionality-no-repeats`)⋅
   THEN Auto
   THEN Try (Complete ((Using [`A', ⌜bag(T) × bag(T) × bag(T)⌝MemCD⋅ THEN Auto)⋅)))⋅ }

1
1. Type
2. valueall-type(T)
3. eq EqDecider(T)
4. bs bag(T)
5. proddeq(bag-deq(eq);bag-deq(eq)) ∈ EqDecider(bag(T) × bag(T))
6. proddeq(bag-deq(eq);proddeq(bag-deq(eq);bag-deq(eq))) ∈ EqDecider(bag(T) × bag(T) × bag(T))
⊢ bag-no-repeats(bag(T) × bag(T) × bag(T);⋃x∈bag-partitions(eq;bs).bag-map(λy.<fst(x), y>;bag-partitions(eq;snd(x))))

2
1. Type
2. valueall-type(T)
3. eq EqDecider(T)
4. bs bag(T)
5. proddeq(bag-deq(eq);bag-deq(eq)) ∈ EqDecider(bag(T) × bag(T))
6. proddeq(bag-deq(eq);proddeq(bag-deq(eq);bag-deq(eq))) ∈ EqDecider(bag(T) × bag(T) × bag(T))
7. bag-no-repeats(bag(T) × bag(T) × bag(T);⋃x∈bag-partitions(eq;bs).bag-map(λy.<fst(x), y>;bag-partitions(eq;snd(x))))
⊢ bag-no-repeats(bag(T) × bag(T) × bag(T);bag-map(λ2p.<fst(snd(p)), snd(snd(p)), fst(p)>;
                                          ⋃x∈bag-partitions(eq;bs).bag-map(λy.<snd(x), y>;bag-partitions(eq;fst(x)))))

3
1. Type
2. valueall-type(T)
3. eq EqDecider(T)
4. bs bag(T)
5. proddeq(bag-deq(eq);bag-deq(eq)) ∈ EqDecider(bag(T) × bag(T))
6. proddeq(bag-deq(eq);proddeq(bag-deq(eq);bag-deq(eq))) ∈ EqDecider(bag(T) × bag(T) × bag(T))
7. bag(T) × bag(T) × bag(T)
8. x ↓∈ ⋃x∈bag-partitions(eq;bs).bag-map(λy.<fst(x), y>;bag-partitions(eq;snd(x)))
⊢ x ↓∈ bag-map(λ2p.<fst(snd(p)), snd(snd(p)), fst(p)>;⋃x∈bag-partitions(eq;bs).bag-map(λy.<snd(x), y>;bag-partitions(eq;\000Cfst(x))))

4
1. Type
2. valueall-type(T)
3. eq EqDecider(T)
4. bs bag(T)
5. proddeq(bag-deq(eq);bag-deq(eq)) ∈ EqDecider(bag(T) × bag(T))
6. proddeq(bag-deq(eq);proddeq(bag-deq(eq);bag-deq(eq))) ∈ EqDecider(bag(T) × bag(T) × bag(T))
7. bag(T) × bag(T) × bag(T)
8. x ↓∈ bag-map(λ2p.<fst(snd(p)), snd(snd(p)), fst(p)>;⋃x∈bag-partitions(eq;bs).bag-map(λy.<snd(x), y>;bag-partitions(eq\000C;fst(x))))
⊢ x ↓∈ ⋃x∈bag-partitions(eq;bs).bag-map(λy.<fst(x), y>;bag-partitions(eq;snd(x)))


Latex:


Latex:

1.  T  :  Type
2.  valueall-type(T)
3.  eq  :  EqDecider(T)
4.  bs  :  bag(T)
5.  proddeq(bag-deq(eq);bag-deq(eq))  \mmember{}  EqDecider(bag(T)  \mtimes{}  bag(T))
6.  proddeq(bag-deq(eq);proddeq(bag-deq(eq);bag-deq(eq)))  \mmember{}  EqDecider(bag(T)  \mtimes{}  bag(T)  \mtimes{}  bag(T))
\mvdash{}  \mcup{}x\mmember{}bag-partitions(eq;bs).bag-map(\mlambda{}y.<fst(x),  y>bag-partitions(eq;snd(x)))
=  bag-map(\mlambda{}\msubtwo{}p.<fst(snd(p)),  snd(snd(p)),  fst(p)>
    \mcup{}x\mmember{}bag-partitions(eq;bs).bag-map(\mlambda{}y.<snd(x),  y>bag-partitions(eq;fst(x))))


By


Latex:
(Using  [`eq',\mkleeneopen{}proddeq(bag-deq(eq);proddeq(bag-deq(eq);bag-deq(eq)))\mkleeneclose{}
  ]  (BLemma  `bag-extensionality-no-repeats`)\mcdot{}
  THEN  Auto
  THEN  Try  (Complete  ((Using  [`A',  \mkleeneopen{}bag(T)  \mtimes{}  bag(T)  \mtimes{}  bag(T)\mkleeneclose{}]  MemCD\mcdot{}  THEN  Auto)\mcdot{})))\mcdot{}




Home Index