| author | wenzelm |
| Fri, 25 Apr 1997 14:12:33 +0200 | |
| changeset 3051 | 30490aa41356 |
| parent 1247 | 18b1441fb603 |
| permissions | -rw-r--r-- |
| 1247 | 1 |
(* Title: HOL/AxClass/Tutorial/MonoidGroupInsts.thy |
2 |
ID: $Id$ |
|
3 |
Author: Markus Wenzel, TU Muenchen |
|
4 |
||
5 |
Add derived class inclusions monoid < semigroup and group < monoid to |
|
6 |
type signature -- some kind of 'abstract instantiations'. |
|
7 |
*) |
|
8 |
||
9 |
MonoidGroupInsts = Monoid + Group + |
|
10 |
||
11 |
(* monoids are semigroups *) |
|
12 |
||
13 |
instance |
|
14 |
monoid < semigroup (Monoid.assoc) |
|
15 |
||
16 |
||
17 |
(* groups are monoids *) |
|
18 |
||
19 |
instance |
|
20 |
group < monoid (assoc, left_unit, right_unit) |
|
21 |
||
22 |
end |