Nuprl Lemma : Paxos-spec6-Vote-invariant

[Info:Type]
  es:EO+(Info). failset:Id List.
    [T:Type]
      f:. acceptors:Id List. Reserve,NoProposal,NewBallot:EClass(). VoteState:EClass(AcceptorState).
      Proposal:EClass(  T). AcceptOrReject:EClass(  T  ). leader:  Id. Decide,Input:EClass(T).
      Vote:EClass(Id    ). Collect:EClass(    T).
        (Paxos-spec6-body{i:l}(Info;es;T;f;acceptors;
                               Reserve;VoteState;Proposal;
                               AcceptOrReject;leader;Decide;
                               Vote;Input;Collect;NoProposal;
                               NewBallot;failset)
         (nb:E(NewBallot). vt:E(Vote).  (nb <loc vt) supposing (snd(fst(Vote(vt)))) = NewBallot(nb)))


Proof not projected




Definitions occuring in Statement :  Paxos-spec6-body: Paxos-spec6-body paxos-acceptor-state: AcceptorState es-E-interface: E(X) eclass-val: X(e) eclass: EClass(A[eo; e]) event-ordering+: EO+(Info) es-locl: (e <loc e') Id: Id bool: nat_plus: nat: uimplies: b supposing a uall: [x:A]. B[x] pi1: fst(t) pi2: snd(t) all: x:A. B[x] implies: P  Q function: x:A  B[x] product: x:A  B[x] list: type List int: universe: Type equal: s = t
Definitions :  es-locl: (e <loc e') and: P  Q prop: nat: member: t  T true: True squash: T uall: [x:A]. B[x] cand: A c B nat_plus:
Lemmas :  Id_wf le_wf

\mforall{}[Info:Type]
    \mforall{}es:EO+(Info).  \mforall{}failset:Id  List.
        \mforall{}[T:Type]
            \mforall{}f:\mBbbN{}\msupplus{}.  \mforall{}acceptors:Id  List.  \mforall{}Reserve,NoProposal,NewBallot:EClass(\mBbbN{}).
            \mforall{}VoteState:EClass(AcceptorState).  \mforall{}Proposal:EClass(\mBbbN{}  \mtimes{}  T).  \mforall{}AcceptOrReject:EClass(\mBbbN{}  \mtimes{}  T  \mtimes{}  \mBbbB{}).
            \mforall{}leader:\mBbbN{}  {}\mrightarrow{}  Id.  \mforall{}Decide,Input:EClass(T).  \mforall{}Vote:EClass(Id  \mtimes{}  \mBbbN{}  \mtimes{}  \mBbbB{}).
            \mforall{}Collect:EClass(\mBbbN{}  \mtimes{}  \mBbbZ{}  \mtimes{}  T).
                (Paxos-spec6-body\{i:l\}(Info;es;T;f;acceptors;
                                                              Reserve;VoteState;Proposal;
                                                              AcceptOrReject;leader;Decide;
                                                              Vote;Input;Collect;NoProposal;
                                                              NewBallot;failset)
                {}\mRightarrow{}  (\mforall{}nb:E(NewBallot).  \mforall{}vt:E(Vote).
                            (nb  <loc  vt)  supposing  (snd(fst(Vote(vt))))  =  NewBallot(nb)))


Date html generated: 2011_10_20-PM-04_39_28
Last ObjectModification: 2011_06_18-PM-02_04_15

Home Index