aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2008-09-14Fix bug #1939: defined evars were not substituted in some typeclassesmsozeau
eauto goals. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11404 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-14Fix bug #1940: uncaught exception when searching for a type class.msozeau
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11403 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-13Finish debugging the unification machinery in [Equations]. Do the _compmsozeau
dance when defining a new program by default, which forces use of JMeq but makes for much more robust tactics. Everything in success/Equations works except for limitations due to JMeq or the guardness checker (one example seems to actually diverge...). git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11402 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-13Remove redefinition of id in Program.Basics, just add maximal implicits.msozeau
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11401 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-13Fix a bug, in fold_constr_with_binders, the types of fixpoints weremsozeau
processed in the larger context instead of the bodies. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11400 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-12Add a type argument to letin_tac instead of using casts and recomputingmsozeau
when one wants a particular type. Rewrite of the unification behind [Equations], much more robust but still buggy w.r.t. inaccessible patterns. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11399 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-11Fixes in dependent induction tactic, putting things in better order formsozeau
simplifications (homogeneous equations first). git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11398 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-11Add enough information to correctly globalize recursive calls in inductive andmsozeau
recursive definitions and references to previous fields in record and classes definitions. Fixes the corresponding typesetting issue in coqdoc output. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11397 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-11Some more debugging of [Equations], unification still not perfect.msozeau
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11396 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-10profondeur maximalefilliatr
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11395 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-09added comments in esubst.mlibarras
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11394 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-09Correction bug assert (introduit dans la révision 11300) qui neherbelin
vérifiait plus si le nom de l'hyp était déjà utilisé. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11393 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-09Suppression d'un warning inutilenotin
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11392 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-09Fix a bug reintroduced in [setoid_reflexivity] etc...msozeau
Go back to refine_hyp instead of specialize, because only the former handles open terms. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11391 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-07Commit fixes from v8.2 branch (r11386 and r11387)glondu
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11390 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-07Generalize usage of $(FIND_VCS_CLAUSE) and add debian to itglondu
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11389 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-07Do not install csdpcert in $(BINDIR)glondu
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11388 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-07Check [Equations] patterns are for the right function.msozeau
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11385 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-07Add the ability to declare [Hint Extern]'s with no pattern.msozeau
This permits to create a database [relations] in [RelationClasses] with a single extern tactic in it that tries to apply [reflexivity] or [symmetry]. This is then automatically used in [auto with *] and repair backward compatibility. The previous commit broke some scripts which were using [intuition] to do (setoid) [reflexivity] or [symmetry]: this worked only by accident, because the hint database of typeclasses was used. Overrall, this also allows to put a bunch of always-applicable, related tactics in some database or to use [Hint Extern] but match only on hypotheses. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11384 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-07Fixes in typeclasses resolution. Avoid reducing instances types beforemsozeau
making the auto apply entry. Makes indexing better and avoid polution of [auto with *] with many abstract lemmas comming from [typeclass_instances]. Quite a nice speedup again, even Field_theory has dropped to 58s from 70s. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11381 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-07Update CHANGES and INSTALLglondu
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11379 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-07Add some calls to $(STRIP) for consistencyglondu
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11378 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-07$(DLLCOQRUN) is not an executableglondu
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11377 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-07Small fixes in "varify", a small tactic doing the first part ofmsozeau
reification: putting variables in a varmap. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11376 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-07Skip complexity tests on demandglondu
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11375 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-07More debugging of [Equations], now able to discharge even the heavilymsozeau
dependent [noConfusion] definitions in "A Few Constructions on Constructors". Now the guardness check is blocking. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11374 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-07Better handling of the opacity of proof obligations, add the possibility ofmsozeau
overriding the default tactic when adding a definition. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11373 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-06Install coqide manpageglondu
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11372 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-06Install dllcoqrun.so and use it by defaultglondu
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11371 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-06More cleaningglondu
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11370 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-06Create the bin/ directory if non-existentglondu
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11369 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-06Always use environment variablesglondu
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11368 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-06$(COQLIB) -> $(COQLIBINSTALL) in Makefilesglondu
COQLIB has a special meaning to executables, and we don't want make to set it to a path surrounded by double quotes. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11367 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-06Use $(COQTOPEXE) to refer to bin/coqtop in Makefilesglondu
The environment variable COQTOP has a different meaning for Coq executables and for Coq Makefiles, which is troublesome when make forwards it to subprocesses via the environment. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11366 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-05Report 11364 de 8.2 vers trunk (bugs affichage Print Module)herbelin
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11365 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-05Parametrize link flags for VM-dependent bytecodeglondu
* Remove unneeded -custom flags. * Replace needed ones by a configure parameter. Setting it to "-dllib -lcoqrun" enables the creation/usage of pure bytecode executable provided the so/dll with the VM is found by ocamlrun. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11363 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-05Build coqrun library using ocamlmklib...glondu
...instead of plain ar, so that .so (and .dll) is also created. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11362 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-04Correction du bug #1908 (améliorations de coqdoc.css)notin
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11361 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-04Improve typeclasses eauto using the dnet for local assumptions too, and selectmsozeau
only relevant hypotheses in it, slightly cutting the search space. Makes setoid_rewrite less sensitive to the number of hypothesis (~ 5% time improvment on the stdlib). This currently prevents resolution with constants which reduce to classes, hence the modifications in Setoids.Setoid. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11360 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-04Correction du bug #1937notin
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11359 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-04Rely on ocamlc to call the C compiler...glondu
...with proper options for dynamic loading of C stubs. I believe this is the preferred way of compiling C stubs. It also adds by itself -fno-defer-pop, -Wall, -I `ocamlc -where`, so CFLAGS could also be simplified. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11358 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-04Fix camlp5-ism "Ploc.Exc" and add a unification fix: when solving anmsozeau
evar, do unification between the evar type and the type of the instance to properly propagate information. Typical example: in context ?A : Type, ?R : relation ?A. When we instantiate ?R using a goal like x = y by @eq t, we need to instantiate A to t as well. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11357 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-03Better handling of recursive Equations definitions... still not perfect.msozeau
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11356 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-03Fix bug #1935, reworking the reflexivity, symmetry... tactics to usemsozeau
the same typeclass method application tactic that's available to users. Modify a bit the _red tactics to accomodate the new setup and comment some dead code in setoid_replace. Next step is removing it completely. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11355 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-03Correct handling of implicit arguments in [Equations] definitions,msozeau
support for "where" notation declarations as well. Better checking of recursivity or not, after type-checking. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11354 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-02Add support for recursive definitions to [Equations], deciding if amsozeau
definition is recursive or not based on occurence of a rec call in the body. Examples updated, enjoy! git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11353 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-02Initial implementation of a new command to define (dependent) functions bymsozeau
equations. It is essentially an implementation of the "Eliminating Dependent Pattern-Matching" paper by Goguen, McBride and McKinna, relying on the new dependent eliminations tactics. The bulk is in contrib/subtac/equations.ml4. It implements a tree splitting on a set of clauses and the generation of a corresponding proof term along with some obligations at each splitting node. The obligations are solved by driving the dependent elimination tactic and you get a complete proof term at the end with the code given by the equations at the right spots, the rest of the cases being pruned automatically. Does not support recursion yet, a file with examples is in the test-suite. With recursion, it would be similar to Agda 2's pattern matching, except it won't reduce in Coq due to JMeq's/K. Incidentally, the simplification tactics after dependent elimination have been improved, resulting in a clearer and more space efficient implementation. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11352 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-02- Remove some dead code in subtacmsozeau
- Fix an apparent bug in the printing of move, indeed by default move is _not_ dependent when parsed (see parsing/g_tactic.ml4). git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11351 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-02fixed minor environment issues when checking inductive typesbarras
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11349 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-09-02fixed bug #1927 + univ constraints (module cstrs include cstrs of its ↵barras
subcomponents) git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11348 85f007b7-540e-0410-9357-904b9bb8a0f7