let i be Nat; for D being non empty set
for f being FinSequence of D st 1 <= i & i < len f holds
(mid (f,i,((len f) -' 1))) ^ <*(f /. (len f))*> = mid (f,i,(len f))
let D be non empty set ; for f being FinSequence of D st 1 <= i & i < len f holds
(mid (f,i,((len f) -' 1))) ^ <*(f /. (len f))*> = mid (f,i,(len f))
let f be FinSequence of D; ( 1 <= i & i < len f implies (mid (f,i,((len f) -' 1))) ^ <*(f /. (len f))*> = mid (f,i,(len f)) )
assume that
A1:
1 <= i
and
A2:
i < len f
; (mid (f,i,((len f) -' 1))) ^ <*(f /. (len f))*> = mid (f,i,(len f))
A3:
i + 1 <= len f
by A2, NAT_1:13;
then A4:
(i + 1) - 1 <= (len f) - 1
by XREAL_1:9;
then A5:
i <= (len f) -' 1
by XREAL_0:def 2;
0 + i <= (len f) - 1
by A4;
then
((len f) - 1) - i >= 0
by XREAL_1:19;
then A6:
((len f) -' 1) - i >= 0
by A4, XREAL_0:def 2;
A7:
(len f) - i >= 0
by A3, XREAL_1:19;
len f <= (len f) + 1
by NAT_1:11;
then
(len f) - 1 <= ((len f) + 1) - 1
by XREAL_1:9;
then A8:
(len f) -' 1 <= len f
by XREAL_0:def 2;
then A9: (len (mid (f,i,((len f) -' 1)))) + 1 =
((((len f) -' 1) -' i) + 1) + 1
by A1, A5, FINSEQ_6:186
.=
((((len f) -' 1) - i) + 1) + 1
by A6, XREAL_0:def 2
.=
((((len f) - 1) - i) + 1) + 1
by A4, XREAL_0:def 2
.=
((len f) -' i) + 1
by A7, XREAL_0:def 2
.=
len (mid (f,i,(len f)))
by A1, A2, FINSEQ_6:186
;
A10:
now for j being Nat st 1 <= j & j <= len (mid (f,i,(len f))) holds
((mid (f,i,((len f) -' 1))) ^ <*(f /. (len f))*>) /. j = (mid (f,i,(len f))) /. j
1
< len f
by A1, A2, XXREAL_0:2;
then
len f in Seg (len f)
by FINSEQ_1:1;
then A11:
len f in dom f
by FINSEQ_1:def 3;
i in Seg (len f)
by A1, A2, FINSEQ_1:1;
then A12:
i in dom f
by FINSEQ_1:def 3;
let j be
Nat;
( 1 <= j & j <= len (mid (f,i,(len f))) implies ((mid (f,i,((len f) -' 1))) ^ <*(f /. (len f))*>) /. b1 = (mid (f,i,(len f))) /. b1 )assume that A13:
1
<= j
and A14:
j <= len (mid (f,i,(len f)))
;
((mid (f,i,((len f) -' 1))) ^ <*(f /. (len f))*>) /. b1 = (mid (f,i,(len f))) /. b1per cases
( j < len (mid (f,i,(len f))) or j = len (mid (f,i,(len f))) )
by A14, XXREAL_0:1;
suppose
j < len (mid (f,i,(len f)))
;
((mid (f,i,((len f) -' 1))) ^ <*(f /. (len f))*>) /. b1 = (mid (f,i,(len f))) /. b1then A15:
j <= len (mid (f,i,((len f) -' 1)))
by A9, NAT_1:13;
then
j in Seg (len (mid (f,i,((len f) -' 1))))
by A13, FINSEQ_1:1;
then A16:
j in dom (mid (f,i,((len f) -' 1)))
by FINSEQ_1:def 3;
1
<= (len f) -' 1
by A1, A5, XXREAL_0:2;
then
(len f) -' 1
in Seg (len f)
by A8, FINSEQ_1:1;
then A17:
(len f) -' 1
in dom f
by FINSEQ_1:def 3;
j in Seg (len (mid (f,i,(len f))))
by A13, A14, FINSEQ_1:1;
then A18:
j in dom (mid (f,i,(len f)))
by FINSEQ_1:def 3;
j in NAT
by ORDINAL1:def 12;
hence ((mid (f,i,((len f) -' 1))) ^ <*(f /. (len f))*>) /. j =
(mid (f,i,((len f) -' 1))) /. j
by A13, A15, BOOLMARK:7
.=
f /. ((j + i) -' 1)
by A5, A12, A16, A17, SPRECT_2:3
.=
(mid (f,i,(len f))) /. j
by A2, A12, A11, A18, SPRECT_2:3
;
verum end; end; end;
len ((mid (f,i,((len f) -' 1))) ^ <*(f /. (len f))*>) = (len (mid (f,i,((len f) -' 1)))) + 1
by FINSEQ_2:16;
hence
(mid (f,i,((len f) -' 1))) ^ <*(f /. (len f))*> = mid (f,i,(len f))
by A9, A10, FINSEQ_5:13; verum