Nuprl Lemma : ohc_v1_increasing_max
es:EO'. 
e1,e2:E. 
Cmd:ValueAllType. 
zp,z:
 
 (
 List).
  ((e1 <loc e2)
  
 zp 
 ohc_v1_ReplicaState(Cmd)(e1)
  
 z 
 ohc_v1_ReplicaState(Cmd)(e2)
  
 let max1,missing1 = zp 
     in let max2,missing2 = z 
        in (max1 
 max2) 
 (
x:
. ((x 
 missing2) 
 ((x 
 missing1) 
 (max1 < x)))))
Proof not projected
Definitions occuring in Statement : 
ohc_v1_ReplicaState: ohc_v1_ReplicaState(Cmd), 
Message: Message, 
classrel: v 
 X(e), 
event-ordering+: EO+(Info), 
es-locl: (e <loc e'), 
es-E: E, 
le: A 
 B, 
all:
x:A. B[x], 
implies: P 
 Q, 
or: P 
 Q, 
and: P 
 Q, 
less_than: a < b, 
spread: spread def, 
product: x:A 
 B[x], 
list: type List, 
int:
, 
l_member: (x 
 l), 
vatype: ValueAllType
Definitions : 
all:
x:A. B[x], 
vatype: ValueAllType, 
implies: P 
 Q, 
and: P 
 Q, 
le: A 
 B, 
or: P 
 Q, 
ohc_v1_update_replica: ohc_v1_update_replica(Cmd), 
ohc_v1_init: ohc_v1_init(), 
ohc_v1_Initial: ohc_v1_Initial(Cmd), 
prop:
, 
refl: Refl(T;x,y.E[x; y]), 
trans: Trans(T;x,y.E[x; y]), 
member: t 
 T, 
so_lambda: 
x.t[x], 
cand: A c
 B, 
not:
A, 
false: False, 
guard: {T}, 
ifthenelse: if b then t else f fi , 
btrue: tt, 
uiff: uiff(P;Q), 
assert:
b, 
subtype: S 
 T, 
bfalse: ff, 
ohc_v1_initial'base: ohc_v1_initial'base(Cmd), 
ohc_v1_prop2init: ohc_v1_prop2init(Cmd), 
ohc_v1_proposal'base: ohc_v1_proposal'base(Cmd), 
name: Name, 
name_eq: name_eq(x;y), 
name-deq: NameDeq, 
list-deq: list-deq(eq), 
band: p 
 q, 
atom-deq: AtomDeq, 
eq_atom: x =a y, 
ohc_v1_ReplicaState: ohc_v1_ReplicaState(Cmd), 
uall:
[x:A]. B[x], 
so_apply: x[s1;s2], 
so_apply: x[s], 
decidable: Dec(P), 
bool:
, 
unit: Unit, 
uimplies: b supposing a, 
iff: P 

 Q, 
it:
Lemmas : 
Memory-class-trans-refl, 
and_wf, 
le_wf, 
all_wf, 
l_member_wf, 
or_wf, 
less_than_wf, 
ohc_v1_update_replica_wf, 
ohc_v1_init_wf, 
Id_wf, 
bag_wf, 
ohc_v1_Initial_wf, 
decidable__l_member, 
decidable__equal_int, 
sq_stable__and, 
sq_stable_from_decidable, 
decidable__le, 
sq_stable__all, 
decidable__or, 
decidable__lt, 
lt_int_wf, 
bool_wf, 
uiff_transitivity, 
equal_wf, 
assert_wf, 
eqtt_to_assert, 
assert_of_lt_int, 
member_append, 
from-upto-member, 
append_wf, 
from-upto_wf, 
le_int_wf, 
bnot_wf, 
eqff_to_assert, 
assert_functionality_wrt_uiff, 
bnot_of_lt_int, 
assert_of_le_int, 
deq-member_wf, 
int-deq_wf, 
iff_transitivity, 
iff_weakening_uiff, 
assert-deq-member, 
member-list-diff, 
list-diff_wf, 
not_wf, 
assert_of_bnot, 
not_functionality_wrt_iff, 
es-locl_wf, 
event-ordering+_inc, 
Message_wf, 
es-le_wf, 
parallel-class-single-val, 
ohc_v1_initial'base_wf, 
simple-loc-comb-1_wf, 
concat-lifting-loc-1_wf, 
ohc_v1_prop2init_wf, 
ohc_v1_proposal'base_wf, 
disjoint-classrel-symm, 
simple-loc-comb-1-concat-disjoint-classrel, 
base-disjoint-classrel, 
assert-name_eq, 
name_wf, 
simple-loc-comb-1-concat-single-val, 
single-valued-classrel-base, 
single-valued-bag-single, 
classrel_wf, 
es-E_wf, 
es-le_weakening, 
ohc_v1_ReplicaState_wf, 
valueall-type_wf, 
event-ordering+_wf
\mforall{}es:EO'.  \mforall{}e1,e2:E.  \mforall{}Cmd:ValueAllType.  \mforall{}zp,z:\mBbbZ{}  \mtimes{}  (\mBbbZ{}  List).
    ((e1  <loc  e2)
    {}\mRightarrow{}  zp  \mmember{}  ohc\_v1\_ReplicaState(Cmd)(e1)
    {}\mRightarrow{}  z  \mmember{}  ohc\_v1\_ReplicaState(Cmd)(e2)
    {}\mRightarrow{}  let  max1,missing1  =  zp 
          in  let  max2,missing2  =  z 
                in  (max1  \mleq{}  max2)  \mwedge{}  (\mforall{}x:\mBbbZ{}.  ((x  \mmember{}  missing2)  {}\mRightarrow{}  ((x  \mmember{}  missing1)  \mvee{}  (max1  <  x)))))
Date html generated:
2012_02_20-PM-05_27_46
Last ObjectModification:
2012_02_13-PM-01_02_04
Home
Index