Nuprl Lemma : RSC_VotesInRound-inv
[Cmd:ValueAllType]. 
[es:EO']. 
[e:E]. 
[cmds:Cmd List]. 
[locs:Id List]. 
[n,i:
].
  (<cmds, locs> 
 RSC_VotesInRound{mark-simple-consensus-V2.esh:o}(Cmd) <n, i>(e)
  
 {(||cmds|| = ||locs||)
     
 no_repeats(Id;locs)
     
 (
k:{k:
| (k < ||cmds||) 
 (k < ||locs||)} 
          (
e':{e':E| e' 
loc e } . <<<n, i>, cmds[k]>, locs[k]> 
 RSC_Vote(Cmd)(e')))})
Proof not projected
Definitions occuring in Statement : 
RSC_Vote: RSC_Vote(Cmd), 
Message: Message, 
classrel: v 
 X(e), 
event-ordering+: EO+(Info), 
es-le: e 
loc e' , 
es-E: E, 
Id: Id, 
select: l[i], 
length: ||as||, 
nat:
, 
uall:
[x:A]. B[x], 
guard: {T}, 
all:
x:A. B[x], 
exists:
x:A. B[x], 
squash:
T, 
implies: P 
 Q, 
and: P 
 Q, 
less_than: a < b, 
set: {x:A| B[x]} , 
apply: f a, 
pair: <a, b>, 
product: x:A 
 B[x], 
list: type List, 
int:
, 
equal: s = t, 
no_repeats: no_repeats(T;l), 
vatype: ValueAllType
Definitions : 
vatype: ValueAllType, 
implies: P 
 Q, 
RSC_VotesInRound: Error :RSC_VotesInRound, 
guard: {T}, 
and: P 
 Q, 
all:
x:A. B[x], 
nat:
, 
squash:
T, 
exists:
x:A. B[x], 
prop:
, 
member: t 
 T, 
true: True, 
cand: A c
 B, 
ge: i 
 j , 
le: A 
 B, 
not:
A, 
false: False, 
so_lambda: 
x.t[x], 
top: Top, 
uall:
[x:A]. B[x], 
subtype: S 
 T, 
or: P 
 Q, 
label: ...$L... t, 
so_lambda: 
x y.t[x; y], 
iff: P 

 Q, 
rev_implies: P 
 Q, 
gt: i > j, 
ycomb: Y, 
length: ||as||, 
btrue: tt, 
bfalse: ff, 
lt_int: i <z j, 
bnot: 
b, 
le_int: i 
z j, 
ifthenelse: if b then t else f fi , 
select: l[i], 
es-le: e 
loc e' , 
assert:
b, 
lelt: i 
 j < k, 
int_seg: {i..j
}, 
append: as @ bs, 
Id: Id, 
sq_stable: SqStable(P), 
uimplies: b supposing a, 
so_apply: x[s], 
strongwellfounded: SWellFounded(R[x; y]), 
Accum-class: Accum-class(f;init;X), 
RSC_collect: Error :RSC_collect, 
uiff: uiff(P;Q), 
es-p-local-pred: es-p-local-pred(es;P), 
pi2: snd(t), 
pi1: fst(t), 
es-locl: (e <loc e'), 
sq_type: SQType(T), 
rev_uimplies: rev_uimplies(P;Q), 
so_apply: x[s1;s2]
Lemmas : 
sq_stable__and, 
sq_stable__valueall-type, 
valueall-type_wf, 
length_wf, 
Id_wf, 
no_repeats_wf, 
nat_wf, 
nat_properties, 
squash_wf, 
es-E_wf, 
event-ordering+_inc, 
Message_wf, 
es-le_wf, 
classrel_wf, 
Error :RSC_Vote_wf, 
select_wf, 
sq_stable__equal, 
sq_stable__no_repeats, 
sq_stable__all, 
sq_stable__squash, 
es-causl-swellfnd, 
ge_wf, 
le_wf, 
es-causl_wf, 
rec-combined-class-opt-1-classrel, 
Accum-class_wf, 
Error :RSC_collect_wf, 
single-bag_wf, 
simple-comb-2_wf, 
lifting-2_wf, 
primed-class-opt_wf, 
simple-comb-2-classrel, 
Error :RSC_VotesInRound_wf, 
primed-class-opt-classrel, 
event-ordering+_wf, 
no_repeats_witness, 
Error :pi2_wf, 
pi1_wf_top, 
band_wf, 
eq_int_wf, 
bnot_wf, 
deq-member_wf, 
id-deq_wf, 
bool_wf, 
assert_wf, 
product-wf, 
not_wf, 
l_member_wf, 
bor_wf, 
union-wf, 
bool_cases, 
subtype_base_sq, 
bool_subtype_base, 
iff_transitivity, 
iff_weakening_uiff, 
eqtt_to_assert, 
assert_of_band, 
and_functionality_wrt_iff, 
uiff_transitivity, 
and_functionality_wrt_uiff, 
assert_of_eq_int, 
assert_of_bnot, 
not_functionality_wrt_iff, 
assert-deq-member, 
eqff_to_assert, 
assert_functionality_wrt_uiff, 
bnot_thru_band, 
true_wf, 
assert_of_bor, 
or_functionality_wrt_iff, 
or_functionality_wrt_uiff, 
not_functionality_wrt_uiff, 
no_repeats_cons, 
and_functionality_wrt_uiff2, 
squash_functionality_wrt_uiff, 
Error :eclass_wf, 
Error :RSC_Vote_wf, 
es-locl_wf, 
int_subtype_base, 
es-le_weakening, 
es-locl_transitivity1, 
assert_of_lt_int, 
false_wf, 
iff_functionality_wrt_iff, 
bfalse_wf, 
lt_int_wf, 
iff_imp_equal_bool, 
select_append, 
atom2_subtype_base, 
list_subtype_base, 
bag-member-single, 
length_wf_nat, 
top_wf, 
ifthenelse_wf, 
member_wf, 
length_cons, 
length_nil, 
non_neg_length, 
no_repeats_singleton, 
no_repeats_nil, 
length_wf2
\mforall{}[Cmd:ValueAllType].  \mforall{}[es:EO'].  \mforall{}[e:E].  \mforall{}[cmds:Cmd  List].  \mforall{}[locs:Id  List].  \mforall{}[n,i:\mBbbZ{}].
    (<cmds,  locs>  \mmember{}  RSC\_VotesInRound\{mark-simple-consensus-V2.esh:o\}(Cmd)  <n,  i>(e)
    {}\mRightarrow{}  \{(||cmds||  =  ||locs||)
          \mwedge{}  no\_repeats(Id;locs)
          \mwedge{}  (\mforall{}k:\{k:\mBbbN{}|  (k  <  ||cmds||)  \mwedge{}  (k  <  ||locs||)\} 
                    (\mdownarrow{}\mexists{}e':\{e':E|  e'  \mleq{}loc  e  \}  .  <<<n,  i>,  cmds[k]>,  locs[k]>  \mmember{}  RSC\_Vote(Cmd)(e')))\})
Date html generated:
2012_02_20-PM-04_03_16
Last ObjectModification:
2012_02_02-PM-01_59_45
Home
Index