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;
reserve X for ConstructorDB, A for FinSequence of the Constrs of X,
  x for Element of X;
reserve Y for ref-finite ConstructorDB,
  B for FinSequence of the Constrs of Y,
  y for Element of Y;

theorem Th78:
  A <> {} implies ATLEAST A = meet {x occur: x in rng A}
  proof assume
    A <> {}; then
    rng A <> {} by RELAT_1:41; then
    consider s being object such that
A1: s in rng A by XBOOLE_0:def 1;
    s in the Constrs of X & the Constrs of X c= the carrier of X
    by A1; then
    reconsider s as Element of X;
A2: s occur in {x occur: x in rng A} by A1;
    thus ATLEAST A c= meet {x occur: x in rng A}
    proof
      let z be object; assume z in ATLEAST A; then
      z in {y where y is Element of X: (rng A) c= y ref} by Def31; then
      consider a being Element of X such that
A3:   z = a & (rng A) c= a ref;
      now let Y be set;
        assume Y in {x occur: x in rng A}; then
        consider x such that
A4:     Y = x occur & x in rng A;
        thus z in Y by A3,A4,Th66;
      end;
      hence thesis by A2,SETFAM_1:def 1;
    end;
    let z be object; assume
A5: z in meet {x occur: x in rng A};
    then
A6: z in s occur by A2,SETFAM_1:def 1;
    then reconsider z as Element of X;
    rng A c= z ref
    proof
      let s be object; assume
A7:   s in rng A; then
      s in the Constrs of X; then
      reconsider s as Element of X;
      s occur in {x occur: x in rng A} by A7; then
      z in s occur by A5,SETFAM_1:def 1;
      hence thesis by Th66;
    end; then
    z in {x: rng A c= x ref};
    hence thesis by A6,Def31;
  end;
