reserve A,O for non empty set,
  R for Order of A,
  Ol for Equivalence_Relation of O,
  f for Function of O,A*,
  g for Function of O,A;
reserve S for OverloadedRSSign;
reserve S0 for non empty non void ManySortedSign;
reserve S for non empty Poset;
reserve s1,s2 for Element of S;
reserve w1,w2 for Element of (the carrier of S)*;
reserve S for OrderSortedSign;
reserve o,o1,o2 for OperSymbol of S;
reserve w1 for Element of (the carrier of S)*;
reserve SM for monotone OrderSortedSign,
  o,o1,o2 for OperSymbol of SM,
  w1 for Element of (the carrier of SM)*;
reserve SR for regular monotone OrderSortedSign,
  o,o1,o3,o4 for OperSymbol of SR,
  w1 for Element of (the carrier of SR)*;
reserve R for non empty Poset;
reserve z for non empty set;
reserve s1,s2 for SortSymbol of S,
  o,o1,o2,o3 for OperSymbol of S,
  w1,w2 for Element of (the carrier of S)*;
reserve CH for ManySortedFunction of ConstOSSet(S,z)# * the Arity of S,
  ConstOSSet(S,z) * the ResultSort of S;
reserve A for OSAlgebra of S;
reserve M for MSAlgebra over S0;
reserve A for OSAlgebra of S;

theorem
  (S is discrete or S is op-discrete) implies A is monotone
proof
  assume
A1: S is discrete or S is op-discrete;
  let o1,o2;
  assume that
A2: o1 ~= o2 and
A3: (the_arity_of o1) <= (the_arity_of o2) & the_result_sort_of o1 <=
  the_result_sort_of o2;
  o1 = o2
  proof
    per cases by A1;
    suppose
      S is discrete;
      hence thesis by A2,A3,Th8;
    end;
    suppose
      S is op-discrete;
      hence thesis by A2,Th3;
    end;
  end;
  hence thesis;
end;
