reserve i for Nat,
  j for Element of NAT,
  X,Y,x,y,z for set;
reserve C for initialized ConstructorSignature,
  s for SortSymbol of C,
  o for OperSymbol of C,
  c for constructor OperSymbol of C;
reserve a,b for expression of C, an_Adj C;
reserve t, t1,t2 for expression of C, a_Type C;
reserve p for FinSequence of QuasiTerms C;
reserve e for expression of C;
reserve a,a9 for expression of C, an_Adj C;
reserve q for pure expression of C, a_Type C,
  A for finite Subset of QuasiAdjs C;
reserve T for quasi-type of C;

theorem Th112:
  for X being non empty Subset of VarPoset holds
  ex_sup_of X, VarPoset & sup X = meet X
proof
  let X be non empty Subset of VarPoset;
  set a = the Element of X;
A1: meet X c= a by SETFAM_1:3;
A2: a is finite Subset of Vars by Th110;
  then
A3: meet X c= Vars by A1,XBOOLE_1:1;
  for a being Element of X holds varcl a = a by Th110;
  then varcl meet X = meet X by Th12;
  then reconsider m = meet X as Element of VarPoset by A1,A2,A3,Th110;
A4: now
    thus X is_<=_than m
    by SETFAM_1:3,Th109;
    let b be Element of VarPoset;
    assume
A5: X is_<=_than b;
    for Y st Y in X holds b c= Y by Th109,A5;
    then b c= m by SETFAM_1:5;
    hence m <= b by Th109;
  end;
  hence ex_sup_of X, VarPoset by YELLOW_0:15;
  hence thesis by A4,YELLOW_0:def 9;
end;
