changeset 1247 | 18b1441fb603 |
child 7651 | e853cd3f3ede |
1246:706cfddca75c | 1247:18b1441fb603 |
---|---|
1 (* Title: MonoidGroupInsts.thy |
|
2 ID: $Id$ |
|
3 Author: Markus Wenzel, TU Muenchen |
|
4 |
|
5 Some class inclusions or 'abstract instantiations'. |
|
6 *) |
|
7 |
|
8 MonoidGroupInsts = Group + Monoid + |
|
9 |
|
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 |