Nuprl Lemma : pRun-intransit-invariant

[M:Type ─→ Type]
  ∀n2m:ℕ ─→ pMsg(P.M[P]). ∀l2m:Id ─→ pMsg(P.M[P]). ∀Cs0:component(P.M[P]) List. ∀G0:LabeledDAG(pInTransit(P.M[P])).
  ∀env:pEnvType(P.M[P]). ∀t:ℕ.
    let pRun(<Cs0, G0>;env;n2m;l2m) in
        let info,Cs,G in 
        ∀x∈G.let ev fst(x) in
                 ((fst(ev)) ≤ t) ∨ (∃m:ℕlg-size(G0). (ev (fst(lg-label(G0;m))) ∈ (ℤ × Id))) 
  supposing Continuous+(P.M[P])


Proof




Definitions occuring in Statement :  pRun: pRun(S0;env;nat2msg;loc2msg) pEnvType: pEnvType(T.M[T]) pInTransit: pInTransit(P.M[P]) component: component(P.M[P]) pMsg: pMsg(P.M[P]) lg-all: x∈G.P[x] ldag: LabeledDAG(T) lg-label: lg-label(g;x) lg-size: lg-size(g) Id: Id list: List strong-type-continuous: Continuous+(T.F[T]) int_seg: {i..j-} nat: let: let spreadn: spread3 uimplies: supposing a uall: [x:A]. B[x] so_apply: x[s] pi1: fst(t) le: A ≤ B all: x:A. B[x] exists: x:A. B[x] or: P ∨ Q apply: a function: x:A ─→ B[x] pair: <a, b> product: x:A × B[x] natural_number: $n int: universe: Type equal: t ∈ T
Lemmas :  nat_wf or_wf le_wf exists_wf int_seg_wf lg-size_wf equal_wf lg-label_wf pRun-System-invariant lg-all_wf System_wf pEnvType_wf ldag_wf pInTransit_wf list_wf component_wf Id_wf pMsg_wf strong-type-continuous_wf decidable__lt false_wf condition-implies-le minus-add minus-one-mul zero-add add-commutes add_functionality_wrt_le add-associates add-zero le-add-cancel less_than_wf pRun_wf2 subtype_rel_dep_function unit_wf2 top_wf int_seg_subtype-nat subtype_rel_self lg-is-source_wf bool_wf eqtt_to_assert eqff_to_assert bool_cases_sqequal subtype_base_sq bool_subtype_base assert-bnot lt_int_wf lelt_wf lg-remove_wf_dag assert_wf bnot_wf not_wf bool_cases assert_of_lt_int iff_transitivity iff_weakening_uiff assert_of_bnot lg-all-remove decidable__le not-le-2 add-swap list_induction all_wf list_accum_wf deliver-msg-to-comp_wf list_accum_cons_lemma subtype_rel_product subtype_top eq_id_wf assert-eq-id Process-apply_wf Process_wf pExt_wf lg-all-append add-cause_wf lg-all-map pCom_wf add-mul-special zero-mul eq_atom_wf com-kind_wf assert_of_eq_atom trivial-int-eq1 sq_stable__le comm-msg_wf nil_wf neg_assert_of_eq_atom pRun_wf fulpRunType_wf

Latex:
\mforall{}[M:Type  {}\mrightarrow{}  Type]
    \mforall{}n2m:\mBbbN{}  {}\mrightarrow{}  pMsg(P.M[P]).  \mforall{}l2m:Id  {}\mrightarrow{}  pMsg(P.M[P]).  \mforall{}Cs0:component(P.M[P])  List.
    \mforall{}G0:LabeledDAG(pInTransit(P.M[P])).  \mforall{}env:pEnvType(P.M[P]).  \mforall{}t:\mBbbN{}.
        let  r  =  pRun(<Cs0,  G0>env;n2m;l2m)  in
                let  info,Cs,G  =  r  t  in 
                \mforall{}x\mmember{}G.let  ev  =  fst(x)  in
                                  ((fst(ev))  \mleq{}  t)  \mvee{}  (\mexists{}m:\mBbbN{}lg-size(G0).  (ev  =  (fst(lg-label(G0;m))))) 
    supposing  Continuous+(P.M[P])



Date html generated: 2015_07_23-AM-11_14_19
Last ObjectModification: 2015_01_29-AM-00_12_02

Home Index