(**************************************************************************) (* ___ *) (* ||M|| *) (* ||A|| A project by Andrea Asperti *) (* ||T|| *) (* ||I|| Developers: *) (* ||T|| The HELM team. *) (* ||A|| http://helm.cs.unibo.it *) (* \ / *) (* \ / This file is distributed under the terms of the *) (* v GNU General Public License Version 2 *) (* *) (**************************************************************************) (* This file was automatically generated: do not edit *********************) include "CoRN.ma". (* $Id: CSemiGroups.v,v 1.8 2004/04/22 14:49:43 lcf Exp $ *) (*#* printing [+] %\ensuremath+% #+# *) (*#* printing {+} %\ensuremath+% #+# *) include "algebra/CSetoidInc.ma". (* Begin_SpecReals *) (*#* *Semigroups **Definition of the notion of semigroup *) inline procedural "cic:/CoRN/algebra/CSemiGroups/is_CSemiGroup.con" as definition. inline procedural "cic:/CoRN/algebra/CSemiGroups/CSemiGroup.ind". (* COERCION cic:/matita/CoRN-Procedural/algebra/CSemiGroups/csg_crr.con *) (*#* %\begin{nameconvention}% In the %{\em %names%}% of lemmas, we will denote [[+]] with [plus]. %\end{nameconvention}% *) (* UNEXPORTED Implicit Arguments csg_op [c]. *) (* NOTATION Infix "[+]" := csg_op (at level 50, left associativity). *) (* End_SpecReals *) (*#* **Semigroup axioms The axiomatic properties of a semi group. %\begin{convention}% Let [G] be a semi-group. %\end{convention}% *) (* UNEXPORTED Section CSemiGroup_axioms *) (* UNEXPORTED cic:/CoRN/algebra/CSemiGroups/CSemiGroup_axioms/G.var *) inline procedural "cic:/CoRN/algebra/CSemiGroups/CSemiGroup_is_CSemiGroup.con" as lemma. inline procedural "cic:/CoRN/algebra/CSemiGroups/plus_assoc.con" as lemma. (* UNEXPORTED End CSemiGroup_axioms *) (* Begin_SpecReals *) (*#* **Semigroup basics %\begin{convention}% Let [G] be a semi-group. %\end{convention}% *) (* UNEXPORTED Section CSemiGroup_basics *) (* UNEXPORTED cic:/CoRN/algebra/CSemiGroups/CSemiGroup_basics/G.var *) (* End_SpecReals *) inline procedural "cic:/CoRN/algebra/CSemiGroups/plus_assoc_unfolded.con" as lemma. (* UNEXPORTED End CSemiGroup_basics *) (* End_SpecReals *) (* UNEXPORTED Hint Resolve plus_assoc_unfolded: algebra. *) (*#* **Functional operations We can also define a similar addition operator, which will be denoted by [{+}], on partial functions. %\begin{convention}% Whenever possible, we will denote the functional construction corresponding to an algebraic operation by the same symbol enclosed in curly braces. %\end{convention}% 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. %\begin{convention}% Let [G:CSemiGroup] and [F,F':(PartFunct G)] and denote by [P] and [Q], respectively, the predicates characterizing their domains. %\end{convention}% *) (* UNEXPORTED Section Part_Function_Plus *) (* UNEXPORTED cic:/CoRN/algebra/CSemiGroups/Part_Function_Plus/G.var *) (* UNEXPORTED cic:/CoRN/algebra/CSemiGroups/Part_Function_Plus/F.var *) (* UNEXPORTED cic:/CoRN/algebra/CSemiGroups/Part_Function_Plus/F'.var *) (* begin hide *) inline procedural "cic:/CoRN/algebra/CSemiGroups/Part_Function_Plus/P.con" "Part_Function_Plus__" as definition. inline procedural "cic:/CoRN/algebra/CSemiGroups/Part_Function_Plus/Q.con" "Part_Function_Plus__" as definition. (* end hide *) inline procedural "cic:/CoRN/algebra/CSemiGroups/part_function_plus_strext.con" as lemma. inline procedural "cic:/CoRN/algebra/CSemiGroups/Fplus.con" as definition. (*#* %\begin{convention}% Let [R:G->CProp]. %\end{convention}% *) (* UNEXPORTED cic:/CoRN/algebra/CSemiGroups/Part_Function_Plus/R.var *) inline procedural "cic:/CoRN/algebra/CSemiGroups/included_FPlus.con" as lemma. inline procedural "cic:/CoRN/algebra/CSemiGroups/included_FPlus'.con" as lemma. inline procedural "cic:/CoRN/algebra/CSemiGroups/included_FPlus''.con" as lemma. (* UNEXPORTED End Part_Function_Plus *) (* UNEXPORTED Implicit Arguments Fplus [G]. *) (* NOTATION Infix "{+}" := Fplus (at level 50, left associativity). *) (* UNEXPORTED Hint Resolve included_FPlus : included. *) (* UNEXPORTED Hint Immediate included_FPlus' included_FPlus'' : included. *) (*#* **Subsemigroups %\begin{convention}% Let [csg] a semi-group and [P] a non-empty predicate on the semi-group which is preserved by [[+]]. %\end{convention}% *) (* UNEXPORTED Section SubCSemiGroups *) (* UNEXPORTED cic:/CoRN/algebra/CSemiGroups/SubCSemiGroups/csg.var *) (* UNEXPORTED cic:/CoRN/algebra/CSemiGroups/SubCSemiGroups/P.var *) (* UNEXPORTED cic:/CoRN/algebra/CSemiGroups/SubCSemiGroups/op_pres_P.var *) inline procedural "cic:/CoRN/algebra/CSemiGroups/SubCSemiGroups/subcrr.con" "SubCSemiGroups__" as definition. inline procedural "cic:/CoRN/algebra/CSemiGroups/Build_SubCSemiGroup.con" as definition. (* UNEXPORTED End SubCSemiGroups *)