{ 
[l:IdLnk]. 
[p:IdLnk List].
    uiff(lpath([l / p]);lpath(p)
    
 (destination(l) = source(hd(p))) 
 (
(hd(p) = lnk-inv(l))) 
      supposing 
(||p|| = 0)) }
{ Proof }
Definitions occuring in Statement : 
lpath: lpath(p), 
ldst: destination(l), 
lsrc: source(l), 
lnk-inv: lnk-inv(l), 
IdLnk: IdLnk, 
Id: Id, 
hd: hd(l), 
length: ||as||, 
uiff: uiff(P;Q), 
uimplies: b supposing a, 
uall:
[x:A]. B[x], 
not:
A, 
and: P 
 Q, 
cons: [car / cdr], 
list: type List, 
natural_number: $n, 
int:
, 
equal: s = t
Definitions : 
uall:
[x:A]. B[x], 
uiff: uiff(P;Q), 
lpath: lpath(p), 
and: P 
 Q, 
uimplies: b supposing a, 
not:
A, 
member: t 
 T, 
implies: P 
 Q, 
false: False, 
prop:
, 
top: Top, 
all:
x:A. B[x], 
subtype: S 
 T, 
true: True, 
iff: P 

 Q, 
squash:
T, 
rev_implies: P 
 Q, 
hd: hd(l), 
select: l[i], 
ifthenelse: if b then t else f fi , 
le_int: i 
z j, 
bnot: 
b, 
lt_int: i <z j, 
bfalse: ff, 
btrue: tt, 
length: ||as||, 
ycomb: Y, 
le: A 
 B, 
int_seg: {i..j
}, 
sq_type: SQType(T), 
guard: {T}, 
lelt: i 
 j < k, 
decidable: Dec(P), 
or: P 
 Q
Lemmas : 
IdLnk_wf, 
hd_wf, 
length_wf1, 
non_neg_length, 
length_wf_nat, 
top_wf, 
lnk-inv_wf, 
not_wf, 
select_wf, 
int_seg_wf, 
lpath_wf, 
Id_wf, 
ldst_wf, 
lsrc_wf, 
subtype_base_sq, 
int_subtype_base, 
length_cons, 
squash_wf, 
true_wf, 
select_cons_tl, 
decidable__equal_int
\mforall{}[l:IdLnk].  \mforall{}[p:IdLnk  List].
    uiff(lpath([l  /  p]);lpath(p)
    \mwedge{}  (destination(l)  =  source(hd(p)))  \mwedge{}  (\mneg{}(hd(p)  =  lnk-inv(l)))  supposing  \mneg{}(||p||  =  0))
Date html generated:
2011_08_10-AM-07_46_59
Last ObjectModification:
2011_06_18-AM-08_12_27
Home
Index