Step * 1 of Lemma archive-condition-append-init


1. Type
2. Id List@i
3. : ℕ@i
4. (V List) ─→ V@i
5. consensus-rcv(V;A) List@i
6. : ℤ@i
7. V@i
8. v2 V@i
9. ∃L':consensus-rcv(V;A) List
    ∃r:consensus-rcv(V;A)
     (((L [Init[v2]]) (L' [r]) ∈ (consensus-rcv(V;A) List))
     ∧ (((L' [] ∈ (consensus-rcv(V;A) List))
       ∧ (((r Init[v] ∈ consensus-rcv(V;A)) ∧ (n 0 ∈ ℤ))
         ∨ ((0 ≤ n) ∧ (∃a:{a:Id| (a ∈ A)} (r Vote[a;n;v] ∈ consensus-rcv(V;A))))))
       ∨ ((0 < n
         ∧ (||values-for-distinct(IdDeq;votes-from-inning(n 1;L'))|| ≤ (2 t))
         ∧ (↑null(filter(λr.n 1 <inning(r);L'))))
         ∧ ((∃a:{a:Id| (a ∈ A)} (r Vote[a;n;v] ∈ consensus-rcv(V;A)))
           ∨ ((((2 t) 1) ≤ ||values-for-distinct(IdDeq;votes-from-inning(n 1;L [Init[v2]]))||)
             ∧ ((f values-for-distinct(IdDeq;votes-from-inning(n 1;L [Init[v2]]))) v ∈ V))))))@i
⊢ {(L [] ∈ (consensus-rcv(V;A) List)) ∧ (n 0 ∈ ℤ) ∧ (v2 v ∈ V)}
BY
(ExRepD THEN RepeatFor (AutoSimpHyp Auto (-2)) THEN SplitOrHyps THEN ExRepD THEN SplitOrHyps THEN ExRepD) }

1
1. Type
2. Id List@i
3. : ℕ@i
4. (V List) ─→ V@i
5. consensus-rcv(V;A) List@i
6. : ℤ@i
7. V@i
8. v2 V@i
9. L' consensus-rcv(V;A) List@i
10. consensus-rcv(V;A)@i
11. L' ∈ (consensus-rcv(V;A) List)
12. Init[v2] r ∈ consensus-rcv(V;A)
13. [] [] ∈ (consensus-rcv(V;A) List)
14. L' [] ∈ (consensus-rcv(V;A) List)@i
15. Init[v] ∈ consensus-rcv(V;A)@i
16. 0 ∈ ℤ@i
⊢ (L [] ∈ (consensus-rcv(V;A) List)) ∧ (n 0 ∈ ℤ) ∧ (v2 v ∈ V)

2
1. Type
2. Id List@i
3. : ℕ@i
4. (V List) ─→ V@i
5. consensus-rcv(V;A) List@i
6. : ℤ@i
7. V@i
8. v2 V@i
9. L' consensus-rcv(V;A) List@i
10. consensus-rcv(V;A)@i
11. L' ∈ (consensus-rcv(V;A) List)
12. Init[v2] r ∈ consensus-rcv(V;A)
13. [] [] ∈ (consensus-rcv(V;A) List)
14. L' [] ∈ (consensus-rcv(V;A) List)@i
15. 0 ≤ n@i
16. {a:Id| (a ∈ A)} @i
17. Vote[a;n;v] ∈ consensus-rcv(V;A)@i
⊢ (L [] ∈ (consensus-rcv(V;A) List)) ∧ (n 0 ∈ ℤ) ∧ (v2 v ∈ V)

3
1. Type
2. Id List@i
3. : ℕ@i
4. (V List) ─→ V@i
5. consensus-rcv(V;A) List@i
6. : ℤ@i
7. V@i
8. v2 V@i
9. L' consensus-rcv(V;A) List@i
10. consensus-rcv(V;A)@i
11. L' ∈ (consensus-rcv(V;A) List)
12. Init[v2] r ∈ consensus-rcv(V;A)
13. [] [] ∈ (consensus-rcv(V;A) List)
14. 0 < n@i
15. ||values-for-distinct(IdDeq;votes-from-inning(n 1;L'))|| ≤ (2 t)@i
16. ↑null(filter(λr.n 1 <inning(r);L'))@i
17. {a:Id| (a ∈ A)} @i
18. Vote[a;n;v] ∈ consensus-rcv(V;A)@i
⊢ (L [] ∈ (consensus-rcv(V;A) List)) ∧ (n 0 ∈ ℤ) ∧ (v2 v ∈ V)

4
1. Type
2. Id List@i
3. : ℕ@i
4. (V List) ─→ V@i
5. consensus-rcv(V;A) List@i
6. : ℤ@i
7. V@i
8. v2 V@i
9. L' consensus-rcv(V;A) List@i
10. consensus-rcv(V;A)@i
11. L' ∈ (consensus-rcv(V;A) List)
12. Init[v2] r ∈ consensus-rcv(V;A)
13. [] [] ∈ (consensus-rcv(V;A) List)
14. 0 < n@i
15. ||values-for-distinct(IdDeq;votes-from-inning(n 1;L'))|| ≤ (2 t)@i
16. ↑null(filter(λr.n 1 <inning(r);L'))@i
17. ((2 t) 1) ≤ ||values-for-distinct(IdDeq;votes-from-inning(n 1;L [Init[v2]]))||@i
18. (f values-for-distinct(IdDeq;votes-from-inning(n 1;L [Init[v2]]))) v ∈ V@i
⊢ (L [] ∈ (consensus-rcv(V;A) List)) ∧ (n 0 ∈ ℤ) ∧ (v2 v ∈ V)


Latex:



1.  V  :  Type
2.  A  :  Id  List@i
3.  t  :  \mBbbN{}@i
4.  f  :  (V  List)  {}\mrightarrow{}  V@i
5.  L  :  consensus-rcv(V;A)  List@i
6.  n  :  \mBbbZ{}@i
7.  v  :  V@i
8.  v2  :  V@i
9.  \mexists{}L':consensus-rcv(V;A)  List
        \mexists{}r:consensus-rcv(V;A)
          (((L  @  [Init[v2]])  =  (L'  @  [r]))
          \mwedge{}  (((L'  =  [])
              \mwedge{}  (((r  =  Init[v])  \mwedge{}  (n  =  0))  \mvee{}  ((0  \mleq{}  n)  \mwedge{}  (\mexists{}a:\{a:Id|  (a  \mmember{}  A)\}  .  (r  =  Vote[a;n;v])))))
              \mvee{}  ((0  <  n
                  \mwedge{}  (||values-for-distinct(IdDeq;votes-from-inning(n  -  1;L'))||  \mleq{}  (2  *  t))
                  \mwedge{}  (\muparrow{}null(filter(\mlambda{}r.n  -  1  <z  inning(r);L'))))
                  \mwedge{}  ((\mexists{}a:\{a:Id|  (a  \mmember{}  A)\}  .  (r  =  Vote[a;n;v]))
                      \mvee{}  ((((2  *  t)  +  1)  \mleq{}  ||values-for-distinct(IdDeq;votes-from-inning(n  -  1;L
                              @  [Init[v2]]))||)
                          \mwedge{}  ((f  values-for-distinct(IdDeq;votes-from-inning(n  -  1;L  @  [Init[v2]])))  =  v))))))@i
\mvdash{}  \{(L  =  [])  \mwedge{}  (n  =  0)  \mwedge{}  (v2  =  v)\}


By

(ExRepD
  THEN  RepeatFor  2  (AutoSimpHyp  Auto  (-2))
  THEN  SplitOrHyps
  THEN  ExRepD
  THEN  SplitOrHyps
  THEN  ExRepD)




Home Index