Step
*
1
1
of Lemma
once-class-program_wf
.....assertion..... 
1. Info : Type
2. B : Type
3. X : EClass(B)
4. F : Id ─→ hdataflow(Info;B)
5. ∀es:EO+(Info). ∀e:E.  (X(e) = (snd(F loc(e)*(map(λx.info(x);before(e)))(info(e)))) ∈ bag(B))
6. es : EO+(Info)@i'
7. e : E@i
⊢ hdf-once(F loc(e))*(map(λx.info(x);before(e)))
= hdf-once(if isl(class-pred(X;es;e)) then hdf-halt() else F loc(e)*(map(λx.info(x);before(e))) fi )
∈ hdataflow(Info;B)
BY
{ ((InstHyp [⌈es⌉] (-3)⋅ THENA Auto)
   THEN (Assert ∀e':E. (e' ≤loc e  
⇒ (X(e') = (snd(F loc(e)*(map(λx.info(x);before(e')))(info(e')))) ∈ bag(B))) BY
               Auto)
   THEN MoveToConcl (-1)
   THEN (GenApply 4 THENA Auto)
   THEN ThinVar `F') }
1
1. Info : Type
2. B : Type
3. X : EClass(B)
4. es : EO+(Info)@i'
5. e : E@i
6. z : hdataflow(Info;B)@i
⊢ (∀e':E. (e' ≤loc e  
⇒ (X(e') = (snd(z*(map(λx.info(x);before(e')))(info(e')))) ∈ bag(B))))
⇒ (hdf-once(z)*(map(λx.info(x);before(e)))
   = hdf-once(if isl(class-pred(X;es;e)) then hdf-halt() else z*(map(λx.info(x);before(e))) fi )
   ∈ hdataflow(Info;B))
Latex:
Latex:
.....assertion..... 
1.  Info  :  Type
2.  B  :  Type
3.  X  :  EClass(B)
4.  F  :  Id  {}\mrightarrow{}  hdataflow(Info;B)
5.  \mforall{}es:EO+(Info).  \mforall{}e:E.    (X(e)  =  (snd(F  loc(e)*(map(\mlambda{}x.info(x);before(e)))(info(e)))))
6.  es  :  EO+(Info)@i'
7.  e  :  E@i
\mvdash{}  hdf-once(F  loc(e))*(map(\mlambda{}x.info(x);before(e)))
=  hdf-once(if  isl(class-pred(X;es;e))  then  hdf-halt()  else  F  loc(e)*(map(\mlambda{}x.info(x);before(e)))  fi  )
By
Latex:
((InstHyp  [\mkleeneopen{}es\mkleeneclose{}]  (-3)\mcdot{}  THENA  Auto)
  THEN  (Assert  \mforall{}e':E
                                (e'  \mleq{}loc  e    {}\mRightarrow{}  (X(e')  =  (snd(F  loc(e)*(map(\mlambda{}x.info(x);before(e')))(info(e'))))))  BY
                          Auto)
  THEN  MoveToConcl  (-1)
  THEN  (GenApply  4  THENA  Auto)
  THEN  ThinVar  `F')
Home
Index