reserve p,p1,p2,q for Point of TOP-REAL 2,
  f,f1,f2,g,g1,g2 for FinSequence of TOP-REAL 2,
  r,s for Real,

  n,m,i,j,k for Nat,
  G for Go-board,
  x for set;

theorem
  (for n being Nat st n in dom f
    ex i,j being Nat st [i,j] in Indices G & f/.n=G*(i,j)) & f
  is special &
  (for n being Nat st n in dom f & n+1 in dom f holds f/.n <> f/.(n+1))
implies ex g st g is_sequence_on G & L~f = L~g & g/.1=f/.1 & g/.len g=f/.len f
  & len f<=len g
proof
  defpred P[Nat] means for f st len f=$1 &
   (for n being Nat st n in dom f
     ex i,j being Nat st [i,j] in Indices G & f/.n=G*(i,j)) & f is special &
  (for n being Nat st n in dom f & n+1 in dom f holds f/.n <> f/.(n+1))
   ex g st g is_sequence_on G & L~f = L~g &
  g/.1=f/.1 & g/.len g=f/.len f & len f<=len g;
A1: for k being Nat st P[k] holds P[k+1]
  proof
    let k be Nat such that
A2: P[k];
    let f such that
A3: len f=k+1 and
A4: for n being Nat st n in dom f
      ex i,j being Nat  st [i,j] in Indices G & f/.n=G*(i,j)
          and
A5: f is special and
A6: for n being Nat st n in dom f & n+1 in dom f holds f/.n <> f/.(n+1);
A7: dom f = Seg len f by FINSEQ_1:def 3;
    now
      per cases;
      suppose
A8:     k=0;
        take g=f;
A9:     dom f = {1} by A3,A8,FINSEQ_1:2,def 3;
        now
          let n be Nat;
          assume that
A10:      n in dom g and
A11:      n+1 in dom g;
          n=1 by A9,A10,TARSKI:def 1;
          hence
          for i1,i2,j1,j2 be Nat st [i1,i2] in Indices G & [j1
,j2] in Indices G & g/.n=G*(i1,i2) & g/.(n+1)=G*(j1,j2)
    holds |.i1-j1.|+|.i2-j2.|=1 by A9,A11,TARSKI:def 1;
        end;
        hence g is_sequence_on G by A4;
        thus L~f=L~g & g/.1=f/.1 & g/.len g=f/.len f & len f<=len g;
      end;
      suppose
A12:    k<>0;
        then
A13:    0+1<=k by NAT_1:13;
        then
A14:    k in Seg k by FINSEQ_1:1;
A15:    1 in Seg k by A13,FINSEQ_1:1;
A16:    k<=k+1 by NAT_1:11;
        then
A17:    k in dom f by A3,A7,A13,FINSEQ_1:1;
        then consider i1,i2 be Nat such that
A18:    [i1,i2] in Indices G and
A19:    f/.k=G*(i1,i2) by A4;
        reconsider l1 = Line(G,i1), c1 = Col(G,i2) as FinSequence of TOP-REAL
        2;
        set x1 = X_axis(l1), y1 = Y_axis(l1), x2 = X_axis(c1), y2 = Y_axis(c1);
A20:    dom y1=Seg len y1 & len y1=len l1 by FINSEQ_1:def 3,GOBOARD1:def 2;
        len y2=len c1 by GOBOARD1:def 2;
        then
A21:    dom y2 = dom c1 by FINSEQ_3:29;
        len x2=len c1 by GOBOARD1:def 1;
        then
A22:    dom x2 = dom c1 by FINSEQ_3:29;
        set f1=f|k;
A23:    len (f|k)=k by A3,FINSEQ_1:59,NAT_1:11;
A24:    dom(f|k)=Seg len(f|k) by FINSEQ_1:def 3;
A25:    now
          let n be Nat;
          assume
A26:      n in dom f1;
          then n in dom f by A17,A23,A24,FINSEQ_4:71;
          then consider i,j being Nat such that
A27:      [i,j] in Indices G & f/.n=G*(i,j) by A4;
          take i,j;
          thus [i,j] in Indices G & f1/.n=G*(i,j) by A17,A23,A24,A26,A27,
FINSEQ_4:71;
        end;
A28:    f1 is special
        proof
          let n be Nat;
          assume that
A29:      1 <= n and
A30:      n+1 <= len f1;
          n <= n+1 by NAT_1:11;
          then n <= len f1 by A30,XXREAL_0:2;
          then n in dom f1 by A29,FINSEQ_3:25;
          then
A31:      f1/.n=f/.n by A17,A23,A24,FINSEQ_4:71;
          1 <= n+1 by NAT_1:11;
          then n+1 in dom f1 by A30,FINSEQ_3:25;
          then
A32:      f1/.(n+1)=f/.(n+1) by A17,A23,A24,FINSEQ_4:71;
          n+1 <= len f by A3,A16,A23,A30,XXREAL_0:2;
          hence thesis by A5,A29,A31,A32;
        end;
        now
          let n be Nat;
          assume
A33:      n in dom f1 & n+1 in dom f1;
          then
A34:      f1/.n=f/.n & f1/.(n+1)=f/.(n+1) by A17,A23,A24,FINSEQ_4:71;
          n in dom f & n+1 in dom f by A17,A23,A24,A33,FINSEQ_4:71;
          hence f1/.n <> f1/.(n+1) by A6,A34;
        end;
        then consider g1 such that
A35:    g1 is_sequence_on G and
A36:    L~g1=L~f1 and
A37:    g1/.1=f1/.1 and
A38:    g1/.len g1=f1/.len f1 and
A39:    len f1<=len g1 by A2,A23,A25,A28;
A40:    for n being Nat st n in dom g1
         ex m,k being Nat st [m,k] in Indices G & g1/.n=G*(m,k)
        by A35;
A41:    for n being Nat st n in dom g1 & n+1 in dom g1
        for m,k,i,j being Nat st [m,k]
in Indices G & [i,j] in Indices G & g1/.n = G*(m,k) & g1/.(n+1) = G*(i,j) holds
        |.m-i.|+|.k-j.| = 1 by A35;
A42:    dom x1=Seg len x1 & len x1=len l1 by FINSEQ_1:def 3,GOBOARD1:def 1;
        len c1 = len G by MATRIX_0:def 8;
        then
A43:    dom c1 = dom G by FINSEQ_3:29;
        1<=len f by A3,NAT_1:11;
        then
A44:    k+1 in dom f by A3,FINSEQ_3:25;
        then consider j1,j2 be Nat such that
A45:    [j1,j2] in Indices G and
A46:    f/.(k+1)=G*(j1,j2) by A4;
A47:    Indices G = [:dom G,Seg width G:] by MATRIX_0:def 4;
        then
A48:    j1 in dom G by A45,ZFMISC_1:87;
A49:    i1 in dom G by A18,A47,ZFMISC_1:87;
        then
A50:    x1 is constant by GOBOARD1:def 4;
A51:    i2 in Seg width G by A18,A47,ZFMISC_1:87;
        then
A52:    x2 is increasing by GOBOARD1:def 7;
A53:    y2 is constant by A51,GOBOARD1:def 5;
A54:    y1 is increasing by A49,GOBOARD1:def 6;
A55:    len l1=width G by MATRIX_0:def 7;
A56:    j2 in Seg width G by A45,A47,ZFMISC_1:87;
A57:    dom g1 = Seg len g1 by FINSEQ_1:def 3;
        now
          per cases by A5,A17,A18,A19,A44,A45,A46,Th11;
          suppose
A58:        i1=j1;
            set ppi = G*(i1,i2), pj = G*(i1,j2);
            now
              per cases by XXREAL_0:1;
              case
A59:            i2>j2;
                j2 in dom l1 by A56,A55,FINSEQ_1:def 3;
                then l1/.j2 = l1.j2 by PARTFUN1:def 6;
                then
A60:            l1/.j2=pj by A56,MATRIX_0:def 7;
                then
A61:            y1.j2=pj`2 by A56,A20,A55,GOBOARD1:def 2;
                i2 in dom l1 by A51,A55,FINSEQ_1:def 3;
                then l1/.i2 = l1.i2 by PARTFUN1:def 6;
                then
A62:            l1/.i2=ppi by A51,MATRIX_0:def 7;
                then
A63:            y1.i2=ppi`2 by A51,A20,A55,GOBOARD1:def 2;
                then
A64:            pj`2<ppi`2 by A51,A56,A54,A20,A55,A59,A61,SEQM_3:def 1;
A65:            x1.j2=pj`1 by A56,A42,A55,A60,GOBOARD1:def 1;
                x1.i2=ppi`1 by A51,A42,A55,A62,GOBOARD1:def 1;
                then
A66:            ppi`1=pj`1 by A51,A56,A50,A42,A55,A65,SEQM_3:def 10;
                reconsider l=i2-j2 as Element of NAT by A59,INT_1:5;
                defpred P1[Nat,set] means for m st m=i2-$1 holds $2=G*(i1,m);
                set lk={w where w is Point of TOP-REAL 2: w`1=ppi`1 & pj`2<=w
                `2 & w`2<=ppi`2};
A67:            ppi=|[ppi`1,ppi `2]| by EUCLID:53;
A68:            now
                  let n;
                  assume n in Seg l;
                  then
A69:              n<=l by FINSEQ_1:1;
                  l<=i2 by XREAL_1:43;
                  then reconsider w=i2-n as Element of NAT by A69,INT_1:5
,XXREAL_0:2;
                  i2-n<=i2 & i2<=width G by A51,FINSEQ_1:1,XREAL_1:43;
                  then
A70:              w<=width G by XXREAL_0:2;
A71:              1<=j2 by A56,FINSEQ_1:1;
                  i2-l<=i2-n by A69,XREAL_1:13;
                  then 1<=w by A71,XXREAL_0:2;
                  then w in Seg width G by A70,FINSEQ_1:1;
                  hence i2-n is Element of NAT & [i1,i2-n] in Indices G & i2-n
                  in Seg width G by A47,A49,ZFMISC_1:87;
                end;
A72:            now
                  let n be Nat;
                  assume n in Seg l;
                  then reconsider m=i2-n as Element of NAT by A68;
                  take p=G*(i1,m);
                  thus P1[n,p];
                end;
                consider g2 such that
A73:            len g2 = l & for n being Nat st n in Seg l holds P1[n
                ,g2/.n] from FINSEQ_4:sch 1(A72);
                take g=g1^g2;
A74:            dom g2 = Seg l by A73,FINSEQ_1:def 3;
A75:            now
                  let n be Nat;
                  assume that
A76:              n in dom g2 and
A77:              n+1 in dom g2;
                  reconsider m1=i2-n,m2=i2-(n+1) as Element of NAT by A68,A74
,A76,A77;
                  let l1,l2,l3,l4 be Nat;
                  assume that
A78:              [l1,l2] in Indices G and
A79:              [l3,l4] in Indices G and
A80:              g2/.n=G*(l1,l2) and
A81:              g2/.(n+1)=G*(l3,l4);
                  [i1,i2-(n+1)] in Indices G & g2/.(n+1)=G*(i1,m2) by A68,A73
