src/HOL/AxClasses/Tutorial/Semigroups.thy
author wenzelm
Sun, 16 Jul 2000 20:54:38 +0200
changeset 9363 86b48eafc70d
parent 8920 af5e09b6c208
child 10007 64bf7da1994a
permissions -rw-r--r--
defs (overloaded);

(*  Title:      HOL/AxClasses/Tutorial/Semigroups.thy
    ID:         $Id$
    Author:     Markus Wenzel, TU Muenchen
*)

theory Semigroups = Main:;

consts
  times :: "'a => 'a => 'a"    (infixl "[*]" 70);
axclass
  semigroup < "term"
  assoc: "(x [*] y) [*] z = x [*] (y [*] z)";

consts
  plus :: "'a => 'a => 'a"    (infixl "[+]" 70);
axclass
  plus_semigroup < "term"
  assoc: "(x [+] y) [+] z = x [+] (y [+] z)";

end;