let V, A be set ; for loc being V -valued Function
for d1 being NonatomicND of V,A
for p being SCPartialNominativePredicate of V,A
for d being object
for size being non zero Nat
for val being b5 -element FinSequence st loc,val,size are_correct_wrt d1 & d = (LocalOverlapSeq (A,loc,val,d1,size)) . (size - 1) & local_overlapping (V,A,d,((denaming (V,A,(val . (len val)))) . d),(loc /. (len val))) in dom p holds
for m, n being Nat st 1 <= m & m < size & 1 <= n & n < size holds
((SC_Psuperpos_Seq (loc,val,p)) . m) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - m)) = ((SC_Psuperpos_Seq (loc,val,p)) . n) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - n))
let loc be V -valued Function; for d1 being NonatomicND of V,A
for p being SCPartialNominativePredicate of V,A
for d being object
for size being non zero Nat
for val being b4 -element FinSequence st loc,val,size are_correct_wrt d1 & d = (LocalOverlapSeq (A,loc,val,d1,size)) . (size - 1) & local_overlapping (V,A,d,((denaming (V,A,(val . (len val)))) . d),(loc /. (len val))) in dom p holds
for m, n being Nat st 1 <= m & m < size & 1 <= n & n < size holds
((SC_Psuperpos_Seq (loc,val,p)) . m) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - m)) = ((SC_Psuperpos_Seq (loc,val,p)) . n) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - n))
let d1 be NonatomicND of V,A; for p being SCPartialNominativePredicate of V,A
for d being object
for size being non zero Nat
for val being b3 -element FinSequence st loc,val,size are_correct_wrt d1 & d = (LocalOverlapSeq (A,loc,val,d1,size)) . (size - 1) & local_overlapping (V,A,d,((denaming (V,A,(val . (len val)))) . d),(loc /. (len val))) in dom p holds
for m, n being Nat st 1 <= m & m < size & 1 <= n & n < size holds
((SC_Psuperpos_Seq (loc,val,p)) . m) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - m)) = ((SC_Psuperpos_Seq (loc,val,p)) . n) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - n))
let p be SCPartialNominativePredicate of V,A; for d being object
for size being non zero Nat
for val being b2 -element FinSequence st loc,val,size are_correct_wrt d1 & d = (LocalOverlapSeq (A,loc,val,d1,size)) . (size - 1) & local_overlapping (V,A,d,((denaming (V,A,(val . (len val)))) . d),(loc /. (len val))) in dom p holds
for m, n being Nat st 1 <= m & m < size & 1 <= n & n < size holds
((SC_Psuperpos_Seq (loc,val,p)) . m) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - m)) = ((SC_Psuperpos_Seq (loc,val,p)) . n) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - n))
let d be object ; for size being non zero Nat
for val being b1 -element FinSequence st loc,val,size are_correct_wrt d1 & d = (LocalOverlapSeq (A,loc,val,d1,size)) . (size - 1) & local_overlapping (V,A,d,((denaming (V,A,(val . (len val)))) . d),(loc /. (len val))) in dom p holds
for m, n being Nat st 1 <= m & m < size & 1 <= n & n < size holds
((SC_Psuperpos_Seq (loc,val,p)) . m) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - m)) = ((SC_Psuperpos_Seq (loc,val,p)) . n) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - n))
let size be non zero Nat; for val being size -element FinSequence st loc,val,size are_correct_wrt d1 & d = (LocalOverlapSeq (A,loc,val,d1,size)) . (size - 1) & local_overlapping (V,A,d,((denaming (V,A,(val . (len val)))) . d),(loc /. (len val))) in dom p holds
for m, n being Nat st 1 <= m & m < size & 1 <= n & n < size holds
((SC_Psuperpos_Seq (loc,val,p)) . m) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - m)) = ((SC_Psuperpos_Seq (loc,val,p)) . n) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - n))
let val be size -element FinSequence; ( loc,val,size are_correct_wrt d1 & d = (LocalOverlapSeq (A,loc,val,d1,size)) . (size - 1) & local_overlapping (V,A,d,((denaming (V,A,(val . (len val)))) . d),(loc /. (len val))) in dom p implies for m, n being Nat st 1 <= m & m < size & 1 <= n & n < size holds
((SC_Psuperpos_Seq (loc,val,p)) . m) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - m)) = ((SC_Psuperpos_Seq (loc,val,p)) . n) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - n)) )
assume that
A1:
loc,val,size are_correct_wrt d1
and
A2:
d = (LocalOverlapSeq (A,loc,val,d1,size)) . (size - 1)
and
A3:
local_overlapping (V,A,d,((denaming (V,A,(val . (len val)))) . d),(loc /. (len val))) in dom p
; for m, n being Nat st 1 <= m & m < size & 1 <= n & n < size holds
((SC_Psuperpos_Seq (loc,val,p)) . m) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - m)) = ((SC_Psuperpos_Seq (loc,val,p)) . n) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - n))
let m, n be Nat; ( 1 <= m & m < size & 1 <= n & n < size implies ((SC_Psuperpos_Seq (loc,val,p)) . m) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - m)) = ((SC_Psuperpos_Seq (loc,val,p)) . n) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - n)) )
assume that
A4:
1 <= m
and
A5:
m < size
and
A6:
1 <= n
and
A7:
n < size
; ((SC_Psuperpos_Seq (loc,val,p)) . m) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - m)) = ((SC_Psuperpos_Seq (loc,val,p)) . n) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - n))
set S = SC_Psuperpos_Seq (loc,val,p);
set L = LocalOverlapSeq (A,loc,val,d1,size);
defpred S1[ Nat] means ( 1 <= $1 & $1 < size implies ((SC_Psuperpos_Seq (loc,val,p)) . m) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - m)) = ((SC_Psuperpos_Seq (loc,val,p)) . $1) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - $1)) );
A8:
S1[ 0 ]
;
A9:
for k being Nat st S1[k] holds
S1[k + 1]
proof
let k be
Nat;
( S1[k] implies S1[k + 1] )
assume that A10:
S1[
k]
and
1
<= k + 1
and A11:
k + 1
< size
;
((SC_Psuperpos_Seq (loc,val,p)) . m) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - m)) = ((SC_Psuperpos_Seq (loc,val,p)) . (k + 1)) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - (k + 1)))
set D =
denaming (
V,
A,
(val . ((len val) - k)));
A12:
len val = size
by CARD_1:def 7;
A13:
len (SC_Psuperpos_Seq (loc,val,p)) = len val
by Def9;
A14:
len (LocalOverlapSeq (A,loc,val,d1,size)) = size
by NOMIN_7:def 4;
A15:
k < size
by A11, NAT_1:13;
per cases
( k = 0 or k > 0 )
;
suppose A16:
k = 0
;
((SC_Psuperpos_Seq (loc,val,p)) . m) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - m)) = ((SC_Psuperpos_Seq (loc,val,p)) . (k + 1)) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - (k + 1)))defpred S2[
Nat]
means ( 1
<= $1 & $1
< size implies
((SC_Psuperpos_Seq (loc,val,p)) . $1) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - $1)) = ((SC_Psuperpos_Seq (loc,val,p)) . 1) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - 1)) );
A17:
S2[
0 ]
;
A18:
for
x being
Nat st
S2[
x] holds
S2[
x + 1]
proof
let x be
Nat;
( S2[x] implies S2[x + 1] )
assume that A19:
S2[
x]
and
1
<= x + 1
and A20:
x + 1
< size
;
((SC_Psuperpos_Seq (loc,val,p)) . (x + 1)) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - (x + 1))) = ((SC_Psuperpos_Seq (loc,val,p)) . 1) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - 1))
per cases
( x = 0 or x > 0 )
;
suppose
x = 0
;
((SC_Psuperpos_Seq (loc,val,p)) . (x + 1)) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - (x + 1))) = ((SC_Psuperpos_Seq (loc,val,p)) . 1) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - 1))hence
((SC_Psuperpos_Seq (loc,val,p)) . (x + 1)) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - (x + 1))) = ((SC_Psuperpos_Seq (loc,val,p)) . 1) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - 1))
;
verum end; suppose
x > 0
;
((SC_Psuperpos_Seq (loc,val,p)) . (x + 1)) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - (x + 1))) = ((SC_Psuperpos_Seq (loc,val,p)) . 1) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - 1))then A21:
0 + 1
<= x
by NAT_1:13;
set DD =
denaming (
V,
A,
(val . ((len val) - x)));
A22:
x <= x + 1
by NAT_1:11;
then
x < len (SC_Psuperpos_Seq (loc,val,p))
by A13, A12, A20, XXREAL_0:2;
then A23:
(SC_Psuperpos_Seq (loc,val,p)) . (x + 1) = SC_Psuperpos (
((SC_Psuperpos_Seq (loc,val,p)) . x),
(denaming (V,A,(val . ((len val) - x)))),
(loc /. ((len val) - x)))
by A21, Def9;
reconsider u =
(size - x) - 1 as
Element of
NAT by A20, XREAL_1:19, INT_1:5;
(x + 1) - x < size - x
by A20, XREAL_1:9;
then
1
- 1
< (size - x) - 1
by XREAL_1:9;
then A24:
0 + 1
<= size - (x + 1)
by INT_1:7;
A25:
size - (x + 1) < size
by XREAL_1:44;
then reconsider dd =
(LocalOverlapSeq (A,loc,val,d1,size)) . u as
NonatomicND of
V,
A by A14, A24, NOMIN_7:def 6;
A26:
dom (SC_Psuperpos (((SC_Psuperpos_Seq (loc,val,p)) . x),(denaming (V,A,(val . ((len val) - x)))),(loc /. ((len val) - x)))) = { d where d is TypeSCNominativeData of V,A : ( local_overlapping (V,A,d,((denaming (V,A,(val . ((len val) - x)))) . d),(loc /. ((len val) - x))) in dom ((SC_Psuperpos_Seq (loc,val,p)) . x) & d in dom (denaming (V,A,(val . ((len val) - x)))) ) }
by NOMIN_2:def 11;
1
+ 1
<= x + 1
by A21, XREAL_1:6;
then A27:
local_overlapping (
V,
A,
dd,
((denaming (V,A,(val . ((len val) - x)))) . dd),
(loc /. ((len val) - x)))
in dom ((SC_Psuperpos_Seq (loc,val,p)) . x)
by A1, A2, A3, A20, Th16;
A28:
dom (denaming (V,A,(val . ((len val) - x)))) = { d where d is NonatomicND of V,A : val . ((len val) - x) in dom d }
by NOMIN_1:def 18;
A29:
1
<= u + 1
by NAT_1:11;
u + 1
<= size
by A25, INT_1:7;
then
val . (u + 1) in dom ((LocalOverlapSeq (A,loc,val,d1,size)) . u)
by A1, A24, A25, A29, NOMIN_7:10;
then
dd in dom (denaming (V,A,(val . ((len val) - x))))
by A12, A28;
then A30:
dd in dom (SC_Psuperpos (((SC_Psuperpos_Seq (loc,val,p)) . x),(denaming (V,A,(val . ((len val) - x)))),(loc /. ((len val) - x))))
by A26, A27;
(LocalOverlapSeq (A,loc,val,d1,size)) . (u + 1) = local_overlapping (
V,
A,
((LocalOverlapSeq (A,loc,val,d1,size)) . u),
((denaming (V,A,(val . (u + 1)))) . ((LocalOverlapSeq (A,loc,val,d1,size)) . u)),
(loc /. (u + 1)))
by A14, A24, A25, NOMIN_7:def 4;
hence
((SC_Psuperpos_Seq (loc,val,p)) . (x + 1)) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - (x + 1))) = ((SC_Psuperpos_Seq (loc,val,p)) . 1) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - 1))
by A22, A23, A30, A12, A19, A21, A20, XXREAL_0:2, NOMIN_2:35;
verum end; end;
end;
for
x being
Nat holds
S2[
x]
from NAT_1:sch 2(A17, A18);
hence
((SC_Psuperpos_Seq (loc,val,p)) . m) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - m)) = ((SC_Psuperpos_Seq (loc,val,p)) . (k + 1)) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - (k + 1)))
by A4, A5, A16;
verum end; suppose
k > 0
;
((SC_Psuperpos_Seq (loc,val,p)) . m) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - m)) = ((SC_Psuperpos_Seq (loc,val,p)) . (k + 1)) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - (k + 1)))then A31:
0 + 1
<= k
by NAT_1:13;
then A32:
(SC_Psuperpos_Seq (loc,val,p)) . (k + 1) = SC_Psuperpos (
((SC_Psuperpos_Seq (loc,val,p)) . k),
(denaming (V,A,(val . ((len val) - k)))),
(loc /. (size - k)))
by A12, A13, A15, Def9;
set D1 =
(LocalOverlapSeq (A,loc,val,d1,size)) . (size - (k + 1));
A33:
(k + 1) - k < size - k
by A11, XREAL_1:9;
then reconsider w =
(size - k) - 1 as
Element of
NAT by INT_1:5;
1
- 1
< w
by A33, XREAL_1:9;
then A34:
0 + 1
<= w
by NAT_1:13;
A35:
size - (k + 1) < size
by XREAL_1:44;
then A36:
(LocalOverlapSeq (A,loc,val,d1,size)) . (w + 1) = local_overlapping (
V,
A,
((LocalOverlapSeq (A,loc,val,d1,size)) . w),
((denaming (V,A,(val . (w + 1)))) . ((LocalOverlapSeq (A,loc,val,d1,size)) . w)),
(loc /. (w + 1)))
by A14, A34, NOMIN_7:def 4;
reconsider D1 =
(LocalOverlapSeq (A,loc,val,d1,size)) . (size - (k + 1)) as
NonatomicND of
V,
A by A14, A34, A35, NOMIN_7:def 6;
A37:
dom (SC_Psuperpos (((SC_Psuperpos_Seq (loc,val,p)) . k),(denaming (V,A,(val . ((len val) - k)))),(loc /. ((len val) - k)))) = { d where d is TypeSCNominativeData of V,A : ( local_overlapping (V,A,d,((denaming (V,A,(val . ((len val) - k)))) . d),(loc /. ((len val) - k))) in dom ((SC_Psuperpos_Seq (loc,val,p)) . k) & d in dom (denaming (V,A,(val . ((len val) - k)))) ) }
by NOMIN_2:def 11;
A38:
D1 = (LocalOverlapSeq (A,loc,val,d1,size)) . ((size - k) - 1)
;
1
+ 1
<= k + 1
by A31, XREAL_1:6;
then A39:
local_overlapping (
V,
A,
D1,
((denaming (V,A,(val . ((len val) - k)))) . D1),
(loc /. ((len val) - k)))
in dom ((SC_Psuperpos_Seq (loc,val,p)) . k)
by A1, A11, A2, A3, A38, Th16;
A40:
dom (denaming (V,A,(val . ((len val) - k)))) = { d where d is NonatomicND of V,A : val . ((len val) - k) in dom d }
by NOMIN_1:def 18;
A41:
1
<= w + 1
by NAT_1:11;
w + 1
<= size
by A35, INT_1:7;
then
val . (w + 1) in dom ((LocalOverlapSeq (A,loc,val,d1,size)) . w)
by A1, A34, A35, A41, NOMIN_7:10;
then
D1 in dom (denaming (V,A,(val . ((len val) - k))))
by A12, A40;
then
D1 in dom (SC_Psuperpos (((SC_Psuperpos_Seq (loc,val,p)) . k),(denaming (V,A,(val . ((len val) - k)))),(loc /. ((len val) - k))))
by A37, A39;
hence
((SC_Psuperpos_Seq (loc,val,p)) . m) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - m)) = ((SC_Psuperpos_Seq (loc,val,p)) . (k + 1)) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - (k + 1)))
by A10, A31, A32, A12, A36, A11, NAT_1:13, NOMIN_2:35;
verum end; end;
end;
for k being Nat holds S1[k]
from NAT_1:sch 2(A8, A9);
hence
((SC_Psuperpos_Seq (loc,val,p)) . m) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - m)) = ((SC_Psuperpos_Seq (loc,val,p)) . n) . ((LocalOverlapSeq (A,loc,val,d1,size)) . (size - n))
by A6, A7; verum