,A74,A77;
                  then
A82:              l3=i1 & l4=m2 by A79,A81,GOBOARD1:5;
                  [i1,i2-n] in Indices G & g2/.n=G*(i1,m1) by A68,A73,A74,A76;
                  then l1=i1 & l2=m1 by A78,A80,GOBOARD1:5;
                  hence |.l1-l3.|+|.l2-l4.|= 0+|.i2-n-(i2-(n+1)).| by A82,
ABSVALUE:2
                    .= 1 by ABSVALUE:def 1;
                end;
                now
                  let n be Nat;
                  assume
A83:              n in dom g2;
                  then reconsider m=i2-n as Element of NAT by A68,A74;
                  reconsider k=i1,m as Nat;
                  take k,m;
                  thus [k,m] in Indices G & g2/.n=G*(k,m) by A68,A73,A74,A83;
                end;
                then
A84:            for n being Nat st n in dom g
                  ex i,j being Nat st [i,j] in Indices G & g/.n=G
                *(i, j) by A40,GOBOARD1:23;
                now
                  let l1,l2,l3,l4 be Nat;
                  assume that
A85:              [l1,l2] in Indices G and
A86:              [l3,l4] in Indices G and
A87:              g1/.len g1=G*(l1,l2) and
A88:              g2/.1=G*(l3,l4) and
                  len g1 in dom g1 and
A89:              1 in dom g2;
                  reconsider m1=i2-1 as Element of NAT by A68,A74,A89;
                  [i1,i2-1] in Indices G & g2/.1=G*(i1,m1) by A68,A73,A74,A89;
                  then
A90:              l3=i1 & l4=m1 by A86,A88,GOBOARD1:5;
                  f1/.len f1=f/.k by A17,A23,A14,FINSEQ_4:71;
                  then l1=i1 & l2=i2 by A38,A18,A19,A85,A87,GOBOARD1:5;
                  hence |.l1-l3.|+|.l2-l4.|=0+|.i2-(i2-1).| by A90,
ABSVALUE:2
                    .=1 by ABSVALUE:def 1;
                end;
                then for n being Nat
                st n in dom g & n+1 in dom g
                for m,k,i,j being Nat st
[m,k] in Indices G & [i,j] in Indices G & g/.n=G*(m,k) & g/.(n+1)=G*(i,j) holds
                |.m-i.|+|.k-j.|=1 by A41,A75,GOBOARD1:24;
                hence g is_sequence_on G by A84;
                reconsider m1=i2-l as Element of NAT by ORDINAL1:def 12;
A91:            pj=|[pj`1,pj`2]| by EUCLID:53;
A92:            LSeg(f,k)=LSeg(pj,ppi) by A3,A13,A19,A46,A58,TOPREAL1:def 3
                  .= lk by A64,A66,A67,A91,TOPREAL3:9;
                thus L~g=L~f
                proof
                  set lg = {LSeg(g,i): 1<=i & i+1<=len g}, lf = {LSeg(f,j): 1
                  <=j & j+1<=len f};
A93:              len g = len g1 + len g2 by FINSEQ_1:22;
A94:              now
                    let j;
                    assume that
A95:                len g1<=j and
A96:                j<=len g;
                    reconsider w = j-len g1 as Element of NAT by A95,INT_1:5;
                    let p such that
A97:                p=g/.j;
A98:                dom l1 = Seg len l1 by FINSEQ_1:def 3;
                    now
                      per cases;
                      suppose
A99:                    j=len g1;
                        1<=len g1 by A13,A23,A39,XXREAL_0:2;
                        then len g1 in dom g1 by FINSEQ_3:25;
                        then
A100:                   g/.len g1 = f1/.len f1 by A38,FINSEQ_4:68
                          .= G*(i1,i2) by A17,A23,A14,A19,FINSEQ_4:71;
                        hence p`1=G*(i1,i2)`1 by A97,A99;
                        thus G*(i1,j2)`2<=p`2 & p`2<=G*(i1,i2)`2 by A51,A56,A54
,A20,A55,A59,A63,A61,A97,A99,A100,SEQM_3:def 1;
                        thus p in rng l1 by A51,A55,A62,A97,A98,A99,A100,
PARTFUN2:2;
                      end;
                      suppose
A101:                   j<>len g1;
A102:                   w + len g1 = j;
                        then
A103:                   w <= len g2 by A93,A96,XREAL_1:6;
A104:                   j - len g1 <> 0 by A101;
                        then
A105:                   w >= 1 by NAT_1:14;
                        then
A106:                   w in dom g2 by A103,FINSEQ_3:25;
                        then reconsider u=i2-w as Element of NAT by A68,A74;
A107:                   g/.j=g2/.w by A105,A102,A103,SEQ_4:136;
A108:                   x1.i2=ppi`1 by A51,A42,A55,A62,GOBOARD1:def 1;
A109:                   u<i2 by A104,XREAL_1:44;
A110:                   g2/.w=G*(i1,u) by A73,A74,A106;
A111:                   i2-w in Seg width G by A68,A74,A106;
                        then u in dom l1 by A55,FINSEQ_1:def 3;
                        then l1/.u = l1.u by PARTFUN1:def 6;
                        then
A112:                   l1/.u=G*( i1,u) by A111,MATRIX_0:def 7;
                        then
A113:                   y1.u=G*(i1,u)`2 by A20,A55,A111,GOBOARD1:def 2;
                        x1.u=G*(i1,u )`1 by A42,A55,A111,A112,GOBOARD1:def 1;
                        hence
                        p`1=G*(i1,i2)`1 by A51,A50,A42,A55,A97,A107,A111,A110
,A108,SEQM_3:def 10;
A114:                   y1.j2=pj`2 by A56,A20,A55,A60,GOBOARD1:def 2;
                        now
                          per cases;
                          suppose
                            u=j2;
                            hence G*(i1,j2)`2<=p`2 by A97,A105,A102,A103,A110,
SEQ_4:136;
                          end;
                          suppose
A115:                       u<>j2;
                            i2-len g2<=u by A103,XREAL_1:13;
                            then j2<u by A73,A115,XXREAL_0:1;
                            hence G*(i1,j2)`2<= p`2 by A56,A54,A20,A55,A97,A107
