reserve a for set,
  i for Nat;
reserve MS for segmental non void 1-element ManySortedSign,
  A for non-empty MSAlgebra over MS;

theorem
  for A being non-empty MSAlgebra over MS st the carrier of MS = {0}
  holds the Sorts of A = the Sorts of MSAlg (1-Alg A)
proof
  let A be non-empty MSAlgebra over MS;
  assume
A1: the carrier of MS = {0};
A2: now
    let i be object;
    assume
A3: i in the carrier of MS;
A4: ex c being Component of the Sorts of A st (the Sorts of A).i = c
    proof
      reconsider c = (the Sorts of A).i as Component of the Sorts of A by A3,
PBOOLE:139;
      take c;
      thus thesis;
    end;
    ({0} --> (the_sort_of A)).i = the_sort_of A by A1,A3,FUNCOP_1:7;
    hence (the Sorts of A).i = ({0} --> (the_sort_of A)).i by A4,
MSUALG_1:def 12;
  end;
  1-Alg A = UAStr(#the_sort_of A, the_charact_of A#) by MSUALG_1:def 14;
  then
A5: MSAlg (1-Alg A) = MSAlgebra(#MSSorts (1-Alg A),MSCharact (1-Alg A)#) &
  MSSorts (1-Alg A) = 0.--> (the_sort_of A) by MSUALG_1:def 9,def 11;
  {0} --> (the_sort_of A) is ManySortedSet of the carrier of MS by A1;
  hence thesis by A5,A2,PBOOLE:3;
end;
