let j be Nat; for D being non empty set
for f1 being FinSequence of D
for i1, i2 being Nat st 1 <= i2 & i2 <= i1 & i1 <= len f1 & 1 <= j & j <= (i1 -' i2) + 1 holds
( (mid (f1,i1,i2)) . j = (mid (f1,i2,i1)) . ((((i1 - i2) + 1) - j) + 1) & (((i1 - i2) + 1) - j) + 1 = (((i1 -' i2) + 1) -' j) + 1 )
let D be non empty set ; for f1 being FinSequence of D
for i1, i2 being Nat st 1 <= i2 & i2 <= i1 & i1 <= len f1 & 1 <= j & j <= (i1 -' i2) + 1 holds
( (mid (f1,i1,i2)) . j = (mid (f1,i2,i1)) . ((((i1 - i2) + 1) - j) + 1) & (((i1 - i2) + 1) - j) + 1 = (((i1 -' i2) + 1) -' j) + 1 )
let f1 be FinSequence of D; for i1, i2 being Nat st 1 <= i2 & i2 <= i1 & i1 <= len f1 & 1 <= j & j <= (i1 -' i2) + 1 holds
( (mid (f1,i1,i2)) . j = (mid (f1,i2,i1)) . ((((i1 - i2) + 1) - j) + 1) & (((i1 - i2) + 1) - j) + 1 = (((i1 -' i2) + 1) -' j) + 1 )
let i1, i2 be Nat; ( 1 <= i2 & i2 <= i1 & i1 <= len f1 & 1 <= j & j <= (i1 -' i2) + 1 implies ( (mid (f1,i1,i2)) . j = (mid (f1,i2,i1)) . ((((i1 - i2) + 1) - j) + 1) & (((i1 - i2) + 1) - j) + 1 = (((i1 -' i2) + 1) -' j) + 1 ) )
assume that
A1:
1 <= i2
and
A2:
i2 <= i1
and
A3:
i1 <= len f1
and
A4:
1 <= j
and
A5:
j <= (i1 -' i2) + 1
; ( (mid (f1,i1,i2)) . j = (mid (f1,i2,i1)) . ((((i1 - i2) + 1) - j) + 1) & (((i1 - i2) + 1) - j) + 1 = (((i1 -' i2) + 1) -' j) + 1 )
A6:
1 <= i1
by A1, A2, XXREAL_0:2;
i2 - 1 >= 0
by A1, XREAL_1:48;
then A7:
i1 - (i2 - 1) <= i1 - 0
by XREAL_1:10;
A8:
i2 <= len f1
by A2, A3, XXREAL_0:2;
1 - j <= j - j
by A4, XREAL_1:9;
then A9:
(i1 -' i2) + (1 - j) <= (i1 -' i2) + 0
by XREAL_1:7;
j - j <= ((i1 -' i2) + 1) - j
by A5, XREAL_1:9;
then
((i1 -' i2) + 1) -' j <= i1 -' i2
by A9, XREAL_0:def 2;
then A10:
(((i1 -' i2) + 1) -' j) + 1 <= (i1 -' i2) + 1
by XREAL_1:6;
A11:
1 <= (((i1 -' i2) + 1) -' j) + 1
by NAT_1:11;
A12: (((i1 -' i2) + 1) -' j) + 1 =
(((i1 -' i2) + 1) - j) + 1
by A5, XREAL_1:233
.=
(((i1 - i2) + 1) - j) + 1
by A2, XREAL_1:233
;
A13:
(i1 -' i2) + 1 = (i1 - i2) + 1
by A2, XREAL_1:233;
now ( ( i1 > i2 & (mid (f1,i1,i2)) . j = (mid (f1,i2,i1)) . ((((i1 - i2) + 1) - j) + 1) & (((i1 - i2) + 1) - j) + 1 = (((i1 -' i2) + 1) -' j) + 1 ) or ( i1 = i2 & (mid (f1,i1,i2)) . j = (mid (f1,i2,i1)) . ((((i1 - i2) + 1) - j) + 1) & (((i1 - i2) + 1) - j) + 1 = (((i1 -' i2) + 1) -' j) + 1 ) )per cases
( i1 > i2 or i1 = i2 )
by A2, XXREAL_0:1;
case A14:
i1 > i2
;
( (mid (f1,i1,i2)) . j = (mid (f1,i2,i1)) . ((((i1 - i2) + 1) - j) + 1) & (((i1 - i2) + 1) - j) + 1 = (((i1 -' i2) + 1) -' j) + 1 )
len (mid (f1,i2,i1)) = (i1 -' i2) + 1
by A1, A2, A3, A6, A8, Th117;
then A15:
(mid (f1,i2,i1)) . ((((i1 -' i2) + 1) -' j) + 1) = f1 . ((((((i1 -' i2) + 1) -' j) + 1) + i2) -' 1)
by A1, A2, A3, A6, A8, A10, A11, Th117;
A16:
len (mid (f1,i1,i2)) = (i1 -' i2) + 1
by A1, A3, A6, A8, A14, Th117;
(((((i1 -' i2) + 1) -' j) + 1) + i2) -' 1 =
(((((i1 -' i2) + 1) -' j) + 1) + i2) - 1
by A1, NAT_D:37
.=
(i1 - j) + 1
by A12
.=
(i1 -' j) + 1
by A5, A13, A7, XREAL_1:233, XXREAL_0:2
;
hence
(
(mid (f1,i1,i2)) . j = (mid (f1,i2,i1)) . ((((i1 - i2) + 1) - j) + 1) &
(((i1 - i2) + 1) - j) + 1
= (((i1 -' i2) + 1) -' j) + 1 )
by A1, A3, A4, A5, A6, A8, A12, A14, A15, A16, Th117;
verum end; case A17:
i1 = i2
;
( (mid (f1,i1,i2)) . j = (mid (f1,i2,i1)) . ((((i1 - i2) + 1) - j) + 1) & (((i1 - i2) + 1) - j) + 1 = (((i1 -' i2) + 1) -' j) + 1 )end; end; end;
hence
( (mid (f1,i1,i2)) . j = (mid (f1,i2,i1)) . ((((i1 - i2) + 1) - j) + 1) & (((i1 - i2) + 1) - j) + 1 = (((i1 -' i2) + 1) -' j) + 1 )
; verum