Nuprl Lemma : new_23_sig_quorum_state_eq1
∀Cmd:ValueAllType. ∀notify,propose:Atom List. ∀f:new_23_sig_headers_type{i:l}(Cmd;notify;propose). ∀es:EO+(Message(f)).
∀e:E. ∀n,r:ℤ.
  (new_23_sig_QuorumStateFun(Cmd;notify;propose;f;<n, r>es;e)
  = <rev(mapfilter(λe.(snd(fst(msgval(e))));
                   λe.new_23_sig_vote_with_ballot_first(Cmd;notify;propose;f;es;e;n;r);
                   [es-init(es;e);e)))
    , rev(mapfilter(λe.(snd(msgval(e)));
                    λe.new_23_sig_vote_with_ballot_first(Cmd;notify;propose;f;es;e;n;r);
                    [es-init(es;e);e)))
    >
  ∈ (Cmd List × (Id List)))
Proof
Definitions occuring in Statement : 
new_23_sig_vote_with_ballot_first: new_23_sig_vote_with_ballot_first(Cmd;notify;propose;f;es;e;n;r)
, 
new_23_sig_QuorumStateFun: new_23_sig_QuorumStateFun(Cmd;notify;propose;f;x;es;e)
, 
new_23_sig_headers_type: new_23_sig_headers_type{i:l}(Cmd;notify;propose)
, 
es-info-body: msgval(e)
, 
Message: Message(f)
, 
event-ordering+: EO+(Info)
, 
es-init: es-init(es;e)
, 
es-closed-open-interval: [e;e')
, 
es-E: E
, 
Id: Id
, 
mapfilter: mapfilter(f;P;L)
, 
reverse: rev(as)
, 
list: T List
, 
vatype: ValueAllType
, 
pi1: fst(t)
, 
pi2: snd(t)
, 
all: ∀x:A. B[x]
, 
lambda: λx.A[x]
, 
pair: <a, b>
, 
product: x:A × B[x]
, 
int: ℤ
, 
atom: Atom
, 
equal: s = t ∈ T
Lemmas : 
es-causl-swellfnd, 
event-ordering+_subtype, 
Message_wf, 
nat_properties, 
less_than_transitivity1, 
less_than_irreflexivity, 
ge_wf, 
less_than_wf, 
es-E_wf, 
int_seg_wf, 
int_seg_subtype-nat, 
decidable__le, 
subtract_wf, 
false_wf, 
not-ge-2, 
less-iff-le, 
condition-implies-le, 
minus-one-mul, 
zero-add, 
minus-add, 
minus-minus, 
add-associates, 
add-swap, 
add-commutes, 
add_functionality_wrt_le, 
add-zero, 
le-add-cancel, 
decidable__equal_int, 
subtype_rel-int_seg, 
le_weakening, 
int_seg_properties, 
le_wf, 
nat_wf, 
zero-le-nat, 
lelt_wf, 
es-causl_wf, 
decidable__assert, 
es-first_wf2, 
list_wf, 
Id_wf, 
new_23_sig_quorum_state_fun_eq, 
reverse_wf, 
mapfilter_wf, 
es-closed-open-interval_wf, 
es-init_wf, 
new_23_sig_vote_with_ballot_first_wf, 
assert_wf, 
new_23_sig_vote_with_ballot_first-assert-type, 
es-info-body_wf, 
iff_weakening_equal, 
equal_wf, 
decidable__lt, 
not-equal-2, 
le-add-cancel-alt, 
not-le-2, 
sq_stable__le, 
add-mul-special, 
zero-mul, 
es-init-identity, 
squash_wf, 
true_wf, 
event_ordering_wf, 
nil_wf, 
es-closed-open-interval-nil, 
bool_cases_sqequal, 
mapfilter_nil_lemma, 
reverse_nil_lemma, 
sqequal-tt-to-assert, 
sqequal-ff-to-assert, 
bool_wf, 
eqtt_to_assert, 
eqff_to_assert, 
subtype_base_sq, 
bool_subtype_base, 
member-eclass_wf, 
new_23_sig_vote'base_wf, 
es-pred_wf, 
new_23_sig_add_to_quorum_wf, 
es-loc_wf, 
classfun-res_wf, 
base-headers-msg-val-single-val, 
cons_wf_listp, 
cons_wf, 
listp_wf, 
subtype_rel_weakening, 
ext-eq_weakening, 
new_23_sig_QuorumStateFun_wf, 
es-init-locl, 
set_wf, 
map_cons_lemma, 
map_nil_lemma, 
es-pred-locl, 
es-causl_weakening, 
append_wf, 
es-closed-open-interval-decomp-last, 
mapfilter-append, 
mapfilter-singleton, 
member-implies-classrel, 
new_23_sig_vote_with_ballot-if-classrel, 
new_23_sig_vote_with_ballot-assert-type, 
pair-eta, 
length_wf, 
name_wf, 
new_23_sig_headers_wf, 
l_all_iff, 
l_member_wf, 
new_23_sig_headers_fun_wf, 
cons_member, 
equal-wf-base, 
list_subtype_base, 
atom_subtype_base, 
name_eq_wf, 
assert-name_eq, 
sq_stable__no_repeats, 
assert-bnot, 
product-deq_wf, 
int-deq_wf, 
deq_wf, 
pi1_wf_top, 
top_wf, 
es-interface-subtype_rel2, 
event-ordering+_wf, 
subtype_rel_product, 
subtype_top, 
subtype_rel_wf, 
bnot_wf, 
deq-member_wf, 
id-deq_wf, 
pi2_wf, 
not_wf, 
assert_elim, 
and_wf, 
bfalse_wf, 
btrue_neq_bfalse, 
assert-product-deq, 
iff_transitivity, 
iff_weakening_uiff, 
assert_of_bnot, 
assert-deq-member, 
reverse_append, 
reverse_singleton, 
list_ind_cons_lemma, 
list_ind_nil_lemma, 
classfun-res-member-base, 
es-init-elim2, 
member-reverse, 
member-mapfilter, 
new_23_sig_vote_with_ballot_wf, 
bl-all_wf, 
new_23_sig_vote_with_ballot_and_id_wf, 
l_all_wf2, 
l_all_fwd, 
new_23_sig_vote_with_ballot_first-assert, 
new_23_sig_vote_with_ballot-assert-classrel, 
classrel_wf, 
new_23_sig_vote_with_ballot_and_id-if-classrel, 
assert_of_band, 
assert-bl-all, 
l_all_functionality, 
classfun-res-base-classrel, 
equal-wf-base-T, 
int_subtype_base, 
new_23_sig_vote_with_ballot_first-not2, 
l_exists_iff, 
new_23_sig_vote_with_ballot_and_id-assert-classrel, 
base-noloc-classrel, 
append-nil, 
classrel-implies-member, 
append_nil_sq
Latex:
\mforall{}Cmd:ValueAllType.  \mforall{}notify,propose:Atom  List.  \mforall{}f:new\_23\_sig\_headers\_type\{i:l\}(Cmd;notify;propose).
\mforall{}es:EO+(Message(f)).  \mforall{}e:E.  \mforall{}n,r:\mBbbZ{}.
    (new\_23\_sig\_QuorumStateFun(Cmd;notify;propose;f;<n,  r>es;e)
    =  <rev(mapfilter(\mlambda{}e.(snd(fst(msgval(e))));
                                      \mlambda{}e.new\_23\_sig\_vote\_with\_ballot\_first(Cmd;notify;propose;f;es;e;n;r);
                                      [es-init(es;e);e)))
        ,  rev(mapfilter(\mlambda{}e.(snd(msgval(e)));
                                        \mlambda{}e.new\_23\_sig\_vote\_with\_ballot\_first(Cmd;notify;propose;f;es;e;n;r);
                                        [es-init(es;e);e)))
        >)
Date html generated:
2015_07_23-PM-04_03_00
Last ObjectModification:
2015_02_04-PM-04_04_33
Home
Index