reserve a for set,
  i for Nat;

theorem Th11:
  for U1,U2 being Universal_Algebra st U1 is SubAlgebra of U2 for
B being MSSubset of MSAlg U2 st B = the Sorts of MSAlg U1 holds the Charact of
  MSAlg U1 = Opers(MSAlg U2,B)
proof
  let U1,U2 be Universal_Algebra such that
A1: U1 is SubAlgebra of U2;
  let B be MSSubset of MSAlg U2;
  set f1 = the Charact of MSAlg U1, f2 = Opers(MSAlg U2,B);
  the carrier' of MSSign U1 = the carrier' of MSSign U2
  proof
    set ff1 = (*-->0)*(signature U1), ff2 = dom signature(U1)-->z, gg1 = (*-->
    0)*(signature U2), gg2 = dom signature(U2)-->z;
    reconsider ff1 as Function of dom signature(U1), {0}* by MSUALG_1:2;
    reconsider gg1 as Function of dom signature(U2), {0}* by MSUALG_1:2;
A2: MSSign U2 = ManySortedSign (#{0},dom signature(U2),gg1,gg2#) by MSUALG_1:10
;
    U1,U2 are_similar & MSSign U1 = ManySortedSign (#{0},dom signature(U1)
      ,ff1, ff2#) by A1,MSUALG_1:10,UNIALG_2:13;
    hence thesis by A2;
  end;
  then reconsider f1 as ManySortedSet of the carrier' of MSSign U2;
  assume
A3: B = the Sorts of MSAlg U1;
  for x being object st x in the carrier' of MSSign U2 holds f1.x = f2. x
  proof
    let x be object;
    assume
A4: x in (the carrier' of MSSign U2);
    then reconsider y = x as OperSymbol of MSSign U2;
    reconsider x as OperSymbol of MSSign U1 by A1,A4,Th7;
    B is opers_closed by A1,A3,Th10;
    then f2.y = y/.B & B is_closed_on y by MSUALG_2:def 8;
    then
A5: f2.y = Den(y,MSAlg U2) | ((B# * the Arity of MSSign U2).y) by
MSUALG_2:def 7;
    (B# * the Arity of MSSign U1).x = ((the Sorts of MSAlg U1)# * the
    Arity of MSSign U1).x by A1,A3,Th7;
    then f2.y = Den(y,MSAlg U2)| (((the Sorts of MSAlg U1)# * the Arity of
    MSSign U1).x) by A1,A5,Th7;
    then f1.x = Den(x,MSAlg U1) & f2.y = (Den(y,MSAlg U2))|(Args(x,MSAlg U1))
    by MSUALG_1:def 4,def 6;
    hence thesis by A1,A3,Th8;
  end;
  hence thesis by PBOOLE:3;
end;
