reserve i,i1,i2,i9,i19,j,j1,j2,j9,j19,k,l,m,n for Nat;
reserve r,s,r9,s9 for Real;
reserve D for set,
  f for FinSequence of D,
  G for Matrix of D;
reserve G for Go-board,
  p for Point of TOP-REAL 2;

theorem
  for f being non empty FinSequence of TOP-REAL 2 st f is_sequence_on G &
  (ex i,j being Nat st [i,j] in Indices G & p = G*(i,j)) &
  (for i1,j1,i2,j2 st [i1,j1] in Indices G & [i2,j2] in Indices G &
  f/.len f = G*(i1,j1) & p = G*(i2,j2) holds |.i2-i1.|+|.j2-j1.| = 1)
  holds f^<*p*> is_sequence_on G
proof
  let f be non empty FinSequence of TOP-REAL 2 such that
A1: f is_sequence_on G and
A2: ex i,j st [i,j] in Indices G & p = G*(i,j) and
A3: for i1,j1,i2,j2 st [i1,j1] in Indices G & [i2,j2] in Indices G &
  f/.len f = G*(i1,j1) & p = G*(i2,j2) holds |.i2-i1.|+|.j2-j1.| = 1;
A4: for n st n in dom f & n+1 in dom f holds
  for m,k,i,j st [m,k] in Indices G & [i,j] in Indices G & f/.n=G*(m,k) &
  f/.(n+1)=G*(i,j) holds |.m-i.|+|.k-j.|=1 by A1;
A5: now
    let n;
    assume that
A6: n in dom <*p*> and
A7: n+1 in dom <*p*>;
A8: 1 <= n by A6,FINSEQ_3:25;
A9: n+1 <= len <*p*> by A7,FINSEQ_3:25;
A10: 1+1 <= n+1 by A8,XREAL_1:6;
    n+1 <= 1 by A9,FINSEQ_1:39;
    hence for m,k,i,j st [m,k] in Indices G & [i,j] in Indices G &
    <*p*>/.n=G*(m,k) & <*p*>/.(n+1)=G*(i,j)
    holds |.m-i.|+|.k-j.|=1 by A10,XXREAL_0:2;
  end;
  now
    let m,k,i,j such that
A11: [m,k] in Indices G and
A12: [i,j] in Indices G and
A13: f/.len f=G*(m,k) and
A14: <*p*>/.1=G*(i,j) and len f in dom f
    and 1 in dom <*p*>;
    <*p*>/.1 = p by FINSEQ_4:16;
    then |.i-m.|+|.j-k.|=1 by A3,A11,A12,A13,A14;
    hence 1 = |.m-i.|+|.j-k.| by UNIFORM1:11
      .= |.m-i.|+|.k-j.| by UNIFORM1:11;
  end;
  then
A15: for n st n in dom(f^<*p*>) & n+1 in dom(f^<*p*>) holds
  for m,k,i,j st [m,k] in Indices G & [i,j] in Indices G &
  (f^<*p*>)/.n =G*(m,k) & (f^<*p*>)/.(n+1)=G*(i,j)
  holds |.m-i.|+|.k-j.|=1 by A4,A5,GOBOARD1:24;
  now
    let n such that
A16: n in dom(f^<*p*>);
    per cases by A16,FINSEQ_1:25;
    suppose
A17:  n in dom f;
      then consider i,j such that
A18:  [i,j] in Indices G and
A19:  f/.n = G*(i,j) by A1;
      take i,j;
      thus [i,j] in Indices G by A18;
      thus (f^<*p*>)/.n = G*(i,j) by A17,A19,FINSEQ_4:68;
    end;
    suppose ex l be Nat st l in dom <*p*> & n = (len f) + l;
      then consider l be Nat such that
A20:  l in dom <*p*> and
A21:  n = (len f) + l;
      consider i,j such that
A22:  [i,j] in Indices G and
A23:  p = G*(i,j) by A2;
      take i,j;
      thus [i,j] in Indices G by A22;
A24:  l <= len <*p*> by A20,FINSEQ_3:25;
A25:  1 <= l by A20,FINSEQ_3:25;
      l <= 1 by A24,FINSEQ_1:39;
      then l = 1 by A25,XXREAL_0:1;
      then <*p*>/.l = p by FINSEQ_4:16;
      hence (f^<*p*>)/.n = G*(i,j) by A20,A21,A23,FINSEQ_4:69;
    end;
  end;
  hence thesis by A15;
end;
