aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-08-18Factorizing cutrewrite (to be made obsolote) and dependent rewrite (toHugo Herbelin
integrate to "rewrite"?) with the code of "replace". Incidentally, "inversion" relies on dependent rewrite, with an incompatibility introduced. Left-to-right rewriting is now done with "eq_rec_r" while before it was done using "eq_rec" of "eq_sym". The first one reduces to the second one but simpl is not anymore able to reduce "eq_rec_r eq_refl". Hopefully cbn is able to do it (see Zdigits).
2014-08-18A few more comments in tactics.mli and hippatern.ml.Hugo Herbelin
2014-08-18Slight simplification of naming of tactics in equality.ml (hopefully).Hugo Herbelin
Isolating a core tactic in replace, shareable to cutrewrite.
2014-08-18A reorganization of the "assert" tactics (hopefully uniform namingHugo Herbelin
scheme, redundancies, possibility of chaining a tactic knowing the name of introduced hypothesis, new proof engine).
2014-08-18Spotted a source of failure of the constr printer in debugger.Hugo Herbelin
2014-08-18Reorganisation of intropattern codeHugo Herbelin
- emphasizing the different kinds of patterns - factorizing code of the non-naming intro-patterns Still some questions: - Should -> and <- apply to hypotheses or not (currently they apply to hypotheses either when used in assert-style tactics or apply in, or when the term to rewrite is a variable, in which case "subst" is applied)? - Should "subst" be used when the -> or <- rewrites an equation x=t posed by "assert" (i.e. rewrite everywhere and clearing x and hyp)? - Should -> and <- be applicable in non assert-style if the lemma has quantifications?
2014-08-18Reorganization of tactics:Hugo Herbelin
- made "apply" tactics of type Proofview.tactic, as well as other inner functions about elim and assert - used same hypothesis naming policy for intros and internal_cut (towards a reorganization of intro patterns) - "apply ... in H as pat" now supports any kind of introduction pattern (doc not changed)
2014-08-18Fix test-suite file.Matthieu Sozeau
2014-08-18Fix test-suite files.Matthieu Sozeau
2014-08-18Refine patch for behavior of unify_to_subterm to allow backtracking onMatthieu Sozeau
unsatisfiable constraint failures but give sensible error messages if an occurrence was found and only typeclass resolution failed. Fixes MathClasses.
2014-08-18Fix test-suite file.Matthieu Sozeau
2014-08-18Fixing include of debugger.Pierre-Marie Pédrot
2014-08-18Moving the TacAlias node out of atomic tactics.Pierre-Marie Pédrot
2014-08-18Moving the TacExtend node from atomic to plain tactics.Pierre-Marie Pédrot
Also taking advantage of the change to rename it into TacML. Ultimately should allow ML tactic to return values.
2014-08-16Removing documentation related to the deprecated State machinery.Pierre-Marie Pédrot
2014-08-16Better printing of Ltac values.Pierre-Marie Pédrot
2014-08-16Fixing too restrictive detection of resolution of evars in "apply in"Hugo Herbelin
(revealed by contribution PTSF).
2014-08-15More self-contained code for tclWITHHOLES.Pierre-Marie Pédrot
2014-08-15Removing unused Refiner.tclWITHHOLES.Pierre-Marie Pédrot
2014-08-14Remove confusing behavior of unify_with_subterm that could fail withMatthieu Sozeau
NoOccurenceFound when only typeclass resolution failed. Might break some scripts relying on backtracking on typeclass resolution failures to find other terms to rewrite, which can be fixed using occurrences or directly setoid_rewrite.
2014-08-14Fix program using an the unsubstituted type of the original obligationMatthieu Sozeau
instead of the normalized one at the end of the proof. Fixes bug #3517.
2014-08-14Fix non-printing of coercions for primitive projections (fixes bug #3433).Matthieu Sozeau
2014-08-14Restrict eta-conversion to inductive records, fixing bug #3310.Matthieu Sozeau
2014-08-14Restore the error-handling behavior of [change], which was silently failingMatthieu Sozeau
when conversion in the goal failed.
2014-08-14Fix elimschemes accessing directly the universe context of inductives (fixes ↵Matthieu Sozeau
test-suite file HoTT_coq_089.v).
2014-08-13Fix test-suite files according to new parsing rule for application of primitiveMatthieu Sozeau
projections.
2014-08-13Small optimization in Cooking: do not construct identity substitutions.Pierre-Marie Pédrot
2014-08-13Bettre pretty-printing of evar maps, avoids printing universe informationMatthieu Sozeau
for typeclass errors.
2014-08-12Upgrading output tests.Hugo Herbelin
output/Arguments.v output/ArgumentsScope.v output/Arguments_renaming.v output/Cases.v output/Implicit.v output/PrintInfos.v output/TranspModType.v Main changes: monomorphic -> not universe polymorphic, Peano vs Nat
2014-08-12Bug #3469: fixing unterminated comment.Hugo Herbelin
2014-08-12In bug #2406, renouncing to test failure of parsing error.Hugo Herbelin
(AFAIU, it is the table of supported unicode characters which has to be upgraded anyway.)
2014-08-12Quick fix for avoiding infinitely many respawning and Warning "CoqHugo Herbelin
died" when coqtop or coqtopide.cmxs are in inconsistent state.
2014-08-12Fixing parsing of bullets after a "...".Hugo Herbelin
The lexer parses bullets only at the beginning of sentence. In particular, the lexer recognizes sentences (this feature was introduced for the translator and it is still used for the beautifier). It recognized "." but not "...'. I added "..." followed by space or eol as a terminator of sentences. I hope this is compatible with the rest of the code dealing with end of sentences. Fixed also parse_to_dot which was not aware of "...". Maybe there are similar things to do with coqide or PG?
2014-08-12A couple of fixes/improvements in -beautify, but backtracking onHugo Herbelin
change of printing format of forall (need more thinking).
2014-08-10Fix bug introduced by earlier commit on first-order unification of primitiveMatthieu Sozeau
projections and their expansion, allowing unfolding when it fails. Cleanup code in reductionops.ml
2014-08-09Fix unification which was failing when unifying a primitive projection againstMatthieu Sozeau
its expansion if it could reduce (fixes bug #3480).
2014-08-09Allow pattern matching on the applied form of projections with primitiveMatthieu Sozeau
applications, solving part of bug #3503.
2014-08-09Do early occur-check in unification to allow eta to fire (fixes bug #3477)Matthieu Sozeau
2014-08-09Using the asymmetric merging primitive in Evd.Pierre-Marie Pédrot
2014-08-09Adding a primitive to merge ContextSets which is more efficient when onePierre-Marie Pédrot
of the argument is smaller than the other one.
2014-08-09Cleaning up interface of ContextSet.Pierre-Marie Pédrot
Names and arguments were uniformized, and some functions were redesigned to take their typical use-case into account.
2014-08-09Tentative performance fix for Evd.merge_uctx.Pierre-Marie Pédrot
The levels added by the context are in general much fewer than the size of the evarmap, so it is better to add them to the latter rather than doing it the other way around.
2014-08-08Change internalization of primitive projections to allow parsing [p t] asMatthieu Sozeau
a primitive application only if all parameters of [p] are implicit, falling back to the internalization of the eta-expanded version otherwise. This makes apply [p] succeed even if its record argument is not implicit, ensuring better compatibility.
2014-08-08Fix evarconv not applying eta when it used to. Fixes bug#3319.Matthieu Sozeau
2014-08-07Better structure for Ltac pretyping environments.Pierre-Marie Pédrot
2014-08-07More .mailmap update.Arnaud Spiwack
2014-08-07Add some more entries to .mailmapArnaud Spiwack
2014-08-07Hypotheses in [Proofview.Goal.enter] were not normalised.Arnaud Spiwack
Fixes PTSF (though I have no idea what caused this bug to show up just yesterday).
2014-08-07In Hipattern: some functions not working modulo evar instantiation.Arnaud Spiwack
In theory [Proofview.Goal.env] should be, itself, marked as requiring a normalised goals (as it includes [hyps] which does). However, it is impractical as it is very common to pass a goal environment to a function reasoning modulo evars. So I guess we are bound to mark the appropriate functions by hand.
2014-08-07Removing simple induction / destruct from the AST.Pierre-Marie Pédrot