,A111,A110,A113,A114,SEQM_3:def 1;
                          end;
                        end;
                        hence G*(i1,j2)`2<=p`2;
                        y1.i2=ppi`2 by A51,A20,A55,A62,GOBOARD1:def 2;
                        hence p`2<= G*(i1,i2)`2 by A51,A54,A20,A55,A97,A107
,A111,A110,A113,A109,SEQM_3:def 1;
                        thus p in rng l1 by A55,A97,A98,A107,A111,A110,A112,
PARTFUN2:2;
                      end;
                    end;
                    hence p`1=ppi`1 & pj`2<=p`2 & p`2<=ppi`2 & p in rng l1;
                  end;
                  thus L~g c= L~f
                  proof
                    let x be object;
                    assume x in L~g;
                    then consider X be set such that
A116:               x in X and
A117:               X in lg by TARSKI:def 4;
                    consider i such that
A118:               X=LSeg(g,i) and
A119:               1<=i and
A120:               i+1<=len g by A117;
                    now
                      per cases;
                      suppose
A121:                   i+1 <= len g1;
                        i<=i+1 by NAT_1:11;
                        then i<=len g1 by A121,XXREAL_0:2;
                        then
A122:                   i in dom g1 by A119,FINSEQ_3:25;
                        1<=i+1 by NAT_1:11;
                        then i+1 in dom g1 by A121,FINSEQ_3:25;
                        then X=LSeg(g1,i) by A118,A122,TOPREAL3:18;
                        then X in {LSeg(g1,j): 1<=j & j+1<=len g1} by A119,A121
;
                        then
A123:                   x in L~f1 by A36,A116,TARSKI:def 4;
                        L~f1 c= L~f by TOPREAL3:20;
                        hence thesis by A123;
                      end;
                      suppose
A124:                   i+1 > len g1;
                        reconsider q1=g/.i, q2=g/.(i+1) as Point of TOP-REAL 2;
A125:                   i<=len g by A120,NAT_1:13;
A126:                   len g1<=i by A124,NAT_1:13;
                        then
A127:                   q1 `1=ppi`1 by A94,A125;
A128:                   q1`2<=ppi`2 by A94,A126,A125;
A129:                   pj`2<=q1`2 by A94,A126,A125;
                        q2`1=ppi`1 by A94,A120,A124;
                        then
A130:                   q2=|[q1 `1,q2`2]| by A127,EUCLID:53;
A131:                   q2`2<=ppi`2 by A94,A120,A124;
A132:                   q1=|[q1`1,q1`2]| & LSeg(g,i)=LSeg(q2,q1) by A119,A120,
EUCLID:53,TOPREAL1:def 3;
A133:                   pj`2<= q2`2 by A94,A120,A124;
                        now
                          per cases by XXREAL_0:1;
                          suppose
                            q1`2>q2`2;
                            then LSeg(g,i)={p2: p2`1=q1`1 & q2`2<=p2`2 & p2`2
                            <=q1`2} by A130,A132,TOPREAL3:9;
                            then consider p2 such that
A134:                       p2 =x & p2`1=q1`1 and
A135:                       q2`2<=p2`2 & p2`2<=q1`2 by A116,A118;
                            pj`2<=p2`2 & p2`2<=ppi`2 by A128,A133,A135,
XXREAL_0:2;
                            then
A136:                       x in LSeg(f,k) by A92,A127,A134;
                            LSeg(f,k) in lf by A3,A13;
                            hence thesis by A136,TARSKI:def 4;
                          end;
                          suppose
                            q1`2=q2`2;
                            then LSeg(g,i)={q1} by A130,A132,RLTOPSP1:70;
                            then x=q1 by A116,A118,TARSKI:def 1;
                            then
A137:                       x in LSeg(f,k) by A92,A127,A129,A128;
                            LSeg(f,k) in lf by A3,A13;
                            hence thesis by A137,TARSKI:def 4;
                          end;
                          suppose
                            q1`2<q2`2;
                            then LSeg(g,i)= {p1: p1`1=q1`1 & q1`2<=p1`2 & p1
                            `2<=q2`2} by A130,A132,TOPREAL3:9;
                            then consider p2 such that
A138:                       p2 =x & p2`1=q1`1 and
A139:                       q1`2<=p2`2 & p2`2<=q2`2 by A116,A118;
                            pj`2<=p2`2 & p2`2<=ppi`2 by A129,A131,A139,
XXREAL_0:2;
                            then
A140:                       x in LSeg(f,k) by A92,A127,A138;
                            LSeg(f,k) in lf by A3,A13;
                            hence thesis by A140,TARSKI:def 4;
                          end;
                        end;
                        hence thesis;
                      end;
                    end;
                    hence thesis;
                  end;
                  let x be object;
                  assume x in L~f;
                  then
A141:             x in L~f1 \/ LSeg(f,k) by A3,A12,Th3;
                  now
                    per cases by A141,XBOOLE_0:def 3;
                    suppose
A142:                 x in L~f1;
                      L~g1 c= L~g by Th6;
                      hence thesis by A36,A142;
                    end;
                    suppose
                      x in LSeg(f,k);
                      then consider p1 such that
A143:                 p1=x and
A144:                 p1`1=ppi`1 and
A145:                 pj`2<=p1`2 and
A146:                 p1`2<=ppi`2 by A92;
                      defpred P2[Nat] means len g1<=$1 & $1<=len g & for q st
                      q=g/.$1 holds q`2>=p1`2;
A147:                 now
                        reconsider n=len g1 as Nat;
                        take n;
                        thus P2[n]
                        proof
                          thus len g1<=n & n<=len g by A93,XREAL_1:31;
                          1<=len g1 by A13,A23,A39,XXREAL_0:2;
                          then
A148:                     len g1 in dom g1 by FINSEQ_3:25;
                          let q;
                          assume q=g/.n;
                          then q=f1/.len f1 by A38,A148,FINSEQ_4:68
                            .=G*(i1,i2) by A17,A23,A14,A19,FINSEQ_4:71;
                          hence thesis by A146;
                        end;
                      end;
A149:                 for n be Nat holds P2[n] implies n<=len g;
                      consider ma be Nat such that
A150:                 P2[ma] & for n be Nat st P2[n] holds n<=ma
                      from NAT_1:sch 6(A149,A147);
                      reconsider ma as Element of NAT by ORDINAL1:def 12;
                      now
                        per cases;
                        suppose
A151:                     ma=len g;
                          j2+1<=i2 by A59,NAT_1:13;
                          then
A152:                     1<=l by XREAL_1:19;
                          then 0+1<=ma by A73,A93,A151,XREAL_1:7;
                          then reconsider m1=ma-1 as Element of NAT by INT_1:5;
A153:                     m1 + 1 = ma;
                          len g1+1<=ma by A73,A93,A151,A152,XREAL_1:7;
                          then
A154:                     m1 >= len g1 by A153,XREAL_1:6;
                          reconsider q=g/.m1 as Point of TOP-REAL 2;
                          set lq={e where e is Point of TOP-REAL 2: e`1=ppi`1
                          & pj`2<=e`2 & e`2<=q`2};
A155:                     i2-l=j2;
A156:                     l in dom g2 by A74,A152,FINSEQ_1:1;
                          then
A157:                     g/.ma=g2/.l by A73,A93,A151,FINSEQ_4:69
                            .= pj by A73,A74,A156,A155;
                          then p1`2<=pj`2 by A150;
                          then
A158:                     p1`2=pj`2 by A145,XXREAL_0:1;
A159:                     m1 <= len g by A151,A153,NAT_1:11;
                          then
A160:                     q`1=ppi`1 by A94,A154;
A161:                     pj`2<=q`2 by A94,A154,A159;
                          1<=len g1 by A13,A23,A39,XXREAL_0:2;
                          then
A162:                     1<=m1 by A154,XXREAL_0:2;
                          then q=|[q`1,q`2]| & LSeg (g,m1)=LSeg(pj,q) by A151
,A157,A153,EUCLID:53,TOPREAL1:def 3;
                          then LSeg(g,m1)=lq by A66,A91,A160,A161,TOPREAL3:9;
                          then
A163:                     p1 in LSeg(g,m1) by A144,A158,A161;
                          LSeg(g,m1) in lg by A151,A153,A162;
                          hence thesis by A143,A163,TARSKI:def 4;
                        end;
                        suppose
                          ma<>len g;
                          then ma<len g by A150,XXREAL_0:1;
                          then
A164:                     ma+1 <= len g by NAT_1:13;
                          reconsider qa=g/.ma, qa1=g/.(ma+1) as Point of
                          TOP-REAL 2;
                          set lma = {p2: p2`1=ppi`1 & qa1`2<=p2`2 & p2`2<=qa`2
                          };
A165:                     qa1=|[qa1 `1, qa1 `2]| by EUCLID:53;
A166:                     p1`2<=qa`2 by A150;
A167:                     len g1<=ma+1 by A150,NAT_1:13;
                          then
A168:                     qa1 `1 = ppi`1 by A94,A164;
A169:                     now
                            assume p1`2<=qa1`2;
                            then for q holds q=g/.(ma+1) implies p1`2<=q`2;
                            then ma+1<=ma by A150,A164,A167;
                            hence contradiction by XREAL_1:29;
                          end;
A170:                     qa`1=ppi`1 & qa =|[qa`1,qa`2]| by A94,A150,EUCLID:53;
A171:                     1<=ma by A13,A23,A39,A150,NAT_1:13;
                          then LSeg(g,ma)=LSeg(qa1,qa) by A164,TOPREAL1:def 3
                            .= lma by A166,A169,A168,A170,A165,TOPREAL3:9
,XXREAL_0:2;
                          then
A172:                     x in LSeg(g,ma) by A143,A144,A166,A169;
                          LSeg(g,ma) in lg by A171,A164;
                          hence thesis by A172,TARSKI:def 4;
                        end;
                      end;
                      hence thesis;
                    end;
                  end;
                  hence thesis;
                end;
                1<=len g1 by A13,A23,A39,XXREAL_0:2;
                then 1 in dom g1 by FINSEQ_3:25;
                hence g/.1=f1/.1 by A37,FINSEQ_4:68
                  .=f/.1 by A17,A15,FINSEQ_4:71;
A173:           len g=len g1 + len g2 by FINSEQ_1:22;
                j2+1<=i2 by A59,NAT_1:13;
                then
A174:           1<=l by XREAL_1:19;
                then
A175:           l in dom g2 by A74,FINSEQ_1:1;
                hence g/.len g=g2/.l by A73,A173,FINSEQ_4:69
                  .=G*(i1,m1) by A73,A74,A175
                  .=f/.len f by A3,A46,A58;
                thus len f<=len g by A3,A23,A39,A73,A174,A173,XREAL_1:7;
              end;
              case
                i2=j2;
                hence contradiction by A6,A17,A19,A44,A46,A58;
              end;
              case
A176:           i2<j2;
                set lk={w where w is Point of TOP-REAL 2: w`1=ppi`1 & ppi`2<=w
                `2 & w`2<= pj`2};
A177:           ppi=|[ppi`1,ppi`2]| by EUCLID:53;
                reconsider l=j2-i2 as Element of NAT by A176,INT_1:5;
                deffunc F(Nat) = G*(i1,i2+$1);
                consider g2 such that
A178:           len g2=l & for n being Nat st n in dom g2 holds g2/.
                n=F(n) from FINSEQ_4:sch 2;
                take g=g1^g2;
A179:           now
                  let n;
A180:             n<=i2+n by NAT_1:11;
                  assume
A181:             n in Seg l;
                  then n<=l by FINSEQ_1:1;
                  then
A182:             i2+n<=l+i2 by XREAL_1:7;
                  j2<=width G by A56,FINSEQ_1:1;
                  then
A183:             i2+n<=width G by A182,XXREAL_0:2;
                  1<=n by A181,FINSEQ_1:1;
                  then 1<=i2+n by A180,XXREAL_0:2;
                  hence i2+n in Seg width G by A183,FINSEQ_1:1;
                  hence [i1,i2+n] in Indices G by A47,A49,ZFMISC_1:87;
                end;
A184:           dom g2 = Seg len g2 by FINSEQ_1:def 3;
                now
                  let n be Nat such that
A185:             n in dom g2;
                  take m=i1,k=i2+n;
                  thus [m,k] in Indices G & g2/.n=G*(m,k) by A178,A179,A184
,A185;
                end;
                then
A186:           for n being Nat st n in dom g
                 ex i,j being Nat st [i,j] in Indices G & g/.n=
                G*(i,j) by A40,GOBOARD1:23;
A187:           now
                  let n be Nat;
                  assume that
A188:             n in dom g2 and
A189:             n+1 in dom g2;
                  let l1,l2,l3,l4 be Nat;
                  assume that
A190:             [l1,l2] in Indices G and
A191:             [l3,l4] in Indices G and
A192:             g2/.n=G*(l1,l2) and
A193:             g2/.(n+1)=G*(l3,l4);
                  g2/.(n+1)=G*(i1,i2+(n+1)) & [i1,i2+(n+1)] in Indices G
                  by A178,A179,A184,A189;
                  then
A194:             l3=i1 & l4=i2+(n+1) by A191,A193,GOBOARD1:5;
                  g2/.n=G*(i1,i2+n) & [i1,i2+n] in Indices G by A178,A179,A184
,A188;
                  then l1=i1 & l2=i2+n by A190,A192,GOBOARD1:5;
                  hence |.l1-l3.|+|.l2-l4.|= 0+|.i2+n-(i2+(n+1)).| by A194,
ABSVALUE:2
                    .= |.-1.|
                    .= |.1.| by COMPLEX1:52
                    .= 1 by ABSVALUE:def 1;
                end;
                now
                  let l1,l2,l3,l4 be Nat;
                  assume that
A195:             [ l1,l2] in Indices G and
A196:             [l3,l4] in Indices G and
A197:             g1/.len g1=G*(l1, l2) and
A198:             g2/.1=G*(l3,l4) and
                  len g1 in dom g1 and
A199:             1 in dom g2;
                  g2/.1=G* (i1,i2+1) & [i1,i2+1] in Indices G by A178,A179,A184
,A199;
                  then
A200:             l3=i1 & l4=i2+1 by A196,A198,GOBOARD1:5;
                  f1/.len f1=f/.k by A17,A23,A14,FINSEQ_4:71;
                  then l1=i1 & l2=i2 by A38,A18,A19,A195,A197,GOBOARD1:5;
                  hence |.l1-l3.|+|.l2-l4.|=0+|.i2-(i2+1).| by A200,
ABSVALUE:2
                    .=|.i2-i2+-1.|
                    .=|.1.| by COMPLEX1:52
                    .=1 by ABSVALUE:def 1;
                end;
                then for n being Nat st n in dom g & n+1 in dom g
                 for m,k,i,j being Nat st
[m,k] in Indices G & [i,j] in Indices G & g/.n=G*(m,k) & g/.(n+1)=G*(i,j) holds
                |.m-i.|+|.k-j.|=1 by A41,A187,GOBOARD1:24;
                hence g is_sequence_on G by A186;
A201:           pj=|[pj`1,pj`2]| by EUCLID:53;
                j2 in dom l1 by A56,A55,FINSEQ_1:def 3;
                then l1/.j2 = l1.j2 by PARTFUN1:def 6;
                then
A202:           l1/.j2=pj by A56,MATRIX_0:def 7;
                then
A203:           y1.j2=pj`2 by A56,A20,A55,GOBOARD1:def 2;
                i2 in dom l1 by A51,A55,FINSEQ_1:def 3;
                then l1/.i2 = l1.i2 by PARTFUN1:def 6;
                then
A204:           l1/.i2=ppi by A51,MATRIX_0:def 7;
                then
