reserve i, x, I for set,
  A, M for ManySortedSet of I,
  f for Function,
  F for ManySortedFunction of I;
reserve P, R for MSSetOp of M,
  E, T for Element of bool M;
reserve S for 1-sorted;
reserve MS for many-sorted over S;

theorem Th28:
  for F being ManySortedFunction of M, M holds A in M & F..A = A
  iff A in MSFixPoints F
proof
  let F be ManySortedFunction of M, M;
  thus A in M & F..A = A implies A in MSFixPoints F
  proof
    assume that
A1: A in M and
A2: F..A = A;
    let i be object;
    assume
A3: i in I;
    then reconsider f = F.i as Function of M.i, M.i by PBOOLE:def 15;
    i in dom (F..A) by A3,PARTFUN1:def 2; then
A4: f.(A.i) = A.i by A2,PRALG_1:def 19;
    M = doms F by MSSUBFAM:17;
    then M.i = dom f by A3,MSSUBFAM:14;
    then A.i in dom f by A1,A3;
    hence thesis by A3,A4,Def12;
  end;
  assume
A5: A in MSFixPoints F;
  thus A in M
  proof
    let i be object;
A6: M = doms F by MSSUBFAM:17;
    assume
A7: i in I;
    then A.i in (MSFixPoints F).i by A5;
    then ex f being Function st f = F.i & A.i in dom f & f.(A.i) = A.i by A7
,Def12;
    hence thesis by A7,A6,MSSUBFAM:14;
  end;
  now
    let i be object;
    assume
A8: i in I;
    then A.i in (MSFixPoints F).i by A5; then
A9: ex f being Function st f = F.i & A.i in dom f & f.(A.i) = A.i by A8,Def12;
    i in dom A & i in dom F by A8,PARTFUN1:def 2; then
    i in dom F /\ dom A by XBOOLE_0:def 4; then
    i in dom (F..A) by PRALG_1:def 19; 
    hence (F..A).i = A.i by A9,PRALG_1:def 19;
  end;
  hence thesis;
end;
