reserve X,Y,z,s for set, L,L1,L2,A,B for List of X, x for Element of X,
  O,O1,O2,O3 for Operation of X, a,b,y for Element of X, n,m for Nat;
reserve F,F1,F2 for filtering Operation of X;
reserve i for Element of NAT;

theorem
  for A being FinSequence of bool X holds
  ROUGH(A, n, len A) = ROUGH(A, n)
  proof
    let A be FinSequence of bool X;
    thus ROUGH(A, n, len A) c= ROUGH(A, n)
    proof
      let z be object; assume
A1:   z in ROUGH(A,n,len A); then
      z in {x: n <= #occurrences(x,A) & #occurrences(x,A) <= len A} by Def25;
      then ex x st z = x & n <= #occurrences(x,A) & #occurrences(x,A) <= len A;
      then z in {x: n <= #occurrences(x,A)};
      hence thesis by A1,Def24;
    end;
    let z be object; assume
A2: z in ROUGH(A, n); then
    z in {x: n <= #occurrences(x,A)} by Def24; then
    consider x such that
A3: z = x & n <= #occurrences(x,A);
    #occurrences(x,A) <= len A by Th54; then
    z in {x1 where x1 is Element of X: n <= #occurrences(x1,A) &
    #occurrences(x1,A) <= len A} by A3;
    hence thesis by A2,Def25;
  end;
