reserve S for OrderSortedSign;
reserve S for OrderSortedSign,
  X for ManySortedSet of S,
  o for OperSymbol of S ,
  b for Element of ([:the carrier' of S,{the carrier of S}:] \/ Union (coprod X
  ))*;
reserve x for set;

theorem Th31:
  for S be locally_directed OrderSortedSign, X be non-empty
  ManySortedSet of S holds OSFreeGen(X) is non-empty
proof
  let S be locally_directed OrderSortedSign, X be non-empty ManySortedSet of S;
  let x be object;
  assume x in the carrier of S;
  then reconsider s = x as Element of S;
  (OSFreeGen(X)).s = OSFreeGen(s,X) by Def26;
  hence thesis;
end;
