reserve i, x, I for set,
  A, B, M for ManySortedSet of I,
  f, f1 for Function;
reserve SF, SG for SubsetFamily of M;
reserve E, T for Element of Bool M;
reserve g, h for SetOp of M;
reserve S for 1-sorted;
reserve MS for many-sorted over S;

theorem
  for D being ClosureSystem of S holds ClOp->ClSys (ClSys->ClOp D) = the
  ClosureStr of D
proof
  let D be ClosureSystem of S;
  set M = the Sorts of D, F = the Family of D, d = the Family of ClOp->ClSys (
  ClSys->ClOp D), f = ClSys->ClOp D;
A1: d = { x where x is Element of Bool M : f.x = x } by Def21;
  F = d
  proof
    thus F c= d
    proof
      let q be object;
      assume
A2:   q in F;
      then reconsider q1 = q as Element of Bool M;
      consider SF being SubsetFamily of M such that
A3:   Cl q1 = meet |:SF:| and
A4:   SF = { X where X is Element of Bool M : q1 c= X & X in F } by Def22;
      q1 c=' M & M in F by Def8,PBOOLE:def 18;
      then M in SF by A4;
      then reconsider SF9 = SF as non empty SubsetFamily of M;
      now
        let i be object;
        assume
A5:     i in the carrier of S;
        then consider Q be Subset-Family of (M.i) such that
A6:     Q = |:SF9:|.i and
A7:     (meet |:SF9:|).i = Intersect Q by MSSUBFAM:def 1;
A8:     Q = { x.i where x is Element of Bool M : x in SF9 } by A5,A6,Th14;
        q1 in SF9 by A2,A4;
        then
A9:     q1.i in Q by A8;
        then
A10:    Intersect Q c= q1.i by MSSUBFAM:2;
        now
          let z be set;
          assume z in Q;
          then consider x being Element of Bool M such that
A11:      z = x.i and
A12:      x in SF9 by A8;
          ex xx being Element of Bool M st xx = x & q1 c=' xx & xx in F by A4
,A12;
          hence q1.i c= z by A5,A11;
        end;
        then q1.i c= Intersect Q by A9,MSSUBFAM:5;
        then Intersect Q = q1.i by A10;
        hence f.q1.i = q1.i by A3,A7,Def23;
      end;
      then f.q1 = q1;
      hence thesis by A1;
    end;
    let q be object;
    assume q in d;
    then consider x being Element of Bool M such that
A13: q = x & f.x = x by A1;
    defpred S[Element of Bool M] means $1 in F & x c=' $1;
    defpred R[Element of Bool M] means x c=' $1 & $1 in F;
    defpred P[Element of Bool M] means x c=' $1;
A14: { F(w) where w is Element of Bool M : F(w) in F & P[w] } c= F from
    FRAENKEL:sch 17;
A15: for a being Element of Bool M holds R[a] iff S[a];
A16: { F(a) where a is Element of Bool M : R[a] } = { F(b) where b is
    Element of Bool M : S[b] } from FRAENKEL:sch 3(A15);
    consider SF being SubsetFamily of M such that
A17: Cl x = meet |:SF:| and
A18: SF = { X where X is Element of Bool M : x c=' X & X in F } by Def22;
    meet |:SF:| = q by A13,A17,Def23;
    hence thesis by A18,A14,A16,Def7;
  end;
  hence thesis by Def21;
end;
