Nuprl Lemma : pv11_p1_add_if_new_iff

Cmd:ValueAllType. ∀p,x:ℤ × Cmd. ∀proposals:(ℤ × Cmd) List.
  ((p ∈ pv11_p1_add_if_new() pv11_p1_same_proposal(Cmd) proposals)
  ⇐⇒ (p ∈ proposals) ∨ if (∃z∈proposals.pv11_p1_same_proposal(Cmd) z)_b then False else x ∈ (ℤ × Cmd) fi )


Proof




Definitions occuring in Statement :  pv11_p1_add_if_new: pv11_p1_add_if_new() pv11_p1_same_proposal: pv11_p1_same_proposal(Cmd) bl-exists: (∃x∈L.P[x])_b l_member: (x ∈ l) list: List vatype: ValueAllType ifthenelse: if then else fi  all: x:A. B[x] iff: ⇐⇒ Q or: P ∨ Q false: False apply: a product: x:A × B[x] int: equal: t ∈ T
Definitions unfolded in proof :  vatype: ValueAllType all: x:A. B[x] iff: ⇐⇒ Q and: P ∧ Q implies:  Q pv11_p1_add_if_new: pv11_p1_add_if_new() member: t ∈ T uall: [x:A]. B[x] so_lambda: λ2x.t[x] prop: so_apply: x[s] or: P ∨ Q uimplies: supposing a sq_type: SQType(T) guard: {T} uiff: uiff(P;Q) ifthenelse: if then else fi  btrue: tt bool: 𝔹 unit: Unit it: bfalse: ff exists: x:A. B[x] bnot: ¬bb assert: b false: False not: ¬A rev_implies:  Q subtype_rel: A ⊆B

Latex:
\mforall{}Cmd:ValueAllType.  \mforall{}p,x:\mBbbZ{}  \mtimes{}  Cmd.  \mforall{}proposals:(\mBbbZ{}  \mtimes{}  Cmd)  List.
    ((p  \mmember{}  pv11\_p1\_add\_if\_new()  pv11\_p1\_same\_proposal(Cmd)  x  proposals)
    \mLeftarrow{}{}\mRightarrow{}  (p  \mmember{}  proposals)
            \mvee{}  if  (\mexists{}z\mmember{}proposals.pv11\_p1\_same\_proposal(Cmd)  x  z)\_b  then  False  else  p  =  x  fi  )



Date html generated: 2016_05_17-PM-03_16_22
Last ObjectModification: 2015_12_29-PM-11_21_06

Theory : paxos!synod


Home Index