reserve x,y,z for set;
reserve f,f1,f2,f3 for FinSequence,
  p,p1,p2,p3 for set,
  i,k for Nat;
reserve D for non empty set,
  p,p1,p2,p3 for Element of D,
  f,f1,f2 for FinSequence of D;
reserve D for non empty set;
reserve p, q for FinSequence,
  X, Y, x, y for set,
  D for non empty set,
  i, j, k, l, m, n, r for Nat;
reserve a, a1, a2 for TwoValued Alternating FinSequence;
reserve fs, fs1, fs2 for FinSequence of X,
  fss, fss2 for Subset of fs;
reserve F, F1 for FinSequence of INT,
  k, m, n, ma for Nat;
reserve i,j,k,m,n for Nat,
  D for non empty set,
  p for Element of D,
  f for FinSequence of D;

theorem Th1:
  for D being non empty set, f being FinSequence of D st
    f just_once_values f/.len f holds f/.len f..f = len f
proof
  let D be non empty set, f be FinSequence of D;
  assume
A1: f just_once_values f/.len f;
  then reconsider f9 = f as non empty FinSequence of D by FINSEQ_4:5,RELAT_1:38
;
  f/.len f..f + 1 = f/.len f..f + ((Rev f9)/.1)..Rev f9 by Th43
    .= f/.len f..f + f/.len f..Rev f by FINSEQ_5:65
    .= len f + 1 by A1,Th37;
  hence thesis;
end;
