Nuprl Lemma : local-simulation-validity2
∀correct:Id ─→ ℙ. ∀g,f:Name ─→ Type. ∀X:EClass(Interface).
  (LocalClass(X)
  ⇒ (∀locs:bag(Id). ∀hdr:Name.
        ∀hdrs:Name List. ∀es:EO+(Message(f)).
          ((∀i:Id. ((correct i) ⇒ local-simulation-input-validity(g;X;hdr;locs;hdrs;es;i)))
          ⇒ (∀R:Interface ─→ Message(g) ─→ ℙ. ∀R':Interface ─→ Message(f) ─→ ℙ.
                ((∀eo:EO+(Message(g))
                    (eo-msg-interface-constraint(eo;X;hdrs;g)
                    ⇒ for every v in X there is an
                       earlier event  with info=m such that
                       R[v;m]))
                ⇒ (∀e:E. ∀v:Interface.
                      ((correct loc(e))
                      ⇒ (↑has-header-and-in-locs(info(e);hdr;locs))
                      ⇒ R[v;snd(msg-body(info(e)))]
                      ⇒ (↓∃e':E. ((e' < e) ∧ R'[v;info(e')]))))
                ⇒ for every v in local-simulation-class(X;locs;hdr) at location i s.t. correct i
                   there is an earlier event with info=m  such that R'[v;m]))) 
        supposing hdr encodes Id × Message(g)))
Proof
Definitions occuring in Statement : 
local-simulation-input-validity: local-simulation-input-validity(g;X;hdr;locs;hdrs;es;i), 
eo-msg-interface-constraint: eo-msg-interface-constraint(es;X;hdrs;f), 
msg-interface: Interface, 
has-header-and-in-locs: has-header-and-in-locs(msg;hdr;locs), 
local-simulation-class: local-simulation-class(X;locs;hdr), 
encodes-msg-type: hdr encodes T, 
msg-body: msg-body(msg), 
Message: Message(f), 
local-class: LocalClass(X), 
correct-causal-class-relation: for every a in X at location i s.t. Correct[i] there is an earlier event with info=b  such that R[a; b], 
causal-class-relation: causal-class-relation, 
eclass: EClass(A[eo; e]), 
es-info: info(e), 
event-ordering+: EO+(Info), 
es-causl: (e < e'), 
es-loc: loc(e), 
es-E: E, 
Id: Id, 
name: Name, 
list: T List, 
assert: ↑b, 
uimplies: b supposing a, 
prop: ℙ, 
so_apply: x[s1;s2], 
pi2: snd(t), 
all: ∀x:A. B[x], 
exists: ∃x:A. B[x], 
squash: ↓T, 
implies: P ⇒ Q, 
and: P ∧ Q, 
apply: f a, 
function: x:A ─→ B[x], 
product: x:A × B[x], 
universe: Type, 
bag: bag(T)
Lemmas : 
local-simulation-validity, 
true_wf, 
msg-interface_wf, 
classrel_wf, 
Message_wf, 
es-E_wf, 
event-ordering+_subtype, 
eo-msg-interface-constraint_wf, 
event-ordering+_wf, 
all_wf, 
es-loc_wf, 
assert_wf, 
has-header-and-in-locs_wf, 
es-info_wf, 
subtype_rel_product, 
Id_wf, 
top_wf, 
subtype_top, 
subtype_rel_transitivity, 
assert-has-header-and-in-locs, 
msg-body_wf2, 
subtype_rel-equal, 
msg-type_wf, 
iff_weakening_equal, 
squash_wf, 
exists_wf, 
es-causl_wf, 
causal-class-relation_wf, 
subtype_rel_dep_function, 
name_wf, 
local-simulation-input-validity_wf, 
list_wf, 
encodes-msg-type_wf, 
bag_wf, 
local-class_wf, 
eclass_wf3, 
local-simulation-class_wf, 
and_wf, 
equal_wf, 
es-causl_transitivity2, 
es-causle_weakening_locl, 
es-le_weakening
Latex:
\mforall{}correct:Id  {}\mrightarrow{}  \mBbbP{}.  \mforall{}g,f:Name  {}\mrightarrow{}  Type.  \mforall{}X:EClass(Interface).
    (LocalClass(X)
    {}\mRightarrow{}  (\mforall{}locs:bag(Id).  \mforall{}hdr:Name.
                \mforall{}hdrs:Name  List.  \mforall{}es:EO+(Message(f)).
                    ((\mforall{}i:Id.  ((correct  i)  {}\mRightarrow{}  local-simulation-input-validity(g;X;hdr;locs;hdrs;es;i)))
                    {}\mRightarrow{}  (\mforall{}R:Interface  {}\mrightarrow{}  Message(g)  {}\mrightarrow{}  \mBbbP{}.  \mforall{}R':Interface  {}\mrightarrow{}  Message(f)  {}\mrightarrow{}  \mBbbP{}.
                                ((\mforall{}eo:EO+(Message(g))
                                        (eo-msg-interface-constraint(eo;X;hdrs;g)
                                        {}\mRightarrow{}  for  every  v  in  X  there  is  an
                                              earlier  event    with  info=m  such  that
                                              R[v;m]))
                                {}\mRightarrow{}  (\mforall{}e:E.  \mforall{}v:Interface.
                                            ((correct  loc(e))
                                            {}\mRightarrow{}  (\muparrow{}has-header-and-in-locs(info(e);hdr;locs))
                                            {}\mRightarrow{}  R[v;snd(msg-body(info(e)))]
                                            {}\mRightarrow{}  (\mdownarrow{}\mexists{}e':E.  ((e'  <  e)  \mwedge{}  R'[v;info(e')]))))
                                {}\mRightarrow{}  for  every  v  in  local-simulation-class(X;locs;hdr)  at  location  i  s.t.  correct  i
                                      there  is  an  earlier  event  with  info=m    such  that  R'[v;m]))) 
                supposing  hdr  encodes  Id  \mtimes{}  Message(g)))
Date html generated:
2015_07_22-PM-00_07_18
Last ObjectModification:
2015_02_04-PM-04_41_48
Home
Index