Step * 2 of Lemma hdf-bind-gen-compose1-left


1. Type
2. Type
3. Type
4. Type
5. B ─→ C
6. hdataflow(A;B)
7. C ─→ hdataflow(A;U)
8. hdfs bag(hdataflow(A;U))
9. valueall-type(U)
10. valueall-type(C)
11. inputs List
12. hdf-halted(f (hdfs) >>Y*(inputs)) hdf-halted(X (hdfs) >>f*(inputs))
13. A
⊢ hdf-out(f (hdfs) >>Y*(inputs);a) hdf-out(X (hdfs) >>f*(inputs);a) ∈ bag(U)
BY
(Thin (-2) THEN MoveToConcl (-1) THEN RepeatFor (MoveToConcl (-4)) THEN ListInd (-1) THEN Reduce THEN Auto) }

1
1. Type
2. Type
3. Type
4. Type
5. B ─→ C
6. valueall-type(U)
7. valueall-type(C)
8. hdataflow(A;B)@i
9. C ─→ hdataflow(A;U)@i
10. hdfs bag(hdataflow(A;U))@i
11. A@i
⊢ hdf-out(f (hdfs) >>Y;a) hdf-out(X (hdfs) >>f;a) ∈ bag(U)

2
1. Type
2. Type
3. Type
4. Type
5. B ─→ C
6. valueall-type(U)
7. valueall-type(C)
8. A@i
9. List@i
10. ∀X:hdataflow(A;B). ∀Y:C ─→ hdataflow(A;U). ∀hdfs:bag(hdataflow(A;U)). ∀a:A.
      (hdf-out(f (hdfs) >>Y*(v);a) hdf-out(X (hdfs) >>f*(v);a) ∈ bag(U))@i
11. hdataflow(A;B)@i
12. C ─→ hdataflow(A;U)@i
13. hdfs bag(hdataflow(A;U))@i
14. A@i
⊢ hdf-out(fst(f (hdfs) >>Y(u))*(v);a) hdf-out(fst(X (hdfs) >>f(u))*(v);a) ∈ bag(U)


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
12.  hdf-halted(f  o  X  (hdfs)  >>=  Y*(inputs))  =  hdf-halted(X  (hdfs)  >>=  Y  o  f*(inputs))
13.  a  :  A
\mvdash{}  hdf-out(f  o  X  (hdfs)  >>=  Y*(inputs);a)  =  hdf-out(X  (hdfs)  >>=  Y  o  f*(inputs);a)


By

(Thin  (-2)
  THEN  MoveToConcl  (-1)
  THEN  RepeatFor  3  (MoveToConcl  (-4))
  THEN  ListInd  (-1)
  THEN  Reduce  0
  THEN  Auto)




Home Index