src/HOL/AxClasses/Tutorial/Monoid.thy
author wenzelm
Fri, 01 Sep 1995 14:27:36 +0200
changeset 1247 18b1441fb603
permissions -rw-r--r--
Various axiomatic type class demos;

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

Define class "monoid".
*)

Monoid = Sigs +

(* monoids *)

axclass
  monoid < term
  assoc         "(x <*> y) <*> z = x <*> (y <*> z)"
  left_unit     "1 <*> x = x"
  right_unit    "x <*> 1 = x"

end