author | wenzelm |
Fri, 06 Oct 2000 17:35:58 +0200 | |
changeset 10168 | 50be659d4222 |
parent 10134 | 537206cc738f |
child 10681 | ec76e17f73c5 |
permissions | -rw-r--r-- |
10134 | 1 |
(* Title: HOL/AxClasses/Semigroups.thy |
2 |
ID: $Id$ |
|
3 |
Author: Markus Wenzel, TU Muenchen |
|
4 |
*) |
|
5 |
||
6 |
theory Semigroups = Main: |
|
7 |
||
8 |
consts |
|
9 |
times :: "'a => 'a => 'a" (infixl "[*]" 70) |
|
10 |
||
11 |
axclass semigroup < "term" |
|
12 |
assoc: "(x [*] y) [*] z = x [*] (y [*] z)" |
|
13 |
||
14 |
||
15 |
consts |
|
16 |
plus :: "'a => 'a => 'a" (infixl "[+]" 70) |
|
17 |
||
18 |
axclass plus_semigroup < "term" |
|
19 |
assoc: "(x [+] y) [+] z = x [+] (y [+] z)" |
|
20 |
||
21 |
end |