A205:           y1.i2=ppi`2 by A51,A20,A55,GOBOARD1:def 2;
                then
A206:           ppi `2<pj`2 by A51,A56,A54,A20,A55,A176,A203,SEQM_3:def 1;
A207:           x1.j2=pj`1 by A56,A42,A55,A202,GOBOARD1:def 1;
                x1.i2=ppi`1 by A51,A42,A55,A204,GOBOARD1:def 1;
                then
A208:           ppi`1=pj`1 by A51,A56,A50,A42,A55,A207,SEQM_3:def 10;
A209:           LSeg(f,k)=LSeg(ppi,pj) by A3,A13,A19,A46,A58,TOPREAL1:def 3
                  .= lk by A206,A208,A177,A201,TOPREAL3:9;
A210:           dom g2 = Seg l by A178,FINSEQ_1:def 3;
                thus L~g=L~f
                proof
                  set lg = {LSeg(g,i): 1<=i & i+1<=len g}, lf = {LSeg(f,j): 1
                  <=j & j+1<=len f};
A211:             len g = len g1 + len g2 by FINSEQ_1:22;
A212:             now
                    let j;
                    assume that
A213:               len g1<=j and
A214:               j<=len g;
                    reconsider w = j-len g1 as Element of NAT by A213,INT_1:5;
                    let p such that
A215:               p=g/.j;
                    set u=i2+w;
A216:               dom l1 = Seg len l1 by FINSEQ_1:def 3;
                    now
                      per cases;
                      suppose
A217:                   j=len g1;
                        1<=len g1 by A13,A23,A39,XXREAL_0:2;
                        then len g1 in dom g1 by FINSEQ_3:25;
                        then
A218:                   g/.len g1 = f1/.len f1 by A38,FINSEQ_4:68
                          .= G*(i1,i2) by A17,A23,A14,A19,FINSEQ_4:71;
                        hence p`1=G*(i1,i2)`1 by A215,A217;
                        thus G*(i1,i2)`2<=p`2 & p`2<=G* (i1,j2)`2 by A51,A56
,A54,A20,A55,A176,A205,A203,A215,A217,A218,SEQM_3:def 1;
                        thus p in rng l1 by A51,A55,A204,A215,A216,A217,A218,
PARTFUN2:2;
                      end;
                      suppose
A219:                   j<>len g1;
A220:                   w + len g1 = j;
                        then
A221:                   w <= len g2 by A211,A214,XREAL_1:6;
A222:                   x1 .i2=ppi`1 by A51,A42,A55,A204,GOBOARD1:def 1;
A223:                   j - len g1 <> 0 by A219;
                        then
A224:                   w >= 1 by NAT_1:14;
                        then
A225:                   g/.j=g2/.w by A220,A221,SEQ_4:136;
A226:                   i2<u by A223,XREAL_1:29;
A227:                   w in dom g2 by A224,A221,FINSEQ_3:25;
                        then
A228:                   u in Seg width G by A210,A179;
                        u in Seg width G by A210,A179,A227;
                        then u in dom l1 by A55,FINSEQ_1:def 3;
                        then l1/.u = l1. u by PARTFUN1:def 6;
                        then
A229:                   l1/.u=G*(i1,u) by A228,MATRIX_0:def 7;
                        then
A230:                   y1.u=G*(i1,u) `2 by A20,A55,A228,GOBOARD1:def 2;
A231:                   g2/.w=G* (i1,u) by A178,A227;
                        x1.u=G*(i1,u)`1 by A42,A55,A228,A229,GOBOARD1:def 1;
                        hence
                        p`1=G*(i1,i2)`1 by A51,A50,A42,A55,A215,A225,A231,A228
,A222,SEQM_3:def 10;
                        y1.i2=ppi`2 by A51,A20,A55,A204,GOBOARD1:def 2;
                        hence G*(i1,i2)`2<= p`2 by A51,A54,A20,A55,A215,A225
,A231,A228,A230,A226,SEQM_3:def 1;
A232:                   y1.j2=pj`2 by A56,A20,A55,A202,GOBOARD1:def 2;
                        now
                          per cases;
                          suppose
                            u=j2;
                            hence
                            p`2<=G*(i1,j2)`2
                             by A215,A224,A220,A221,A231,SEQ_4:136;
                          end;
                          suppose
A233:                       u<>j2;
                            u<=i2+l by A178,A221,XREAL_1:7;
                            then u<j2 by A233,XXREAL_0:1;
                            hence
                            p`2<=G*(i1,j2)`2 by A56,A54,A20,A55,A215,A225,A231
,A228,A230,A232,SEQM_3:def 1;
                          end;
                        end;
                        hence p`2<=G*(i1,j2)`2;
                        thus p in rng l1 by A55,A215,A216,A225,A231,A228,A229,
PARTFUN2:2;
                      end;
                    end;
                    hence p`1=ppi`1 & ppi`2<=p`2 & p`2<=pj`2 & p in rng l1;
                  end;
                  thus L~g c= L~f
                  proof
                    let x be object;
                    assume x in L~g;
                    then consider X be set such that
A234:               x in X and
A235:               X in lg by TARSKI:def 4;
                    consider i such that
A236:               X=LSeg(g,i) and
A237:               1<=i and
A238:               i+1 <= len g by A235;
                    now
                      per cases;
                      suppose
A239:                   i+1 <= len g1;
                        i<=i+1 by NAT_1:11;
                        then i<=len g1 by A239,XXREAL_0:2;
                        then
A240:                   i in dom g1 by A237,FINSEQ_3:25;
                        1<=i+1 by NAT_1:11;
                        then i+1 in dom g1 by A239,FINSEQ_3:25;
                        then X=LSeg(g1,i) by A236,A240,TOPREAL3:18;
                        then X in {LSeg(g1,j): 1<=j & j+1<=len g1} by A237,A239
;
                        then
A241:                   x in L~f1 by A36,A234,TARSKI:def 4;
                        L~f1 c= L~f by TOPREAL3:20;
                        hence thesis by A241;
                      end;
                      suppose
A242:                   i+1 > len g1;
                        reconsider q1=g/.i, q2=g/.(i+1) as Point of TOP-REAL 2;
A243:                   i<=len g by A238,NAT_1:13;
A244:                   len g1<=i by A242,NAT_1:13;
                        then
A245:                   q1 `1=ppi`1 by A212,A243;
A246:                   q1`2<=pj`2 by A212,A244,A243;
A247:                   ppi`2<=q1`2 by A212,A244,A243;
                        q2`1=ppi`1 by A212,A238,A242;
                        then
A248:                   q2=|[q1 `1,q2`2]| by A245,EUCLID:53;
A249:                   q2`2<=pj`2 by A212,A238,A242;
A250:                   q1=|[q1`1,q1`2]| & LSeg(g,i)=LSeg(q2,q1) by A237,A238,
EUCLID:53,TOPREAL1:def 3;
A251:                   ppi`2<= q2`2 by A212,A238,A242;
                        now
                          per cases by XXREAL_0:1;
                          suppose
                            q1`2>q2`2;
                            then LSeg(g,i)={p2: p2`1=q1`1 & q2`2<=p2`2 & p2`2
                            <=q1`2} by A248,A250,TOPREAL3:9;
                            then consider p2 such that
A252:                       p2 =x & p2`1=q1`1 and
A253:                       q2`2<=p2`2 & p2`2<=q1`2 by A234,A236;
                            ppi`2<=p2`2 & p2`2<=pj`2 by A246,A251,A253,
XXREAL_0:2;
                            then
A254:                       x in LSeg(f,k) by A209,A245,A252;
                            LSeg(f,k) in lf by A3,A13;
                            hence thesis by A254,TARSKI:def 4;
                          end;
                          suppose
                            q1`2=q2`2;
                            then LSeg(g,i)={q1} by A248,A250,RLTOPSP1:70;
                            then x=q1 by A234,A236,TARSKI:def 1;
                            then
A255:                       x in LSeg(f,k) by A209,A245,A247,A246;
                            LSeg(f,k) in lf by A3,A13;
                            hence thesis by A255,TARSKI:def 4;
                          end;
                          suppose
                            q1`2<q2`2;
                            then LSeg(g,i)= {p1: p1`1=q1`1 & q1`2<=p1`2 & p1
                            `2<=q2`2} by A248,A250,TOPREAL3:9;
                            then consider p2 such that
A256:                       p2 =x & p2`1=q1`1 and
A257:                       q1`2<=p2`2 & p2`2<=q2`2 by A234,A236;
                            ppi`2<=p2`2 & p2`2<=pj`2 by A247,A249,A257,
XXREAL_0:2;
                            then
A258:                       x in LSeg(f,k) by A209,A245,A256;
                            LSeg(f,k) in lf by A3,A13;
                            hence thesis by A258,TARSKI:def 4;
                          end;
                        end;
                        hence thesis;
                      end;
                    end;
                    hence thesis;
                  end;
                  let x be object;
                  assume x in L~f;
                  then
A259:             x in L~f1 \/ LSeg(f,k) by A3,A12,Th3;
                  now
                    per cases by A259,XBOOLE_0:def 3;
                    suppose
A260:                 x in L~f1;
                      L~g1 c= L~g by Th6;
                      hence thesis by A36,A260;
                    end;
                    suppose
                      x in LSeg(f,k);
                      then consider p1 such that
A261:                 p1=x and
A262:                 p1`1=ppi`1 and
A263:                 ppi`2<=p1`2 and
A264:                 p1`2<=pj`2 by A209;
                      defpred P2[Nat] means len g1<=$1 & $1<=len g & for q st
                      q=g/.$1 holds q`2<=p1`2;
A265:                 now
                        reconsider n=len g1 as Nat;
                        take n;
                        thus P2[n]
                        proof
                          thus len g1<=n & n<=len g by A211,XREAL_1:31;
                          1<=len g1 by A13,A23,A39,XXREAL_0:2;
                          then
A266:                     len g1 in dom g1 by FINSEQ_3:25;
                          let q;
                          assume q=g/.n;
                          then q=f1/.len f1 by A38,A266,FINSEQ_4:68
                            .=G*(i1,i2) by A17,A23,A14,A19,FINSEQ_4:71;
                          hence thesis by A263;
                        end;
                      end;
A267:                 for n be Nat holds P2[n] implies n<=len g;
                      consider ma be Nat such that
A268:                 P2 [ma] & for n be Nat st P2[n] holds n<=ma
                      from NAT_1:sch 6 (A267,A265);
                      reconsider ma as Element of NAT by ORDINAL1:def 12;
                      now
                        per cases;
                        suppose
A269:                     ma=len g;
                          i2+1<=j2 by A176,NAT_1:13;
                          then
A270:                     1<=l by XREAL_1:19;
                          then 0+1<=ma by A178,A211,A269,XREAL_1:7;
                          then reconsider m1=ma-1 as Element of NAT by INT_1:5;
A271:                     m1 + 1 = ma;
                          len g1+1<=ma by A178,A211,A269,A270,XREAL_1:7;
                          then
A272:                     m1 >= len g1 by A271,XREAL_1:6;
                          reconsider q=g/.m1 as Point of TOP-REAL 2;
                          set lq={e where e is Point of TOP-REAL 2: e`1=ppi`1
                          & q`2<=e`2 & e`2<=pj`2};
A273:                     i2+l=j2;
A274:                     l in dom g2 by A178,A270,FINSEQ_3:25;
                          then
