Step
*
1
1
of Lemma
consensus-rcv-crosses-threshold
1. [V] : Type
2. A : Id List@i
3. t : ℕ+@i
4. n : ℤ@i
5. L : consensus-rcv(V;A) List@i
6. r : consensus-rcv(V;A)@i
7. v : {b:Id| (b ∈ A)}  List@i
8. map(λp.(fst(p));votes-from-inning(n;L)) = v ∈ ({b:Id| (b ∈ A)}  List)@i
⊢ (||remove-repeats(IdDeq;v)|| ≤ (2 * t))
⇒ (((2 * t) + 1) ≤ ||remove-repeats(IdDeq;v @ map(λp.(fst(p));votes-from-inning(n;[r])))||)
⇒ (∃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)))
BY
{ (RepUR ``votes-from-inning mapfilter rcvd-inning-eq rcv-vote? rcvd-vote`` 0
   THEN (D -3 THEN Try (RepeatFor 2 (D -3)))
   THEN Reduce 0
   THEN Try ((RWO "append-nil" 0 THEN Auto))
   THEN (SplitOnConclITE THEN Reduce 0 THEN Try ((RWO "append-nil" 0 THEN Auto)))
   THEN Auto) }
1
1. [V] : Type
2. A : Id List@i
3. t : ℕ+@i
4. n : ℤ@i
5. L : consensus-rcv(V;A) List@i
6. y1 : {b:Id| (b ∈ A)} @i
7. y3 : ℕ@i
8. y4 : V@i
9. v : {b:Id| (b ∈ A)}  List@i
10. map(λp.(fst(p));votes-from-inning(n;L)) = v ∈ ({b:Id| (b ∈ A)}  List)@i
11. n = y3 ∈ ℤ
12. ||remove-repeats(IdDeq;v)|| ≤ (2 * t)@i
13. ((2 * t) + 1) ≤ ||remove-repeats(IdDeq;v @ [y1])||@i
⊢ ∃a:{a:Id| (a ∈ A)} 
   ∃v:V. (((inr <y1, y3, y4> ) = Vote[a;n;v] ∈ consensus-rcv(V;A)) ∧ (¬↑null(filter(λr.n - 1 <z inning(r);L))) ∧ (0 ≤ n)\000C)
Latex:
1.  [V]  :  Type
2.  A  :  Id  List@i
3.  t  :  \mBbbN{}\msupplus{}@i
4.  n  :  \mBbbZ{}@i
5.  L  :  consensus-rcv(V;A)  List@i
6.  r  :  consensus-rcv(V;A)@i
7.  v  :  \{b:Id|  (b  \mmember{}  A)\}    List@i
8.  map(\mlambda{}p.(fst(p));votes-from-inning(n;L))  =  v@i
\mvdash{}  (||remove-repeats(IdDeq;v)||  \mleq{}  (2  *  t))
{}\mRightarrow{}  (((2  *  t)  +  1)  \mleq{}  ||remove-repeats(IdDeq;v  @  map(\mlambda{}p.(fst(p));votes-from-inning(n;[r])))||)
{}\mRightarrow{}  (\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)))
By
(RepUR  ``votes-from-inning  mapfilter  rcvd-inning-eq  rcv-vote?  rcvd-vote``  0
  THEN  (D  -3  THEN  Try  (RepeatFor  2  (D  -3)))
  THEN  Reduce  0
  THEN  Try  ((RWO  "append-nil"  0  THEN  Auto))
  THEN  (SplitOnConclITE  THEN  Reduce  0  THEN  Try  ((RWO  "append-nil"  0  THEN  Auto)))
  THEN  Auto)
Home
Index