aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-04-27Cleanup old eauto code.msozeau
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12111 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-27- Implementation of a new typeclasses eauto procedure based on successmsozeau
and failure continuations, allowing to do safe cuts correctly. - Fix bug #2097 by suppressing useless nf_evars calls. - Improve the proof search strategy used by rewrite for subrelations and fix some hints. Up to 20% speed improvement in setoid-intensive files. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12110 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-27- Fixed a little bug in previous commit (bad failure in case of unknown entry).herbelin
- Added support for list of intropattern in Tactic Notation. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12109 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-27- Cleaning (unification of ML names, removal of obsolete code,herbelin
reorganization of code) and documentation (in pcoq.mli) of the code for parsing extensions (TACTIC/VERNAC/ARGUMENT EXTEND, Tactic Notation, Notation); merged the two copies of interp_entry_name to avoid they diverge. - Added support in Tactic Notation for ne_..._list_sep in general and for (ne_)ident_list(_sep) in particular. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12108 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-25- Fixing #2090 (occur check missing when trying to solve evar-evar equation).herbelin
- Adding test file related to commit 12080 (bug #2091). - Cleaning old parsing stuff from 8.0. - Support for camlp5 in base_include. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12106 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-24Report de la révision #12104 (Maj lien site web de Coq)notin
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12105 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-24Backporting 12080 (fixing bug #2091 on bad rollback in the "where"herbelin
clause resulting in stray notations for e.g. variable named "le") and 12083 (fixing bug in as clause of apply in) from trunk. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12103 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-24Fixing bug #2308 ("instantiate" tactic did not comply withherbelin
the interpretation mechanism of ltac variables) git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12100 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-24- New cleaning phase for the entry points of pretyping.mlherbelin
- Uniformisation of ML names between pretyping.ml and subtac_pretyping_F.ml so as to ease the comparison between these files. Application of a change that cannot do harm: j_nf_evar now called after getting evd from consider_remaining_unif_problems in Subtac_pretyping_F.understand_judgment. Four differences remain (is it the sign of a problem?): 1) understand_type fails in Pretyping if evars remain but does not fail in Subtac_pretyping_F 2) resolve_typeclasses (when called) is called with ~onlyargs:false and ~fail:true in Pretyping.understand, Pretyping.understand_gen and Pretyping.understand_type but with true and false in these same functions in Subtac_pretyping_F 3) understand_ltac does not call typeclasses in Pretyping but it does call it in Subtac_pretyping_F 4) understand_judgment does call typeclasses in Pretyping but not in Subtac_pretyping_F git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12099 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-21fixed CBV strategy: it was too eager on terms likebarras
Axiom f: (nat->nat)->Prop. Eval compute in let _ := f(fun _ => mult 1000 1000) in 0. function was strongly evaluated when applied to f (based on examples provided by Damien Pous) git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12098 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-21Rename [Morphism] into [Proper] and [respect] into [proper] to complymsozeau
with standard math nomenclature. Also clean up in rewrite.ml4. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12097 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-20Fix test output mentionning an existential number that changed.msozeau
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12096 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-20Fix wrong pattern in Morphisms. Fix bug scripts to reflect the fact thatmsozeau
Setoid doesn't export Program.Basics anymore. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12095 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-18Just export RelationClasses for [Equivalence] through Setoid.msozeau
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12094 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-17Only export the notations of Morphism as well as Equivalence throughmsozeau
Setoid, the rest needs to be qualified. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12093 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-17- Fix handling of clauses in setoid_rewrite to rewrite under bindersmsozeau
correctly. - Fix the new autorewrite to implement the (unstated) invariant that the last declared rules are applied first, which makes a difference for non-confluent rewrite rules. Some scripts in CoLoR rely on that. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12092 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-16comparison functions on lists and arraysbarras
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12091 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-16Fix bug #2089: correctly dealing with parameters and real arguments inmsozeau
Combined Scheme. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12090 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-16Better Requires in Classes. Fix bug #2093: the code does not requiremsozeau
Program.Tactics anymore. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12089 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-16nouvelle version de la tactique groebner proposee par Loic:barras
- algo de Janet (finalement pas utilise) - le hash-cons des certificats de Benjamin et Laurent pas encore integre - traitement des puissances jusqu'a 6 (methode totalement naive) git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12088 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-14Rewrite autorewrite to use a dnet indexed by the left-hand sides (ormsozeau
rhs) of rewrite lemmas for efficient retrieval of matching lemmas. Autorewrite's implementation is still unchanged but the dnet can be used through the [hints] strategy of the new generalized rewrite. Now lemmas are checked to actually be rewriting lemmas at declaration time hence the change in DoubleSqrt where some unapplicable constants were declared as lemmas. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12087 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-14Add a combinator for rewriting given a list of terms and fix themsozeau
top-down strategy. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12086 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-14Correction du patch -rectypes pour ocaml 3.10vsiles
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12085 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-14Some additions in Max and Zmax. Unifiying list of statements and namesherbelin
in both files. Late update of CHANGES wrt classical Tauto. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12084 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-14Fix and actually beautify the bug script to adapt to the new measuremsozeau
support in Program. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12082 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-13Rewrite of setoid_rewrite to modularize it based on proof-producingmsozeau
strategies (à la ELAN). Now setoid_rewrite is just one strategy and autorewrite is a more elaborate one. Any kind of traversals can be defined, strategies can be composed etc... in ML. An incomplete (no fix) language extension for specifying them in Ltac is there too. On a typical autorewrite-with-setoids usage, proof production time is divided by 2 and proof size by 10. Fix some admitted proofs and buggy patterns in Classes.Morphisms as well. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12081 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-10Fix premature optimisation in dependent induction: even variable args needmsozeau
to be generalized as they may appear in other arguments or their types. Try to keep the original names around as well, using the ones found in the goal. This only requires that interning a pattern [forall x, _] properly declares [x] as a metavariable, binding instances are already part of the substitutions computed by [extended_matches]. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12079 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-10Fix tauto no longer failing after commit 12077; appropriate errorherbelin
message in the classical case. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12078 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-09Turning tauto into a classical tautology prover as soon as classicalherbelin
logic (file Classical_Prop.v) is loaded. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12077 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-09Backtrack on 12061 (type checking for bug #2084 too strong as soon as we useherbelin
Type instead of sort variables for unknown levels in unification). git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12075 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-08ocamlbuild: right symlink for csdpcertletouzey
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12074 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-08Take formatted into account in rules for dot.msozeau
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12072 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-08Experimental support for automatic destruction of recursive calls andmsozeau
clearing of recursive protototypes in Program obligations. Relies on marking said prototypes with a particular constant and preprocessing obligation goals with an appropriate tactic. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12071 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-08Fix bug #2083 for good: verify that the measure and relation aremsozeau
well-formed before doing anything. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12070 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-08Some dead code removal + cleanupsletouzey
This commit concerns about the first half of the useless code mentionned by Oug for coqtop (without plugins). For the moment, Oug is used in a mode where any elements mentionned in a .mli is considered to be precious. This already allows to detect and remove about 600 lines, and more is still to come. Among the interesting points, the type Entries.specification_entry and its constructors SPExxx were never used. Large parts of cases.ml (and hence subtac_cases.ml) were also useless. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12069 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-08ocamlbuild: tags for new file tactics/rewrite.ml4letouzey
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12068 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-08Change HTML paragraph output to avoid too much space after bulletedmsozeau
lists, patch by B. Pierce. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12067 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-08Backport of Eric Le Lay's patch (bug report #2078) from v8.2 branchherbelin
(r12063) for smooth compilation/installation under Solaris (/bin/sh -> /bin/bash, -or -> -o in find, echo -n -> printf, ! in test rather than in if). git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12065 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-08- Fixing bug #2084 (unification not checking sort constraints), hopingherbelin
it does not cause a time penalty. - Removing of get_type_of_with_meta made possible by the evar_defs/evar_map merge. - Adding unfolding of Meta in reductionops (this assumes that reduction does not move Metas across binders...) - Renaming newly created fold_map_rel_context into map_rel_context_in_env. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12061 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-08A first pearl found by the Oug analyzer: there were two list_map_i in Utilletouzey
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12060 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-08- Backport of 12053 (fixing parsing segfault bug #2087) and 12058 (fixingherbelin
Not_found bug in Theorem with) from V8.2 to trunk. - Improving indentation in presence of tabulation and utf-8 when reporting error messages with "^^^^^^". - Updating a few svn:ignore properties. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12059 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-07Fixes in Program: msozeau
- unnecessary and inefficient nf_evar_defs in coercion code - use new way of inferring match return clauses git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12057 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-07Move setoid_rewrite to its own module and do some clean up inmsozeau
class_tactics. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12056 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-06Fix behavior on newlines with parse-comments and also do [] escaping as msozeau
usual in this mode (report and request by B. Pierce). git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12054 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-06correction bug 2085soubiran
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12052 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-05Display the content of the list instead of "<list>" when an idtacherbelin
argument is a variable bound to a list (see S. Lescuyer's message on coq-club, Apr 5, 2009). git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12050 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-03Fix obvious bug in evars_of_named_context.msozeau
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12049 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-03Ocamlbuild: option for (not) building coqide, better log messagesletouzey
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12048 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-03Makefile: ocamlbuild's _build is not traversed by find, and removed by make ↵letouzey
clean git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12047 85f007b7-540e-0410-9357-904b9bb8a0f7
2009-04-03Ocamlbuild: improvements suggested by N. Pouillardletouzey
* Import of Coq_config via myocamlbuild_config.ml, instead of my get_env * As a consequence, we enrich this Coq_config with stuff that was only in config/Makefile * replace the big ugly find by some dependencies against source files * by the way: build csdpcert, with the right aliases. I've tried to escape things properly for windows in ./configure, but this isn't fully tested yet. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12046 85f007b7-540e-0410-9357-904b9bb8a0f7