A275:                     g/.ma=g2/.l by A178,A211,A269,FINSEQ_4:69
                            .= pj by A178,A274,A273;
                          then pj`2<=p1`2 by A268;
                          then
A276:                     p1`2=pj`2 by A264,XXREAL_0:1;
A277:                     m1 <= len g by A269,A271,NAT_1:11;
                          then
A278:                     q`1=ppi`1 by A212,A272;
A279:                     q`2<=pj`2 by A212,A272,A277;
                          1<=len g1 by A13,A23,A39,XXREAL_0:2;
                          then
A280:                     1<=m1 by A272,XXREAL_0:2;
                          then q=|[q`1,q`2]| & LSeg (g,m1)=LSeg(pj,q) by A269
,A275,A271,EUCLID:53,TOPREAL1:def 3;
                          then LSeg(g,m1)=lq by A208,A201,A278,A279,TOPREAL3:9;
                          then
A281:                     p1 in LSeg(g,m1) by A262,A276,A279;
                          LSeg(g,m1) in lg by A269,A271,A280;
                          hence thesis by A261,A281,TARSKI:def 4;
                        end;
                        suppose
                          ma<>len g;
                          then ma<len g by A268,XXREAL_0:1;
                          then
A282:                     ma+1 <= len g by NAT_1:13;
                          reconsider qa=g/.ma, qa1=g/.(ma+1) as Point of
                          TOP-REAL 2;
                          set lma = {p2: p2`1=ppi`1 & qa`2<=p2`2 & p2`2<=qa1`2
                          };
A283:                     qa1=|[qa1 `1, qa1 `2]| by EUCLID:53;
A284:                     qa`2<=p1`2 by A268;
A285:                     len g1<=ma+1 by A268,NAT_1:13;
                          then
A286:                     qa1 `1 = ppi`1 by A212,A282;
A287:                     now
                            assume qa1`2<=p1`2;
                            then for q holds q=g/.(ma+1) implies q`2<=p1`2;
                            then ma+1<=ma by A268,A282,A285;
                            hence contradiction by XREAL_1:29;
                          end;
A288:                     qa`1=ppi`1 & qa =|[qa`1,qa`2]| by A212,A268,EUCLID:53
;
A289:                     1<=ma by A13,A23,A39,A268,NAT_1:13;
                          then LSeg(g,ma)=LSeg(qa,qa1) by A282,TOPREAL1:def 3
                            .= lma by A284,A287,A286,A288,A283,TOPREAL3:9
,XXREAL_0:2;
                          then
A290:                     x in LSeg(g,ma) by A261,A262,A284,A287;
                          LSeg(g,ma) in lg by A289,A282;
                          hence thesis by A290,TARSKI:def 4;
                        end;
                      end;
                      hence thesis;
                    end;
                  end;
                  hence thesis;
                end;
                1<=len g1 by A13,A23,A39,XXREAL_0:2;
                then 1 in dom g1 by FINSEQ_3:25;
                hence g/.1=f1/.1 by A37,FINSEQ_4:68
                  .=f/.1 by A17,A15,FINSEQ_4:71;
A291:           len g=len g1 + l by A178,FINSEQ_1:22;
                i2+1<=j2 by A176,NAT_1:13;
                then
A292:           1<=l by XREAL_1:19;
                then
A293:           l in dom g2 by A178,A184,FINSEQ_1:1;
                hence g/.len g=g2/.l by A291,FINSEQ_4:69
                  .=G*(i1,i2+l) by A178,A293
                  .=f/.len f by A3,A46,A58;
                thus len f<=len g by A3,A23,A39,A292,A291,XREAL_1:7;
              end;
            end;
            hence thesis;
          end;
          suppose
A294:       i2=j2;
            set ppi = G*(i1,i2), pj = G*(j1,i2);
            now
              per cases by XXREAL_0:1;
              case
A295:           i1>j1;
                c1/.j1 = c1.j1 by A48,A43,PARTFUN1:def 6;
                then
A296:           c1/.j1=pj by A48,MATRIX_0:def 8;
                then
A297:           x2.j1=pj`1 by A48,A43,A22,GOBOARD1:def 1;
                c1/.i1 = c1.i1 by A49,A43,PARTFUN1:def 6;
                then
A298:           c1/.i1=ppi by A49,MATRIX_0:def 8;
                then
A299:           x2.i1=ppi`1 by A49,A43,A22,GOBOARD1:def 1;
                then
A300:           pj `1<ppi`1 by A49,A48,A52,A43,A22,A295,A297,SEQM_3:def 1;
A301:           y2.j1=pj`2 by A48,A43,A21,A296,GOBOARD1:def 2;
                y2.i1=ppi`2 by A49,A43,A21,A298,GOBOARD1:def 2;
                then
A302:           ppi`2=pj`2 by A49,A48,A53,A43,A21,A301,SEQM_3:def 10;
                reconsider l=i1-j1 as Element of NAT by A295,INT_1:5;
                defpred P1[Nat,set] means for m st m=i1-$1 holds $2=G*(m,i2);
                set lk={w where w is Point of TOP-REAL 2: w`2=ppi`2 & pj`1<=w
                `1 & w`1<= ppi`1};
A303:           ppi=|[ppi`1,ppi`2]| by EUCLID:53;
A304:           now
                  let n;
                  assume n in Seg l;
                  then
A305:             n<=l by FINSEQ_1:1;
                  l<=i1 by XREAL_1:43;
                  then reconsider w=i1-n as Element of NAT by A305,INT_1:5
,XXREAL_0:2;
                  i1-n<=i1 & i1<=len G by A49,FINSEQ_3:25,XREAL_1:43;
                  then
A306:             w<=len G by XXREAL_0:2;
A307:             1<=j1 by A48,FINSEQ_3:25;
                  i1-l<=i1-n by A305,XREAL_1:13;
                  then 1<=w by A307,XXREAL_0:2;
                  then w in dom G by A306,FINSEQ_3:25;
                  hence i1-n is Element of NAT & [i1-n,i2] in Indices G & i1-n
                  in dom G by A47,A51,ZFMISC_1:87;
                end;
A308:           now
                  let n be Nat;
                  assume n in Seg l;
                  then reconsider m=i1-n as Element of NAT by A304;
                  take p=G*(m,i2);
                  thus P1[n,p];
                end;
                consider g2 such that
A309:           len g2= l & for n being Nat st n in Seg l holds P1[n
                ,g2/.n] from FINSEQ_4:sch 1(A308);
                take g=g1^g2;
A310:           dom g2 = Seg l by A309,FINSEQ_1:def 3;
A311:           now
                  let n be Nat;
                  assume that
A312:             n in dom g2 and
A313:             n+1 in dom g2;
                  reconsider m1=i1-n,m2=i1-(n+1) as Element of NAT by A304,A310
,A312,A313;
                  let l1,l2,l3,l4 be Nat;
                  assume that
A314:             [l1,l2] in Indices G and
A315:             [l3,l4] in Indices G and
A316:             g2/.n=G*(l1,l2) and
A317:             g2/.(n+1)=G*(l3,l4);
                  [i1-(n+1),i2] in Indices G & g2/.(n+1)=G*(m2,i2) by A304,A309
,A310,A313;
                  then
A318:             l3=m2 & l4=i2 by A315,A317,GOBOARD1:5;
                  [i1-n,i2] in Indices G & g2/.n=G*(m1,i2) by A304,A309,A310
,A312;
                  then l1=m1 & l2=i2 by A314,A316,GOBOARD1:5;
                  hence |.l1-l3.|+|.l2-l4.|= |.i1-n-(i1-(n+1)).|+0 by A318,
ABSVALUE:2
                    .= 1 by ABSVALUE:def 1;
                end;
                now
                  let n be Nat;
                  assume
A319:             n in dom g2;
                  then reconsider m=i1-n as Element of NAT by A304,A310;
                   reconsider m,k=i2 as Nat;
                  take m,k;
                  thus [m,k] in Indices G & g2/.n=G*(m,k) by A304,A309,A310
,A319;
                end;
                then
A320:           for n being Nat st n in dom g
                  ex i,j being Nat st [i,j] in Indices G & g/.n=
                G*(i,j) by A40,GOBOARD1:23;
                now
                  let l1,l2,l3,l4 be Nat;
                  assume that
A321:             [ l1,l2] in Indices G and
A322:             [l3,l4] in Indices G and
A323:             g1/.len g1=G*(l1, l2) and
A324:             g2/.1=G*(l3,l4) and
                  len g1 in dom g1 and
A325:             1 in dom g2;
                  reconsider m1=i1-1 as Element of NAT by A304,A310,A325;
                  [i1-1,i2] in Indices G & g2/.1=G*(m1,i2) by A304,A309,A310
,A325;
                  then
A326:             l3=m1 & l4=i2 by A322,A324,GOBOARD1:5;
                  f1/.len f1=f/.k by A17,A23,A14,FINSEQ_4:71;
                  then l1=i1 & l2=i2 by A38,A18,A19,A321,A323,GOBOARD1:5;
                  hence |.l1-l3.|+|.l2-l4.|=|.i1-(i1-1).|+0 by A326,
ABSVALUE:2
                    .=1 by ABSVALUE:def 1;
                end;
                then for n being Nat st n in dom g & n+1 in dom g
            for m,k,i,j being Nat st
[m,k] in Indices G & [i,j] in Indices G & g/.n=G*(m,k) & g/.(n+1)=G*(i,j) holds
                |.m-i.|+|.k-j.|=1 by A41,A311,GOBOARD1:24;
                hence g is_sequence_on G by A320;

                reconsider m1=i1-l as Element of NAT by ORDINAL1:def 12;
A327:           pj=|[pj`1,pj`2]| by EUCLID:53;
A328:           LSeg(f,k)=LSeg(pj,ppi) by A3,A13,A19,A46,A294,TOPREAL1:def 3
                  .= lk by A300,A302,A303,A327,TOPREAL3:10;
                thus L~g=L~f
                proof
                  set lg = {LSeg(g,i): 1<=i & i+1<=len g}, lf = {LSeg(f,j): 1
                  <=j & j+1<=len f};
A329:             len g = len g1 + len g2 by FINSEQ_1:22;
A330:             now
                    let j;
                    assume that
A331:               len g1<=j and
A332:               j<=len g;
                    reconsider w = j-len g1 as Element of NAT by A331,INT_1:5;
                    let p such that
A333:               p=g/.j;
                    now
                      per cases;
                      suppose
A334:                   j=len g1;
                        1<=len g1 by A13,A23,A39,XXREAL_0:2;
                        then len g1 in dom g1 by FINSEQ_3:25;
                        then
A335:                   g/.len g1 = f1/.len f1 by A38,FINSEQ_4:68
                          .= G*(i1,i2) by A17,A23,A14,A19,FINSEQ_4:71;
                        hence p`2=G*(i1,i2)`2 by A333,A334;
                        thus G*(j1,i2)`1<=p`1 & p`1<=G*(i1,i2)`1 by A49,A48,A52
,A43,A22,A295,A299,A297,A333,A334,A335,SEQM_3:def 1;
                        thus p in rng c1 by A49,A43,A298,A333,A334,A335,
PARTFUN2:2;
                      end;
                      suppose
