let f, g be FinSequence of (TOP-REAL 2); :: thesis: for p being Point of (TOP-REAL 2) st f is almost-one-to-one & f is special & f is unfolded & f is s.n.c. & p in L~ f & p <> f . 1 & g = (mid f,1,(Index p,f)) ^ <*p*> holds
g is_S-Seq_joining f /. 1,p
let p be Point of (TOP-REAL 2); :: thesis: ( f is almost-one-to-one & f is special & f is unfolded & f is s.n.c. & p in L~ f & p <> f . 1 & g = (mid f,1,(Index p,f)) ^ <*p*> implies g is_S-Seq_joining f /. 1,p )
assume that
A1:
( f is almost-one-to-one & f is special & f is unfolded & f is s.n.c. )
and
A2:
p in L~ f
and
A3:
p <> f . 1
and
A4:
g = (mid f,1,(Index p,f)) ^ <*p*>
; :: thesis: g is_S-Seq_joining f /. 1,p
consider i being Element of NAT such that
A5:
( 1 <= i & i + 1 <= len f & p in LSeg f,i )
by A2, SPPOL_2:13;
A6:
1 <= Index p,f
by A2, JORDAN3:41;
A7:
Index p,f < len f
by A2, JORDAN3:41;
1 <= 1 + i
by NAT_1:12;
then A8:
1 <= len f
by A5, XXREAL_0:2;
then A9:
len (mid f,1,(Index p,f)) = ((Index p,f) -' 1) + 1
by A6, A7, JORDAN3:27;
then A10:
len (mid f,1,(Index p,f)) = Index p,f
by A6, XREAL_1:237;
1 <= len <*p*>
by FINSEQ_1:56;
then A11:
1 in dom <*p*>
by FINSEQ_3:27;
g . 1 = (mid f,1,(Index p,f)) . 1
by A4, A6, A10, JORDAN3:17;
then
g . 1 = f . 1
by A6, A7, A8, JORDAN3:27;
then A12:
g . 1 = f /. 1
by A8, FINSEQ_4:24;
A13: len g =
(len (mid f,1,(Index p,f))) + (len <*p*>)
by A4, FINSEQ_1:35
.=
(len (mid f,1,(Index p,f))) + 1
by FINSEQ_1:56
;
then A14:
g . (len g) = p
by A4, FINSEQ_1:59;
A15:
1 + 1 <= len g
by A6, A10, A13, XREAL_1:8;
A17:
for x1, x2 being set st x1 in dom g & x2 in dom g & g . x1 = g . x2 holds
x1 = x2
proof
let x1,
x2 be
set ;
:: thesis: ( x1 in dom g & x2 in dom g & g . x1 = g . x2 implies x1 = x2 )
assume A18:
(
x1 in dom g &
x2 in dom g &
g . x1 = g . x2 )
;
:: thesis: x1 = x2
then reconsider n1 =
x1,
n2 =
x2 as
Element of
NAT ;
A19:
( 1
<= n1 &
n1 <= len g & 1
<= n2 &
n2 <= len g )
by A18, FINSEQ_3:27;
now A20:
g . (len g) =
<*p*> . 1
by A4, A11, A13, FINSEQ_1:def 7
.=
p
by FINSEQ_1:def 8
;
now per cases
( n1 = len g or n2 = len g or ( n1 <> len g & n2 <> len g ) )
;
case A21:
n1 = len g
;
:: thesis: x1 = x2now assume A22:
n2 <> len g
;
:: thesis: contradictionthen
n2 < len g
by A19, XXREAL_0:1;
then A23:
n2 <= len (mid f,1,(Index p,f))
by A13, NAT_1:13;
then
g . n2 = (mid f,1,(Index p,f)) . n2
by A4, A19, FINSEQ_1:85;
then
g . n2 = f . ((n2 + 1) -' 1)
by A6, A7, A8, A19, A23, JORDAN3:27;
then A24:
p = f . n2
by A18, A20, A21, NAT_D:34;
A25:
n2 < len f
by A7, A10, A23, XXREAL_0:2;
1
< n2
by A3, A19, A24, XXREAL_0:1;
then
(Index p,f) + 1
= n2
by A1, A24, A25, Th18;
hence
contradiction
by A6, A9, A13, A22, XREAL_1:237;
:: thesis: verum end; hence
x1 = x2
by A21;
:: thesis: verum end; case A26:
n2 = len g
;
:: thesis: x1 = x2now assume A27:
n1 <> len g
;
:: thesis: contradictionthen
n1 < len g
by A19, XXREAL_0:1;
then A28:
n1 <= len (mid f,1,(Index p,f))
by A13, NAT_1:13;
then
g . n1 = (mid f,1,(Index p,f)) . n1
by A4, A19, FINSEQ_1:85;
then
g . n1 = f . ((n1 + 1) -' 1)
by A6, A7, A8, A19, A28, JORDAN3:27;
then A29:
p = f . n1
by A18, A20, A26, NAT_D:34;
A30:
n1 < len f
by A7, A10, A28, XXREAL_0:2;
1
< n1
by A3, A19, A29, XXREAL_0:1;
then
(Index p,f) + 1
= n1
by A1, A29, A30, Th18;
hence
contradiction
by A6, A9, A13, A27, XREAL_1:237;
:: thesis: verum end; hence
x1 = x2
by A26;
:: thesis: verum end; case that A31:
n1 <> len g
and A32:
n2 <> len g
;
:: thesis: x1 = x2
n1 < len g
by A19, A31, XXREAL_0:1;
then A33:
n1 <= len (mid f,1,(Index p,f))
by A13, NAT_1:13;
then A34:
n1 < len f
by A7, A10, XXREAL_0:2;
A35:
g . n1 =
(mid f,1,(Index p,f)) . n1
by A4, A19, A33, FINSEQ_1:85
.=
f . n1
by A7, A10, A19, A33, JORDAN3:32
;
n2 < len g
by A19, A32, XXREAL_0:1;
then A36:
n2 <= len (mid f,1,(Index p,f))
by A13, NAT_1:13;
then A37:
n2 < len f
by A7, A10, XXREAL_0:2;
A38:
g . n2 =
(mid f,1,(Index p,f)) . n2
by A4, A19, A36, FINSEQ_1:85
.=
f . n2
by A7, A10, A19, A36, JORDAN3:32
;
(
n1 in Seg (len f) &
n2 in Seg (len f) )
by A19, A34, A37, FINSEQ_1:3;
then
(
n1 in dom f &
n2 in dom f )
by FINSEQ_1:def 3;
hence
x1 = x2
by A1, A7, A10, A18, A33, A35, A36, A38, Def1;
:: thesis: verum end; end; end; hence
x1 = x2
;
:: thesis: verum end;
hence
x1 = x2
;
:: thesis: verum
end;
A39:
for j being Nat st 1 <= j & j + 2 <= len g holds
(LSeg g,j) /\ (LSeg g,(j + 1)) = {(g /. (j + 1))}
proof
let j be
Nat;
:: thesis: ( 1 <= j & j + 2 <= len g implies (LSeg g,j) /\ (LSeg g,(j + 1)) = {(g /. (j + 1))} )
assume A40:
( 1
<= j &
j + 2
<= len g )
;
:: thesis: (LSeg g,j) /\ (LSeg g,(j + 1)) = {(g /. (j + 1))}
then
j + 1
<= len g
by NAT_D:47;
then A41:
LSeg g,
j c= LSeg f,
j
by A2, A4, A40, JORDAN3:51;
A42:
(j + 1) + 1
<= len g
by A40;
A43:
1
<= j + 1
by A40, NAT_D:48;
then
LSeg g,
(j + 1) c= LSeg f,
(j + 1)
by A2, A4, A42, JORDAN3:51;
then A44:
(LSeg g,j) /\ (LSeg g,(j + 1)) c= (LSeg f,j) /\ (LSeg f,(j + 1))
by A41, XBOOLE_1:27;
A45:
j + 1
<= len g
by A40, NAT_D:47;
then
LSeg g,
j = LSeg (g /. j),
(g /. (j + 1))
by A40, TOPREAL1:def 5;
then A46:
g /. (j + 1) in LSeg g,
j
by RLTOPSP1:69;
A47:
g /. (j + 1) = g . (j + 1)
by A43, A45, FINSEQ_4:24;
A48:
Index p,
f <= len f
by A2, JORDAN3:41;
LSeg g,
(j + 1) = LSeg (g /. (j + 1)),
(g /. ((j + 1) + 1))
by A40, A43, TOPREAL1:def 5;
then
g /. (j + 1) in LSeg g,
(j + 1)
by RLTOPSP1:69;
then
g /. (j + 1) in (LSeg g,j) /\ (LSeg g,(j + 1))
by A46, XBOOLE_0:def 4;
then A49:
{(g /. (j + 1))} c= (LSeg g,j) /\ (LSeg g,(j + 1))
by ZFMISC_1:37;
now A50:
len g = (len (mid f,1,(Index p,f))) + 1
by A4, FINSEQ_2:19;
Index p,
f <= len f
by A2, JORDAN3:41;
then A51:
len g <= (len f) + 1
by A10, A50, XREAL_1:8;
now per cases
( len g = (len f) + 1 or len g < (len f) + 1 )
by A51, XXREAL_0:1;
case
len g < (len f) + 1
;
:: thesis: (LSeg g,j) /\ (LSeg g,(j + 1)) = {(g /. (j + 1))}then
len g <= len f
by NAT_1:13;
then A52:
j + 2
<= len f
by A40, XXREAL_0:2;
A53:
j + 1
<= Index p,
f
by A10, A42, A50, XREAL_1:8;
then A54:
j + 1
<= len f
by A48, XXREAL_0:2;
A55:
(LSeg g,j) /\ (LSeg g,(j + 1)) c= {(f /. (j + 1))}
by A1, A40, A44, A52, TOPREAL1:def 8;
A56:
f . (j + 1) = f /. (j + 1)
by A43, A54, FINSEQ_4:24;
g . (j + 1) =
(mid f,1,(Index p,f)) . (j + 1)
by A4, A10, A43, A53, FINSEQ_1:85
.=
f . (j + 1)
by A7, A43, A53, JORDAN3:32
;
hence
(LSeg g,j) /\ (LSeg g,(j + 1)) = {(g /. (j + 1))}
by A47, A49, A55, A56, XBOOLE_0:def 10;
:: thesis: verum end; end; end; hence
(LSeg g,j) /\ (LSeg g,(j + 1)) = {(g /. (j + 1))}
;
:: thesis: verum end;
hence
(LSeg g,j) /\ (LSeg g,(j + 1)) = {(g /. (j + 1))}
;
:: thesis: verum
end;
A57:
for j1, j2 being Nat st j1 + 1 < j2 holds
LSeg g,j1 misses LSeg g,j2
proof
let j1,
j2 be
Nat;
:: thesis: ( j1 + 1 < j2 implies LSeg g,j1 misses LSeg g,j2 )
assume A58:
j1 + 1
< j2
;
:: thesis: LSeg g,j1 misses LSeg g,j2
j1 >= 0
by NAT_1:2;
then A59:
(
j1 = 0 or
j1 >= 0 + 1 )
by NAT_1:13;
now per cases
( j1 = 0 or ( ( j1 = 1 or j1 > 1 ) & j2 + 1 <= len g ) or j2 + 1 > len g )
by A59, XXREAL_0:1;
case that A60:
(
j1 = 1 or
j1 > 1 )
and A61:
j2 + 1
<= len g
;
:: thesis: LSeg g,j1 misses LSeg g,j2
j2 < len g
by A61, NAT_1:13;
then
j1 + 1
< len g
by A58, XXREAL_0:2;
then A62:
LSeg g,
j1 c= LSeg f,
j1
by A2, A4, A60, JORDAN3:51;
1
+ 1
<= j1 + 1
by A60, XREAL_1:8;
then
2
<= j2
by A58, XXREAL_0:2;
then
1
<= j2
by XXREAL_0:2;
then A63:
LSeg g,
j2 c= LSeg f,
j2
by A2, A4, A61, JORDAN3:51;
LSeg f,
j1 misses LSeg f,
j2
by A1, A58, TOPREAL1:def 9;
then
(LSeg f,j1) /\ (LSeg f,j2) = {}
by XBOOLE_0:def 7;
then
(LSeg g,j1) /\ (LSeg g,j2) = {}
by A62, A63, XBOOLE_1:3, XBOOLE_1:27;
hence
LSeg g,
j1 misses LSeg g,
j2
by XBOOLE_0:def 7;
:: thesis: verum end; end; end;
hence
LSeg g,
j1 misses LSeg g,
j2
;
:: thesis: verum
end;
for j being Nat st 1 <= j & j + 1 <= len g & not (g /. j) `1 = (g /. (j + 1)) `1 holds
(g /. j) `2 = (g /. (j + 1)) `2
proof
let j be
Nat;
:: thesis: ( 1 <= j & j + 1 <= len g & not (g /. j) `1 = (g /. (j + 1)) `1 implies (g /. j) `2 = (g /. (j + 1)) `2 )
assume A64:
( 1
<= j &
j + 1
<= len g )
;
:: thesis: ( (g /. j) `1 = (g /. (j + 1)) `1 or (g /. j) `2 = (g /. (j + 1)) `2 )
A67:
LSeg g,
j c= LSeg f,
j
by A2, A4, A64, JORDAN3:51;
A68:
LSeg g,
j = LSeg (g /. j),
(g /. (j + 1))
by A64, TOPREAL1:def 5;
A69:
LSeg f,
j = LSeg (f /. j),
(f /. (j + 1))
by A64, A65, TOPREAL1:def 5;
(
(f /. j) `1 = (f /. (j + 1)) `1 or
(f /. j) `2 = (f /. (j + 1)) `2 )
by A1, A64, A65, TOPREAL1:def 7;
hence
(
(g /. j) `1 = (g /. (j + 1)) `1 or
(g /. j) `2 = (g /. (j + 1)) `2 )
by A67, A68, A69, JORDAN3:36;
:: thesis: verum
end;
then
( g is one-to-one & len g >= 2 & g is unfolded & g is s.n.c. & g is special )
by A15, A17, A39, A57, FUNCT_1:def 8, TOPREAL1:def 7, TOPREAL1:def 8, TOPREAL1:def 9;
then
g is being_S-Seq
by TOPREAL1:def 10;
hence
g is_S-Seq_joining f /. 1,p
by A12, A14, JORDAN3:def 3; :: thesis: verum