Nuprl Lemma : run-event-state-next

[M:Type ─→ Type]
  ∀n2m:ℕ ─→ pMsg(P.M[P]). ∀l2m:Id ─→ pMsg(P.M[P]). ∀S0:System(P.M[P]). ∀env:pEnvType(P.M[P]).
    let pRun(S0;env;n2m;l2m) in
        ∀e:runEvents(r)
          sub-mset(Process(P.M[P]); map(λP.(fst(Process-apply(P;run-event-msg(r;e))));run-prior-state(S0;r;e));
                   run-event-state(r;e)) 
  supposing Continuous+(P.M[P])


Proof




Definitions occuring in Statement :  run-prior-state: run-prior-state(S0;r;e) run-event-state: run-event-state(r;e) run-event-msg: run-event-msg(r;e) runEvents: runEvents(r) pRun: pRun(S0;env;nat2msg;loc2msg) pEnvType: pEnvType(T.M[T]) System: System(P.M[P]) Process-apply: Process-apply(P;m) pMsg: pMsg(P.M[P]) Process: Process(P.M[P]) Id: Id map: map(f;as) strong-type-continuous: Continuous+(T.F[T]) nat: let: let uimplies: supposing a uall: [x:A]. B[x] so_apply: x[s] pi1: fst(t) all: x:A. B[x] lambda: λx.A[x] function: x:A ─→ B[x] universe: Type sub-mset: sub-mset(T; L1; L2)
Lemmas :  ldag_wf component_wf list_wf btrue_neq_bfalse bfalse_wf isl_wf it_wf subtype_top top_wf subtype_rel_product pi1_wf_top and_wf btrue_wf assert-bnot bool_subtype_base subtype_base_sq bool_cases_sqequal equal_wf eqff_to_assert eqtt_to_assert bool_wf pInTransit_wf lg-is-source_wf System_wf unit_wf2 pMsg_wf Id_wf le_wf le-add-cancel add_functionality_wrt_le add-commutes add-swap add-associates minus-minus minus-add zero-add minus-one-mul condition-implies-le sq_stable__le not-le-2 false_wf decidable__le subtract_wf fulpRunType_wf pRun_wf assert_of_bnot iff_weakening_uiff iff_transitivity assert_of_lt_int bool_cases assert_elim less_than_wf not_wf bnot_wf lt_int_wf lg-remove_wf_dag comm-create_wf int_upper_subtype_nat create-component_wf neg_assert_of_eq_atom strong-type-continuous_wf squash_wf deliver-msg_wf pi2_wf assert_wf outl_wf comm-msg_wf assert_of_eq_atom com-kind_wf eq_atom_wf nat_wf lg-size_wf lelt_wf lg-label_wf eq_id_wf int_upper_wf member_wf list_accum_cons_lemma mapfilter_nil_lemma list_accum_nil_lemma pExt_wf Process-apply_wf append_wf reverse_wf deliver-msg-to-comp_wf list_accum_wf mapfilter_wf Process_wf all_wf list_induction nil_wf list_ind_nil_lemma map_nil_lemma filter_nil_lemma reverse_nil_lemma subtype_rel_list set_wf subtype_rel_self l_member_wf subtype_rel_dep_function filter_wf5 map_wf append-nil reverse-reverse mapfilter-reverse map_cons_lemma assert-eq-id filter_cons_lemma iff_weakening_equal add-cause_wf lg-append_wf_dag cons_wf mapfilter-singleton mapfilter-append reverse-cons list_ind_cons_lemma append_assoc_sq append_back_nil sub-mset_transitivity run-prior-state_wf run-prior-state-property decidable__lt length_wf_nat sub-mset_wf int_seg_subtype-nat map-map sub-mset-map less_than_transitivity1 le_weakening less_than_irreflexivity equal-wf-base int_subtype_base int_seg_wf equal-wf-T-base pEnvType_wf is-run-event_wf add-zero not-equal-2 less-iff-le minus-zero le-add-cancel-alt primrec-wf2 decidable__equal_int sub-mset_weakening permutation_weakening le-add-cancel2 or_wf subtract-is-less neg_assert_of_eq_int le_antisymmetry_iff assert_of_eq_int eq_int_wf do-chosen-command_wf permutation_wf atom2_subtype_base list_accum_append filter_append_sq permutation-nil last_induction permutation-cons2 permutation-rotate permutation_transitivity subtype_rel_set fulpRunType-subtype exists_wf permutation-reverse true_wf

Latex:
\mforall{}[M:Type  {}\mrightarrow{}  Type]
    \mforall{}n2m:\mBbbN{}  {}\mrightarrow{}  pMsg(P.M[P]).  \mforall{}l2m:Id  {}\mrightarrow{}  pMsg(P.M[P]).  \mforall{}S0:System(P.M[P]).  \mforall{}env:pEnvType(P.M[P]).
        let  r  =  pRun(S0;env;n2m;l2m)  in
                \mforall{}e:runEvents(r)
                    sub-mset(Process(P.M[P]);  map(\mlambda{}P.(fst(Process-apply(P;run-event-msg(r;e))));
                                                                                run-prior-state(S0;r;e));  run-event-state(r;e)) 
    supposing  Continuous+(P.M[P])



Date html generated: 2015_07_23-AM-11_13_04
Last ObjectModification: 2015_07_16-AM-09_38_30

Home Index