Step
*
1
of Lemma
hdf-bind-gen-compose1-left
1. A : Type
2. B : Type
3. C : Type
4. U : Type
5. f : B ─→ C
6. X : hdataflow(A;B)
7. Y : C ─→ hdataflow(A;U)
8. hdfs : bag(hdataflow(A;U))
9. valueall-type(U)
10. valueall-type(C)
11. inputs : A List
⊢ hdf-halted(f o X (hdfs) >>= Y*(inputs)) = hdf-halted(X (hdfs) >>= Y o f*(inputs))
BY
{ (RepeatFor 3 (MoveToConcl (-4)) THEN ListInd (-1) THEN Reduce 0 THEN Auto) }
1
1. A : Type
2. B : Type
3. C : Type
4. U : Type
5. f : B ─→ C
6. valueall-type(U)
7. valueall-type(C)
8. X : hdataflow(A;B)@i
9. Y : C ─→ hdataflow(A;U)@i
10. hdfs : bag(hdataflow(A;U))@i
⊢ hdf-halted(f o X (hdfs) >>= Y) = hdf-halted(X (hdfs) >>= Y o f)
2
1. A : Type
2. B : Type
3. C : Type
4. U : Type
5. f : B ─→ C
6. valueall-type(U)
7. valueall-type(C)
8. u : A@i
9. v : A List@i
10. ∀X:hdataflow(A;B). ∀Y:C ─→ hdataflow(A;U). ∀hdfs:bag(hdataflow(A;U)).
      hdf-halted(f o X (hdfs) >>= Y*(v)) = hdf-halted(X (hdfs) >>= Y o f*(v))@i
11. X : hdataflow(A;B)@i
12. Y : C ─→ hdataflow(A;U)@i
13. hdfs : bag(hdataflow(A;U))@i
⊢ hdf-halted(fst(f o X (hdfs) >>= Y(u))*(v)) = hdf-halted(fst(X (hdfs) >>= Y o f(u))*(v))
Latex:
1.  A  :  Type
2.  B  :  Type
3.  C  :  Type
4.  U  :  Type
5.  f  :  B  {}\mrightarrow{}  C
6.  X  :  hdataflow(A;B)
7.  Y  :  C  {}\mrightarrow{}  hdataflow(A;U)
8.  hdfs  :  bag(hdataflow(A;U))
9.  valueall-type(U)
10.  valueall-type(C)
11.  inputs  :  A  List
\mvdash{}  hdf-halted(f  o  X  (hdfs)  >>=  Y*(inputs))  =  hdf-halted(X  (hdfs)  >>=  Y  o  f*(inputs))
By
(RepeatFor  3  (MoveToConcl  (-4))  THEN  ListInd  (-1)  THEN  Reduce  0  THEN  Auto)
Home
Index