{ [M:Type  Type]
    [A:pEnvType(P.M[P])  pRunType(P.M[P])  ]
      n2m:  pMsg(P.M[P]). l2m:Id  pMsg(P.M[P]).
      S1,S2:InitialSystem(P.M[P]).
        [B1,B2:EO+(pMsg(P.M[P]))  ].
          (assuming(env,r.A[env;r])
            S1 |= eo.B1[eo]
           assuming(env,r.A[env;r])
              S2 |= eo.B2[eo]
           assuming(env,r.A[env;r])
              S1 @ S2 |= eo.B1[eo]  B2[eo]) 
    supposing Continuous+(P.M[P]) }

{ Proof }



Definitions occuring in Statement :  system-strongly-realizes: system-strongly-realizes system-append: S1 @ S2 InitialSystem: InitialSystem(P.M[P]) pEnvType: pEnvType(T.M[T]) pRunType: pRunType(T.M[T]) pMsg: pMsg(P.M[P]) event-ordering+: EO+(Info) Id: Id strong-type-continuous: Continuous+(T.F[T]) nat: uimplies: b supposing a uall: [x:A]. B[x] prop: so_apply: x[s1;s2] so_apply: x[s] all: x:A. B[x] implies: P  Q and: P  Q function: x:A  B[x] universe: Type
Definitions :  uall: [x:A]. B[x] uimplies: b supposing a strong-type-continuous: Continuous+(T.F[T]) so_apply: x[s] prop: all: x:A. B[x] implies: P  Q so_apply: x[s1;s2] and: P  Q member: t  T ext-eq: A  B so_lambda: x.t[x] so_lambda: x y.t[x; y] InitialSystem: InitialSystem(P.M[P]) System: System(P.M[P]) std-initial: std-initial(S) system-append: S1 @ S2 pi2: snd(t) lg-all: xG.P[x] top: Top subtype: S  T ldag: LabeledDAG(T) rev_implies: P  Q iff: P  Q nat: pInTransit: pInTransit(P.M[P])
Lemmas :  system-strongly-realizes-and1 nat_wf sub-system-append system-strongly-realizes_wf pRunType_wf pEnvType_wf event-ordering+_wf pMsg_wf InitialSystem_wf Id_wf strong-type-continuous_wf system-append_wf std-initial_wf lg-all-append pInTransit_wf pi1_wf_top top_wf int_seg_wf lg-size_wf

\mforall{}[M:Type  {}\mrightarrow{}  Type]
    \mforall{}[A:pEnvType(P.M[P])  {}\mrightarrow{}  pRunType(P.M[P])  {}\mrightarrow{}  \mBbbP{}]
        \mforall{}n2m:\mBbbN{}  {}\mrightarrow{}  pMsg(P.M[P]).  \mforall{}l2m:Id  {}\mrightarrow{}  pMsg(P.M[P]).  \mforall{}S1,S2:InitialSystem(P.M[P]).
            \mforall{}[B1,B2:EO+(pMsg(P.M[P]))  {}\mrightarrow{}  \mBbbP{}].
                (assuming(env,r.A[env;r])
                    S1  |=  eo.B1[eo]
                {}\mRightarrow{}  assuming(env,r.A[env;r])
                        S2  |=  eo.B2[eo]
                {}\mRightarrow{}  assuming(env,r.A[env;r])
                        S1  @  S2  |=  eo.B1[eo]  \mwedge{}  B2[eo]) 
    supposing  Continuous+(P.M[P])


Date html generated: 2011_08_17-PM-03_56_03
Last ObjectModification: 2011_06_18-AM-11_28_17

Home Index