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 Th63:
  for A being FinSequence of bool X holds
  ROUGH(A, 1) = Union A
  proof
    let A be FinSequence of bool X;
    thus ROUGH(A, 1) c= Union A
    proof
      let z be object; assume
      z in ROUGH(A,1); then
      z in {x: 1 <= #occurrences(x,A)} by Def24; then
      consider x such that
A1:   z = x & 1 <= #occurrences(x,A);
      1 = 0+1; then
      #occurrences(x,A) > 0 by A1,NAT_1:13; then
      {i: i in dom A & x in A.i} <> {}; then
      consider s being object such that
A2:   s in {i: i in dom A & x in A.i} by XBOOLE_0:def 1;
      consider i such that
A3:   s = i & i in dom A & x in A.i by A2;
      thus thesis by A1,A3,CARD_5:2;
    end;
    let z be object; assume
A4: z in Union A; then
    consider s being object such that
A5: s in dom A & z in A.s by CARD_5:2;
    s in {i: i in dom A & z in A.i} by A5; then
    card {s} c= #occurrences(z,A) by CARD_1:11,ZFMISC_1:31; then
    Segm 1 c= Segm #occurrences(z,A) by CARD_1:30; then
    1 <= #occurrences(z,A) by NAT_1:39; then
    z in {x: 1 <= #occurrences(x,A)} by A4;
    hence thesis by A4,Def24;
  end;
