:: JORDAN4 semantic presentation begin theorem Th1: :: JORDAN4:1 for i, j being Nat st j < i & i < j + j holds i mod j <> 0 proof let i, j be Nat; ::_thesis: ( j < i & i < j + j implies i mod j <> 0 ) assume that A1: j < i and A2: i < j + j ; ::_thesis: i mod j <> 0 A3: i - j < (j + j) - j by A2, XREAL_1:9; i - j = i -' j by A1, XREAL_1:233; then A4: (i -' j) mod j = i -' j by A3, NAT_D:24; assume A5: i mod j = 0 ; ::_thesis: contradiction i = (i - j) + j ; then i mod j = ((i -' j) + j) mod j by A1, XREAL_1:233 .= ((i -' j) + (j mod j)) mod j by NAT_D:23 .= ((i -' j) + 0) mod j by NAT_D:25 .= (i -' j) mod j ; hence contradiction by A1, A5, A4, NAT_D:36; ::_thesis: verum end; theorem Th2: :: JORDAN4:2 for i, j being Nat st j <= i & i < j + j holds ( i mod j = i - j & i mod j = i -' j ) proof let i, j be Nat; ::_thesis: ( j <= i & i < j + j implies ( i mod j = i - j & i mod j = i -' j ) ) assume that A1: j <= i and A2: i < j + j ; ::_thesis: ( i mod j = i - j & i mod j = i -' j ) A3: i - j < (j + j) - j by A2, XREAL_1:9; i = (i - j) + j ; then A4: i mod j = ((i -' j) + j) mod j by A1, XREAL_1:233 .= ((i -' j) + (j mod j)) mod j by NAT_D:23 .= ((i -' j) + 0) mod j by NAT_D:25 .= (i -' j) mod j ; i - j = i -' j by A1, XREAL_1:233; hence ( i mod j = i - j & i mod j = i -' j ) by A4, A3, NAT_D:24; ::_thesis: verum end; theorem Th3: :: JORDAN4:3 for i, j being Nat holds (j + j) mod j = 0 proof let i, j be Nat; ::_thesis: (j + j) mod j = 0 thus (j + j) mod j = (2 * j) mod j .= 0 by NAT_D:13 ; ::_thesis: verum end; theorem Th4: :: JORDAN4:4 for j, k being Nat st 0 < k & k <= j & k mod j = 0 holds k = j proof let j, k be Nat; ::_thesis: ( 0 < k & k <= j & k mod j = 0 implies k = j ) assume that A1: 0 < k and A2: k <= j and A3: k mod j = 0 ; ::_thesis: k = j k >= j by A1, A3, NAT_D:24; hence k = j by A2, XXREAL_0:1; ::_thesis: verum end; begin theorem Th5: :: JORDAN4:5 for D being non empty set for f1 being FinSequence of D st f1 is circular & 1 <= len f1 holds f1 . 1 = f1 . (len f1) proof let D be non empty set ; ::_thesis: for f1 being FinSequence of D st f1 is circular & 1 <= len f1 holds f1 . 1 = f1 . (len f1) let f1 be FinSequence of D; ::_thesis: ( f1 is circular & 1 <= len f1 implies f1 . 1 = f1 . (len f1) ) assume that A1: f1 is circular and A2: 1 <= len f1 ; ::_thesis: f1 . 1 = f1 . (len f1) A3: f1 . 1 = f1 /. 1 by A2, FINSEQ_4:15; f1 /. 1 = f1 /. (len f1) by A1, FINSEQ_6:def_1; hence f1 . 1 = f1 . (len f1) by A2, A3, FINSEQ_4:15; ::_thesis: verum end; theorem Th6: :: JORDAN4:6 for D being non empty set for f1 being FinSequence of D for k being Element of NAT st k < len f1 holds ( (f1 /^ k) . (len (f1 /^ k)) = f1 . (len f1) & (f1 /^ k) /. (len (f1 /^ k)) = f1 /. (len f1) ) proof let D be non empty set ; ::_thesis: for f1 being FinSequence of D for k being Element of NAT st k < len f1 holds ( (f1 /^ k) . (len (f1 /^ k)) = f1 . (len f1) & (f1 /^ k) /. (len (f1 /^ k)) = f1 /. (len f1) ) let f1 be FinSequence of D; ::_thesis: for k being Element of NAT st k < len f1 holds ( (f1 /^ k) . (len (f1 /^ k)) = f1 . (len f1) & (f1 /^ k) /. (len (f1 /^ k)) = f1 /. (len f1) ) let k be Element of NAT ; ::_thesis: ( k < len f1 implies ( (f1 /^ k) . (len (f1 /^ k)) = f1 . (len f1) & (f1 /^ k) /. (len (f1 /^ k)) = f1 /. (len f1) ) ) assume A1: k < len f1 ; ::_thesis: ( (f1 /^ k) . (len (f1 /^ k)) = f1 . (len f1) & (f1 /^ k) /. (len (f1 /^ k)) = f1 /. (len f1) ) then k + 1 <= len f1 by NAT_1:13; then (k + 1) - k <= (len f1) - k by XREAL_1:9; then A2: 1 <= len (f1 /^ k) by A1, RFINSEQ:def_1; then len (f1 /^ k) in Seg (len (f1 /^ k)) by FINSEQ_1:1; then A3: len (f1 /^ k) in dom (f1 /^ k) by FINSEQ_1:def_3; (len (f1 /^ k)) + k = ((len f1) - k) + k by A1, RFINSEQ:def_1 .= len f1 ; hence A4: (f1 /^ k) . (len (f1 /^ k)) = f1 . (len f1) by A1, A3, RFINSEQ:def_1; ::_thesis: (f1 /^ k) /. (len (f1 /^ k)) = f1 /. (len f1) A5: (f1 /^ k) /. (len (f1 /^ k)) = (f1 /^ k) . (len (f1 /^ k)) by A2, FINSEQ_4:15; 0 + 1 <= len f1 by A1, NAT_1:13; hence (f1 /^ k) /. (len (f1 /^ k)) = f1 /. (len f1) by A4, A5, FINSEQ_4:15; ::_thesis: verum end; theorem Th7: :: JORDAN4:7 for g being FinSequence of (TOP-REAL 2) for i being Element of NAT st g is being_S-Seq & i + 1 < len g holds g /^ i is being_S-Seq proof let g be FinSequence of (TOP-REAL 2); ::_thesis: for i being Element of NAT st g is being_S-Seq & i + 1 < len g holds g /^ i is being_S-Seq let i be Element of NAT ; ::_thesis: ( g is being_S-Seq & i + 1 < len g implies g /^ i is being_S-Seq ) assume that A1: g is being_S-Seq and A2: i + 1 < len g ; ::_thesis: g /^ i is being_S-Seq A3: mid (g,(i + 1),(len g)) = g /^ ((i + 1) -' 1) by A2, FINSEQ_6:117 .= g /^ i by NAT_D:34 ; A4: 1 <= i + 1 by NAT_1:11; then 1 < len g by A2, XXREAL_0:2; hence g /^ i is being_S-Seq by A1, A2, A4, A3, JORDAN3:6; ::_thesis: verum end; theorem Th8: :: JORDAN4:8 for D being non empty set for f1 being FinSequence of D for i1, i2 being Element of NAT st 1 <= i2 & i2 <= i1 & i1 <= len f1 holds len (mid (f1,i2,i1)) = (i1 -' i2) + 1 proof let D be non empty set ; ::_thesis: for f1 being FinSequence of D for i1, i2 being Element of NAT st 1 <= i2 & i2 <= i1 & i1 <= len f1 holds len (mid (f1,i2,i1)) = (i1 -' i2) + 1 let f1 be FinSequence of D; ::_thesis: for i1, i2 being Element of NAT st 1 <= i2 & i2 <= i1 & i1 <= len f1 holds len (mid (f1,i2,i1)) = (i1 -' i2) + 1 let i1, i2 be Element of NAT ; ::_thesis: ( 1 <= i2 & i2 <= i1 & i1 <= len f1 implies len (mid (f1,i2,i1)) = (i1 -' i2) + 1 ) assume that A1: 1 <= i2 and A2: i2 <= i1 and A3: i1 <= len f1 ; ::_thesis: len (mid (f1,i2,i1)) = (i1 -' i2) + 1 A4: i2 <= len f1 by A2, A3, XXREAL_0:2; 1 <= i1 by A1, A2, XXREAL_0:2; hence len (mid (f1,i2,i1)) = (i1 -' i2) + 1 by A1, A2, A3, A4, FINSEQ_6:118; ::_thesis: verum end; theorem Th9: :: JORDAN4:9 for D being non empty set for f1 being FinSequence of D for i1, i2 being Element of NAT st 1 <= i2 & i2 <= i1 & i1 <= len f1 holds len (mid (f1,i1,i2)) = (i1 -' i2) + 1 proof let D be non empty set ; ::_thesis: for f1 being FinSequence of D for i1, i2 being Element of NAT st 1 <= i2 & i2 <= i1 & i1 <= len f1 holds len (mid (f1,i1,i2)) = (i1 -' i2) + 1 let f1 be FinSequence of D; ::_thesis: for i1, i2 being Element of NAT st 1 <= i2 & i2 <= i1 & i1 <= len f1 holds len (mid (f1,i1,i2)) = (i1 -' i2) + 1 let i1, i2 be Element of NAT ; ::_thesis: ( 1 <= i2 & i2 <= i1 & i1 <= len f1 implies len (mid (f1,i1,i2)) = (i1 -' i2) + 1 ) assume that A1: 1 <= i2 and A2: i2 <= i1 and A3: i1 <= len f1 ; ::_thesis: len (mid (f1,i1,i2)) = (i1 -' i2) + 1 percases ( i1 = i2 or i2 < i1 ) by A2, XXREAL_0:1; suppose i1 = i2 ; ::_thesis: len (mid (f1,i1,i2)) = (i1 -' i2) + 1 hence len (mid (f1,i1,i2)) = (i1 -' i2) + 1 by A1, A3, FINSEQ_6:118; ::_thesis: verum end; supposeA4: i2 < i1 ; ::_thesis: len (mid (f1,i1,i2)) = (i1 -' i2) + 1 A5: i2 <= len f1 by A2, A3, XXREAL_0:2; 1 <= i1 by A1, A2, XXREAL_0:2; hence len (mid (f1,i1,i2)) = (i1 -' i2) + 1 by A1, A3, A4, A5, FINSEQ_6:118; ::_thesis: verum end; end; end; theorem Th10: :: JORDAN4:10 for D being non empty set for f1 being FinSequence of D for i1, i2, j being Element of NAT st 1 <= i1 & i1 <= i2 & i2 <= len f1 holds (mid (f1,i1,i2)) . (len (mid (f1,i1,i2))) = f1 . i2 proof let D be non empty set ; ::_thesis: for f1 being FinSequence of D for i1, i2, j being Element of NAT st 1 <= i1 & i1 <= i2 & i2 <= len f1 holds (mid (f1,i1,i2)) . (len (mid (f1,i1,i2))) = f1 . i2 let f1 be FinSequence of D; ::_thesis: for i1, i2, j being Element of NAT st 1 <= i1 & i1 <= i2 & i2 <= len f1 holds (mid (f1,i1,i2)) . (len (mid (f1,i1,i2))) = f1 . i2 let i1, i2, j be Element of NAT ; ::_thesis: ( 1 <= i1 & i1 <= i2 & i2 <= len f1 implies (mid (f1,i1,i2)) . (len (mid (f1,i1,i2))) = f1 . i2 ) assume that A1: 1 <= i1 and A2: i1 <= i2 and A3: i2 <= len f1 ; ::_thesis: (mid (f1,i1,i2)) . (len (mid (f1,i1,i2))) = f1 . i2 A4: i1 <= len f1 by A2, A3, XXREAL_0:2; A5: 1 <= i2 by A1, A2, XXREAL_0:2; then len (mid (f1,i1,i2)) = (i2 -' i1) + 1 by A1, A2, A3, A4, FINSEQ_6:118; then 1 <= len (mid (f1,i1,i2)) by NAT_1:11; then A6: (mid (f1,i1,i2)) . (len (mid (f1,i1,i2))) = f1 . (((len (mid (f1,i1,i2))) + i1) -' 1) by A1, A2, A3, A5, A4, FINSEQ_6:118 .= f1 . ((((i2 -' i1) + 1) + i1) -' 1) by A1, A2, A3, A5, A4, FINSEQ_6:118 ; ((i2 -' i1) + 1) + i1 = ((i2 - i1) + 1) + i1 by A2, XREAL_1:233 .= i2 + 1 ; hence (mid (f1,i1,i2)) . (len (mid (f1,i1,i2))) = f1 . i2 by A6, NAT_D:34; ::_thesis: verum end; theorem Th11: :: JORDAN4:11 for D being non empty set for f1 being FinSequence of D for i1, i2, j being Element of NAT st 1 <= i1 & i1 <= len f1 & 1 <= i2 & i2 <= len f1 holds (mid (f1,i1,i2)) . (len (mid (f1,i1,i2))) = f1 . i2 proof let D be non empty set ; ::_thesis: for f1 being FinSequence of D for i1, i2, j being Element of NAT st 1 <= i1 & i1 <= len f1 & 1 <= i2 & i2 <= len f1 holds (mid (f1,i1,i2)) . (len (mid (f1,i1,i2))) = f1 . i2 let f1 be FinSequence of D; ::_thesis: for i1, i2, j being Element of NAT st 1 <= i1 & i1 <= len f1 & 1 <= i2 & i2 <= len f1 holds (mid (f1,i1,i2)) . (len (mid (f1,i1,i2))) = f1 . i2 let i1, i2, j be Element of NAT ; ::_thesis: ( 1 <= i1 & i1 <= len f1 & 1 <= i2 & i2 <= len f1 implies (mid (f1,i1,i2)) . (len (mid (f1,i1,i2))) = f1 . i2 ) assume that A1: 1 <= i1 and A2: i1 <= len f1 and A3: 1 <= i2 and A4: i2 <= len f1 ; ::_thesis: (mid (f1,i1,i2)) . (len (mid (f1,i1,i2))) = f1 . i2 percases ( i1 <= i2 or i1 > i2 ) ; suppose i1 <= i2 ; ::_thesis: (mid (f1,i1,i2)) . (len (mid (f1,i1,i2))) = f1 . i2 hence (mid (f1,i1,i2)) . (len (mid (f1,i1,i2))) = f1 . i2 by A1, A4, Th10; ::_thesis: verum end; supposeA5: i1 > i2 ; ::_thesis: (mid (f1,i1,i2)) . (len (mid (f1,i1,i2))) = f1 . i2 0 <= i2 - 1 by A3, XREAL_1:48; then i1 - 0 >= i1 - (i2 - 1) by XREAL_1:10; then i1 >= (i1 - i2) + 1 ; then (i1 -' i2) + 1 <= i1 by A5, XREAL_1:233; then A6: (i1 -' ((i1 -' i2) + 1)) + 1 = (i1 - ((i1 -' i2) + 1)) + 1 by XREAL_1:233 .= i1 - (i1 -' i2) .= i1 - (i1 - i2) by A5, XREAL_1:233 .= i2 ; len (mid (f1,i1,i2)) = (i1 -' i2) + 1 by A1, A2, A3, A4, A5, FINSEQ_6:118; then 1 <= len (mid (f1,i1,i2)) by NAT_1:11; then (mid (f1,i1,i2)) . (len (mid (f1,i1,i2))) = f1 . ((i1 -' (len (mid (f1,i1,i2)))) + 1) by A1, A2, A3, A4, A5, FINSEQ_6:118 .= f1 . ((i1 -' ((i1 -' i2) + 1)) + 1) by A1, A2, A3, A4, A5, FINSEQ_6:118 ; hence (mid (f1,i1,i2)) . (len (mid (f1,i1,i2))) = f1 . i2 by A6; ::_thesis: verum end; end; end; theorem Th12: :: JORDAN4:12 for D being non empty set for f1 being FinSequence of D for i1, i2, j being Element of NAT st 1 <= i2 & i2 <= i1 & i1 <= len f1 & 1 <= j & j <= (i1 -' i2) + 1 holds (mid (f1,i1,i2)) . j = f1 . ((i1 -' j) + 1) proof let D be non empty set ; ::_thesis: for f1 being FinSequence of D for i1, i2, j being Element of NAT st 1 <= i2 & i2 <= i1 & i1 <= len f1 & 1 <= j & j <= (i1 -' i2) + 1 holds (mid (f1,i1,i2)) . j = f1 . ((i1 -' j) + 1) let f1 be FinSequence of D; ::_thesis: for i1, i2, j being Element of NAT st 1 <= i2 & i2 <= i1 & i1 <= len f1 & 1 <= j & j <= (i1 -' i2) + 1 holds (mid (f1,i1,i2)) . j = f1 . ((i1 -' j) + 1) let i1, i2, j be Element of NAT ; ::_thesis: ( 1 <= i2 & i2 <= i1 & i1 <= len f1 & 1 <= j & j <= (i1 -' i2) + 1 implies (mid (f1,i1,i2)) . j = f1 . ((i1 -' 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 ; ::_thesis: (mid (f1,i1,i2)) . j = f1 . ((i1 -' j) + 1) A6: j <= len (mid (f1,i1,i2)) by A1, A2, A3, A5, Th9; percases ( i1 = i2 or i2 < i1 ) by A2, XXREAL_0:1; supposeA7: i1 = i2 ; ::_thesis: (mid (f1,i1,i2)) . j = f1 . ((i1 -' j) + 1) then A8: (i1 -' i2) + 1 = 0 + 1 by XREAL_1:232 .= 1 ; then (j + i1) -' 1 = (1 + i1) -' 1 by A4, A5, XXREAL_0:1 .= (1 + i1) - 1 by NAT_D:37 .= (i1 - 1) + 1 .= (i1 -' 1) + 1 by A1, A7, XREAL_1:233 .= (i1 -' j) + 1 by A4, A5, A8, XXREAL_0:1 ; hence (mid (f1,i1,i2)) . j = f1 . ((i1 -' j) + 1) by A1, A3, A4, A6, A7, FINSEQ_6:118; ::_thesis: verum end; supposeA9: i2 < i1 ; ::_thesis: (mid (f1,i1,i2)) . j = f1 . ((i1 -' j) + 1) A10: i2 <= len f1 by A2, A3, XXREAL_0:2; 1 <= i1 by A1, A2, XXREAL_0:2; hence (mid (f1,i1,i2)) . j = f1 . ((i1 -' j) + 1) by A1, A3, A4, A6, A9, A10, FINSEQ_6:118; ::_thesis: verum end; end; end; theorem Th13: :: JORDAN4:13 for j being Element of NAT for D being non empty set for f1 being FinSequence of D for i1, i2 being Element of 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 ) proof let j be Element of NAT ; ::_thesis: for D being non empty set for f1 being FinSequence of D for i1, i2 being Element of 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 ; ::_thesis: for f1 being FinSequence of D for i1, i2 being Element of 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; ::_thesis: for i1, i2 being Element of 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 Element of NAT ; ::_thesis: ( 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 ; ::_thesis: ( (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__::_thesis:_(_(_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_)_) percases ( i1 > i2 or i1 = i2 ) by A2, XXREAL_0:1; caseA14: i1 > i2 ; ::_thesis: ( (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, FINSEQ_6:118; 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, FINSEQ_6:118; A16: len (mid (f1,i1,i2)) = (i1 -' i2) + 1 by A1, A3, A6, A8, A14, FINSEQ_6:118; (((((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, FINSEQ_6:118; ::_thesis: verum end; caseA17: i1 = i2 ; ::_thesis: ( (mid (f1,i1,i2)) . j = (mid (f1,i2,i1)) . ((((i1 - i2) + 1) - j) + 1) & (((i1 - i2) + 1) - j) + 1 = (((i1 -' i2) + 1) -' j) + 1 ) then (i1 -' i2) + 1 = 0 + 1 by XREAL_1:232 .= 1 ; then (((i1 - i2) + 1) - j) + 1 = ((0 + 1) - 1) + 1 by A4, A5, A17, XXREAL_0:1 .= 1 ; 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 A12, A17; ::_thesis: verum 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 ) ; ::_thesis: verum end; theorem :: JORDAN4:14 for j being Element of NAT for D being non empty set for f1 being FinSequence of D for i1, i2 being Element of NAT st 1 <= i1 & i1 <= i2 & i2 <= len f1 & 1 <= j & j <= (i2 -' i1) + 1 holds ( (mid (f1,i1,i2)) . j = (mid (f1,i2,i1)) . ((((i2 - i1) + 1) - j) + 1) & (((i2 - i1) + 1) - j) + 1 = (((i2 -' i1) + 1) -' j) + 1 ) proof let j be Element of NAT ; ::_thesis: for D being non empty set for f1 being FinSequence of D for i1, i2 being Element of NAT st 1 <= i1 & i1 <= i2 & i2 <= len f1 & 1 <= j & j <= (i2 -' i1) + 1 holds ( (mid (f1,i1,i2)) . j = (mid (f1,i2,i1)) . ((((i2 - i1) + 1) - j) + 1) & (((i2 - i1) + 1) - j) + 1 = (((i2 -' i1) + 1) -' j) + 1 ) let D be non empty set ; ::_thesis: for f1 being FinSequence of D for i1, i2 being Element of NAT st 1 <= i1 & i1 <= i2 & i2 <= len f1 & 1 <= j & j <= (i2 -' i1) + 1 holds ( (mid (f1,i1,i2)) . j = (mid (f1,i2,i1)) . ((((i2 - i1) + 1) - j) + 1) & (((i2 - i1) + 1) - j) + 1 = (((i2 -' i1) + 1) -' j) + 1 ) let f1 be FinSequence of D; ::_thesis: for i1, i2 being Element of NAT st 1 <= i1 & i1 <= i2 & i2 <= len f1 & 1 <= j & j <= (i2 -' i1) + 1 holds ( (mid (f1,i1,i2)) . j = (mid (f1,i2,i1)) . ((((i2 - i1) + 1) - j) + 1) & (((i2 - i1) + 1) - j) + 1 = (((i2 -' i1) + 1) -' j) + 1 ) let i1, i2 be Element of NAT ; ::_thesis: ( 1 <= i1 & i1 <= i2 & i2 <= len f1 & 1 <= j & j <= (i2 -' i1) + 1 implies ( (mid (f1,i1,i2)) . j = (mid (f1,i2,i1)) . ((((i2 - i1) + 1) - j) + 1) & (((i2 - i1) + 1) - j) + 1 = (((i2 -' i1) + 1) -' j) + 1 ) ) assume that A1: 1 <= i1 and A2: i1 <= i2 and A3: i2 <= len f1 and A4: 1 <= j and A5: j <= (i2 -' i1) + 1 ; ::_thesis: ( (mid (f1,i1,i2)) . j = (mid (f1,i2,i1)) . ((((i2 - i1) + 1) - j) + 1) & (((i2 - i1) + 1) - j) + 1 = (((i2 -' i1) + 1) -' j) + 1 ) set k = (((i2 -' i1) + 1) -' j) + 1; (((i2 - i1) + 1) - j) + 1 = (((i2 -' i1) + 1) - j) + 1 by A2, XREAL_1:233 .= (((i2 -' i1) + 1) -' j) + 1 by A5, XREAL_1:233 ; then A6: (((i2 - i1) + 1) - ((((i2 -' i1) + 1) -' j) + 1)) + 1 = j ; j - 1 >= 0 by A4, XREAL_1:48; then A7: ((((i2 -' i1) + 1) -' j) + 1) + 0 <= ((((i2 -' i1) + 1) -' j) + 1) + (j - 1) by XREAL_1:7; A8: 1 <= (((i2 -' i1) + 1) -' j) + 1 by NAT_1:11; ((i2 -' i1) + 1) - j = ((i2 -' i1) + 1) -' j by A5, XREAL_1:233; hence ( (mid (f1,i1,i2)) . j = (mid (f1,i2,i1)) . ((((i2 - i1) + 1) - j) + 1) & (((i2 - i1) + 1) - j) + 1 = (((i2 -' i1) + 1) -' j) + 1 ) by A1, A2, A3, A8, A7, A6, Th13; ::_thesis: verum end; theorem Th15: :: JORDAN4:15 for D being non empty set for f1 being FinSequence of D for k being Element of NAT st 1 <= k & k <= len f1 holds ( mid (f1,k,k) = <*(f1 /. k)*> & len (mid (f1,k,k)) = 1 ) proof let D be non empty set ; ::_thesis: for f1 being FinSequence of D for k being Element of NAT st 1 <= k & k <= len f1 holds ( mid (f1,k,k) = <*(f1 /. k)*> & len (mid (f1,k,k)) = 1 ) let f1 be FinSequence of D; ::_thesis: for k being Element of NAT st 1 <= k & k <= len f1 holds ( mid (f1,k,k) = <*(f1 /. k)*> & len (mid (f1,k,k)) = 1 ) let k be Element of NAT ; ::_thesis: ( 1 <= k & k <= len f1 implies ( mid (f1,k,k) = <*(f1 /. k)*> & len (mid (f1,k,k)) = 1 ) ) assume that A1: 1 <= k and A2: k <= len f1 ; ::_thesis: ( mid (f1,k,k) = <*(f1 /. k)*> & len (mid (f1,k,k)) = 1 ) A3: f1 /. k = f1 . k by A1, A2, FINSEQ_4:15; (k -' 1) + 1 <= len f1 by A1, A2, XREAL_1:235; then A4: ((k -' 1) + 1) - (k -' 1) <= (len f1) - (k -' 1) by XREAL_1:9; len (f1 /^ (k -' 1)) = (len f1) -' (k -' 1) by RFINSEQ:29; then A5: 1 <= len (f1 /^ (k -' 1)) by A4, NAT_D:39; (k -' 1) + 1 = k by A1, XREAL_1:235; then A6: (f1 /^ (k -' 1)) . 1 = f1 . k by A2, FINSEQ_6:114; (k -' k) + 1 = (k - k) + 1 by XREAL_1:233 .= 1 ; then mid (f1,k,k) = (f1 /^ (k -' 1)) | 1 by FINSEQ_6:def_3 .= <*((f1 /^ (k -' 1)) /. 1)*> by A5, CARD_1:27, FINSEQ_5:20 ; hence ( mid (f1,k,k) = <*(f1 /. k)*> & len (mid (f1,k,k)) = 1 ) by A6, A3, A5, FINSEQ_1:39, FINSEQ_4:15; ::_thesis: verum end; theorem Th16: :: JORDAN4:16 for D being non empty set for f1 being FinSequence of D holds mid (f1,0,0) = f1 | 1 proof let D be non empty set ; ::_thesis: for f1 being FinSequence of D holds mid (f1,0,0) = f1 | 1 let f1 be FinSequence of D; ::_thesis: mid (f1,0,0) = f1 | 1 0 - 1 < 0 ; then A1: 0 -' 1 = 0 by XREAL_0:def_2; (0 -' 0) + 1 = (0 - 0) + 1 by XREAL_1:233 .= 1 ; then mid (f1,0,0) = (f1 /^ (0 -' 1)) | 1 by FINSEQ_6:def_3; hence mid (f1,0,0) = f1 | 1 by A1, FINSEQ_5:28; ::_thesis: verum end; theorem Th17: :: JORDAN4:17 for D being non empty set for f1 being FinSequence of D for k being Element of NAT st len f1 < k holds mid (f1,k,k) = <*> D proof let D be non empty set ; ::_thesis: for f1 being FinSequence of D for k being Element of NAT st len f1 < k holds mid (f1,k,k) = <*> D let f1 be FinSequence of D; ::_thesis: for k being Element of NAT st len f1 < k holds mid (f1,k,k) = <*> D let k be Element of NAT ; ::_thesis: ( len f1 < k implies mid (f1,k,k) = <*> D ) assume A1: len f1 < k ; ::_thesis: mid (f1,k,k) = <*> D then (len f1) + 1 <= k by NAT_1:13; then A2: ((len f1) + 1) - 1 <= k - 1 by XREAL_1:9; 0 + 1 <= k by A1, NAT_1:13; then len f1 <= k -' 1 by A2, XREAL_1:233; then A3: f1 /^ (k -' 1) = <*> D by FINSEQ_5:32; (k -' k) + 1 = (k - k) + 1 by XREAL_1:233 .= 1 ; then mid (f1,k,k) = (f1 /^ (k -' 1)) | 1 by FINSEQ_6:def_3; hence mid (f1,k,k) = <*> D by A3, FINSEQ_5:78; ::_thesis: verum end; theorem Th18: :: JORDAN4:18 for D being non empty set for f1 being FinSequence of D for i1, i2 being Element of NAT holds mid (f1,i1,i2) = Rev (mid (f1,i2,i1)) proof let D be non empty set ; ::_thesis: for f1 being FinSequence of D for i1, i2 being Element of NAT holds mid (f1,i1,i2) = Rev (mid (f1,i2,i1)) let f1 be FinSequence of D; ::_thesis: for i1, i2 being Element of NAT holds mid (f1,i1,i2) = Rev (mid (f1,i2,i1)) let k1, k2 be Element of NAT ; ::_thesis: mid (f1,k1,k2) = Rev (mid (f1,k2,k1)) now__::_thesis:_(_(_k1_<=_k2_&_mid_(f1,k1,k2)_=_Rev_(mid_(f1,k2,k1))_)_or_(_k1_>_k2_&_mid_(f1,k1,k2)_=_Rev_(mid_(f1,k2,k1))_)_) percases ( k1 <= k2 or k1 > k2 ) ; caseA1: k1 <= k2 ; ::_thesis: mid (f1,k1,k2) = Rev (mid (f1,k2,k1)) then A2: mid (f1,k1,k2) = (f1 /^ (k1 -' 1)) | ((k2 -' k1) + 1) by FINSEQ_6:def_3; now__::_thesis:_(_(_k1_<_k2_&_mid_(f1,k1,k2)_=_Rev_(mid_(f1,k2,k1))_)_or_(_k1_=_k2_&_mid_(f1,k1,k2)_=_Rev_(mid_(f1,k2,k1))_)_) percases ( k1 < k2 or k1 = k2 ) by A1, XXREAL_0:1; case k1 < k2 ; ::_thesis: mid (f1,k1,k2) = Rev (mid (f1,k2,k1)) then mid (f1,k2,k1) = Rev (mid (f1,k1,k2)) by A2, FINSEQ_6:def_3; hence mid (f1,k1,k2) = Rev (mid (f1,k2,k1)) ; ::_thesis: verum end; caseA3: k1 = k2 ; ::_thesis: mid (f1,k1,k2) = Rev (mid (f1,k2,k1)) A4: ( k1 = 0 or 0 + 1 <= k1 ) by NAT_1:13; now__::_thesis:_(_(_k1_=_0_&_mid_(f1,k1,k2)_=_Rev_(mid_(f1,k2,k1))_)_or_(_1_<=_k1_&_k1_<=_len_f1_&_mid_(f1,k1,k2)_=_Rev_(mid_(f1,k2,k1))_)_or_(_len_f1_<_k1_&_mid_(f1,k1,k2)_=_Rev_(mid_(f1,k2,k1))_)_) percases ( k1 = 0 or ( 1 <= k1 & k1 <= len f1 ) or len f1 < k1 ) by A4; case k1 = 0 ; ::_thesis: mid (f1,k1,k2) = Rev (mid (f1,k2,k1)) then A5: mid (f1,k1,k2) = f1 | 1 by A3, Th16; now__::_thesis:_(_(_len_f1_=_0_&_mid_(f1,k1,k2)_=_Rev_(mid_(f1,k2,k1))_)_or_(_len_f1_<>_0_&_mid_(f1,k1,k2)_=_Rev_(mid_(f1,k2,k1))_)_) percases ( len f1 = 0 or len f1 <> 0 ) ; case len f1 = 0 ; ::_thesis: mid (f1,k1,k2) = Rev (mid (f1,k2,k1)) then f1 = <*> D ; then f1 | 1 = <*> D by FINSEQ_5:78; hence mid (f1,k1,k2) = Rev (mid (f1,k2,k1)) by A3, A5, FINSEQ_5:79; ::_thesis: verum end; case len f1 <> 0 ; ::_thesis: mid (f1,k1,k2) = Rev (mid (f1,k2,k1)) then f1 <> <*> D ; then f1 | 1 = <*(f1 /. 1)*> by FINSEQ_5:20; hence mid (f1,k1,k2) = Rev (mid (f1,k2,k1)) by A3, A5, FINSEQ_5:60; ::_thesis: verum end; end; end; hence mid (f1,k1,k2) = Rev (mid (f1,k2,k1)) ; ::_thesis: verum end; case ( 1 <= k1 & k1 <= len f1 ) ; ::_thesis: mid (f1,k1,k2) = Rev (mid (f1,k2,k1)) then mid (f1,k1,k1) = <*(f1 /. k1)*> by Th15; hence mid (f1,k1,k2) = Rev (mid (f1,k2,k1)) by A3, FINSEQ_5:60; ::_thesis: verum end; case len f1 < k1 ; ::_thesis: mid (f1,k1,k2) = Rev (mid (f1,k2,k1)) then mid (f1,k1,k1) = <*> D by Th17; hence mid (f1,k1,k2) = Rev (mid (f1,k2,k1)) by A3, FINSEQ_5:79; ::_thesis: verum end; end; end; hence mid (f1,k1,k2) = Rev (mid (f1,k2,k1)) ; ::_thesis: verum end; end; end; hence mid (f1,k1,k2) = Rev (mid (f1,k2,k1)) ; ::_thesis: verum end; caseA6: k1 > k2 ; ::_thesis: mid (f1,k1,k2) = Rev (mid (f1,k2,k1)) then mid (f1,k1,k2) = Rev ((f1 /^ (k2 -' 1)) | ((k1 -' k2) + 1)) by FINSEQ_6:def_3; hence mid (f1,k1,k2) = Rev (mid (f1,k2,k1)) by A6, FINSEQ_6:def_3; ::_thesis: verum end; end; end; hence mid (f1,k1,k2) = Rev (mid (f1,k2,k1)) ; ::_thesis: verum end; theorem Th19: :: JORDAN4:19 for f being FinSequence of (TOP-REAL 2) for i1, i2, i being Element of NAT st 1 <= i1 & i1 < i2 & i2 <= len f & 1 <= i & i < (i2 -' i1) + 1 holds LSeg ((mid (f,i1,i2)),i) = LSeg (f,((i + i1) -' 1)) proof let f be FinSequence of (TOP-REAL 2); ::_thesis: for i1, i2, i being Element of NAT st 1 <= i1 & i1 < i2 & i2 <= len f & 1 <= i & i < (i2 -' i1) + 1 holds LSeg ((mid (f,i1,i2)),i) = LSeg (f,((i + i1) -' 1)) let i1, i2, i be Element of NAT ; ::_thesis: ( 1 <= i1 & i1 < i2 & i2 <= len f & 1 <= i & i < (i2 -' i1) + 1 implies LSeg ((mid (f,i1,i2)),i) = LSeg (f,((i + i1) -' 1)) ) assume that A1: 1 <= i1 and A2: i1 < i2 and A3: i2 <= len f and A4: 1 <= i and A5: i < (i2 -' i1) + 1 ; ::_thesis: LSeg ((mid (f,i1,i2)),i) = LSeg (f,((i + i1) -' 1)) A6: ((i + i1) -' 1) + 1 = ((i + i1) - 1) + 1 by A1, NAT_D:37 .= ((i + 1) + i1) - 1 .= ((i + 1) + i1) -' 1 by A1, NAT_D:37 ; (i2 - i1) + 1 = (i2 -' i1) + 1 by A2, XREAL_1:233; then i + i1 < ((i2 - i1) + 1) + i1 by A5, XREAL_1:6; then ((i + i1) + 1) - 1 <= (i2 + 1) - 1 by NAT_1:13; then A7: ((i + i1) - 1) + 1 <= len f by A3, XXREAL_0:2; then A8: ((i + i1) -' 1) + 1 <= len f by A1, NAT_D:37; then A9: (i + i1) -' 1 < len f by NAT_1:13; 1 + 1 <= i + i1 by A1, A4, XREAL_1:7; then (1 + 1) - 1 <= (i + i1) - 1 by XREAL_1:9; then A10: 1 <= (i + i1) -' 1 by A1, NAT_D:37; then A11: 1 < ((i + i1) -' 1) + 1 by NAT_1:13; A12: LSeg (f,((i + i1) -' 1)) = LSeg ((f /. ((i + i1) -' 1)),(f /. (((i + i1) -' 1) + 1))) by A10, A8, TOPREAL1:def_3; A13: i + 1 <= (i2 -' i1) + 1 by A5, NAT_1:13; A14: ((i + i1) -' 1) + 1 <= len f by A1, A7, NAT_D:37; A15: 1 <= 1 + i by NAT_1:11; A16: i < len (mid (f,i1,i2)) by A1, A2, A3, A5, Th8; then A17: (mid (f,i1,i2)) /. i = (mid (f,i1,i2)) . i by A4, FINSEQ_4:15 .= f . ((i + i1) -' 1) by A1, A2, A3, A4, A5, FINSEQ_6:122 .= f /. ((i + i1) -' 1) by A10, A9, FINSEQ_4:15 ; A18: i + 1 <= len (mid (f,i1,i2)) by A16, NAT_1:13; i + 1 <= len (mid (f,i1,i2)) by A16, NAT_1:13; then (mid (f,i1,i2)) /. (i + 1) = (mid (f,i1,i2)) . (i + 1) by FINSEQ_4:15, NAT_1:11 .= f . (((i + 1) + i1) -' 1) by A1, A2, A3, A13, A15, FINSEQ_6:122 .= f /. (((i + 1) + i1) -' 1) by A11, A14, A6, FINSEQ_4:15 ; hence LSeg ((mid (f,i1,i2)),i) = LSeg (f,((i + i1) -' 1)) by A4, A18, A12, A6, A17, TOPREAL1:def_3; ::_thesis: verum end; theorem Th20: :: JORDAN4:20 for f being FinSequence of (TOP-REAL 2) for i1, i2, i being Element of NAT st 1 <= i1 & i1 < i2 & i2 <= len f & 1 <= i & i < (i2 -' i1) + 1 holds LSeg ((mid (f,i2,i1)),i) = LSeg (f,(i2 -' i)) proof let f be FinSequence of (TOP-REAL 2); ::_thesis: for i1, i2, i being Element of NAT st 1 <= i1 & i1 < i2 & i2 <= len f & 1 <= i & i < (i2 -' i1) + 1 holds LSeg ((mid (f,i2,i1)),i) = LSeg (f,(i2 -' i)) let i1, i2, i be Element of NAT ; ::_thesis: ( 1 <= i1 & i1 < i2 & i2 <= len f & 1 <= i & i < (i2 -' i1) + 1 implies LSeg ((mid (f,i2,i1)),i) = LSeg (f,(i2 -' i)) ) assume that A1: 1 <= i1 and A2: i1 < i2 and A3: i2 <= len f and A4: 1 <= i and A5: i < (i2 -' i1) + 1 ; ::_thesis: LSeg ((mid (f,i2,i1)),i) = LSeg (f,(i2 -' i)) A6: len (mid (f,i2,i1)) = (i2 -' i1) + 1 by A1, A2, A3, Th9; i < len (mid (f,i2,i1)) by A1, A2, A3, A5, Th9; then i + 1 <= len (mid (f,i2,i1)) by NAT_1:13; then A7: (i + 1) - i <= (len (mid (f,i2,i1))) - i by XREAL_1:9; then A8: 1 <= (len (mid (f,i2,i1))) -' i by NAT_D:39; i2 <= i2 + (i1 -' 1) by NAT_1:11; then i2 <= i2 + (i1 - 1) by A1, XREAL_1:233; then i2 - (i1 - 1) <= (i2 + (i1 - 1)) - (i1 - 1) by XREAL_1:9; then (i2 - i1) + 1 <= i2 ; then A9: (i2 -' i1) + 1 <= i2 by A2, XREAL_1:233; A10: ((((i2 -' i1) + 1) -' i) + i1) -' 1 = ((((i2 -' i1) + 1) -' i) + i1) - 1 by A1, NAT_D:37 .= ((((i2 -' i1) + 1) - i) + i1) - 1 by A5, XREAL_1:233 .= ((i2 -' i1) - i) + i1 .= ((i2 - i1) - i) + i1 by A2, XREAL_1:233 .= i2 - i .= i2 -' i by A5, A9, XREAL_1:233, XXREAL_0:2 ; (len (mid (f,i2,i1))) + 1 <= (len (mid (f,i2,i1))) + i by A4, XREAL_1:6; then len (mid (f,i2,i1)) < (len (mid (f,i2,i1))) + i by NAT_1:13; then (len (mid (f,i2,i1))) - i < ((len (mid (f,i2,i1))) + i) - i by XREAL_1:9; then A11: (len (mid (f,i2,i1))) -' i < (i2 -' i1) + 1 by A6, A7, NAT_D:39; i + ((len (mid (f,i2,i1))) -' i) = len (mid (f,i2,i1)) by A5, A6, XREAL_1:235; hence LSeg ((mid (f,i2,i1)),i) = LSeg ((Rev (mid (f,i2,i1))),((len (mid (f,i2,i1))) -' i)) by SPPOL_2:2 .= LSeg ((mid (f,i1,i2)),((len (mid (f,i2,i1))) -' i)) by Th18 .= LSeg (f,((((len (mid (f,i2,i1))) -' i) + i1) -' 1)) by A1, A2, A3, A8, A11, Th19 .= LSeg (f,(i2 -' i)) by A1, A2, A3, A10, Th9 ; ::_thesis: verum end; begin definition let n be Element of NAT ; let f be FinSequence; func S_Drop (n,f) -> Element of NAT equals :Def1: :: JORDAN4:def 1 n mod ((len f) -' 1) if n mod ((len f) -' 1) <> 0 otherwise (len f) -' 1; correctness coherence ( ( n mod ((len f) -' 1) <> 0 implies n mod ((len f) -' 1) is Element of NAT ) & ( not n mod ((len f) -' 1) <> 0 implies (len f) -' 1 is Element of NAT ) ); consistency for b1 being Element of NAT holds verum; ; end; :: deftheorem Def1 defines S_Drop JORDAN4:def_1_:_ for n being Element of NAT for f being FinSequence holds ( ( n mod ((len f) -' 1) <> 0 implies S_Drop (n,f) = n mod ((len f) -' 1) ) & ( not n mod ((len f) -' 1) <> 0 implies S_Drop (n,f) = (len f) -' 1 ) ); theorem Th21: :: JORDAN4:21 for f being FinSequence holds S_Drop (((len f) -' 1),f) = (len f) -' 1 proof let f be FinSequence; ::_thesis: S_Drop (((len f) -' 1),f) = (len f) -' 1 ((len f) -' 1) mod ((len f) -' 1) = 0 by NAT_D:25; hence S_Drop (((len f) -' 1),f) = (len f) -' 1 by Def1; ::_thesis: verum end; theorem Th22: :: JORDAN4:22 for n being Element of NAT for f being FinSequence st 1 <= n & n <= (len f) -' 1 holds S_Drop (n,f) = n proof let n be Element of NAT ; ::_thesis: for f being FinSequence st 1 <= n & n <= (len f) -' 1 holds S_Drop (n,f) = n let f be FinSequence; ::_thesis: ( 1 <= n & n <= (len f) -' 1 implies S_Drop (n,f) = n ) assume that A1: 1 <= n and A2: n <= (len f) -' 1 ; ::_thesis: S_Drop (n,f) = n percases ( n < (len f) -' 1 or n = (len f) -' 1 ) by A2, XXREAL_0:1; suppose n < (len f) -' 1 ; ::_thesis: S_Drop (n,f) = n then n mod ((len f) -' 1) = n by NAT_D:24; hence S_Drop (n,f) = n by A1, Def1; ::_thesis: verum end; suppose n = (len f) -' 1 ; ::_thesis: S_Drop (n,f) = n hence S_Drop (n,f) = n by Th21; ::_thesis: verum end; end; end; theorem Th23: :: JORDAN4:23 for n being Element of NAT for f being FinSequence holds ( S_Drop (n,f) = S_Drop ((n + ((len f) -' 1)),f) & S_Drop (n,f) = S_Drop ((((len f) -' 1) + n),f) ) proof let n be Element of NAT ; ::_thesis: for f being FinSequence holds ( S_Drop (n,f) = S_Drop ((n + ((len f) -' 1)),f) & S_Drop (n,f) = S_Drop ((((len f) -' 1) + n),f) ) let f be FinSequence; ::_thesis: ( S_Drop (n,f) = S_Drop ((n + ((len f) -' 1)),f) & S_Drop (n,f) = S_Drop ((((len f) -' 1) + n),f) ) A1: (n + ((len f) -' 1)) mod ((len f) -' 1) = (n + (((len f) -' 1) * 1)) mod ((len f) -' 1) .= n mod ((len f) -' 1) by NAT_D:21 ; percases ( n mod ((len f) -' 1) <> 0 or n mod ((len f) -' 1) = 0 ) ; supposeA2: n mod ((len f) -' 1) <> 0 ; ::_thesis: ( S_Drop (n,f) = S_Drop ((n + ((len f) -' 1)),f) & S_Drop (n,f) = S_Drop ((((len f) -' 1) + n),f) ) then S_Drop (n,f) = n mod ((len f) -' 1) by Def1; hence ( S_Drop (n,f) = S_Drop ((n + ((len f) -' 1)),f) & S_Drop (n,f) = S_Drop ((((len f) -' 1) + n),f) ) by A1, A2, Def1; ::_thesis: verum end; supposeA3: n mod ((len f) -' 1) = 0 ; ::_thesis: ( S_Drop (n,f) = S_Drop ((n + ((len f) -' 1)),f) & S_Drop (n,f) = S_Drop ((((len f) -' 1) + n),f) ) then S_Drop (n,f) = (len f) -' 1 by Def1; hence ( S_Drop (n,f) = S_Drop ((n + ((len f) -' 1)),f) & S_Drop (n,f) = S_Drop ((((len f) -' 1) + n),f) ) by A1, A3, Def1; ::_thesis: verum end; end; end; definition let f be non constant standard special_circular_sequence; let g be FinSequence of (TOP-REAL 2); let i1, i2 be Element of NAT ; predg is_a_part>_of f,i1,i2 means :Def2: :: JORDAN4:def 2 ( 1 <= i1 & i1 + 1 <= len f & 1 <= i2 & i2 + 1 <= len f & g . (len g) = f . i2 & 1 <= len g & len g < len f & ( for i being Nat st 1 <= i & i <= len g holds g . i = f . (S_Drop (((i1 + i) -' 1),f)) ) ); end; :: deftheorem Def2 defines is_a_part>_of JORDAN4:def_2_:_ for f being non constant standard special_circular_sequence for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT holds ( g is_a_part>_of f,i1,i2 iff ( 1 <= i1 & i1 + 1 <= len f & 1 <= i2 & i2 + 1 <= len f & g . (len g) = f . i2 & 1 <= len g & len g < len f & ( for i being Nat st 1 <= i & i <= len g holds g . i = f . (S_Drop (((i1 + i) -' 1),f)) ) ) ); definition let f be non constant standard special_circular_sequence; let g be FinSequence of (TOP-REAL 2); let i1, i2 be Element of NAT ; predg is_a_part<_of f,i1,i2 means :Def3: :: JORDAN4:def 3 ( 1 <= i1 & i1 + 1 <= len f & 1 <= i2 & i2 + 1 <= len f & g . (len g) = f . i2 & 1 <= len g & len g < len f & ( for i being Nat st 1 <= i & i <= len g holds g . i = f . (S_Drop ((((len f) + i1) -' i),f)) ) ); end; :: deftheorem Def3 defines is_a_part<_of JORDAN4:def_3_:_ for f being non constant standard special_circular_sequence for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT holds ( g is_a_part<_of f,i1,i2 iff ( 1 <= i1 & i1 + 1 <= len f & 1 <= i2 & i2 + 1 <= len f & g . (len g) = f . i2 & 1 <= len g & len g < len f & ( for i being Nat st 1 <= i & i <= len g holds g . i = f . (S_Drop ((((len f) + i1) -' i),f)) ) ) ); definition let f be non constant standard special_circular_sequence; let g be FinSequence of (TOP-REAL 2); let i1, i2 be Element of NAT ; predg is_a_part_of f,i1,i2 means :Def4: :: JORDAN4:def 4 ( g is_a_part>_of f,i1,i2 or g is_a_part<_of f,i1,i2 ); end; :: deftheorem Def4 defines is_a_part_of JORDAN4:def_4_:_ for f being non constant standard special_circular_sequence for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT holds ( g is_a_part_of f,i1,i2 iff ( g is_a_part>_of f,i1,i2 or g is_a_part<_of f,i1,i2 ) ); theorem :: JORDAN4:24 for f being non constant standard special_circular_sequence for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part_of f,i1,i2 holds ( 1 <= i1 & i1 + 1 <= len f & 1 <= i2 & i2 + 1 <= len f & g . (len g) = f . i2 & 1 <= len g & len g < len f & ( for i being Element of NAT st 1 <= i & i <= len g holds g . i = f . (S_Drop (((i1 + i) -' 1),f)) or for i being Element of NAT st 1 <= i & i <= len g holds g . i = f . (S_Drop ((((len f) + i1) -' i),f)) ) ) proof let f be non constant standard special_circular_sequence; ::_thesis: for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part_of f,i1,i2 holds ( 1 <= i1 & i1 + 1 <= len f & 1 <= i2 & i2 + 1 <= len f & g . (len g) = f . i2 & 1 <= len g & len g < len f & ( for i being Element of NAT st 1 <= i & i <= len g holds g . i = f . (S_Drop (((i1 + i) -' 1),f)) or for i being Element of NAT st 1 <= i & i <= len g holds g . i = f . (S_Drop ((((len f) + i1) -' i),f)) ) ) let g be FinSequence of (TOP-REAL 2); ::_thesis: for i1, i2 being Element of NAT st g is_a_part_of f,i1,i2 holds ( 1 <= i1 & i1 + 1 <= len f & 1 <= i2 & i2 + 1 <= len f & g . (len g) = f . i2 & 1 <= len g & len g < len f & ( for i being Element of NAT st 1 <= i & i <= len g holds g . i = f . (S_Drop (((i1 + i) -' 1),f)) or for i being Element of NAT st 1 <= i & i <= len g holds g . i = f . (S_Drop ((((len f) + i1) -' i),f)) ) ) let i1, i2 be Element of NAT ; ::_thesis: ( g is_a_part_of f,i1,i2 implies ( 1 <= i1 & i1 + 1 <= len f & 1 <= i2 & i2 + 1 <= len f & g . (len g) = f . i2 & 1 <= len g & len g < len f & ( for i being Element of NAT st 1 <= i & i <= len g holds g . i = f . (S_Drop (((i1 + i) -' 1),f)) or for i being Element of NAT st 1 <= i & i <= len g holds g . i = f . (S_Drop ((((len f) + i1) -' i),f)) ) ) ) assume A1: g is_a_part_of f,i1,i2 ; ::_thesis: ( 1 <= i1 & i1 + 1 <= len f & 1 <= i2 & i2 + 1 <= len f & g . (len g) = f . i2 & 1 <= len g & len g < len f & ( for i being Element of NAT st 1 <= i & i <= len g holds g . i = f . (S_Drop (((i1 + i) -' 1),f)) or for i being Element of NAT st 1 <= i & i <= len g holds g . i = f . (S_Drop ((((len f) + i1) -' i),f)) ) ) now__::_thesis:_(_(_g_is_a_part>_of_f,i1,i2_&_1_<=_i1_&_i1_+_1_<=_len_f_&_1_<=_i2_&_i2_+_1_<=_len_f_&_g_._(len_g)_=_f_._i2_&_1_<=_len_g_&_len_g_<_len_f_&_(_for_i_being_Element_of_NAT_st_1_<=_i_&_i_<=_len_g_holds_ g_._i_=_f_._(S_Drop_(((i1_+_i)_-'_1),f))_or_for_i_being_Element_of_NAT_st_1_<=_i_&_i_<=_len_g_holds_ g_._i_=_f_._(S_Drop_((((len_f)_+_i1)_-'_i),f))_)_)_or_(_g_is_a_part<_of_f,i1,i2_&_1_<=_i1_&_i1_+_1_<=_len_f_&_1_<=_i2_&_i2_+_1_<=_len_f_&_g_._(len_g)_=_f_._i2_&_1_<=_len_g_&_len_g_<_len_f_&_(_for_i_being_Element_of_NAT_st_1_<=_i_&_i_<=_len_g_holds_ g_._i_=_f_._(S_Drop_(((i1_+_i)_-'_1),f))_or_for_i_being_Element_of_NAT_st_1_<=_i_&_i_<=_len_g_holds_ g_._i_=_f_._(S_Drop_((((len_f)_+_i1)_-'_i),f))_)_)_) percases ( g is_a_part>_of f,i1,i2 or g is_a_part<_of f,i1,i2 ) by A1, Def4; case g is_a_part>_of f,i1,i2 ; ::_thesis: ( 1 <= i1 & i1 + 1 <= len f & 1 <= i2 & i2 + 1 <= len f & g . (len g) = f . i2 & 1 <= len g & len g < len f & ( for i being Element of NAT st 1 <= i & i <= len g holds g . i = f . (S_Drop (((i1 + i) -' 1),f)) or for i being Element of NAT st 1 <= i & i <= len g holds g . i = f . (S_Drop ((((len f) + i1) -' i),f)) ) ) hence ( 1 <= i1 & i1 + 1 <= len f & 1 <= i2 & i2 + 1 <= len f & g . (len g) = f . i2 & 1 <= len g & len g < len f & ( for i being Element of NAT st 1 <= i & i <= len g holds g . i = f . (S_Drop (((i1 + i) -' 1),f)) or for i being Element of NAT st 1 <= i & i <= len g holds g . i = f . (S_Drop ((((len f) + i1) -' i),f)) ) ) by Def2; ::_thesis: verum end; case g is_a_part<_of f,i1,i2 ; ::_thesis: ( 1 <= i1 & i1 + 1 <= len f & 1 <= i2 & i2 + 1 <= len f & g . (len g) = f . i2 & 1 <= len g & len g < len f & ( for i being Element of NAT st 1 <= i & i <= len g holds g . i = f . (S_Drop (((i1 + i) -' 1),f)) or for i being Element of NAT st 1 <= i & i <= len g holds g . i = f . (S_Drop ((((len f) + i1) -' i),f)) ) ) hence ( 1 <= i1 & i1 + 1 <= len f & 1 <= i2 & i2 + 1 <= len f & g . (len g) = f . i2 & 1 <= len g & len g < len f & ( for i being Element of NAT st 1 <= i & i <= len g holds g . i = f . (S_Drop (((i1 + i) -' 1),f)) or for i being Element of NAT st 1 <= i & i <= len g holds g . i = f . (S_Drop ((((len f) + i1) -' i),f)) ) ) by Def3; ::_thesis: verum end; end; end; hence ( 1 <= i1 & i1 + 1 <= len f & 1 <= i2 & i2 + 1 <= len f & g . (len g) = f . i2 & 1 <= len g & len g < len f & ( for i being Element of NAT st 1 <= i & i <= len g holds g . i = f . (S_Drop (((i1 + i) -' 1),f)) or for i being Element of NAT st 1 <= i & i <= len g holds g . i = f . (S_Drop ((((len f) + i1) -' i),f)) ) ) ; ::_thesis: verum end; theorem Th25: :: JORDAN4:25 for f being non constant standard special_circular_sequence for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part>_of f,i1,i2 & i1 <= i2 holds ( len g = (i2 -' i1) + 1 & g = mid (f,i1,i2) ) proof let f be non constant standard special_circular_sequence; ::_thesis: for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part>_of f,i1,i2 & i1 <= i2 holds ( len g = (i2 -' i1) + 1 & g = mid (f,i1,i2) ) let g be FinSequence of (TOP-REAL 2); ::_thesis: for i1, i2 being Element of NAT st g is_a_part>_of f,i1,i2 & i1 <= i2 holds ( len g = (i2 -' i1) + 1 & g = mid (f,i1,i2) ) let i1, i2 be Element of NAT ; ::_thesis: ( g is_a_part>_of f,i1,i2 & i1 <= i2 implies ( len g = (i2 -' i1) + 1 & g = mid (f,i1,i2) ) ) assume that A1: g is_a_part>_of f,i1,i2 and A2: i1 <= i2 ; ::_thesis: ( len g = (i2 -' i1) + 1 & g = mid (f,i1,i2) ) A3: 1 <= len g by A1, Def2; A4: 1 <= i1 by A1, Def2; A5: i1 + 1 <= len f by A1, Def2; then A6: (i1 + 1) - 1 <= (len f) - 1 by XREAL_1:9; then A7: 1 <= (len f) - 1 by A4, XXREAL_0:2; then A8: (len f) - 1 = (len f) -' 1 by NAT_D:39; A9: now__::_thesis:_(_(_((i1_+_(len_g))_-'_1)_mod_((len_f)_-'_1)_<>_0_&_S_Drop_(((i1_+_(len_g))_-'_1),f)_<_len_f_)_or_(_((i1_+_(len_g))_-'_1)_mod_((len_f)_-'_1)_=_0_&_S_Drop_(((i1_+_(len_g))_-'_1),f)_<_len_f_)_) percases ( ((i1 + (len g)) -' 1) mod ((len f) -' 1) <> 0 or ((i1 + (len g)) -' 1) mod ((len f) -' 1) = 0 ) ; caseA10: ((i1 + (len g)) -' 1) mod ((len f) -' 1) <> 0 ; ::_thesis: S_Drop (((i1 + (len g)) -' 1),f) < len f A11: i1 <= (len f) -' 1 by A5, NAT_D:49; then A12: ((i1 + (len g)) -' 1) mod ((len f) -' 1) < (len f) -' 1 by A4, NAT_D:1; 1 <= (len f) -' 1 by A4, A11, XXREAL_0:2; then A13: (len f) -' 1 < len f by NAT_D:51; S_Drop (((i1 + (len g)) -' 1),f) = ((i1 + (len g)) -' 1) mod ((len f) -' 1) by A10, Def1; hence S_Drop (((i1 + (len g)) -' 1),f) < len f by A12, A13, XXREAL_0:2; ::_thesis: verum end; caseA14: ((i1 + (len g)) -' 1) mod ((len f) -' 1) = 0 ; ::_thesis: S_Drop (((i1 + (len g)) -' 1),f) < len f i1 <= (len f) -' 1 by A5, NAT_D:49; then A15: 1 <= (len f) -' 1 by A4, XXREAL_0:2; S_Drop (((i1 + (len g)) -' 1),f) = (len f) -' 1 by A14, Def1; hence S_Drop (((i1 + (len g)) -' 1),f) < len f by A15, NAT_D:51; ::_thesis: verum end; end; end; g . (len g) = f . i2 by A1, Def2; then A16: f . i2 = f . (S_Drop (((i1 + (len g)) -' 1),f)) by A1, A3, Def2; A17: i2 + 1 <= len f by A1, Def2; A18: now__::_thesis:_(_(_((i1_+_(len_g))_-'_1)_mod_((len_f)_-'_1)_<>_0_&_1_<=_S_Drop_(((i1_+_(len_g))_-'_1),f)_)_or_(_((i1_+_(len_g))_-'_1)_mod_((len_f)_-'_1)_=_0_&_1_<=_S_Drop_(((i1_+_(len_g))_-'_1),f)_)_) percases ( ((i1 + (len g)) -' 1) mod ((len f) -' 1) <> 0 or ((i1 + (len g)) -' 1) mod ((len f) -' 1) = 0 ) ; case ((i1 + (len g)) -' 1) mod ((len f) -' 1) <> 0 ; ::_thesis: 1 <= S_Drop (((i1 + (len g)) -' 1),f) then 0 + 1 <= ((i1 + (len g)) -' 1) mod ((len f) -' 1) by NAT_1:13; hence 1 <= S_Drop (((i1 + (len g)) -' 1),f) by Def1; ::_thesis: verum end; caseA19: ((i1 + (len g)) -' 1) mod ((len f) -' 1) = 0 ; ::_thesis: 1 <= S_Drop (((i1 + (len g)) -' 1),f) A20: i1 <= (len f) -' 1 by A5, NAT_D:49; S_Drop (((i1 + (len g)) -' 1),f) = (len f) -' 1 by A19, Def1; hence 1 <= S_Drop (((i1 + (len g)) -' 1),f) by A4, A20, XXREAL_0:2; ::_thesis: verum end; end; end; i1 <= i1 + 1 by NAT_1:11; then A21: i1 <= len f by A5, XXREAL_0:2; A22: 0 <> (len f) -' 1 by A7, NAT_D:39; A23: len g < len f by A1, Def2; A24: 1 <= i2 by A1, Def2; i2 <= i2 + 1 by NAT_1:11; then A25: i2 <= len f by A17, XXREAL_0:2; A26: i2 <= (len f) -' 1 by A17, NAT_D:49; then 1 <= (len f) -' 1 by A24, XXREAL_0:2; then (len f) -' 1 < len f by NAT_D:51; then A27: i2 < len f by A26, XXREAL_0:2; now__::_thesis:_(_(_i2_<_S_Drop_(((i1_+_(len_g))_-'_1),f)_&_contradiction_)_or_(_i2_>_S_Drop_(((i1_+_(len_g))_-'_1),f)_&_contradiction_)_or_(_i2_=_S_Drop_(((i1_+_(len_g))_-'_1),f)_&_len_g_=_(i2_-'_i1)_+_1_&_g_=_mid_(f,i1,i2)_)_) percases ( i2 < S_Drop (((i1 + (len g)) -' 1),f) or i2 > S_Drop (((i1 + (len g)) -' 1),f) or i2 = S_Drop (((i1 + (len g)) -' 1),f) ) by XXREAL_0:1; caseA28: i2 < S_Drop (((i1 + (len g)) -' 1),f) ; ::_thesis: contradiction i2 <= len f by A17, NAT_D:46; then A29: f /. i2 = f . i2 by A24, FINSEQ_4:15; A30: 1 <= S_Drop (((i1 + (len g)) -' 1),f) by A24, A28, XXREAL_0:2; f /. i2 <> f /. (S_Drop (((i1 + (len g)) -' 1),f)) by A24, A9, A28, GOBOARD7:36; hence contradiction by A16, A9, A29, A30, FINSEQ_4:15; ::_thesis: verum end; caseA31: i2 > S_Drop (((i1 + (len g)) -' 1),f) ; ::_thesis: contradiction i2 <= len f by A17, NAT_D:46; then A32: f /. i2 = f . i2 by A24, FINSEQ_4:15; f /. i2 <> f /. (S_Drop (((i1 + (len g)) -' 1),f)) by A18, A27, A31, GOBOARD7:36; hence contradiction by A16, A18, A9, A32, FINSEQ_4:15; ::_thesis: verum end; caseA33: i2 = S_Drop (((i1 + (len g)) -' 1),f) ; ::_thesis: ( len g = (i2 -' i1) + 1 & g = mid (f,i1,i2) ) now__::_thesis:_(_(_((i1_+_(len_g))_-'_1)_mod_((len_f)_-'_1)_<>_0_&_len_g_=_(i2_-'_i1)_+_1_&_g_=_mid_(f,i1,i2)_)_or_(_((i1_+_(len_g))_-'_1)_mod_((len_f)_-'_1)_=_0_&_len_g_=_(i2_-'_i1)_+_1_&_g_=_mid_(f,i1,i2)_)_) percases ( ((i1 + (len g)) -' 1) mod ((len f) -' 1) <> 0 or ((i1 + (len g)) -' 1) mod ((len f) -' 1) = 0 ) ; caseA34: ((i1 + (len g)) -' 1) mod ((len f) -' 1) <> 0 ; ::_thesis: ( len g = (i2 -' i1) + 1 & g = mid (f,i1,i2) ) ex n being Nat st ( (i1 + (len g)) -' 1 = (((len f) -' 1) * n) + (((i1 + (len g)) -' 1) mod ((len f) -' 1)) & ((i1 + (len g)) -' 1) mod ((len f) -' 1) < (len f) -' 1 ) by A22, NAT_D:def_2; then consider n being Nat such that A35: (i1 + (len g)) -' 1 = (((len f) -' 1) * n) + (((i1 + (len g)) -' 1) mod ((len f) -' 1)) ; A36: (i1 + (len g)) -' 1 = (((len f) -' 1) * n) + i2 by A33, A34, A35, Def1; now__::_thesis:_(_(_n_=_0_&_len_g_=_(i2_-'_i1)_+_1_&_g_=_mid_(f,i1,i2)_)_or_(_n_<>_0_&_contradiction_)_) percases ( n = 0 or n <> 0 ) ; caseA37: n = 0 ; ::_thesis: ( len g = (i2 -' i1) + 1 & g = mid (f,i1,i2) ) A38: dom g = Seg (len g) by FINSEQ_1:def_3; A39: (i1 + (len g)) -' 1 = (i1 + (len g)) - 1 by A4, NAT_1:12, XREAL_1:233; A40: i2 = (i1 + (len g)) -' 1 by A33, A34, A35, A37, Def1; then A41: (i2 + 1) - i1 = len g by A39; A42: for j being Nat st j in dom g holds g . j = (mid (f,i1,i2)) . j proof let j be Nat; ::_thesis: ( j in dom g implies g . j = (mid (f,i1,i2)) . j ) A43: j in NAT by ORDINAL1:def_12; assume A44: j in dom g ; ::_thesis: g . j = (mid (f,i1,i2)) . j then A45: 1 <= j by A38, FINSEQ_1:1; then A46: (i1 + j) -' 1 = (i1 + j) - 1 by NAT_D:37; i1 + j >= 1 + 1 by A4, A45, XREAL_1:7; then A47: (i1 + j) -' 1 <> 0 by A46; A48: j <= len g by A38, A44, FINSEQ_1:1; then j + i1 <= ((i2 - i1) + 1) + i1 by A40, A39, XREAL_1:6; then A49: i1 + j <= len f by A17, XXREAL_0:2; A50: now__::_thesis:_(_(_i1_+_j_=_len_f_&_S_Drop_(((i1_+_j)_-'_1),f)_=_(i1_+_j)_-'_1_)_or_(_i1_+_j_<>_len_f_&_S_Drop_(((i1_+_j)_-'_1),f)_=_(i1_+_j)_-'_1_)_) percases ( i1 + j = len f or i1 + j <> len f ) ; caseA51: i1 + j = len f ; ::_thesis: S_Drop (((i1 + j) -' 1),f) = (i1 + j) -' 1 then ((i1 + j) -' 1) mod ((len f) -' 1) = 0 by NAT_D:25; hence S_Drop (((i1 + j) -' 1),f) = (i1 + j) -' 1 by A51, Def1; ::_thesis: verum end; case i1 + j <> len f ; ::_thesis: S_Drop (((i1 + j) -' 1),f) = (i1 + j) -' 1 then i1 + j < len f by A49, XXREAL_0:1; then (i1 + j) - 1 < (len f) - 1 by XREAL_1:9; then (i1 + j) -' 1 < (len f) -' 1 by A4, A8, NAT_D:37; then ((i1 + j) -' 1) mod ((len f) -' 1) = (i1 + j) -' 1 by NAT_D:24; hence S_Drop (((i1 + j) -' 1),f) = (i1 + j) -' 1 by A47, Def1; ::_thesis: verum end; end; end; g . j = f . (S_Drop (((i1 + j) -' 1),f)) by A1, A45, A48, Def2; hence g . j = (mid (f,i1,i2)) . j by A2, A4, A25, A41, A45, A48, A43, A50, FINSEQ_6:122; ::_thesis: verum end; A52: (i2 - i1) + 1 = len g by A40, A39; then len g = (i2 -' i1) + 1 by A2, XREAL_1:233; then len (mid (f,i1,i2)) = len g by A2, A4, A24, A21, A25, FINSEQ_6:118; hence ( len g = (i2 -' i1) + 1 & g = mid (f,i1,i2) ) by A2, A52, A42, FINSEQ_2:9, XREAL_1:233; ::_thesis: verum end; case n <> 0 ; ::_thesis: contradiction then 0 + 1 <= n by NAT_1:13; then A53: ((len f) -' 1) * n >= ((len f) -' 1) * 1 by XREAL_1:64; (len g) + 1 <= len f by A23, NAT_1:13; then ((len g) + 1) - 1 <= (len f) - 1 by XREAL_1:9; then len g <= (len f) -' 1 by XREAL_0:def_2; then (len g) + i1 <= ((len f) -' 1) + i2 by A2, XREAL_1:7; then i1 + (len g) < (((len f) -' 1) + i2) + 1 by NAT_1:13; then A54: (i1 + (len g)) - 1 < ((((len f) -' 1) + i2) + 1) - 1 by XREAL_1:14; i1 <= i1 + (len g) by NAT_1:11; then (i1 + (len g)) - 1 = (i1 + (len g)) -' 1 by A4, XREAL_1:233, XXREAL_0:2; then ((i1 + (len g)) -' 1) - i2 < (((len f) -' 1) + i2) - i2 by A54, XREAL_1:14; hence contradiction by A36, A53; ::_thesis: verum end; end; end; hence ( len g = (i2 -' i1) + 1 & g = mid (f,i1,i2) ) ; ::_thesis: verum end; caseA55: ((i1 + (len g)) -' 1) mod ((len f) -' 1) = 0 ; ::_thesis: ( len g = (i2 -' i1) + 1 & g = mid (f,i1,i2) ) ex n being Nat st ( (i1 + (len g)) -' 1 = (((len f) -' 1) * n) + (((i1 + (len g)) -' 1) mod ((len f) -' 1)) & ((i1 + (len g)) -' 1) mod ((len f) -' 1) < (len f) -' 1 ) by A22, NAT_D:def_2; then consider n being Nat such that A56: (i1 + (len g)) -' 1 = (((len f) -' 1) * n) + (((i1 + (len g)) -' 1) mod ((len f) -' 1)) ; A57: now__::_thesis:_not_n_>_1 assume n > 1 ; ::_thesis: contradiction then n >= 1 + 1 by NAT_1:13; then A58: (i1 + (len g)) -' 1 >= ((len f) -' 1) * (1 + 1) by A55, A56, NAT_1:4; (len g) - 1 < (len f) - 1 by A23, XREAL_1:9; then i1 + ((len g) - 1) < ((len f) -' 1) + ((len f) -' 1) by A6, A8, XREAL_1:8; then (i1 + (len g)) - 1 < ((len f) -' 1) + ((len f) -' 1) ; hence contradiction by A4, A58, NAT_1:12, XREAL_1:233; ::_thesis: verum end; now__::_thesis:_not_n_=_0 assume n = 0 ; ::_thesis: contradiction then A59: i1 + (len g) <= 1 by A55, A56, NAT_D:36; i1 + (len g) >= 1 + 1 by A4, A3, XREAL_1:7; hence contradiction by A59, XXREAL_0:2; ::_thesis: verum end; then n >= 0 + 1 by NAT_1:13; then A60: n = 1 by A57, XXREAL_0:1; (i1 + (len g)) -' 1 = i2 * n by A33, A55, A56, Def1; then A61: (i1 + (len g)) - 1 = i2 by A24, A60, NAT_D:39; A62: i2 - i1 = i2 -' i1 by A2, XREAL_1:233; then A63: len g = (i2 -' i1) + 1 by A61; A64: dom g = Seg (len g) by FINSEQ_1:def_3; A65: for j being Nat st j in dom g holds g . j = (mid (f,i1,i2)) . j proof let j be Nat; ::_thesis: ( j in dom g implies g . j = (mid (f,i1,i2)) . j ) A66: j in NAT by ORDINAL1:def_12; assume A67: j in dom g ; ::_thesis: g . j = (mid (f,i1,i2)) . j then A68: 1 <= j by A64, FINSEQ_1:1; then A69: (i1 + j) -' 1 = (i1 + j) - 1 by NAT_D:37; A70: j <= len g by A64, A67, FINSEQ_1:1; then j + i1 <= ((i2 - i1) + 1) + i1 by A61, XREAL_1:6; then A71: i1 + j <= len f by A17, XXREAL_0:2; i1 + j >= 1 + 1 by A4, A68, XREAL_1:7; then A72: (i1 + j) -' 1 <> 0 by A69; A73: now__::_thesis:_(_(_i1_+_j_=_len_f_&_S_Drop_(((i1_+_j)_-'_1),f)_=_(i1_+_j)_-'_1_)_or_(_i1_+_j_<>_len_f_&_S_Drop_(((i1_+_j)_-'_1),f)_=_(i1_+_j)_-'_1_)_) percases ( i1 + j = len f or i1 + j <> len f ) ; caseA74: i1 + j = len f ; ::_thesis: S_Drop (((i1 + j) -' 1),f) = (i1 + j) -' 1 then ((i1 + j) -' 1) mod ((len f) -' 1) = 0 by NAT_D:25; hence S_Drop (((i1 + j) -' 1),f) = (i1 + j) -' 1 by A74, Def1; ::_thesis: verum end; case i1 + j <> len f ; ::_thesis: S_Drop (((i1 + j) -' 1),f) = (i1 + j) -' 1 then i1 + j < len f by A71, XXREAL_0:1; then (i1 + j) - 1 < (len f) - 1 by XREAL_1:9; then A75: (i1 + j) -' 1 < (len f) -' 1 by A4, A8, NAT_D:37; then ((i1 + j) -' 1) mod ((len f) -' 1) <> 0 by A72, NAT_D:24; then S_Drop (((i1 + j) -' 1),f) = ((i1 + j) -' 1) mod ((len f) -' 1) by Def1; hence S_Drop (((i1 + j) -' 1),f) = (i1 + j) -' 1 by A75, NAT_D:24; ::_thesis: verum end; end; end; g . j = f . (S_Drop (((i1 + j) -' 1),f)) by A1, A68, A70, Def2; hence g . j = (mid (f,i1,i2)) . j by A2, A4, A25, A63, A68, A70, A66, A73, FINSEQ_6:122; ::_thesis: verum end; len (mid (f,i1,i2)) = len g by A2, A4, A24, A21, A25, A63, FINSEQ_6:118; hence ( len g = (i2 -' i1) + 1 & g = mid (f,i1,i2) ) by A61, A62, A65, FINSEQ_2:9; ::_thesis: verum end; end; end; hence ( len g = (i2 -' i1) + 1 & g = mid (f,i1,i2) ) ; ::_thesis: verum end; end; end; hence ( len g = (i2 -' i1) + 1 & g = mid (f,i1,i2) ) ; ::_thesis: verum end; theorem Th26: :: JORDAN4:26 for f being non constant standard special_circular_sequence for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part>_of f,i1,i2 & i1 > i2 holds ( len g = ((len f) + i2) -' i1 & g = (mid (f,i1,((len f) -' 1))) ^ (f | i2) & g = (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) ) proof let f be non constant standard special_circular_sequence; ::_thesis: for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part>_of f,i1,i2 & i1 > i2 holds ( len g = ((len f) + i2) -' i1 & g = (mid (f,i1,((len f) -' 1))) ^ (f | i2) & g = (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) ) let g be FinSequence of (TOP-REAL 2); ::_thesis: for i1, i2 being Element of NAT st g is_a_part>_of f,i1,i2 & i1 > i2 holds ( len g = ((len f) + i2) -' i1 & g = (mid (f,i1,((len f) -' 1))) ^ (f | i2) & g = (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) ) let i1, i2 be Element of NAT ; ::_thesis: ( g is_a_part>_of f,i1,i2 & i1 > i2 implies ( len g = ((len f) + i2) -' i1 & g = (mid (f,i1,((len f) -' 1))) ^ (f | i2) & g = (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) ) ) assume that A1: g is_a_part>_of f,i1,i2 and A2: i1 > i2 ; ::_thesis: ( len g = ((len f) + i2) -' i1 & g = (mid (f,i1,((len f) -' 1))) ^ (f | i2) & g = (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) ) A3: 1 <= len g by A1, Def2; g . (len g) = f . i2 by A1, Def2; then A4: f . i2 = f . (S_Drop (((i1 + (len g)) -' 1),f)) by A1, A3, Def2; A5: i2 <= i2 + 1 by NAT_1:11; A6: i1 <= i1 + 1 by NAT_1:12; A7: 1 <= i1 by A1, Def2; A8: i1 + 1 <= len f by A1, Def2; then A9: (i1 + 1) - 1 <= (len f) - 1 by XREAL_1:9; then A10: 1 <= (len f) - 1 by A7, XXREAL_0:2; then A11: (len f) - 1 = (len f) -' 1 by NAT_D:39; A12: now__::_thesis:_(_(_((i1_+_(len_g))_-'_1)_mod_((len_f)_-'_1)_<>_0_&_S_Drop_(((i1_+_(len_g))_-'_1),f)_<_len_f_)_or_(_((i1_+_(len_g))_-'_1)_mod_((len_f)_-'_1)_=_0_&_S_Drop_(((i1_+_(len_g))_-'_1),f)_<_len_f_)_) percases ( ((i1 + (len g)) -' 1) mod ((len f) -' 1) <> 0 or ((i1 + (len g)) -' 1) mod ((len f) -' 1) = 0 ) ; caseA13: ((i1 + (len g)) -' 1) mod ((len f) -' 1) <> 0 ; ::_thesis: S_Drop (((i1 + (len g)) -' 1),f) < len f A14: i1 <= (len f) -' 1 by A8, NAT_D:49; then A15: ((i1 + (len g)) -' 1) mod ((len f) -' 1) < (len f) -' 1 by A7, NAT_D:1; 1 <= (len f) -' 1 by A7, A14, XXREAL_0:2; then A16: (len f) -' 1 < len f by NAT_D:51; S_Drop (((i1 + (len g)) -' 1),f) = ((i1 + (len g)) -' 1) mod ((len f) -' 1) by A13, Def1; hence S_Drop (((i1 + (len g)) -' 1),f) < len f by A15, A16, XXREAL_0:2; ::_thesis: verum end; caseA17: ((i1 + (len g)) -' 1) mod ((len f) -' 1) = 0 ; ::_thesis: S_Drop (((i1 + (len g)) -' 1),f) < len f i1 <= (len f) -' 1 by A8, NAT_D:49; then A18: 1 <= (len f) -' 1 by A7, XXREAL_0:2; S_Drop (((i1 + (len g)) -' 1),f) = (len f) -' 1 by A17, Def1; hence S_Drop (((i1 + (len g)) -' 1),f) < len f by A18, NAT_D:51; ::_thesis: verum end; end; end; i1 <= (len f) -' 1 by A8, NAT_D:49; then 1 <= (len f) -' 1 by A7, XXREAL_0:2; then A19: (len f) -' 1 < len f by NAT_D:51; A20: now__::_thesis:_(_(_((i1_+_(len_g))_-'_1)_mod_((len_f)_-'_1)_<>_0_&_1_<=_S_Drop_(((i1_+_(len_g))_-'_1),f)_)_or_(_((i1_+_(len_g))_-'_1)_mod_((len_f)_-'_1)_=_0_&_1_<=_S_Drop_(((i1_+_(len_g))_-'_1),f)_)_) percases ( ((i1 + (len g)) -' 1) mod ((len f) -' 1) <> 0 or ((i1 + (len g)) -' 1) mod ((len f) -' 1) = 0 ) ; case ((i1 + (len g)) -' 1) mod ((len f) -' 1) <> 0 ; ::_thesis: 1 <= S_Drop (((i1 + (len g)) -' 1),f) then 0 + 1 <= ((i1 + (len g)) -' 1) mod ((len f) -' 1) by NAT_1:13; hence 1 <= S_Drop (((i1 + (len g)) -' 1),f) by Def1; ::_thesis: verum end; caseA21: ((i1 + (len g)) -' 1) mod ((len f) -' 1) = 0 ; ::_thesis: 1 <= S_Drop (((i1 + (len g)) -' 1),f) A22: i1 <= (len f) -' 1 by A8, NAT_D:49; S_Drop (((i1 + (len g)) -' 1),f) = (len f) -' 1 by A21, Def1; hence 1 <= S_Drop (((i1 + (len g)) -' 1),f) by A7, A22, XXREAL_0:2; ::_thesis: verum end; end; end; A23: 1 <= i2 by A1, Def2; A24: i2 + 1 <= len f by A1, Def2; then A25: i2 <= (len f) -' 1 by NAT_D:49; then A26: 1 <= (len f) -' 1 by A23, XXREAL_0:2; then (len f) -' 1 < len f by NAT_D:51; then A27: i2 < len f by A25, XXREAL_0:2; A28: len g < len f by A1, Def2; A29: 0 <> (len f) -' 1 by A10, NAT_D:39; now__::_thesis:_(_(_i2_<_S_Drop_(((i1_+_(len_g))_-'_1),f)_&_contradiction_)_or_(_i2_>_S_Drop_(((i1_+_(len_g))_-'_1),f)_&_contradiction_)_or_(_i2_=_S_Drop_(((i1_+_(len_g))_-'_1),f)_&_len_g_=_((len_f)_+_i2)_-'_i1_&_g_=_(mid_(f,i1,((len_f)_-'_1)))_^_(f_|_i2)_)_) percases ( i2 < S_Drop (((i1 + (len g)) -' 1),f) or i2 > S_Drop (((i1 + (len g)) -' 1),f) or i2 = S_Drop (((i1 + (len g)) -' 1),f) ) by XXREAL_0:1; caseA30: i2 < S_Drop (((i1 + (len g)) -' 1),f) ; ::_thesis: contradiction i2 <= len f by A24, NAT_D:46; then A31: f /. i2 = f . i2 by A23, FINSEQ_4:15; A32: 1 <= S_Drop (((i1 + (len g)) -' 1),f) by A23, A30, XXREAL_0:2; f /. i2 <> f /. (S_Drop (((i1 + (len g)) -' 1),f)) by A23, A12, A30, GOBOARD7:36; hence contradiction by A4, A12, A31, A32, FINSEQ_4:15; ::_thesis: verum end; caseA33: i2 > S_Drop (((i1 + (len g)) -' 1),f) ; ::_thesis: contradiction i2 <= len f by A24, NAT_D:46; then A34: f /. i2 = f . i2 by A23, FINSEQ_4:15; f /. i2 <> f /. (S_Drop (((i1 + (len g)) -' 1),f)) by A20, A27, A33, GOBOARD7:36; hence contradiction by A4, A20, A12, A34, FINSEQ_4:15; ::_thesis: verum end; caseA35: i2 = S_Drop (((i1 + (len g)) -' 1),f) ; ::_thesis: ( len g = ((len f) + i2) -' i1 & g = (mid (f,i1,((len f) -' 1))) ^ (f | i2) ) now__::_thesis:_(_(_((i1_+_(len_g))_-'_1)_mod_((len_f)_-'_1)_<>_0_&_len_g_=_((len_f)_+_i2)_-'_i1_&_g_=_(mid_(f,i1,((len_f)_-'_1)))_^_(f_|_i2)_)_or_(_((i1_+_(len_g))_-'_1)_mod_((len_f)_-'_1)_=_0_&_contradiction_)_) percases ( ((i1 + (len g)) -' 1) mod ((len f) -' 1) <> 0 or ((i1 + (len g)) -' 1) mod ((len f) -' 1) = 0 ) ; caseA36: ((i1 + (len g)) -' 1) mod ((len f) -' 1) <> 0 ; ::_thesis: ( len g = ((len f) + i2) -' i1 & g = (mid (f,i1,((len f) -' 1))) ^ (f | i2) ) ( ex n being Nat st ( (i1 + (len g)) -' 1 = (((len f) -' 1) * n) + (((i1 + (len g)) -' 1) mod ((len f) -' 1)) & ((i1 + (len g)) -' 1) mod ((len f) -' 1) < (len f) -' 1 ) or ( ((i1 + (len g)) -' 1) mod ((len f) -' 1) = 0 & (len f) -' 1 = 0 ) ) by NAT_D:def_2; then consider n being Nat such that A37: (i1 + (len g)) -' 1 = (((len f) -' 1) * n) + (((i1 + (len g)) -' 1) mod ((len f) -' 1)) by A10, NAT_D:39; A38: (i1 + (len g)) -' 1 = (((len f) -' 1) * n) + i2 by A35, A36, A37, Def1; now__::_thesis:_(_(_n_=_0_&_contradiction_)_or_(_n_<>_0_&_len_g_=_((len_f)_+_i2)_-'_i1_&_g_=_(mid_(f,i1,((len_f)_-'_1)))_^_(f_|_i2)_)_) percases ( n = 0 or n <> 0 ) ; case n = 0 ; ::_thesis: contradiction then i2 = (i1 + (len g)) -' 1 by A35, A36, A37, Def1; then i2 + 1 = ((i1 + (len g)) - 1) + 1 by A23, NAT_D:39 .= i1 + (len g) ; hence contradiction by A2, A3, XREAL_1:8; ::_thesis: verum end; case n <> 0 ; ::_thesis: ( len g = ((len f) + i2) -' i1 & g = (mid (f,i1,((len f) -' 1))) ^ (f | i2) ) then A39: 0 + 1 <= n by NAT_1:13; now__::_thesis:_(_(_1_=_n_&_len_g_=_((len_f)_+_i2)_-'_i1_&_g_=_(mid_(f,i1,((len_f)_-'_1)))_^_(f_|_i2)_)_or_(_1_<_n_&_contradiction_)_) percases ( 1 = n or 1 < n ) by A39, XXREAL_0:1; caseA40: 1 = n ; ::_thesis: ( len g = ((len f) + i2) -' i1 & g = (mid (f,i1,((len f) -' 1))) ^ (f | i2) ) (len f) -' 1 = (len f) - 1 by A26, NAT_D:39; then A41: (i1 + (len g)) - 1 = ((len f) - 1) + i2 by A7, A38, A40, NAT_D:37; then A42: len g = ((len f) + i2) - i1 ; A43: (len f) -' 1 <= len f by NAT_D:50; A44: dom g = Seg (len g) by FINSEQ_1:def_3; A45: i1 <= len f by A8, A6, XXREAL_0:2; A46: 1 <= (len f) -' 1 by A10, NAT_D:39; A47: i1 <= (len f) -' 1 by A9, A10, NAT_D:39; then A48: len (mid (f,i1,((len f) -' 1))) = (((len f) -' 1) -' i1) + 1 by A7, A45, A46, A43, FINSEQ_6:118; A49: (((len f) -' 1) -' i1) + 1 = (((len f) - 1) - i1) + 1 by A9, A11, XREAL_1:233 .= (len f) - i1 ; len ((mid (f,i1,((len f) -' 1))) ^ (f | i2)) = (len (mid (f,i1,((len f) -' 1)))) + (len (f | i2)) by FINSEQ_1:22; then len ((mid (f,i1,((len f) -' 1))) ^ (f | i2)) = ((len f) - i1) + i2 by A24, A5, A48, A49, FINSEQ_1:59, XXREAL_0:2 .= ((len f) + i2) - i1 .= ((len f) + i2) -' i1 by A8, A6, NAT_D:37, XXREAL_0:2 ; then A50: len ((mid (f,i1,((len f) -' 1))) ^ (f | i2)) = len g by A8, A6, A42, NAT_D:37, XXREAL_0:2; A51: ((len f) -' 1) -' i1 = ((len f) -' 1) - i1 by A9, A11, XREAL_1:233; for j being Nat st j in dom g holds g . j = ((mid (f,i1,((len f) -' 1))) ^ (f | i2)) . j proof let j be Nat; ::_thesis: ( j in dom g implies g . j = ((mid (f,i1,((len f) -' 1))) ^ (f | i2)) . j ) assume A52: j in dom g ; ::_thesis: g . j = ((mid (f,i1,((len f) -' 1))) ^ (f | i2)) . j then A53: 1 <= j by A44, FINSEQ_1:1; then A54: (i1 + j) -' 1 = (i1 + j) - 1 by NAT_D:37; i1 + j >= 1 + 1 by A7, A53, XREAL_1:7; then A55: (i1 + j) -' 1 <> 0 by A54; A56: j <= len g by A44, A52, FINSEQ_1:1; then A57: g . j = f . (S_Drop (((i1 + j) -' 1),f)) by A1, A53, Def2; A58: j in NAT by ORDINAL1:def_12; now__::_thesis:_(_(_j_<=_len_(mid_(f,i1,((len_f)_-'_1)))_&_g_._j_=_((mid_(f,i1,((len_f)_-'_1)))_^_(f_|_i2))_._j_)_or_(_j_>_len_(mid_(f,i1,((len_f)_-'_1)))_&_g_._j_=_((mid_(f,i1,((len_f)_-'_1)))_^_(f_|_i2))_._j_)_) percases ( j <= len (mid (f,i1,((len f) -' 1))) or j > len (mid (f,i1,((len f) -' 1))) ) ; caseA59: j <= len (mid (f,i1,((len f) -' 1))) ; ::_thesis: g . j = ((mid (f,i1,((len f) -' 1))) ^ (f | i2)) . j then A60: j + i1 <= ((((len f) -' 1) - i1) + 1) + i1 by A48, A51, XREAL_1:6; A61: now__::_thesis:_(_(_i1_+_j_=_len_f_&_S_Drop_(((i1_+_j)_-'_1),f)_=_(i1_+_j)_-'_1_)_or_(_i1_+_j_<>_len_f_&_S_Drop_(((i1_+_j)_-'_1),f)_=_(i1_+_j)_-'_1_)_) percases ( i1 + j = len f or i1 + j <> len f ) ; caseA62: i1 + j = len f ; ::_thesis: S_Drop (((i1 + j) -' 1),f) = (i1 + j) -' 1 then ((i1 + j) -' 1) mod ((len f) -' 1) = 0 by NAT_D:25; hence S_Drop (((i1 + j) -' 1),f) = (i1 + j) -' 1 by A62, Def1; ::_thesis: verum end; case i1 + j <> len f ; ::_thesis: S_Drop (((i1 + j) -' 1),f) = (i1 + j) -' 1 then i1 + j < len f by A11, A60, XXREAL_0:1; then (i1 + j) - 1 < (len f) - 1 by XREAL_1:9; then A63: (i1 + j) -' 1 < (len f) -' 1 by A7, A11, NAT_D:37; then ((i1 + j) -' 1) mod ((len f) -' 1) <> 0 by A55, NAT_D:24; then S_Drop (((i1 + j) -' 1),f) = ((i1 + j) -' 1) mod ((len f) -' 1) by Def1; hence S_Drop (((i1 + j) -' 1),f) = (i1 + j) -' 1 by A63, NAT_D:24; ::_thesis: verum end; end; end; A64: (len f) -' 1 <= len f by NAT_D:50; j in dom (mid (f,i1,((len f) -' 1))) by A53, A59, FINSEQ_3:25; then A65: ((mid (f,i1,((len f) -' 1))) ^ (f | i2)) . j = (mid (f,i1,((len f) -' 1))) . j by FINSEQ_1:def_7; A66: 1 <= j by A44, A52, FINSEQ_1:1; i1 <= (len f) -' 1 by A9, A10, NAT_D:39; hence g . j = ((mid (f,i1,((len f) -' 1))) ^ (f | i2)) . j by A7, A45, A46, A57, A58, A59, A65, A64, A66, A61, FINSEQ_6:118; ::_thesis: verum end; caseA67: j > len (mid (f,i1,((len f) -' 1))) ; ::_thesis: g . j = ((mid (f,i1,((len f) -' 1))) ^ (f | i2)) . j j <= ((len f) + i2) - i1 by A41, A44, A52, FINSEQ_1:1; then j + i1 <= (((len f) + i2) - i1) + i1 by XREAL_1:6; then A68: (j + i1) - (len f) <= ((len f) + i2) - (len f) by XREAL_1:9; j < len f by A28, A56, XXREAL_0:2; then A69: j <= (len f) - 1 by SPPOL_1:1; (i1 + 1) - 1 <= (len f) - 1 by A8, XREAL_1:9; then A70: i1 + j <= ((len f) -' 1) + ((len f) -' 1) by A11, A69, XREAL_1:7; A71: ((mid (f,i1,((len f) -' 1))) ^ (f | i2)) . j = (f | i2) . (j - (len (mid (f,i1,((len f) -' 1))))) by A50, A56, A67, FINSEQ_6:108; A72: (i1 + j) - 1 = (i1 + j) -' 1 by A7, NAT_D:37; (len (mid (f,i1,((len f) -' 1)))) + 1 <= j by A67, NAT_1:13; then ((len (mid (f,i1,((len f) -' 1)))) + 1) - (len (mid (f,i1,((len f) -' 1)))) <= j - (len (mid (f,i1,((len f) -' 1)))) by XREAL_1:9; then 1 + (len f) <= ((i1 + j) - (len f)) + (len f) by A48, A49, XREAL_1:6; then (1 + (len f)) - 1 <= (i1 + j) - 1 by XREAL_1:9; then A73: (len f) -' 1 < (i1 + j) -' 1 by A19, A72, XXREAL_0:2; j + i1 > ((len f) - i1) + i1 by A48, A49, A67, XREAL_1:6; then A74: (i1 + j) - (len f) > (len f) - (len f) by XREAL_1:9; then A75: (i1 + j) -' (len f) = (i1 + j) - (len f) by XREAL_0:def_2; j - (len (mid (f,i1,((len f) -' 1)))) = j - ((len f) - i1) by A7, A45, A46, A43, A47, A49, FINSEQ_6:118 .= (j + i1) - (len f) ; then A76: (f | i2) . (j - (len (mid (f,i1,((len f) -' 1))))) = f . ((i1 + j) -' (len f)) by A75, A68, FINSEQ_3:112; i1 + j < (i1 + j) + 1 by NAT_1:13; then (i1 + j) - 1 < ((i1 + j) + 1) - 1 by XREAL_1:9; then A77: (i1 + j) -' 1 < ((len f) -' 1) + ((len f) -' 1) by A72, A70, XXREAL_0:2; now__::_thesis:_(_(_((i1_+_j)_-'_1)_mod_((len_f)_-'_1)_=_0_&_contradiction_)_or_(_((i1_+_j)_-'_1)_mod_((len_f)_-'_1)_<>_0_&_g_._j_=_((mid_(f,i1,((len_f)_-'_1)))_^_(f_|_i2))_._j_)_) percases ( ((i1 + j) -' 1) mod ((len f) -' 1) = 0 or ((i1 + j) -' 1) mod ((len f) -' 1) <> 0 ) ; case ((i1 + j) -' 1) mod ((len f) -' 1) = 0 ; ::_thesis: contradiction hence contradiction by A73, A77, Th1; ::_thesis: verum end; caseA78: ((i1 + j) -' 1) mod ((len f) -' 1) <> 0 ; ::_thesis: g . j = ((mid (f,i1,((len f) -' 1))) ^ (f | i2)) . j ((i1 + j) -' (len f)) + ((len f) -' 1) = ((i1 + j) -' (len f)) + ((len f) - 1) by A10, NAT_D:39 .= ((i1 + j) - (len f)) + ((len f) - 1) by A74, XREAL_0:def_2 .= (i1 + j) - 1 .= (i1 + j) -' 1 by A53, NAT_D:37 ; then A79: ((i1 + j) -' 1) mod ((len f) -' 1) = (((i1 + j) -' (len f)) + (((len f) -' 1) mod ((len f) -' 1))) mod ((len f) -' 1) by NAT_D:23 .= (((i1 + j) -' (len f)) + 0) mod ((len f) -' 1) by NAT_D:25 .= ((i1 + j) -' (len f)) mod ((len f) -' 1) ; (i1 + j) - ((len f) -' 1) <= (((len f) -' 1) + ((len f) -' 1)) - ((len f) -' 1) by A70, XREAL_1:9; then (i1 + j) - ((len f) - 1) <= (len f) -' 1 by A10, NAT_D:39; then ((i1 + j) -' (len f)) + 1 <= (len f) -' 1 by A75; then A80: (i1 + j) -' (len f) < (len f) -' 1 by NAT_1:13; S_Drop (((i1 + j) -' 1),f) = ((i1 + j) -' 1) mod ((len f) -' 1) by A78, Def1; hence g . j = ((mid (f,i1,((len f) -' 1))) ^ (f | i2)) . j by A57, A71, A76, A79, A80, NAT_D:24; ::_thesis: verum end; end; end; hence g . j = ((mid (f,i1,((len f) -' 1))) ^ (f | i2)) . j ; ::_thesis: verum end; end; end; hence g . j = ((mid (f,i1,((len f) -' 1))) ^ (f | i2)) . j ; ::_thesis: verum end; hence ( len g = ((len f) + i2) -' i1 & g = (mid (f,i1,((len f) -' 1))) ^ (f | i2) ) by A8, A6, A42, A50, FINSEQ_2:9, NAT_D:37, XXREAL_0:2; ::_thesis: verum end; case 1 < n ; ::_thesis: contradiction then 1 + 1 <= n by NAT_1:13; then ((len f) -' 1) * n >= ((len f) -' 1) * (1 + 1) by XREAL_1:64; then A81: (i1 + (len g)) -' 1 >= (((len f) -' 1) * (1 + 1)) + i2 by A38, XREAL_1:6; A82: ((len f) -' 1) * (1 + 1) <= (((len f) -' 1) * (1 + 1)) + i2 by NAT_1:11; A83: (i1 + 1) - 1 <= (len f) - 1 by A8, XREAL_1:9; (len g) - 1 < (len f) -' 1 by A28, A11, XREAL_1:9; then A84: i1 + ((len g) - 1) < ((len f) -' 1) + ((len f) -' 1) by A11, A83, XREAL_1:8; (i1 + (len g)) - 1 = (i1 + (len g)) -' 1 by A7, NAT_D:37; hence contradiction by A81, A84, A82, XXREAL_0:2; ::_thesis: verum end; end; end; hence ( len g = ((len f) + i2) -' i1 & g = (mid (f,i1,((len f) -' 1))) ^ (f | i2) ) ; ::_thesis: verum end; end; end; hence ( len g = ((len f) + i2) -' i1 & g = (mid (f,i1,((len f) -' 1))) ^ (f | i2) ) ; ::_thesis: verum end; caseA85: ((i1 + (len g)) -' 1) mod ((len f) -' 1) = 0 ; ::_thesis: contradiction ex n being Nat st ( (i1 + (len g)) -' 1 = (((len f) -' 1) * n) + (((i1 + (len g)) -' 1) mod ((len f) -' 1)) & ((i1 + (len g)) -' 1) mod ((len f) -' 1) < (len f) -' 1 ) by A29, NAT_D:def_2; then consider n being Nat such that A86: (i1 + (len g)) -' 1 = (((len f) -' 1) * n) + (((i1 + (len g)) -' 1) mod ((len f) -' 1)) ; A87: now__::_thesis:_not_n_>_1 assume n > 1 ; ::_thesis: contradiction then n >= 1 + 1 by NAT_1:13; then A88: (i1 + (len g)) -' 1 >= ((len f) -' 1) * (1 + 1) by A85, A86, NAT_1:4; (len g) - 1 < (len f) - 1 by A28, XREAL_1:9; then i1 + ((len g) - 1) < ((len f) -' 1) + ((len f) -' 1) by A9, A11, XREAL_1:8; then (i1 + (len g)) - 1 < ((len f) -' 1) + ((len f) -' 1) ; hence contradiction by A7, A88, NAT_1:12, XREAL_1:233; ::_thesis: verum end; now__::_thesis:_not_n_=_0 assume n = 0 ; ::_thesis: contradiction then A89: i1 + (len g) <= 1 by A85, A86, NAT_D:36; i1 + (len g) >= 1 + 1 by A7, A3, XREAL_1:7; hence contradiction by A89, XXREAL_0:2; ::_thesis: verum end; then n >= 0 + 1 by NAT_1:13; then n = 1 by A87, XXREAL_0:1; then (i1 + (len g)) -' 1 = i2 by A35, A85, A86, Def1; then A90: (i1 + (len g)) - 1 = i2 by A23, NAT_D:39; i2 - i2 < i1 - i2 by A2, XREAL_1:9; then A91: - 0 > - (i1 - i2) by XREAL_1:24; 1 - 1 <= (len g) - 1 by A3, XREAL_1:9; hence contradiction by A90, A91; ::_thesis: verum end; end; end; hence ( len g = ((len f) + i2) -' i1 & g = (mid (f,i1,((len f) -' 1))) ^ (f | i2) ) ; ::_thesis: verum end; end; end; hence ( len g = ((len f) + i2) -' i1 & g = (mid (f,i1,((len f) -' 1))) ^ (f | i2) & g = (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) ) by A23, FINSEQ_6:116; ::_thesis: verum end; theorem Th27: :: JORDAN4:27 for f being non constant standard special_circular_sequence for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part<_of f,i1,i2 & i1 >= i2 holds ( len g = (i1 -' i2) + 1 & g = mid (f,i1,i2) ) proof let f be non constant standard special_circular_sequence; ::_thesis: for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part<_of f,i1,i2 & i1 >= i2 holds ( len g = (i1 -' i2) + 1 & g = mid (f,i1,i2) ) let g be FinSequence of (TOP-REAL 2); ::_thesis: for i1, i2 being Element of NAT st g is_a_part<_of f,i1,i2 & i1 >= i2 holds ( len g = (i1 -' i2) + 1 & g = mid (f,i1,i2) ) let i1, i2 be Element of NAT ; ::_thesis: ( g is_a_part<_of f,i1,i2 & i1 >= i2 implies ( len g = (i1 -' i2) + 1 & g = mid (f,i1,i2) ) ) assume that A1: g is_a_part<_of f,i1,i2 and A2: i1 >= i2 ; ::_thesis: ( len g = (i1 -' i2) + 1 & g = mid (f,i1,i2) ) A3: 1 <= len g by A1, Def3; g . (len g) = f . i2 by A1, Def3; then A4: f . i2 = f . (S_Drop ((((len f) + i1) -' (len g)),f)) by A1, A3, Def3; A5: i1 + 1 <= len f by A1, Def3; i1 <= i1 + 1 by NAT_1:11; then A6: i1 <= len f by A5, XXREAL_0:2; A7: 1 <= i2 by A1, Def3; A8: i2 + 1 <= len f by A1, Def3; then (i2 + 1) - 1 <= (len f) - 1 by XREAL_1:9; then A9: 1 <= (len f) - 1 by A7, XXREAL_0:2; then A10: (len f) - 1 = (len f) -' 1 by NAT_D:39; A11: now__::_thesis:_(_(_(((len_f)_+_i1)_-'_(len_g))_mod_((len_f)_-'_1)_<>_0_&_S_Drop_((((len_f)_+_i1)_-'_(len_g)),f)_<_len_f_)_or_(_(((len_f)_+_i1)_-'_(len_g))_mod_((len_f)_-'_1)_=_0_&_S_Drop_((((len_f)_+_i1)_-'_(len_g)),f)_<_len_f_)_) percases ( (((len f) + i1) -' (len g)) mod ((len f) -' 1) <> 0 or (((len f) + i1) -' (len g)) mod ((len f) -' 1) = 0 ) ; caseA12: (((len f) + i1) -' (len g)) mod ((len f) -' 1) <> 0 ; ::_thesis: S_Drop ((((len f) + i1) -' (len g)),f) < len f A13: i2 <= (len f) -' 1 by A8, NAT_D:49; then A14: (((len f) + i1) -' (len g)) mod ((len f) -' 1) < (len f) -' 1 by A7, NAT_D:1; 1 <= (len f) -' 1 by A7, A13, XXREAL_0:2; then A15: (len f) -' 1 < len f by NAT_D:51; S_Drop ((((len f) + i1) -' (len g)),f) = (((len f) + i1) -' (len g)) mod ((len f) -' 1) by A12, Def1; hence S_Drop ((((len f) + i1) -' (len g)),f) < len f by A14, A15, XXREAL_0:2; ::_thesis: verum end; caseA16: (((len f) + i1) -' (len g)) mod ((len f) -' 1) = 0 ; ::_thesis: S_Drop ((((len f) + i1) -' (len g)),f) < len f i2 <= (len f) -' 1 by A8, NAT_D:49; then A17: 1 <= (len f) -' 1 by A7, XXREAL_0:2; S_Drop ((((len f) + i1) -' (len g)),f) = (len f) -' 1 by A16, Def1; hence S_Drop ((((len f) + i1) -' (len g)),f) < len f by A17, NAT_D:51; ::_thesis: verum end; end; end; A18: i2 <= (len f) -' 1 by A8, NAT_D:49; then 1 <= (len f) -' 1 by A7, XXREAL_0:2; then (len f) -' 1 < len f by NAT_D:51; then A19: i2 < len f by A18, XXREAL_0:2; A20: 0 <> (len f) -' 1 by A9, NAT_D:39; A21: now__::_thesis:_(_(_(((len_f)_+_i1)_-'_(len_g))_mod_((len_f)_-'_1)_<>_0_&_1_<=_S_Drop_((((len_f)_+_i1)_-'_(len_g)),f)_)_or_(_(((len_f)_+_i1)_-'_(len_g))_mod_((len_f)_-'_1)_=_0_&_1_<=_S_Drop_((((len_f)_+_i1)_-'_(len_g)),f)_)_) percases ( (((len f) + i1) -' (len g)) mod ((len f) -' 1) <> 0 or (((len f) + i1) -' (len g)) mod ((len f) -' 1) = 0 ) ; case (((len f) + i1) -' (len g)) mod ((len f) -' 1) <> 0 ; ::_thesis: 1 <= S_Drop ((((len f) + i1) -' (len g)),f) then 0 + 1 <= (((len f) + i1) -' (len g)) mod ((len f) -' 1) by NAT_1:13; hence 1 <= S_Drop ((((len f) + i1) -' (len g)),f) by Def1; ::_thesis: verum end; caseA22: (((len f) + i1) -' (len g)) mod ((len f) -' 1) = 0 ; ::_thesis: 1 <= S_Drop ((((len f) + i1) -' (len g)),f) A23: i2 <= (len f) -' 1 by A8, NAT_D:49; S_Drop ((((len f) + i1) -' (len g)),f) = (len f) -' 1 by A22, Def1; hence 1 <= S_Drop ((((len f) + i1) -' (len g)),f) by A7, A23, XXREAL_0:2; ::_thesis: verum end; end; end; A24: len g < len f by A1, Def3; A25: 0 < (len f) -' 1 by A9, NAT_D:39; now__::_thesis:_(_(_i2_<_S_Drop_((((len_f)_+_i1)_-'_(len_g)),f)_&_contradiction_)_or_(_i2_>_S_Drop_((((len_f)_+_i1)_-'_(len_g)),f)_&_contradiction_)_or_(_i2_=_S_Drop_((((len_f)_+_i1)_-'_(len_g)),f)_&_len_g_=_(i1_-'_i2)_+_1_&_g_=_mid_(f,i1,i2)_)_) percases ( i2 < S_Drop ((((len f) + i1) -' (len g)),f) or i2 > S_Drop ((((len f) + i1) -' (len g)),f) or i2 = S_Drop ((((len f) + i1) -' (len g)),f) ) by XXREAL_0:1; caseA26: i2 < S_Drop ((((len f) + i1) -' (len g)),f) ; ::_thesis: contradiction i2 <= len f by A8, NAT_1:13; then A27: f /. i2 = f . i2 by A7, FINSEQ_4:15; A28: 1 <= S_Drop ((((len f) + i1) -' (len g)),f) by A7, A26, XXREAL_0:2; f /. i2 <> f /. (S_Drop ((((len f) + i1) -' (len g)),f)) by A7, A11, A26, GOBOARD7:36; hence contradiction by A4, A11, A27, A28, FINSEQ_4:15; ::_thesis: verum end; caseA29: i2 > S_Drop ((((len f) + i1) -' (len g)),f) ; ::_thesis: contradiction i2 <= len f by A8, NAT_1:13; then A30: f /. i2 = f . i2 by A7, FINSEQ_4:15; f /. i2 <> f /. (S_Drop ((((len f) + i1) -' (len g)),f)) by A21, A19, A29, GOBOARD7:36; hence contradiction by A4, A21, A11, A30, FINSEQ_4:15; ::_thesis: verum end; caseA31: i2 = S_Drop ((((len f) + i1) -' (len g)),f) ; ::_thesis: ( len g = (i1 -' i2) + 1 & g = mid (f,i1,i2) ) now__::_thesis:_(_(_(((len_f)_+_i1)_-'_(len_g))_mod_((len_f)_-'_1)_<>_0_&_len_g_=_(i1_-'_i2)_+_1_&_g_=_mid_(f,i1,i2)_)_or_(_(((len_f)_+_i1)_-'_(len_g))_mod_((len_f)_-'_1)_=_0_&_len_g_=_(i1_-'_i2)_+_1_&_g_=_mid_(f,i1,i2)_)_) percases ( (((len f) + i1) -' (len g)) mod ((len f) -' 1) <> 0 or (((len f) + i1) -' (len g)) mod ((len f) -' 1) = 0 ) ; caseA32: (((len f) + i1) -' (len g)) mod ((len f) -' 1) <> 0 ; ::_thesis: ( len g = (i1 -' i2) + 1 & g = mid (f,i1,i2) ) ex n being Nat st ( ((len f) + i1) -' (len g) = (((len f) -' 1) * n) + ((((len f) + i1) -' (len g)) mod ((len f) -' 1)) & (((len f) + i1) -' (len g)) mod ((len f) -' 1) < (len f) -' 1 ) by A20, NAT_D:def_2; then consider n being Nat such that A33: ((len f) + i1) -' (len g) = (((len f) -' 1) * n) + ((((len f) + i1) -' (len g)) mod ((len f) -' 1)) ; A34: ( n = 0 or n >= 0 + 1 ) by NAT_1:13; A35: ((len f) + i1) -' (len g) = (((len f) -' 1) * n) + i2 by A31, A32, A33, Def1; now__::_thesis:_(_(_n_=_0_&_contradiction_)_or_(_n_=_1_&_len_g_=_(i1_-'_i2)_+_1_&_g_=_mid_(f,i1,i2)_)_or_(_n_>_1_&_contradiction_)_) percases ( n = 0 or n = 1 or n > 1 ) by A34, XXREAL_0:1; case n = 0 ; ::_thesis: contradiction then i2 = ((len f) + i1) -' (len g) by A31, A32, A33, Def1; then i2 = ((len f) + i1) - (len g) by A24, NAT_D:37; then i2 + (len g) = i1 + (len f) ; hence contradiction by A2, A24, XREAL_1:8; ::_thesis: verum end; caseA36: n = 1 ; ::_thesis: ( len g = (i1 -' i2) + 1 & g = mid (f,i1,i2) ) A37: ((len f) + i1) -' (len g) = ((len f) + i1) - (len g) by A24, NAT_D:37; A38: ((len f) - 1) + i2 = ((len f) + i1) -' (len g) by A10, A31, A32, A33, A36, Def1; then A39: len g = (i1 - i2) + 1 by A37; then A40: len g = (i1 -' i2) + 1 by A2, XREAL_1:233; A41: dom g = Seg (len g) by FINSEQ_1:def_3; A42: for j being Nat st j in dom g holds g . j = (mid (f,i1,i2)) . j proof let j be Nat; ::_thesis: ( j in dom g implies g . j = (mid (f,i1,i2)) . j ) A43: j in NAT by ORDINAL1:def_12; assume A44: j in dom g ; ::_thesis: g . j = (mid (f,i1,i2)) . j then A45: 1 <= j by A41, FINSEQ_1:1; A46: j <= len g by A41, A44, FINSEQ_1:1; 1 - 1 <= i2 - 1 by A7, XREAL_1:9; then A47: i1 - 0 >= i1 - (i2 - 1) by XREAL_1:10; then A48: (i1 -' j) + 1 = (i1 - j) + 1 by A38, A37, A46, XREAL_1:233, XXREAL_0:2; A49: j <= i1 by A38, A37, A46, A47, XXREAL_0:2; A50: now__::_thesis:_(_(_((len_f)_+_i1)_-'_j_=_(len_f)_-'_1_&_contradiction_)_or_(_((len_f)_+_i1)_-'_j_<>_(len_f)_-'_1_&_S_Drop_((((len_f)_+_i1)_-'_j),f)_=_(i1_-'_j)_+_1_)_) percases ( ((len f) + i1) -' j = (len f) -' 1 or ((len f) + i1) -' j <> (len f) -' 1 ) ; case ((len f) + i1) -' j = (len f) -' 1 ; ::_thesis: contradiction then ((len f) + i1) - j = (len f) -' 1 by A24, A46, NAT_D:37, XXREAL_0:2 .= (len f) - 1 by A9, NAT_D:39 ; then i1 - j = - 1 ; hence contradiction by A49, XREAL_1:48; ::_thesis: verum end; case ((len f) + i1) -' j <> (len f) -' 1 ; ::_thesis: S_Drop ((((len f) + i1) -' j),f) = (i1 -' j) + 1 (i1 + 1) + 0 < (len f) + j by A5, A45, XREAL_1:8; then (i1 + 1) - j < ((len f) + j) - j by XREAL_1:9; then ((i1 + 1) - j) - 1 < (len f) - 1 by XREAL_1:9; then i1 - j < (len f) - 1 ; then i1 -' j < (len f) -' 1 by A10, A38, A37, A46, A47, XREAL_1:233, XXREAL_0:2; then A51: (i1 -' j) + 1 <= (len f) -' 1 by NAT_1:13; A52: ((len f) + i1) -' j = ((len f) + i1) - j by A24, A46, NAT_D:37, XXREAL_0:2; now__::_thesis:_(_(_(i1_-'_j)_+_1_=_(len_f)_-'_1_&_S_Drop_((((len_f)_+_i1)_-'_j),f)_=_(i1_-'_j)_+_1_)_or_(_(i1_-'_j)_+_1_<_(len_f)_-'_1_&_S_Drop_((((len_f)_+_i1)_-'_j),f)_=_(i1_-'_j)_+_1_)_) percases ( (i1 -' j) + 1 = (len f) -' 1 or (i1 -' j) + 1 < (len f) -' 1 ) by A51, XXREAL_0:1; caseA53: (i1 -' j) + 1 = (len f) -' 1 ; ::_thesis: S_Drop ((((len f) + i1) -' j),f) = (i1 -' j) + 1 ((len f) + i1) -' j = ((((len f) - 1) + 1) + i1) - j by A24, A46, NAT_D:37, XXREAL_0:2 .= ((len f) -' 1) + ((i1 - j) + 1) by A10 .= ((len f) -' 1) + ((len f) -' 1) by A38, A37, A46, A47, A53, XREAL_1:233, XXREAL_0:2 ; then (((len f) + i1) -' j) mod ((len f) -' 1) = 0 by Th3; hence S_Drop ((((len f) + i1) -' j),f) = (i1 -' j) + 1 by A53, Def1; ::_thesis: verum end; caseA54: (i1 -' j) + 1 < (len f) -' 1 ; ::_thesis: S_Drop ((((len f) + i1) -' j),f) = (i1 -' j) + 1 A55: len f = ((len f) - 1) + 1 .= ((len f) -' 1) + 1 by A9, NAT_D:39 ; ((((len f) -' 1) + 1) + i1) -' j = ((((len f) -' 1) + 1) + i1) - j by A38, A37, A46, A47, NAT_D:37, XXREAL_0:2 .= ((len f) -' 1) + (1 + (i1 - j)) .= ((len f) -' 1) + (1 + (i1 -' j)) by A38, A37, A46, A47, XREAL_1:233, XXREAL_0:2 ; then (((len f) + i1) -' j) mod ((len f) -' 1) = ((((len f) -' 1) mod ((len f) -' 1)) + (1 + (i1 -' j))) mod ((len f) -' 1) by A55, NAT_D:22 .= (0 + (1 + (i1 -' j))) mod ((len f) -' 1) by NAT_D:25 .= (i1 -' j) + 1 by A54, NAT_D:24 ; then A56: S_Drop ((((len f) + i1) -' j),f) = (((len f) + i1) -' j) mod ((len f) -' 1) by Def1; ((((len f) - 1) + 1) + i1) - j = ((len f) - 1) + ((i1 - j) + 1) ; then A57: ((len f) + i1) -' j = ((i1 -' j) + 1) + ((len f) -' 1) by A9, A48, A52, NAT_D:39; ((len f) -' 1) mod ((len f) -' 1) = 0 by NAT_D:25; then S_Drop ((((len f) + i1) -' j),f) = (((i1 -' j) + 1) + 0) mod ((len f) -' 1) by A56, A57, NAT_D:22 .= ((i1 -' j) + 1) mod ((len f) -' 1) ; hence S_Drop ((((len f) + i1) -' j),f) = (i1 -' j) + 1 by A54, NAT_D:24; ::_thesis: verum end; end; end; hence S_Drop ((((len f) + i1) -' j),f) = (i1 -' j) + 1 ; ::_thesis: verum end; end; end; g . j = f . (S_Drop ((((len f) + i1) -' j),f)) by A1, A45, A46, Def3; hence g . j = (mid (f,i1,i2)) . j by A2, A7, A6, A40, A45, A46, A43, A50, Th12; ::_thesis: verum end; len (mid (f,i1,i2)) = len g by A2, A7, A6, A40, Th9; hence ( len g = (i1 -' i2) + 1 & g = mid (f,i1,i2) ) by A2, A39, A42, FINSEQ_2:9, XREAL_1:233; ::_thesis: verum end; case n > 1 ; ::_thesis: contradiction then 1 + 1 <= n by NAT_1:13; then A58: (((len f) + i1) -' (len g)) - i2 >= ((len f) -' 1) * (1 + 1) by A35, XREAL_1:64; A59: (len f) - i2 <= (len f) - 1 by A7, XREAL_1:10; (i1 + 1) + 0 < (i1 + 1) + (len g) by A3, XREAL_1:8; then (i1 + 1) - (len g) < ((i1 + 1) + (len g)) - (len g) by XREAL_1:14; then ((i1 - (len g)) + 1) - i2 < (i1 + 1) - i2 by XREAL_1:14; then A60: ((len f) - 1) + (((i1 - (len g)) - i2) + 1) < ((len f) - 1) + ((i1 + 1) - i2) by XREAL_1:8; (i1 + 1) - i2 <= (len f) - i2 by A5, XREAL_1:9; then (i1 + 1) - i2 <= (len f) - 1 by A59, XXREAL_0:2; then ((len f) - 1) + ((i1 + 1) - i2) <= ((len f) - 1) + ((len f) - 1) by XREAL_1:7; then (((len f) + i1) - (len g)) - i2 < ((len f) - 1) + ((len f) - 1) by A60, XXREAL_0:2; hence contradiction by A24, A10, A58, NAT_D:37; ::_thesis: verum end; end; end; hence ( len g = (i1 -' i2) + 1 & g = mid (f,i1,i2) ) ; ::_thesis: verum end; caseA61: (((len f) + i1) -' (len g)) mod ((len f) -' 1) = 0 ; ::_thesis: ( len g = (i1 -' i2) + 1 & g = mid (f,i1,i2) ) ( ex n being Nat st ( ((len f) + i1) -' (len g) = (((len f) -' 1) * n) + ((((len f) + i1) -' (len g)) mod ((len f) -' 1)) & (((len f) + i1) -' (len g)) mod ((len f) -' 1) < (len f) -' 1 ) or ( (((len f) + i1) -' (len g)) mod ((len f) -' 1) = 0 & (len f) -' 1 = 0 ) ) by NAT_D:def_2; then consider n being Nat such that A62: ((len f) + i1) -' (len g) = (((len f) -' 1) * n) + ((((len f) + i1) -' (len g)) mod ((len f) -' 1)) by A9, NAT_D:39; A63: ((len f) + i1) -' (len g) = i2 * n by A31, A61, A62, Def1; now__::_thesis:_not_n_=_0 assume n = 0 ; ::_thesis: contradiction then A64: len g >= (len f) + i1 by A61, A62, NAT_D:36; len f <= (len f) + i1 by NAT_1:11; hence contradiction by A24, A64, XXREAL_0:2; ::_thesis: verum end; then A65: n >= 0 + 1 by NAT_1:13; A66: now__::_thesis:_(_(_n_>_1_&_len_g_=_(i1_-'_i2)_+_1_)_or_(_n_=_1_&_contradiction_)_) percases ( n > 1 or n = 1 ) by A65, XXREAL_0:1; caseA67: n > 1 ; ::_thesis: len g = (i1 -' i2) + 1 A68: ((len f) -' 1) + ((len f) -' 1) = ((len f) -' 1) * (1 + 1) ; (i1 + 1) + 1 <= (len f) + (len g) by A5, A3, XREAL_1:7; then (1 + (i1 + 1)) - (len g) <= ((len f) + (len g)) - (len g) by XREAL_1:9; then (1 + ((i1 + 1) - (len g))) - 1 <= (len f) - 1 by XREAL_1:9; then ((len f) - 1) + ((i1 + 1) - (len g)) <= ((len f) - 1) + ((len f) - 1) by XREAL_1:6; then ((len f) + i1) - (len g) <= ((len f) - 1) + ((len f) - 1) ; then A69: ((len f) + i1) -' (len g) <= ((len f) -' 1) + ((len f) -' 1) by A24, A10, NAT_D:37; A70: n >= 1 + 1 by A67, NAT_1:13; now__::_thesis:_(_(_n_>_1_+_1_&_contradiction_)_or_(_n_=_1_+_1_&_len_g_=_(i1_-'_i2)_+_1_)_) percases ( n > 1 + 1 or n = 1 + 1 ) by A70, XXREAL_0:1; case n > 1 + 1 ; ::_thesis: contradiction hence contradiction by A25, A61, A62, A69, A68, XREAL_1:68; ::_thesis: verum end; caseA71: n = 1 + 1 ; ::_thesis: len g = (i1 -' i2) + 1 then A72: (((len f) - 1) + (1 + i1)) - (len g) = ((len f) -' 1) + ((len f) -' 1) by A24, A61, A62, NAT_D:37; then 1 + ((len f) -' 1) <= ((1 + i1) - ((len f) -' 1)) + ((len f) -' 1) by A3, A10, XREAL_1:6; then 1 + ((len f) - 1) <= 1 + i1 by A9, NAT_D:39; then A73: len f = i1 + 1 by A5, XXREAL_0:1; then i2 = i1 by A61, A62, A63, A71, NAT_D:34; then i1 -' i2 = 0 by XREAL_1:232; hence len g = (i1 -' i2) + 1 by A10, A72, A73; ::_thesis: verum end; end; end; hence len g = (i1 -' i2) + 1 ; ::_thesis: verum end; caseA74: n = 1 ; ::_thesis: contradiction ((len f) + i1) -' (len g) = ((len f) + i1) - (len g) by A24, NAT_D:37; then (len f) + i1 = i2 + (len g) by A63, A74; hence contradiction by A2, A24, XREAL_1:8; ::_thesis: verum end; end; end; A75: dom g = Seg (len g) by FINSEQ_1:def_3; A76: for j being Nat st j in dom g holds g . j = (mid (f,i1,i2)) . j proof let j be Nat; ::_thesis: ( j in dom g implies g . j = (mid (f,i1,i2)) . j ) A77: j in NAT by ORDINAL1:def_12; assume A78: j in dom g ; ::_thesis: g . j = (mid (f,i1,i2)) . j then A79: 1 <= j by A75, FINSEQ_1:1; A80: j <= len g by A75, A78, FINSEQ_1:1; 1 - 1 <= i2 - 1 by A7, XREAL_1:9; then A81: i1 - 0 >= i1 - (i2 - 1) by XREAL_1:10; A82: (i1 -' i2) + 1 = (i1 - i2) + 1 by A2, XREAL_1:233 .= i1 - (i2 - 1) ; then A83: (i1 -' j) + 1 = (i1 - j) + 1 by A66, A80, A81, XREAL_1:233, XXREAL_0:2; A84: j <= i1 by A66, A80, A82, A81, XXREAL_0:2; A85: now__::_thesis:_(_(_((len_f)_+_i1)_-'_j_=_(len_f)_-'_1_&_contradiction_)_or_(_((len_f)_+_i1)_-'_j_<>_(len_f)_-'_1_&_S_Drop_((((len_f)_+_i1)_-'_j),f)_=_(i1_-'_j)_+_1_)_) percases ( ((len f) + i1) -' j = (len f) -' 1 or ((len f) + i1) -' j <> (len f) -' 1 ) ; case ((len f) + i1) -' j = (len f) -' 1 ; ::_thesis: contradiction then ((len f) + i1) - j = (len f) -' 1 by A66, A80, A82, A81, NAT_D:37, XXREAL_0:2 .= (len f) - 1 by A9, NAT_D:39 ; then i1 - j = - 1 ; hence contradiction by A84, XREAL_1:48; ::_thesis: verum end; case ((len f) + i1) -' j <> (len f) -' 1 ; ::_thesis: S_Drop ((((len f) + i1) -' j),f) = (i1 -' j) + 1 (i1 + 1) + 0 < (len f) + j by A5, A79, XREAL_1:8; then (i1 + 1) - j < ((len f) + j) - j by XREAL_1:9; then ((i1 + 1) - j) - 1 < (len f) - 1 by XREAL_1:9; then i1 - j < (len f) - 1 ; then i1 -' j < (len f) -' 1 by A10, A66, A80, A82, A81, XREAL_1:233, XXREAL_0:2; then A86: (i1 -' j) + 1 <= (len f) -' 1 by NAT_1:13; A87: ((len f) + i1) -' j = ((len f) + i1) - j by A66, A80, A82, A81, NAT_D:37, XXREAL_0:2; now__::_thesis:_(_(_(i1_-'_j)_+_1_=_(len_f)_-'_1_&_S_Drop_((((len_f)_+_i1)_-'_j),f)_=_(i1_-'_j)_+_1_)_or_(_(i1_-'_j)_+_1_<_(len_f)_-'_1_&_S_Drop_((((len_f)_+_i1)_-'_j),f)_=_(i1_-'_j)_+_1_)_) percases ( (i1 -' j) + 1 = (len f) -' 1 or (i1 -' j) + 1 < (len f) -' 1 ) by A86, XXREAL_0:1; caseA88: (i1 -' j) + 1 = (len f) -' 1 ; ::_thesis: S_Drop ((((len f) + i1) -' j),f) = (i1 -' j) + 1 ((len f) + i1) -' j = ((((len f) - 1) + 1) + i1) - j by A66, A80, A82, A81, NAT_D:37, XXREAL_0:2 .= ((len f) -' 1) + ((i1 - j) + 1) by A10 .= ((len f) -' 1) + ((len f) -' 1) by A66, A80, A82, A81, A88, XREAL_1:233, XXREAL_0:2 ; then (((len f) + i1) -' j) mod ((len f) -' 1) = 0 by Th3; hence S_Drop ((((len f) + i1) -' j),f) = (i1 -' j) + 1 by A88, Def1; ::_thesis: verum end; caseA89: (i1 -' j) + 1 < (len f) -' 1 ; ::_thesis: S_Drop ((((len f) + i1) -' j),f) = (i1 -' j) + 1 A90: len f = ((len f) - 1) + 1 .= ((len f) -' 1) + 1 by A9, NAT_D:39 ; ((((len f) -' 1) + 1) + i1) -' j = ((((len f) -' 1) + 1) + i1) - j by A66, A80, A82, A81, NAT_D:37, XXREAL_0:2 .= ((len f) -' 1) + (1 + (i1 - j)) .= ((len f) -' 1) + (1 + (i1 -' j)) by A66, A80, A82, A81, XREAL_1:233, XXREAL_0:2 ; then (((len f) + i1) -' j) mod ((len f) -' 1) = ((((len f) -' 1) mod ((len f) -' 1)) + (1 + (i1 -' j))) mod ((len f) -' 1) by A90, NAT_D:22 .= (0 + (1 + (i1 -' j))) mod ((len f) -' 1) by NAT_D:25 .= (i1 -' j) + 1 by A89, NAT_D:24 ; then A91: S_Drop ((((len f) + i1) -' j),f) = (((len f) + i1) -' j) mod ((len f) -' 1) by Def1; ((((len f) - 1) + 1) + i1) - j = ((len f) - 1) + ((i1 - j) + 1) ; then A92: ((len f) + i1) -' j = ((i1 -' j) + 1) + ((len f) -' 1) by A9, A83, A87, NAT_D:39; ((len f) -' 1) mod ((len f) -' 1) = 0 by NAT_D:25; then S_Drop ((((len f) + i1) -' j),f) = (((i1 -' j) + 1) + 0) mod ((len f) -' 1) by A91, A92, NAT_D:22 .= ((i1 -' j) + 1) mod ((len f) -' 1) ; hence S_Drop ((((len f) + i1) -' j),f) = (i1 -' j) + 1 by A89, NAT_D:24; ::_thesis: verum end; end; end; hence S_Drop ((((len f) + i1) -' j),f) = (i1 -' j) + 1 ; ::_thesis: verum end; end; end; g . j = f . (S_Drop ((((len f) + i1) -' j),f)) by A1, A79, A80, Def3; hence g . j = (mid (f,i1,i2)) . j by A2, A7, A6, A66, A79, A80, A77, A85, Th12; ::_thesis: verum end; len (mid (f,i1,i2)) = len g by A2, A7, A6, A66, Th9; hence ( len g = (i1 -' i2) + 1 & g = mid (f,i1,i2) ) by A66, A76, FINSEQ_2:9; ::_thesis: verum end; end; end; hence ( len g = (i1 -' i2) + 1 & g = mid (f,i1,i2) ) ; ::_thesis: verum end; end; end; hence ( len g = (i1 -' i2) + 1 & g = mid (f,i1,i2) ) ; ::_thesis: verum end; theorem Th28: :: JORDAN4:28 for f being non constant standard special_circular_sequence for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part<_of f,i1,i2 & i1 < i2 holds ( len g = ((len f) + i1) -' i2 & g = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) ) proof let f be non constant standard special_circular_sequence; ::_thesis: for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part<_of f,i1,i2 & i1 < i2 holds ( len g = ((len f) + i1) -' i2 & g = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) ) let g be FinSequence of (TOP-REAL 2); ::_thesis: for i1, i2 being Element of NAT st g is_a_part<_of f,i1,i2 & i1 < i2 holds ( len g = ((len f) + i1) -' i2 & g = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) ) let i1, i2 be Element of NAT ; ::_thesis: ( g is_a_part<_of f,i1,i2 & i1 < i2 implies ( len g = ((len f) + i1) -' i2 & g = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) ) ) assume that A1: g is_a_part<_of f,i1,i2 and A2: i1 < i2 ; ::_thesis: ( len g = ((len f) + i1) -' i2 & g = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) ) A3: 1 <= len g by A1, Def3; A4: 1 <= i1 by A1, Def3; g . (len g) = f . i2 by A1, Def3; then A5: f . i2 = f . (S_Drop ((((len f) + i1) -' (len g)),f)) by A1, A3, Def3; A6: i2 <= i2 + 1 by NAT_1:11; A7: i2 + 1 <= len f by A1, Def3; then A8: (i2 + 1) - 1 <= (len f) - 1 by XREAL_1:9; A9: i1 + 1 <= len f by A1, Def3; then (i1 + 1) - 1 <= (len f) - 1 by XREAL_1:9; then A10: 1 <= (len f) - 1 by A4, XXREAL_0:2; then A11: (len f) - 1 = (len f) -' 1 by NAT_D:39; A12: now__::_thesis:_(_(_(((len_f)_+_i1)_-'_(len_g))_mod_((len_f)_-'_1)_<>_0_&_S_Drop_((((len_f)_+_i1)_-'_(len_g)),f)_<_len_f_)_or_(_(((len_f)_+_i1)_-'_(len_g))_mod_((len_f)_-'_1)_=_0_&_S_Drop_((((len_f)_+_i1)_-'_(len_g)),f)_<_len_f_)_) percases ( (((len f) + i1) -' (len g)) mod ((len f) -' 1) <> 0 or (((len f) + i1) -' (len g)) mod ((len f) -' 1) = 0 ) ; caseA13: (((len f) + i1) -' (len g)) mod ((len f) -' 1) <> 0 ; ::_thesis: S_Drop ((((len f) + i1) -' (len g)),f) < len f A14: i1 <= (len f) -' 1 by A9, NAT_D:49; then A15: (((len f) + i1) -' (len g)) mod ((len f) -' 1) < (len f) -' 1 by A4, NAT_D:1; 1 <= (len f) -' 1 by A4, A14, XXREAL_0:2; then A16: (len f) -' 1 < len f by NAT_D:51; S_Drop ((((len f) + i1) -' (len g)),f) = (((len f) + i1) -' (len g)) mod ((len f) -' 1) by A13, Def1; hence S_Drop ((((len f) + i1) -' (len g)),f) < len f by A15, A16, XXREAL_0:2; ::_thesis: verum end; caseA17: (((len f) + i1) -' (len g)) mod ((len f) -' 1) = 0 ; ::_thesis: S_Drop ((((len f) + i1) -' (len g)),f) < len f i1 <= (len f) -' 1 by A9, NAT_D:49; then A18: 1 <= (len f) -' 1 by A4, XXREAL_0:2; S_Drop ((((len f) + i1) -' (len g)),f) = (len f) -' 1 by A17, Def1; hence S_Drop ((((len f) + i1) -' (len g)),f) < len f by A18, NAT_D:51; ::_thesis: verum end; end; end; A19: 1 <= i2 by A1, Def3; A20: now__::_thesis:_(_(_(((len_f)_+_i1)_-'_(len_g))_mod_((len_f)_-'_1)_<>_0_&_1_<=_S_Drop_((((len_f)_+_i1)_-'_(len_g)),f)_)_or_(_(((len_f)_+_i1)_-'_(len_g))_mod_((len_f)_-'_1)_=_0_&_1_<=_S_Drop_((((len_f)_+_i1)_-'_(len_g)),f)_)_) percases ( (((len f) + i1) -' (len g)) mod ((len f) -' 1) <> 0 or (((len f) + i1) -' (len g)) mod ((len f) -' 1) = 0 ) ; case (((len f) + i1) -' (len g)) mod ((len f) -' 1) <> 0 ; ::_thesis: 1 <= S_Drop ((((len f) + i1) -' (len g)),f) then 0 + 1 <= (((len f) + i1) -' (len g)) mod ((len f) -' 1) by NAT_1:13; hence 1 <= S_Drop ((((len f) + i1) -' (len g)),f) by Def1; ::_thesis: verum end; caseA21: (((len f) + i1) -' (len g)) mod ((len f) -' 1) = 0 ; ::_thesis: 1 <= S_Drop ((((len f) + i1) -' (len g)),f) A22: i1 <= (len f) -' 1 by A9, NAT_D:49; S_Drop ((((len f) + i1) -' (len g)),f) = (len f) -' 1 by A21, Def1; hence 1 <= S_Drop ((((len f) + i1) -' (len g)),f) by A4, A22, XXREAL_0:2; ::_thesis: verum end; end; end; i1 <= i1 + 1 by NAT_1:11; then A23: i1 <= len f by A9, XXREAL_0:2; i1 <= i1 + 1 by NAT_1:12; then A24: i1 <= len f by A9, XXREAL_0:2; A25: 0 <> (len f) -' 1 by A10, NAT_D:39; i1 <= (len f) -' 1 by A9, NAT_D:49; then 1 <= (len f) -' 1 by A4, XXREAL_0:2; then A26: (len f) -' 1 < len f by NAT_D:51; A27: len g < len f by A1, Def3; A28: i2 <= (len f) -' 1 by A7, NAT_D:49; then 1 <= (len f) -' 1 by A19, XXREAL_0:2; then (len f) -' 1 < len f by NAT_D:51; then A29: i2 < len f by A28, XXREAL_0:2; now__::_thesis:_(_(_i2_<_S_Drop_((((len_f)_+_i1)_-'_(len_g)),f)_&_contradiction_)_or_(_i2_>_S_Drop_((((len_f)_+_i1)_-'_(len_g)),f)_&_contradiction_)_or_(_i2_=_S_Drop_((((len_f)_+_i1)_-'_(len_g)),f)_&_len_g_=_((len_f)_+_i1)_-'_i2_&_g_=_(mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2))_)_) percases ( i2 < S_Drop ((((len f) + i1) -' (len g)),f) or i2 > S_Drop ((((len f) + i1) -' (len g)),f) or i2 = S_Drop ((((len f) + i1) -' (len g)),f) ) by XXREAL_0:1; caseA30: i2 < S_Drop ((((len f) + i1) -' (len g)),f) ; ::_thesis: contradiction i2 <= len f by A7, NAT_1:13; then A31: f /. i2 = f . i2 by A19, FINSEQ_4:15; A32: 1 <= S_Drop ((((len f) + i1) -' (len g)),f) by A19, A30, XXREAL_0:2; f /. i2 <> f /. (S_Drop ((((len f) + i1) -' (len g)),f)) by A19, A12, A30, GOBOARD7:36; hence contradiction by A5, A12, A31, A32, FINSEQ_4:15; ::_thesis: verum end; caseA33: i2 > S_Drop ((((len f) + i1) -' (len g)),f) ; ::_thesis: contradiction i2 <= len f by A7, NAT_1:13; then A34: f /. i2 = f . i2 by A19, FINSEQ_4:15; f /. i2 <> f /. (S_Drop ((((len f) + i1) -' (len g)),f)) by A20, A29, A33, GOBOARD7:36; hence contradiction by A5, A20, A12, A34, FINSEQ_4:15; ::_thesis: verum end; caseA35: i2 = S_Drop ((((len f) + i1) -' (len g)),f) ; ::_thesis: ( len g = ((len f) + i1) -' i2 & g = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) ) now__::_thesis:_(_(_(((len_f)_+_i1)_-'_(len_g))_mod_((len_f)_-'_1)_<>_0_&_len_g_=_((len_f)_+_i1)_-'_i2_&_g_=_(mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2))_)_or_(_(((len_f)_+_i1)_-'_(len_g))_mod_((len_f)_-'_1)_=_0_&_len_g_=_((len_f)_+_i1)_-'_i2_&_g_=_(mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2))_)_) percases ( (((len f) + i1) -' (len g)) mod ((len f) -' 1) <> 0 or (((len f) + i1) -' (len g)) mod ((len f) -' 1) = 0 ) ; caseA36: (((len f) + i1) -' (len g)) mod ((len f) -' 1) <> 0 ; ::_thesis: ( len g = ((len f) + i1) -' i2 & g = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) ) ex n being Nat st ( ((len f) + i1) -' (len g) = (((len f) -' 1) * n) + ((((len f) + i1) -' (len g)) mod ((len f) -' 1)) & (((len f) + i1) -' (len g)) mod ((len f) -' 1) < (len f) -' 1 ) by A25, NAT_D:def_2; then consider n being Nat such that A37: ((len f) + i1) -' (len g) = (((len f) -' 1) * n) + ((((len f) + i1) -' (len g)) mod ((len f) -' 1)) ; A38: ((len f) + i1) -' (len g) = (((len f) -' 1) * n) + i2 by A35, A36, A37, Def1; now__::_thesis:_(_(_n_=_0_&_len_g_=_((len_f)_+_i1)_-'_i2_&_g_=_(mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2))_)_or_(_n_<>_0_&_contradiction_)_) percases ( n = 0 or n <> 0 ) ; case n = 0 ; ::_thesis: ( len g = ((len f) + i1) -' i2 & g = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) ) then A39: i2 = ((len f) + i1) -' (len g) by A35, A36, A37, Def1 .= ((len f) + i1) - (len g) by A27, NAT_D:37 .= ((len f) - (len g)) + i1 ; then A40: len g = ((len f) + i1) - i2 ; A41: len (mid (f,i1,1)) = (i1 -' 1) + 1 by A4, A24, Th9 .= i1 by A4, XREAL_1:235 ; len (mid (f,((len f) -' 1),i2)) = (((len f) -' 1) -' i2) + 1 by A19, A11, A8, A26, Th9; then A42: len (mid (f,((len f) -' 1),i2)) = (((len f) -' 1) - i2) + 1 by A11, A8, XREAL_1:233; A43: dom g = Seg (len g) by FINSEQ_1:def_3; len ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) = (len (mid (f,i1,1))) + (len (mid (f,((len f) -' 1),i2))) by FINSEQ_1:22; then len ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) = (i1 + (len f)) - i2 by A11, A41, A42 .= ((len f) + i1) -' i2 by A7, A6, NAT_D:37, XXREAL_0:2 ; then A44: len ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) = len g by A7, A6, A40, NAT_D:37, XXREAL_0:2; for j being Nat st j in dom g holds g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j proof let j be Nat; ::_thesis: ( j in dom g implies g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j ) assume A45: j in dom g ; ::_thesis: g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j then A46: 1 <= j by A43, FINSEQ_1:1; A47: j <= len g by A43, A45, FINSEQ_1:1; then A48: g . j = f . (S_Drop ((((len f) + i1) -' j),f)) by A1, A46, Def3; A49: ((len f) + i1) -' j = ((len f) + i1) - j by A27, A47, NAT_D:37, XXREAL_0:2; A50: j in NAT by ORDINAL1:def_12; now__::_thesis:_(_(_j_<=_len_(mid_(f,i1,1))_&_g_._j_=_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._j_)_or_(_j_>_len_(mid_(f,i1,1))_&_g_._j_=_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._j_)_) percases ( j <= len (mid (f,i1,1)) or j > len (mid (f,i1,1)) ) ; caseA51: j <= len (mid (f,i1,1)) ; ::_thesis: g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j (len f) -' 1 <= len f by NAT_D:50; then ((len f) - 1) + j <= (len f) + i1 by A11, A41, A51, XREAL_1:7; then A52: (((len f) - 1) + j) - j <= ((len f) + i1) - j by XREAL_1:9; j in dom (mid (f,i1,1)) by A46, A51, FINSEQ_3:25; then A53: ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j = (mid (f,i1,1)) . j by FINSEQ_1:def_7; A54: len (mid (f,i1,1)) = (i1 -' 1) + 1 by A4, A23, Th9; now__::_thesis:_(_(_((len_f)_+_i1)_-'_j_=_(len_f)_-'_1_&_g_._j_=_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._j_)_or_(_((len_f)_+_i1)_-'_j_<>_(len_f)_-'_1_&_g_._j_=_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._j_)_) percases ( ((len f) + i1) -' j = (len f) -' 1 or ((len f) + i1) -' j <> (len f) -' 1 ) ; case ((len f) + i1) -' j = (len f) -' 1 ; ::_thesis: g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j then ((len f) + i1) - j = (len f) - 1 by A11, A41, A51, NAT_D:37; then i1 + 1 = j ; hence g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j by A41, A51, NAT_1:13; ::_thesis: verum end; caseA55: ((len f) + i1) -' j <> (len f) -' 1 ; ::_thesis: g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j A56: j - 1 >= 0 by A46, XREAL_1:48; then j - 1 = j -' 1 by XREAL_0:def_2; then A57: len f <= (len f) + (j - 1) by NAT_1:11; A58: ((len f) + i1) -' j > (len f) -' 1 by A11, A49, A52, A55, XXREAL_0:1; now__::_thesis:_(_(_i1_+_1_=_len_f_&_j_-_1_=_0_&_g_._j_=_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._j_)_or_(_(_i1_+_1_<>_len_f_or_j_-_1_<>_0_)_&_g_._j_=_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._j_)_) percases ( ( i1 + 1 = len f & j - 1 = 0 ) or i1 + 1 <> len f or j - 1 <> 0 ) ; caseA59: ( i1 + 1 = len f & j - 1 = 0 ) ; ::_thesis: g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j then ((len f) + i1) -' j = (((len f) - 1) + (len f)) - 1 by A4, NAT_D:37 .= ((len f) -' 1) + ((len f) -' 1) by A11 ; then (((len f) + i1) -' j) mod ((len f) -' 1) = 0 by Th3; then S_Drop ((((len f) + i1) -' j),f) = (j + i1) -' 1 by A59, Def1; then A60: S_Drop ((((len f) + i1) -' j),f) = (1 + i1) - 1 by A59, NAT_D:37 .= (i1 - j) + 1 by A59 ; A61: 1 <= (i1 -' j) + 1 by NAT_1:11; i1 <= i1 + (j -' 1) by NAT_1:11; then A62: i1 - (j -' 1) <= i1 by XREAL_1:20; A63: (i1 - j) + 1 = (i1 -' j) + 1 by A41, A51, XREAL_1:233; A64: j - 1 = j -' 1 by A46, XREAL_1:233; (mid (f,i1,1)) . j = (mid (f,1,i1)) . ((((i1 - 1) + 1) - j) + 1) by A4, A23, A46, A50, A51, A54, Th13 .= f . ((i1 -' j) + 1) by A23, A63, A61, A64, A62, FINSEQ_6:123 ; hence g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j by A41, A48, A51, A53, A60, XREAL_1:233; ::_thesis: verum end; caseA65: ( i1 + 1 <> len f or j - 1 <> 0 ) ; ::_thesis: g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j now__::_thesis:_(_(_i1_+_1_<>_len_f_&_i1_+_1_<_(len_f)_+_(j_-_1)_)_or_(_j_-_1_<>_0_&_i1_+_1_<_(len_f)_+_(j_-_1)_)_) percases ( i1 + 1 <> len f or j - 1 <> 0 ) by A65; case i1 + 1 <> len f ; ::_thesis: i1 + 1 < (len f) + (j - 1) then i1 + 1 < len f by A9, XXREAL_0:1; hence i1 + 1 < (len f) + (j - 1) by A57, XXREAL_0:2; ::_thesis: verum end; case j - 1 <> 0 ; ::_thesis: i1 + 1 < (len f) + (j - 1) then len f < (len f) + (j - 1) by A56, XREAL_1:29; hence i1 + 1 < (len f) + (j - 1) by A9, XXREAL_0:2; ::_thesis: verum end; end; end; then (i1 + 1) - j < (((len f) - 1) + j) - j by XREAL_1:9; then A66: ((len f) - 1) + ((i1 + 1) - j) < ((len f) - 1) + ((len f) - 1) by XREAL_1:8; then (((len f) + i1) -' j) mod ((len f) -' 1) <> 0 by A11, A49, A58, Th1; then A67: S_Drop ((((len f) + i1) -' j),f) = (((len f) + i1) -' j) mod ((len f) -' 1) by Def1 .= (((len f) + i1) - j) - ((len f) - 1) by A11, A49, A52, A66, Th2 .= (i1 - j) + 1 ; A68: 1 <= (i1 -' j) + 1 by NAT_1:11; i1 <= i1 + (j -' 1) by NAT_1:11; then A69: i1 - (j -' 1) <= i1 by XREAL_1:20; A70: (i1 - j) + 1 = (i1 -' j) + 1 by A41, A51, XREAL_1:233; A71: j - 1 = j -' 1 by A46, XREAL_1:233; (mid (f,i1,1)) . j = (mid (f,1,i1)) . ((((i1 - 1) + 1) - j) + 1) by A4, A23, A46, A50, A51, A54, Th13 .= f . ((i1 -' j) + 1) by A23, A70, A68, A71, A69, FINSEQ_6:123 ; hence g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j by A41, A48, A51, A53, A67, XREAL_1:233; ::_thesis: verum end; end; end; hence g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j ; ::_thesis: verum end; end; end; hence g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j ; ::_thesis: verum end; caseA72: j > len (mid (f,i1,1)) ; ::_thesis: g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j (i2 + 1) - 1 <= (len f) - 1 by A7, XREAL_1:9; then A73: i2 - i2 <= ((len f) - 1) - i2 by XREAL_1:9; A74: (len f) - i2 = (((len f) - 1) - i2) + 1 .= (((len f) -' 1) -' i2) + 1 by A11, A73, XREAL_0:def_2 ; A75: (len f) + 0 < (len f) + i1 by A4, XREAL_1:8; A76: ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j = (mid (f,((len f) -' 1),i2)) . (j - (len (mid (f,i1,1)))) by A44, A47, A72, FINSEQ_6:108; A77: j - i1 <= (((len f) + i1) - i2) - i1 by A39, A47, XREAL_1:9; i1 + 1 <= j by A41, A72, NAT_1:13; then A78: (i1 + 1) - i1 <= j - i1 by XREAL_1:9; then A79: j - i1 = j -' (len (mid (f,i1,1))) by A41, XREAL_0:def_2; i2 - i1 >= 0 by A2, XREAL_1:48; then (len f) + 0 <= (len f) + (i2 - i1) by XREAL_1:7; then A80: (len f) - (i2 - i1) <= ((len f) + (i2 - i1)) - (i2 - i1) by XREAL_1:9; A81: j <= ((len f) + i1) - i2 by A39, A43, A45, FINSEQ_1:1; then j <= len f by A80, XXREAL_0:2; then j < (len f) + i1 by A75, XXREAL_0:2; then j - j < ((len f) + i1) - j by XREAL_1:9; then A82: 0 < ((len f) + i1) -' j by A81, A80, NAT_D:37, XXREAL_0:2; (len f) - i2 <= (len f) - 1 by A19, XREAL_1:13; then j - i1 <= (len f) -' 1 by A11, A77, XXREAL_0:2; then j -' i1 <= (len f) -' 1 by A41, A72, XREAL_1:233; then (((len f) -' 1) -' (j -' i1)) + 1 = (((len f) -' 1) - (j -' i1)) + 1 by XREAL_1:233 .= (((len f) - 1) - (j - i1)) + 1 by A11, A41, A72, XREAL_1:233 .= ((len f) + i1) - j .= ((len f) + i1) -' j by A81, A80, NAT_D:37, XXREAL_0:2 ; then A83: ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j = f . (((len f) + i1) -' j) by A19, A11, A8, A26, A41, A76, A78, A77, A74, A79, Th12; A84: i1 + 1 <= j by A41, A72, NAT_1:13; A85: ((len f) + i1) - j = ((len f) + i1) -' j by A27, A47, NAT_D:37, XXREAL_0:2; i1 + 1 <= j by A41, A72, NAT_1:13; then (len f) + (i1 + 1) <= (len f) + j by XREAL_1:6; then (((len f) + i1) + 1) - 1 <= ((len f) + j) - 1 by XREAL_1:9; then ((len f) + i1) - j <= (((len f) + j) - 1) - j by XREAL_1:9; then A86: (len f) -' 1 >= ((len f) + i1) -' j by A11, A81, A80, NAT_D:37, XXREAL_0:2; now__::_thesis:_(_(_(((len_f)_+_i1)_-'_j)_mod_((len_f)_-'_1)_=_0_&_g_._j_=_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._j_)_or_(_(((len_f)_+_i1)_-'_j)_mod_((len_f)_-'_1)_<>_0_&_g_._j_=_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._j_)_) percases ( (((len f) + i1) -' j) mod ((len f) -' 1) = 0 or (((len f) + i1) -' j) mod ((len f) -' 1) <> 0 ) ; caseA87: (((len f) + i1) -' j) mod ((len f) -' 1) = 0 ; ::_thesis: g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j then ((len f) + i1) -' j = (len f) -' 1 by A82, A86, Th4; hence g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j by A48, A83, A87, Def1; ::_thesis: verum end; caseA88: (((len f) + i1) -' j) mod ((len f) -' 1) <> 0 ; ::_thesis: g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j (len f) + (i1 + 1) <= (len f) + j by A84, XREAL_1:7; then (((len f) + i1) + 1) - j <= ((len f) + j) - j by XREAL_1:9; then A89: ((((len f) + i1) + 1) - j) - 1 <= (len f) - 1 by XREAL_1:9; A90: S_Drop ((((len f) + i1) -' j),f) = (((len f) + i1) -' j) mod ((len f) -' 1) by A88, Def1; not ((len f) + i1) - j = (len f) -' 1 by A85, A88, NAT_D:25; then ((len f) + i1) -' j < (len f) -' 1 by A11, A85, A89, XXREAL_0:1; hence g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j by A48, A83, A90, NAT_D:24; ::_thesis: verum end; end; end; hence g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j ; ::_thesis: verum end; end; end; hence g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j ; ::_thesis: verum end; hence ( len g = ((len f) + i1) -' i2 & g = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) ) by A7, A6, A40, A44, FINSEQ_2:9, NAT_D:37, XXREAL_0:2; ::_thesis: verum end; case n <> 0 ; ::_thesis: contradiction then A91: 0 + 1 <= n by NAT_1:13; now__::_thesis:_(_(_1_=_n_&_contradiction_)_or_(_1_<_n_&_contradiction_)_) percases ( 1 = n or 1 < n ) by A91, XXREAL_0:1; caseA92: 1 = n ; ::_thesis: contradiction A93: ((len f) + i1) -' (len g) = ((len f) + i1) - (len g) by A27, NAT_D:37; (i1 + 1) + 0 < i2 + (len g) by A2, A3, XREAL_1:8; hence contradiction by A11, A38, A92, A93; ::_thesis: verum end; case 1 < n ; ::_thesis: contradiction then 1 + 1 <= n by NAT_1:13; then ((len f) -' 1) * n >= ((len f) -' 1) * (1 + 1) by XREAL_1:64; then A94: ((len f) + i1) -' (len g) >= (((len f) -' 1) * (1 + 1)) + i2 by A38, XREAL_1:6; A95: ((len f) -' 1) * (1 + 1) < (((len f) -' 1) * (1 + 1)) + i2 by A2, XREAL_1:29; (i1 + 1) - 1 <= (len f) - 1 by A9, XREAL_1:9; then 1 + i1 <= (len g) + ((len f) -' 1) by A3, A11, XREAL_1:7; then ((len f) - 1) + (1 + i1) <= ((len f) - 1) + ((len g) + ((len f) -' 1)) by XREAL_1:6; then A96: ((len f) + i1) - (len g) <= ((((len f) - 1) + (len g)) + ((len f) -' 1)) - (len g) by XREAL_1:9; ((len f) + i1) - (len g) = ((len f) + i1) -' (len g) by A27, NAT_D:37; hence contradiction by A11, A94, A96, A95, XXREAL_0:2; ::_thesis: verum end; end; end; hence contradiction ; ::_thesis: verum end; end; end; hence ( len g = ((len f) + i1) -' i2 & g = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) ) ; ::_thesis: verum end; caseA97: (((len f) + i1) -' (len g)) mod ((len f) -' 1) = 0 ; ::_thesis: ( len g = ((len f) + i1) -' i2 & g = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) ) ex n being Nat st ( ((len f) + i1) -' (len g) = (((len f) -' 1) * n) + ((((len f) + i1) -' (len g)) mod ((len f) -' 1)) & (((len f) + i1) -' (len g)) mod ((len f) -' 1) < (len f) -' 1 ) by A25, NAT_D:def_2; then consider n being Nat such that A98: ((len f) + i1) -' (len g) = (((len f) -' 1) * n) + ((((len f) + i1) -' (len g)) mod ((len f) -' 1)) ; A99: now__::_thesis:_not_n_>_1 assume n > 1 ; ::_thesis: contradiction then n >= 1 + 1 by NAT_1:13; then A100: ((len f) + i1) -' (len g) >= ((len f) -' 1) * (1 + 1) by A97, A98, NAT_1:4; now__::_thesis:_not_i1_+_1_<_len_f assume i1 + 1 < len f ; ::_thesis: contradiction then (i1 + 1) + 1 < (len f) + (len g) by A3, XREAL_1:8; then ((i1 + 1) + 1) - 1 < ((len f) + (len g)) - 1 by XREAL_1:9; then (i1 + 1) - (len g) < (((len f) + (len g)) - 1) - (len g) by XREAL_1:9; then ((len f) - 1) + ((i1 + 1) - (len g)) < ((len f) - 1) + ((len f) - 1) by XREAL_1:6; then ((len f) + i1) - (len g) < ((len f) - 1) + ((len f) - 1) ; hence contradiction by A27, A11, A100, NAT_D:37; ::_thesis: verum end; then i1 + 1 = len f by A9, XXREAL_0:1; then i2 + 1 > ((len f) - 1) + 1 by A2, XREAL_1:6; hence contradiction by A1, Def3; ::_thesis: verum end; now__::_thesis:_not_n_=_0 assume n = 0 ; ::_thesis: contradiction then A101: (len f) + i1 <= len g by A97, A98, NAT_D:36; len f <= (len f) + i1 by NAT_1:11; hence contradiction by A27, A101, XXREAL_0:2; ::_thesis: verum end; then n >= 0 + 1 by NAT_1:13; then A102: n = 1 by A99, XXREAL_0:1; ((len f) + i1) -' (len g) = i2 * n by A35, A97, A98, Def1; then A103: ((len f) + i1) - (len g) = i2 by A27, A102, NAT_D:37; then A104: ((len f) + i1) - i2 = len g ; A105: dom g = Seg (len g) by FINSEQ_1:def_3; A106: len (mid (f,i1,1)) = (i1 -' 1) + 1 by A4, A24, Th9 .= i1 by A4, XREAL_1:235 ; len (mid (f,((len f) -' 1),i2)) = (((len f) -' 1) -' i2) + 1 by A19, A11, A8, A26, Th9; then len (mid (f,((len f) -' 1),i2)) = (((len f) - 1) - i2) + 1 by A11, A8, XREAL_1:233; then len ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) = i1 + ((len f) - i2) by A106, FINSEQ_1:22 .= (i1 + (len f)) - i2 .= ((len f) + i1) -' i2 by A7, A6, NAT_D:37, XXREAL_0:2 ; then A107: len ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) = len g by A7, A6, A104, NAT_D:37, XXREAL_0:2; for j being Nat st j in dom g holds g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j proof let j be Nat; ::_thesis: ( j in dom g implies g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j ) assume A108: j in dom g ; ::_thesis: g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j then A109: 1 <= j by A105, FINSEQ_1:1; A110: j <= len g by A105, A108, FINSEQ_1:1; then A111: g . j = f . (S_Drop ((((len f) + i1) -' j),f)) by A1, A109, Def3; A112: ((len f) + i1) -' j = ((len f) + i1) - j by A27, A110, NAT_D:37, XXREAL_0:2; A113: j in NAT by ORDINAL1:def_12; now__::_thesis:_(_(_j_<=_len_(mid_(f,i1,1))_&_g_._j_=_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._j_)_or_(_j_>_len_(mid_(f,i1,1))_&_g_._j_=_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._j_)_) percases ( j <= len (mid (f,i1,1)) or j > len (mid (f,i1,1)) ) ; caseA114: j <= len (mid (f,i1,1)) ; ::_thesis: g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j (len f) -' 1 <= len f by NAT_D:50; then ((len f) - 1) + j <= (len f) + i1 by A11, A106, A114, XREAL_1:7; then A115: (((len f) - 1) + j) - j <= ((len f) + i1) - j by XREAL_1:9; j in dom (mid (f,i1,1)) by A109, A114, FINSEQ_3:25; then A116: ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j = (mid (f,i1,1)) . j by FINSEQ_1:def_7; A117: len (mid (f,i1,1)) = (i1 -' 1) + 1 by A4, A23, Th9; now__::_thesis:_(_(_((len_f)_+_i1)_-'_j_=_(len_f)_-'_1_&_g_._j_=_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._j_)_or_(_((len_f)_+_i1)_-'_j_<>_(len_f)_-'_1_&_g_._j_=_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._j_)_) percases ( ((len f) + i1) -' j = (len f) -' 1 or ((len f) + i1) -' j <> (len f) -' 1 ) ; case ((len f) + i1) -' j = (len f) -' 1 ; ::_thesis: g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j then ((len f) + i1) - j = (len f) - 1 by A11, A106, A114, NAT_D:37; then i1 + 1 = j ; hence g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j by A106, A114, NAT_1:13; ::_thesis: verum end; caseA118: ((len f) + i1) -' j <> (len f) -' 1 ; ::_thesis: g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j A119: j - 1 >= 0 by A109, XREAL_1:48; then j - 1 = j -' 1 by XREAL_0:def_2; then A120: len f <= (len f) + (j - 1) by NAT_1:11; A121: ((len f) + i1) -' j > (len f) -' 1 by A11, A112, A115, A118, XXREAL_0:1; now__::_thesis:_(_(_i1_+_1_=_len_f_&_j_-_1_=_0_&_g_._j_=_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._j_)_or_(_(_i1_+_1_<>_len_f_or_j_-_1_<>_0_)_&_g_._j_=_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._j_)_) percases ( ( i1 + 1 = len f & j - 1 = 0 ) or i1 + 1 <> len f or j - 1 <> 0 ) ; caseA122: ( i1 + 1 = len f & j - 1 = 0 ) ; ::_thesis: g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j then ((len f) + i1) -' j = (((len f) - 1) + (len f)) - 1 by A4, NAT_D:37 .= ((len f) -' 1) + ((len f) -' 1) by A11 ; then (((len f) + i1) -' j) mod ((len f) -' 1) = 0 by Th3; then S_Drop ((((len f) + i1) -' j),f) = (j + i1) -' 1 by A122, Def1; then S_Drop ((((len f) + i1) -' j),f) = (i1 + 1) - 1 by A122, NAT_D:37 .= (i1 - j) + 1 by A122 ; then A123: f . (S_Drop ((((len f) + i1) -' j),f)) = f . ((i1 -' j) + 1) by A106, A114, XREAL_1:233; A124: 1 <= (i1 -' j) + 1 by NAT_1:11; i1 <= i1 + (j -' 1) by NAT_1:11; then A125: i1 - (j -' 1) <= i1 by XREAL_1:20; A126: (i1 - j) + 1 = (i1 -' j) + 1 by A106, A114, XREAL_1:233; A127: j - 1 = j -' 1 by A109, XREAL_1:233; (mid (f,i1,1)) . j = (mid (f,1,i1)) . ((((i1 - 1) + 1) - j) + 1) by A4, A23, A109, A113, A114, A117, Th13 .= f . ((i1 -' j) + 1) by A23, A126, A124, A127, A125, FINSEQ_6:123 ; hence g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j by A1, A109, A110, A116, A123, Def3; ::_thesis: verum end; caseA128: ( i1 + 1 <> len f or j - 1 <> 0 ) ; ::_thesis: g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j now__::_thesis:_(_(_i1_+_1_<>_len_f_&_i1_+_1_<_(len_f)_+_(j_-_1)_)_or_(_j_-_1_<>_0_&_i1_+_1_<_(len_f)_+_(j_-_1)_)_) percases ( i1 + 1 <> len f or j - 1 <> 0 ) by A128; case i1 + 1 <> len f ; ::_thesis: i1 + 1 < (len f) + (j - 1) then i1 + 1 < len f by A9, XXREAL_0:1; hence i1 + 1 < (len f) + (j - 1) by A120, XXREAL_0:2; ::_thesis: verum end; case j - 1 <> 0 ; ::_thesis: i1 + 1 < (len f) + (j - 1) then len f < (len f) + (j - 1) by A119, XREAL_1:29; hence i1 + 1 < (len f) + (j - 1) by A9, XXREAL_0:2; ::_thesis: verum end; end; end; then (i1 + 1) - j < (((len f) - 1) + j) - j by XREAL_1:9; then A129: ((len f) - 1) + ((i1 + 1) - j) < ((len f) - 1) + ((len f) - 1) by XREAL_1:8; then (((len f) + i1) -' j) mod ((len f) -' 1) <> 0 by A11, A112, A121, Th1; then A130: S_Drop ((((len f) + i1) -' j),f) = (((len f) + i1) -' j) mod ((len f) -' 1) by Def1 .= ((len f) + (i1 - j)) - ((len f) - 1) by A11, A112, A115, A129, Th2 .= (i1 - j) + 1 ; A131: 1 <= (i1 -' j) + 1 by NAT_1:11; i1 <= i1 + (j -' 1) by NAT_1:11; then A132: i1 - (j -' 1) <= i1 by XREAL_1:20; A133: (i1 - j) + 1 = (i1 -' j) + 1 by A106, A114, XREAL_1:233; A134: j - 1 = j -' 1 by A109, XREAL_1:233; (mid (f,i1,1)) . j = (mid (f,1,i1)) . ((((i1 - 1) + 1) - j) + 1) by A4, A23, A109, A113, A114, A117, Th13 .= f . ((i1 -' j) + 1) by A23, A133, A131, A134, A132, FINSEQ_6:123 ; hence g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j by A106, A111, A114, A116, A130, XREAL_1:233; ::_thesis: verum end; end; end; hence g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j ; ::_thesis: verum end; end; end; hence g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j ; ::_thesis: verum end; caseA135: j > len (mid (f,i1,1)) ; ::_thesis: g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j (i2 + 1) - 1 <= (len f) - 1 by A7, XREAL_1:9; then A136: i2 - i2 <= ((len f) - 1) - i2 by XREAL_1:9; A137: (len f) - i2 = (((len f) - 1) - i2) + 1 .= (((len f) -' 1) -' i2) + 1 by A11, A136, XREAL_0:def_2 ; A138: (len f) + 0 < (len f) + i1 by A4, XREAL_1:8; A139: ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j = (mid (f,((len f) -' 1),i2)) . (j - (len (mid (f,i1,1)))) by A107, A110, A135, FINSEQ_6:108; A140: j - i1 <= (((len f) + i1) - i2) - i1 by A103, A110, XREAL_1:9; i1 + 1 <= j by A106, A135, NAT_1:13; then A141: (i1 + 1) - i1 <= j - i1 by XREAL_1:9; then A142: j - i1 = j -' (len (mid (f,i1,1))) by A106, XREAL_0:def_2; i2 - i1 >= 0 by A2, XREAL_1:48; then (len f) + 0 <= (len f) + (i2 - i1) by XREAL_1:7; then A143: (len f) - (i2 - i1) <= ((len f) + (i2 - i1)) - (i2 - i1) by XREAL_1:9; A144: j <= ((len f) + i1) - i2 by A103, A105, A108, FINSEQ_1:1; then j <= len f by A143, XXREAL_0:2; then j < (len f) + i1 by A138, XXREAL_0:2; then j - j < ((len f) + i1) - j by XREAL_1:9; then A145: 0 < ((len f) + i1) -' j by A144, A143, NAT_D:37, XXREAL_0:2; (len f) - i2 <= (len f) - 1 by A19, XREAL_1:13; then j - i1 <= (len f) -' 1 by A11, A140, XXREAL_0:2; then j -' i1 <= (len f) -' 1 by A106, A135, XREAL_1:233; then (((len f) -' 1) -' (j -' i1)) + 1 = (((len f) -' 1) - (j -' i1)) + 1 by XREAL_1:233 .= (((len f) - 1) - (j - i1)) + 1 by A11, A106, A135, XREAL_1:233 .= ((len f) + i1) - j .= ((len f) + i1) -' j by A144, A143, NAT_D:37, XXREAL_0:2 ; then A146: ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j = f . (((len f) + i1) -' j) by A19, A11, A8, A26, A106, A139, A141, A140, A137, A142, Th12; A147: i1 + 1 <= j by A106, A135, NAT_1:13; A148: ((len f) + i1) - j = ((len f) + i1) -' j by A27, A110, NAT_D:37, XXREAL_0:2; i1 + 1 <= j by A106, A135, NAT_1:13; then (len f) + (i1 + 1) <= (len f) + j by XREAL_1:6; then (((len f) + i1) + 1) - 1 <= ((len f) + j) - 1 by XREAL_1:9; then ((len f) + i1) - j <= (((len f) + j) - 1) - j by XREAL_1:9; then A149: (len f) -' 1 >= ((len f) + i1) -' j by A11, A144, A143, NAT_D:37, XXREAL_0:2; now__::_thesis:_(_(_(((len_f)_+_i1)_-'_j)_mod_((len_f)_-'_1)_=_0_&_g_._j_=_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._j_)_or_(_(((len_f)_+_i1)_-'_j)_mod_((len_f)_-'_1)_<>_0_&_g_._j_=_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._j_)_) percases ( (((len f) + i1) -' j) mod ((len f) -' 1) = 0 or (((len f) + i1) -' j) mod ((len f) -' 1) <> 0 ) ; caseA150: (((len f) + i1) -' j) mod ((len f) -' 1) = 0 ; ::_thesis: g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j then ((len f) + i1) -' j = (len f) -' 1 by A145, A149, Th4; hence g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j by A111, A146, A150, Def1; ::_thesis: verum end; caseA151: (((len f) + i1) -' j) mod ((len f) -' 1) <> 0 ; ::_thesis: g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j (len f) + (i1 + 1) <= (len f) + j by A147, XREAL_1:7; then (((len f) + i1) + 1) - j <= ((len f) + j) - j by XREAL_1:9; then A152: ((((len f) + i1) + 1) - j) - 1 <= (len f) - 1 by XREAL_1:9; A153: S_Drop ((((len f) + i1) -' j),f) = (((len f) + i1) -' j) mod ((len f) -' 1) by A151, Def1; not ((len f) + i1) - j = (len f) -' 1 by A148, A151, NAT_D:25; then ((len f) + i1) -' j < (len f) -' 1 by A11, A148, A152, XXREAL_0:1; hence g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j by A111, A146, A153, NAT_D:24; ::_thesis: verum end; end; end; hence g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j ; ::_thesis: verum end; end; end; hence g . j = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . j ; ::_thesis: verum end; hence ( len g = ((len f) + i1) -' i2 & g = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) ) by A7, A6, A104, A107, FINSEQ_2:9, NAT_D:37, XXREAL_0:2; ::_thesis: verum end; end; end; hence ( len g = ((len f) + i1) -' i2 & g = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) ) ; ::_thesis: verum end; end; end; hence ( len g = ((len f) + i1) -' i2 & g = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) ) ; ::_thesis: verum end; theorem Th29: :: JORDAN4:29 for f being non constant standard special_circular_sequence for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part>_of f,i1,i2 holds Rev g is_a_part<_of f,i2,i1 proof let f be non constant standard special_circular_sequence; ::_thesis: for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part>_of f,i1,i2 holds Rev g is_a_part<_of f,i2,i1 let g be FinSequence of (TOP-REAL 2); ::_thesis: for i1, i2 being Element of NAT st g is_a_part>_of f,i1,i2 holds Rev g is_a_part<_of f,i2,i1 let i1, i2 be Element of NAT ; ::_thesis: ( g is_a_part>_of f,i1,i2 implies Rev g is_a_part<_of f,i2,i1 ) A1: len g = len (Rev g) by FINSEQ_5:def_3; assume A2: g is_a_part>_of f,i1,i2 ; ::_thesis: Rev g is_a_part<_of f,i2,i1 then A3: 1 <= len g by Def2; A4: len g < len f by A2, Def2; A5: i1 + 1 <= len f by A2, Def2; then (i1 + 1) - 1 <= (len f) - 1 by XREAL_1:9; then A6: i1 <= (len f) -' 1 by A3, A4, XREAL_1:233, XXREAL_0:2; A7: i1 < len f by A5, NAT_1:13; A8: for i being Nat st 1 <= i & i <= len (Rev g) holds (Rev g) . i = f . (S_Drop ((((len f) + i2) -' i),f)) proof let i be Nat; ::_thesis: ( 1 <= i & i <= len (Rev g) implies (Rev g) . i = f . (S_Drop ((((len f) + i2) -' i),f)) ) assume that A9: 1 <= i and A10: i <= len (Rev g) ; ::_thesis: (Rev g) . i = f . (S_Drop ((((len f) + i2) -' i),f)) len g <= (len g) + (i -' 1) by NAT_1:11; then len g <= (len g) + (i - 1) by A9, XREAL_1:233; then (len g) - (i - 1) <= ((len g) + (i - 1)) - (i - 1) by XREAL_1:9; then ((len g) - i) + 1 <= len g ; then A11: ((len g) -' i) + 1 <= len g by A1, A10, XREAL_1:233; A12: 1 <= ((len g) -' i) + 1 by NAT_1:11; i in NAT by ORDINAL1:def_12; then A13: (Rev g) . i = g . (((len g) - i) + 1) by A1, A9, A10, FINSEQ_6:115 .= g . (((len g) -' i) + 1) by A1, A10, XREAL_1:233 .= f . (S_Drop (((i1 + (((len g) -' i) + 1)) -' 1),f)) by A2, A12, A11, Def2 ; now__::_thesis:_(_(_i1_<=_i2_&_(Rev_g)_._i_=_f_._(S_Drop_((((len_f)_+_i2)_-'_i),f))_)_or_(_i1_>_i2_&_(Rev_g)_._i_=_f_._(S_Drop_((((len_f)_+_i2)_-'_i),f))_)_) percases ( i1 <= i2 or i1 > i2 ) ; caseA14: i1 <= i2 ; ::_thesis: (Rev g) . i = f . (S_Drop ((((len f) + i2) -' i),f)) then ((len f) - 1) + (len g) = ((len f) - 1) + ((i2 -' i1) + 1) by A2, Th25; then ((len f) - 1) + (len g) = (len f) + (i2 -' i1) ; then ((len f) - 1) + (len g) = (len f) + (i2 - i1) by A14, XREAL_1:233; then ((len f) + i2) - i = (((len f) - 1) + (i1 + (len g))) - i ; then ((len f) + i2) -' i = ((len f) - 1) + (i1 + ((len g) - i)) by A4, A1, A10, NAT_D:37, XXREAL_0:2; then ((len f) + i2) -' i = ((len f) - 1) + (((i1 + ((len g) -' i)) + 1) - 1) by A1, A10, XREAL_1:233; then ((len f) + i2) -' i = ((len f) - 1) + ((i1 + (((len g) -' i) + 1)) -' 1) by NAT_D:37; then ((len f) + i2) -' i = ((i1 + (((len g) -' i) + 1)) -' 1) + ((len f) -' 1) by A3, A4, XREAL_1:233, XXREAL_0:2; hence (Rev g) . i = f . (S_Drop ((((len f) + i2) -' i),f)) by A13, Th23; ::_thesis: verum end; case i1 > i2 ; ::_thesis: (Rev g) . i = f . (S_Drop ((((len f) + i2) -' i),f)) then len g = ((len f) + i2) -' i1 by A2, Th26; then (len g) + i1 = (((len f) + i2) - i1) + i1 by A7, NAT_D:37; then ((len f) + i2) -' i = (i1 + (len g)) - i by A1, A10, NAT_D:37; then ((len f) + i2) -' i = i1 + ((len g) - i) ; then ((len f) + i2) -' i = ((i1 + ((len g) -' i)) + 1) - 1 by A1, A10, XREAL_1:233; hence (Rev g) . i = f . (S_Drop ((((len f) + i2) -' i),f)) by A13, NAT_D:37; ::_thesis: verum end; end; end; hence (Rev g) . i = f . (S_Drop ((((len f) + i2) -' i),f)) ; ::_thesis: verum end; A15: i2 + 1 <= len f by A2, Def2; A16: 1 <= i1 by A2, Def2; A17: (Rev g) . (len (Rev g)) = (Rev g) . (len g) by FINSEQ_5:def_3 .= g . (((len g) - (len g)) + 1) by A3, FINSEQ_6:115 .= f . (S_Drop (((i1 + 1) -' 1),f)) by A2, A3, Def2 .= f . (S_Drop (i1,f)) by NAT_D:34 ; A18: now__::_thesis:_(_(_i1_mod_((len_f)_-'_1)_<>_0_&_(Rev_g)_._(len_(Rev_g))_=_f_._i1_)_or_(_i1_mod_((len_f)_-'_1)_=_0_&_(Rev_g)_._(len_(Rev_g))_=_f_._i1_)_) percases ( i1 mod ((len f) -' 1) <> 0 or i1 mod ((len f) -' 1) = 0 ) ; caseA19: i1 mod ((len f) -' 1) <> 0 ; ::_thesis: (Rev g) . (len (Rev g)) = f . i1 then i1 <> (len f) -' 1 by NAT_D:25; then A20: i1 < (len f) -' 1 by A6, XXREAL_0:1; S_Drop (i1,f) = i1 mod ((len f) -' 1) by A19, Def1; hence (Rev g) . (len (Rev g)) = f . i1 by A17, A20, NAT_D:24; ::_thesis: verum end; caseA21: i1 mod ((len f) -' 1) = 0 ; ::_thesis: (Rev g) . (len (Rev g)) = f . i1 then S_Drop (i1,f) = (len f) -' 1 by Def1; hence (Rev g) . (len (Rev g)) = f . i1 by A16, A17, A6, A21, Th4; ::_thesis: verum end; end; end; 1 <= i2 by A2, Def2; hence Rev g is_a_part<_of f,i2,i1 by A16, A5, A15, A3, A4, A1, A18, A8, Def3; ::_thesis: verum end; theorem Th30: :: JORDAN4:30 for f being non constant standard special_circular_sequence for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part<_of f,i1,i2 holds Rev g is_a_part>_of f,i2,i1 proof let f be non constant standard special_circular_sequence; ::_thesis: for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part<_of f,i1,i2 holds Rev g is_a_part>_of f,i2,i1 let g be FinSequence of (TOP-REAL 2); ::_thesis: for i1, i2 being Element of NAT st g is_a_part<_of f,i1,i2 holds Rev g is_a_part>_of f,i2,i1 let i1, i2 be Element of NAT ; ::_thesis: ( g is_a_part<_of f,i1,i2 implies Rev g is_a_part>_of f,i2,i1 ) A1: len g = len (Rev g) by FINSEQ_5:def_3; assume A2: g is_a_part<_of f,i1,i2 ; ::_thesis: Rev g is_a_part>_of f,i2,i1 then A3: 1 <= len g by Def3; A4: 1 <= i2 by A2, Def3; A5: len g < len f by A2, Def3; A6: i2 + 1 <= len f by A2, Def3; then A7: i2 < len f by NAT_1:13; A8: for i being Nat st 1 <= i & i <= len (Rev g) holds (Rev g) . i = f . (S_Drop (((i2 + i) -' 1),f)) proof let i be Nat; ::_thesis: ( 1 <= i & i <= len (Rev g) implies (Rev g) . i = f . (S_Drop (((i2 + i) -' 1),f)) ) assume that A9: 1 <= i and A10: i <= len (Rev g) ; ::_thesis: (Rev g) . i = f . (S_Drop (((i2 + i) -' 1),f)) A11: 1 <= ((len g) -' i) + 1 by NAT_1:11; len g <= (len g) + (i -' 1) by NAT_1:11; then len g <= (len g) + (i - 1) by A9, XREAL_1:233; then (len g) - (i - 1) <= ((len g) + (i - 1)) - (i - 1) by XREAL_1:9; then ((len g) - i) + 1 <= len g ; then A12: ((len g) -' i) + 1 <= len g by A1, A10, XREAL_1:233; i in NAT by ORDINAL1:def_12; then A13: (Rev g) . i = g . (((len g) - i) + 1) by A1, A9, A10, FINSEQ_6:115 .= g . (((len g) -' i) + 1) by A1, A10, XREAL_1:233 .= f . (S_Drop ((((len f) + i1) -' (((len g) -' i) + 1)),f)) by A2, A11, A12, Def3 ; (len g) + 1 <= ((len g) + 1) + i by NAT_1:11; then ((len g) + 1) - i <= (((len g) + 1) + i) - i by XREAL_1:9; then ((len g) - i) + 1 <= (len g) + 1 ; then A14: ((len g) -' i) + 1 <= (len g) + 1 by A1, A10, XREAL_1:233; A15: (len g) + 1 <= len f by A5, NAT_1:13; now__::_thesis:_(_(_i1_<_i2_&_(Rev_g)_._i_=_f_._(S_Drop_(((i2_+_i)_-'_1),f))_)_or_(_i1_>=_i2_&_(Rev_g)_._i_=_f_._(S_Drop_(((i2_+_i)_-'_1),f))_)_) percases ( i1 < i2 or i1 >= i2 ) ; caseA16: i1 < i2 ; ::_thesis: (Rev g) . i = f . (S_Drop (((i2 + i) -' 1),f)) len f = ((len f) -' 1) + 1 by A3, A5, XREAL_1:235, XXREAL_0:2; then A17: ((- (len f)) + i2) + i = ((i2 + i) - 1) - ((len f) -' 1) ; len g = ((len f) + i1) -' i2 by A2, A16, Th28; then len g = ((len f) + i1) - i2 by A7, NAT_D:37; then i1 - ((len g) - i) = ((i2 + i) -' 1) - ((len f) -' 1) by A4, A17, NAT_D:37; then i1 - ((len g) -' i) = ((i2 + i) -' 1) - ((len f) -' 1) by A1, A10, XREAL_1:233; then ((((len f) -' 1) + 1) + i1) - (((len g) -' i) + 1) = (((len f) -' 1) + ((i2 + i) -' 1)) - ((len f) -' 1) ; then ((len f) + i1) - (((len g) -' i) + 1) = (((len f) -' 1) + ((i2 + i) -' 1)) - ((len f) -' 1) by A3, A5, XREAL_1:235, XXREAL_0:2; hence (Rev g) . i = f . (S_Drop (((i2 + i) -' 1),f)) by A13, A15, A14, NAT_D:37, XXREAL_0:2; ::_thesis: verum end; caseA18: i1 >= i2 ; ::_thesis: (Rev g) . i = f . (S_Drop (((i2 + i) -' 1),f)) then len g = (i1 -' i2) + 1 by A2, Th27; then len g = (i1 - i2) + 1 by A18, XREAL_1:233; then i1 - ((len g) - i) = (i2 + i) - 1 ; then i1 - ((len g) - i) = (i2 + i) -' 1 by A9, NAT_D:37; then i1 - ((len g) -' i) = (i2 + i) -' 1 by A1, A10, XREAL_1:233; then ((len f) - 1) + (i1 - ((len g) -' i)) = ((i2 + i) -' 1) + ((len f) -' 1) by A3, A5, XREAL_1:233, XXREAL_0:2; then ((len f) + i1) - (((len g) -' i) + 1) = ((i2 + i) -' 1) + ((len f) -' 1) ; then (Rev g) . i = f . (S_Drop ((((i2 + i) -' 1) + ((len f) -' 1)),f)) by A13, A15, A14, NAT_D:37, XXREAL_0:2 .= f . (S_Drop (((i2 + i) -' 1),f)) by Th23 ; hence (Rev g) . i = f . (S_Drop (((i2 + i) -' 1),f)) ; ::_thesis: verum end; end; end; hence (Rev g) . i = f . (S_Drop (((i2 + i) -' 1),f)) ; ::_thesis: verum end; A19: S_Drop ((((len f) -' 1) + i1),f) = S_Drop (i1,f) by Th23; A20: i1 + 1 <= len f by A2, Def3; then (i1 + 1) - 1 <= (len f) - 1 by XREAL_1:9; then A21: i1 <= (len f) -' 1 by A3, A5, XREAL_1:233, XXREAL_0:2; A22: 1 <= i1 by A2, Def3; A23: (Rev g) . (len (Rev g)) = (Rev g) . (len g) by FINSEQ_5:def_3 .= g . (((len g) - (len g)) + 1) by A3, FINSEQ_6:115 .= f . (S_Drop ((((len f) + i1) -' 1),f)) by A2, A3, Def3 .= f . (S_Drop ((((len f) -' 1) + i1),f)) by A3, A5, NAT_D:38, XXREAL_0:2 ; now__::_thesis:_(_(_i1_mod_((len_f)_-'_1)_<>_0_&_(Rev_g)_._(len_(Rev_g))_=_f_._i1_)_or_(_i1_mod_((len_f)_-'_1)_=_0_&_(Rev_g)_._(len_(Rev_g))_=_f_._i1_)_) percases ( i1 mod ((len f) -' 1) <> 0 or i1 mod ((len f) -' 1) = 0 ) ; caseA24: i1 mod ((len f) -' 1) <> 0 ; ::_thesis: (Rev g) . (len (Rev g)) = f . i1 then i1 <> (len f) -' 1 by NAT_D:25; then A25: i1 < (len f) -' 1 by A21, XXREAL_0:1; S_Drop (i1,f) = i1 mod ((len f) -' 1) by A24, Def1; hence (Rev g) . (len (Rev g)) = f . i1 by A23, A19, A25, NAT_D:24; ::_thesis: verum end; caseA26: i1 mod ((len f) -' 1) = 0 ; ::_thesis: (Rev g) . (len (Rev g)) = f . i1 then S_Drop (i1,f) = (len f) -' 1 by Def1; hence (Rev g) . (len (Rev g)) = f . i1 by A22, A23, A21, A19, A26, Th4; ::_thesis: verum end; end; end; hence Rev g is_a_part>_of f,i2,i1 by A22, A20, A4, A6, A3, A5, A1, A8, Def2; ::_thesis: verum end; theorem Th31: :: JORDAN4:31 for f being non constant standard special_circular_sequence for i1, i2 being Element of NAT st 1 <= i1 & i1 <= i2 & i2 < len f holds mid (f,i1,i2) is_a_part>_of f,i1,i2 proof let f be non constant standard special_circular_sequence; ::_thesis: for i1, i2 being Element of NAT st 1 <= i1 & i1 <= i2 & i2 < len f holds mid (f,i1,i2) is_a_part>_of f,i1,i2 let i1, i2 be Element of NAT ; ::_thesis: ( 1 <= i1 & i1 <= i2 & i2 < len f implies mid (f,i1,i2) is_a_part>_of f,i1,i2 ) assume that A1: 1 <= i1 and A2: i1 <= i2 and A3: i2 < len f ; ::_thesis: mid (f,i1,i2) is_a_part>_of f,i1,i2 A4: 1 <= i2 by A1, A2, XXREAL_0:2; A5: i1 < len f by A2, A3, XXREAL_0:2; then A6: len (mid (f,i1,i2)) = (i2 -' i1) + 1 by A1, A2, A3, A4, FINSEQ_6:118; then A7: 1 <= len (mid (f,i1,i2)) by NAT_1:11; A8: i2 + 1 <= len f by A3, NAT_1:13; A9: (i2 -' i1) + 1 = (i2 - i1) + 1 by A2, XREAL_1:233; A10: for i being Nat st 1 <= i & i <= len (mid (f,i1,i2)) holds (mid (f,i1,i2)) . i = f . (S_Drop (((i1 + i) -' 1),f)) proof let i be Nat; ::_thesis: ( 1 <= i & i <= len (mid (f,i1,i2)) implies (mid (f,i1,i2)) . i = f . (S_Drop (((i1 + i) -' 1),f)) ) assume that A11: 1 <= i and A12: i <= len (mid (f,i1,i2)) ; ::_thesis: (mid (f,i1,i2)) . i = f . (S_Drop (((i1 + i) -' 1),f)) i + i1 <= ((i2 - i1) + 1) + i1 by A6, A9, A12, XREAL_1:6; then i1 + i <= len f by A8, XXREAL_0:2; then (i1 + i) - 1 <= (len f) - 1 by XREAL_1:9; then (i1 + i) - 1 <= (len f) -' 1 by A3, A4, XREAL_1:233, XXREAL_0:2; then A13: (i1 + i) -' 1 <= (len f) -' 1 by A1, NAT_D:37; A14: i in NAT by ORDINAL1:def_12; 1 + 1 <= i1 + i by A1, A11, XREAL_1:7; then (1 + 1) - 1 <= (i1 + i) - 1 by XREAL_1:9; then 1 <= (i1 + i) -' 1 by A1, NAT_D:37; then S_Drop (((i1 + i) -' 1),f) = (i1 + i) -' 1 by A13, Th22; hence (mid (f,i1,i2)) . i = f . (S_Drop (((i1 + i) -' 1),f)) by A1, A2, A3, A4, A5, A11, A12, A14, FINSEQ_6:118; ::_thesis: verum end; A15: (mid (f,i1,i2)) . (len (mid (f,i1,i2))) = f . i2 by A1, A2, A3, Th10; A16: i1 + 1 <= len f by A5, NAT_1:13; i2 + 1 < (i2 + 1) + i1 by A1, XREAL_1:29; then (i2 + 1) - i1 < ((i2 + 1) + i1) - i1 by XREAL_1:9; then len (mid (f,i1,i2)) < len f by A8, A6, A9, XXREAL_0:2; hence mid (f,i1,i2) is_a_part>_of f,i1,i2 by A1, A4, A16, A8, A15, A7, A10, Def2; ::_thesis: verum end; theorem Th32: :: JORDAN4:32 for f being non constant standard special_circular_sequence for i1, i2 being Element of NAT st 1 <= i1 & i1 <= i2 & i2 < len f holds mid (f,i2,i1) is_a_part<_of f,i2,i1 proof let f be non constant standard special_circular_sequence; ::_thesis: for i1, i2 being Element of NAT st 1 <= i1 & i1 <= i2 & i2 < len f holds mid (f,i2,i1) is_a_part<_of f,i2,i1 let i1, i2 be Element of NAT ; ::_thesis: ( 1 <= i1 & i1 <= i2 & i2 < len f implies mid (f,i2,i1) is_a_part<_of f,i2,i1 ) assume that A1: 1 <= i1 and A2: i1 <= i2 and A3: i2 < len f ; ::_thesis: mid (f,i2,i1) is_a_part<_of f,i2,i1 Rev (mid (f,i1,i2)) is_a_part<_of f,i2,i1 by A1, A2, A3, Th29, Th31; hence mid (f,i2,i1) is_a_part<_of f,i2,i1 by Th18; ::_thesis: verum end; theorem Th33: :: JORDAN4:33 for f being non constant standard special_circular_sequence for i1, i2 being Element of NAT st 1 <= i2 & i1 > i2 & i1 < len f holds (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) is_a_part>_of f,i1,i2 proof let f be non constant standard special_circular_sequence; ::_thesis: for i1, i2 being Element of NAT st 1 <= i2 & i1 > i2 & i1 < len f holds (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) is_a_part>_of f,i1,i2 let i1, i2 be Element of NAT ; ::_thesis: ( 1 <= i2 & i1 > i2 & i1 < len f implies (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) is_a_part>_of f,i1,i2 ) assume that A1: 1 <= i2 and A2: i1 > i2 and A3: i1 < len f ; ::_thesis: (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) is_a_part>_of f,i1,i2 A4: len (mid (f,1,i2)) = len (f | i2) by A1, FINSEQ_6:116 .= i2 by A2, A3, FINSEQ_1:59, XXREAL_0:2 ; A5: 1 <= i1 by A1, A2, XXREAL_0:2; len f < (len f) + 1 by NAT_1:13; then (len f) - 1 < ((len f) + 1) - 1 by XREAL_1:9; then A6: (len f) -' 1 < len f by A3, A5, XREAL_1:233, XXREAL_0:2; A7: i1 + 1 <= len f by A3, NAT_1:13; then (i1 + 1) - 1 <= (len f) - 1 by XREAL_1:9; then A8: i1 <= (len f) -' 1 by A3, A5, XREAL_1:233, XXREAL_0:2; then A9: 1 <= (len f) -' 1 by A5, XXREAL_0:2; then len (mid (f,i1,((len f) -' 1))) = (((len f) -' 1) -' i1) + 1 by A3, A5, A8, A6, FINSEQ_6:118 .= (((len f) -' 1) - i1) + 1 by A8, XREAL_1:233 .= (((len f) - 1) - i1) + 1 by A3, A5, XREAL_1:233, XXREAL_0:2 .= (len f) - i1 ; then A10: len ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) = ((len f) - i1) + i2 by A4, FINSEQ_1:22 .= (len f) - (i1 - i2) ; A11: i2 < len f by A2, A3, XXREAL_0:2; then A12: i2 + 1 <= len f by NAT_1:13; then (i2 + 1) - 1 <= (len f) - 1 by XREAL_1:9; then A13: i2 <= (len f) -' 1 by A3, A5, XREAL_1:233, XXREAL_0:2; A14: for i being Nat st 1 <= i & i <= len ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) holds ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . i = f . (S_Drop (((i1 + i) -' 1),f)) proof let i be Nat; ::_thesis: ( 1 <= i & i <= len ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . i = f . (S_Drop (((i1 + i) -' 1),f)) ) assume that A15: 1 <= i and A16: i <= len ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) ; ::_thesis: ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . i = f . (S_Drop (((i1 + i) -' 1),f)) A17: (i1 + i) -' 1 = (i1 + i) - 1 by A15, NAT_D:37; A18: (len f) - i1 = (len f) -' i1 by A3, XREAL_1:233; A19: (((len f) -' 1) -' i1) + 1 = (((len f) -' 1) - i1) + 1 by A8, XREAL_1:233 .= (((len f) - 1) - i1) + 1 by A3, A5, XREAL_1:233, XXREAL_0:2 .= (len f) - i1 ; A20: len (mid (f,i1,((len f) -' 1))) = (((len f) -' 1) -' i1) + 1 by A3, A5, A8, A9, A6, FINSEQ_6:118; A21: i in NAT by ORDINAL1:def_12; now__::_thesis:_(_(_i_<=_len_(mid_(f,i1,((len_f)_-'_1)))_&_((mid_(f,i1,((len_f)_-'_1)))_^_(mid_(f,1,i2)))_._i_=_f_._(S_Drop_(((i1_+_i)_-'_1),f))_)_or_(_i_>_len_(mid_(f,i1,((len_f)_-'_1)))_&_((mid_(f,i1,((len_f)_-'_1)))_^_(mid_(f,1,i2)))_._i_=_f_._(S_Drop_(((i1_+_i)_-'_1),f))_)_) percases ( i <= len (mid (f,i1,((len f) -' 1))) or i > len (mid (f,i1,((len f) -' 1))) ) ; caseA22: i <= len (mid (f,i1,((len f) -' 1))) ; ::_thesis: ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . i = f . (S_Drop (((i1 + i) -' 1),f)) then i1 + i <= i1 + ((((len f) -' 1) -' i1) + 1) by A20, XREAL_1:6; then i1 + i <= ((((len f) -' 1) - i1) + 1) + i1 by A8, XREAL_1:233; then i1 + i <= ((len f) -' 1) + 1 ; then i1 + i <= len f by A3, A5, XREAL_1:235, XXREAL_0:2; then (i1 + i) -' 1 <= (len f) - 1 by A17, XREAL_1:9; then A23: (i1 + i) -' 1 <= (len f) -' 1 by A3, A5, XREAL_1:233, XXREAL_0:2; 0 <= i - 1 by A15, XREAL_1:48; then A24: 1 + 0 <= i1 + (i - 1) by A5, XREAL_1:7; i in dom (mid (f,i1,((len f) -' 1))) by A15, A22, FINSEQ_3:25; then A25: ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . i = (mid (f,i1,((len f) -' 1))) . i by FINSEQ_1:def_7; (mid (f,i1,((len f) -' 1))) . i = f . ((i1 + i) -' 1) by A3, A5, A8, A9, A6, A15, A21, A22, FINSEQ_6:118; hence ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . i = f . (S_Drop (((i1 + i) -' 1),f)) by A17, A25, A24, A23, Th22; ::_thesis: verum end; caseA26: i > len (mid (f,i1,((len f) -' 1))) ; ::_thesis: ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . i = f . (S_Drop (((i1 + i) -' 1),f)) then i >= ((len f) -' i1) + 1 by A20, A19, A18, NAT_1:13; then A27: i - ((len f) -' i1) >= (((len f) -' i1) + 1) - ((len f) -' i1) by XREAL_1:9; then A28: 1 <= i -' ((len f) -' i1) by NAT_D:39; A29: (len f) - i1 = (len f) -' i1 by A3, XREAL_1:233; i - ((len f) - i1) <= (((len f) - i1) + i2) - ((len f) - i1) by A10, A16, XREAL_1:9; then A30: i -' ((len f) -' i1) <= i2 by A29, A27, NAT_D:39; then A31: i -' ((len f) -' i1) <= (len f) -' 1 by A13, XXREAL_0:2; ((len f) -' 1) + (i -' ((len f) -' i1)) = ((len f) -' 1) + (i - ((len f) -' i1)) by A20, A19, A18, A26, XREAL_1:233 .= (((len f) -' 1) + i) - ((len f) -' i1) .= (((len f) - 1) + i) - ((len f) -' i1) by A3, A5, XREAL_1:233, XXREAL_0:2 .= (((len f) - 1) + i) - ((len f) - i1) by A3, XREAL_1:233 .= (i + i1) - 1 .= (i1 + i) -' 1 by A15, NAT_D:37 ; then A32: S_Drop (((i1 + i) -' 1),f) = S_Drop ((i -' ((len f) -' i1)),f) by Th23 .= i -' ((len f) -' i1) by A28, A31, Th22 ; ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . i = (mid (f,1,i2)) . (i - (len (mid (f,i1,((len f) -' 1))))) by A16, A26, FINSEQ_6:108 .= (mid (f,1,i2)) . (i -' ((len f) -' i1)) by A20, A19, A18, A26, XREAL_1:233 .= f . (i -' ((len f) -' i1)) by A11, A28, A30, FINSEQ_6:123 ; hence ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . i = f . (S_Drop (((i1 + i) -' 1),f)) by A32; ::_thesis: verum end; end; end; hence ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . i = f . (S_Drop (((i1 + i) -' 1),f)) ; ::_thesis: verum end; i1 - i2 > 0 by A2, XREAL_1:50; then len f < (len f) + (i1 - i2) by XREAL_1:29; then A33: (len f) - (i1 - i2) < ((len f) + (i1 - i2)) - (i1 - i2) by XREAL_1:9; A34: len ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) = (len (mid (f,i1,((len f) -' 1)))) + (len (mid (f,1,i2))) by FINSEQ_1:22; then len (mid (f,1,i2)) <= len ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) by NAT_1:11; then A35: 1 <= len ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) by A1, A4, XXREAL_0:2; len (mid (f,i1,((len f) -' 1))) < (len (mid (f,i1,((len f) -' 1)))) + (len (mid (f,1,i2))) by A1, A4, XREAL_1:29; then ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . (len ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)))) = (mid (f,1,i2)) . (((len (mid (f,i1,((len f) -' 1)))) + (len (mid (f,1,i2)))) - (len (mid (f,i1,((len f) -' 1))))) by A34, FINSEQ_6:108 .= f . i2 by A1, A11, Th10 ; hence (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) is_a_part>_of f,i1,i2 by A1, A5, A12, A7, A35, A10, A33, A14, Def2; ::_thesis: verum end; theorem Th34: :: JORDAN4:34 for f being non constant standard special_circular_sequence for i1, i2 being Element of NAT st 1 <= i1 & i1 < i2 & i2 < len f holds (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) is_a_part<_of f,i1,i2 proof let f be non constant standard special_circular_sequence; ::_thesis: for i1, i2 being Element of NAT st 1 <= i1 & i1 < i2 & i2 < len f holds (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) is_a_part<_of f,i1,i2 let i1, i2 be Element of NAT ; ::_thesis: ( 1 <= i1 & i1 < i2 & i2 < len f implies (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) is_a_part<_of f,i1,i2 ) assume that A1: 1 <= i1 and A2: i1 < i2 and A3: i2 < len f ; ::_thesis: (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) is_a_part<_of f,i1,i2 Rev ((mid (f,i2,((len f) -' 1))) ^ (mid (f,1,i1))) = (Rev (mid (f,1,i1))) ^ (Rev (mid (f,i2,((len f) -' 1)))) by FINSEQ_5:64 .= (mid (f,i1,1)) ^ (Rev (mid (f,i2,((len f) -' 1)))) by Th18 .= (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) by Th18 ; hence (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) is_a_part<_of f,i1,i2 by A1, A2, A3, Th29, Th33; ::_thesis: verum end; theorem Th35: :: JORDAN4:35 for h being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st 1 <= i1 & i1 <= len h & 1 <= i2 & i2 <= len h holds L~ (mid (h,i1,i2)) c= L~ h proof let h be FinSequence of (TOP-REAL 2); ::_thesis: for i1, i2 being Element of NAT st 1 <= i1 & i1 <= len h & 1 <= i2 & i2 <= len h holds L~ (mid (h,i1,i2)) c= L~ h let i1, i2 be Element of NAT ; ::_thesis: ( 1 <= i1 & i1 <= len h & 1 <= i2 & i2 <= len h implies L~ (mid (h,i1,i2)) c= L~ h ) assume that A1: 1 <= i1 and A2: i1 <= len h and A3: 1 <= i2 and A4: i2 <= len h ; ::_thesis: L~ (mid (h,i1,i2)) c= L~ h thus L~ (mid (h,i1,i2)) c= L~ h ::_thesis: verum proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in L~ (mid (h,i1,i2)) or x in L~ h ) assume A5: x in L~ (mid (h,i1,i2)) ; ::_thesis: x in L~ h now__::_thesis:_(_(_i1_<=_i2_&_x_in_L~_h_)_or_(_i1_>_i2_&_x_in_L~_h_)_) percases ( i1 <= i2 or i1 > i2 ) ; caseA6: i1 <= i2 ; ::_thesis: x in L~ h x in union { (LSeg ((mid (h,i1,i2)),i)) where i is Element of NAT : ( 1 <= i & i + 1 <= len (mid (h,i1,i2)) ) } by A5, TOPREAL1:def_4; then consider Y being set such that A7: ( x in Y & Y in { (LSeg ((mid (h,i1,i2)),i)) where i is Element of NAT : ( 1 <= i & i + 1 <= len (mid (h,i1,i2)) ) } ) by TARSKI:def_4; consider i being Element of NAT such that A8: Y = LSeg ((mid (h,i1,i2)),i) and A9: 1 <= i and A10: i + 1 <= len (mid (h,i1,i2)) by A7; A11: LSeg ((mid (h,i1,i2)),i) = LSeg (((mid (h,i1,i2)) /. i),((mid (h,i1,i2)) /. (i + 1))) by A9, A10, TOPREAL1:def_3; i <= i + 1 by NAT_1:11; then A12: i <= len (mid (h,i1,i2)) by A10, XXREAL_0:2; then A13: (mid (h,i1,i2)) . i = h . ((i + i1) -' 1) by A1, A2, A3, A4, A6, A9, FINSEQ_6:118; A14: (mid (h,i1,i2)) /. i = (mid (h,i1,i2)) . i by A9, A12, FINSEQ_4:15; A15: (mid (h,i1,i2)) /. (i + 1) = (mid (h,i1,i2)) . (i + 1) by A10, FINSEQ_4:15, NAT_1:11; 1 + 1 <= i + i1 by A1, A9, XREAL_1:7; then A16: (1 + 1) - 1 <= (i + i1) - 1 by XREAL_1:9; then A17: 1 <= (i + i1) -' 1 by A1, NAT_D:37; (i + i1) -' 1 <= ((i + i1) -' 1) + 1 by NAT_1:11; then (i + i1) -' 1 <= ((i + i1) - 1) + 1 by A1, NAT_D:37; then A18: 1 <= i + i1 by A17, XXREAL_0:2; 1 <= i + 1 by NAT_1:11; then A19: (mid (h,i1,i2)) . (i + 1) = h . (((i + 1) + i1) -' 1) by A1, A2, A3, A4, A6, A10, FINSEQ_6:118; A20: ((i + 1) + i1) -' 1 = ((i + 1) + i1) - 1 by A1, NAT_D:37 .= i + i1 ; then A21: ((i + 1) + i1) -' 1 = ((i + i1) - 1) + 1 .= ((i + i1) -' 1) + 1 by A1, NAT_D:37 ; len (mid (h,i1,i2)) = (i2 -' i1) + 1 by A1, A2, A3, A4, A6, FINSEQ_6:118; then (i + 1) - 1 <= ((i2 -' i1) + 1) - 1 by A10, XREAL_1:9; then i <= i2 - i1 by A6, XREAL_1:233; then A22: i + i1 <= (i2 - i1) + i1 by XREAL_1:6; then A23: i + i1 <= len h by A4, XXREAL_0:2; A24: i + i1 <= len h by A4, A22, XXREAL_0:2; then h /. ((i + i1) -' 1) = h . ((i + i1) -' 1) by A17, FINSEQ_4:15, NAT_D:44; then LSeg ((mid (h,i1,i2)),i) = LSeg ((h /. ((i + i1) -' 1)),(h /. (((i + 1) + i1) -' 1))) by A11, A13, A19, A14, A15, A20, A18, A23, FINSEQ_4:15 .= LSeg (h,((i + i1) -' 1)) by A16, A24, A20, A21, TOPREAL1:def_3 ; then LSeg ((mid (h,i1,i2)),i) in { (LSeg (h,j)) where j is Element of NAT : ( 1 <= j & j + 1 <= len h ) } by A16, A20, A21, A23; then x in union { (LSeg (h,j)) where j is Element of NAT : ( 1 <= j & j + 1 <= len h ) } by A7, A8, TARSKI:def_4; hence x in L~ h by TOPREAL1:def_4; ::_thesis: verum end; caseA25: i1 > i2 ; ::_thesis: x in L~ h mid (h,i1,i2) = Rev (mid (h,i2,i1)) by Th18; then x in L~ (mid (h,i2,i1)) by A5, SPPOL_2:22; then x in union { (LSeg ((mid (h,i2,i1)),i)) where i is Element of NAT : ( 1 <= i & i + 1 <= len (mid (h,i2,i1)) ) } by TOPREAL1:def_4; then consider Y being set such that A26: ( x in Y & Y in { (LSeg ((mid (h,i2,i1)),i)) where i is Element of NAT : ( 1 <= i & i + 1 <= len (mid (h,i2,i1)) ) } ) by TARSKI:def_4; consider i being Element of NAT such that A27: Y = LSeg ((mid (h,i2,i1)),i) and A28: 1 <= i and A29: i + 1 <= len (mid (h,i2,i1)) by A26; A30: LSeg ((mid (h,i2,i1)),i) = LSeg (((mid (h,i2,i1)) /. i),((mid (h,i2,i1)) /. (i + 1))) by A28, A29, TOPREAL1:def_3; i <= i + 1 by NAT_1:11; then A31: i <= len (mid (h,i2,i1)) by A29, XXREAL_0:2; then A32: (mid (h,i2,i1)) . i = h . ((i + i2) -' 1) by A1, A2, A3, A4, A25, A28, FINSEQ_6:118; A33: (mid (h,i2,i1)) /. i = (mid (h,i2,i1)) . i by A28, A31, FINSEQ_4:15; A34: (mid (h,i2,i1)) /. (i + 1) = (mid (h,i2,i1)) . (i + 1) by A29, FINSEQ_4:15, NAT_1:11; 1 + 1 <= i + i2 by A3, A28, XREAL_1:7; then A35: (1 + 1) - 1 <= (i + i2) - 1 by XREAL_1:9; then A36: 1 <= (i + i2) -' 1 by A3, NAT_D:37; (i + i2) -' 1 <= ((i + i2) -' 1) + 1 by NAT_1:11; then (i + i2) -' 1 <= ((i + i2) - 1) + 1 by A3, NAT_D:37; then A37: 1 <= i + i2 by A36, XXREAL_0:2; 1 <= i + 1 by NAT_1:11; then A38: (mid (h,i2,i1)) . (i + 1) = h . (((i + 1) + i2) -' 1) by A1, A2, A3, A4, A25, A29, FINSEQ_6:118; A39: ((i + 1) + i2) -' 1 = ((i + 1) + i2) - 1 by A3, NAT_D:37 .= i + i2 ; then A40: ((i + 1) + i2) -' 1 = ((i + i2) - 1) + 1 .= ((i + i2) -' 1) + 1 by A3, NAT_D:37 ; len (mid (h,i2,i1)) = (i1 -' i2) + 1 by A1, A2, A3, A4, A25, FINSEQ_6:118; then (i + 1) - 1 <= ((i1 -' i2) + 1) - 1 by A29, XREAL_1:9; then i <= i1 - i2 by A25, XREAL_1:233; then A41: i + i2 <= (i1 - i2) + i2 by XREAL_1:6; then A42: i + i2 <= len h by A2, XXREAL_0:2; A43: i + i2 <= len h by A2, A41, XXREAL_0:2; then h /. ((i + i2) -' 1) = h . ((i + i2) -' 1) by A36, FINSEQ_4:15, NAT_D:44; then LSeg ((mid (h,i2,i1)),i) = LSeg ((h /. ((i + i2) -' 1)),(h /. (((i + 1) + i2) -' 1))) by A30, A32, A38, A33, A34, A39, A37, A42, FINSEQ_4:15 .= LSeg (h,((i + i2) -' 1)) by A35, A43, A39, A40, TOPREAL1:def_3 ; then LSeg ((mid (h,i2,i1)),i) in { (LSeg (h,j)) where j is Element of NAT : ( 1 <= j & j + 1 <= len h ) } by A35, A39, A40, A42; then x in union { (LSeg (h,j)) where j is Element of NAT : ( 1 <= j & j + 1 <= len h ) } by A26, A27, TARSKI:def_4; hence x in L~ h by TOPREAL1:def_4; ::_thesis: verum end; end; end; hence x in L~ h ; ::_thesis: verum end; end; theorem Th36: :: JORDAN4:36 for D being non empty set for g being FinSequence of D holds ( g is one-to-one iff for i1, i2 being Element of NAT st 1 <= i1 & i1 <= len g & 1 <= i2 & i2 <= len g & ( g . i1 = g . i2 or g /. i1 = g /. i2 ) holds i1 = i2 ) proof let D be non empty set ; ::_thesis: for g being FinSequence of D holds ( g is one-to-one iff for i1, i2 being Element of NAT st 1 <= i1 & i1 <= len g & 1 <= i2 & i2 <= len g & ( g . i1 = g . i2 or g /. i1 = g /. i2 ) holds i1 = i2 ) let g be FinSequence of D; ::_thesis: ( g is one-to-one iff for i1, i2 being Element of NAT st 1 <= i1 & i1 <= len g & 1 <= i2 & i2 <= len g & ( g . i1 = g . i2 or g /. i1 = g /. i2 ) holds i1 = i2 ) A1: ( ( for i1, i2 being Element of NAT st 1 <= i1 & i1 <= len g & 1 <= i2 & i2 <= len g & ( g . i1 = g . i2 or g /. i1 = g /. i2 ) holds i1 = i2 ) implies g is one-to-one ) proof assume A2: for i1, i2 being Element of NAT st 1 <= i1 & i1 <= len g & 1 <= i2 & i2 <= len g & ( g . i1 = g . i2 or g /. i1 = g /. i2 ) holds i1 = i2 ; ::_thesis: g is one-to-one 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 that A3: x1 in dom g and A4: x2 in dom g and A5: g . x1 = g . x2 ; ::_thesis: x1 = x2 reconsider n2 = x2 as Element of NAT by A4; A6: 1 <= n2 by A4, FINSEQ_3:25; reconsider n1 = x1 as Element of NAT by A3; A7: n1 <= len g by A3, FINSEQ_3:25; A8: n2 <= len g by A4, FINSEQ_3:25; 1 <= n1 by A3, FINSEQ_3:25; hence x1 = x2 by A2, A5, A7, A6, A8; ::_thesis: verum end; hence g is one-to-one by FUNCT_1:def_4; ::_thesis: verum end; ( g is one-to-one implies for i1, i2 being Element of NAT st 1 <= i1 & i1 <= len g & 1 <= i2 & i2 <= len g & ( g . i1 = g . i2 or g /. i1 = g /. i2 ) holds i1 = i2 ) proof assume A9: g is one-to-one ; ::_thesis: for i1, i2 being Element of NAT st 1 <= i1 & i1 <= len g & 1 <= i2 & i2 <= len g & ( g . i1 = g . i2 or g /. i1 = g /. i2 ) holds i1 = i2 thus for i1, i2 being Element of NAT st 1 <= i1 & i1 <= len g & 1 <= i2 & i2 <= len g & ( g . i1 = g . i2 or g /. i1 = g /. i2 ) holds i1 = i2 ::_thesis: verum proof let i1, i2 be Element of NAT ; ::_thesis: ( 1 <= i1 & i1 <= len g & 1 <= i2 & i2 <= len g & ( g . i1 = g . i2 or g /. i1 = g /. i2 ) implies i1 = i2 ) assume that A10: 1 <= i1 and A11: i1 <= len g and A12: 1 <= i2 and A13: i2 <= len g and A14: ( g . i1 = g . i2 or g /. i1 = g /. i2 ) ; ::_thesis: i1 = i2 A15: i2 in dom g by A12, A13, FINSEQ_3:25; A16: g /. i2 = g . i2 by A12, A13, FINSEQ_4:15; A17: g /. i1 = g . i1 by A10, A11, FINSEQ_4:15; i1 in dom g by A10, A11, FINSEQ_3:25; hence i1 = i2 by A9, A14, A15, A17, A16, FUNCT_1:def_4; ::_thesis: verum end; end; hence ( g is one-to-one iff for i1, i2 being Element of NAT st 1 <= i1 & i1 <= len g & 1 <= i2 & i2 <= len g & ( g . i1 = g . i2 or g /. i1 = g /. i2 ) holds i1 = i2 ) by A1; ::_thesis: verum end; theorem Th37: :: JORDAN4:37 for f being non constant standard special_circular_sequence for i2 being Element of NAT st 1 < i2 & i2 + 1 <= len f holds f | i2 is being_S-Seq proof let f be non constant standard special_circular_sequence; ::_thesis: for i2 being Element of NAT st 1 < i2 & i2 + 1 <= len f holds f | i2 is being_S-Seq let i2 be Element of NAT ; ::_thesis: ( 1 < i2 & i2 + 1 <= len f implies f | i2 is being_S-Seq ) assume that A1: 1 < i2 and A2: i2 + 1 <= len f ; ::_thesis: f | i2 is being_S-Seq i2 <= len f by A2, NAT_1:13; then A3: len (f | i2) = i2 by FINSEQ_1:59; for n1, n2 being Element of NAT st 1 <= n1 & n1 <= len (f | i2) & 1 <= n2 & n2 <= len (f | i2) & ( (f | i2) . n1 = (f | i2) . n2 or (f | i2) /. n1 = (f | i2) /. n2 ) holds n1 = n2 proof let n1, n2 be Element of NAT ; ::_thesis: ( 1 <= n1 & n1 <= len (f | i2) & 1 <= n2 & n2 <= len (f | i2) & ( (f | i2) . n1 = (f | i2) . n2 or (f | i2) /. n1 = (f | i2) /. n2 ) implies n1 = n2 ) assume that A4: 1 <= n1 and A5: n1 <= len (f | i2) and A6: 1 <= n2 and A7: n2 <= len (f | i2) and A8: ( (f | i2) . n1 = (f | i2) . n2 or (f | i2) /. n1 = (f | i2) /. n2 ) ; ::_thesis: n1 = n2 A9: n2 in dom (f | i2) by A6, A7, FINSEQ_3:25; A10: n1 in dom (f | i2) by A4, A5, FINSEQ_3:25; now__::_thesis:_(_(_n1_<_n2_&_contradiction_)_or_(_n1_=_n2_&_n1_=_n2_)_or_(_n2_<_n1_&_contradiction_)_) percases ( n1 < n2 or n1 = n2 or n2 < n1 ) by XXREAL_0:1; caseA11: n1 < n2 ; ::_thesis: contradiction n2 + 1 <= i2 + 1 by A3, A7, XREAL_1:6; then n2 + 1 <= len f by A2, XXREAL_0:2; then A12: n2 < len f by NAT_1:13; len f > 4 by GOBOARD7:34; then A13: f /. n1 <> f /. n2 by A4, A11, A12, GOBOARD7:35; A14: (f | i2) /. n1 = f /. n1 by A10, FINSEQ_4:70; A15: (f | i2) /. n2 = f /. n2 by A9, FINSEQ_4:70; (f | i2) /. n1 = (f | i2) . n1 by A4, A5, FINSEQ_4:15; hence contradiction by A6, A7, A8, A13, A14, A15, FINSEQ_4:15; ::_thesis: verum end; case n1 = n2 ; ::_thesis: n1 = n2 hence n1 = n2 ; ::_thesis: verum end; caseA16: n2 < n1 ; ::_thesis: contradiction n1 + 1 <= i2 + 1 by A3, A5, XREAL_1:6; then n1 + 1 <= len f by A2, XXREAL_0:2; then A17: n1 < len f by NAT_1:13; len f > 4 by GOBOARD7:34; then A18: f /. n2 <> f /. n1 by A6, A16, A17, GOBOARD7:35; A19: (f | i2) /. n2 = f /. n2 by A9, FINSEQ_4:70; A20: (f | i2) /. n1 = f /. n1 by A10, FINSEQ_4:70; (f | i2) /. n2 = (f | i2) . n2 by A6, A7, FINSEQ_4:15; hence contradiction by A4, A5, A8, A18, A19, A20, FINSEQ_4:15; ::_thesis: verum end; end; end; hence n1 = n2 ; ::_thesis: verum end; then A21: f | i2 is one-to-one by Th36; for i, j being Nat st i + 1 < j holds LSeg ((f | i2),i) misses LSeg ((f | i2),j) proof let i, j be Nat; ::_thesis: ( i + 1 < j implies LSeg ((f | i2),i) misses LSeg ((f | i2),j) ) assume A22: i + 1 < j ; ::_thesis: LSeg ((f | i2),i) misses LSeg ((f | i2),j) A23: j in NAT by ORDINAL1:def_12; A24: i in NAT by ORDINAL1:def_12; now__::_thesis:_(_(_1_<=_i_&_j_+_1_<=_len_(f_|_i2)_&_LSeg_((f_|_i2),i)_misses_LSeg_((f_|_i2),j)_)_or_(_(_1_>_i_or_j_+_1_>_len_(f_|_i2)_)_&_LSeg_((f_|_i2),i)_misses_LSeg_((f_|_i2),j)_)_) percases ( ( 1 <= i & j + 1 <= len (f | i2) ) or 1 > i or j + 1 > len (f | i2) ) ; caseA25: ( 1 <= i & j + 1 <= len (f | i2) ) ; ::_thesis: LSeg ((f | i2),i) misses LSeg ((f | i2),j) i2 <= len f by A2, NAT_1:13; then len (f | i2) = i2 by FINSEQ_1:59; then j + 1 < i2 + 1 by A25, NAT_1:13; then j + 1 < len f by A2, XXREAL_0:2; then A26: LSeg (f,i) misses LSeg (f,j) by A22, A24, A23, GOBOARD5:def_4; A27: j <= len (f | i2) by A25, NAT_1:13; LSeg ((f | i2),j) = LSeg (f,j) by A25, SPPOL_2:3; then (LSeg ((f | i2),i)) /\ (LSeg ((f | i2),j)) = (LSeg (f,i)) /\ (LSeg (f,j)) by A22, A27, SPPOL_2:3, XXREAL_0:2; then (LSeg ((f | i2),i)) /\ (LSeg ((f | i2),j)) = {} by A26, XBOOLE_0:def_7; hence LSeg ((f | i2),i) misses LSeg ((f | i2),j) by XBOOLE_0:def_7; ::_thesis: verum end; caseA28: ( 1 > i or j + 1 > len (f | i2) ) ; ::_thesis: LSeg ((f | i2),i) misses LSeg ((f | i2),j) now__::_thesis:_(_(_1_>_i_&_LSeg_((f_|_i2),i)_misses_LSeg_((f_|_i2),j)_)_or_(_j_+_1_>_len_(f_|_i2)_&_LSeg_((f_|_i2),i)_misses_LSeg_((f_|_i2),j)_)_) percases ( 1 > i or j + 1 > len (f | i2) ) by A28; case 1 > i ; ::_thesis: LSeg ((f | i2),i) misses LSeg ((f | i2),j) then LSeg ((f | i2),i) = {} by TOPREAL1:def_3; then (LSeg ((f | i2),i)) /\ (LSeg ((f | i2),j)) = {} ; hence LSeg ((f | i2),i) misses LSeg ((f | i2),j) by XBOOLE_0:def_7; ::_thesis: verum end; case j + 1 > len (f | i2) ; ::_thesis: LSeg ((f | i2),i) misses LSeg ((f | i2),j) then LSeg ((f | i2),j) = {} by TOPREAL1:def_3; then (LSeg ((f | i2),i)) /\ (LSeg ((f | i2),j)) = {} ; hence LSeg ((f | i2),i) misses LSeg ((f | i2),j) by XBOOLE_0:def_7; ::_thesis: verum end; end; end; hence LSeg ((f | i2),i) misses LSeg ((f | i2),j) ; ::_thesis: verum end; end; end; hence LSeg ((f | i2),i) misses LSeg ((f | i2),j) ; ::_thesis: verum end; then A29: f | i2 is s.n.c. by TOPREAL1:def_7; 1 + 1 <= len (f | i2) by A1, A3, NAT_1:13; hence f | i2 is being_S-Seq by A29, A21, TOPREAL1:def_8; ::_thesis: verum end; theorem Th38: :: JORDAN4:38 for f being non constant standard special_circular_sequence for i2 being Element of NAT st 1 <= i2 & i2 + 1 < len f holds f /^ i2 is being_S-Seq proof let f be non constant standard special_circular_sequence; ::_thesis: for i2 being Element of NAT st 1 <= i2 & i2 + 1 < len f holds f /^ i2 is being_S-Seq let i2 be Element of NAT ; ::_thesis: ( 1 <= i2 & i2 + 1 < len f implies f /^ i2 is being_S-Seq ) assume that A1: 1 <= i2 and A2: i2 + 1 < len f ; ::_thesis: f /^ i2 is being_S-Seq A3: i2 < len f by A2, NAT_1:13; for i, j being Nat st i + 1 < j holds LSeg ((f /^ i2),i) misses LSeg ((f /^ i2),j) proof let i, j be Nat; ::_thesis: ( i + 1 < j implies LSeg ((f /^ i2),i) misses LSeg ((f /^ i2),j) ) assume A4: i + 1 < j ; ::_thesis: LSeg ((f /^ i2),i) misses LSeg ((f /^ i2),j) then A5: i < j by NAT_1:13; now__::_thesis:_(_(_1_<=_i_&_j_<_len_(f_/^_i2)_&_LSeg_((f_/^_i2),i)_misses_LSeg_((f_/^_i2),j)_)_or_(_(_1_>_i_or_j_>=_len_(f_/^_i2)_)_&_LSeg_((f_/^_i2),i)_misses_LSeg_((f_/^_i2),j)_)_) percases ( ( 1 <= i & j < len (f /^ i2) ) or 1 > i or j >= len (f /^ i2) ) ; caseA6: ( 1 <= i & j < len (f /^ i2) ) ; ::_thesis: LSeg ((f /^ i2),i) misses LSeg ((f /^ i2),j) then 1 < j by A5, XXREAL_0:2; then LSeg ((f /^ i2),j) = LSeg (f,(i2 + j)) by A3, SPPOL_2:4; then A7: (LSeg ((f /^ i2),i)) /\ (LSeg ((f /^ i2),j)) = (LSeg (f,(i2 + i))) /\ (LSeg (f,(i2 + j))) by A3, A6, SPPOL_2:4; i2 + (i + 1) < i2 + j by A4, XREAL_1:6; then A8: (i2 + i) + 1 < i2 + j ; 1 + 1 <= i2 + i by A1, A6, XREAL_1:7; then A9: 1 < i2 + i by XXREAL_0:2; j < (len f) - i2 by A3, A6, RFINSEQ:def_1; then j + i2 < ((len f) - i2) + i2 by XREAL_1:6; then LSeg (f,(i2 + i)) misses LSeg (f,(i2 + j)) by A8, A9, GOBOARD5:def_4; then (LSeg (f,(i2 + i))) /\ (LSeg (f,(i2 + j))) = {} by XBOOLE_0:def_7; hence LSeg ((f /^ i2),i) misses LSeg ((f /^ i2),j) by A7, XBOOLE_0:def_7; ::_thesis: verum end; caseA10: ( 1 > i or j >= len (f /^ i2) ) ; ::_thesis: LSeg ((f /^ i2),i) misses LSeg ((f /^ i2),j) now__::_thesis:_(_(_1_>_i_&_LSeg_((f_/^_i2),i)_misses_LSeg_((f_/^_i2),j)_)_or_(_j_>=_len_(f_/^_i2)_&_LSeg_((f_/^_i2),i)_misses_LSeg_((f_/^_i2),j)_)_) percases ( 1 > i or j >= len (f /^ i2) ) by A10; case 1 > i ; ::_thesis: LSeg ((f /^ i2),i) misses LSeg ((f /^ i2),j) then LSeg ((f /^ i2),i) = {} by TOPREAL1:def_3; then (LSeg ((f /^ i2),i)) /\ (LSeg ((f /^ i2),j)) = {} ; hence LSeg ((f /^ i2),i) misses LSeg ((f /^ i2),j) by XBOOLE_0:def_7; ::_thesis: verum end; case j >= len (f /^ i2) ; ::_thesis: LSeg ((f /^ i2),i) misses LSeg ((f /^ i2),j) then j + 1 > len (f /^ i2) by NAT_1:13; then LSeg ((f /^ i2),j) = {} by TOPREAL1:def_3; then (LSeg ((f /^ i2),i)) /\ (LSeg ((f /^ i2),j)) = {} ; hence LSeg ((f /^ i2),i) misses LSeg ((f /^ i2),j) by XBOOLE_0:def_7; ::_thesis: verum end; end; end; hence LSeg ((f /^ i2),i) misses LSeg ((f /^ i2),j) ; ::_thesis: verum end; end; end; hence LSeg ((f /^ i2),i) misses LSeg ((f /^ i2),j) ; ::_thesis: verum end; then A11: f /^ i2 is s.n.c. by TOPREAL1:def_7; A12: len (f /^ i2) = (len f) - i2 by A3, RFINSEQ:def_1; for n1, n2 being Element of NAT st 1 <= n1 & n1 <= len (f /^ i2) & 1 <= n2 & n2 <= len (f /^ i2) & ( (f /^ i2) . n1 = (f /^ i2) . n2 or (f /^ i2) /. n1 = (f /^ i2) /. n2 ) holds n1 = n2 proof let n1, n2 be Element of NAT ; ::_thesis: ( 1 <= n1 & n1 <= len (f /^ i2) & 1 <= n2 & n2 <= len (f /^ i2) & ( (f /^ i2) . n1 = (f /^ i2) . n2 or (f /^ i2) /. n1 = (f /^ i2) /. n2 ) implies n1 = n2 ) assume that A13: 1 <= n1 and A14: n1 <= len (f /^ i2) and A15: 1 <= n2 and A16: n2 <= len (f /^ i2) and A17: ( (f /^ i2) . n1 = (f /^ i2) . n2 or (f /^ i2) /. n1 = (f /^ i2) /. n2 ) ; ::_thesis: n1 = n2 A18: n2 in dom (f /^ i2) by A15, A16, FINSEQ_3:25; A19: n1 in dom (f /^ i2) by A13, A14, FINSEQ_3:25; now__::_thesis:_(_(_n1_<_n2_&_contradiction_)_or_(_n1_=_n2_&_n1_=_n2_)_or_(_n2_<_n1_&_contradiction_)_) percases ( n1 < n2 or n1 = n2 or n2 < n1 ) by XXREAL_0:1; case n1 < n2 ; ::_thesis: contradiction then A20: i2 + n1 < i2 + n2 by XREAL_1:6; A21: 1 < i2 + 1 by A1, NAT_1:13; i2 + 1 <= i2 + n1 by A13, XREAL_1:6; then A22: 1 < i2 + n1 by A21, XXREAL_0:2; n2 + i2 <= ((len f) - i2) + i2 by A12, A16, XREAL_1:6; then A23: f /. (i2 + n1) <> f /. (i2 + n2) by A22, A20, GOBOARD7:37; A24: (f /^ i2) /. n1 = f /. (i2 + n1) by A19, FINSEQ_5:27; A25: (f /^ i2) /. n2 = f /. (i2 + n2) by A18, FINSEQ_5:27; (f /^ i2) /. n1 = (f /^ i2) . n1 by A13, A14, FINSEQ_4:15; hence contradiction by A15, A16, A17, A23, A24, A25, FINSEQ_4:15; ::_thesis: verum end; case n1 = n2 ; ::_thesis: n1 = n2 hence n1 = n2 ; ::_thesis: verum end; case n2 < n1 ; ::_thesis: contradiction then A26: i2 + n2 < i2 + n1 by XREAL_1:6; A27: 1 < i2 + 1 by A1, NAT_1:13; i2 + 1 <= i2 + n2 by A15, XREAL_1:6; then A28: 1 < i2 + n2 by A27, XXREAL_0:2; n1 + i2 <= ((len f) - i2) + i2 by A12, A14, XREAL_1:6; then A29: f /. (i2 + n2) <> f /. (i2 + n1) by A28, A26, GOBOARD7:37; n2 in dom (f /^ i2) by A15, A16, FINSEQ_3:25; then A30: (f /^ i2) /. n2 = f /. (i2 + n2) by FINSEQ_5:27; n1 in dom (f /^ i2) by A13, A14, FINSEQ_3:25; then A31: (f /^ i2) /. n1 = f /. (i2 + n1) by FINSEQ_5:27; (f /^ i2) /. n2 = (f /^ i2) . n2 by A15, A16, FINSEQ_4:15; hence contradiction by A13, A14, A17, A29, A30, A31, FINSEQ_4:15; ::_thesis: verum end; end; end; hence n1 = n2 ; ::_thesis: verum end; then A32: f /^ i2 is one-to-one by Th36; (i2 + 1) - i2 < (len f) - i2 by A2, XREAL_1:9; then 1 + 1 <= len (f /^ i2) by A12, NAT_1:13; hence f /^ i2 is being_S-Seq by A11, A32, TOPREAL1:def_8; ::_thesis: verum end; theorem Th39: :: JORDAN4:39 for f being non constant standard special_circular_sequence for i1, i2 being Element of NAT st 1 <= i1 & i1 < i2 & i2 + 1 <= len f holds mid (f,i1,i2) is being_S-Seq proof let f be non constant standard special_circular_sequence; ::_thesis: for i1, i2 being Element of NAT st 1 <= i1 & i1 < i2 & i2 + 1 <= len f holds mid (f,i1,i2) is being_S-Seq let i1, i2 be Element of NAT ; ::_thesis: ( 1 <= i1 & i1 < i2 & i2 + 1 <= len f implies mid (f,i1,i2) is being_S-Seq ) assume that A1: 1 <= i1 and A2: i1 < i2 and A3: i2 + 1 <= len f ; ::_thesis: mid (f,i1,i2) is being_S-Seq A4: mid (f,i1,i2) = (f /^ (i1 -' 1)) | ((i2 -' i1) + 1) by A2, FINSEQ_6:def_3; i1 < i1 + 1 by NAT_1:13; then i1 - 1 < (i1 + 1) - 1 by XREAL_1:9; then i1 - 1 < i2 by A2, XXREAL_0:2; then A5: i1 -' 1 < i2 by A1, XREAL_1:233; (i2 -' i1) + 1 = (i2 - i1) + 1 by A2, XREAL_1:233 .= i2 - (i1 - 1) .= i2 - (i1 -' 1) by A1, XREAL_1:233 .= i2 -' (i1 -' 1) by A5, XREAL_1:233 ; then A6: mid (f,i1,i2) = (f | i2) /^ (i1 -' 1) by A4, FINSEQ_5:80; i2 < len f by A3, NAT_1:13; then (i1 - 1) + 1 < len (f | i2) by A2, FINSEQ_1:59; then A7: (i1 -' 1) + 1 < len (f | i2) by A1, XREAL_1:233; 1 < i2 by A1, A2, XXREAL_0:2; hence mid (f,i1,i2) is being_S-Seq by A3, A6, A7, Th7, Th37; ::_thesis: verum end; theorem Th40: :: JORDAN4:40 for f being non constant standard special_circular_sequence for i1, i2 being Element of NAT st 1 < i1 & i1 < i2 & i2 <= len f holds mid (f,i1,i2) is being_S-Seq proof let f be non constant standard special_circular_sequence; ::_thesis: for i1, i2 being Element of NAT st 1 < i1 & i1 < i2 & i2 <= len f holds mid (f,i1,i2) is being_S-Seq let i1, i2 be Element of NAT ; ::_thesis: ( 1 < i1 & i1 < i2 & i2 <= len f implies mid (f,i1,i2) is being_S-Seq ) assume that A1: 1 < i1 and A2: i1 < i2 and A3: i2 <= len f ; ::_thesis: mid (f,i1,i2) is being_S-Seq A4: i2 - (i1 -' 1) <= (len f) - (i1 -' 1) by A3, XREAL_1:9; 1 + 1 <= i1 by A1, NAT_1:13; then (1 + 1) - 1 <= i1 - 1 by XREAL_1:9; then A5: 1 <= i1 -' 1 by NAT_D:39; A6: mid (f,i1,i2) = (f /^ (i1 -' 1)) | ((i2 -' i1) + 1) by A2, FINSEQ_6:def_3; A7: i2 - i1 > 0 by A2, XREAL_1:50; then A8: 1 <> (i2 -' i1) + 1 by XREAL_0:def_2; i2 -' i1 > 0 by A7, XREAL_0:def_2; then A9: i2 -' i1 >= 0 + 1 by NAT_1:13; then A10: 1 <= (i2 -' i1) + 1 by NAT_1:13; i1 < i1 + 1 by NAT_1:13; then i1 - 1 < (i1 + 1) - 1 by XREAL_1:9; then i1 - 1 < i2 by A2, XXREAL_0:2; then i1 -' 1 < i2 by A1, XREAL_1:233; then A11: i1 -' 1 < len f by A3, XXREAL_0:2; then len (f /^ (i1 -' 1)) = (len f) - (i1 -' 1) by RFINSEQ:def_1; then i2 - (i1 - 1) <= len (f /^ (i1 -' 1)) by A1, A4, XREAL_1:233; then (i2 - i1) + 1 <= len (f /^ (i1 -' 1)) ; then A12: (i2 -' i1) + 1 <= len (f /^ (i1 -' 1)) by A9, NAT_D:39; A13: i1 < len f by A2, A3, XXREAL_0:2; then (i1 -' 1) + 1 < len f by A1, XREAL_1:235; then ((i1 -' 1) + 1) - (i1 -' 1) < (len f) - (i1 -' 1) by XREAL_1:9; then A14: 1 <= len (f /^ (i1 -' 1)) by A11, RFINSEQ:def_1; (i1 -' 1) + 1 < len f by A1, A13, XREAL_1:235; then mid ((f /^ (i1 -' 1)),1,((i2 -' i1) + 1)) is being_S-Seq by A5, A14, A10, A12, A8, Th38, JORDAN3:6; hence mid (f,i1,i2) is being_S-Seq by A6, A10, FINSEQ_6:116; ::_thesis: verum end; theorem Th41: :: JORDAN4:41 for p0, p, q1, q2 being Point of (TOP-REAL 2) st p0 in LSeg (p,q1) & p0 in LSeg (p,q2) & p <> p0 & not q1 in LSeg (p,q2) holds q2 in LSeg (p,q1) proof let p0, p, q1, q2 be Point of (TOP-REAL 2); ::_thesis: ( p0 in LSeg (p,q1) & p0 in LSeg (p,q2) & p <> p0 & not q1 in LSeg (p,q2) implies q2 in LSeg (p,q1) ) assume that A1: p0 in LSeg (p,q1) and A2: p0 in LSeg (p,q2) and A3: p <> p0 ; ::_thesis: ( q1 in LSeg (p,q2) or q2 in LSeg (p,q1) ) consider r being Real such that A4: p0 = ((1 - r) * p) + (r * q1) and A5: 0 <= r and A6: r <= 1 by A1; A7: 1 - r >= 0 by A6, XREAL_1:48; A8: p0 - (r * q1) = (1 - r) * p by A4, EUCLID:48; consider s being Real such that A9: p0 = ((1 - s) * p) + (s * q2) and A10: 0 <= s and A11: s <= 1 by A2; A12: 1 - s >= 0 by A11, XREAL_1:48; A13: p0 - (s * q2) = (1 - s) * p by A9, EUCLID:48; A14: p0 - ((1 - s) * p) = s * q2 by A9, EUCLID:48; A15: p0 - ((1 - r) * p) = r * q1 by A4, EUCLID:48; A16: now__::_thesis:_(_r_<>_s_&_not_q1_in_LSeg_(p,q2)_implies_q2_in_LSeg_(p,q1)_) assume A17: r <> s ; ::_thesis: ( q1 in LSeg (p,q2) or q2 in LSeg (p,q1) ) now__::_thesis:_(_(_r_<_s_&_(_q1_in_LSeg_(p,q2)_or_q2_in_LSeg_(p,q1)_)_)_or_(_s_<_r_&_(_q1_in_LSeg_(p,q2)_or_q2_in_LSeg_(p,q1)_)_)_) percases ( r < s or s < r ) by A17, XXREAL_0:1; caseA18: r < s ; ::_thesis: ( q1 in LSeg (p,q2) or q2 in LSeg (p,q1) ) ((1 - r) * p0) - ((1 - r) * ((1 - s) * p)) = (1 - r) * (s * q2) by A14, EUCLID:49; then ((1 - r) * p0) - (((1 - r) * (1 - s)) * p) = (1 - r) * (s * q2) by EUCLID:30; then ((1 - r) * p0) - (((1 - r) * (1 - s)) * p) = ((1 - r) * s) * q2 by EUCLID:30; then ((1 - r) * p0) - ((1 - s) * ((1 - r) * p)) = ((1 - r) * s) * q2 by EUCLID:30; then ((1 - r) * p0) - (((1 - s) * p0) - ((1 - s) * (r * q1))) = ((1 - r) * s) * q2 by A8, EUCLID:49; then (((1 - r) * p0) - ((1 - s) * p0)) + ((1 - s) * (r * q1)) = ((1 - r) * s) * q2 by EUCLID:47; then A19: (((1 - r) - (1 - s)) * p0) + ((1 - s) * (r * q1)) = ((1 - r) * s) * q2 by EUCLID:50; A20: now__::_thesis:_not_(1_-_r)_*_s_=_0 assume (1 - r) * s = 0 ; ::_thesis: contradiction then A21: ( (1 - r) + r = 0 + r or s = 0 ) by XCMPLX_1:6; now__::_thesis:_(_(_r_=_1_&_contradiction_)_or_(_s_=_0_&_contradiction_)_) percases ( r = 1 or s = 0 ) by A21; case r = 1 ; ::_thesis: contradiction hence contradiction by A11, A18; ::_thesis: verum end; case s = 0 ; ::_thesis: contradiction hence contradiction by A5, A18; ::_thesis: verum end; end; end; hence contradiction ; ::_thesis: verum end; then 1 = ((1 - r) * s) / ((1 - r) * s) by XCMPLX_1:60; then 1 = ((1 - r) * s) * (((1 - r) * s) ") by XCMPLX_0:def_9; then (((1 - r) * s) * (((1 - r) * s) ")) * (((s - r) * p0) + ((1 - s) * (r * q1))) = ((1 - r) * s) * q2 by A19, EUCLID:29; then ((1 - r) * s) * ((((1 - r) * s) ") * (((s - r) * p0) + ((1 - s) * (r * q1)))) = ((1 - r) * s) * q2 by EUCLID:30; then q2 = (((1 - r) * s) ") * (((s - r) * p0) + ((1 - s) * (r * q1))) by A20, EUCLID:34; then q2 = (((1 - r) * s) ") * (((s - r) * p0) + (((1 - s) * r) * q1)) by EUCLID:30; then q2 = ((((1 - r) * s) ") * ((s - r) * p0)) + ((((1 - r) * s) ") * (((1 - s) * r) * q1)) by EUCLID:32; then q2 = (((((1 - r) * s) ") * (s - r)) * p0) + ((((1 - r) * s) ") * (((1 - s) * r) * q1)) by EUCLID:30; then A22: q2 = (((((1 - r) * s) ") * (s - r)) * p0) + (((((1 - r) * s) ") * ((1 - s) * r)) * q1) by EUCLID:30; set s1 = (((1 - r) * s) ") * ((1 - s) * r); q1 in LSeg (p,q1) by RLTOPSP1:68; then A23: LSeg (p0,q1) c= LSeg (p,q1) by A1, TOPREAL1:6; (r - (s * r)) + (s * r) <= (s - (s * r)) + (s * r) by A18; then (1 * r) - (s * r) <= (1 - r) * s by XREAL_1:6; then (((1 - s) * r) / ((1 - r) * s)) * ((1 - r) * s) <= 1 * ((1 - r) * s) by A20, XCMPLX_1:87; then ((1 - s) * r) / ((1 - r) * s) <= 1 by A10, A7, A20, XREAL_1:68; then A24: (((1 - r) * s) ") * ((1 - s) * r) <= 1 by XCMPLX_0:def_9; (((1 - r) * s) ") * (s - r) = (((1 - r) * s) - (((1 - r) * s) - (s - r))) / ((1 - r) * s) by XCMPLX_0:def_9 .= (((1 - r) * s) / ((1 - r) * s)) - ((((1 - r) * s) - (s - r)) / ((1 - r) * s)) by XCMPLX_1:120 .= 1 - (((r + (s - (r * s))) - s) / ((1 - r) * s)) by A20, XCMPLX_1:60 .= 1 - ((((1 - r) * s) ") * ((1 - s) * r)) by XCMPLX_0:def_9 ; then q2 in LSeg (p0,q1) by A5, A10, A7, A12, A22, A24; hence ( q1 in LSeg (p,q2) or q2 in LSeg (p,q1) ) by A23; ::_thesis: verum end; caseA25: s < r ; ::_thesis: ( q1 in LSeg (p,q2) or q2 in LSeg (p,q1) ) ((1 - s) * p0) - ((1 - s) * ((1 - r) * p)) = (1 - s) * (r * q1) by A15, EUCLID:49; then ((1 - s) * p0) - (((1 - s) * (1 - r)) * p) = (1 - s) * (r * q1) by EUCLID:30; then ((1 - s) * p0) - (((1 - s) * (1 - r)) * p) = ((1 - s) * r) * q1 by EUCLID:30; then ((1 - s) * p0) - ((1 - r) * ((1 - s) * p)) = ((1 - s) * r) * q1 by EUCLID:30; then ((1 - s) * p0) - (((1 - r) * p0) - ((1 - r) * (s * q2))) = ((1 - s) * r) * q1 by A13, EUCLID:49; then (((1 - s) * p0) - ((1 - r) * p0)) + ((1 - r) * (s * q2)) = ((1 - s) * r) * q1 by EUCLID:47; then A26: (((1 - s) - (1 - r)) * p0) + ((1 - r) * (s * q2)) = ((1 - s) * r) * q1 by EUCLID:50; A27: now__::_thesis:_not_(1_-_s)_*_r_=_0 assume (1 - s) * r = 0 ; ::_thesis: contradiction then A28: ( (1 - s) + s = 0 + s or r = 0 ) by XCMPLX_1:6; now__::_thesis:_(_(_s_=_1_&_contradiction_)_or_(_r_=_0_&_contradiction_)_) percases ( s = 1 or r = 0 ) by A28; case s = 1 ; ::_thesis: contradiction hence contradiction by A6, A25; ::_thesis: verum end; case r = 0 ; ::_thesis: contradiction hence contradiction by A10, A25; ::_thesis: verum end; end; end; hence contradiction ; ::_thesis: verum end; then 1 = ((1 - s) * r) / ((1 - s) * r) by XCMPLX_1:60; then 1 = ((1 - s) * r) * (((1 - s) * r) ") by XCMPLX_0:def_9; then (((1 - s) * r) * (((1 - s) * r) ")) * (((r - s) * p0) + ((1 - r) * (s * q2))) = ((1 - s) * r) * q1 by A26, EUCLID:29; then ((1 - s) * r) * ((((1 - s) * r) ") * (((r - s) * p0) + ((1 - r) * (s * q2)))) = ((1 - s) * r) * q1 by EUCLID:30; then q1 = (((1 - s) * r) ") * (((r - s) * p0) + ((1 - r) * (s * q2))) by A27, EUCLID:34; then q1 = (((1 - s) * r) ") * (((r - s) * p0) + (((1 - r) * s) * q2)) by EUCLID:30; then q1 = ((((1 - s) * r) ") * ((r - s) * p0)) + ((((1 - s) * r) ") * (((1 - r) * s) * q2)) by EUCLID:32; then q1 = (((((1 - s) * r) ") * (r - s)) * p0) + ((((1 - s) * r) ") * (((1 - r) * s) * q2)) by EUCLID:30; then A29: q1 = (((((1 - s) * r) ") * (r - s)) * p0) + (((((1 - s) * r) ") * ((1 - r) * s)) * q2) by EUCLID:30; set s1 = (((1 - s) * r) ") * ((1 - r) * s); q2 in LSeg (p,q2) by RLTOPSP1:68; then A30: LSeg (p0,q2) c= LSeg (p,q2) by A2, TOPREAL1:6; (s - (r * s)) + (r * s) <= (r - (r * s)) + (r * s) by A25; then (1 * s) - (r * s) <= (1 - s) * r by XREAL_1:6; then (((1 - r) * s) / ((1 - s) * r)) * ((1 - s) * r) <= 1 * ((1 - s) * r) by A27, XCMPLX_1:87; then ((1 - r) * s) / ((1 - s) * r) <= 1 by A5, A12, A27, XREAL_1:68; then A31: (((1 - s) * r) ") * ((1 - r) * s) <= 1 by XCMPLX_0:def_9; (((1 - s) * r) ") * (r - s) = (((1 - s) * r) - (((1 - s) * r) - (r - s))) / ((1 - s) * r) by XCMPLX_0:def_9 .= (((1 - s) * r) / ((1 - s) * r)) - ((((1 - s) * r) - (r - s)) / ((1 - s) * r)) by XCMPLX_1:120 .= 1 - (((s + (r - (s * r))) - r) / ((1 - s) * r)) by A27, XCMPLX_1:60 .= 1 - ((((1 - s) * r) ") * ((1 - r) * s)) by XCMPLX_0:def_9 ; then q1 in LSeg (p0,q2) by A5, A10, A7, A12, A29, A31; hence ( q1 in LSeg (p,q2) or q2 in LSeg (p,q1) ) by A30; ::_thesis: verum end; end; end; hence ( q1 in LSeg (p,q2) or q2 in LSeg (p,q1) ) ; ::_thesis: verum end; now__::_thesis:_(_r_=_s_&_not_q1_in_LSeg_(p,q2)_implies_q2_in_LSeg_(p,q1)_) assume r = s ; ::_thesis: ( q1 in LSeg (p,q2) or q2 in LSeg (p,q1) ) then (r * q1) + (((1 - r) * p) - ((1 - r) * p)) = ((r * q2) + ((1 - r) * p)) - ((1 - r) * p) by A4, A9, EUCLID:45; then (r * q1) + (0. (TOP-REAL 2)) = ((r * q2) + ((1 - r) * p)) - ((1 - r) * p) by EUCLID:42; then (r * q1) + (0. (TOP-REAL 2)) = r * q2 by EUCLID:48; then A32: r * q1 = r * q2 by EUCLID:27; A33: q1 in LSeg (p,q1) by RLTOPSP1:68; now__::_thesis:_(_(_r_<>_0_&_(_q1_in_LSeg_(p,q2)_or_q2_in_LSeg_(p,q1)_)_)_or_(_r_=_0_&_contradiction_)_) percases ( r <> 0 or r = 0 ) ; case r <> 0 ; ::_thesis: ( q1 in LSeg (p,q2) or q2 in LSeg (p,q1) ) hence ( q1 in LSeg (p,q2) or q2 in LSeg (p,q1) ) by A32, A33, EUCLID:34; ::_thesis: verum end; case r = 0 ; ::_thesis: contradiction then p0 = ((1 - 0) * p) + (0. (TOP-REAL 2)) by A4, EUCLID:29; then p0 = (1 - 0) * p by EUCLID:27; hence contradiction by A3, EUCLID:29; ::_thesis: verum end; end; end; hence ( q1 in LSeg (p,q2) or q2 in LSeg (p,q1) ) ; ::_thesis: verum end; hence ( q1 in LSeg (p,q2) or q2 in LSeg (p,q1) ) by A16; ::_thesis: verum end; theorem Th42: :: JORDAN4:42 for f being non constant standard special_circular_sequence holds (LSeg (f,1)) /\ (LSeg (f,((len f) -' 1))) = {(f . 1)} proof let f be non constant standard special_circular_sequence; ::_thesis: (LSeg (f,1)) /\ (LSeg (f,((len f) -' 1))) = {(f . 1)} A1: 3 < len f by GOBOARD7:34, XXREAL_0:2; A2: len f > 4 by GOBOARD7:34; then A3: (len f) - 1 = (len f) -' 1 by XREAL_1:233, XXREAL_0:2; A4: 2 < len f by GOBOARD7:34, XXREAL_0:2; then A5: (1 + 1) - 1 <= (len f) - 1 by XREAL_1:9; ((len f) - 1) + 1 = len f ; then A6: f /. (len f) in LSeg (f,((len f) -' 1)) by A3, A5, TOPREAL1:21; A7: f /. 1 = f /. (len f) by FINSEQ_6:def_1; A8: 1 < len f by GOBOARD7:34, XXREAL_0:2; A9: (3 + 1) - 1 < (len f) - 1 by A2, XREAL_1:9; A10: (LSeg (f,1)) /\ (LSeg (f,((len f) -' 1))) c= {(f . 1)} proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in (LSeg (f,1)) /\ (LSeg (f,((len f) -' 1))) or x in {(f . 1)} ) A11: 1 + 1 <= len f by GOBOARD7:34, XXREAL_0:2; assume A12: x in (LSeg (f,1)) /\ (LSeg (f,((len f) -' 1))) ; ::_thesis: x in {(f . 1)} then reconsider p = x as Point of (TOP-REAL 2) ; x in LSeg (f,1) by A12, XBOOLE_0:def_4; then A13: p in LSeg ((f /. 1),(f /. (1 + 1))) by A11, TOPREAL1:def_3; (2 + 1) - 1 <= (len f) - 1 by A1, XREAL_1:9; then A14: (1 + 1) - 1 <= ((len f) -' 1) - 1 by A3, XREAL_1:9; A15: LSeg ((f /. 1),(f /. (1 + 1))) = LSeg (f,1) by A4, TOPREAL1:def_3; ((len f) -' 1) + 1 = ((len f) - 1) + 1 by A2, XREAL_1:233, XXREAL_0:2 .= len f ; then A16: f /. (((len f) -' 1) + 1) = f /. 1 by FINSEQ_6:def_1; A17: LSeg ((f /. (1 + 1)),(f /. ((1 + 1) + 1))) = LSeg (f,(1 + 1)) by A1, TOPREAL1:def_3; x in LSeg (f,((len f) -' 1)) by A12, XBOOLE_0:def_4; then A18: p in LSeg ((f /. 1),(f /. ((len f) -' 1))) by A3, A5, A16, TOPREAL1:def_3; len f < (len f) + 1 by NAT_1:13; then A19: (len f) - 1 < ((len f) + 1) - 1 by XREAL_1:9; (((len f) -' 1) -' 1) + 1 = (((len f) -' 1) - 1) + 1 by A3, A5, XREAL_1:233 .= (len f) -' 1 ; then A20: LSeg ((f /. (((len f) -' 1) -' 1)),(f /. ((len f) -' 1))) = LSeg (f,(((len f) -' 1) -' 1)) by A3, A14, A19, TOPREAL1:def_3; A21: LSeg ((f /. ((len f) -' 1)),(f /. (((len f) -' 1) + 1))) = LSeg (f,((len f) -' 1)) by A3, A5, TOPREAL1:def_3; now__::_thesis:_(_(_p_<>_f_/._1_&_contradiction_)_or_(_p_=_f_/._1_&_x_in_{(f_._1)}_)_) percases ( p <> f /. 1 or p = f /. 1 ) ; caseA22: p <> f /. 1 ; ::_thesis: contradiction now__::_thesis:_(_(_f_/._(1_+_1)_in_LSeg_((f_/._1),(f_/._((len_f)_-'_1)))_&_contradiction_)_or_(_f_/._((len_f)_-'_1)_in_LSeg_((f_/._1),(f_/._(1_+_1)))_&_contradiction_)_) percases ( f /. (1 + 1) in LSeg ((f /. 1),(f /. ((len f) -' 1))) or f /. ((len f) -' 1) in LSeg ((f /. 1),(f /. (1 + 1))) ) by A13, A18, A22, Th41; caseA23: f /. (1 + 1) in LSeg ((f /. 1),(f /. ((len f) -' 1))) ; ::_thesis: contradiction ((len f) -' 1) + 1 = ((len f) - 1) + 1 by A2, XREAL_1:233, XXREAL_0:2 .= len f ; then A24: f /. (((len f) -' 1) + 1) = f /. 1 by FINSEQ_6:def_1; f /. (1 + 1) in LSeg ((f /. (1 + 1)),(f /. ((1 + 1) + 1))) by RLTOPSP1:68; then (LSeg ((f /. (1 + 1)),(f /. ((1 + 1) + 1)))) /\ (LSeg ((f /. ((len f) -' 1)),(f /. (((len f) -' 1) + 1)))) <> {} by A23, A24, XBOOLE_0:def_4; then LSeg ((f /. (1 + 1)),(f /. ((1 + 1) + 1))) meets LSeg ((f /. ((len f) -' 1)),(f /. (((len f) -' 1) + 1))) by XBOOLE_0:def_7; hence contradiction by A9, A3, A17, A19, A21, GOBOARD5:def_4; ::_thesis: verum end; caseA25: f /. ((len f) -' 1) in LSeg ((f /. 1),(f /. (1 + 1))) ; ::_thesis: contradiction f /. ((len f) -' 1) in LSeg ((f /. (((len f) -' 1) -' 1)),(f /. ((len f) -' 1))) by RLTOPSP1:68; then (LSeg (f,1)) /\ (LSeg (f,(((len f) -' 1) -' 1))) <> {} by A15, A20, A25, XBOOLE_0:def_4; then A26: LSeg (f,1) meets LSeg (f,(((len f) -' 1) -' 1)) by XBOOLE_0:def_7; (3 + 1) - 1 < (len f) - 1 by A2, XREAL_1:9; then (2 + 1) - 1 < ((len f) - 1) - 1 by XREAL_1:9; then A27: 1 + 1 < ((len f) -' 1) -' 1 by A3, A5, XREAL_1:233; (((len f) - 1) - 1) + 1 < len f by A19; then (((len f) -' 1) -' 1) + 1 < len f by A3, A5, XREAL_1:233; hence contradiction by A26, A27, GOBOARD5:def_4; ::_thesis: verum end; end; end; hence contradiction ; ::_thesis: verum end; case p = f /. 1 ; ::_thesis: x in {(f . 1)} then x in {(f /. 1)} by TARSKI:def_1; hence x in {(f . 1)} by A8, FINSEQ_4:15; ::_thesis: verum end; end; end; hence x in {(f . 1)} ; ::_thesis: verum end; 1 + 1 <= len f by GOBOARD7:34, XXREAL_0:2; then A28: f /. 1 in LSeg (f,1) by TOPREAL1:21; f . 1 = f /. 1 by A8, FINSEQ_4:15; then f . 1 in (LSeg (f,1)) /\ (LSeg (f,((len f) -' 1))) by A28, A6, A7, XBOOLE_0:def_4; then {(f . 1)} c= (LSeg (f,1)) /\ (LSeg (f,((len f) -' 1))) by ZFMISC_1:31; hence (LSeg (f,1)) /\ (LSeg (f,((len f) -' 1))) = {(f . 1)} by A10, XBOOLE_0:def_10; ::_thesis: verum end; theorem Th43: :: JORDAN4:43 for f being non constant standard special_circular_sequence for i1, i2 being Element of NAT for g1, g2 being FinSequence of (TOP-REAL 2) st 1 <= i1 & i1 < i2 & i2 < len f & g1 = mid (f,i1,i2) & g2 = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) holds ( (L~ g1) /\ (L~ g2) = {(f . i1),(f . i2)} & (L~ g1) \/ (L~ g2) = L~ f ) proof let f be non constant standard special_circular_sequence; ::_thesis: for i1, i2 being Element of NAT for g1, g2 being FinSequence of (TOP-REAL 2) st 1 <= i1 & i1 < i2 & i2 < len f & g1 = mid (f,i1,i2) & g2 = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) holds ( (L~ g1) /\ (L~ g2) = {(f . i1),(f . i2)} & (L~ g1) \/ (L~ g2) = L~ f ) let i1, i2 be Element of NAT ; ::_thesis: for g1, g2 being FinSequence of (TOP-REAL 2) st 1 <= i1 & i1 < i2 & i2 < len f & g1 = mid (f,i1,i2) & g2 = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) holds ( (L~ g1) /\ (L~ g2) = {(f . i1),(f . i2)} & (L~ g1) \/ (L~ g2) = L~ f ) let g1, g2 be FinSequence of (TOP-REAL 2); ::_thesis: ( 1 <= i1 & i1 < i2 & i2 < len f & g1 = mid (f,i1,i2) & g2 = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) implies ( (L~ g1) /\ (L~ g2) = {(f . i1),(f . i2)} & (L~ g1) \/ (L~ g2) = L~ f ) ) assume that A1: 1 <= i1 and A2: i1 < i2 and A3: i2 < len f and A4: g1 = mid (f,i1,i2) and A5: g2 = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) ; ::_thesis: ( (L~ g1) /\ (L~ g2) = {(f . i1),(f . i2)} & (L~ g1) \/ (L~ g2) = L~ f ) A6: i1 < len f by A2, A3, XXREAL_0:2; then A7: 1 < len f by A1, XXREAL_0:2; then A8: L~ (mid (f,i1,1)) c= L~ f by A1, A6, Th35; A9: 1 < i2 by A1, A2, XXREAL_0:2; then A10: len (mid (f,i1,i2)) = (i2 -' i1) + 1 by A1, A2, A3, A6, FINSEQ_6:118; A11: i2 + 1 <= len f by A3, NAT_1:13; then A12: (i2 + 1) - 1 <= (len f) - 1 by XREAL_1:9; then A13: i2 <= (len f) -' 1 by A1, A6, XREAL_1:233, XXREAL_0:2; then A14: (((len f) -' 1) -' i2) + 1 = (((len f) -' 1) - i2) + 1 by XREAL_1:233 .= (((len f) - 1) - i2) + 1 by A1, A6, XREAL_1:233, XXREAL_0:2 .= (len f) - i2 ; A15: 0 < i2 - i1 by A2, XREAL_1:50; then 0 < i2 -' i1 by A2, XREAL_1:233; then 0 + 1 <= i2 -' i1 by NAT_1:13; then 1 < len g1 by A4, A10, NAT_1:13; then A16: 1 + 1 <= len g1 by NAT_1:13; A17: {(f . i1)} c= L~ g1 proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in {(f . i1)} or x in L~ g1 ) assume x in {(f . i1)} ; ::_thesis: x in L~ g1 then A18: x = f . i1 by TARSKI:def_1; g1 . 1 = f . i1 by A1, A3, A4, A9, A6, FINSEQ_6:118; hence x in L~ g1 by A16, A18, JORDAN3:1; ::_thesis: verum end; A19: 0 + 1 <= (((len f) -' 1) -' i2) + 1 by NAT_1:13; A20: len (mid (f,i1,1)) = (i1 -' 1) + 1 by A1, A6, Th9; then A21: 0 + 1 <= len (mid (f,i1,1)) by NAT_1:13; A22: (len f) -' 1 < ((len f) -' 1) + 1 by NAT_1:13; then A23: (len f) -' 1 < len f by A1, A6, XREAL_1:235, XXREAL_0:2; then A24: len (mid (f,((len f) -' 1),i2)) = (((len f) -' 1) -' i2) + 1 by A9, A13, Th9; then A25: 1 <= len (mid (f,((len f) -' 1),i2)) by NAT_1:11; A26: 1 < (len f) -' 1 by A9, A13, XXREAL_0:2; then A27: f /. ((len f) -' 1) = f . ((len f) -' 1) by A23, FINSEQ_4:15 .= (mid (f,((len f) -' 1),i2)) . 1 by A3, A9, A26, A23, FINSEQ_6:118 .= (mid (f,((len f) -' 1),i2)) /. 1 by A25, FINSEQ_4:15 ; ((len f) -' 1) + 1 = len f by A1, A6, XREAL_1:235, XXREAL_0:2; then A28: LSeg (f,((len f) -' 1)) = LSeg ((f /. (((len f) -' 1) + 1)),(f /. ((len f) -' 1))) by A26, TOPREAL1:def_3; A29: f /. (((len f) -' 1) + 1) = f /. (len f) by A1, A6, XREAL_1:235, XXREAL_0:2 .= f /. 1 by FINSEQ_6:def_1 .= f . 1 by A7, FINSEQ_4:15 .= (mid (f,i1,1)) . (len (mid (f,i1,1))) by A1, A6, A7, Th11 .= (mid (f,i1,1)) /. (len (mid (f,i1,1))) by A21, FINSEQ_4:15 ; then LSeg (((mid (f,i1,1)) /. (len (mid (f,i1,1)))),((mid (f,((len f) -' 1),i2)) /. 1)) c= L~ f by A28, A27, TOPREAL3:19; then A30: (L~ (mid (f,i1,1))) \/ (LSeg (((mid (f,i1,1)) /. (len (mid (f,i1,1)))),((mid (f,((len f) -' 1),i2)) /. 1))) c= L~ f by A8, XBOOLE_1:8; A31: mid (f,i1,1) <> <*> (TOP-REAL 2) by A20; mid (f,((len f) -' 1),i2) <> <*> (TOP-REAL 2) by A24; then A32: L~ ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) = ((L~ (mid (f,i1,1))) \/ (LSeg (((mid (f,i1,1)) /. (len (mid (f,i1,1)))),((mid (f,((len f) -' 1),i2)) /. 1)))) \/ (L~ (mid (f,((len f) -' 1),i2))) by A31, SPPOL_2:23; A33: L~ f c= (L~ g1) \/ (L~ g2) proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in L~ f or x in (L~ g1) \/ (L~ g2) ) assume A34: x in L~ f ; ::_thesis: x in (L~ g1) \/ (L~ g2) then reconsider p = x as Point of (TOP-REAL 2) ; consider i being Element of NAT such that A35: 1 <= i and A36: i + 1 <= len f and A37: p in LSeg (f,i) by A34, SPPOL_2:13; now__::_thesis:_(_(_i1_<=_i_&_i_<_i2_&_x_in_(L~_g1)_\/_(L~_g2)_)_or_(_i_<_i1_&_x_in_(L~_g1)_\/_(L~_g2)_)_or_(_i2_<=_i_&_x_in_(L~_g1)_\/_(L~_g2)_)_) percases ( ( i1 <= i & i < i2 ) or i < i1 or i2 <= i ) ; caseA38: ( i1 <= i & i < i2 ) ; ::_thesis: x in (L~ g1) \/ (L~ g2) then i - i1 < i2 - i1 by XREAL_1:9; then (i - i1) + 1 < (i2 - i1) + 1 by XREAL_1:6; then (i -' i1) + 1 < (i2 - i1) + 1 by A38, XREAL_1:233; then A39: (i -' i1) + 1 < (i2 -' i1) + 1 by A2, XREAL_1:233; 0 <= i - i1 by A38, XREAL_1:48; then 0 + 1 <= (i - i1) + 1 by XREAL_1:6; then A40: 1 <= (i -' i1) + 1 by A38, XREAL_1:233; (((i -' i1) + 1) + i1) -' 1 = (((i -' i1) + 1) + i1) - 1 by A1, NAT_D:37 .= (i -' i1) + i1 .= i by A38, XREAL_1:235 ; then x in LSeg ((mid (f,i1,i2)),((i -' i1) + 1)) by A1, A2, A3, A37, A40, A39, Th19; then x in L~ (mid (f,i1,i2)) by SPPOL_2:17; hence x in (L~ g1) \/ (L~ g2) by A4, XBOOLE_0:def_3; ::_thesis: verum end; caseA41: i < i1 ; ::_thesis: x in (L~ g1) \/ (L~ g2) i1 + 1 <= i1 + i by A35, XREAL_1:6; then i1 < i1 + i by NAT_1:13; then i1 - i < (i1 + i) - i by XREAL_1:9; then i1 -' i < (i1 - 1) + 1 by A41, XREAL_1:233; then A42: i1 -' i < (i1 -' 1) + 1 by A1, XREAL_1:233; i1 <= i1 + i by NAT_1:11; then i1 - i <= (i1 + i) - i by XREAL_1:9; then i1 -' i <= i1 by A41, XREAL_1:233; then A43: i1 -' (i1 -' i) = i1 - (i1 -' i) by XREAL_1:233 .= i1 - (i1 - i) by A41, XREAL_1:233 .= i ; i + 1 <= i1 by A41, NAT_1:13; then (i + 1) - i <= i1 - i by XREAL_1:9; then A44: 1 <= i1 -' i by NAT_D:39; 1 < i1 by A35, A41, XXREAL_0:2; then x in LSeg ((mid (f,i1,1)),(i1 -' i)) by A6, A37, A42, A44, A43, Th20; then x in L~ (mid (f,i1,1)) by SPPOL_2:17; then x in (L~ (mid (f,i1,1))) \/ (LSeg (((mid (f,i1,1)) /. (len (mid (f,i1,1)))),((mid (f,((len f) -' 1),i2)) /. 1))) by XBOOLE_0:def_3; then x in L~ ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) by A32, XBOOLE_0:def_3; hence x in (L~ g1) \/ (L~ g2) by A5, XBOOLE_0:def_3; ::_thesis: verum end; caseA45: i2 <= i ; ::_thesis: x in (L~ g1) \/ (L~ g2) now__::_thesis:_(_(_i_+_1_=_len_f_&_x_in_(LSeg_(((mid_(f,i1,1))_/._(len_(mid_(f,i1,1)))),((mid_(f,((len_f)_-'_1),i2))_/._1)))_\/_(L~_(mid_(f,((len_f)_-'_1),i2)))_)_or_(_i_+_1_<_len_f_&_x_in_(LSeg_(((mid_(f,i1,1))_/._(len_(mid_(f,i1,1)))),((mid_(f,((len_f)_-'_1),i2))_/._1)))_\/_(L~_(mid_(f,((len_f)_-'_1),i2)))_)_) percases ( i + 1 = len f or i + 1 < len f ) by A36, XXREAL_0:1; case i + 1 = len f ; ::_thesis: x in (LSeg (((mid (f,i1,1)) /. (len (mid (f,i1,1)))),((mid (f,((len f) -' 1),i2)) /. 1))) \/ (L~ (mid (f,((len f) -' 1),i2))) then i = (len f) - 1 ; then i = (len f) -' 1 by A1, A6, XREAL_1:233, XXREAL_0:2; hence x in (LSeg (((mid (f,i1,1)) /. (len (mid (f,i1,1)))),((mid (f,((len f) -' 1),i2)) /. 1))) \/ (L~ (mid (f,((len f) -' 1),i2))) by A28, A29, A27, A37, XBOOLE_0:def_3; ::_thesis: verum end; case i + 1 < len f ; ::_thesis: x in (LSeg (((mid (f,i1,1)) /. (len (mid (f,i1,1)))),((mid (f,((len f) -' 1),i2)) /. 1))) \/ (L~ (mid (f,((len f) -' 1),i2))) then (i + 1) + 1 <= len f by NAT_1:13; then ((i + 1) + 1) - 1 <= (len f) - 1 by XREAL_1:9; then A46: i + 1 <= (len f) -' 1 by A1, A6, XREAL_1:233, XXREAL_0:2; then A47: i < (len f) -' 1 by NAT_1:13; then ((len f) -' 1) - (((len f) -' 1) -' i) = ((len f) -' 1) - (((len f) -' 1) - i) by XREAL_1:233 .= i ; then A48: ((len f) -' 1) -' (((len f) -' 1) -' i) = i by XREAL_0:def_2; i2 < i + 1 by A45, NAT_1:13; then ((len f) -' 1) + i2 < ((len f) -' 1) + (i + 1) by XREAL_1:6; then (((len f) -' 1) + i2) - i2 < (((len f) -' 1) + (i + 1)) - i2 by XREAL_1:9; then ((len f) -' 1) - i < (((((len f) -' 1) + 1) + i) - i2) - i by XREAL_1:9; then ((len f) -' 1) - i < (((len f) -' 1) - i2) + 1 ; then ((len f) -' 1) - i < (((len f) -' 1) -' i2) + 1 by A45, A47, XREAL_1:233, XXREAL_0:2; then A49: ((len f) -' 1) -' i < (((len f) -' 1) -' i2) + 1 by A47, XREAL_1:233; (i + 1) - i <= ((len f) -' 1) - i by A46, XREAL_1:9; then A50: 1 <= ((len f) -' 1) -' i by NAT_D:39; i2 < (len f) -' 1 by A45, A47, XXREAL_0:2; then x in LSeg ((mid (f,((len f) -' 1),i2)),(((len f) -' 1) -' i)) by A9, A23, A37, A50, A49, A48, Th20; then x in L~ (mid (f,((len f) -' 1),i2)) by SPPOL_2:17; hence x in (LSeg (((mid (f,i1,1)) /. (len (mid (f,i1,1)))),((mid (f,((len f) -' 1),i2)) /. 1))) \/ (L~ (mid (f,((len f) -' 1),i2))) by XBOOLE_0:def_3; ::_thesis: verum end; end; end; then x in (L~ (mid (f,i1,1))) \/ ((LSeg (((mid (f,i1,1)) /. (len (mid (f,i1,1)))),((mid (f,((len f) -' 1),i2)) /. 1))) \/ (L~ (mid (f,((len f) -' 1),i2)))) by XBOOLE_0:def_3; then x in L~ ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) by A32, XBOOLE_1:4; hence x in (L~ g1) \/ (L~ g2) by A5, XBOOLE_0:def_3; ::_thesis: verum end; end; end; hence x in (L~ g1) \/ (L~ g2) ; ::_thesis: verum end; A51: i1 + 1 <= len f by A6, NAT_1:13; (i2 + 1) - i2 <= (len f) - i2 by A11, XREAL_1:9; then A52: 1 <= (len f) -' i2 by NAT_D:39; A53: len g2 = (len (mid (f,i1,1))) + (len (mid (f,((len f) -' 1),i2))) by A5, FINSEQ_1:22 .= ((i1 -' 1) + 1) + ((((len f) -' 1) -' i2) + 1) by A1, A6, A24, Th9 .= i1 + ((((len f) -' 1) -' i2) + 1) by A1, XREAL_1:235 ; then A54: 1 + 1 <= len g2 by A1, A19, XREAL_1:7; A55: {(f . i1)} c= L~ g2 proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in {(f . i1)} or x in L~ g2 ) assume x in {(f . i1)} ; ::_thesis: x in L~ g2 then A56: x = f . i1 by TARSKI:def_1; g2 . 1 = (mid (f,i1,1)) . 1 by A5, A21, FINSEQ_1:64 .= f . i1 by A1, A6, A7, FINSEQ_6:118 ; hence x in L~ g2 by A54, A56, JORDAN3:1; ::_thesis: verum end; A57: ((len f) -' 1) + 1 = len f by A1, A6, XREAL_1:235, XXREAL_0:2; A58: (L~ g1) /\ (L~ g2) c= {(f . i1),(f . i2)} proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in (L~ g1) /\ (L~ g2) or x in {(f . i1),(f . i2)} ) assume A59: x in (L~ g1) /\ (L~ g2) ; ::_thesis: x in {(f . i1),(f . i2)} then reconsider p = x as Point of (TOP-REAL 2) ; x in L~ g1 by A59, XBOOLE_0:def_4; then consider i being Element of NAT such that A60: 1 <= i and A61: i + 1 <= len (mid (f,i1,i2)) and A62: p in LSeg ((mid (f,i1,i2)),i) by A4, SPPOL_2:13; A63: i < (i2 -' i1) + 1 by A10, A61, NAT_1:13; then A64: LSeg ((mid (f,i1,i2)),i) = LSeg (f,((i + i1) -' 1)) by A1, A2, A3, A60, Th19; i + 1 <= (i2 -' i1) + 1 by A1, A2, A3, A9, A6, A61, FINSEQ_6:118; then A65: (i + 1) - 1 <= ((i2 -' i1) + 1) - 1 by XREAL_1:9; x in L~ ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) by A5, A59, XBOOLE_0:def_4; then A66: ( x in (L~ (mid (f,i1,1))) \/ (LSeg (((mid (f,i1,1)) /. (len (mid (f,i1,1)))),((mid (f,((len f) -' 1),i2)) /. 1))) or x in L~ (mid (f,((len f) -' 1),i2)) ) by A32, XBOOLE_0:def_3; now__::_thesis:_(_(_x_in_L~_(mid_(f,i1,1))_&_x_in_{(f_._i1),(f_._i2)}_)_or_(_x_in_LSeg_(((mid_(f,i1,1))_/._(len_(mid_(f,i1,1)))),((mid_(f,((len_f)_-'_1),i2))_/._1))_&_x_in_{(f_._i1),(f_._i2)}_)_or_(_x_in_L~_(mid_(f,((len_f)_-'_1),i2))_&_x_in_{(f_._i1),(f_._i2)}_)_) percases ( x in L~ (mid (f,i1,1)) or x in LSeg (((mid (f,i1,1)) /. (len (mid (f,i1,1)))),((mid (f,((len f) -' 1),i2)) /. 1)) or x in L~ (mid (f,((len f) -' 1),i2)) ) by A66, XBOOLE_0:def_3; case x in L~ (mid (f,i1,1)) ; ::_thesis: x in {(f . i1),(f . i2)} then consider k being Element of NAT such that A67: 1 <= k and A68: k + 1 <= len (mid (f,i1,1)) and A69: p in LSeg ((mid (f,i1,1)),k) by SPPOL_2:13; now__::_thesis:_(_(_i1_<>_1_&_x_in_{(f_._i1),(f_._i2)}_)_or_(_i1_=_1_&_contradiction_)_) percases ( i1 <> 1 or i1 = 1 ) ; case i1 <> 1 ; ::_thesis: x in {(f . i1),(f . i2)} then A70: 1 < i1 by A1, XXREAL_0:1; then 1 + 1 <= i1 by NAT_1:13; then A71: (1 + 1) - 1 <= i1 - 1 by XREAL_1:9; set k3 = i1 -' k; set i3 = (i + i1) -' 1; A72: (i + i1) -' 1 = (i + i1) - 1 by A1, NAT_D:37; A73: k < (i1 -' 1) + 1 by A20, A68, NAT_1:13; (i1 -' 1) + 1 = i1 by A1, XREAL_1:235; then A74: i1 -' k = i1 - k by A73, XREAL_1:233; i1 <= len f by A2, A3, XXREAL_0:2; then A75: LSeg ((mid (f,i1,1)),k) = LSeg (f,(i1 -' k)) by A67, A70, A73, Th20; then A76: x in (LSeg (f,(i1 -' k))) /\ (LSeg (f,((i + i1) -' 1))) by A62, A64, A69, XBOOLE_0:def_4; A77: LSeg (f,(i1 -' k)) meets LSeg (f,((i + i1) -' 1)) by A62, A64, A69, A75, XBOOLE_0:3; 1 + 1 <= i + k by A60, A67, XREAL_1:7; then 1 < i + k by XXREAL_0:2; then 1 - k < (i + k) - k by XREAL_1:9; then (1 - k) - 1 < i - 1 by XREAL_1:9; then i1 + ((1 - k) - 1) < i1 + (i - 1) by XREAL_1:6; then A78: (i1 -' k) + 1 <= (i + i1) -' 1 by A74, A72, NAT_1:13; A79: now__::_thesis:_not_(i1_-'_k)_+_1_<>_(i_+_i1)_-'_1 i < (i2 - i1) + 1 by A2, A63, XREAL_1:233; then A80: i + i1 < ((i2 - i1) + 1) + i1 by XREAL_1:6; assume (i1 -' k) + 1 <> (i + i1) -' 1 ; ::_thesis: contradiction then A81: (i1 -' k) + 1 < (i + i1) -' 1 by A78, XXREAL_0:1; i2 + 1 <= len f by A3, NAT_1:13; then ((i + i1) - 1) + 1 < len f by A80, XXREAL_0:2; hence contradiction by A72, A77, A81, GOBOARD5:def_4; ::_thesis: verum end; then A82: 1 + 1 = ((i + k) - 1) + 1 by A74, A72; A83: now__::_thesis:_(_i_=_1_&_k_=_1_) assume A84: ( not i = 1 or not k = 1 ) ; ::_thesis: contradiction now__::_thesis:_(_(_i_<>_1_&_contradiction_)_or_(_k_<>_1_&_contradiction_)_) percases ( i <> 1 or k <> 1 ) by A84; case i <> 1 ; ::_thesis: contradiction then 1 < i by A60, XXREAL_0:1; hence contradiction by A67, A82, XREAL_1:8; ::_thesis: verum end; case k <> 1 ; ::_thesis: contradiction then 1 < k by A67, XXREAL_0:1; hence contradiction by A60, A82, XREAL_1:8; ::_thesis: verum end; end; end; hence contradiction ; ::_thesis: verum end; then A85: (i + i1) -' 1 = i1 by NAT_D:34; (i1 -' k) + 2 = ((i1 -' 1) + 1) + 1 by A83 .= i1 + 1 by A1, XREAL_1:235 ; then x in {(f /. ((i1 -' k) + 1))} by A51, A76, A79, A71, TOPREAL1:def_6; then A86: x = f /. i1 by A79, A85, TARSKI:def_1; f /. i1 = f . i1 by A1, A6, FINSEQ_4:15; hence x in {(f . i1),(f . i2)} by A86, TARSKI:def_2; ::_thesis: verum end; caseA87: i1 = 1 ; ::_thesis: contradiction A88: 1 + 1 <= k + 1 by A67, XREAL_1:6; len (mid (f,1,1)) = 1 by A7, Th15; hence contradiction by A68, A87, A88, XXREAL_0:2; ::_thesis: verum end; end; end; hence x in {(f . i1),(f . i2)} ; ::_thesis: verum end; caseA89: x in LSeg (((mid (f,i1,1)) /. (len (mid (f,i1,1)))),((mid (f,((len f) -' 1),i2)) /. 1)) ; ::_thesis: x in {(f . i1),(f . i2)} (i2 + 1) - i2 <= (len f) - i2 by A11, XREAL_1:9; then A90: (mid (f,((len f) -' 1),i2)) /. 1 = (mid (f,((len f) -' 1),i2)) . 1 by A24, A14, FINSEQ_4:15 .= f . ((len f) -' 1) by A3, A9, A26, A23, FINSEQ_6:118 .= f /. ((len f) -' 1) by A26, A23, FINSEQ_4:15 ; (mid (f,i1,1)) /. (len (mid (f,i1,1))) = (mid (f,i1,1)) . (len (mid (f,i1,1))) by A21, FINSEQ_4:15 .= f . 1 by A1, A6, A7, Th11 .= f /. 1 by A7, FINSEQ_4:15 .= f /. (len f) by FINSEQ_6:def_1 ; then x in LSeg (f,((len f) -' 1)) by A26, A57, A89, A90, TOPREAL1:def_3; then A91: x in (LSeg (f,((i + i1) -' 1))) /\ (LSeg (f,((len f) -' 1))) by A62, A64, XBOOLE_0:def_4; then A92: LSeg (f,((i + i1) -' 1)) meets LSeg (f,((len f) -' 1)) by XBOOLE_0:4; now__::_thesis:_(_(_(_1_<_i1_or_1_<_i_)_&_x_in_{(f_._i1),(f_._i2)}_)_or_(_not_1_<_i1_&_not_1_<_i_&_x_in_{(f_._i1),(f_._i2)}_)_) percases ( 1 < i1 or 1 < i or ( not 1 < i1 & not 1 < i ) ) ; caseA93: ( 1 < i1 or 1 < i ) ; ::_thesis: x in {(f . i1),(f . i2)} A94: now__::_thesis:_not_((i_+_i1)_-'_1)_+_1_<_(len_f)_-'_1 1 + 1 < i + i1 by A1, A60, A93, XREAL_1:8; then 1 + 1 < ((i + i1) -' 1) + 1 by XREAL_1:235, XXREAL_0:2; then A95: (1 + 1) - 1 < (((i + i1) -' 1) + 1) - 1 by XREAL_1:9; assume A96: ((i + i1) -' 1) + 1 < (len f) -' 1 ; ::_thesis: contradiction (len f) -' 1 < len f by A1, A6, A22, XREAL_1:235, XXREAL_0:2; hence contradiction by A92, A96, A95, GOBOARD5:def_4; ::_thesis: verum end; set i3 = (i + i1) -' 1; ((len f) - 1) + 1 <= len f ; then A97: ((len f) -' 1) + 1 <= len f by A1, A6, XREAL_1:233, XXREAL_0:2; 1 + 1 <= i + i1 by A1, A60, XREAL_1:7; then (1 + 1) - 1 <= (i + i1) - 1 by XREAL_1:9; then A98: 1 <= (i + i1) -' 1 by A1, NAT_D:37; i <= i2 - i1 by A2, A65, XREAL_1:233; then i + i1 <= (i2 - i1) + i1 by XREAL_1:6; then i + i1 < len f by A3, XXREAL_0:2; then (i + i1) - 1 < (len f) - 1 by XREAL_1:9; then (i + i1) -' 1 < (len f) - 1 by A1, NAT_D:37; then (i + i1) -' 1 < (len f) -' 1 by A1, A6, XREAL_1:233, XXREAL_0:2; then A99: ((i + i1) -' 1) + 1 <= (len f) -' 1 by NAT_1:13; then A100: ((i + i1) -' 1) + 1 = (len f) -' 1 by A94, XXREAL_0:1; A101: (i + i1) -' 1 = (i + i1) - 1 by A1, NAT_D:37; now__::_thesis:_not_i2_<_(len_f)_-'_1 i + i1 <= (i2 -' i1) + i1 by A65, XREAL_1:6; then A102: i + i1 <= (i2 - i1) + i1 by A15, XREAL_0:def_2; assume i2 < (len f) -' 1 ; ::_thesis: contradiction hence contradiction by A99, A94, A101, A102, XXREAL_0:1; ::_thesis: verum end; then A103: ((i + i1) -' 1) + 1 = i2 by A13, A100, XXREAL_0:1; ((i + i1) -' 1) + 1 = (len f) -' 1 by A99, A94, XXREAL_0:1; then ((i + i1) -' 1) + 2 <= len f by A97; then x in {(f /. (((i + i1) -' 1) + 1))} by A91, A98, A100, TOPREAL1:def_6; then A104: x = f /. i2 by A103, TARSKI:def_1; f /. i2 = f . i2 by A3, A9, FINSEQ_4:15; hence x in {(f . i1),(f . i2)} by A104, TARSKI:def_2; ::_thesis: verum end; caseA105: ( not 1 < i1 & not 1 < i ) ; ::_thesis: x in {(f . i1),(f . i2)} then i = 1 by A60, XXREAL_0:1; then A106: (i + i1) -' 1 = (1 + 1) -' 1 by A1, A105, XXREAL_0:1 .= 1 by NAT_D:34 ; A107: i1 = 1 by A1, A105, XXREAL_0:1; (LSeg (f,1)) /\ (LSeg (f,((len f) -' 1))) = {(f . 1)} by Th42; then x = f . 1 by A91, A106, TARSKI:def_1; hence x in {(f . i1),(f . i2)} by A107, TARSKI:def_2; ::_thesis: verum end; end; end; hence x in {(f . i1),(f . i2)} ; ::_thesis: verum end; case x in L~ (mid (f,((len f) -' 1),i2)) ; ::_thesis: x in {(f . i1),(f . i2)} then consider k being Element of NAT such that A108: 1 <= k and A109: k + 1 <= len (mid (f,((len f) -' 1),i2)) and A110: p in LSeg ((mid (f,((len f) -' 1),i2)),k) by SPPOL_2:13; A111: k < (((len f) -' 1) -' i2) + 1 by A24, A109, NAT_1:13; then A112: k <= ((len f) -' 1) -' i2 by NAT_1:13; k < (len f) -' i2 by A3, A14, A111, XREAL_1:233; then k + 1 <= (len f) -' i2 by NAT_1:13; then (k + 1) - 1 <= ((len f) -' i2) - 1 by XREAL_1:9; then A113: k <= ((len f) -' i2) -' 1 by A52, XREAL_1:233; A114: ((len f) -' i2) -' 1 = ((len f) -' i2) - 1 by A52, XREAL_1:233 .= ((len f) - i2) - 1 by A3, XREAL_1:233 .= ((len f) - 1) - i2 .= ((len f) -' 1) - i2 by A1, A6, XREAL_1:233, XXREAL_0:2 .= ((len f) -' 1) -' i2 by A13, XREAL_1:233 ; A115: k < (len f) - i2 by A24, A14, A109, NAT_1:13; then k + i2 < ((len f) - i2) + i2 by XREAL_1:6; then A116: (k + i2) - k < (len f) - k by XREAL_1:9; then A117: 1 < (len f) - k by A9, XXREAL_0:2; then 1 + k < ((len f) - k) + k by XREAL_1:6; then (1 + k) - 1 < (len f) - 1 by XREAL_1:9; then A118: k < (len f) -' 1 by A1, A6, XREAL_1:233, XXREAL_0:2; 1 < (len f) -' k by A117, XREAL_0:def_2; then A119: ((len f) -' k) -' 1 = ((len f) -' k) - 1 by XREAL_1:233 .= ((len f) - k) - 1 by A116, XREAL_0:def_2 .= ((len f) - 1) - k .= ((len f) -' 1) - k by A1, A6, XREAL_1:233, XXREAL_0:2 .= ((len f) -' 1) -' k by A118, XREAL_1:233 ; now__::_thesis:_(_(_i2_<>_(len_f)_-'_1_&_x_in_{(f_._i1),(f_._i2)}_)_or_(_i2_=_(len_f)_-'_1_&_contradiction_)_) percases ( i2 <> (len f) -' 1 or i2 = (len f) -' 1 ) ; case i2 <> (len f) -' 1 ; ::_thesis: x in {(f . i1),(f . i2)} then A120: i2 < (len f) -' 1 by A13, XXREAL_0:1; A121: k < (((len f) -' 1) -' i2) + 1 by A24, A109, NAT_1:13; k + (i2 - 1) < ((len f) - i2) + (i2 - 1) by A115, XREAL_1:6; then A122: k + (i2 -' 1) < (len f) - 1 by A1, A2, XREAL_1:233, XXREAL_0:2; k <= k + (i2 -' 1) by NAT_1:11; then A123: k < (len f) - 1 by A122, XXREAL_0:2; then k + 1 < ((len f) - 1) + 1 by XREAL_1:6; then (k + 1) - k < (len f) - k by XREAL_1:9; then A124: 1 < (len f) -' k by NAT_D:39; i2 + (((len f) -' 1) - i2) < len f by A1, A6, A22, XREAL_1:235, XXREAL_0:2; then ((i2 - i1) + i1) + (((len f) -' 1) -' i2) < len f by A13, XREAL_1:233; then A125: ((i2 -' i1) + i1) + (((len f) -' 1) -' i2) < len f by A2, XREAL_1:233; set k3 = ((len f) -' 1) -' k; set i3 = (i + i1) -' 1; A126: 1 <= i2 by A1, A2, XXREAL_0:2; i + i1 <= (i2 -' i1) + i1 by A65, XREAL_1:6; then A127: (i + i1) + k <= ((i2 -' i1) + i1) + k by XREAL_1:6; ((i2 -' i1) + i1) + k <= ((i2 -' i1) + i1) + (((len f) -' 1) -' i2) by A112, XREAL_1:6; then (i + i1) + k <= ((i2 -' i1) + i1) + (((len f) -' 1) -' i2) by A127, XXREAL_0:2; then (i + i1) + k < len f by A125, XXREAL_0:2; then A128: ((i + i1) + k) - k < (len f) - k by XREAL_1:9; k < (len f) -' 1 by A1, A6, A123, XREAL_1:233, XXREAL_0:2; then A129: ((len f) -' 1) -' k = ((len f) -' 1) - k by XREAL_1:233; len f < (len f) + 1 by NAT_1:13; then (len f) - 1 < ((len f) + 1) - 1 by XREAL_1:9; then (len f) -' k = (len f) - k by A123, XREAL_1:233, XXREAL_0:2; then (i + i1) - 1 < ((len f) -' k) - 1 by A128, XREAL_1:9; then (i + i1) - 1 < ((len f) -' k) -' 1 by A124, XREAL_1:233; then (i + i1) -' 1 < ((len f) -' 1) -' k by A60, A119, NAT_D:37; then A130: ((i + i1) -' 1) + 1 <= ((len f) -' 1) -' k by NAT_1:13; (len f) -' 1 <= len f by A1, A6, A22, XREAL_1:235, XXREAL_0:2; then A131: LSeg ((mid (f,((len f) -' 1),i2)),k) = LSeg (f,(((len f) -' 1) -' k)) by A108, A126, A120, A121, Th20; then A132: LSeg (f,((i + i1) -' 1)) meets LSeg (f,(((len f) -' 1) -' k)) by A62, A64, A110, XBOOLE_0:3; A133: now__::_thesis:_((i_+_i1)_-'_1)_+_1_=_((len_f)_-'_1)_-'_k ((len f) -' 1) + 1 <= ((len f) -' 1) + k by A108, XREAL_1:6; then (((len f) -' 1) + 1) - k <= (((len f) -' 1) + k) - k by XREAL_1:9; then A134: (((len f) -' 1) -' k) + 1 < len f by A23, A129, XXREAL_0:2; assume not ((i + i1) -' 1) + 1 = ((len f) -' 1) -' k ; ::_thesis: contradiction then ((i + i1) -' 1) + 1 < ((len f) -' 1) -' k by A130, XXREAL_0:1; hence contradiction by A132, A134, GOBOARD5:def_4; ::_thesis: verum end; (i + i1) -' 1 = (i + i1) - 1 by A1, NAT_D:37; then A135: ((len f) - 1) - k = ((i1 + i) - 1) + 1 by A1, A6, A129, A133, XREAL_1:233, XXREAL_0:2; A136: now__::_thesis:_(_i_=_i2_-'_i1_&_k_=_((len_f)_-'_1)_-'_i2_) assume A137: ( not i = i2 -' i1 or not k = ((len f) -' 1) -' i2 ) ; ::_thesis: contradiction now__::_thesis:_(_(_i_<>_i2_-'_i1_&_contradiction_)_or_(_k_<>_((len_f)_-'_1)_-'_i2_&_contradiction_)_) percases ( i <> i2 -' i1 or k <> ((len f) -' 1) -' i2 ) by A137; case i <> i2 -' i1 ; ::_thesis: contradiction then i < i2 -' i1 by A65, XXREAL_0:1; then i + k < (i2 -' i1) + (((len f) -' i2) -' 1) by A113, XREAL_1:8; then i + k < (i2 - i1) + (((len f) -' i2) -' 1) by A2, XREAL_1:233; then i + k < (i2 - i1) + (((len f) -' i2) - 1) by A52, XREAL_1:233; then i + k < (i2 - i1) + (((len f) - i2) - 1) by A3, XREAL_1:233; hence contradiction by A135; ::_thesis: verum end; case k <> ((len f) -' 1) -' i2 ; ::_thesis: contradiction then k < ((len f) -' 1) -' i2 by A112, XXREAL_0:1; then i + k < (i2 -' i1) + (((len f) -' i2) -' 1) by A65, A114, XREAL_1:8; then i + k < (i2 - i1) + (((len f) -' i2) -' 1) by A2, XREAL_1:233; then i + k < (i2 - i1) + (((len f) -' i2) - 1) by A52, XREAL_1:233; then i + k < (i2 - i1) + (((len f) - i2) - 1) by A3, XREAL_1:233; hence contradiction by A135; ::_thesis: verum end; end; end; hence contradiction ; ::_thesis: verum end; then (i + i1) -' 1 = ((i2 -' i1) + i1) - 1 by A1, NAT_D:37 .= ((i2 - i1) + i1) - 1 by A2, XREAL_1:233 .= i2 - 1 ; then A138: ((i + i1) -' 1) + 2 = i2 + 1 ; 1 + 1 <= i2 by A9, NAT_1:13; then A139: (1 + 1) - 1 <= i2 - 1 by XREAL_1:9; A140: (len f) -' 1 = (len f) - 1 by A1, A6, XREAL_1:233, XXREAL_0:2; len f <= (len f) + i2 by NAT_1:11; then ((len f) -' 1) + 1 <= (len f) + i2 by A1, A6, XREAL_1:235, XXREAL_0:2; then (((len f) -' 1) + 1) - i2 <= ((len f) + i2) - i2 by XREAL_1:9; then ((((len f) -' 1) + 1) - i2) - 1 <= (len f) - 1 by XREAL_1:9; then ((len f) -' 1) - i2 <= (len f) - 1 ; then ((len f) -' 1) -' i2 <= (len f) -' 1 by A12, A140, XREAL_1:233; then A141: ((len f) -' 1) -' k = ((len f) -' 1) - (((len f) -' 1) -' i2) by A136, XREAL_1:233 .= ((len f) - 1) - (((len f) - 1) - i2) by A12, A140, XREAL_1:233 .= i2 ; x in (LSeg (f,((i + i1) -' 1))) /\ (LSeg (f,(((len f) -' 1) -' k))) by A62, A64, A110, A131, XBOOLE_0:def_4; then x in {(f /. (((i + i1) -' 1) + 1))} by A11, A133, A138, A139, TOPREAL1:def_6; then x = f /. i2 by A133, A141, TARSKI:def_1; then x = f . i2 by A3, A9, FINSEQ_4:15; hence x in {(f . i1),(f . i2)} by TARSKI:def_2; ::_thesis: verum end; caseA142: i2 = (len f) -' 1 ; ::_thesis: contradiction A143: 1 + 1 <= k + 1 by A108, XREAL_1:6; len (mid (f,((len f) -' 1),((len f) -' 1))) = 1 by A26, A23, Th15; hence contradiction by A109, A142, A143, XXREAL_0:2; ::_thesis: verum end; end; end; hence x in {(f . i1),(f . i2)} ; ::_thesis: verum end; end; end; hence x in {(f . i1),(f . i2)} ; ::_thesis: verum end; A144: len (mid (f,i1,1)) = i1 by A1, A20, XREAL_1:235; {(f . i2)} c= L~ g2 proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in {(f . i2)} or x in L~ g2 ) assume x in {(f . i2)} ; ::_thesis: x in L~ g2 then A145: x = f . i2 by TARSKI:def_1; g2 . (len g2) = (mid (f,((len f) -' 1),i2)) . ((((len f) -' 1) -' i2) + 1) by A5, A144, A24, A19, A53, FINSEQ_1:65 .= f . i2 by A3, A9, A26, A23, A24, Th11 ; hence x in L~ g2 by A54, A145, JORDAN3:1; ::_thesis: verum end; then {(f . i1)} \/ {(f . i2)} c= L~ g2 by A55, XBOOLE_1:8; then A146: {(f . i1),(f . i2)} c= L~ g2 by ENUMSET1:1; {(f . i2)} c= L~ g1 proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in {(f . i2)} or x in L~ g1 ) assume x in {(f . i2)} ; ::_thesis: x in L~ g1 then A147: x = f . i2 by TARSKI:def_1; g1 . (len g1) = f . i2 by A1, A3, A4, A9, A6, Th11; hence x in L~ g1 by A16, A147, JORDAN3:1; ::_thesis: verum end; then {(f . i1)} \/ {(f . i2)} c= L~ g1 by A17, XBOOLE_1:8; then {(f . i1),(f . i2)} c= L~ g1 by ENUMSET1:1; then A148: {(f . i1),(f . i2)} c= (L~ g1) /\ (L~ g2) by A146, XBOOLE_1:19; L~ (mid (f,((len f) -' 1),i2)) c= L~ f by A3, A9, A26, A23, Th35; then A149: L~ g2 c= L~ f by A5, A32, A30, XBOOLE_1:8; L~ g1 c= L~ f by A1, A3, A4, A9, A6, Th35; then (L~ g1) \/ (L~ g2) c= L~ f by A149, XBOOLE_1:8; hence ( (L~ g1) /\ (L~ g2) = {(f . i1),(f . i2)} & (L~ g1) \/ (L~ g2) = L~ f ) by A58, A148, A33, XBOOLE_0:def_10; ::_thesis: verum end; theorem Th44: :: JORDAN4:44 for f being non constant standard special_circular_sequence for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part>_of f,i1,i2 & i1 < i2 holds L~ g is_S-P_arc_joining f /. i1,f /. i2 proof let f be non constant standard special_circular_sequence; ::_thesis: for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part>_of f,i1,i2 & i1 < i2 holds L~ g is_S-P_arc_joining f /. i1,f /. i2 let g be FinSequence of (TOP-REAL 2); ::_thesis: for i1, i2 being Element of NAT st g is_a_part>_of f,i1,i2 & i1 < i2 holds L~ g is_S-P_arc_joining f /. i1,f /. i2 let i1, i2 be Element of NAT ; ::_thesis: ( g is_a_part>_of f,i1,i2 & i1 < i2 implies L~ g is_S-P_arc_joining f /. i1,f /. i2 ) assume that A1: g is_a_part>_of f,i1,i2 and A2: i1 < i2 ; ::_thesis: L~ g is_S-P_arc_joining f /. i1,f /. i2 A3: 1 <= i1 by A1, Def2; i1 + 1 <= len f by A1, Def2; then A4: i1 < len f by NAT_1:13; then A5: f /. i1 = f . i1 by A3, FINSEQ_4:15; A6: i2 + 1 <= len f by A1, Def2; then A7: i2 < len f by NAT_1:13; A8: 1 <= len g by A1, Def2; then A9: g /. (len g) = g . (len g) by FINSEQ_4:15; A10: 1 <= i2 by A1, Def2; A11: g = mid (f,i1,i2) by A1, A2, Th25; then g . 1 = f . i1 by A3, A10, A4, A7, FINSEQ_6:118; then A12: f /. i1 = g /. 1 by A8, A5, FINSEQ_4:15; g . (len g) = f . i2 by A1, Def2; then A13: f /. i2 = g /. (len g) by A10, A7, A9, FINSEQ_4:15; g is being_S-Seq by A2, A11, A3, A6, Th39; hence L~ g is_S-P_arc_joining f /. i1,f /. i2 by A12, A13, TOPREAL4:def_1; ::_thesis: verum end; Lm1: for f being non constant standard special_circular_sequence for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part>_of f,i1,i2 & i1 > i2 holds L~ g is_S-P_arc_joining f /. i1,f /. i2 proof let f be non constant standard special_circular_sequence; ::_thesis: for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part>_of f,i1,i2 & i1 > i2 holds L~ g is_S-P_arc_joining f /. i1,f /. i2 let g be FinSequence of (TOP-REAL 2); ::_thesis: for i1, i2 being Element of NAT st g is_a_part>_of f,i1,i2 & i1 > i2 holds L~ g is_S-P_arc_joining f /. i1,f /. i2 let i1, i2 be Element of NAT ; ::_thesis: ( g is_a_part>_of f,i1,i2 & i1 > i2 implies L~ g is_S-P_arc_joining f /. i1,f /. i2 ) assume that A1: g is_a_part>_of f,i1,i2 and A2: i1 > i2 ; ::_thesis: L~ g is_S-P_arc_joining f /. i1,f /. i2 A3: g = (mid (f,i1,((len f) -' 1))) ^ (f | i2) by A1, A2, Th26; set f1 = mid (f,i1,(len f)); A4: 1 <= i1 by A1, Def2; then A5: i1 - 1 = i1 -' 1 by XREAL_1:233; A6: 1 <= len g by A1, Def2; then A7: g /. (len g) = g . (len g) by FINSEQ_4:15; A8: len g < len f by A1, Def2; then A9: 1 < len f by A6, XXREAL_0:2; then A10: f . (len f) = f /. (len f) by FINSEQ_4:15; A11: i1 + 1 <= len f by A1, Def2; then A12: i1 < len f by NAT_1:13; then A13: (mid (f,i1,(len f))) . (len (mid (f,i1,(len f)))) = f . (len f) by A4, Th10; A14: 1 <= i2 by A1, Def2; then 1 < i1 by A2, XXREAL_0:2; then A15: mid (f,i1,(len f)) is being_S-Seq by A12, Th40; A16: i2 + 1 <= len f by A1, Def2; then A17: i2 < len f by NAT_1:13; then A18: (mid (f,1,i2)) . 1 = f . 1 by A14, A9, FINSEQ_6:118; f . 1 = f /. 1 by A9, FINSEQ_4:15; then A19: (mid (f,i1,(len f))) . (len (mid (f,i1,(len f)))) = (mid (f,1,i2)) . 1 by A13, A18, A10, FINSEQ_6:def_1; A20: len (mid (f,i1,(len f))) = ((len f) -' i1) + 1 by A4, A9, A12, FINSEQ_6:118; g . (len g) = f . i2 by A1, Def2; then A21: f /. i2 = g /. (len g) by A14, A17, A7, FINSEQ_4:15; len (mid (f,i1,(len f))) < (len (mid (f,i1,(len f)))) + 1 by NAT_1:13; then (len (mid (f,i1,(len f)))) - 1 < ((len (mid (f,i1,(len f)))) + 1) - 1 by XREAL_1:9; then A22: (len (mid (f,i1,(len f)))) -' 1 <= len (mid (f,i1,(len f))) by A20, NAT_D:34; (i1 + 1) - i1 <= (len f) - i1 by A11, XREAL_1:9; then 1 <= (len f) -' i1 by NAT_D:39; then A23: 1 <= (len (mid (f,i1,(len f)))) -' 1 by A20, NAT_D:34; i1 < len f by A11, NAT_1:13; then A24: f /. i1 = f . i1 by A4, FINSEQ_4:15; (i1 + 1) - i1 <= (len f) - i1 by A11, XREAL_1:9; then 1 <= (len f) -' i1 by NAT_D:39; then A25: (((len f) -' i1) -' 1) + 1 = (((len f) -' i1) - 1) + 1 by XREAL_1:233 .= (len f) - i1 by A12, XREAL_1:233 ; A26: L~ (f | i2) = union { (LSeg ((f | i2),i)) where i is Element of NAT : ( 1 <= i & i + 1 <= len (f | i2) ) } by TOPREAL1:def_4; A27: (len f) -' 1 < ((len f) -' 1) + 1 by NAT_1:13; A28: (len f) -' 1 = (len f) - 1 by A6, A8, XREAL_1:233, XXREAL_0:2; then A29: ((len f) -' 1) + 1 = len f ; A30: (i1 + 1) - 1 <= (len f) - 1 by A11, XREAL_1:9; then A31: 1 <= (len f) -' 1 by A4, A28, XXREAL_0:2; then A32: len (mid (f,i1,((len f) -' 1))) = (((len f) -' 1) -' i1) + 1 by A4, A28, A12, A30, A27, FINSEQ_6:118 .= (((len f) - 1) - i1) + 1 by A28, A30, XREAL_1:233 .= (len f) - i1 ; len (mid (f,i1,((len f) -' 1))) = (((len f) -' 1) -' i1) + 1 by A4, A28, A12, A30, A31, A27, FINSEQ_6:118; then 1 <= len (mid (f,i1,((len f) -' 1))) by NAT_1:11; then 1 in Seg (len (mid (f,i1,((len f) -' 1)))) by FINSEQ_1:1; then 1 in dom (mid (f,i1,((len f) -' 1))) by FINSEQ_1:def_3; then g . 1 = (mid (f,i1,((len f) -' 1))) . 1 by A3, FINSEQ_1:def_7; then g . 1 = f . i1 by A4, A28, A12, A31, A27, FINSEQ_6:118; then A33: f /. i1 = g /. 1 by A6, A24, FINSEQ_4:15; A34: L~ (f /^ (i1 -' 1)) = union { (LSeg ((f /^ (i1 -' 1)),i)) where i is Element of NAT : ( 1 <= i & i + 1 <= len (f /^ (i1 -' 1)) ) } by TOPREAL1:def_4; A35: f /. 1 = f /. (len f) by FINSEQ_6:def_1; A36: 1 + 1 <= len f by A9, NAT_1:13; A37: 1 <= len (mid (f,i1,(len f))) by A20, NAT_1:11; A38: now__::_thesis:_(_(_i2_>_1_&_(mid_((mid_(f,i1,(len_f))),1,((len_(mid_(f,i1,(len_f))))_-'_1)))_^_(mid_(f,1,i2))_is_being_S-Seq_)_or_(_i2_=_1_&_(mid_((mid_(f,i1,(len_f))),1,((len_(mid_(f,i1,(len_f))))_-'_1)))_^_(mid_(f,1,i2))_is_being_S-Seq_)_) percases ( i2 > 1 or i2 = 1 ) by A14, XXREAL_0:1; caseA39: i2 > 1 ; ::_thesis: (mid ((mid (f,i1,(len f))),1,((len (mid (f,i1,(len f)))) -' 1))) ^ (mid (f,1,i2)) is being_S-Seq (union { (LSeg ((f /^ (i1 -' 1)),i)) where i is Element of NAT : ( 1 <= i & i + 1 <= len (f /^ (i1 -' 1)) ) } ) /\ (union { (LSeg ((f | i2),j)) where j is Element of NAT : ( 1 <= j & j + 1 <= len (f | i2) ) } ) = {(f . 1)} proof A40: (f | 2) . (1 + 1) = f . (1 + 1) by FINSEQ_3:112; A41: (f | 2) . 1 = f . 1 by FINSEQ_3:112; A42: len (f | 2) = 2 by A36, FINSEQ_1:59; then A43: (f | 2) /. 1 = (f | 2) . 1 by FINSEQ_4:15; (len (f | 2)) -' 1 = 2 - 1 by A42, NAT_D:39 .= 1 ; then A44: LSeg ((f | 2),((len (f | 2)) -' 1)) = LSeg (((f | 2) /. ((len (f | 2)) -' 1)),((f | 2) /. (((len (f | 2)) -' 1) + 1))) by A42, TOPREAL1:def_3; A45: len (f | i2) = i2 by A17, FINSEQ_1:59; then A46: 1 + 1 <= len (f | i2) by A39, NAT_1:13; then A47: LSeg ((f | i2),1) = LSeg (((f | i2) /. 1),((f | i2) /. (1 + 1))) by TOPREAL1:def_3; (f | i2) . 1 = f . 1 by A14, FINSEQ_3:112; then A48: (f | 2) /. 1 = (f | i2) /. 1 by A14, A43, A41, A45, FINSEQ_4:15; A49: f . 1 = f /. 1 by A9, FINSEQ_4:15; A50: (len (f | 2)) -' 1 = (1 + 1) -' 1 by A36, FINSEQ_1:59 .= 1 by NAT_D:34 ; then (f | 2) /. ((len (f | 2)) -' 1) = f /. 1 by A49, A43, FINSEQ_3:112; then A51: f . 1 in LSeg ((f | 2),((len (f | 2)) -' 1)) by A49, A44, RLTOPSP1:68; A52: (f | 2) /. (1 + 1) = (f | 2) . (1 + 1) by A42, FINSEQ_4:15; A53: f /. (len f) in LSeg (((f /^ (i1 -' 1)) /. ((len (f /^ (i1 -' 1))) -' 1)),(f /. (len f))) by RLTOPSP1:68; (f | i2) . (1 + 1) = f . (1 + 1) by A45, A46, FINSEQ_3:112; then A54: (f | 2) /. (1 + 1) = (f | i2) /. (1 + 1) by A46, A40, A52, FINSEQ_4:15; A55: len (f /^ (i1 -' 1)) = (len f) -' (i1 -' 1) by RFINSEQ:29; i1 - i1 < (len f) - i1 by A12, XREAL_1:9; then (i1 - i1) + 1 < ((len f) - i1) + 1 by XREAL_1:6; then 1 < (len f) - (i1 - 1) ; then 1 < (len f) - (i1 -' 1) by A4, XREAL_1:233; then A56: 1 < len (f /^ (i1 -' 1)) by A55, NAT_D:39; then A57: ((len (f /^ (i1 -' 1))) -' 1) + 1 = ((len (f /^ (i1 -' 1))) - 1) + 1 by XREAL_1:233 .= len (f /^ (i1 -' 1)) ; 1 + 1 <= len (f /^ (i1 -' 1)) by A56, NAT_1:13; then A58: (1 + 1) - 1 <= (len (f /^ (i1 -' 1))) - 1 by XREAL_1:9; then A59: LSeg ((f /^ (i1 -' 1)),((len (f /^ (i1 -' 1))) -' 1)) = LSeg (((f /^ (i1 -' 1)) /. ((len (f /^ (i1 -' 1))) -' 1)),((f /^ (i1 -' 1)) /. (((len (f /^ (i1 -' 1))) -' 1) + 1))) by A57, TOPREAL1:def_3; A60: LSeg ((f /^ (i1 -' 1)),((len (f /^ (i1 -' 1))) -' 1)) in { (LSeg ((f /^ (i1 -' 1)),i)) where i is Element of NAT : ( 1 <= i & i + 1 <= len (f /^ (i1 -' 1)) ) } by A58, A57; A61: i1 - 1 < (len f) - 1 by A12, XREAL_1:9; then i1 - 1 < len f by A28, A27, XXREAL_0:2; then A62: i1 -' 1 < len f by A4, XREAL_1:233; then (f /^ (i1 -' 1)) /. (((len (f /^ (i1 -' 1))) -' 1) + 1) = f /. (len f) by A57, Th6; then f . 1 in LSeg ((f /^ (i1 -' 1)),((len (f /^ (i1 -' 1))) -' 1)) by A59, A53, A49, FINSEQ_6:def_1; then A63: f . 1 in union { (LSeg ((f /^ (i1 -' 1)),i)) where i is Element of NAT : ( 1 <= i & i + 1 <= len (f /^ (i1 -' 1)) ) } by A60, TARSKI:def_4; i1 -' 1 <= (len f) - 1 by A4, A61, XREAL_1:233; then A64: i1 -' 1 <= (len f) -' 1 by A6, A8, XREAL_1:233, XXREAL_0:2; A65: (union { (LSeg ((f /^ (i1 -' 1)),i)) where i is Element of NAT : ( 1 <= i & i + 1 <= len (f /^ (i1 -' 1)) ) } ) /\ (union { (LSeg ((f | i2),j)) where j is Element of NAT : ( 1 <= j & j + 1 <= len (f | i2) ) } ) c= {(f . 1)} proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in (union { (LSeg ((f /^ (i1 -' 1)),i)) where i is Element of NAT : ( 1 <= i & i + 1 <= len (f /^ (i1 -' 1)) ) } ) /\ (union { (LSeg ((f | i2),j)) where j is Element of NAT : ( 1 <= j & j + 1 <= len (f | i2) ) } ) or x in {(f . 1)} ) assume A66: x in (union { (LSeg ((f /^ (i1 -' 1)),i)) where i is Element of NAT : ( 1 <= i & i + 1 <= len (f /^ (i1 -' 1)) ) } ) /\ (union { (LSeg ((f | i2),j)) where j is Element of NAT : ( 1 <= j & j + 1 <= len (f | i2) ) } ) ; ::_thesis: x in {(f . 1)} then x in union { (LSeg ((f /^ (i1 -' 1)),i)) where i is Element of NAT : ( 1 <= i & i + 1 <= len (f /^ (i1 -' 1)) ) } by XBOOLE_0:def_4; then consider Y1 being set such that A67: ( x in Y1 & Y1 in { (LSeg ((f /^ (i1 -' 1)),i)) where i is Element of NAT : ( 1 <= i & i + 1 <= len (f /^ (i1 -' 1)) ) } ) by TARSKI:def_4; consider j1 being Element of NAT such that A68: Y1 = LSeg ((f /^ (i1 -' 1)),j1) and A69: 1 <= j1 and A70: j1 + 1 <= len (f /^ (i1 -' 1)) by A67; A71: 0 + 1 <= (i1 -' 1) + j1 by A69, XREAL_1:7; j1 + 1 <= (len f) -' (i1 -' 1) by A70, RFINSEQ:29; then (j1 + 1) + (i1 -' 1) <= ((len f) -' (i1 -' 1)) + (i1 -' 1) by XREAL_1:6; then (j1 + 1) + (i1 -' 1) <= len f by A62, XREAL_1:235; then A72: (f /^ (i1 -' 1)) . (j1 + 1) = f . (((i1 -' 1) + j1) + 1) by FINSEQ_6:114, NAT_1:11; j1 <= len (f /^ (i1 -' 1)) by A70, NAT_1:13; then A73: (f /^ (i1 -' 1)) /. j1 = (f /^ (i1 -' 1)) . j1 by A69, FINSEQ_4:15; (j1 + 1) + (i1 -' 1) <= ((len f) -' (i1 -' 1)) + (i1 -' 1) by A55, A70, XREAL_1:6; then A74: (j1 + 1) + (i1 -' 1) <= len f by A62, XREAL_1:235; A75: LSeg ((f /^ (i1 -' 1)),j1) = LSeg (((f /^ (i1 -' 1)) /. j1),((f /^ (i1 -' 1)) /. (j1 + 1))) by A69, A70, TOPREAL1:def_3; A76: (f /^ (i1 -' 1)) /. (j1 + 1) = (f /^ (i1 -' 1)) . (j1 + 1) by A70, FINSEQ_4:15, NAT_1:11; (i1 -' 1) + j1 <= ((i1 -' 1) + j1) + 1 by NAT_1:11; then A77: j1 + (i1 -' 1) <= len f by A74, XXREAL_0:2; then (f /^ (i1 -' 1)) . j1 = f . ((i1 -' 1) + j1) by A69, FINSEQ_6:114; then A78: (f /^ (i1 -' 1)) /. j1 = f /. ((i1 -' 1) + j1) by A71, A73, A77, FINSEQ_4:15; LSeg (f,((i1 -' 1) + j1)) = LSeg ((f /. ((i1 -' 1) + j1)),(f /. (((i1 -' 1) + j1) + 1))) by A71, A74, TOPREAL1:def_3; then A79: LSeg ((f /^ (i1 -' 1)),j1) = LSeg (f,((i1 -' 1) + j1)) by A75, A74, A78, A72, A76, FINSEQ_4:15, NAT_1:11; x in union { (LSeg ((f | i2),j)) where j is Element of NAT : ( 1 <= j & j + 1 <= len (f | i2) ) } by A66, XBOOLE_0:def_4; then consider Y2 being set such that A80: ( x in Y2 & Y2 in { (LSeg ((f | i2),i)) where i is Element of NAT : ( 1 <= i & i + 1 <= len (f | i2) ) } ) by TARSKI:def_4; consider j2 being Element of NAT such that A81: Y2 = LSeg ((f | i2),j2) and A82: 1 <= j2 and A83: j2 + 1 <= len (f | i2) by A80; A84: len (f | i2) <= len f by FINSEQ_5:16; then A85: j2 + 1 <= len f by A83, XXREAL_0:2; A86: j2 + 1 <= len f by A83, A84, XXREAL_0:2; A87: (f | i2) /. (j2 + 1) = (f | i2) . (j2 + 1) by A83, FINSEQ_4:15, NAT_1:11 .= f . (j2 + 1) by A45, A83, FINSEQ_3:112 .= f /. (j2 + 1) by A86, FINSEQ_4:15, NAT_1:11 ; A88: LSeg ((f | i2),j2) = LSeg (((f | i2) /. j2),((f | i2) /. (j2 + 1))) by A82, A83, TOPREAL1:def_3; A89: j2 < len (f | i2) by A83, NAT_1:13; then A90: j2 < len f by A84, XXREAL_0:2; (f | i2) /. j2 = (f | i2) . j2 by A82, A89, FINSEQ_4:15 .= f . j2 by A45, A89, FINSEQ_3:112 .= f /. j2 by A82, A90, FINSEQ_4:15 ; then A91: LSeg ((f | i2),j2) = LSeg (f,j2) by A82, A87, A88, A85, TOPREAL1:def_3; A92: now__::_thesis:_(_j2_=_1_&_(i1_-'_1)_+_j1_=_(len_f)_-'_1_) len (f /^ (i1 -' 1)) = (len f) - (i1 -' 1) by A12, A55, NAT_D:44, XREAL_1:233; then A93: (j1 + 1) + (i1 -' 1) <= ((len f) - (i1 -' 1)) + (i1 -' 1) by A70, XREAL_1:6; then ((i1 -' 1) + j1) + 1 <= len f ; then A94: (i1 -' 1) + j1 < len f by NAT_1:13; A95: i2 + 1 <= i1 by A2, NAT_1:13; assume A96: ( not j2 = 1 or not (i1 -' 1) + j1 = (len f) -' 1 ) ; ::_thesis: contradiction A97: (i1 -' 1) + 1 <= (i1 -' 1) + j1 by A69, XREAL_1:6; A98: (i1 -' 1) + 1 = i1 by A4, XREAL_1:235; j2 + 1 < i2 + 1 by A45, A83, NAT_1:13; then j2 + 1 < (i1 -' 1) + 1 by A95, A98, XXREAL_0:2; then A99: j2 + 1 < (i1 -' 1) + j1 by A97, XXREAL_0:2; A100: (((i1 -' 1) + j1) + 1) - 1 <= (len f) - 1 by A93, XREAL_1:9; now__::_thesis:_(_(_j2_>_1_&_(LSeg_(f,((i1_-'_1)_+_j1)))_/\_(LSeg_(f,j2))_=_{}_)_or_(_(i1_-'_1)_+_j1_<_(len_f)_-'_1_&_(LSeg_(f,((i1_-'_1)_+_j1)))_/\_(LSeg_(f,j2))_=_{}_)_) percases ( j2 > 1 or (i1 -' 1) + j1 < (len f) -' 1 ) by A28, A82, A96, A100, XXREAL_0:1; case j2 > 1 ; ::_thesis: (LSeg (f,((i1 -' 1) + j1))) /\ (LSeg (f,j2)) = {} then LSeg (f,((i1 -' 1) + j1)) misses LSeg (f,j2) by A99, A94, GOBOARD5:def_4; hence (LSeg (f,((i1 -' 1) + j1))) /\ (LSeg (f,j2)) = {} by XBOOLE_0:def_7; ::_thesis: verum end; case (i1 -' 1) + j1 < (len f) -' 1 ; ::_thesis: (LSeg (f,((i1 -' 1) + j1))) /\ (LSeg (f,j2)) = {} then ((i1 -' 1) + j1) + 1 < ((len f) -' 1) + 1 by XREAL_1:6; then LSeg (f,((i1 -' 1) + j1)) misses LSeg (f,j2) by A28, A99, GOBOARD5:def_4; hence (LSeg (f,((i1 -' 1) + j1))) /\ (LSeg (f,j2)) = {} by XBOOLE_0:def_7; ::_thesis: verum end; end; end; hence contradiction by A67, A68, A80, A81, A79, A91, XBOOLE_0:def_4; ::_thesis: verum end; then A101: LSeg ((f | i2),j2) = LSeg (f,1) by A46, SPPOL_2:3; (((len f) -' 1) - (i1 -' 1)) + (i1 -' 1) <= len f by A28, A27; then A102: (((len f) -' 1) -' (i1 -' 1)) + (i1 -' 1) <= len f by A64, XREAL_1:233; A103: ((((len f) -' 1) -' (i1 -' 1)) + 1) + (i1 -' 1) = ((((len f) -' 1) - (i1 -' 1)) + 1) + (i1 -' 1) by A64, XREAL_1:233 .= ((len f) -' 1) + 1 .= ((len f) - 1) + 1 by A6, A8, XREAL_1:233, XXREAL_0:2 .= len f ; A104: len (f /^ (i1 -' 1)) = (len f) - (i1 -' 1) by A12, A55, NAT_D:44, XREAL_1:233; ((len f) -' 1) - (i1 -' 1) < (len f) - (i1 -' 1) by A28, A27, XREAL_1:9; then A105: ((len f) -' 1) -' (i1 -' 1) < len (f /^ (i1 -' 1)) by A64, A104, XREAL_1:233; then A106: (((len f) -' 1) -' (i1 -' 1)) + 1 <= len (f /^ (i1 -' 1)) by NAT_1:13; (i1 + 1) - 1 <= (len f) - 1 by A11, XREAL_1:9; then A107: i1 - (i1 - 1) <= ((len f) - 1) - (i1 - 1) by XREAL_1:9; then A108: 1 <= ((len f) -' 1) -' (i1 -' 1) by A28, A5, NAT_D:39; then A109: (f /^ (i1 -' 1)) /. (((len f) -' 1) -' (i1 -' 1)) = (f /^ (i1 -' 1)) . (((len f) -' 1) -' (i1 -' 1)) by A105, FINSEQ_4:15 .= f . ((((len f) -' 1) -' (i1 -' 1)) + (i1 -' 1)) by A102, A108, FINSEQ_6:114 .= f . ((((len f) -' 1) - (i1 -' 1)) + (i1 -' 1)) by A64, XREAL_1:233 .= f /. ((len f) -' 1) by A28, A31, A27, FINSEQ_4:15 ; A110: 1 < (((len f) -' 1) -' (i1 -' 1)) + 1 by A108, NAT_1:13; then A111: (f /^ (i1 -' 1)) /. ((((len f) -' 1) -' (i1 -' 1)) + 1) = (f /^ (i1 -' 1)) . ((((len f) -' 1) -' (i1 -' 1)) + 1) by A106, FINSEQ_4:15 .= f . (1 + ((((len f) -' 1) -' (i1 -' 1)) + (i1 -' 1))) by A103, A110, FINSEQ_6:114 .= f . (((((len f) -' 1) - (i1 -' 1)) + (i1 -' 1)) + 1) by A64, XREAL_1:233 .= f . (len f) by A6, A8, XREAL_1:235, XXREAL_0:2 .= f /. (len f) by A9, FINSEQ_4:15 ; A112: 1 <= ((len f) -' 1) -' (i1 -' 1) by A28, A5, A107, NAT_D:39; j1 = ((len f) -' 1) - (i1 -' 1) by A92 .= ((len f) -' 1) -' (i1 -' 1) by A64, XREAL_1:233 ; then LSeg ((f /^ (i1 -' 1)),j1) = LSeg (((f /^ (i1 -' 1)) /. (((len f) -' 1) -' (i1 -' 1))),((f /^ (i1 -' 1)) /. ((((len f) -' 1) -' (i1 -' 1)) + 1))) by A112, A106, TOPREAL1:def_3 .= LSeg (f,((len f) -' 1)) by A29, A31, A109, A111, TOPREAL1:def_3 ; then (LSeg ((f /^ (i1 -' 1)),j1)) /\ (LSeg ((f | i2),j2)) = {(f . 1)} by A101, Th42; hence x in {(f . 1)} by A67, A68, A80, A81, XBOOLE_0:def_4; ::_thesis: verum end; 1 + 1 <= len (f | i2) by A39, A45, NAT_1:13; then LSeg ((f | 2),((len (f | 2)) -' 1)) in { (LSeg ((f | i2),i)) where i is Element of NAT : ( 1 <= i & i + 1 <= len (f | i2) ) } by A44, A50, A48, A54, A47; then f . 1 in union { (LSeg ((f | i2),j)) where j is Element of NAT : ( 1 <= j & j + 1 <= len (f | i2) ) } by A51, TARSKI:def_4; then f . 1 in (union { (LSeg ((f /^ (i1 -' 1)),i)) where i is Element of NAT : ( 1 <= i & i + 1 <= len (f /^ (i1 -' 1)) ) } ) /\ (union { (LSeg ((f | i2),j)) where j is Element of NAT : ( 1 <= j & j + 1 <= len (f | i2) ) } ) by A63, XBOOLE_0:def_4; then {(f . 1)} c= (union { (LSeg ((f /^ (i1 -' 1)),i)) where i is Element of NAT : ( 1 <= i & i + 1 <= len (f /^ (i1 -' 1)) ) } ) /\ (union { (LSeg ((f | i2),j)) where j is Element of NAT : ( 1 <= j & j + 1 <= len (f | i2) ) } ) by ZFMISC_1:31; hence (union { (LSeg ((f /^ (i1 -' 1)),i)) where i is Element of NAT : ( 1 <= i & i + 1 <= len (f /^ (i1 -' 1)) ) } ) /\ (union { (LSeg ((f | i2),j)) where j is Element of NAT : ( 1 <= j & j + 1 <= len (f | i2) ) } ) = {(f . 1)} by A65, XBOOLE_0:def_10; ::_thesis: verum end; then (L~ (f /^ (i1 -' 1))) /\ (L~ (mid (f,1,i2))) = {(f . 1)} by A14, A34, A26, FINSEQ_6:116; then A113: (L~ (mid (f,i1,(len f)))) /\ (L~ (mid (f,1,i2))) = {((mid (f,1,i2)) . 1)} by A12, A18, FINSEQ_6:117; mid (f,1,i2) is being_S-Seq by A16, A39, Th39; hence (mid ((mid (f,i1,(len f))),1,((len (mid (f,i1,(len f)))) -' 1))) ^ (mid (f,1,i2)) is being_S-Seq by A15, A19, A113, JORDAN3:45; ::_thesis: verum end; case i2 = 1 ; ::_thesis: (mid ((mid (f,i1,(len f))),1,((len (mid (f,i1,(len f)))) -' 1))) ^ (mid (f,1,i2)) is being_S-Seq then A114: mid (f,1,i2) = f | 1 by FINSEQ_6:116 .= <*(f /. 1)*> by FINSEQ_5:20 ; A115: mid ((mid (f,i1,(len f))),1,((len (mid (f,i1,(len f)))) -' 1)) = (mid (f,i1,(len f))) | ((len (mid (f,i1,(len f)))) -' 1) by A23, FINSEQ_6:116; A116: ((len (mid (f,i1,(len f)))) -' 1) + 1 = len (mid (f,i1,(len f))) by A20, NAT_D:34; <*(f /. 1)*> = <*((mid (f,i1,(len f))) /. (len (mid (f,i1,(len f)))))*> by A13, A10, A35, A37, FINSEQ_4:15; hence (mid ((mid (f,i1,(len f))),1,((len (mid (f,i1,(len f)))) -' 1))) ^ (mid (f,1,i2)) is being_S-Seq by A15, A114, A115, A116, FINSEQ_5:21; ::_thesis: verum end; end; end; A117: 1 <= len (mid (f,i1,(len f))) by A20, NAT_1:11; then len (mid ((mid (f,i1,(len f))),1,((len (mid (f,i1,(len f)))) -' 1))) = (((len (mid (f,i1,(len f)))) -' 1) -' 1) + 1 by A23, A22, FINSEQ_6:118 .= (((((len f) -' i1) + 1) -' 1) -' 1) + 1 by A4, A9, A12, FINSEQ_6:118 ; then A118: len (mid ((mid (f,i1,(len f))),1,((len (mid (f,i1,(len f)))) -' 1))) = len (mid (f,i1,((len f) -' 1))) by A25, A32, NAT_D:34; for k being Nat st 1 <= k & k <= len (mid (f,i1,((len f) -' 1))) holds (mid ((mid (f,i1,(len f))),1,((len (mid (f,i1,(len f)))) -' 1))) . k = (mid (f,i1,((len f) -' 1))) . k proof A119: len (mid (f,i1,(len f))) = ((len f) -' i1) + 1 by A4, A9, A12, FINSEQ_6:118; let k be Nat; ::_thesis: ( 1 <= k & k <= len (mid (f,i1,((len f) -' 1))) implies (mid ((mid (f,i1,(len f))),1,((len (mid (f,i1,(len f)))) -' 1))) . k = (mid (f,i1,((len f) -' 1))) . k ) assume that A120: 1 <= k and A121: k <= len (mid (f,i1,((len f) -' 1))) ; ::_thesis: (mid ((mid (f,i1,(len f))),1,((len (mid (f,i1,(len f)))) -' 1))) . k = (mid (f,i1,((len f) -' 1))) . k k <= (len f) -' i1 by A12, A32, A121, XREAL_1:233; then A122: k < len (mid (f,i1,(len f))) by A119, NAT_1:13; A123: k in NAT by ORDINAL1:def_12; then (mid ((mid (f,i1,(len f))),1,((len (mid (f,i1,(len f)))) -' 1))) . k = (mid (f,i1,(len f))) . ((k + 1) -' 1) by A117, A23, A22, A118, A120, A121, FINSEQ_6:118 .= (mid (f,i1,(len f))) . k by NAT_D:34 .= f . ((k + i1) -' 1) by A4, A9, A12, A120, A123, A122, FINSEQ_6:118 ; hence (mid ((mid (f,i1,(len f))),1,((len (mid (f,i1,(len f)))) -' 1))) . k = (mid (f,i1,((len f) -' 1))) . k by A4, A28, A12, A30, A31, A27, A120, A121, A123, FINSEQ_6:118; ::_thesis: verum end; then mid ((mid (f,i1,(len f))),1,((len (mid (f,i1,(len f)))) -' 1)) = mid (f,i1,((len f) -' 1)) by A118, FINSEQ_1:14; then g is being_S-Seq by A1, A2, A38, Th26; hence L~ g is_S-P_arc_joining f /. i1,f /. i2 by A33, A21, TOPREAL4:def_1; ::_thesis: verum end; theorem :: JORDAN4:45 for f being non constant standard special_circular_sequence for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part<_of f,i1,i2 & i1 > i2 holds L~ g is_S-P_arc_joining f /. i1,f /. i2 proof let f be non constant standard special_circular_sequence; ::_thesis: for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part<_of f,i1,i2 & i1 > i2 holds L~ g is_S-P_arc_joining f /. i1,f /. i2 let g be FinSequence of (TOP-REAL 2); ::_thesis: for i1, i2 being Element of NAT st g is_a_part<_of f,i1,i2 & i1 > i2 holds L~ g is_S-P_arc_joining f /. i1,f /. i2 let i1, i2 be Element of NAT ; ::_thesis: ( g is_a_part<_of f,i1,i2 & i1 > i2 implies L~ g is_S-P_arc_joining f /. i1,f /. i2 ) assume that A1: g is_a_part<_of f,i1,i2 and A2: i1 > i2 ; ::_thesis: L~ g is_S-P_arc_joining f /. i1,f /. i2 reconsider P = L~ g as Subset of (TOP-REAL 2) ; reconsider p2 = f /. i2, p1 = f /. i1 as Point of (TOP-REAL 2) ; L~ (Rev g) is_S-P_arc_joining f /. i2,f /. i1 by A1, A2, Th30, Th44; then P is_S-P_arc_joining p2,p1 by SPPOL_2:22; hence L~ g is_S-P_arc_joining f /. i1,f /. i2 by SPPOL_2:49; ::_thesis: verum end; theorem Th46: :: JORDAN4:46 for f being non constant standard special_circular_sequence for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part>_of f,i1,i2 & i1 <> i2 holds L~ g is_S-P_arc_joining f /. i1,f /. i2 proof let f be non constant standard special_circular_sequence; ::_thesis: for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part>_of f,i1,i2 & i1 <> i2 holds L~ g is_S-P_arc_joining f /. i1,f /. i2 let g be FinSequence of (TOP-REAL 2); ::_thesis: for i1, i2 being Element of NAT st g is_a_part>_of f,i1,i2 & i1 <> i2 holds L~ g is_S-P_arc_joining f /. i1,f /. i2 let i1, i2 be Element of NAT ; ::_thesis: ( g is_a_part>_of f,i1,i2 & i1 <> i2 implies L~ g is_S-P_arc_joining f /. i1,f /. i2 ) assume that A1: g is_a_part>_of f,i1,i2 and A2: i1 <> i2 ; ::_thesis: L~ g is_S-P_arc_joining f /. i1,f /. i2 now__::_thesis:_(_(_i1_<_i2_&_L~_g_is_S-P_arc_joining_f_/._i1,f_/._i2_)_or_(_i1_>=_i2_&_L~_g_is_S-P_arc_joining_f_/._i1,f_/._i2_)_) percases ( i1 < i2 or i1 >= i2 ) ; case i1 < i2 ; ::_thesis: L~ g is_S-P_arc_joining f /. i1,f /. i2 hence L~ g is_S-P_arc_joining f /. i1,f /. i2 by A1, Th44; ::_thesis: verum end; case i1 >= i2 ; ::_thesis: L~ g is_S-P_arc_joining f /. i1,f /. i2 then i1 > i2 by A2, XXREAL_0:1; hence L~ g is_S-P_arc_joining f /. i1,f /. i2 by A1, Lm1; ::_thesis: verum end; end; end; hence L~ g is_S-P_arc_joining f /. i1,f /. i2 ; ::_thesis: verum end; theorem Th47: :: JORDAN4:47 for f being non constant standard special_circular_sequence for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part<_of f,i1,i2 & i1 <> i2 holds L~ g is_S-P_arc_joining f /. i1,f /. i2 proof let f be non constant standard special_circular_sequence; ::_thesis: for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part<_of f,i1,i2 & i1 <> i2 holds L~ g is_S-P_arc_joining f /. i1,f /. i2 let g be FinSequence of (TOP-REAL 2); ::_thesis: for i1, i2 being Element of NAT st g is_a_part<_of f,i1,i2 & i1 <> i2 holds L~ g is_S-P_arc_joining f /. i1,f /. i2 let i1, i2 be Element of NAT ; ::_thesis: ( g is_a_part<_of f,i1,i2 & i1 <> i2 implies L~ g is_S-P_arc_joining f /. i1,f /. i2 ) assume that A1: g is_a_part<_of f,i1,i2 and A2: i1 <> i2 ; ::_thesis: L~ g is_S-P_arc_joining f /. i1,f /. i2 now__::_thesis:_(_(_i1_>_i2_&_L~_g_is_S-P_arc_joining_f_/._i1,f_/._i2_)_or_(_i1_<=_i2_&_L~_g_is_S-P_arc_joining_f_/._i1,f_/._i2_)_) percases ( i1 > i2 or i1 <= i2 ) ; caseA3: i1 > i2 ; ::_thesis: L~ g is_S-P_arc_joining f /. i1,f /. i2 reconsider P = L~ g as Subset of (TOP-REAL 2) ; reconsider p2 = f /. i2, p1 = f /. i1 as Point of (TOP-REAL 2) ; L~ (Rev g) is_S-P_arc_joining f /. i2,f /. i1 by A1, A3, Th30, Th44; then P is_S-P_arc_joining p2,p1 by SPPOL_2:22; hence L~ g is_S-P_arc_joining f /. i1,f /. i2 by SPPOL_2:49; ::_thesis: verum end; caseA4: i1 <= i2 ; ::_thesis: L~ g is_S-P_arc_joining f /. i1,f /. i2 reconsider P = L~ g as Subset of (TOP-REAL 2) ; reconsider p2 = f /. i2, p1 = f /. i1 as Point of (TOP-REAL 2) ; i1 < i2 by A2, A4, XXREAL_0:1; then L~ (Rev g) is_S-P_arc_joining f /. i2,f /. i1 by A1, Lm1, Th30; then P is_S-P_arc_joining p2,p1 by SPPOL_2:22; hence L~ g is_S-P_arc_joining f /. i1,f /. i2 by SPPOL_2:49; ::_thesis: verum end; end; end; hence L~ g is_S-P_arc_joining f /. i1,f /. i2 ; ::_thesis: verum end; theorem Th48: :: JORDAN4:48 for f being non constant standard special_circular_sequence for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part_of f,i1,i2 & i1 <> i2 holds L~ g is_S-P_arc_joining f /. i1,f /. i2 proof let f be non constant standard special_circular_sequence; ::_thesis: for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part_of f,i1,i2 & i1 <> i2 holds L~ g is_S-P_arc_joining f /. i1,f /. i2 let g be FinSequence of (TOP-REAL 2); ::_thesis: for i1, i2 being Element of NAT st g is_a_part_of f,i1,i2 & i1 <> i2 holds L~ g is_S-P_arc_joining f /. i1,f /. i2 let i1, i2 be Element of NAT ; ::_thesis: ( g is_a_part_of f,i1,i2 & i1 <> i2 implies L~ g is_S-P_arc_joining f /. i1,f /. i2 ) assume that A1: g is_a_part_of f,i1,i2 and A2: i1 <> i2 ; ::_thesis: L~ g is_S-P_arc_joining f /. i1,f /. i2 now__::_thesis:_(_(_g_is_a_part>_of_f,i1,i2_&_L~_g_is_S-P_arc_joining_f_/._i1,f_/._i2_)_or_(_g_is_a_part<_of_f,i1,i2_&_L~_g_is_S-P_arc_joining_f_/._i1,f_/._i2_)_) percases ( g is_a_part>_of f,i1,i2 or g is_a_part<_of f,i1,i2 ) by A1, Def4; case g is_a_part>_of f,i1,i2 ; ::_thesis: L~ g is_S-P_arc_joining f /. i1,f /. i2 hence L~ g is_S-P_arc_joining f /. i1,f /. i2 by A2, Th46; ::_thesis: verum end; case g is_a_part<_of f,i1,i2 ; ::_thesis: L~ g is_S-P_arc_joining f /. i1,f /. i2 hence L~ g is_S-P_arc_joining f /. i1,f /. i2 by A2, Th47; ::_thesis: verum end; end; end; hence L~ g is_S-P_arc_joining f /. i1,f /. i2 ; ::_thesis: verum end; theorem :: JORDAN4:49 for f being non constant standard special_circular_sequence for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part_of f,i1,i2 & g . 1 <> g . (len g) holds L~ g is_S-P_arc_joining f /. i1,f /. i2 proof let f be non constant standard special_circular_sequence; ::_thesis: for g being FinSequence of (TOP-REAL 2) for i1, i2 being Element of NAT st g is_a_part_of f,i1,i2 & g . 1 <> g . (len g) holds L~ g is_S-P_arc_joining f /. i1,f /. i2 let g be FinSequence of (TOP-REAL 2); ::_thesis: for i1, i2 being Element of NAT st g is_a_part_of f,i1,i2 & g . 1 <> g . (len g) holds L~ g is_S-P_arc_joining f /. i1,f /. i2 let i1, i2 be Element of NAT ; ::_thesis: ( g is_a_part_of f,i1,i2 & g . 1 <> g . (len g) implies L~ g is_S-P_arc_joining f /. i1,f /. i2 ) assume that A1: g is_a_part_of f,i1,i2 and A2: g . 1 <> g . (len g) ; ::_thesis: L~ g is_S-P_arc_joining f /. i1,f /. i2 now__::_thesis:_(_(_g_is_a_part>_of_f,i1,i2_&_L~_g_is_S-P_arc_joining_f_/._i1,f_/._i2_)_or_(_g_is_a_part<_of_f,i1,i2_&_L~_g_is_S-P_arc_joining_f_/._i1,f_/._i2_)_) percases ( g is_a_part>_of f,i1,i2 or g is_a_part<_of f,i1,i2 ) by A1, Def4; caseA3: g is_a_part>_of f,i1,i2 ; ::_thesis: L~ g is_S-P_arc_joining f /. i1,f /. i2 then i1 + 1 <= len f by Def2; then A4: (i1 + 1) - 1 <= (len f) - 1 by XREAL_1:9; A5: 1 <= i1 by A3, Def2; A6: 1 <= len g by A3, Def2; len g < len f by A3, Def2; then A7: i1 <= (len f) -' 1 by A6, A4, XREAL_1:233, XXREAL_0:2; now__::_thesis:_not_i1_=_i2 assume A8: i1 = i2 ; ::_thesis: contradiction g . 1 = f . (S_Drop (((i1 + 1) -' 1),f)) by A3, A6, Def2 .= f . (S_Drop (i1,f)) by NAT_D:34 .= f . i1 by A5, A7, Th22 ; hence contradiction by A2, A3, A8, Def2; ::_thesis: verum end; hence L~ g is_S-P_arc_joining f /. i1,f /. i2 by A1, Th48; ::_thesis: verum end; caseA9: g is_a_part<_of f,i1,i2 ; ::_thesis: L~ g is_S-P_arc_joining f /. i1,f /. i2 then A10: 1 <= i1 by Def3; A11: 1 <= len g by A9, Def3; A12: len g < len f by A9, Def3; i1 + 1 <= len f by A9, Def3; then (i1 + 1) - 1 <= (len f) - 1 by XREAL_1:9; then A13: i1 <= (len f) -' 1 by A11, A12, XREAL_1:233, XXREAL_0:2; now__::_thesis:_not_i1_=_i2 assume A14: i1 = i2 ; ::_thesis: contradiction g . 1 = f . (S_Drop ((((len f) + i1) -' 1),f)) by A9, A11, Def3 .= f . (S_Drop ((((((len f) -' 1) + 1) + i1) -' 1),f)) by A11, A12, XREAL_1:235, XXREAL_0:2 .= f . (S_Drop ((((((len f) -' 1) + i1) + 1) -' 1),f)) .= f . (S_Drop ((((len f) -' 1) + i1),f)) by NAT_D:34 .= f . (S_Drop (i1,f)) by Th23 .= f . i1 by A10, A13, Th22 ; hence contradiction by A2, A9, A14, Def3; ::_thesis: verum end; hence L~ g is_S-P_arc_joining f /. i1,f /. i2 by A1, Th48; ::_thesis: verum end; end; end; hence L~ g is_S-P_arc_joining f /. i1,f /. i2 ; ::_thesis: verum end; theorem Th50: :: JORDAN4:50 for f being non constant standard special_circular_sequence for i1, i2 being Element of NAT st 1 <= i1 & i1 + 1 <= len f & 1 <= i2 & i2 + 1 <= len f & i1 <> i2 holds ex g1, g2 being FinSequence of (TOP-REAL 2) st ( g1 is_a_part_of f,i1,i2 & g2 is_a_part_of f,i1,i2 & (L~ g1) /\ (L~ g2) = {(f . i1),(f . i2)} & (L~ g1) \/ (L~ g2) = L~ f & L~ g1 is_S-P_arc_joining f /. i1,f /. i2 & L~ g2 is_S-P_arc_joining f /. i1,f /. i2 & ( for g being FinSequence of (TOP-REAL 2) holds ( not g is_a_part_of f,i1,i2 or g = g1 or g = g2 ) ) ) proof let f be non constant standard special_circular_sequence; ::_thesis: for i1, i2 being Element of NAT st 1 <= i1 & i1 + 1 <= len f & 1 <= i2 & i2 + 1 <= len f & i1 <> i2 holds ex g1, g2 being FinSequence of (TOP-REAL 2) st ( g1 is_a_part_of f,i1,i2 & g2 is_a_part_of f,i1,i2 & (L~ g1) /\ (L~ g2) = {(f . i1),(f . i2)} & (L~ g1) \/ (L~ g2) = L~ f & L~ g1 is_S-P_arc_joining f /. i1,f /. i2 & L~ g2 is_S-P_arc_joining f /. i1,f /. i2 & ( for g being FinSequence of (TOP-REAL 2) holds ( not g is_a_part_of f,i1,i2 or g = g1 or g = g2 ) ) ) let i1, i2 be Element of NAT ; ::_thesis: ( 1 <= i1 & i1 + 1 <= len f & 1 <= i2 & i2 + 1 <= len f & i1 <> i2 implies ex g1, g2 being FinSequence of (TOP-REAL 2) st ( g1 is_a_part_of f,i1,i2 & g2 is_a_part_of f,i1,i2 & (L~ g1) /\ (L~ g2) = {(f . i1),(f . i2)} & (L~ g1) \/ (L~ g2) = L~ f & L~ g1 is_S-P_arc_joining f /. i1,f /. i2 & L~ g2 is_S-P_arc_joining f /. i1,f /. i2 & ( for g being FinSequence of (TOP-REAL 2) holds ( not g is_a_part_of f,i1,i2 or g = g1 or g = g2 ) ) ) ) assume that A1: 1 <= i1 and A2: i1 + 1 <= len f and A3: 1 <= i2 and A4: i2 + 1 <= len f and A5: i1 <> i2 ; ::_thesis: ex g1, g2 being FinSequence of (TOP-REAL 2) st ( g1 is_a_part_of f,i1,i2 & g2 is_a_part_of f,i1,i2 & (L~ g1) /\ (L~ g2) = {(f . i1),(f . i2)} & (L~ g1) \/ (L~ g2) = L~ f & L~ g1 is_S-P_arc_joining f /. i1,f /. i2 & L~ g2 is_S-P_arc_joining f /. i1,f /. i2 & ( for g being FinSequence of (TOP-REAL 2) holds ( not g is_a_part_of f,i1,i2 or g = g1 or g = g2 ) ) ) now__::_thesis:_(_(_i1_<=_i2_&_ex_g1,_g2_being_FinSequence_of_(TOP-REAL_2)_st_ (_g1_is_a_part_of_f,i1,i2_&_g2_is_a_part_of_f,i1,i2_&_(L~_g1)_/\_(L~_g2)_=_{(f_._i1),(f_._i2)}_&_(L~_g1)_\/_(L~_g2)_=_L~_f_&_L~_g1_is_S-P_arc_joining_f_/._i1,f_/._i2_&_L~_g2_is_S-P_arc_joining_f_/._i1,f_/._i2_&_(_for_g_being_FinSequence_of_(TOP-REAL_2)_holds_ (_not_g_is_a_part_of_f,i1,i2_or_g_=_g1_or_g_=_g2_)_)_)_)_or_(_i1_>_i2_&_ex_g1,_g2_being_FinSequence_of_(TOP-REAL_2)_st_ (_g1_is_a_part_of_f,i1,i2_&_g2_is_a_part_of_f,i1,i2_&_(L~_g1)_/\_(L~_g2)_=_{(f_._i1),(f_._i2)}_&_(L~_g1)_\/_(L~_g2)_=_L~_f_&_L~_g1_is_S-P_arc_joining_f_/._i1,f_/._i2_&_L~_g2_is_S-P_arc_joining_f_/._i1,f_/._i2_&_(_for_g_being_FinSequence_of_(TOP-REAL_2)_holds_ (_not_g_is_a_part_of_f,i1,i2_or_g_=_g1_or_g_=_g2_)_)_)_)_) percases ( i1 <= i2 or i1 > i2 ) ; caseA6: i1 <= i2 ; ::_thesis: ex g1, g2 being FinSequence of (TOP-REAL 2) st ( g1 is_a_part_of f,i1,i2 & g2 is_a_part_of f,i1,i2 & (L~ g1) /\ (L~ g2) = {(f . i1),(f . i2)} & (L~ g1) \/ (L~ g2) = L~ f & L~ g1 is_S-P_arc_joining f /. i1,f /. i2 & L~ g2 is_S-P_arc_joining f /. i1,f /. i2 & ( for g being FinSequence of (TOP-REAL 2) holds ( not g is_a_part_of f,i1,i2 or g = g1 or g = g2 ) ) ) set h1 = mid (f,i1,i2); set h2 = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)); A7: i2 < len f by A4, NAT_1:13; then A8: mid (f,i1,i2) is_a_part>_of f,i1,i2 by A1, A6, Th31; then A9: mid (f,i1,i2) is_a_part_of f,i1,i2 by Def4; A10: i1 < i2 by A5, A6, XXREAL_0:1; then A11: L~ (mid (f,i1,i2)) is_S-P_arc_joining f /. i1,f /. i2 by A8, Th44; A12: for g being FinSequence of (TOP-REAL 2) holds ( not g is_a_part_of f,i1,i2 or g = mid (f,i1,i2) or g = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) ) proof let g be FinSequence of (TOP-REAL 2); ::_thesis: ( not g is_a_part_of f,i1,i2 or g = mid (f,i1,i2) or g = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) ) assume A13: g is_a_part_of f,i1,i2 ; ::_thesis: ( g = mid (f,i1,i2) or g = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) ) now__::_thesis:_(_(_g_is_a_part>_of_f,i1,i2_&_(_g_=_mid_(f,i1,i2)_or_g_=_(mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2))_)_)_or_(_g_is_a_part<_of_f,i1,i2_&_(_g_=_mid_(f,i1,i2)_or_g_=_(mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2))_)_)_) percases ( g is_a_part>_of f,i1,i2 or g is_a_part<_of f,i1,i2 ) by A13, Def4; case g is_a_part>_of f,i1,i2 ; ::_thesis: ( g = mid (f,i1,i2) or g = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) ) hence ( g = mid (f,i1,i2) or g = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) ) by A6, Th25; ::_thesis: verum end; case g is_a_part<_of f,i1,i2 ; ::_thesis: ( g = mid (f,i1,i2) or g = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) ) hence ( g = mid (f,i1,i2) or g = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) ) by A10, Th28; ::_thesis: verum end; end; end; hence ( g = mid (f,i1,i2) or g = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) ) ; ::_thesis: verum end; A14: (L~ (mid (f,i1,i2))) \/ (L~ ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)))) = L~ f by A1, A10, A7, Th43; A15: (L~ (mid (f,i1,i2))) /\ (L~ ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)))) = {(f . i1),(f . i2)} by A1, A10, A7, Th43; (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) is_a_part<_of f,i1,i2 by A1, A10, A7, Th34; then A16: (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) is_a_part_of f,i1,i2 by Def4; then L~ ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) is_S-P_arc_joining f /. i1,f /. i2 by A5, Th48; hence ex g1, g2 being FinSequence of (TOP-REAL 2) st ( g1 is_a_part_of f,i1,i2 & g2 is_a_part_of f,i1,i2 & (L~ g1) /\ (L~ g2) = {(f . i1),(f . i2)} & (L~ g1) \/ (L~ g2) = L~ f & L~ g1 is_S-P_arc_joining f /. i1,f /. i2 & L~ g2 is_S-P_arc_joining f /. i1,f /. i2 & ( for g being FinSequence of (TOP-REAL 2) holds ( not g is_a_part_of f,i1,i2 or g = g1 or g = g2 ) ) ) by A9, A16, A15, A14, A11, A12; ::_thesis: verum end; caseA17: i1 > i2 ; ::_thesis: ex g1, g2 being FinSequence of (TOP-REAL 2) st ( g1 is_a_part_of f,i1,i2 & g2 is_a_part_of f,i1,i2 & (L~ g1) /\ (L~ g2) = {(f . i1),(f . i2)} & (L~ g1) \/ (L~ g2) = L~ f & L~ g1 is_S-P_arc_joining f /. i1,f /. i2 & L~ g2 is_S-P_arc_joining f /. i1,f /. i2 & ( for g being FinSequence of (TOP-REAL 2) holds ( not g is_a_part_of f,i1,i2 or g = g1 or g = g2 ) ) ) set h1 = mid (f,i2,i1); set h2 = (mid (f,i2,1)) ^ (mid (f,((len f) -' 1),i1)); set h3 = Rev (mid (f,i2,i1)); set h4 = Rev ((mid (f,i2,1)) ^ (mid (f,((len f) -' 1),i1))); A18: L~ (mid (f,i2,i1)) = L~ (Rev (mid (f,i2,i1))) by SPPOL_2:22; A19: for g being FinSequence of (TOP-REAL 2) holds ( not g is_a_part_of f,i1,i2 or g = Rev (mid (f,i2,i1)) or g = Rev ((mid (f,i2,1)) ^ (mid (f,((len f) -' 1),i1))) ) proof let g be FinSequence of (TOP-REAL 2); ::_thesis: ( not g is_a_part_of f,i1,i2 or g = Rev (mid (f,i2,i1)) or g = Rev ((mid (f,i2,1)) ^ (mid (f,((len f) -' 1),i1))) ) assume A20: g is_a_part_of f,i1,i2 ; ::_thesis: ( g = Rev (mid (f,i2,i1)) or g = Rev ((mid (f,i2,1)) ^ (mid (f,((len f) -' 1),i1))) ) now__::_thesis:_(_(_g_is_a_part>_of_f,i1,i2_&_(_g_=_Rev_(mid_(f,i2,i1))_or_g_=_Rev_((mid_(f,i2,1))_^_(mid_(f,((len_f)_-'_1),i1)))_)_)_or_(_g_is_a_part<_of_f,i1,i2_&_(_g_=_Rev_(mid_(f,i2,i1))_or_g_=_Rev_((mid_(f,i2,1))_^_(mid_(f,((len_f)_-'_1),i1)))_)_)_) percases ( g is_a_part>_of f,i1,i2 or g is_a_part<_of f,i1,i2 ) by A20, Def4; case g is_a_part>_of f,i1,i2 ; ::_thesis: ( g = Rev (mid (f,i2,i1)) or g = Rev ((mid (f,i2,1)) ^ (mid (f,((len f) -' 1),i1))) ) then Rev g is_a_part<_of f,i2,i1 by Th29; then Rev g = (mid (f,i2,1)) ^ (mid (f,((len f) -' 1),i1)) by A17, Th28; hence ( g = Rev (mid (f,i2,i1)) or g = Rev ((mid (f,i2,1)) ^ (mid (f,((len f) -' 1),i1))) ) ; ::_thesis: verum end; case g is_a_part<_of f,i1,i2 ; ::_thesis: ( g = Rev (mid (f,i2,i1)) or g = Rev ((mid (f,i2,1)) ^ (mid (f,((len f) -' 1),i1))) ) then Rev g is_a_part>_of f,i2,i1 by Th30; then Rev g = mid (f,i2,i1) by A17, Th25; hence ( g = Rev (mid (f,i2,i1)) or g = Rev ((mid (f,i2,1)) ^ (mid (f,((len f) -' 1),i1))) ) ; ::_thesis: verum end; end; end; hence ( g = Rev (mid (f,i2,i1)) or g = Rev ((mid (f,i2,1)) ^ (mid (f,((len f) -' 1),i1))) ) ; ::_thesis: verum end; A21: i1 < len f by A2, NAT_1:13; then mid (f,i2,i1) is_a_part>_of f,i2,i1 by A3, A17, Th31; then A22: L~ (Rev (mid (f,i2,i1))) is_S-P_arc_joining f /. i1,f /. i2 by A17, Th29, Th47; (L~ (mid (f,i2,i1))) \/ (L~ ((mid (f,i2,1)) ^ (mid (f,((len f) -' 1),i1)))) = L~ f by A3, A17, A21, Th43; then A23: (L~ (Rev (mid (f,i2,i1)))) \/ (L~ (Rev ((mid (f,i2,1)) ^ (mid (f,((len f) -' 1),i1))))) = L~ f by A18, SPPOL_2:22; (L~ (mid (f,i2,i1))) /\ (L~ ((mid (f,i2,1)) ^ (mid (f,((len f) -' 1),i1)))) = {(f . i2),(f . i1)} by A3, A17, A21, Th43; then A24: (L~ (Rev (mid (f,i2,i1)))) /\ (L~ (Rev ((mid (f,i2,1)) ^ (mid (f,((len f) -' 1),i1))))) = {(f . i1),(f . i2)} by A18, SPPOL_2:22; Rev (mid (f,i2,i1)) is_a_part<_of f,i1,i2 by A3, A17, A21, Th29, Th31; then A25: Rev (mid (f,i2,i1)) is_a_part_of f,i1,i2 by Def4; Rev ((mid (f,i2,1)) ^ (mid (f,((len f) -' 1),i1))) is_a_part>_of f,i1,i2 by A3, A17, A21, Th30, Th34; then A26: Rev ((mid (f,i2,1)) ^ (mid (f,((len f) -' 1),i1))) is_a_part_of f,i1,i2 by Def4; then L~ (Rev ((mid (f,i2,1)) ^ (mid (f,((len f) -' 1),i1)))) is_S-P_arc_joining f /. i1,f /. i2 by A5, Th48; hence ex g1, g2 being FinSequence of (TOP-REAL 2) st ( g1 is_a_part_of f,i1,i2 & g2 is_a_part_of f,i1,i2 & (L~ g1) /\ (L~ g2) = {(f . i1),(f . i2)} & (L~ g1) \/ (L~ g2) = L~ f & L~ g1 is_S-P_arc_joining f /. i1,f /. i2 & L~ g2 is_S-P_arc_joining f /. i1,f /. i2 & ( for g being FinSequence of (TOP-REAL 2) holds ( not g is_a_part_of f,i1,i2 or g = g1 or g = g2 ) ) ) by A25, A26, A24, A23, A22, A19; ::_thesis: verum end; end; end; hence ex g1, g2 being FinSequence of (TOP-REAL 2) st ( g1 is_a_part_of f,i1,i2 & g2 is_a_part_of f,i1,i2 & (L~ g1) /\ (L~ g2) = {(f . i1),(f . i2)} & (L~ g1) \/ (L~ g2) = L~ f & L~ g1 is_S-P_arc_joining f /. i1,f /. i2 & L~ g2 is_S-P_arc_joining f /. i1,f /. i2 & ( for g being FinSequence of (TOP-REAL 2) holds ( not g is_a_part_of f,i1,i2 or g = g1 or g = g2 ) ) ) ; ::_thesis: verum end; theorem :: JORDAN4:51 for f being non constant standard special_circular_sequence for P being non empty Subset of (TOP-REAL 2) st P = L~ f holds P is being_simple_closed_curve proof set i1 = 1; set i2 = 1 + 1; let f be non constant standard special_circular_sequence; ::_thesis: for P being non empty Subset of (TOP-REAL 2) st P = L~ f holds P is being_simple_closed_curve let P be non empty Subset of (TOP-REAL 2); ::_thesis: ( P = L~ f implies P is being_simple_closed_curve ) assume A1: P = L~ f ; ::_thesis: P is being_simple_closed_curve A2: 1 + 1 < len f by GOBOARD7:34, XXREAL_0:2; then A3: f /. 1 <> f /. (1 + 1) by GOBOARD7:36; (1 + 1) + 1 <= len f by GOBOARD7:34, XXREAL_0:2; then consider g1, g2 being FinSequence of (TOP-REAL 2) such that g1 is_a_part_of f,1,1 + 1 and g2 is_a_part_of f,1,1 + 1 and A4: (L~ g1) /\ (L~ g2) = {(f . 1),(f . (1 + 1))} and A5: (L~ g1) \/ (L~ g2) = L~ f and A6: L~ g1 is_S-P_arc_joining f /. 1,f /. (1 + 1) and A7: L~ g2 is_S-P_arc_joining f /. 1,f /. (1 + 1) and for g being FinSequence of (TOP-REAL 2) holds ( not g is_a_part_of f,1,1 + 1 or g = g1 or g = g2 ) by A2, Th50; reconsider L1 = L~ g1, L2 = L~ g2 as non empty Subset of (TOP-REAL 2) by A4; A8: L2 is_an_arc_of f /. 1,f /. (1 + 1) by A7, TOPREAL4:2; 1 <= len f by GOBOARD7:34, XXREAL_0:2; then A9: f . 1 = f /. 1 by FINSEQ_4:15; then f /. 1 in (L~ g1) /\ (L~ g2) by A4, TARSKI:def_2; then f /. 1 in L~ g1 by XBOOLE_0:def_4; then A10: f /. 1 in P by A1, A5, XBOOLE_0:def_3; A11: f . (1 + 1) = f /. (1 + 1) by A2, FINSEQ_4:15; then f /. (1 + 1) in (L~ g1) /\ (L~ g2) by A4, TARSKI:def_2; then f /. (1 + 1) in L~ g2 by XBOOLE_0:def_4; then A12: f /. (1 + 1) in P by A1, A5, XBOOLE_0:def_3; L1 is_an_arc_of f /. 1,f /. (1 + 1) by A6, TOPREAL4:2; hence P is being_simple_closed_curve by A1, A4, A5, A8, A9, A11, A3, A10, A12, TOPREAL2:6; ::_thesis: verum end; theorem Th52: :: JORDAN4:52 for i1, i2 being Element of NAT for f being non constant standard special_circular_sequence for g1, g2 being FinSequence of (TOP-REAL 2) st g1 is_a_part>_of f,i1,i2 & g2 is_a_part>_of f,i1,i2 holds g1 = g2 proof let i1, i2 be Element of NAT ; ::_thesis: for f being non constant standard special_circular_sequence for g1, g2 being FinSequence of (TOP-REAL 2) st g1 is_a_part>_of f,i1,i2 & g2 is_a_part>_of f,i1,i2 holds g1 = g2 let f be non constant standard special_circular_sequence; ::_thesis: for g1, g2 being FinSequence of (TOP-REAL 2) st g1 is_a_part>_of f,i1,i2 & g2 is_a_part>_of f,i1,i2 holds g1 = g2 let g1, g2 be FinSequence of (TOP-REAL 2); ::_thesis: ( g1 is_a_part>_of f,i1,i2 & g2 is_a_part>_of f,i1,i2 implies g1 = g2 ) assume that A1: g1 is_a_part>_of f,i1,i2 and A2: g2 is_a_part>_of f,i1,i2 ; ::_thesis: g1 = g2 now__::_thesis:_(_(_i1_<=_i2_&_g1_=_g2_)_or_(_i1_>_i2_&_g1_=_g2_)_) percases ( i1 <= i2 or i1 > i2 ) ; caseA3: i1 <= i2 ; ::_thesis: g1 = g2 then g1 = mid (f,i1,i2) by A1, Th25; hence g1 = g2 by A2, A3, Th25; ::_thesis: verum end; caseA4: i1 > i2 ; ::_thesis: g1 = g2 then g1 = (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) by A1, Th26; hence g1 = g2 by A2, A4, Th26; ::_thesis: verum end; end; end; hence g1 = g2 ; ::_thesis: verum end; theorem Th53: :: JORDAN4:53 for i1, i2 being Element of NAT for f being non constant standard special_circular_sequence for g1, g2 being FinSequence of (TOP-REAL 2) st g1 is_a_part<_of f,i1,i2 & g2 is_a_part<_of f,i1,i2 holds g1 = g2 proof let i1, i2 be Element of NAT ; ::_thesis: for f being non constant standard special_circular_sequence for g1, g2 being FinSequence of (TOP-REAL 2) st g1 is_a_part<_of f,i1,i2 & g2 is_a_part<_of f,i1,i2 holds g1 = g2 let f be non constant standard special_circular_sequence; ::_thesis: for g1, g2 being FinSequence of (TOP-REAL 2) st g1 is_a_part<_of f,i1,i2 & g2 is_a_part<_of f,i1,i2 holds g1 = g2 let g1, g2 be FinSequence of (TOP-REAL 2); ::_thesis: ( g1 is_a_part<_of f,i1,i2 & g2 is_a_part<_of f,i1,i2 implies g1 = g2 ) assume that A1: g1 is_a_part<_of f,i1,i2 and A2: g2 is_a_part<_of f,i1,i2 ; ::_thesis: g1 = g2 percases ( i1 >= i2 or i1 < i2 ) ; supposeA3: i1 >= i2 ; ::_thesis: g1 = g2 then g1 = mid (f,i1,i2) by A1, Th27; hence g1 = g2 by A2, A3, Th27; ::_thesis: verum end; supposeA4: i1 < i2 ; ::_thesis: g1 = g2 then g1 = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) by A1, Th28; hence g1 = g2 by A2, A4, Th28; ::_thesis: verum end; end; end; theorem Th54: :: JORDAN4:54 for i1, i2 being Element of NAT for f being non constant standard special_circular_sequence for g1, g2 being FinSequence of (TOP-REAL 2) st i1 <> i2 & g1 is_a_part>_of f,i1,i2 & g2 is_a_part<_of f,i1,i2 holds g1 . 2 <> g2 . 2 proof let i1, i2 be Element of NAT ; ::_thesis: for f being non constant standard special_circular_sequence for g1, g2 being FinSequence of (TOP-REAL 2) st i1 <> i2 & g1 is_a_part>_of f,i1,i2 & g2 is_a_part<_of f,i1,i2 holds g1 . 2 <> g2 . 2 let f be non constant standard special_circular_sequence; ::_thesis: for g1, g2 being FinSequence of (TOP-REAL 2) st i1 <> i2 & g1 is_a_part>_of f,i1,i2 & g2 is_a_part<_of f,i1,i2 holds g1 . 2 <> g2 . 2 let g1, g2 be FinSequence of (TOP-REAL 2); ::_thesis: ( i1 <> i2 & g1 is_a_part>_of f,i1,i2 & g2 is_a_part<_of f,i1,i2 implies g1 . 2 <> g2 . 2 ) assume that A1: i1 <> i2 and A2: g1 is_a_part>_of f,i1,i2 and A3: g2 is_a_part<_of f,i1,i2 ; ::_thesis: g1 . 2 <> g2 . 2 A4: 1 <= i1 by A2, Def2; A5: i2 + 1 <= len f by A2, Def2; then A6: i2 < len f by NAT_1:13; A7: (len f) -' 1 < ((len f) -' 1) + 1 by NAT_1:13; A8: 1 <= i2 by A2, Def2; A9: i1 + 1 <= len f by A2, Def2; then A10: i1 < len f by NAT_1:13; A11: 1 <= 1 + i1 by NAT_1:11; then A12: (len f) -' 1 = (len f) - 1 by A9, XREAL_1:233, XXREAL_0:2; A13: 1 <= len f by A9, A11, XXREAL_0:2; now__::_thesis:_(_(_i1_<=_i2_&_g1_._2_<>_g2_._2_)_or_(_i1_>_i2_&_g1_._2_<>_g2_._2_)_) percases ( i1 <= i2 or i1 > i2 ) ; caseA14: i1 <= i2 ; ::_thesis: g1 . 2 <> g2 . 2 now__::_thesis:_(_(_i1_=_i2_&_contradiction_)_or_(_i1_<_i2_&_g1_._2_<>_g2_._2_)_) percases ( i1 = i2 or i1 < i2 ) by A14, XXREAL_0:1; case i1 = i2 ; ::_thesis: contradiction hence contradiction by A1; ::_thesis: verum end; caseA15: i1 < i2 ; ::_thesis: g1 . 2 <> g2 . 2 A16: len (mid (f,i1,1)) = (i1 -' 1) + 1 by A4, A10, Th9; (i1 + 1) - 1 <= (len f) - 1 by A9, XREAL_1:9; then A17: 1 <= (len f) -' 1 by A4, A12, XXREAL_0:2; A18: g2 = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) by A3, A15, Th28; now__::_thesis:_(_(_1_<_i1_&_g1_._2_<>_g2_._2_)_or_(_1_=_i1_&_g1_._2_<>_g2_._2_)_) percases ( 1 < i1 or 1 = i1 ) by A4, XXREAL_0:1; caseA19: 1 < i1 ; ::_thesis: g1 . 2 <> g2 . 2 then 1 + 1 <= (i1 - 1) + 1 by NAT_1:13; then A20: 2 <= len (mid (f,i1,1)) by A4, A16, XREAL_1:233; A21: 1 + 1 <= i1 by A19, NAT_1:13; A22: g2 . 2 = ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 by A3, A15, Th28 .= (mid (f,i1,1)) . 2 by A20, FINSEQ_1:64 .= f . ((i1 -' 2) + 1) by A13, A10, A19, A20, FINSEQ_6:118 .= f . ((i1 - (1 + 1)) + 1) by A21, XREAL_1:233 .= f . (i1 - 1) .= f . (i1 -' 1) by A4, XREAL_1:233 ; 1 + 1 <= i1 by A19, NAT_1:13; then A23: (1 + 1) - 1 <= i1 - 1 by XREAL_1:9; then A24: 1 <= i1 -' 1 by NAT_D:39; i1 + 1 <= i2 by A15, NAT_1:13; then (1 + i1) - i1 <= i2 - i1 by XREAL_1:9; then 1 <= i2 -' i1 by NAT_D:39; then 1 + 1 <= (i2 -' i1) + 1 by XREAL_1:6; then A25: 2 <= len (mid (f,i1,i2)) by A4, A8, A6, A10, A15, FINSEQ_6:118; A26: g1 . 2 = (mid (f,i1,i2)) . 2 by A2, A15, Th25 .= f . ((2 + i1) -' 1) by A4, A8, A6, A10, A15, A25, FINSEQ_6:118 .= f . (((1 + 1) + i1) - 1) by NAT_D:37 .= f . (i1 + 1) ; A27: now__::_thesis:_(_1_=_i1_-'_1_implies_not_i1_+_1_=_len_f_) assume that A28: 1 = i1 -' 1 and A29: i1 + 1 = len f ; ::_thesis: contradiction 1 = i1 - 1 by A28, NAT_D:39; hence contradiction by A29, GOBOARD7:34; ::_thesis: verum end; now__::_thesis:_(_(_1_<>_i1_-'_1_&_g1_._2_<>_g2_._2_)_or_(_i1_+_1_<>_len_f_&_g1_._2_<>_g2_._2_)_) percases ( 1 <> i1 -' 1 or i1 + 1 <> len f ) by A27; caseA30: 1 <> i1 -' 1 ; ::_thesis: g1 . 2 <> g2 . 2 A31: 1 < i1 + 1 by A4, NAT_1:13; i1 -' 1 < (i1 -' 1) + 1 by NAT_1:13; then i1 -' 1 < i1 by A4, XREAL_1:235; then A32: i1 -' 1 < i1 + 1 by NAT_1:13; A33: i1 + 1 <= len f by A2, Def2; then i1 -' 1 < len f by A32, XXREAL_0:2; then A34: f . (i1 -' 1) = f /. (i1 -' 1) by A24, FINSEQ_4:15; 1 < i1 -' 1 by A24, A30, XXREAL_0:1; then f /. (i1 -' 1) <> f /. (i1 + 1) by A32, A33, GOBOARD7:37; hence g1 . 2 <> g2 . 2 by A9, A22, A26, A34, A31, FINSEQ_4:15; ::_thesis: verum end; caseA35: i1 + 1 <> len f ; ::_thesis: g1 . 2 <> g2 . 2 A36: 1 <= i1 -' 1 by A23, NAT_D:39; i1 -' 1 < (i1 -' 1) + 1 by NAT_1:13; then i1 -' 1 < i1 by A4, XREAL_1:235; then A37: i1 -' 1 < i1 + 1 by NAT_1:13; then i1 -' 1 < len f by A9, XXREAL_0:2; then A38: f . (i1 -' 1) = f /. (i1 -' 1) by A36, FINSEQ_4:15; A39: 1 < i1 + 1 by A4, NAT_1:13; i1 + 1 < len f by A9, A35, XXREAL_0:1; then f /. (i1 -' 1) <> f /. (i1 + 1) by A36, A37, GOBOARD7:36; hence g1 . 2 <> g2 . 2 by A9, A22, A26, A38, A39, FINSEQ_4:15; ::_thesis: verum end; end; end; hence g1 . 2 <> g2 . 2 ; ::_thesis: verum end; caseA40: 1 = i1 ; ::_thesis: g1 . 2 <> g2 . 2 len f > 4 by GOBOARD7:34; then (len f) - 1 > (3 + 1) - 1 by XREAL_1:9; then i1 + 1 < (len f) -' 1 by A12, A40, XXREAL_0:2; then A41: f /. (i1 + 1) <> f /. ((len f) -' 1) by A12, A7, A40, GOBOARD7:37; i1 + 1 <= i2 by A15, NAT_1:13; then (1 + i1) - i1 <= i2 - i1 by XREAL_1:9; then 1 <= i2 -' i1 by NAT_D:39; then 1 + 1 <= (i2 -' i1) + 1 by XREAL_1:6; then A42: 2 <= len (mid (f,i1,i2)) by A4, A8, A6, A10, A15, FINSEQ_6:118; A43: f . ((len f) -' 1) = f /. ((len f) -' 1) by A12, A7, A17, FINSEQ_4:15; A44: len (mid (f,i1,1)) = (i1 -' 1) + 1 by A4, A10, Th9 .= 0 + 1 by A40, XREAL_1:232 .= 1 ; (i2 + 1) + 1 <= (len f) + 1 by A5, XREAL_1:6; then A45: ((1 + i2) + 1) - i2 <= ((len f) + 1) - i2 by XREAL_1:9; A46: len (mid (f,i1,1)) = (i1 -' 1) + 1 by A4, A10, Th9 .= 0 + 1 by A40, XREAL_1:232 .= 1 ; len g2 = ((len f) + i1) -' i2 by A3, A15, Th28 .= ((len f) + 1) - i2 by A6, A40, NAT_D:37 ; then A47: g2 . 2 = (mid (f,((len f) -' 1),i2)) . (2 - (len (mid (f,i1,1)))) by A18, A44, A45, FINSEQ_6:108 .= f . ((len f) -' 1) by A8, A12, A7, A6, A17, A46, FINSEQ_6:118 ; A48: 1 < i1 + 1 by A4, NAT_1:13; g1 . 2 = (mid (f,i1,i2)) . 2 by A2, A15, Th25 .= f . ((2 + i1) -' 1) by A4, A8, A6, A10, A15, A42, FINSEQ_6:118 .= f . (((1 + 1) + i1) - 1) by NAT_D:37 .= f . (i1 + 1) ; hence g1 . 2 <> g2 . 2 by A9, A47, A41, A43, A48, FINSEQ_4:15; ::_thesis: verum end; end; end; hence g1 . 2 <> g2 . 2 ; ::_thesis: verum end; end; end; hence g1 . 2 <> g2 . 2 ; ::_thesis: verum end; caseA49: i1 > i2 ; ::_thesis: g1 . 2 <> g2 . 2 then i2 + 1 <= i1 by NAT_1:13; then (1 + i2) - i2 <= i1 - i2 by XREAL_1:9; then 1 <= i1 -' i2 by NAT_D:39; then 1 + 1 <= (i1 -' i2) + 1 by XREAL_1:6; then A50: 2 <= len (mid (f,i1,i2)) by A4, A8, A6, A10, A49, FINSEQ_6:118; 1 < i1 by A8, A49, XXREAL_0:2; then A51: 1 + 1 <= i1 by NAT_1:13; A52: g2 . 2 = (mid (f,i1,i2)) . 2 by A3, A49, Th27 .= f . ((i1 -' 2) + 1) by A4, A8, A6, A10, A49, A50, FINSEQ_6:118 .= f . ((i1 - (1 + 1)) + 1) by A51, XREAL_1:233 .= f . (i1 - 1) .= f . (i1 -' 1) by A4, XREAL_1:233 ; 1 < i1 by A8, A49, XXREAL_0:2; then 1 + 1 <= i1 by NAT_1:13; then A53: (1 + 1) - 1 <= i1 - 1 by XREAL_1:9; then A54: 1 <= i1 -' 1 by NAT_D:39; A55: (i1 + 1) - 1 <= (len f) - 1 by A9, XREAL_1:9; then 1 <= (len f) -' 1 by A4, A12, XXREAL_0:2; then A56: len (mid (f,i1,((len f) -' 1))) = (((len f) -' 1) -' i1) + 1 by A4, A12, A7, A10, A55, FINSEQ_6:118; A57: (i1 + 1) - 1 <= (len f) - 1 by A9, XREAL_1:9; A58: g1 = (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) by A2, A49, Th26; A59: now__::_thesis:_(_(_i1_<_(len_f)_-_1_&_g1_._2_=_f_._(i1_+_1)_)_or_(_i1_=_(len_f)_-_1_&_g1_._2_=_f_._(i1_+_1)_)_) percases ( i1 < (len f) - 1 or i1 = (len f) - 1 ) by A55, XXREAL_0:1; case i1 < (len f) - 1 ; ::_thesis: g1 . 2 = f . (i1 + 1) then i1 + 1 <= (len f) -' 1 by A12, NAT_1:13; then A60: 1 + (i1 + 1) <= 1 + ((len f) -' 1) by XREAL_1:6; then A61: (1 + (i1 + 1)) - i1 <= (1 + ((len f) -' 1)) - i1 by XREAL_1:9; ((1 + 1) + i1) - i1 <= (1 + ((len f) -' 1)) - i1 by A60, XREAL_1:9; then 1 + 1 <= 1 + (((len f) -' 1) - i1) ; then A62: 2 <= len (mid (f,i1,((len f) -' 1))) by A12, A56, A57, XREAL_1:233; thus g1 . 2 = ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 by A2, A49, Th26 .= (mid (f,i1,((len f) -' 1))) . 2 by A62, FINSEQ_1:64 .= f . (((1 + 1) + i1) - 1) by A4, A12, A7, A57, A61, FINSEQ_6:122 .= f . (i1 + 1) ; ::_thesis: verum end; caseA63: i1 = (len f) - 1 ; ::_thesis: g1 . 2 = f . (i1 + 1) then A64: len (mid (f,i1,((len f) -' 1))) = (((len f) -' 1) -' ((len f) -' 1)) + 1 by A4, A12, A7, FINSEQ_6:118 .= 0 + 1 by XREAL_1:232 .= 1 ; A65: 1 + 1 <= i2 + 1 by A8, XREAL_1:6; A66: len (mid (f,i1,((len f) -' 1))) = (((len f) -' 1) -' ((len f) -' 1)) + 1 by A4, A12, A7, A63, FINSEQ_6:118 .= 0 + 1 by XREAL_1:232 .= 1 ; len g1 = ((((len f) -' 1) + 1) + i2) -' ((len f) -' 1) by A2, A12, A49, A63, Th26 .= (((len f) -' 1) + (1 + i2)) -' ((len f) -' 1) .= 1 + i2 by NAT_D:34 ; hence g1 . 2 = (mid (f,1,i2)) . (2 - (len (mid (f,i1,((len f) -' 1))))) by A58, A64, A65, FINSEQ_6:108 .= f . 1 by A8, A13, A6, A66, FINSEQ_6:118 .= f . (i1 + 1) by A63, Th5, NAT_1:11 ; ::_thesis: verum end; end; end; A67: now__::_thesis:_(_1_=_i1_-'_1_implies_not_i1_+_1_=_len_f_) assume that A68: 1 = i1 -' 1 and A69: i1 + 1 = len f ; ::_thesis: contradiction 1 = i1 - 1 by A68, NAT_D:39; hence contradiction by A69, GOBOARD7:34; ::_thesis: verum end; now__::_thesis:_(_(_1_<>_i1_-'_1_&_g1_._2_<>_g2_._2_)_or_(_i1_+_1_<>_len_f_&_g1_._2_<>_g2_._2_)_) percases ( 1 <> i1 -' 1 or i1 + 1 <> len f ) by A67; caseA70: 1 <> i1 -' 1 ; ::_thesis: g1 . 2 <> g2 . 2 A71: 1 < i1 + 1 by A4, NAT_1:13; i1 -' 1 < (i1 -' 1) + 1 by NAT_1:13; then i1 -' 1 < i1 by A4, XREAL_1:235; then A72: i1 -' 1 < i1 + 1 by NAT_1:13; A73: i1 + 1 <= len f by A2, Def2; then i1 -' 1 < len f by A72, XXREAL_0:2; then A74: f . (i1 -' 1) = f /. (i1 -' 1) by A54, FINSEQ_4:15; 1 < i1 -' 1 by A54, A70, XXREAL_0:1; then f /. (i1 -' 1) <> f /. (i1 + 1) by A72, A73, GOBOARD7:37; hence g1 . 2 <> g2 . 2 by A9, A59, A52, A74, A71, FINSEQ_4:15; ::_thesis: verum end; caseA75: i1 + 1 <> len f ; ::_thesis: g1 . 2 <> g2 . 2 A76: 1 <= i1 -' 1 by A53, NAT_D:39; i1 -' 1 < (i1 -' 1) + 1 by NAT_1:13; then i1 -' 1 < i1 by A4, XREAL_1:235; then A77: i1 -' 1 < i1 + 1 by NAT_1:13; then i1 -' 1 < len f by A9, XXREAL_0:2; then A78: f . (i1 -' 1) = f /. (i1 -' 1) by A76, FINSEQ_4:15; A79: 1 < i1 + 1 by A4, NAT_1:13; i1 + 1 < len f by A9, A75, XXREAL_0:1; then f /. (i1 -' 1) <> f /. (i1 + 1) by A76, A77, GOBOARD7:36; hence g1 . 2 <> g2 . 2 by A9, A59, A52, A78, A79, FINSEQ_4:15; ::_thesis: verum end; end; end; hence g1 . 2 <> g2 . 2 ; ::_thesis: verum end; end; end; hence g1 . 2 <> g2 . 2 ; ::_thesis: verum end; theorem Th55: :: JORDAN4:55 for i1, i2 being Element of NAT for f being non constant standard special_circular_sequence for g1, g2 being FinSequence of (TOP-REAL 2) st i1 <> i2 & g1 is_a_part_of f,i1,i2 & g2 is_a_part_of f,i1,i2 & g1 . 2 = g2 . 2 holds g1 = g2 proof let i1, i2 be Element of NAT ; ::_thesis: for f being non constant standard special_circular_sequence for g1, g2 being FinSequence of (TOP-REAL 2) st i1 <> i2 & g1 is_a_part_of f,i1,i2 & g2 is_a_part_of f,i1,i2 & g1 . 2 = g2 . 2 holds g1 = g2 let f be non constant standard special_circular_sequence; ::_thesis: for g1, g2 being FinSequence of (TOP-REAL 2) st i1 <> i2 & g1 is_a_part_of f,i1,i2 & g2 is_a_part_of f,i1,i2 & g1 . 2 = g2 . 2 holds g1 = g2 let g1, g2 be FinSequence of (TOP-REAL 2); ::_thesis: ( i1 <> i2 & g1 is_a_part_of f,i1,i2 & g2 is_a_part_of f,i1,i2 & g1 . 2 = g2 . 2 implies g1 = g2 ) assume that A1: i1 <> i2 and A2: g1 is_a_part_of f,i1,i2 and A3: g2 is_a_part_of f,i1,i2 and A4: g1 . 2 = g2 . 2 ; ::_thesis: g1 = g2 percases ( g1 is_a_part>_of f,i1,i2 or g1 is_a_part<_of f,i1,i2 ) by A2, Def4; supposeA5: g1 is_a_part>_of f,i1,i2 ; ::_thesis: g1 = g2 now__::_thesis:_(_(_g2_is_a_part>_of_f,i1,i2_&_g1_=_g2_)_or_(_g2_is_a_part<_of_f,i1,i2_&_contradiction_)_) percases ( g2 is_a_part>_of f,i1,i2 or g2 is_a_part<_of f,i1,i2 ) by A3, Def4; case g2 is_a_part>_of f,i1,i2 ; ::_thesis: g1 = g2 hence g1 = g2 by A5, Th52; ::_thesis: verum end; case g2 is_a_part<_of f,i1,i2 ; ::_thesis: contradiction hence contradiction by A1, A4, A5, Th54; ::_thesis: verum end; end; end; hence g1 = g2 ; ::_thesis: verum end; supposeA6: g1 is_a_part<_of f,i1,i2 ; ::_thesis: g1 = g2 now__::_thesis:_(_(_g2_is_a_part>_of_f,i1,i2_&_contradiction_)_or_(_g2_is_a_part<_of_f,i1,i2_&_g1_=_g2_)_) percases ( g2 is_a_part>_of f,i1,i2 or g2 is_a_part<_of f,i1,i2 ) by A3, Def4; case g2 is_a_part>_of f,i1,i2 ; ::_thesis: contradiction hence contradiction by A1, A4, A6, Th54; ::_thesis: verum end; case g2 is_a_part<_of f,i1,i2 ; ::_thesis: g1 = g2 hence g1 = g2 by A6, Th53; ::_thesis: verum end; end; end; hence g1 = g2 ; ::_thesis: verum end; end; end; definition let f be non constant standard special_circular_sequence; let i1, i2 be Element of NAT ; assume that A1: 1 <= i1 and A2: i1 + 1 <= len f and A3: 1 <= i2 and A4: i2 + 1 <= len f and A5: i1 <> i2 ; func Lower (f,i1,i2) -> FinSequence of (TOP-REAL 2) means :: JORDAN4:def 5 ( it is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies it . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies it . 2 = f . (S_Drop ((i1 -' 1),f)) ) ); correctness existence ex b1 being FinSequence of (TOP-REAL 2) st ( b1 is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies b1 . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies b1 . 2 = f . (S_Drop ((i1 -' 1),f)) ) ); uniqueness for b1, b2 being FinSequence of (TOP-REAL 2) st b1 is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies b1 . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies b1 . 2 = f . (S_Drop ((i1 -' 1),f)) ) & b2 is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies b2 . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies b2 . 2 = f . (S_Drop ((i1 -' 1),f)) ) holds b1 = b2; proof A6: (i1 + 1) - 1 <= (len f) - 1 by A2, XREAL_1:9; A7: i1 -' 1 = i1 - 1 by A1, XREAL_1:233; A8: (i2 + 1) - 1 <= (len f) - 1 by A4, XREAL_1:9; A9: i2 < len f by A4, NAT_1:13; len f < (len f) + 1 by NAT_1:13; then A10: (len f) - 1 < ((len f) + 1) - 1 by XREAL_1:9; A11: i1 < len f by A2, NAT_1:13; then A12: (len f) -' 1 = (len f) - 1 by A1, XREAL_1:233, XXREAL_0:2; A13: 1 < len f by A1, A11, XXREAL_0:2; then 1 + 1 <= len f by NAT_1:13; then A14: (1 + 1) - 1 <= (len f) - 1 by XREAL_1:9; then A15: 1 <= (len f) -' 1 by NAT_D:39; now__::_thesis:_(_(_i1_<=_i2_&_ex_g_being_FinSequence_of_(TOP-REAL_2)_st_ (_g_is_a_part_of_f,i1,i2_&_(_(_(f_/._(i1_+_1))_`1_<_(f_/._i1)_`1_or_(f_/._(i1_+_1))_`2_<_(f_/._i1)_`2_)_implies_g_._2_=_f_._(i1_+_1)_)_&_(_(f_/._(i1_+_1))_`1_>=_(f_/._i1)_`1_&_(f_/._(i1_+_1))_`2_>=_(f_/._i1)_`2_implies_g_._2_=_f_._(S_Drop_((i1_-'_1),f))_)_)_)_or_(_i1_>_i2_&_ex_g_being_FinSequence_of_(TOP-REAL_2)_st_ (_g_is_a_part_of_f,i1,i2_&_(_(_(f_/._(i1_+_1))_`1_<_(f_/._i1)_`1_or_(f_/._(i1_+_1))_`2_<_(f_/._i1)_`2_)_implies_g_._2_=_f_._(i1_+_1)_)_&_(_(f_/._(i1_+_1))_`1_>=_(f_/._i1)_`1_&_(f_/._(i1_+_1))_`2_>=_(f_/._i1)_`2_implies_g_._2_=_f_._(S_Drop_((i1_-'_1),f))_)_)_)_) percases ( i1 <= i2 or i1 > i2 ) ; caseA16: i1 <= i2 ; ::_thesis: ex g being FinSequence of (TOP-REAL 2) st ( g is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies g . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies g . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) then A17: i1 < i2 by A5, XXREAL_0:1; now__::_thesis:_(_(_(_(f_/._(i1_+_1))_`1_<_(f_/._i1)_`1_or_(f_/._(i1_+_1))_`2_<_(f_/._i1)_`2_)_&_mid_(f,i1,i2)_is_a_part_of_f,i1,i2_&_(_(_(f_/._(i1_+_1))_`1_<_(f_/._i1)_`1_or_(f_/._(i1_+_1))_`2_<_(f_/._i1)_`2_)_implies_(mid_(f,i1,i2))_._2_=_f_._(i1_+_1)_)_&_(_(f_/._(i1_+_1))_`1_>=_(f_/._i1)_`1_&_(f_/._(i1_+_1))_`2_>=_(f_/._i1)_`2_implies_(mid_(f,i1,i2))_._2_=_f_._(S_Drop_((i1_-'_1),f))_)_)_or_(_(f_/._(i1_+_1))_`1_>=_(f_/._i1)_`1_&_(f_/._(i1_+_1))_`2_>=_(f_/._i1)_`2_&_(mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2))_is_a_part_of_f,i1,i2_&_(_(_(f_/._(i1_+_1))_`1_<_(f_/._i1)_`1_or_(f_/._(i1_+_1))_`2_<_(f_/._i1)_`2_)_implies_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._2_=_f_._(i1_+_1)_)_&_(_(f_/._(i1_+_1))_`1_>=_(f_/._i1)_`1_&_(f_/._(i1_+_1))_`2_>=_(f_/._i1)_`2_implies_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._2_=_f_._(S_Drop_((i1_-'_1),f))_)_)_) percases ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 or ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 ) ) ; caseA18: ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) ; ::_thesis: ( mid (f,i1,i2) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies (mid (f,i1,i2)) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies (mid (f,i1,i2)) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) set g = mid (f,i1,i2); i1 + 1 <= i2 by A17, NAT_1:13; then (1 + i1) + 1 <= i2 + 1 by XREAL_1:6; then (2 + i1) - i1 <= (i2 + 1) - i1 by XREAL_1:9; then A19: (2 + i1) - i1 <= (i2 - i1) + 1 ; len (mid (f,i1,i2)) = (i2 -' i1) + 1 by A1, A3, A11, A9, A16, FINSEQ_6:118; then 2 <= len (mid (f,i1,i2)) by A16, A19, XREAL_1:233; then A20: (mid (f,i1,i2)) . 2 = f . ((2 + i1) -' 1) by A1, A3, A11, A9, A16, FINSEQ_6:118 .= f . (((i1 + 1) + 1) - 1) by NAT_D:37 .= f . (i1 + 1) ; mid (f,i1,i2) is_a_part>_of f,i1,i2 by A1, A9, A16, Th31; hence ( mid (f,i1,i2) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies (mid (f,i1,i2)) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies (mid (f,i1,i2)) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) by A18, A20, Def4; ::_thesis: verum end; caseA21: ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 ) ; ::_thesis: ( (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) set g = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)); A22: len (mid (f,i1,1)) = (i1 -' 1) + 1 by A1, A11, Th9; A23: (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) is_a_part<_of f,i1,i2 by A1, A9, A17, Th34; now__::_thesis:_(_(_1_<_i1_&_(mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2))_is_a_part_of_f,i1,i2_&_(_(_(f_/._(i1_+_1))_`1_<_(f_/._i1)_`1_or_(f_/._(i1_+_1))_`2_<_(f_/._i1)_`2_)_implies_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._2_=_f_._(i1_+_1)_)_&_(_(f_/._(i1_+_1))_`1_>=_(f_/._i1)_`1_&_(f_/._(i1_+_1))_`2_>=_(f_/._i1)_`2_implies_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._2_=_f_._(S_Drop_((i1_-'_1),f))_)_)_or_(_1_>=_i1_&_(mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2))_is_a_part_of_f,i1,i2_&_(_(_(f_/._(i1_+_1))_`1_<_(f_/._i1)_`1_or_(f_/._(i1_+_1))_`2_<_(f_/._i1)_`2_)_implies_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._2_=_f_._(i1_+_1)_)_&_(_(f_/._(i1_+_1))_`1_>=_(f_/._i1)_`1_&_(f_/._(i1_+_1))_`2_>=_(f_/._i1)_`2_implies_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._2_=_f_._(S_Drop_((i1_-'_1),f))_)_)_) percases ( 1 < i1 or 1 >= i1 ) ; caseA24: 1 < i1 ; ::_thesis: ( (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) then 1 + 1 <= (i1 - 1) + 1 by NAT_1:13; then A25: 2 <= len (mid (f,i1,1)) by A1, A22, XREAL_1:233; A26: i1 -' 1 <= (len f) -' 1 by A11, A7, A12, XREAL_1:9; A27: 1 + 1 <= i1 by A24, NAT_1:13; then A28: (1 + 1) - 1 <= i1 - 1 by XREAL_1:9; A29: f . ((i1 -' (1 + 1)) + 1) = f . ((i1 - (1 + 1)) + 1) by A27, XREAL_1:233 .= f . (i1 - 1) .= f . (i1 -' 1) by A1, XREAL_1:233 ; ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = (mid (f,i1,1)) . 2 by A7, A22, A27, FINSEQ_1:64 .= f . ((i1 -' (1 + 1)) + 1) by A11, A13, A24, A25, FINSEQ_6:118 ; hence ( (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) by A7, A21, A23, A29, A28, A26, Def4, Th22; ::_thesis: verum end; caseA30: 1 >= i1 ; ::_thesis: ( (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) then i1 = 1 by A1, XXREAL_0:1; then A31: i1 -' 1 = 0 by XREAL_1:232; A32: S_Drop ((i1 -' 1),f) = S_Drop (((i1 -' 1) + ((len f) -' 1)),f) by Th23 .= (len f) -' 1 by A15, A31, Th22 ; A33: 1 <= (((len f) -' 1) -' i2) + 1 by NAT_1:11; A34: (len f) - i2 >= (i2 + 1) - i2 by A4, XREAL_1:9; A35: len (mid (f,i1,1)) = len (mid (f,1,1)) by A1, A30, XXREAL_0:1 .= 1 by A13, Th15 ; len (mid (f,((len f) -' 1),i2)) = (((len f) -' 1) -' i2) + 1 by A3, A12, A8, A10, Th9 .= (((len f) - 1) - i2) + 1 by A12, A8, XREAL_1:233 .= (len f) - i2 ; then 1 + 1 <= (len (mid (f,i1,1))) + (len (mid (f,((len f) -' 1),i2))) by A35, A34, XREAL_1:6; then ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = (mid (f,((len f) -' 1),i2)) . (2 - (len (mid (f,i1,1)))) by A35, FINSEQ_6:108 .= (mid (f,((len f) -' 1),i2)) . (2 - ((i1 -' 1) + 1)) by A1, A11, Th9 .= (mid (f,((len f) -' 1),i2)) . ((1 + 1) - ((1 -' 1) + 1)) by A1, A30, XXREAL_0:1 .= (mid (f,((len f) -' 1),i2)) . ((1 + 1) - (0 + 1)) by XREAL_1:232 .= f . ((((len f) -' 1) -' 1) + 1) by A3, A12, A8, A10, A33, Th12 .= f . ((len f) -' 1) by A15, XREAL_1:235 ; hence ( (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) by A21, A23, A32, Def4; ::_thesis: verum end; end; end; hence ( (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) ; ::_thesis: verum end; end; end; hence ex g being FinSequence of (TOP-REAL 2) st ( g is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies g . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies g . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) ; ::_thesis: verum end; caseA36: i1 > i2 ; ::_thesis: ex g being FinSequence of (TOP-REAL 2) st ( g is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies g . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies g . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) then i1 > 1 by A3, XXREAL_0:2; then A37: 1 + 1 <= i1 by NAT_1:13; then A38: (1 + 1) - 1 <= i1 - 1 by XREAL_1:9; now__::_thesis:_(_(_(f_/._(i1_+_1))_`1_>=_(f_/._i1)_`1_&_(f_/._(i1_+_1))_`2_>=_(f_/._i1)_`2_&_mid_(f,i1,i2)_is_a_part_of_f,i1,i2_&_(_(_(f_/._(i1_+_1))_`1_<_(f_/._i1)_`1_or_(f_/._(i1_+_1))_`2_<_(f_/._i1)_`2_)_implies_(mid_(f,i1,i2))_._2_=_f_._(i1_+_1)_)_&_(_(f_/._(i1_+_1))_`1_>=_(f_/._i1)_`1_&_(f_/._(i1_+_1))_`2_>=_(f_/._i1)_`2_implies_(mid_(f,i1,i2))_._2_=_f_._(S_Drop_((i1_-'_1),f))_)_)_or_(_(_(f_/._(i1_+_1))_`1_<_(f_/._i1)_`1_or_(f_/._(i1_+_1))_`2_<_(f_/._i1)_`2_)_&_(mid_(f,i1,((len_f)_-'_1)))_^_(mid_(f,1,i2))_is_a_part_of_f,i1,i2_&_(_(_(f_/._(i1_+_1))_`1_<_(f_/._i1)_`1_or_(f_/._(i1_+_1))_`2_<_(f_/._i1)_`2_)_implies_((mid_(f,i1,((len_f)_-'_1)))_^_(mid_(f,1,i2)))_._2_=_f_._(i1_+_1)_)_&_(_(f_/._(i1_+_1))_`1_>=_(f_/._i1)_`1_&_(f_/._(i1_+_1))_`2_>=_(f_/._i1)_`2_implies_((mid_(f,i1,((len_f)_-'_1)))_^_(mid_(f,1,i2)))_._2_=_f_._(S_Drop_((i1_-'_1),f))_)_)_) percases ( ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 ) or (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) ; caseA39: ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 ) ; ::_thesis: ( mid (f,i1,i2) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies (mid (f,i1,i2)) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies (mid (f,i1,i2)) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) set g = mid (f,i1,i2); A40: i1 - 1 < (len f) - 1 by A11, XREAL_1:9; i2 + 1 <= i1 by A36, NAT_1:13; then (1 + i2) + 1 <= i1 + 1 by XREAL_1:6; then (2 + i2) - i2 <= (i1 + 1) - i2 by XREAL_1:9; then A41: (2 + i2) - i2 <= (i1 - i2) + 1 ; len (mid (f,i1,i2)) = (i1 -' i2) + 1 by A1, A3, A11, A9, A36, FINSEQ_6:118; then 2 <= len (mid (f,i1,i2)) by A36, A41, XREAL_1:233; then A42: (mid (f,i1,i2)) . 2 = f . ((i1 -' 2) + 1) by A1, A3, A11, A9, A36, FINSEQ_6:118 .= f . ((i1 - (1 + 1)) + 1) by A37, XREAL_1:233 .= f . (i1 - 1) .= f . (i1 -' 1) by A1, XREAL_1:233 ; mid (f,i1,i2) is_a_part<_of f,i1,i2 by A3, A11, A36, Th32; hence ( mid (f,i1,i2) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies (mid (f,i1,i2)) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies (mid (f,i1,i2)) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) by A7, A12, A38, A39, A42, A40, Def4, Th22; ::_thesis: verum end; caseA43: ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) ; ::_thesis: ( (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) set g = (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)); A44: (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) is_a_part>_of f,i1,i2 by A3, A11, A36, Th33; A45: len (mid (f,i1,((len f) -' 1))) = (((len f) -' 1) -' i1) + 1 by A1, A11, A14, A12, A6, A10, FINSEQ_6:118 .= (((len f) - 1) - i1) + 1 by A12, A6, XREAL_1:233 .= (len f) - i1 ; now__::_thesis:_(_(_i1_+_1_<_len_f_&_(mid_(f,i1,((len_f)_-'_1)))_^_(mid_(f,1,i2))_is_a_part_of_f,i1,i2_&_(_(_(f_/._(i1_+_1))_`1_<_(f_/._i1)_`1_or_(f_/._(i1_+_1))_`2_<_(f_/._i1)_`2_)_implies_((mid_(f,i1,((len_f)_-'_1)))_^_(mid_(f,1,i2)))_._2_=_f_._(i1_+_1)_)_&_(_(f_/._(i1_+_1))_`1_>=_(f_/._i1)_`1_&_(f_/._(i1_+_1))_`2_>=_(f_/._i1)_`2_implies_((mid_(f,i1,((len_f)_-'_1)))_^_(mid_(f,1,i2)))_._2_=_f_._(S_Drop_((i1_-'_1),f))_)_)_or_(_i1_+_1_>=_len_f_&_(mid_(f,i1,((len_f)_-'_1)))_^_(mid_(f,1,i2))_is_a_part_of_f,i1,i2_&_(_(_(f_/._(i1_+_1))_`1_<_(f_/._i1)_`1_or_(f_/._(i1_+_1))_`2_<_(f_/._i1)_`2_)_implies_((mid_(f,i1,((len_f)_-'_1)))_^_(mid_(f,1,i2)))_._2_=_f_._(i1_+_1)_)_&_(_(f_/._(i1_+_1))_`1_>=_(f_/._i1)_`1_&_(f_/._(i1_+_1))_`2_>=_(f_/._i1)_`2_implies_((mid_(f,i1,((len_f)_-'_1)))_^_(mid_(f,1,i2)))_._2_=_f_._(S_Drop_((i1_-'_1),f))_)_)_) percases ( i1 + 1 < len f or i1 + 1 >= len f ) ; case i1 + 1 < len f ; ::_thesis: ( (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) then (i1 + 1) + 1 <= len f by NAT_1:13; then A46: (i1 + 2) - i1 <= (len f) - i1 by XREAL_1:9; then ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = (mid (f,i1,((len f) -' 1))) . 2 by A45, FINSEQ_1:64 .= f . ((2 + i1) -' 1) by A1, A11, A14, A12, A6, A10, A45, A46, FINSEQ_6:118 .= f . (((1 + 1) + i1) - 1) by NAT_D:37 .= f . (i1 + 1) ; hence ( (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) by A43, A44, Def4; ::_thesis: verum end; caseA47: i1 + 1 >= len f ; ::_thesis: ( (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) then i1 + 1 = len f by A2, XXREAL_0:1; then A48: len (mid (f,i1,((len f) -' 1))) = 1 by A14, A12, A10, Th15; len (mid (f,1,i2)) = (i2 -' 1) + 1 by A3, A13, A9, FINSEQ_6:118 .= (i2 - 1) + 1 by A3, XREAL_1:233 .= i2 ; then 1 + 1 <= (len (mid (f,i1,((len f) -' 1)))) + (len (mid (f,1,i2))) by A3, A48, XREAL_1:6; then ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = (mid (f,1,i2)) . (2 - ((i1 + 1) - i1)) by A48, FINSEQ_6:108 .= f . 1 by A3, A13, A9, FINSEQ_6:118 .= f /. 1 by A13, FINSEQ_4:15 .= f /. (len f) by FINSEQ_6:def_1 .= f . (len f) by A13, FINSEQ_4:15 ; hence ( (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) by A2, A43, A44, A47, Def4, XXREAL_0:1; ::_thesis: verum end; end; end; hence ( (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) ; ::_thesis: verum end; end; end; hence ex g being FinSequence of (TOP-REAL 2) st ( g is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies g . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies g . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) ; ::_thesis: verum end; end; end; hence ex g being FinSequence of (TOP-REAL 2) st ( g is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies g . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies g . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) ; ::_thesis: for b1, b2 being FinSequence of (TOP-REAL 2) st b1 is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies b1 . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies b1 . 2 = f . (S_Drop ((i1 -' 1),f)) ) & b2 is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies b2 . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies b2 . 2 = f . (S_Drop ((i1 -' 1),f)) ) holds b1 = b2 thus for b1, b2 being FinSequence of (TOP-REAL 2) st b1 is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies b1 . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies b1 . 2 = f . (S_Drop ((i1 -' 1),f)) ) & b2 is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies b2 . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies b2 . 2 = f . (S_Drop ((i1 -' 1),f)) ) holds b1 = b2 by A5, Th55; ::_thesis: verum end; func Upper (f,i1,i2) -> FinSequence of (TOP-REAL 2) means :: JORDAN4:def 6 ( it is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies it . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies it . 2 = f . (S_Drop ((i1 -' 1),f)) ) ); correctness existence ex b1 being FinSequence of (TOP-REAL 2) st ( b1 is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies b1 . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies b1 . 2 = f . (S_Drop ((i1 -' 1),f)) ) ); uniqueness for b1, b2 being FinSequence of (TOP-REAL 2) st b1 is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies b1 . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies b1 . 2 = f . (S_Drop ((i1 -' 1),f)) ) & b2 is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies b2 . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies b2 . 2 = f . (S_Drop ((i1 -' 1),f)) ) holds b1 = b2; proof len f < (len f) + 1 by NAT_1:13; then A49: (len f) - 1 < ((len f) + 1) - 1 by XREAL_1:9; A50: (i2 + 1) - 1 <= (len f) - 1 by A4, XREAL_1:9; A51: i2 < len f by A4, NAT_1:13; A52: (i1 + 1) - 1 <= (len f) - 1 by A2, XREAL_1:9; A53: i1 -' 1 = i1 - 1 by A1, XREAL_1:233; A54: i1 < len f by A2, NAT_1:13; then A55: (len f) -' 1 = (len f) - 1 by A1, XREAL_1:233, XXREAL_0:2; A56: 1 < len f by A1, A54, XXREAL_0:2; then 1 + 1 <= len f by NAT_1:13; then A57: (1 + 1) - 1 <= (len f) - 1 by XREAL_1:9; then A58: 1 <= (len f) -' 1 by NAT_D:39; now__::_thesis:_(_(_i1_<=_i2_&_ex_g_being_FinSequence_of_(TOP-REAL_2)_st_ (_g_is_a_part_of_f,i1,i2_&_(_(_(f_/._(i1_+_1))_`1_>_(f_/._i1)_`1_or_(f_/._(i1_+_1))_`2_>_(f_/._i1)_`2_)_implies_g_._2_=_f_._(i1_+_1)_)_&_(_(f_/._(i1_+_1))_`1_<=_(f_/._i1)_`1_&_(f_/._(i1_+_1))_`2_<=_(f_/._i1)_`2_implies_g_._2_=_f_._(S_Drop_((i1_-'_1),f))_)_)_)_or_(_i1_>_i2_&_ex_g_being_FinSequence_of_(TOP-REAL_2)_st_ (_g_is_a_part_of_f,i1,i2_&_(_(_(f_/._(i1_+_1))_`1_>_(f_/._i1)_`1_or_(f_/._(i1_+_1))_`2_>_(f_/._i1)_`2_)_implies_g_._2_=_f_._(i1_+_1)_)_&_(_(f_/._(i1_+_1))_`1_<=_(f_/._i1)_`1_&_(f_/._(i1_+_1))_`2_<=_(f_/._i1)_`2_implies_g_._2_=_f_._(S_Drop_((i1_-'_1),f))_)_)_)_) percases ( i1 <= i2 or i1 > i2 ) ; caseA59: i1 <= i2 ; ::_thesis: ex g being FinSequence of (TOP-REAL 2) st ( g is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies g . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies g . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) then A60: i1 < i2 by A5, XXREAL_0:1; now__::_thesis:_(_(_(_(f_/._(i1_+_1))_`1_>_(f_/._i1)_`1_or_(f_/._(i1_+_1))_`2_>_(f_/._i1)_`2_)_&_mid_(f,i1,i2)_is_a_part_of_f,i1,i2_&_(_(_(f_/._(i1_+_1))_`1_>_(f_/._i1)_`1_or_(f_/._(i1_+_1))_`2_>_(f_/._i1)_`2_)_implies_(mid_(f,i1,i2))_._2_=_f_._(i1_+_1)_)_&_(_(f_/._(i1_+_1))_`1_<=_(f_/._i1)_`1_&_(f_/._(i1_+_1))_`2_<=_(f_/._i1)_`2_implies_(mid_(f,i1,i2))_._2_=_f_._(S_Drop_((i1_-'_1),f))_)_)_or_(_(f_/._(i1_+_1))_`1_<=_(f_/._i1)_`1_&_(f_/._(i1_+_1))_`2_<=_(f_/._i1)_`2_&_(mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2))_is_a_part_of_f,i1,i2_&_(_(_(f_/._(i1_+_1))_`1_>_(f_/._i1)_`1_or_(f_/._(i1_+_1))_`2_>_(f_/._i1)_`2_)_implies_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._2_=_f_._(i1_+_1)_)_&_(_(f_/._(i1_+_1))_`1_<=_(f_/._i1)_`1_&_(f_/._(i1_+_1))_`2_<=_(f_/._i1)_`2_implies_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._2_=_f_._(S_Drop_((i1_-'_1),f))_)_)_) percases ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 or ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 ) ) ; caseA61: ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) ; ::_thesis: ( mid (f,i1,i2) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies (mid (f,i1,i2)) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies (mid (f,i1,i2)) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) set g = mid (f,i1,i2); i1 + 1 <= i2 by A60, NAT_1:13; then (1 + i1) + 1 <= i2 + 1 by XREAL_1:6; then (2 + i1) - i1 <= (i2 + 1) - i1 by XREAL_1:9; then A62: (2 + i1) - i1 <= (i2 - i1) + 1 ; len (mid (f,i1,i2)) = (i2 -' i1) + 1 by A1, A3, A54, A51, A59, FINSEQ_6:118; then 2 <= len (mid (f,i1,i2)) by A59, A62, XREAL_1:233; then A63: (mid (f,i1,i2)) . 2 = f . ((2 + i1) -' 1) by A1, A3, A54, A51, A59, FINSEQ_6:118 .= f . (((i1 + 1) + 1) - 1) by NAT_D:37 .= f . (i1 + 1) ; mid (f,i1,i2) is_a_part>_of f,i1,i2 by A1, A51, A59, Th31; hence ( mid (f,i1,i2) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies (mid (f,i1,i2)) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies (mid (f,i1,i2)) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) by A61, A63, Def4; ::_thesis: verum end; caseA64: ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 ) ; ::_thesis: ( (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) set g = (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)); A65: len (mid (f,i1,1)) = (i1 -' 1) + 1 by A1, A54, Th9; A66: (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) is_a_part<_of f,i1,i2 by A1, A51, A60, Th34; now__::_thesis:_(_(_1_<_i1_&_(mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2))_is_a_part_of_f,i1,i2_&_(_(_(f_/._(i1_+_1))_`1_>_(f_/._i1)_`1_or_(f_/._(i1_+_1))_`2_>_(f_/._i1)_`2_)_implies_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._2_=_f_._(i1_+_1)_)_&_(_(f_/._(i1_+_1))_`1_<=_(f_/._i1)_`1_&_(f_/._(i1_+_1))_`2_<=_(f_/._i1)_`2_implies_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._2_=_f_._(S_Drop_((i1_-'_1),f))_)_)_or_(_1_>=_i1_&_(mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2))_is_a_part_of_f,i1,i2_&_(_(_(f_/._(i1_+_1))_`1_>_(f_/._i1)_`1_or_(f_/._(i1_+_1))_`2_>_(f_/._i1)_`2_)_implies_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._2_=_f_._(i1_+_1)_)_&_(_(f_/._(i1_+_1))_`1_<=_(f_/._i1)_`1_&_(f_/._(i1_+_1))_`2_<=_(f_/._i1)_`2_implies_((mid_(f,i1,1))_^_(mid_(f,((len_f)_-'_1),i2)))_._2_=_f_._(S_Drop_((i1_-'_1),f))_)_)_) percases ( 1 < i1 or 1 >= i1 ) ; caseA67: 1 < i1 ; ::_thesis: ( (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) then 1 + 1 <= (i1 - 1) + 1 by NAT_1:13; then A68: 2 <= len (mid (f,i1,1)) by A1, A65, XREAL_1:233; A69: i1 -' 1 <= (len f) -' 1 by A54, A53, A55, XREAL_1:9; A70: 1 + 1 <= i1 by A67, NAT_1:13; then A71: (1 + 1) - 1 <= i1 - 1 by XREAL_1:9; A72: f . ((i1 -' (1 + 1)) + 1) = f . ((i1 - (1 + 1)) + 1) by A70, XREAL_1:233 .= f . (i1 - 1) .= f . (i1 -' 1) by A1, XREAL_1:233 ; ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = (mid (f,i1,1)) . 2 by A53, A65, A70, FINSEQ_1:64 .= f . ((i1 -' (1 + 1)) + 1) by A54, A56, A67, A68, FINSEQ_6:118 ; hence ( (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) by A53, A64, A66, A72, A71, A69, Def4, Th22; ::_thesis: verum end; caseA73: 1 >= i1 ; ::_thesis: ( (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) then i1 = 1 by A1, XXREAL_0:1; then A74: i1 -' 1 = 0 by XREAL_1:232; A75: S_Drop ((i1 -' 1),f) = S_Drop (((i1 -' 1) + ((len f) -' 1)),f) by Th23 .= (len f) -' 1 by A58, A74, Th22 ; A76: 1 <= (((len f) -' 1) -' i2) + 1 by NAT_1:11; A77: (i2 + 1) - 1 <= (len f) - 1 by A4, XREAL_1:9; A78: (len f) - i2 >= (i2 + 1) - i2 by A4, XREAL_1:9; A79: len (mid (f,i1,1)) = len (mid (f,1,1)) by A1, A73, XXREAL_0:1 .= 1 by A56, Th15 ; len (mid (f,((len f) -' 1),i2)) = (((len f) -' 1) -' i2) + 1 by A3, A55, A50, A49, Th9 .= (((len f) - 1) - i2) + 1 by A55, A50, XREAL_1:233 .= (len f) - i2 ; then 1 + 1 <= (len (mid (f,i1,1))) + (len (mid (f,((len f) -' 1),i2))) by A79, A78, XREAL_1:6; then ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = (mid (f,((len f) -' 1),i2)) . (2 - (len (mid (f,i1,1)))) by A79, FINSEQ_6:108 .= (mid (f,((len f) -' 1),i2)) . (2 - ((i1 -' 1) + 1)) by A1, A54, Th9 .= (mid (f,((len f) -' 1),i2)) . ((1 + 1) - ((1 -' 1) + 1)) by A1, A73, XXREAL_0:1 .= (mid (f,((len f) -' 1),i2)) . ((1 + 1) - (0 + 1)) by XREAL_1:232 .= f . ((((len f) -' 1) -' 1) + 1) by A3, A55, A49, A77, A76, Th12 .= f . ((len f) -' 1) by A58, XREAL_1:235 ; hence ( (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) by A64, A66, A75, Def4; ::_thesis: verum end; end; end; hence ( (mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2)) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies ((mid (f,i1,1)) ^ (mid (f,((len f) -' 1),i2))) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) ; ::_thesis: verum end; end; end; hence ex g being FinSequence of (TOP-REAL 2) st ( g is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies g . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies g . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) ; ::_thesis: verum end; caseA80: i1 > i2 ; ::_thesis: ex g being FinSequence of (TOP-REAL 2) st ( g is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies g . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies g . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) then i1 > 1 by A3, XXREAL_0:2; then A81: 1 + 1 <= i1 by NAT_1:13; then A82: (1 + 1) - 1 <= i1 - 1 by XREAL_1:9; now__::_thesis:_(_(_(f_/._(i1_+_1))_`1_<=_(f_/._i1)_`1_&_(f_/._(i1_+_1))_`2_<=_(f_/._i1)_`2_&_mid_(f,i1,i2)_is_a_part_of_f,i1,i2_&_(_(_(f_/._(i1_+_1))_`1_>_(f_/._i1)_`1_or_(f_/._(i1_+_1))_`2_>_(f_/._i1)_`2_)_implies_(mid_(f,i1,i2))_._2_=_f_._(i1_+_1)_)_&_(_(f_/._(i1_+_1))_`1_<=_(f_/._i1)_`1_&_(f_/._(i1_+_1))_`2_<=_(f_/._i1)_`2_implies_(mid_(f,i1,i2))_._2_=_f_._(S_Drop_((i1_-'_1),f))_)_)_or_(_(_(f_/._(i1_+_1))_`1_>_(f_/._i1)_`1_or_(f_/._(i1_+_1))_`2_>_(f_/._i1)_`2_)_&_(mid_(f,i1,((len_f)_-'_1)))_^_(mid_(f,1,i2))_is_a_part_of_f,i1,i2_&_(_(_(f_/._(i1_+_1))_`1_>_(f_/._i1)_`1_or_(f_/._(i1_+_1))_`2_>_(f_/._i1)_`2_)_implies_((mid_(f,i1,((len_f)_-'_1)))_^_(mid_(f,1,i2)))_._2_=_f_._(i1_+_1)_)_&_(_(f_/._(i1_+_1))_`1_<=_(f_/._i1)_`1_&_(f_/._(i1_+_1))_`2_<=_(f_/._i1)_`2_implies_((mid_(f,i1,((len_f)_-'_1)))_^_(mid_(f,1,i2)))_._2_=_f_._(S_Drop_((i1_-'_1),f))_)_)_) percases ( ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 ) or (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) ; caseA83: ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 ) ; ::_thesis: ( mid (f,i1,i2) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies (mid (f,i1,i2)) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies (mid (f,i1,i2)) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) set g = mid (f,i1,i2); A84: i1 -' 1 <= (len f) -' 1 by A54, A53, A55, XREAL_1:9; i2 + 1 <= i1 by A80, NAT_1:13; then (1 + i2) + 1 <= i1 + 1 by XREAL_1:6; then (2 + i2) - i2 <= (i1 + 1) - i2 by XREAL_1:9; then A85: (2 + i2) - i2 <= (i1 - i2) + 1 ; len (mid (f,i1,i2)) = (i1 -' i2) + 1 by A1, A3, A54, A51, A80, FINSEQ_6:118; then 2 <= len (mid (f,i1,i2)) by A80, A85, XREAL_1:233; then A86: (mid (f,i1,i2)) . 2 = f . ((i1 -' 2) + 1) by A1, A3, A54, A51, A80, FINSEQ_6:118 .= f . ((i1 - (1 + 1)) + 1) by A81, XREAL_1:233 .= f . (i1 - 1) .= f . (i1 -' 1) by A1, XREAL_1:233 ; mid (f,i1,i2) is_a_part<_of f,i1,i2 by A3, A54, A80, Th32; hence ( mid (f,i1,i2) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies (mid (f,i1,i2)) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies (mid (f,i1,i2)) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) by A53, A82, A83, A86, A84, Def4, Th22; ::_thesis: verum end; caseA87: ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) ; ::_thesis: ( (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) set g = (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)); A88: (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) is_a_part>_of f,i1,i2 by A3, A54, A80, Th33; A89: len (mid (f,i1,((len f) -' 1))) = (((len f) -' 1) -' i1) + 1 by A1, A54, A57, A55, A52, A49, FINSEQ_6:118 .= (((len f) - 1) - i1) + 1 by A55, A52, XREAL_1:233 .= (len f) - i1 ; now__::_thesis:_(_(_i1_+_1_<_len_f_&_(mid_(f,i1,((len_f)_-'_1)))_^_(mid_(f,1,i2))_is_a_part_of_f,i1,i2_&_(_(_(f_/._(i1_+_1))_`1_>_(f_/._i1)_`1_or_(f_/._(i1_+_1))_`2_>_(f_/._i1)_`2_)_implies_((mid_(f,i1,((len_f)_-'_1)))_^_(mid_(f,1,i2)))_._2_=_f_._(i1_+_1)_)_&_(_(f_/._(i1_+_1))_`1_<=_(f_/._i1)_`1_&_(f_/._(i1_+_1))_`2_<=_(f_/._i1)_`2_implies_((mid_(f,i1,((len_f)_-'_1)))_^_(mid_(f,1,i2)))_._2_=_f_._(S_Drop_((i1_-'_1),f))_)_)_or_(_i1_+_1_>=_len_f_&_(mid_(f,i1,((len_f)_-'_1)))_^_(mid_(f,1,i2))_is_a_part_of_f,i1,i2_&_(_(_(f_/._(i1_+_1))_`1_>_(f_/._i1)_`1_or_(f_/._(i1_+_1))_`2_>_(f_/._i1)_`2_)_implies_((mid_(f,i1,((len_f)_-'_1)))_^_(mid_(f,1,i2)))_._2_=_f_._(i1_+_1)_)_&_(_(f_/._(i1_+_1))_`1_<=_(f_/._i1)_`1_&_(f_/._(i1_+_1))_`2_<=_(f_/._i1)_`2_implies_((mid_(f,i1,((len_f)_-'_1)))_^_(mid_(f,1,i2)))_._2_=_f_._(S_Drop_((i1_-'_1),f))_)_)_) percases ( i1 + 1 < len f or i1 + 1 >= len f ) ; case i1 + 1 < len f ; ::_thesis: ( (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) then (i1 + 1) + 1 <= len f by NAT_1:13; then A90: (i1 + 2) - i1 <= (len f) - i1 by XREAL_1:9; then ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = (mid (f,i1,((len f) -' 1))) . 2 by A89, FINSEQ_1:64 .= f . ((2 + i1) -' 1) by A1, A54, A57, A55, A52, A49, A89, A90, FINSEQ_6:118 .= f . (((1 + 1) + i1) - 1) by NAT_D:37 .= f . (1 + i1) ; hence ( (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) by A87, A88, Def4; ::_thesis: verum end; caseA91: i1 + 1 >= len f ; ::_thesis: ( (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) then i1 + 1 = len f by A2, XXREAL_0:1; then A92: len (mid (f,i1,((len f) -' 1))) = 1 by A57, A55, A49, Th15; len (mid (f,1,i2)) = (i2 -' 1) + 1 by A3, A56, A51, FINSEQ_6:118 .= (i2 - 1) + 1 by A3, XREAL_1:233 .= i2 ; then 1 + 1 <= (len (mid (f,i1,((len f) -' 1)))) + (len (mid (f,1,i2))) by A3, A92, XREAL_1:6; then ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = (mid (f,1,i2)) . (2 - ((i1 + 1) - i1)) by A92, FINSEQ_6:108 .= f . 1 by A3, A56, A51, FINSEQ_6:118 .= f /. 1 by A56, FINSEQ_4:15 .= f /. (len f) by FINSEQ_6:def_1 .= f . (len f) by A56, FINSEQ_4:15 ; hence ( (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) by A2, A87, A88, A91, Def4, XXREAL_0:1; ::_thesis: verum end; end; end; hence ( (mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2)) is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies ((mid (f,i1,((len f) -' 1))) ^ (mid (f,1,i2))) . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) ; ::_thesis: verum end; end; end; hence ex g being FinSequence of (TOP-REAL 2) st ( g is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies g . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies g . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) ; ::_thesis: verum end; end; end; hence ( ex b1 being FinSequence of (TOP-REAL 2) st ( b1 is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies b1 . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies b1 . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) & ( for b1, b2 being FinSequence of (TOP-REAL 2) st b1 is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies b1 . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies b1 . 2 = f . (S_Drop ((i1 -' 1),f)) ) & b2 is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies b2 . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies b2 . 2 = f . (S_Drop ((i1 -' 1),f)) ) holds b1 = b2 ) ) by A5, Th55; ::_thesis: verum end; end; :: deftheorem defines Lower JORDAN4:def_5_:_ for f being non constant standard special_circular_sequence for i1, i2 being Element of NAT st 1 <= i1 & i1 + 1 <= len f & 1 <= i2 & i2 + 1 <= len f & i1 <> i2 holds for b4 being FinSequence of (TOP-REAL 2) holds ( b4 = Lower (f,i1,i2) iff ( b4 is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 < (f /. i1) `1 or (f /. (i1 + 1)) `2 < (f /. i1) `2 ) implies b4 . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 >= (f /. i1) `1 & (f /. (i1 + 1)) `2 >= (f /. i1) `2 implies b4 . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) ); :: deftheorem defines Upper JORDAN4:def_6_:_ for f being non constant standard special_circular_sequence for i1, i2 being Element of NAT st 1 <= i1 & i1 + 1 <= len f & 1 <= i2 & i2 + 1 <= len f & i1 <> i2 holds for b4 being FinSequence of (TOP-REAL 2) holds ( b4 = Upper (f,i1,i2) iff ( b4 is_a_part_of f,i1,i2 & ( ( (f /. (i1 + 1)) `1 > (f /. i1) `1 or (f /. (i1 + 1)) `2 > (f /. i1) `2 ) implies b4 . 2 = f . (i1 + 1) ) & ( (f /. (i1 + 1)) `1 <= (f /. i1) `1 & (f /. (i1 + 1)) `2 <= (f /. i1) `2 implies b4 . 2 = f . (S_Drop ((i1 -' 1),f)) ) ) );