reserve i, i1, i2, j, k for Nat,
  r, s for Real;
reserve D for non empty set,
  f1 for FinSequence of D;
reserve g, g1, g2 for FinSequence of TOP-REAL 2;

theorem Th54:
  for f being non constant standard special_circular_sequence,
      g1,g2 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 f be non constant standard special_circular_sequence, 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;
A4: 1<=i1 by A2;
A5: i2+1<=len f by A2;
  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;
A9: i1+1<=len f by A2;
  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
    per cases;
    case
A14:  i1<=i2;
      now
        per cases by A14,XXREAL_0:1;
        case
          i1=i2;
          hence contradiction by A1;
        end;
        case
A15:      i1<i2;
A16:      len mid(f,i1,1)=i1-'1+1 by A4,A10,FINSEQ_6:187;
          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
            per cases by A4,XXREAL_0:1;
            case
A19:          1<i1;
              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
                assume that
A28:            1=i1-'1 and
A29:            i1+1=len f;
                1=i1-1 by A28,NAT_D:39;
                hence contradiction by A29,GOBOARD7:34;
              end;
              now
                per cases by A27;
                case
A30:              1<>i1-'1;
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;
                  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 thesis by A9,A22,A26,A34,A31,FINSEQ_4:15;
                end;
                case
A35:              i1+1<>len f;
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 thesis by A9,A22,A26,A38,A39,FINSEQ_4:15;
                end;
              end;
              hence thesis;
            end;
            case
A40:          1=i1;
              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,FINSEQ_6:187
                .=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,FINSEQ_6:187
                .=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 thesis by A9,A47,A41,A43,A48,FINSEQ_4:15;
            end;
          end;
          hence thesis;
        end;
      end;
      hence thesis;
    end;
    case
A49:  i1>i2;
      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
        per cases by A55,XXREAL_0:1;
        case
          i1<len f-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);
        end;
        case
A63:      i1=len f-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,FINSEQ_6:184,NAT_1:11;
        end;
      end;
A67:  now
        assume that
A68:    1=i1-'1 and
A69:    i1+1=len f;
        1=i1-1 by A68,NAT_D:39;
        hence contradiction by A69,GOBOARD7:34;
      end;
      now
        per cases by A67;
        case
A70:      1<>i1-'1;
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;
          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 thesis by A9,A59,A52,A74,A71,FINSEQ_4:15;
        end;
        case
A75:      i1+1<>len f;
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 thesis by A9,A59,A52,A78,A79,FINSEQ_4:15;
        end;
      end;
      hence thesis;
    end;
  end;
  hence thesis;
end;
