Nuprl Lemma : prior-classrel-list-append
[A:
']. 
[X:EClass'(A)]. 
[es:EO']. 
[e1,e2:E].
  
L1,L2:(A 
 E) List.
    
[a:A]
      (single-valued-classrel(es;X;A)
      
 prior-classrel-list(es;A;X;L1;e1)
      
 prior-classrel-list(es;A;X;L2;e2)
      
 a 
 X(e1)
      
 (e1 <loc e2)
      
 (
L:(A 
 E) List. (L2 = ((L1 @ [<a, e1>]) @ L))))
Proof not projected
Definitions occuring in Statement : 
prior-classrel-list: prior-classrel-list(es;A;X;L;e), 
single-valued-classrel: single-valued-classrel(es;X;T), 
Message: Message, 
classrel: v 
 X(e), 
eclass: EClass(A[eo; e]), 
event-ordering+: EO+(Info), 
es-locl: (e <loc e'), 
es-E: E, 
append: as @ bs, 
uall:
[x:A]. B[x], 
all:
x:A. B[x], 
exists:
x:A. B[x], 
implies: P 
 Q, 
pair: <a, b>, 
product: x:A 
 B[x], 
cons: [car / cdr], 
nil: [], 
list: type List, 
universe: Type, 
equal: s = t
Definitions : 
uall:
[x:A]. B[x], 
all:
x:A. B[x], 
implies: P 
 Q, 
exists:
x:A. B[x], 
member: t 
 T, 
and: P 
 Q, 
prop:
, 
label: ...$L... t, 
iff: P 

 Q, 
length: ||as||, 
rev_implies: P 
 Q, 
subtype: S 
 T, 
nat:
, 
top: Top, 
ycomb: Y, 
so_lambda: 
x.t[x], 
guard: {T}, 
l_disjoint: l_disjoint(T;l1;l2), 
not:
A, 
false: False, 
l_all: (
x
L.P[x]), 
l_contains: A 
 B, 
cand: A c
 B, 
lastn: lastn(n;L), 
squash:
T, 
true: True, 
ifthenelse: if b then t else f fi , 
btrue: tt, 
bfalse: ff, 
le: A 
 B, 
int_seg: {i..j
}, 
lelt: i 
 j < k, 
or: P 
 Q, 
gt: i > j, 
decidable: Dec(P), 
it:
, 
int_iseg: {i...j}, 
select: l[i], 
le_int: i 
z j, 
bnot: 
b, 
lt_int: i <z j, 
so_lambda: 
x y.t[x; y], 
ge: i 
 j , 
prior-classrel-list: prior-classrel-list(es;A;X;L;e), 
uimplies: b supposing a, 
so_apply: x[s], 
rev_uimplies: rev_uimplies(P;Q), 
uiff: uiff(P;Q), 
bool:
, 
unit: Unit, 
l_member: (x 
 l), 
sorted-by: sorted-by(R;L), 
deq: EqDecider(T), 
sq_type: SQType(T), 
single-valued-classrel: single-valued-classrel(es;X;T), 
so_apply: x[s1;s2], 
pi2: snd(t), 
pi1: fst(t)
Lemmas : 
lastn_wf, 
length_wf1, 
classrel_wf, 
append_wf, 
es-locl_wf, 
event-ordering+_inc, 
Message_wf, 
prior-classrel-list_wf, 
single-valued-classrel_wf, 
es-E_wf, 
event-ordering+_wf, 
eclass_wf2, 
list_extensionality, 
nat_wf, 
length_append, 
length-map, 
length-append, 
map_wf, 
top_wf, 
l_contains-no_repeats-length, 
pi2_wf, 
non_neg_length, 
length_wf_nat, 
add_functionality_wrt_eq, 
length-lastn, 
no_repeats-append, 
no_repeats-single, 
member_singleton, 
l_member_wf, 
es-locl_irreflexivity, 
member_append, 
es-locl_transitivity2, 
es-le_weakening, 
select-append, 
lt_int_wf, 
bool_wf, 
assert_wf, 
le_int_wf, 
le_wf, 
bnot_wf, 
select-nth_tl, 
select_wf, 
squash_wf, 
uiff_transitivity, 
eqtt_to_assert, 
assert_of_lt_int, 
eqff_to_assert, 
assert_functionality_wrt_uiff, 
bnot_of_lt_int, 
assert_of_le_int, 
member_map, 
select_member, 
nat_properties, 
longer-list-not-member, 
es-eq_wf, 
deq_wf, 
assert-deq, 
inl_wf, 
not_wf, 
assert_of_bnot, 
not_functionality_wrt_uiff, 
inr_wf, 
firstn_wf, 
no_repeats-firstn, 
length_firstn, 
subtype_base_sq, 
int_subtype_base, 
member_firstn, 
select-map, 
es-locl_transitivity1, 
es-le_weakening_eq, 
decidable__lt, 
add_wf, 
pi1_wf_top, 
pair-eta, 
true_wf, 
eclass_wf, 
length-eq-lists-diff-elts
\mforall{}[A:\mBbbU{}'].  \mforall{}[X:EClass'(A)].  \mforall{}[es:EO'].  \mforall{}[e1,e2:E].
    \mforall{}L1,L2:(A  \mtimes{}  E)  List.
        \mforall{}[a:A]
            (single-valued-classrel(es;X;A)
            {}\mRightarrow{}  prior-classrel-list(es;A;X;L1;e1)
            {}\mRightarrow{}  prior-classrel-list(es;A;X;L2;e2)
            {}\mRightarrow{}  a  \mmember{}  X(e1)
            {}\mRightarrow{}  (e1  <loc  e2)
            {}\mRightarrow{}  (\mexists{}L:(A  \mtimes{}  E)  List.  (L2  =  ((L1  @  [<a,  e1>])  @  L))))
Date html generated:
2011_10_20-PM-03_45_03
Last ObjectModification:
2011_08_30-PM-08_49_57
Home
Index