aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* Removing a use of old refine in Tactics.Gravatar Pierre-Marie Pédrot2015-11-23
|
* Merge branch 'v8.5'Gravatar Pierre-Marie Pédrot2015-11-20
|\
| * Fix bug #4429: eauto with arith: 70x performance regression in Coq 8.5.Gravatar Pierre-Marie Pédrot2015-11-19
| | | | | | | | | | | | | | | | | | | | | | The issue was due to the fact that unfold hints are given a priority of 4 by default. As eauto was now using hint priority rather than the number of goals produced to order the application of hints, unfold were almost always used too late. We fixed this by manually giving them a priority of 1 in the eauto tactic. Also fixed the relative order of proof depth w.r.t. hint priority. It should not be observable except for breadth-first search, which is seldom used.
| * Allow program hooks to see the refined universe_context at the end of aGravatar Matthieu Sozeau2015-11-19
| | | | | | | | | | definition, if they manipulate structures depending on the initial state of the context.
| * Fix bug #4433, removing hack on evars appearing in a pattern from aGravatar Matthieu Sozeau2015-11-19
| | | | | | | | | | constr, and the associated signature, not needed anymore. Update CHANGES, no evar_map is produced by pattern_of_constr anymore.
| * Fixing fix c71aa6b to primitive projections.Gravatar Hugo Herbelin2015-11-18
| | | | | | | | | | | | | | | | | | | | | | | | - Introduced an error: fold was counting in the wrong direction and I did not test it. Sorry. - Substitution from params-with-let to params-without-let was still not correct. Hopefully everything ok now. Eventually, we should use canonical combinators for that: extended_rel_context to built the instance and and a combinator apparently yet to define for building a substitution contracting the let-ins.
| * Fix a bug preventing the generation of graphs when doing multipleGravatar Matthieu Sozeau2015-11-18
| | | | | | | | pattern-matching on function calls.
| * Improve error message.Gravatar Maxime Dénès2015-11-18
| |
| * MacOS package script: do not fail if link to /Applications already exists.Gravatar Maxime Dénès2015-11-18
| |
| * Slightly documenting code for building primitive projections.Gravatar Hugo Herbelin2015-11-18
| |
| * Fixing logical bugs in the presence of let-ins in computiong primitiveGravatar Hugo Herbelin2015-11-18
| | | | | | | | | | | | | | | | | | projections. - lift accounting for the record missing in computing the subst from fields to projections of the record - substitution for parameters should not lift the local definitions - typo in building the latter (subst -> letsubst)
* | Inlining the only use of Clenv.connect_clenv.Gravatar Pierre-Marie Pédrot2015-11-18
| |
| * More optimizations of [Clenv.clenv_fchain].Gravatar Pierre-Marie Pédrot2015-11-17
| | | | | | | | | | Everywhere we know that the universes of the left argument are an extension of the right argument, we do not have to merge universes.
| * Performance fix for destruct.Gravatar Pierre-Marie Pédrot2015-11-17
| | | | | | | | | | | | The clenv_fchain function was needlessly merging universes coming from two evarmaps even though one was an extension of the other. A flag was added so that the tactic just retrieves the newer universes.
| * Being more precise and faithful about the origin of the file reportingGravatar Hugo Herbelin2015-11-16
| | | | | | | | about the prehistory of Coq.
* | Hashconsing modules.Gravatar Pierre-Marie Pédrot2015-11-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Modules inserted into the environment were not hashconsed, leading to an important redundancy, especially in module signatures that are always fully expanded. This patch divides by two the size and memory consumption of module-heavy files by hashconsing modules before putting them in the environment. Note that this is not a real hashconsing, in the sense that we only hashcons the inner terms contained in the modules, that are only mapped over. Compilation time should globally decrease, even though some files definining a lot of modules may see their compilation time increase. Some remaining overhead may persist, as for instance module inclusion is not hashconsed.
* | Fixing output test Cases.v.Gravatar Pierre-Marie Pédrot2015-11-15
| | | | | | | | Not sure if this is really what is expected though.
* | Displaying the object identifier in votour.Gravatar Pierre-Marie Pédrot2015-11-15
| |
* | Merge branch 'v8.5'Gravatar Pierre-Marie Pédrot2015-11-15
|\|
| * Continue fix of PMP, handling setoid_rewrite in let-bound hyps correctly.Gravatar Matthieu Sozeau2015-11-13
| |
| * MacOS package script: do not fail if directory _dmg already exists.Gravatar Maxime Dénès2015-11-13
| |
| * Fix bug #4412: [rewrite] (setoid_rewrite?) creates ill-typed terms.Gravatar Pierre-Marie Pédrot2015-11-12
| | | | | | | | | | We retypecheck the hypotheses introduced by the refine primitive instead of blindly trusting them when the unsafe flag is set to false.
| * Fixed test-suite file for bug #3998.Gravatar Matthieu Sozeau2015-11-12
| |
| * Update CHANGESGravatar Jason Gross2015-11-12
| | | | | | | | Mention compatibility file.
| * Script building MacOS package.Gravatar Maxime Dénès2015-11-12
| |
| * Now closed.Gravatar Matthieu Sozeau2015-11-11
| |
| * Ensure that conversion is called on terms of the same type inGravatar Matthieu Sozeau2015-11-11
| | | | | | | | unification (not necessarily preserved due to the fo approximation rule).
| * Fix bug #3998: when using typeclass resolution for conversion, allowGravatar Matthieu Sozeau2015-11-11
| | | | | | | | only one disjoint component of the typeclasses instances to resolve.
| * Fix bug #3735: interpretation of "->" in Program follows the standard one.Gravatar Matthieu Sozeau2015-11-11
| |
| * Fix bug #3257, setoid_reflexivity should fail if not completing the goal.Gravatar Matthieu Sozeau2015-11-11
| |
| * Fix bug #4293: ensure let-ins do not contain algebraic universes inGravatar Matthieu Sozeau2015-11-11
| | | | | | | | their type annotation.
| * Fixing bug #3554: Anomaly: Anonymous implicit argument.Gravatar Pierre-Marie Pédrot2015-11-11
| | | | | | | | | | | | | | We just handle unnamed implicits using a dummy name. Note that the implicit argument logic should still output warnings whenever the user writes implicit arguments that won't be taken into account, but I'll leave that for another time.
* | Updating test-suite after Bracketing Last Introduction Pattern set byGravatar Hugo Herbelin2015-11-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | default. Interestingly, there is an example where it makes the rest of the proof less natural. Goal forall x y:Z, ... intros [y|p1[|p2|p2]|p1[|p2|p2]]. where case analysis on y is not only in the 2nd and 3rd case, is not anymore easy to do. Still, I find the bracketing of intro-patterns a natural property, and its generalization in all situations a natural expectation for uniformity. So, what to do? The following is e.g. not as compact and "one-shot": intros [|p1|p1]; [intros y|intros [|p2|p2] ..].
* | Updating Compat85.v after bd1c97653 on bracketing last or-andGravatar Hugo Herbelin2015-11-10
| | | | | | | | introduction pattern by default.
* | Revert "Fixing #1225: we now skip the canonically built binding contexts of"Gravatar Hugo Herbelin2015-11-10
| | | | | | | | | | | | This reverts commit 07620386b3c1b535ee7e43306a6345f015a318f0. Very sorry not ready.
* | Fixing #1225: we now skip the canonically built binding contexts ofGravatar Hugo Herbelin2015-11-10
| | | | | | | | | | | | | | | | | | the return clause and of the branches in a "match", computing them automatically when using the "at" clause of pattern, destruct, ... In principle, this is a source of incompatibilities in the numbering, since the internal binders of a "match" are now skipped. We shall deal with that later on.
* | Listing separately changes from 8.5betas to final 8.5 and furtherGravatar Hugo Herbelin2015-11-10
| | | | | | | | changes from final 8.5 to next version.
* | Activating bracketing of last or-and introduction pattern by defaultGravatar Hugo Herbelin2015-11-10
| | | | | | | | for more regularity.
* | Merge origin/v8.5 into trunkGravatar Hugo Herbelin2015-11-10
|\| | | | | | | Did some manual merge in tactics/tactics.ml.
| * Dead code from the commit having introduced primitive projections (a4043608).Gravatar Hugo Herbelin2015-11-10
| |
| * Typo.Gravatar Hugo Herbelin2015-11-10
| |
| * Fixing a bug in reporting ill-formed constructor.Gravatar Hugo Herbelin2015-11-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | For instance, Inductive a (x:=1) := C : a -> True. was wrongly reporting Error: The type of constructor C is not valid; its conclusion must be "a" applied to its parameter. Also "simplifying" explain_ind_err.
| * Test for bug #4404.Gravatar Pierre-Marie Pédrot2015-11-10
| |
| * Fix bug #4404: [remember] gives Error: Conversion test raised an anomaly.Gravatar Pierre-Marie Pédrot2015-11-10
| |
| * Pushing the backtrace in conversion anomalies.Gravatar Pierre-Marie Pédrot2015-11-09
| |
* | Adapting output test inference.v after c23f0cab6 (experimentingGravatar Hugo Herbelin2015-11-08
| | | | | | | | printing the type of the defined term of a LetIn).
| * Fixing output test Existentials.v after eec77191b.Gravatar Hugo Herbelin2015-11-07
| |
* | Preventing an unwanted warning 5 "this function application is partial"Gravatar Hugo Herbelin2015-11-07
| | | | | | | | which e.g. OCaml 4.02.1 displays.
* | Implementing assert and cut with LetIn rather than using a beta-redex.Gravatar Hugo Herbelin2015-11-07
| | | | | | | | | | Hopefully, it will provide with nicer proof terms, in combination with the commit printing the type of LetIn when the defined term is a proof.
* | Experimenting printing the type of the defined term of a LetIn whenGravatar Hugo Herbelin2015-11-07
| | | | | | | | | | this type is a proposition. This is based on the assumption that in Prop, what matters first is the statement.