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/algebra/CSemiGroups".
19 (* $Id: CSemiGroups.v,v 1.8 2004/04/22 14:49:43 lcf Exp $ *)
21 (*#* printing [+] %\ensuremath+% #+# *)
23 (*#* printing {+} %\ensuremath+% #+# *)
33 **Definition of the notion of semigroup
36 inline cic:/CoRN/algebra/CSemiGroups/is_CSemiGroup.con.
38 inline cic:/CoRN/algebra/CSemiGroups/CSemiGroup.ind.
41 %\begin{nameconvention}%
42 In the %{\em %names%}% of lemmas, we will denote [[+]] with [plus].
43 %\end{nameconvention}%
47 Implicit Arguments csg_op [c].
52 (*#* **Semigroup axioms
53 The axiomatic properties of a semi group.
55 %\begin{convention}% Let [G] be a semi-group.
60 Section CSemiGroup_axioms.
63 inline cic:/CoRN/algebra/CSemiGroups/G.var.
65 inline cic:/CoRN/algebra/CSemiGroups/CSemiGroup_is_CSemiGroup.con.
67 inline cic:/CoRN/algebra/CSemiGroups/plus_assoc.con.
70 End CSemiGroup_axioms.
75 (*#* **Semigroup basics
78 Let [G] be a semi-group.
83 Section CSemiGroup_basics.
86 inline cic:/CoRN/algebra/CSemiGroups/G.var.
90 inline cic:/CoRN/algebra/CSemiGroups/plus_assoc_unfolded.con.
93 End CSemiGroup_basics.
99 Hint Resolve plus_assoc_unfolded: algebra.
102 (*#* **Functional operations
103 We can also define a similar addition operator, which will be denoted by [{+}], on partial functions.
105 %\begin{convention}% Whenever possible, we will denote the functional construction corresponding to an algebraic operation by the same symbol enclosed in curly braces.
108 At this stage, we will always consider automorphisms; we %{\em %could%}% treat this in a more general setting, but we feel that it wouldn't really be a useful effort.
110 %\begin{convention}% Let [G:CSemiGroup] and [F,F':(PartFunct G)] and denote by [P] and [Q], respectively, the predicates characterizing their domains.
115 Section Part_Function_Plus.
118 inline cic:/CoRN/algebra/CSemiGroups/G.var.
120 inline cic:/CoRN/algebra/CSemiGroups/F.var.
122 inline cic:/CoRN/algebra/CSemiGroups/F'.var.
126 inline cic:/CoRN/algebra/CSemiGroups/P.con.
128 inline cic:/CoRN/algebra/CSemiGroups/Q.con.
132 inline cic:/CoRN/algebra/CSemiGroups/part_function_plus_strext.con.
134 inline cic:/CoRN/algebra/CSemiGroups/Fplus.con.
137 %\begin{convention}% Let [R:G->CProp].
141 inline cic:/CoRN/algebra/CSemiGroups/R.var.
143 inline cic:/CoRN/algebra/CSemiGroups/included_FPlus.con.
145 inline cic:/CoRN/algebra/CSemiGroups/included_FPlus'.con.
147 inline cic:/CoRN/algebra/CSemiGroups/included_FPlus''.con.
150 End Part_Function_Plus.
154 Implicit Arguments Fplus [G].
158 Hint Resolve included_FPlus : included.
162 Hint Immediate included_FPlus' included_FPlus'' : included.
167 Let [csg] a semi-group and [P] a non-empty
168 predicate on the semi-group which is preserved by [[+]].
173 Section SubCSemiGroups.
176 inline cic:/CoRN/algebra/CSemiGroups/csg.var.
178 inline cic:/CoRN/algebra/CSemiGroups/P.var.
180 inline cic:/CoRN/algebra/CSemiGroups/op_pres_P.var.
182 inline cic:/CoRN/algebra/CSemiGroups/subcrr.con.
184 inline cic:/CoRN/algebra/CSemiGroups/Build_SubCSemiGroup.con.