A336:                   j<>len g1;
A337:                   w + len g1 = j;
                        then
A338:                   w <= len g2 by A329,A332,XREAL_1:6;
A339:                   j - len g1 <> 0 by A336;
                        then
A340:                   w >= 1 by NAT_1:14;
                        then
A341:                   w in dom g2 by A338,FINSEQ_3:25;
                        then reconsider u=i1-w as Element of NAT by A304,A310;
A342:                   g/.j=g2/.w by A340,A337,A338,SEQ_4:136;
A343:                   u<i1 by A339,XREAL_1:44;
A344:                   g2/.w=G*(u,i2) by A309,A310,A341;
A345:                   y2.i1=G*(i1,i2)`2 by A49,A43,A21,A298,GOBOARD1:def 2;
A346:                   i1-w in dom G by A304,A310,A341;
                        c1/.u =c1.u by A43,A304,A310,A341,PARTFUN1:def 6;
                        then
A347:                   c1/.u=G*( u,i2) by A346,MATRIX_0:def 8;
                        then
A348:                   x2.u=G *(u,i2)`1 by A43,A22,A346,GOBOARD1:def 1;
                        y2.u=G*(u,i2)`2 by A43,A21,A346,A347,GOBOARD1:def 2;
                        hence
                        p`2=G*(i1,i2)`2 by A49,A53,A43,A21,A333,A342,A346,A344
,A345,SEQM_3:def 10;
A349:                   x2.j1=G*(j1,i2) `1 by A48,A43,A22,A296,GOBOARD1:def 1;
                        now
                          per cases;
                          suppose
                            u=j1;
                            hence
                            G*(j1,i2)`1<=p`1
                             by A333,A340,A337,A338,A344,SEQ_4:136;
                          end;
                          suppose
A350:                       u<>j1;
                            i1-len g2<=u by A338,XREAL_1:13;
                            then j1<u by A309,A350,XXREAL_0:1;
                            hence
                            G*(j1,i2)`1<=p`1 by A48,A52,A43,A22,A333,A342,A346
,A344,A348,A349,SEQM_3:def 1;
                          end;
                        end;
                        hence G*(j1,i2)`1<=p`1;
                        x2.i1=G*(i1,i2)`1 by A49,A43,A22,A298,GOBOARD1:def 1;
                        hence p`1<=G*(i1,i2)`1 by A49,A52,A43,A22,A333,A342
,A346,A344,A348,A343,SEQM_3:def 1;
                        thus p in rng c1 by A43,A333,A342,A346,A344,A347,
PARTFUN2:2;
                      end;
                    end;
                    hence p`2=ppi`2 & pj`1<=p`1 & p`1<=ppi`1 & p in rng c1;
                  end;
                  thus L~g c= L~f
                  proof
                    let x be object;
                    assume x in L~g;
                    then consider X be set such that
A351:               x in X and
A352:               X in lg by TARSKI:def 4;
                    consider i such that
A353:               X=LSeg(g,i) and
A354:               1<=i and
A355:               i+1 <= len g by A352;
                    now
                      per cases;
                      suppose
A356:                   i+1 <= len g1;
                        i<=i+1 by NAT_1:11;
                        then i<=len g1 by A356,XXREAL_0:2;
                        then
A357:                   i in dom g1 by A354,FINSEQ_3:25;
                        1<=i+1 by NAT_1:11;
                        then i+1 in dom g1 by A356,FINSEQ_3:25;
                        then X=LSeg(g1,i) by A353,A357,TOPREAL3:18;
                        then X in {LSeg(g1,j): 1<=j & j+1<=len g1} by A354,A356
;
                        then
A358:                   x in L~f1 by A36,A351,TARSKI:def 4;
                        L~f1 c= L~f by TOPREAL3:20;
                        hence thesis by A358;
                      end;
                      suppose
A359:                   i+1 > len g1;
                        reconsider q1=g/.i, q2=g/.(i+1) as Point of TOP-REAL 2;
A360:                   i<=len g by A355,NAT_1:13;
A361:                   len g1<=i by A359,NAT_1:13;
                        then
A362:                   q1 `2=ppi`2 by A330,A360;
A363:                   q1`1<=ppi`1 by A330,A361,A360;
A364:                   pj`1<=q1`1 by A330,A361,A360;
                        q2`2=ppi`2 by A330,A355,A359;
                        then
A365:                   q2=|[q2 `1,q1`2]| by A362,EUCLID:53;
A366:                   q2`1<=ppi`1 by A330,A355,A359;
A367:                   q1=|[q1`1,q1`2]| & LSeg(g,i)=LSeg(q2,q1) by A354,A355,
EUCLID:53,TOPREAL1:def 3;
A368:                   pj`1<= q2`1 by A330,A355,A359;
                        now
                          per cases by XXREAL_0:1;
                          suppose
                            q1`1>q2`1;
                            then LSeg(g,i)={p2: p2`2=q1`2 & q2`1<=p2`1 & p2`1
                            <=q1`1} by A365,A367,TOPREAL3:10;
                            then consider p2 such that
A369:                       p2 =x & p2`2=q1`2 and
A370:                       q2`1<=p2`1 & p2`1<=q1`1 by A351,A353;
                            pj`1<=p2`1 & p2`1<=ppi`1 by A363,A368,A370,
XXREAL_0:2;
                            then
A371:                       x in LSeg(f,k) by A328,A362,A369;
                            LSeg(f,k) in lf by A3,A13;
                            hence thesis by A371,TARSKI:def 4;
                          end;
                          suppose
                            q1`1=q2`1;
                            then LSeg(g,i)={q1} by A365,A367,RLTOPSP1:70;
                            then x=q1 by A351,A353,TARSKI:def 1;
                            then
A372:                       x in LSeg(f,k) by A328,A362,A364,A363;
                            LSeg(f,k) in lf by A3,A13;
                            hence thesis by A372,TARSKI:def 4;
                          end;
                          suppose
                            q1`1<q2`1;
                            then LSeg(g,i)= {p1: p1`2=q1`2 & q1`1<=p1`1 & p1
                            `1<=q2`1} by A365,A367,TOPREAL3:10;
                            then consider p2 such that
A373:                       p2 =x & p2`2=q1`2 and
A374:                       q1`1<=p2`1 & p2`1<=q2`1 by A351,A353;
                            pj`1<=p2`1 & p2`1<=ppi`1 by A364,A366,A374,
XXREAL_0:2;
                            then
A375:                       x in LSeg(f,k) by A328,A362,A373;
                            LSeg(f,k) in lf by A3,A13;
                            hence thesis by A375,TARSKI:def 4;
                          end;
                        end;
                        hence thesis;
                      end;
                    end;
                    hence thesis;
                  end;
                  let x be object;
                  assume x in L~f;
                  then
A376:             x in L~f1 \/ LSeg(f,k) by A3,A12,Th3;
                  now
                    per cases by A376,XBOOLE_0:def 3;
                    suppose
A377:                 x in L~f1;
                      L~g1 c= L~g by Th6;
                      hence thesis by A36,A377;
                    end;
                    suppose
                      x in LSeg(f,k);
                      then consider p1 such that
A378:                 p1=x and
A379:                 p1`2=ppi`2 and
A380:                 pj`1<=p1`1 and
A381:                 p1`1<=ppi`1 by A328;
                      defpred P2[Nat] means len g1<=$1 & $1<=len g & for q st
                      q=g/.$1 holds q`1>=p1`1;
A382:                 now
                        reconsider n=len g1 as Nat;
                        take n;
                        thus P2[n]
                        proof
                          thus len g1<=n & n<=len g by A329,XREAL_1:31;
                          1<=len g1 by A13,A23,A39,XXREAL_0:2;
                          then
A383:                     len g1 in dom g1 by FINSEQ_3:25;
                          let q;
                          assume q=g/.n;
                          then q=f1/.len f1 by A38,A383,FINSEQ_4:68
                            .=G*(i1,i2) by A17,A23,A14,A19,FINSEQ_4:71;
                          hence thesis by A381;
                        end;
                      end;
A384:                 for n be Nat holds P2[n] implies n<=len g;
                      consider ma be Nat such that
A385:                 P2 [ma] & for n be Nat st P2[n] holds n<=ma
                      from NAT_1:sch 6 (A384,A382);
                      reconsider ma as Element of NAT by ORDINAL1:def 12;
                      now
                        per cases;
                        suppose
A386:                     ma=len g;
                          j1+1<=i1 by A295,NAT_1:13;
                          then
A387:                     1<=l by XREAL_1:19;
                          then 0+1<=ma by A309,A329,A386,XREAL_1:7;
                          then reconsider m1=ma-1 as Element of NAT by INT_1:5;
A388:                     m1 + 1 = ma;
                          len g1+1<=ma by A309,A329,A386,A387,XREAL_1:7;
                          then
A389:                     m1 >= len g1 by A388,XREAL_1:6;
                          reconsider q=g/.m1 as Point of TOP-REAL 2;
                          set lq={e where e is Point of TOP-REAL 2: e`2=ppi`2
                          & pj`1<=e`1 & e`1<=q`1};
A390:                     i1-l=j1;
A391:                     l in dom g2 by A310,A387,FINSEQ_1:1;
                          then
A392:                     g/.ma=g2/.l by A309,A329,A386,FINSEQ_4:69
                            .= pj by A309,A310,A391,A390;
                          then p1`1<=pj`1 by A385;
                          then
A393:                     p1`1=pj`1 by A380,XXREAL_0:1;
A394:                     m1 <= len g by A386,A388,NAT_1:11;
                          then
A395:                     q`2=ppi`2 by A330,A389;
A396:                     pj`1<=q`1 by A330,A389,A394;
                          1<=len g1 by A13,A23,A39,XXREAL_0:2;
                          then
A397:                     1<=m1 by A389,XXREAL_0:2;
                          then q=|[q`1,q`2]| & LSeg (g,m1)=LSeg(pj,q) by A386
,A392,A388,EUCLID:53,TOPREAL1:def 3;
                          then LSeg(g,m1)=lq by A302,A327,A395,A396,TOPREAL3:10
;
                          then
A398:                     p1 in LSeg(g,m1) by A379,A393,A396;
                          LSeg(g,m1) in lg by A386,A388,A397;
                          hence thesis by A378,A398,TARSKI:def 4;
                        end;
                        suppose
                          ma<>len g;
                          then ma<len g by A385,XXREAL_0:1;
                          then
A399:                     ma+1 <= len g by NAT_1:13;
                          reconsider qa=g/.ma, qa1=g/.(ma+1) as Point of
                          TOP-REAL 2;
                          set lma = {p2: p2`2=ppi`2 & qa1`1<=p2`1 & p2`1<=qa`1
                          };
A400:                     qa1=|[qa1 `1, qa1 `2]| by EUCLID:53;
A401:                     p1`1<=qa`1 by A385;
A402:                     len g1<=ma+1 by A385,NAT_1:13;
                          then
A403:                     qa1 `2 = ppi`2 by A330,A399;
A404:                     now
                            assume p1`1<=qa1`1;
                            then for q holds q=g/.(ma+1) implies p1`1<=q`1;
                            then ma+1<=ma by A385,A399,A402;
                            hence contradiction by XREAL_1:29;
                          end;
A405:                     qa`2=ppi`2 & qa =|[qa`1,qa`2]| by A330,A385,EUCLID:53
;
A406:                     1<=ma by A13,A23,A39,A385,NAT_1:13;
                          then LSeg(g,ma)=LSeg(qa1,qa) by A399,TOPREAL1:def 3
                            .= lma by A401,A404,A403,A405,A400,TOPREAL3:10
,XXREAL_0:2;
                          then
A407:                     x in LSeg(g,ma) by A378,A379,A401,A404;
                          LSeg(g,ma) in lg by A406,A399;
                          hence thesis by A407,TARSKI:def 4;
                        end;
                      end;
                      hence thesis;
                    end;
                  end;
                  hence thesis;
                end;
                1<=len g1 by A13,A23,A39,XXREAL_0:2;
                then 1 in dom g1 by A57,FINSEQ_1:1;
                hence g/.1=f1/.1 by A37,FINSEQ_4:68
                  .=f/.1 by A17,A15,FINSEQ_4:71;
A408:           len g=len g1 + len g2 by FINSEQ_1:22;
                j1+1<=i1 by A295,NAT_1:13;
                then
A409:           1<=l by XREAL_1:19;
                then
A410:           l in dom g2 by A310,FINSEQ_1:1;
                hence g/.len g=g2/.l by A309,A408,FINSEQ_4:69
                  .=G*(m1,i2) by A309,A310,A410
                  .=f/.len f by A3,A46,A294;
                thus len f<=len g by A3,A23,A39,A309,A409,A408,XREAL_1:7;
              end;
              case
                i1=j1;
                hence contradiction by A6,A17,A19,A44,A46,A294;
              end;
              case
A411:           i1<j1;
                set lk={w where w is Point of TOP-REAL 2: w`2=ppi`2 & ppi`1<=w
                `1 & w`1<= pj`1};
A412:           ppi=|[ppi`1,ppi`2]| by EUCLID:53;
                reconsider l=j1-i1 as Element of NAT by A411,INT_1:5;
                deffunc F(Nat) = G*(i1+$1,i2);
                consider g2 such that
A413:           len g2 = l & for n being Nat st n in dom g2 holds g2
                /.n = F(n) from FINSEQ_4:sch 2;
                take g=g1^g2;
A414:           now
                  let n;
A415:             n<=i1+n by NAT_1:11;
                  assume
A416:             n in Seg l;
                  then n<=l by FINSEQ_1:1;
                  then
A417:             i1+n<=l+i1 by XREAL_1:7;
                  j1<=len G by A48,FINSEQ_3:25;
                  then
A418:             i1+n<=len G by A417,XXREAL_0:2;
                  1<=n by A416,FINSEQ_1:1;
                  then 1<=i1+n by A415,XXREAL_0:2;
                  hence i1+n in dom G by A418,FINSEQ_3:25;
                  hence [i1+n,i2] in Indices G by A47,A51,ZFMISC_1:87;
                end;
A419:           dom g2 = Seg len g2 by FINSEQ_1:def 3;
                now
                  let n be Nat such that
A420:             n in dom g2;
                   reconsider m=i1+n,k=i2 as Nat;
                  take m,k;
                  thus [m,k] in Indices G & g2/.n=G*(m,k) by A413,A414,A419
,A420;
                end;
                then
A421:           for n being Nat  st n in dom g
                 ex i,j being Nat st [i,j] in Indices G & g/.n=
                G*(i,j) by A40,GOBOARD1:23;
A422:           now
                  let n be Nat;
                  assume that
A423:             n in dom g2 and
A424:             n+1 in dom g2;
                  let l1,l2,l3,l4 be Nat;
                  assume that
A425:             [l1,l2] in Indices G and
A426:             [l3,l4] in Indices G and
A427:             g2/.n=G*(l1,l2) and
A428:             g2/.(n+1)=G*(l3,l4);
                  g2/.(n+1)=G*(i1+(n+1),i2) & [i1+(n+1),i2] in Indices G
                  by A413,A414,A419,A424;
                  then
A429:             l3=i1+(n+1) & l4=i2 by A426,A428,GOBOARD1:5;
                  g2/.n=G*(i1+n,i2) & [i1+n,i2] in Indices G by A413,A414,A419
,A423;
                  then l1=i1+n & l2=i2 by A425,A427,GOBOARD1:5;
                  hence |.l1-l3.|+|.l2-l4.|= |.i1+n-(i1+(n+1)).|+0 by A429,
ABSVALUE:2
                    .= |.-1.|
                    .= |.1.| by COMPLEX1:52
                    .= 1 by ABSVALUE:def 1;
                end;
                now
                  let l1,l2,l3,l4 be Nat;
                  assume that
A430:             [ l1,l2] in Indices G and
A431:             [l3,l4] in Indices G and
A432:             g1/.len g1=G*(l1,l2) and
A433:             g2/.1=G*(l3,l4) and
                  len g1 in dom g1 and
A434:             1 in dom g2;
                  g2/.1=G*(i1+1,i2) & [i1+1,i2] in Indices G by A413,A414,A419
,A434;
                  then
A435:             l3=i1+1 & l4=i2 by A431,A433,GOBOARD1:5;
                  f1/.len f1=f/.k by A17,A23,A14,FINSEQ_4:71;
                  then l1=i1 & l2=i2 by A38,A18,A19,A430,A432,GOBOARD1:5;
                  hence |.l1-l3.|+|.l2-l4.|=|.i1-(i1+1).|+0 by A435,
ABSVALUE:2
                    .=|.i1-i1+-1.|
                    .=|.1.| by COMPLEX1:52
                    .=1 by ABSVALUE:def 1;
                end;
                then for n being Nat st n in dom g & n+1 in dom g
               for m,k,i,j being Nat st
[m,k] in Indices G & [i,j] in Indices G & g/.n=G*(m,k) & g/.(n+1)=G*(i,j) holds
                |.m-i.|+|.k-j.|=1 by A41,A422,GOBOARD1:24;
                hence g is_sequence_on G by A421;
A436:           pj=|[pj`1,pj`2]| by EUCLID:53;
                c1/.j1 = c1.j1 by A48,A43,PARTFUN1:def 6;
                then
A437:           c1/.j1=pj by A48,MATRIX_0:def 8;
                then
A438:           x2.j1=pj`1 by A48,A43,A22,GOBOARD1:def 1;
                c1/.i1 = c1.i1 by A49,A43,PARTFUN1:def 6;
                then
