Nuprl Lemma : consensus-ts5-true-knowledge
∀[V:Type]
  ∀A:Id List. ∀W:{a:Id| (a ∈ A)}  List List. ∀x:ts-reachable(consensus-ts5(V;A;W)).
    let x1,x2 = x 
    in ∀a,b:{a:Id| (a ∈ A)} .
         let I,z = Knowledge(x2;a)(b) 
         in (I ≤ Inning(x1;b))
            ∧ case z
               of inl(p) =>
               let k,v = p 
               in k < I
                  ∧ (↑k ∈ dom(Estimate(x1;b)))
                  ∧ (Estimate(x1;b)(k) = v ∈ V)
                  ∧ (∀i:ℤ. ¬↑i ∈ dom(Estimate(x1;b)) supposing k < i ∧ i < I)
               | inr(p) =>
               ∀i:ℤ. ¬↑i ∈ dom(Estimate(x1;b)) supposing i < I 
         supposing ↑b ∈ dom(Knowledge(x2;a))
Proof
Definitions occuring in Statement : 
consensus-ts5: consensus-ts5(V;A;W)
, 
cs-knowledge: Knowledge(x;a)
, 
cs-estimate: Estimate(s;a)
, 
cs-inning: Inning(s;a)
, 
fpf-ap: f(x)
, 
fpf-dom: x ∈ dom(f)
, 
id-deq: IdDeq
, 
Id: Id
, 
int-deq: IntDeq
, 
l_member: (x ∈ l)
, 
list: T List
, 
assert: ↑b
, 
less_than: a < b
, 
uimplies: b supposing a
, 
uall: ∀[x:A]. B[x]
, 
le: A ≤ B
, 
all: ∀x:A. B[x]
, 
not: ¬A
, 
and: P ∧ Q
, 
set: {x:A| B[x]} 
, 
spread: spread def, 
decide: case b of inl(x) => s[x] | inr(y) => t[y]
, 
int: ℤ
, 
universe: Type
, 
equal: s = t ∈ T
, 
ts-reachable: ts-reachable(ts)
Lemmas : 
ts-reachable-induction, 
consensus-ts5_wf, 
subtype_rel_self, 
consensus-state4_wf, 
consensus-state5_wf, 
all_wf, 
l_member_wf, 
isect_wf, 
assert_wf, 
fpf-dom_wf, 
id-deq_wf, 
cs-knowledge_wf, 
subtype-fpf2, 
subtype_top, 
top_wf, 
fpf-ap_wf, 
le_wf, 
cs-inning_wf, 
less_than_wf, 
int-deq_wf, 
cs-estimate_wf, 
consensus-state4-subtype, 
not_wf, 
ts-reachable_wf, 
subtype_rel_wf, 
ts-type_wf, 
list_wf, 
Id_wf, 
sq_stable__all, 
fpf_wf, 
set_wf, 
bool_wf, 
eqtt_to_assert, 
eqff_to_assert, 
equal_wf, 
bool_cases_sqequal, 
subtype_base_sq, 
bool_subtype_base, 
assert-bnot, 
sq_stable__uall, 
false_wf, 
true_wf, 
sq_stable__and, 
sq_stable__le, 
sq_stable__less_than, 
sq_stable_from_decidable, 
decidable__true, 
sq_stable__equal, 
sq_stable__not, 
squash_wf, 
member-less_than, 
decidable__false, 
decide_bfalse_lemma, 
deq_member_nil_lemma, 
subtype_rel-deq, 
sq_stable__l_member, 
decidable__equal_Id, 
mk_fpf_wf, 
list-subtype, 
infix_ap_wf, 
ts-rel_wf, 
subtype_rel-equal, 
assert_witness, 
member_wf, 
and_wf, 
assert_elim, 
atom2_subtype_base, 
decidable__le, 
not-le-2, 
condition-implies-le, 
minus-add, 
minus-one-mul, 
add-swap, 
add-commutes, 
le_antisymmetry_iff, 
add_functionality_wrt_le, 
add-associates, 
le-add-cancel, 
le_transitivity, 
le_weakening, 
fpf-join-dom, 
fpf-single_wf, 
equal-wf-base-T, 
int_subtype_base, 
fpf-single-dom, 
or_wf, 
fpf-join-ap-sq, 
equal-wf-T-base, 
bnot_wf, 
uiff_transitivity, 
assert_of_bnot, 
less_than_transitivity1, 
less_than_irreflexivity, 
deq_wf, 
fpf_ap_single_lemma, 
it_wf, 
assert_functionality_wrt_uiff, 
eq_id_wf, 
fpf-single-dom-sq, 
assert-eq-id, 
iff_transitivity, 
iff_weakening_uiff, 
equal_functionality_wrt_subtype_rel2, 
fpf-join-ap, 
iff_weakening_equal
\mforall{}[V:Type]
    \mforall{}A:Id  List.  \mforall{}W:\{a:Id|  (a  \mmember{}  A)\}    List  List.  \mforall{}x:ts-reachable(consensus-ts5(V;A;W)).
        let  x1,x2  =  x 
        in  \mforall{}a,b:\{a:Id|  (a  \mmember{}  A)\}  .
                  let  I,z  =  Knowledge(x2;a)(b) 
                  in  (I  \mleq{}  Inning(x1;b))
                        \mwedge{}  case  z
                              of  inl(p)  =>
                              let  k,v  =  p 
                              in  k  <  I
                                    \mwedge{}  (\muparrow{}k  \mmember{}  dom(Estimate(x1;b)))
                                    \mwedge{}  (Estimate(x1;b)(k)  =  v)
                                    \mwedge{}  (\mforall{}i:\mBbbZ{}.  \mneg{}\muparrow{}i  \mmember{}  dom(Estimate(x1;b))  supposing  k  <  i  \mwedge{}  i  <  I)
                              |  inr(p)  =>
                              \mforall{}i:\mBbbZ{}.  \mneg{}\muparrow{}i  \mmember{}  dom(Estimate(x1;b))  supposing  i  <  I 
                  supposing  \muparrow{}b  \mmember{}  dom(Knowledge(x2;a))
Date html generated:
2015_07_17-AM-11_41_53
Last ObjectModification:
2015_07_16-AM-10_19_03
Home
Index