1 (**************************************************************************)
4 (* ||A|| A project by Andrea Asperti *)
6 (* ||I|| Developers: *)
7 (* ||T|| The HELM team. *)
8 (* ||A|| http://helm.cs.unibo.it *)
10 (* \ / This file is distributed under the terms of the *)
11 (* v GNU General Public License Version 2 *)
13 (**************************************************************************)
15 (* This file was automatically generated: do not edit *********************)
17 set "baseuri" "cic:/matita/CoRN-Decl/model/monoids/Zmonoid".
21 (* $Id: Zmonoid.v,v 1.6 2004/04/08 08:20:33 lcf Exp $ *)
23 include "model/semigroups/Zsemigroup.ma".
25 include "algebra/CMonoids.ma".
27 (*#* **Examples of monoids: $\langle$#⟨#[Z],[[+]]$\rangle$#⟩# and $\langle$#⟨#[Z],[[*]]$\rangle$#⟩#
28 ***$\langle$#⟨#[Z],[[+]]$\rangle$#⟩#
29 We use the addition [ZERO] (defined in the standard library) as the
33 inline "cic:/CoRN/model/monoids/Zmonoid/ZERO_as_rht_unit.con".
35 inline "cic:/CoRN/model/monoids/Zmonoid/ZERO_as_lft_unit.con".
37 inline "cic:/CoRN/model/monoids/Zmonoid/Z_is_CMonoid.con".
39 inline "cic:/CoRN/model/monoids/Zmonoid/Z_as_CMonoid.con".
41 (*#* The term [Z_as_CMonoid] is of type [CMonoid]. Hence we have proven that [Z] is a constructive monoid.
43 ***$\langle$#⟨#[Z],[[*]]$\rangle$#⟩#
44 As the multiplicative unit we should use [`1`], which is [(POS xH)] in
45 the representation we have for integers.
48 inline "cic:/CoRN/model/monoids/Zmonoid/ONE_as_rht_unit.con".
50 inline "cic:/CoRN/model/monoids/Zmonoid/ONE_as_lft_unit.con".
52 inline "cic:/CoRN/model/monoids/Zmonoid/Z_mul_is_CMonoid.con".
54 inline "cic:/CoRN/model/monoids/Zmonoid/Z_mul_as_CMonoid.con".
56 (*#* The term [Z_mul_as_CMonoid] is another term of type [CMonoid]. *)