reserve x for set,
  R for non empty Poset;
reserve S1 for OrderSortedSign,
  OU0 for OSAlgebra of S1;
reserve s,s1,s2,s3,s4 for SortSymbol of S1;

theorem Th15:
  for I being set for M being ManySortedSet of I for x being set
  holds x is ManySortedSubset of M iff x in product bool M
proof
  let I be set;
  let M be ManySortedSet of I;
  let x be set;
A1: I = dom bool M by PARTFUN1:def 2;
  hereby
    assume x is ManySortedSubset of M;
    then reconsider x1 = x as ManySortedSubset of M;
A2: for i being object st i in dom bool M holds x1.i in (bool M).i
    proof
      let i be object such that
A3:   i in dom bool M;
      x1 c= M by PBOOLE:def 18;
      then x1.i c= M.i by A1,A3;
      then x1.i in bool (M.i);
      hence thesis by A1,A3,MBOOLEAN:def 1;
    end;
    dom x1 = I by PARTFUN1:def 2
      .= dom bool M by PARTFUN1:def 2;
    hence x in product bool M by A2,CARD_3:def 5;
  end;
  assume x in product bool M;
  then consider x1 being Function such that
A4: x = x1 and
A5: dom x1 = dom bool M and
A6: for i being object st i in dom bool M holds x1.i in (bool M).i
   by CARD_3:def 5;
  dom x1 = I by A5,PARTFUN1:def 2;
  then reconsider x2 = x1 as ManySortedSet of I by PARTFUN1:def 2
,RELAT_1:def 18;
  x2 c= M
  proof
    let i be object such that
A7: i in I;
    x2.i in (bool M).i by A1,A6,A7;
    then x2.i in bool (M.i) by A7,MBOOLEAN:def 1;
    hence thesis;
  end;
  hence thesis by A4,PBOOLE:def 18;
end;
