Step * of Lemma archive-condition-append-init

[V:Type]
  ∀A:Id List. ∀t:ℕ. ∀f:(V List) ─→ V. ∀L:consensus-rcv(V;A) List. ∀n:ℤ. ∀v,v2:V.
    (archive-condition(V;A;t;f;n;v;L [Init[v2]])
    ⇐⇒ {(L [] ∈ (consensus-rcv(V;A) List)) ∧ (n 0 ∈ ℤ) ∧ (v2 v ∈ V)})
BY
(Unfold `archive-condition` THEN Auto) }

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
    ∃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)}

2
1. [V] 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)) ∧ (n 0 ∈ ℤ) ∧ (v2 v ∈ V)}@i
⊢ ∃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))))))


Latex:


\mforall{}[V:Type]
    \mforall{}A:Id  List.  \mforall{}t:\mBbbN{}.  \mforall{}f:(V  List)  {}\mrightarrow{}  V.  \mforall{}L:consensus-rcv(V;A)  List.  \mforall{}n:\mBbbZ{}.  \mforall{}v,v2:V.
        (archive-condition(V;A;t;f;n;v;L  @  [Init[v2]])  \mLeftarrow{}{}\mRightarrow{}  \{(L  =  [])  \mwedge{}  (n  =  0)  \mwedge{}  (v2  =  v)\})


By

(Unfold  `archive-condition`  0  THEN  Auto)




Home Index