]> matita.cs.unibo.it Git - helm.git/blob - helm/software/matita/contribs/procedural/CoRN/algebra/CSemiGroups.mma
Preparing for 0.5.9 release.
[helm.git] / helm / software / matita / contribs / procedural / CoRN / algebra / CSemiGroups.mma
1 (**************************************************************************)
2 (*       ___                                                              *)
3 (*      ||M||                                                             *)
4 (*      ||A||       A project by Andrea Asperti                           *)
5 (*      ||T||                                                             *)
6 (*      ||I||       Developers:                                           *)
7 (*      ||T||         The HELM team.                                      *)
8 (*      ||A||         http://helm.cs.unibo.it                             *)
9 (*      \   /                                                             *)
10 (*       \ /        This file is distributed under the terms of the       *)
11 (*        v         GNU General Public License Version 2                  *)
12 (*                                                                        *)
13 (**************************************************************************)
14
15 (* This file was automatically generated: do not edit *********************)
16
17 include "CoRN.ma".
18
19 (* $Id: CSemiGroups.v,v 1.8 2004/04/22 14:49:43 lcf Exp $ *)
20
21 (*#* printing [+] %\ensuremath+% #+# *)
22
23 (*#* printing {+} %\ensuremath+% #+# *)
24
25 include "algebra/CSetoidInc.ma".
26
27 (* Begin_SpecReals *)
28
29 (*#* *Semigroups
30
31 **Definition of the notion of semigroup
32 *)
33
34 inline procedural "cic:/CoRN/algebra/CSemiGroups/is_CSemiGroup.con" as definition.
35
36 inline procedural "cic:/CoRN/algebra/CSemiGroups/CSemiGroup.ind".
37
38 (* COERCION
39 cic:/matita/CoRN-Procedural/algebra/CSemiGroups/csg_crr.con
40 *)
41
42 (*#*
43 %\begin{nameconvention}%
44 In the %{\em %names%}% of lemmas, we will denote [[+]] with [plus].
45 %\end{nameconvention}%
46 *)
47
48 (* UNEXPORTED
49 Implicit Arguments csg_op [c].
50 *)
51
52 (* NOTATION
53 Infix "[+]" := csg_op (at level 50, left associativity).
54 *)
55
56 (* End_SpecReals *)
57
58 (*#* **Semigroup axioms
59 The axiomatic properties of a semi group.
60
61 %\begin{convention}% Let [G] be a semi-group.
62 %\end{convention}%
63 *)
64
65 (* UNEXPORTED
66 Section CSemiGroup_axioms
67 *)
68
69 (* UNEXPORTED
70 cic:/CoRN/algebra/CSemiGroups/CSemiGroup_axioms/G.var
71 *)
72
73 inline procedural "cic:/CoRN/algebra/CSemiGroups/CSemiGroup_is_CSemiGroup.con" as lemma.
74
75 inline procedural "cic:/CoRN/algebra/CSemiGroups/plus_assoc.con" as lemma.
76
77 (* UNEXPORTED
78 End CSemiGroup_axioms
79 *)
80
81 (* Begin_SpecReals *)
82
83 (*#* **Semigroup basics
84
85 %\begin{convention}%
86 Let [G] be a semi-group.
87 %\end{convention}%
88 *)
89
90 (* UNEXPORTED
91 Section CSemiGroup_basics
92 *)
93
94 (* UNEXPORTED
95 cic:/CoRN/algebra/CSemiGroups/CSemiGroup_basics/G.var
96 *)
97
98 (* End_SpecReals *)
99
100 inline procedural "cic:/CoRN/algebra/CSemiGroups/plus_assoc_unfolded.con" as lemma.
101
102 (* UNEXPORTED
103 End CSemiGroup_basics
104 *)
105
106 (* End_SpecReals *)
107
108 (* UNEXPORTED
109 Hint Resolve plus_assoc_unfolded: algebra.
110 *)
111
112 (*#* **Functional operations
113 We can also define a similar addition operator, which will be denoted by [{+}], on partial functions.
114
115 %\begin{convention}% Whenever possible, we will denote the functional construction corresponding to an algebraic operation by the same symbol enclosed in curly braces.
116 %\end{convention}%
117
118 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.
119
120 %\begin{convention}% Let [G:CSemiGroup] and [F,F':(PartFunct G)] and denote by [P] and [Q], respectively, the predicates characterizing their domains.
121 %\end{convention}%
122 *)
123
124 (* UNEXPORTED
125 Section Part_Function_Plus
126 *)
127
128 (* UNEXPORTED
129 cic:/CoRN/algebra/CSemiGroups/Part_Function_Plus/G.var
130 *)
131
132 (* UNEXPORTED
133 cic:/CoRN/algebra/CSemiGroups/Part_Function_Plus/F.var
134 *)
135
136 (* UNEXPORTED
137 cic:/CoRN/algebra/CSemiGroups/Part_Function_Plus/F'.var
138 *)
139
140 (* begin hide *)
141
142 inline procedural "cic:/CoRN/algebra/CSemiGroups/Part_Function_Plus/P.con" "Part_Function_Plus__" as definition.
143
144 inline procedural "cic:/CoRN/algebra/CSemiGroups/Part_Function_Plus/Q.con" "Part_Function_Plus__" as definition.
145
146 (* end hide *)
147
148 inline procedural "cic:/CoRN/algebra/CSemiGroups/part_function_plus_strext.con" as lemma.
149
150 inline procedural "cic:/CoRN/algebra/CSemiGroups/Fplus.con" as definition.
151
152 (*#*
153 %\begin{convention}% Let [R:G->CProp].
154 %\end{convention}%
155 *)
156
157 (* UNEXPORTED
158 cic:/CoRN/algebra/CSemiGroups/Part_Function_Plus/R.var
159 *)
160
161 inline procedural "cic:/CoRN/algebra/CSemiGroups/included_FPlus.con" as lemma.
162
163 inline procedural "cic:/CoRN/algebra/CSemiGroups/included_FPlus'.con" as lemma.
164
165 inline procedural "cic:/CoRN/algebra/CSemiGroups/included_FPlus''.con" as lemma.
166
167 (* UNEXPORTED
168 End Part_Function_Plus
169 *)
170
171 (* UNEXPORTED
172 Implicit Arguments Fplus [G].
173 *)
174
175 (* NOTATION
176 Infix "{+}" := Fplus (at level 50, left associativity).
177 *)
178
179 (* UNEXPORTED
180 Hint Resolve included_FPlus : included.
181 *)
182
183 (* UNEXPORTED
184 Hint Immediate included_FPlus' included_FPlus'' : included.
185 *)
186
187 (*#* **Subsemigroups
188 %\begin{convention}%
189 Let [csg] a semi-group and [P] a non-empty
190 predicate on the semi-group which is preserved by [[+]].
191 %\end{convention}%
192 *)
193
194 (* UNEXPORTED
195 Section SubCSemiGroups
196 *)
197
198 (* UNEXPORTED
199 cic:/CoRN/algebra/CSemiGroups/SubCSemiGroups/csg.var
200 *)
201
202 (* UNEXPORTED
203 cic:/CoRN/algebra/CSemiGroups/SubCSemiGroups/P.var
204 *)
205
206 (* UNEXPORTED
207 cic:/CoRN/algebra/CSemiGroups/SubCSemiGroups/op_pres_P.var
208 *)
209
210 inline procedural "cic:/CoRN/algebra/CSemiGroups/SubCSemiGroups/subcrr.con" "SubCSemiGroups__" as definition.
211
212 inline procedural "cic:/CoRN/algebra/CSemiGroups/Build_SubCSemiGroup.con" as definition.
213
214 (* UNEXPORTED
215 End SubCSemiGroups
216 *)
217