]> matita.cs.unibo.it Git - helm.git/blob - helm/software/matita/contribs/procedural/Coq/Sets/Uniset.mma
Preparing for 0.5.9 release.
[helm.git] / helm / software / matita / contribs / procedural / Coq / Sets / Uniset.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 "Coq.ma".
18
19 (*#***********************************************************************)
20
21 (*  v      *   The Coq Proof Assistant  /  The Coq Development Team     *)
22
23 (* <O___,, * CNRS-Ecole Polytechnique-INRIA Futurs-Universite Paris Sud *)
24
25 (*   \VV/  **************************************************************)
26
27 (*    //   *      This file is distributed under the terms of the       *)
28
29 (*         *       GNU Lesser General Public License Version 2.1        *)
30
31 (*#***********************************************************************)
32
33 (*i $Id: Uniset.v,v 1.9.2.1 2004/07/16 19:31:18 herbelin Exp $ i*)
34
35 (*#* Sets as characteristic functions *)
36
37 (* G. Huet 1-9-95 *)
38
39 (* Updated Papageno 12/98 *)
40
41 include "Bool/Bool.ma".
42
43 (* UNEXPORTED
44 Set Implicit Arguments.
45 *)
46
47 (* UNEXPORTED
48 Section defs
49 *)
50
51 (* UNEXPORTED
52 cic:/Coq/Sets/Uniset/defs/A.var
53 *)
54
55 (* UNEXPORTED
56 cic:/Coq/Sets/Uniset/defs/eqA.var
57 *)
58
59 (* UNEXPORTED
60 cic:/Coq/Sets/Uniset/defs/eqA_dec.var
61 *)
62
63 inline procedural "cic:/Coq/Sets/Uniset/uniset.ind".
64
65 inline procedural "cic:/Coq/Sets/Uniset/charac.con" as definition.
66
67 inline procedural "cic:/Coq/Sets/Uniset/Emptyset.con" as definition.
68
69 inline procedural "cic:/Coq/Sets/Uniset/Fullset.con" as definition.
70
71 inline procedural "cic:/Coq/Sets/Uniset/Singleton.con" as definition.
72
73 inline procedural "cic:/Coq/Sets/Uniset/In.con" as definition.
74
75 (* UNEXPORTED
76 Hint Unfold In.
77 *)
78
79 (*#* uniset inclusion *)
80
81 inline procedural "cic:/Coq/Sets/Uniset/incl.con" as definition.
82
83 (* UNEXPORTED
84 Hint Unfold incl.
85 *)
86
87 (*#* uniset equality *)
88
89 inline procedural "cic:/Coq/Sets/Uniset/seq.con" as definition.
90
91 (* UNEXPORTED
92 Hint Unfold seq.
93 *)
94
95 inline procedural "cic:/Coq/Sets/Uniset/leb_refl.con" as lemma.
96
97 (* UNEXPORTED
98 Hint Resolve leb_refl.
99 *)
100
101 inline procedural "cic:/Coq/Sets/Uniset/incl_left.con" as lemma.
102
103 inline procedural "cic:/Coq/Sets/Uniset/incl_right.con" as lemma.
104
105 inline procedural "cic:/Coq/Sets/Uniset/seq_refl.con" as lemma.
106
107 (* UNEXPORTED
108 Hint Resolve seq_refl.
109 *)
110
111 inline procedural "cic:/Coq/Sets/Uniset/seq_trans.con" as lemma.
112
113 inline procedural "cic:/Coq/Sets/Uniset/seq_sym.con" as lemma.
114
115 (*#* uniset union *)
116
117 inline procedural "cic:/Coq/Sets/Uniset/union.con" as definition.
118
119 inline procedural "cic:/Coq/Sets/Uniset/union_empty_left.con" as lemma.
120
121 (* UNEXPORTED
122 Hint Resolve union_empty_left.
123 *)
124
125 inline procedural "cic:/Coq/Sets/Uniset/union_empty_right.con" as lemma.
126
127 (* UNEXPORTED
128 Hint Resolve union_empty_right.
129 *)
130
131 inline procedural "cic:/Coq/Sets/Uniset/union_comm.con" as lemma.
132
133 (* UNEXPORTED
134 Hint Resolve union_comm.
135 *)
136
137 inline procedural "cic:/Coq/Sets/Uniset/union_ass.con" as lemma.
138
139 (* UNEXPORTED
140 Hint Resolve union_ass.
141 *)
142
143 inline procedural "cic:/Coq/Sets/Uniset/seq_left.con" as lemma.
144
145 (* UNEXPORTED
146 Hint Resolve seq_left.
147 *)
148
149 inline procedural "cic:/Coq/Sets/Uniset/seq_right.con" as lemma.
150
151 (* UNEXPORTED
152 Hint Resolve seq_right.
153 *)
154
155 (*#* All the proofs that follow duplicate [Multiset_of_A] *)
156
157 (*#* Here we should make uniset an abstract datatype, by hiding [Charac],
158     [union], [charac]; all further properties are proved abstractly *)
159
160 include "Sets/Permut.ma".
161
162 inline procedural "cic:/Coq/Sets/Uniset/union_rotate.con" as lemma.
163
164 inline procedural "cic:/Coq/Sets/Uniset/seq_congr.con" as lemma.
165
166 inline procedural "cic:/Coq/Sets/Uniset/union_perm_left.con" as lemma.
167
168 inline procedural "cic:/Coq/Sets/Uniset/uniset_twist1.con" as lemma.
169
170 inline procedural "cic:/Coq/Sets/Uniset/uniset_twist2.con" as lemma.
171
172 (*#* specific for treesort *)
173
174 inline procedural "cic:/Coq/Sets/Uniset/treesort_twist1.con" as lemma.
175
176 inline procedural "cic:/Coq/Sets/Uniset/treesort_twist2.con" as lemma.
177
178 (*i theory of minter to do similarly 
179 Require Min.
180 (* uniset intersection *)
181 Definition minter := [m1,m2:uniset]
182     (Charac [a:A](andb (charac m1 a)(charac m2 a))).
183 i*)
184
185 (* UNEXPORTED
186 End defs
187 *)
188
189 (* UNEXPORTED
190 Unset Implicit Arguments.
191 *)
192