A439:           c1/.i1=ppi by A49,MATRIX_0:def 8;
                then
A440:           x2.i1=ppi`1 by A49,A43,A22,GOBOARD1:def 1;
                then
A441:           ppi `1<pj`1 by A49,A48,A52,A43,A22,A411,A438,SEQM_3:def 1;
A442:           y2.j1=pj`2 by A48,A43,A21,A437,GOBOARD1:def 2;
                y2.i1=ppi`2 by A49,A43,A21,A439,GOBOARD1:def 2;
                then
A443:           ppi`2=pj`2 by A49,A48,A53,A43,A21,A442,SEQM_3:def 10;
A444:           LSeg(f,k)=LSeg(ppi,pj) by A3,A13,A19,A46,A294,TOPREAL1:def 3
                  .= lk by A441,A443,A412,A436,TOPREAL3:10;
A445:           dom g2 = Seg l by A413,FINSEQ_1:def 3;
                thus L~g=L~f
                proof
                  set lg = {LSeg(g,i): 1<=i & i+1<=len g}, lf = {LSeg(f,j): 1
                  <=j & j+1<=len f};
A446:             len g = len g1 + len g2 by FINSEQ_1:22;
A447:             now
                    let j;
                    assume that
A448:               len g1<=j and
A449:               j<=len g;
                    reconsider w = j-len g1 as Element of NAT by A448,INT_1:5;
                    set u=i1+w;
                    let p such that
A450:               p=g/.j;
                    now
                      per cases;
                      suppose
A451:                   j=len g1;
                        1<=len g1 by A13,A23,A39,XXREAL_0:2;
                        then len g1 in dom g1 by FINSEQ_3:25;
                        then
A452:                   g/.len g1 = f1/.len f1 by A38,FINSEQ_4:68
                          .= G*(i1,i2) by A17,A23,A14,A19,FINSEQ_4:71;
                        hence p`2=G*(i1,i2)`2 by A450,A451;
                        thus G*(i1,i2)`1<=p`1 & p`1<=G* (j1,i2)`1 by A49,A48
,A52,A43,A22,A411,A440,A438,A450,A451,A452,SEQM_3:def 1;
                        thus p in rng c1 by A49,A43,A439,A450,A451,A452,
PARTFUN2:2;
                      end;
                      suppose
A453:                   j<>len g1;
A454:                   w + len g1 = j;
                        then
A455:                   w <= len g2 by A446,A449,XREAL_1:6;
A456:                   y2.i1=G*(i1,i2)`2 by A49,A43,A21,A439,GOBOARD1:def 2;
A457:                   j - len g1 <> 0 by A453;
                        then
A458:                   w >= 1 by NAT_1:14;
                        then
A459:                   g/.j=g2/.w by A454,A455,SEQ_4:136;
A460:                   i1<u by A457,XREAL_1:29;
A461:                   w in dom g2 by A458,A455,FINSEQ_3:25;
                        then
A462:                   u in dom G by A445,A414;
                        c1/.u = c1.u by A43,A445,A414,A461,PARTFUN1:def 6;
                        then
A463:                   c1/.u=G*(u,i2) by A462,MATRIX_0:def 8;
                        then
A464:                   x2.u=G *(u,i2)`1 by A43,A22,A462,GOBOARD1:def 1;
A465:                   g2/.w=G*(u,i2) by A413,A461;
                        y2.u=G*(u,i2)`2 by A43,A21,A462,A463,GOBOARD1:def 2;
                        hence
                        p`2=G*(i1,i2)`2 by A49,A53,A43,A21,A450,A459,A465,A462
,A456,SEQM_3:def 10;
                        x2.i1=G*(i1,i2)`1 by A49,A43,A22,A439,GOBOARD1:def 1;
                        hence G*(i1,i2)`1<=p`1 by A49,A52,A43,A22,A450,A459
,A465,A462,A464,A460,SEQM_3:def 1;
A466:                   x2.j1=G* (j1,i2)`1 by A48,A43,A22,A437,GOBOARD1:def 1;
                        now
                          per cases;
                          suppose
                            u=j1;
                            hence
                            p`1<=G*(j1,i2)`1
                             by A450,A458,A454,A455,A465,SEQ_4:136;
                          end;
                          suppose
A467:                       u<>j1;
                            u<=i1+l by A413,A455,XREAL_1:7;
                            then u<j1 by A467,XXREAL_0:1;
                            hence
                            p`1<=G*(j1,i2)`1 by A48,A52,A43,A22,A450,A459,A465
,A462,A464,A466,SEQM_3:def 1;
                          end;
                        end;
                        hence p`1<=G*(j1,i2)`1;
                        thus p in rng c1 by A43,A450,A459,A465,A462,A463,
