Nuprl Lemma : consensus-rcv-crosses-threshold
∀[V:Type]
  ∀A:Id List. ∀t:ℕ+. ∀n:ℤ. ∀L:consensus-rcv(V;A) List. ∀r:consensus-rcv(V;A).
    (∃a:{a:Id| (a ∈ A)} 
      ∃v:V. ((r = Vote[a;n;v] ∈ consensus-rcv(V;A)) ∧ (¬↑null(filter(λr.n - 1 <z inning(r);L))) ∧ (0 ≤ n))) supposing 
       ((((2 * t) + 1) ≤ ||values-for-distinct(IdDeq;votes-from-inning(n;L @ [r]))||) and 
       (||values-for-distinct(IdDeq;votes-from-inning(n;L))|| ≤ (2 * t)))
Proof
Definitions occuring in Statement : 
votes-from-inning: votes-from-inning(i;L)
, 
rcvd-inning-gt: i <z inning(r)
, 
cs-rcv-vote: Vote[a;i;v]
, 
consensus-rcv: consensus-rcv(V;A)
, 
id-deq: IdDeq
, 
Id: Id
, 
values-for-distinct: values-for-distinct(eq;L)
, 
l_member: (x ∈ l)
, 
filter: filter(P;l)
, 
length: ||as||
, 
append: as @ bs
, 
null: null(as)
, 
cons: [a / b]
, 
nil: []
, 
list: T List
, 
nat_plus: ℕ+
, 
assert: ↑b
, 
uimplies: b supposing a
, 
uall: ∀[x:A]. B[x]
, 
le: A ≤ B
, 
all: ∀x:A. B[x]
, 
exists: ∃x:A. B[x]
, 
not: ¬A
, 
and: P ∧ Q
, 
set: {x:A| B[x]} 
, 
lambda: λx.A[x]
, 
multiply: n * m
, 
subtract: n - m
, 
add: n + m
, 
natural_number: $n
, 
int: ℤ
, 
universe: Type
, 
equal: s = t ∈ T
Lemmas : 
less_than_wf, 
length_wf, 
values-for-distinct_wf, 
Id_wf, 
l_member_wf, 
id-deq_wf, 
subtype_rel-deq, 
sq_stable__l_member, 
decidable__equal_Id, 
equal_wf, 
set_wf, 
votes-from-inning_wf, 
append_wf, 
consensus-rcv_wf, 
cons_wf, 
nil_wf, 
length-map, 
remove-repeats_wf, 
map_wf, 
mapfilter-append, 
map_append_sq, 
le_wf, 
list_wf, 
nat_plus_wf, 
filter_cons_lemma, 
filter_nil_lemma, 
map_nil_lemma, 
append-nil, 
subtype_rel_list, 
top_wf, 
condition-implies-le, 
minus-add, 
minus-one-mul, 
mul-associates, 
add-swap, 
add-commutes, 
add_functionality_wrt_le, 
add-associates, 
le-add-cancel, 
eq_int_wf, 
bool_wf, 
equal-wf-T-base, 
assert_wf, 
equal-wf-base-T, 
int_subtype_base, 
map_cons_lemma, 
bnot_wf, 
not_wf, 
uiff_transitivity, 
eqtt_to_assert, 
assert_of_eq_int, 
iff_transitivity, 
iff_weakening_uiff, 
eqff_to_assert, 
assert_of_bnot, 
subtype_base_sq, 
cs-rcv-vote_wf, 
sq_stable__le, 
le_transitivity, 
le_weakening, 
null_wf3, 
filter_wf5, 
rcvd-inning-gt_wf, 
subtract_wf, 
exists_wf, 
assert_of_null, 
votes-from-inning-is-nil, 
subtract-is-less, 
list_subtype_base, 
set_subtype_base, 
atom2_subtype_base, 
list_ind_nil_lemma, 
remove_repeats_cons_lemma, 
remove_repeats_nil_lemma, 
length_of_cons_lemma, 
length_of_nil_lemma
\mforall{}[V:Type]
    \mforall{}A:Id  List.  \mforall{}t:\mBbbN{}\msupplus{}.  \mforall{}n:\mBbbZ{}.  \mforall{}L:consensus-rcv(V;A)  List.  \mforall{}r:consensus-rcv(V;A).
        (\mexists{}a:\{a:Id|  (a  \mmember{}  A)\} 
            \mexists{}v:V.  ((r  =  Vote[a;n;v])  \mwedge{}  (\mneg{}\muparrow{}null(filter(\mlambda{}r.n  -  1  <z  inning(r);L)))  \mwedge{}  (0  \mleq{}  n)))  supposing 
              ((((2  *  t)  +  1)  \mleq{}  ||values-for-distinct(IdDeq;votes-from-inning(n;L  @  [r]))||)  and 
              (||values-for-distinct(IdDeq;votes-from-inning(n;L))||  \mleq{}  (2  *  t)))
Date html generated:
2015_07_17-AM-11_49_32
Last ObjectModification:
2015_01_28-AM-00_44_06
Home
Index