Step * 1 2 1 1 of Lemma iterate-hdf-bind-simple


1. Type
2. Type
3. Type
4. B ─→ hdataflow(A;C)
5. valueall-type(C)
6. hdataflow(A;B)@i
7. ys1 bag(hdataflow(A;C))@i
8. ys2 bag(hdataflow(A;C))@i
9. A@i
10. ys1 [y∈ys2|¬bhdf-halted(y)] ∈ bag(hdataflow(A;C))@i
11. (ys1 {} ∈ bag(hdataflow(A;C)))) ∨ (¬↑hdf-halted(X))
12. v1 hdataflow(A;B)@i
13. v2 bag(B)@i
14. X(a) = <v1, v2> ∈ (hdataflow(A;B) × bag(B))@i
15. λP.P(a) ∈ hdataflow(A;C) ─→ (hdataflow(A;C) × bag(C))
16. ∀[ba,bb:bag(hdataflow(A;C) × bag(C))]. ∀[f:(hdataflow(A;C) × bag(C)) ─→ bag(C)].
      (∪x∈ba bb.f[x] (∪x∈ba.f[x] + ∪x∈bb.f[x]) ∈ bag(C))
⊢ (∪yb∈bag-map(λP.P(a);ys1).snd(yb) + ∪yb∈bag-map(λP.P(a);bag-map(Y;v2)).snd(yb))
(∪yb∈bag-map(λP.P(a);ys2).snd(yb) + ∪yb∈bag-map(λP.P(a);bag-map(Y;v2)).snd(yb))
∈ bag(C)
BY
(EqCD THEN Auto)⋅ }

1
.....subterm..... T:t
1:n
1. Type
2. Type
3. Type
4. B ─→ hdataflow(A;C)
5. valueall-type(C)
6. hdataflow(A;B)@i
7. ys1 bag(hdataflow(A;C))@i
8. ys2 bag(hdataflow(A;C))@i
9. A@i
10. ys1 [y∈ys2|¬bhdf-halted(y)] ∈ bag(hdataflow(A;C))@i
11. (ys1 {} ∈ bag(hdataflow(A;C)))) ∨ (¬↑hdf-halted(X))
12. v1 hdataflow(A;B)@i
13. v2 bag(B)@i
14. X(a) = <v1, v2> ∈ (hdataflow(A;B) × bag(B))@i
15. λP.P(a) ∈ hdataflow(A;C) ─→ (hdataflow(A;C) × bag(C))
16. ∀[ba,bb:bag(hdataflow(A;C) × bag(C))]. ∀[f:(hdataflow(A;C) × bag(C)) ─→ bag(C)].
      (∪x∈ba bb.f[x] (∪x∈ba.f[x] + ∪x∈bb.f[x]) ∈ bag(C))
⊢ ∪yb∈bag-map(λP.P(a);ys1).snd(yb) = ∪yb∈bag-map(λP.P(a);ys2).snd(yb) ∈ bag(C)


Latex:



1.  A  :  Type
2.  B  :  Type
3.  C  :  Type
4.  Y  :  B  {}\mrightarrow{}  hdataflow(A;C)
5.  valueall-type(C)
6.  X  :  hdataflow(A;B)@i
7.  ys1  :  bag(hdataflow(A;C))@i
8.  ys2  :  bag(hdataflow(A;C))@i
9.  a  :  A@i
10.  ys1  =  [y\mmember{}ys2|\mneg{}\msubb{}hdf-halted(y)]@i
11.  (\mneg{}(ys1  =  \{\}))  \mvee{}  (\mneg{}\muparrow{}hdf-halted(X))
12.  v1  :  hdataflow(A;B)@i
13.  v2  :  bag(B)@i
14.  X(a)  =  <v1,  v2>@i
15.  \mlambda{}P.P(a)  \mmember{}  hdataflow(A;C)  {}\mrightarrow{}  (hdataflow(A;C)  \mtimes{}  bag(C))
16.  \mforall{}[ba,bb:bag(hdataflow(A;C)  \mtimes{}  bag(C))].  \mforall{}[f:(hdataflow(A;C)  \mtimes{}  bag(C))  {}\mrightarrow{}  bag(C)].
            (\mcup{}x\mmember{}ba  +  bb.f[x]  =  (\mcup{}x\mmember{}ba.f[x]  +  \mcup{}x\mmember{}bb.f[x]))
\mvdash{}  (\mcup{}yb\mmember{}bag-map(\mlambda{}P.P(a);ys1).snd(yb)  +  \mcup{}yb\mmember{}bag-map(\mlambda{}P.P(a);bag-map(Y;v2)).snd(yb))
=  (\mcup{}yb\mmember{}bag-map(\mlambda{}P.P(a);ys2).snd(yb)  +  \mcup{}yb\mmember{}bag-map(\mlambda{}P.P(a);bag-map(Y;v2)).snd(yb))


By

(EqCD  THEN  Auto)\mcdot{}




Home Index