PARTFUN2:2;
                      end;
                    end;
                    hence p`2=ppi`2 & ppi`1<=p`1 & p`1<=pj`1 & p in rng c1;
                  end;
                  thus L~g c= L~f
                  proof
                    let x be object;
                    assume x in L~g;
                    then consider X be set such that
A468:               x in X and
A469:               X in lg by TARSKI:def 4;
                    consider i such that
A470:               X=LSeg(g,i) and
A471:               1<=i and
A472:               i+1 <= len g by A469;
                    now
                      per cases;
                      suppose
A473:                   i+1 <= len g1;
                        i<=i+1 by NAT_1:11;
                        then i<=len g1 by A473,XXREAL_0:2;
                        then
A474:                   i in dom g1 by A471,FINSEQ_3:25;
                        1<=i+1 by NAT_1:11;
                        then i+1 in dom g1 by A473,FINSEQ_3:25;
                        then X=LSeg(g1,i) by A470,A474,TOPREAL3:18;
                        then X in {LSeg(g1,j): 1<=j & j+1<=len g1} by A471,A473
;
                        then
A475:                   x in L~f1 by A36,A468,TARSKI:def 4;
                        L~f1 c= L~f by TOPREAL3:20;
                        hence thesis by A475;
                      end;
                      suppose
A476:                   i+1 > len g1;
                        reconsider q1=g/.i, q2=g/.(i+1) as Point of TOP-REAL 2;
A477:                   i<=len g by A472,NAT_1:13;
A478:                   len g1<=i by A476,NAT_1:13;
                        then
A479:                   q1 `2=ppi`2 by A447,A477;
A480:                   q1`1<=pj`1 by A447,A478,A477;
A481:                   ppi`1<=q1`1 by A447,A478,A477;
                        q2`2=ppi`2 by A447,A472,A476;
                        then
A482:                   q2=|[q2 `1,q1`2]| by A479,EUCLID:53;
A483:                   q2`1<=pj`1 by A447,A472,A476;
A484:                   q1=|[q1`1,q1`2]| & LSeg(g,i)=LSeg(q2,q1) by A471,A472,
EUCLID:53,TOPREAL1:def 3;
A485:                   ppi`1<= q2`1 by A447,A472,A476;
                        now
                          per cases by XXREAL_0:1;
                          suppose
                            q1`1>q2`1;
                            then LSeg(g,i)={p2: p2`2=q1`2 & q2`1<=p2`1 & p2`1
                            <=q1`1} by A482,A484,TOPREAL3:10;
                            then consider p2 such that
A486:                       p2 =x & p2`2=q1`2 and
A487:                       q2`1<=p2`1 & p2`1<=q1`1 by A468,A470;
                            ppi`1<=p2`1 & p2`1<=pj`1 by A480,A485,A487,
XXREAL_0:2;
                            then
A488:                       x in LSeg(f,k) by A444,A479,A486;
                            LSeg(f,k) in lf by A3,A13;
                            hence thesis by A488,TARSKI:def 4;
                          end;
                          suppose
                            q1`1=q2`1;
                            then LSeg(g,i)={q1} by A482,A484,RLTOPSP1:70;
                            then x=q1 by A468,A470,TARSKI:def 1;
                            then
A489:                       x in LSeg(f,k) by A444,A479,A481,A480;
                            LSeg(f,k) in lf by A3,A13;
                            hence thesis by A489,TARSKI:def 4;
                          end;
                          suppose
                            q1`1<q2`1;
                            then LSeg(g,i)= {p1: p1`2=q1`2 & q1`1<=p1`1 & p1
                            `1<=q2`1} by A482,A484,TOPREAL3:10;
                            then consider p2 such that
A490:                       p2 =x & p2`2=q1`2 and
A491:                       q1`1<=p2`1 & p2`1<=q2`1 by A468,A470;
                            ppi`1<=p2`1 & p2`1<=pj`1 by A481,A483,A491,
XXREAL_0:2;
                            then
A492:                       x in LSeg(f,k) by A444,A479,A490;
                            LSeg(f,k) in lf by A3,A13;
                            hence thesis by A492,TARSKI:def 4;
                          end;
                        end;
                        hence thesis;
                      end;
                    end;
                    hence thesis;
                  end;
                  let x be object;
                  assume x in L~f;
                  then
A493:             x in L~f1 \/ LSeg(f,k) by A3,A12,Th3;
                  now
                    per cases by A493,XBOOLE_0:def 3;
                    suppose
A494:                 x in L~f1;
                      L~g1 c= L~g by Th6;
                      hence thesis by A36,A494;
                    end;
                    suppose
                      x in LSeg(f,k);
                      then consider p1 such that
A495:                 p1=x and
A496:                 p1`2=ppi`2 and
A497:                 ppi`1<=p1`1 and
A498:                 p1`1<=pj`1 by A444;
                      defpred P2[Nat] means len g1<=$1 & $1<=len g & for q st
                      q=g/.$1 holds q`1<=p1`1;
A499:                 now
                        reconsider n=len g1 as Nat;
                        take n;
                        thus P2[n]
                        proof
                          thus len g1<=n & n<=len g by A446,XREAL_1:31;
                          1<=len g1 by A13,A23,A39,XXREAL_0:2;
                          then
A500:                     len g1 in dom g1 by FINSEQ_3:25;
                          let q;
                          assume q=g/.n;
                          then q=f1/.len f1 by A38,A500,FINSEQ_4:68
                            .=G*(i1,i2) by A17,A23,A14,A19,FINSEQ_4:71;
                          hence thesis by A497;
                        end;
                      end;
A501:                 for n be Nat holds P2[n] implies n<=len g;
                      consider ma be Nat such that
A502:                 P2 [ma] & for n be Nat st P2[n] holds n<=ma
                      from NAT_1:sch 6 (A501,A499);
                      reconsider ma as Element of NAT by ORDINAL1:def 12;
                      now
                        per cases;
                        suppose
A503:                     ma=len g;
                          i1+1<=j1 by A411,NAT_1:13;
                          then
A504:                     1<=l by XREAL_1:19;
                          then 0+1<=ma by A413,A446,A503,XREAL_1:7;
                          then reconsider m1=ma-1 as Element of NAT by INT_1:5;
A505:                     m1 + 1 = ma;
                          len g1+1<=ma by A413,A446,A503,A504,XREAL_1:7;
                          then
A506:                     m1 >= len g1 by A505,XREAL_1:6;
                          reconsider q=g/.m1 as Point of TOP-REAL 2;
                          set lq={e where e is Point of TOP-REAL 2: e`2=ppi`2
                          & q`1<=e`1 & e`1<=pj`1};
A507:                     i1+l=j1;
A508:                     l in dom g2 by A413,A504,FINSEQ_3:25;
                          then
A509:                     g/.ma=g2/.l by A413,A446,A503,FINSEQ_4:69
                            .= pj by A413,A508,A507;
                          then pj`1<=p1`1 by A502;
                          then
A510:                     p1`1=pj`1 by A498,XXREAL_0:1;
A511:                     m1 <= len g by A503,A505,NAT_1:11;
                          then
A512:                     q`2=ppi`2 by A447,A506;
A513:                     q`1<=pj`1 by A447,A506,A511;
                          1<=len g1 by A13,A23,A39,XXREAL_0:2;
                          then
A514:                     1<=m1 by A506,XXREAL_0:2;
                          then q=|[q`1,q`2]| & LSeg(g,m1)=LSeg(pj,q) by A503
,A509,A505,EUCLID:53,TOPREAL1:def 3;
                          then LSeg(g,m1)=lq by A443,A436,A512,A513,TOPREAL3:10
;
                          then
A515:                     p1 in LSeg(g,m1) by A496,A510,A513;
                          LSeg(g,m1) in lg by A503,A505,A514;
                          hence thesis by A495,A515,TARSKI:def 4;
                        end;
                        suppose
                          ma<>len g;
                          then ma<len g by A502,XXREAL_0:1;
                          then
A516:                     ma+1 <= len g by NAT_1:13;
                          reconsider qa=g/.ma, qa1=g/.(ma+1) as Point of
                          TOP-REAL 2;
                          set lma = {p2: p2`2=ppi`2 & qa`1<=p2`1 & p2`1<=qa1`1
                          };
A517:                     qa1=|[qa1 `1, qa1 `2]| by EUCLID:53;
A518:                     qa`1<=p1`1 by A502;
A519:                     len g1<=ma+1 by A502,NAT_1:13;
                          then
A520:                     qa1 `2 = ppi`2 by A447,A516;
A521:                     now
                            assume qa1`1<=p1`1;
                            then for q holds q=g/.(ma+1) implies q`1<=p1`1;
                            then ma+1<=ma by A502,A516,A519;
                            hence contradiction by XREAL_1:29;
                          end;
A522:                     qa`2=ppi`2 & qa =|[qa`1,qa`2]| by A447,A502,EUCLID:53
;
A523:                     1<=ma by A13,A23,A39,A502,NAT_1:13;
                          then LSeg(g,ma)=LSeg(qa,qa1) by A516,TOPREAL1:def 3
                            .= lma by A518,A521,A520,A522,A517,TOPREAL3:10
,XXREAL_0:2;
                          then
A524:                     x in LSeg(g,ma) by A495,A496,A518,A521;
                          LSeg(g,ma) in lg by A523,A516;
                          hence thesis by A524,TARSKI:def 4;
                        end;
                      end;
                      hence thesis;
                    end;
                  end;
                  hence thesis;
                end;
                1<=len g1 by A13,A23,A39,XXREAL_0:2;
                then 1 in dom g1 by FINSEQ_3:25;
                hence g/.1=f1/.1 by A37,FINSEQ_4:68
                  .=f/.1 by A17,A15,FINSEQ_4:71;
A525:           len g=len g1 + l by A413,FINSEQ_1:22;
                i1+1<=j1 by A411,NAT_1:13;
                then
A526:           1<=l by XREAL_1:19;
                then
A527:           l in dom g2 by A413,A419,FINSEQ_1:1;
                hence g/.len g=g2/.l by A525,FINSEQ_4:69
                  .=G*(i1+l,i2) by A413,A527
                  .=f/.len f by A3,A46,A294;
                thus len f<=len g by A3,A23,A39,A526,A525,XREAL_1:7;
              end;
            end;
            hence thesis;
          end;
        end;
        hence thesis;
      end;
    end;
    hence thesis;
  end;
A528: P[0]
  proof
    let f such that
A529: len f=0 and
A530: for n being Nat st n in dom f
    ex i,j being Nat st [i,j] in Indices G & f/.n=G*(i,j) and
    f is special and
    for n being Nat st n in dom f & n+1 in dom f holds f/.n <> f/.(n+1);
    take g=f;
    f={} by A529;
    then
    for n being Nat holds n in dom g & n+1 in dom g implies
    for m,k,i,j being Nat  st [m,k] in
Indices G & [i,j] in Indices G & g/.n=G*(m,k) & g/.(n+1)=G*(i,j) holds |.m-i.|
    +|.k-j.|=1;
    hence thesis by A530;
  end;
  for n being Nat holds P[n] from NAT_1:sch 2(A528,A1);
  hence thesis;
end;
