Nuprl Lemma : SM1-class-gen-classrel
[es:EO']. 
[e:E]. 
[S,A:
']. 
[init:Id 
 bag(S)]. 
[tr:Id 
 A 
 S 
 S]. 
[X:EClass'(A)]. 
[s:S].
  uiff(s 
 SM1-class(init;<tr, X>)(e);
L:({1..2
} 
 A 
 E) List
                                        (classrel-multi-list(es;
n.A;
n.X;L;e;1;2)
                                        
 (
null(L))
                                        
 (e = (snd(snd(last(L)))))
                                        
 (
x:S
                                            (bag-member(S;x;init loc(e))
                                            
 (s = list_accum(a,b.tr loc(snd(snd(b))) (fst(snd(b))) a;x;L))))))
Proof not projected
Definitions occuring in Statement : 
SM1-class: SM1-class(init;trX), 
classrel-multi-list: classrel-multi-list(es;A;Xs;L;e;n1;n2), 
Message: Message, 
classrel: v 
 X(e), 
eclass: EClass(A[eo; e]), 
event-ordering+: EO+(Info), 
es-loc: loc(e), 
es-E: E, 
Id: Id, 
null: null(as), 
assert:
b, 
int_seg: {i..j
}, 
uiff: uiff(P;Q), 
uall:
[x:A]. B[x], 
pi1: fst(t), 
pi2: snd(t), 
exists:
x:A. B[x], 
not:
A, 
squash:
T, 
and: P 
 Q, 
apply: f a, 
lambda:
x.A[x], 
function: x:A 
 B[x], 
pair: <a, b>, 
product: x:A 
 B[x], 
list: type List, 
natural_number: $n, 
universe: Type, 
equal: s = t, 
list_accum: list_accum(x,a.f[x; a];y;l), 
last: last(L), 
bag-member: bag-member(T;x;bs), 
bag: bag(T)
Definitions : 
eclass: EClass(A[eo; e]), 
exists:
x:A. B[x], 
int_seg: {i..j
}, 
and: P 
 Q, 
not:
A, 
nat_plus: 
, 
member: t 
 T, 
lelt: i 
 j < k, 
le: A 
 B, 
implies: P 
 Q, 
false: False, 
prop:
, 
all:
x:A. B[x], 
subtype: S 
 T, 
cand: A c
 B, 
ge: i 
 j , 
top: Top, 
so_lambda: 
x.t[x], 
so_lambda: 
x y.t[x; y], 
pi2: snd(t), 
pi1: fst(t), 
uall:
[x:A]. B[x], 
uimplies: b supposing a, 
so_apply: x[s], 
so_apply: x[s1;s2], 
SM1-class: SM1-class(init;trX)
Lemmas : 
SM-gen-class-classrel, 
le_wf, 
int_seg_wf, 
classrel_wf, 
Message_wf, 
SM1-class_wf2, 
squash_wf, 
es-E_wf, 
event-ordering+_inc, 
classrel-multi-list_wf, 
ge_wf, 
not_wf, 
assert_wf, 
null_wf3, 
top_wf, 
pi2_wf, 
last_wf, 
bag-member_wf, 
es-loc_wf, 
list_accum_wf, 
pi1_wf_top, 
event-ordering+_wf, 
bag_wf, 
Id_wf
\mforall{}[es:EO'].  \mforall{}[e:E].  \mforall{}[S,A:\mBbbU{}'].  \mforall{}[init:Id  {}\mrightarrow{}  bag(S)].  \mforall{}[tr:Id  {}\mrightarrow{}  A  {}\mrightarrow{}  S  {}\mrightarrow{}  S].  \mforall{}[X:EClass'(A)].
\mforall{}[s:S].
    uiff(s  \mmember{}  SM1-class(init;<tr,  X>)(e);\mdownarrow{}\mexists{}L:(\{1..2\msupminus{}\}  \mtimes{}  A  \mtimes{}  E)  List
                                                                                (classrel-multi-list(es;\mlambda{}n.A;\mlambda{}n.X;L;e;1;2)
                                                                                \mwedge{}  (\mneg{}\muparrow{}null(L))
                                                                                \mwedge{}  (e  =  (snd(snd(last(L)))))
                                                                                \mwedge{}  (\mexists{}x:S
                                                                                        (bag-member(S;x;init  loc(e))
                                                                                        \mwedge{}  (s
                                                                                            =  list\_accum(a,b.tr  loc(snd(snd(b)))  (fst(snd(b)))  a;
                                                                                                                      x;
                                                                                                                      L))))))
Date html generated:
2011_10_20-PM-03_48_00
Last ObjectModification:
2011_09_22-PM-12_43_05
Home
Index