aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-07-13Mentioning the incompatibility due to fixing bug #2996 (see #3418).Hugo Herbelin
2014-07-13Adding a "time" tactical for benchmarking purposes. In case the tacticHugo Herbelin
backtracks, print time spent in each of successive calls.
2014-07-11Fix Funind test-suite file after patch by Pierre.Matthieu Sozeau
2014-07-11Properly add a Set lower bound on any polymorphic inductive in Type withMatthieu Sozeau
more than one constructor.
2014-07-11An outdated comment + comment layout.Arnaud Spiwack
2014-07-11STM: let toploop plugins specify the flags for STM workersEnrico Tassi
2014-07-11STM: flag to turn off branch reopeningEnrico Tassi
This is useful if a UI does not support that
2014-07-11STM: add optionally takes the id of the new tipEnrico Tassi
2014-07-11STM: export the observe function (useful for pide)Enrico Tassi
2014-07-11Feedback: LoadedFile + GoalsEnrico Tassi
LoadedFile is generated when a .vo is loaded Goals is generated when -feedback-goals
2014-07-11Export type_of_global_ref (useful for external users of glob files)Enrico Tassi
2014-07-11make the standard logging facility stm awareEnrico Tassi
2014-07-10MSetRBT: unfortunate typo in compare_height (fix #3413)Pierre Letouzey
2014-07-10Better handling of the universe context in case of Admitted proof obligations.Matthieu Sozeau
2014-07-10Overlooked to remove a change in kernel/closure that made reducing underMatthieu Sozeau
a primitive projection impossible.
2014-07-10option to always delegate futures to workersEnrico Tassi
2014-07-10CoqIDE: on win32 the old interrputer code (SIGINT) is still neededEnrico Tassi
2014-07-10more APIs in TQueue and CThreadEnrico Tassi
These are now sufficient to implement PIDE
2014-07-10check_for_interrupt: better (but slower) in threading modeEnrico Tassi
Experimenting with PIDE I discovered that yield is not sufficient to have a rescheduling, hence the delay.
2014-07-10Reduce non-toplevel letins in splay_prod_assum (bug found in Ergo).Matthieu Sozeau
2014-07-10Fix a oversight in 5bf9e67b .Arnaud Spiwack
About 8 months after making this commit, I realised that I forgot to change a tclORELSE into a tclOR (which was the whole point of the commit to begin with). Shame on me. It does not seem to have much of an effect on efficiency, though. It may be a hair faster, but mostly indistinguishably so.
2014-07-09Revert patch making the oracle be used for the transparent state in evarconv,Matthieu Sozeau
which made CoRN (and probably Ergo) fail. Another option should be found for making a constant not unfoldable by tactics/refinement.
2014-07-09Locate: also display some information about module aliasingPierre Letouzey
Typically, if module M has a constant t and module P contains "Include M", then "Locate t" will now mention that P.t is an alias of M.t
2014-07-09Arith: full integration of the "Numbers" modular frameworkPierre Letouzey
- The earlier proof-of-concept file NPeano (which instantiates the "Numbers" framework for nat) becomes now the entry point in the Arith lib, and gets renamed PeanoNat. It still provides an inner module "Nat" which sums up everything about type nat (functions, predicates and properties of them). This inner module Nat is usable as soon as you Require Import Arith, or just Arith_base, or simply PeanoNat. - Definitions of operations over type nat are now grouped in a new file Init/Nat.v. This file is meant to be used without "Import", hence providing for instance Nat.add or Nat.sqrt as soon as coqtop starts (but no proofs about them). - The definitions that used to be in Init/Peano.v (pred, plus, minus, mult) are now compatibility notations (for Nat.pred, Nat.add, Nat.sub, Nat.mul where here Nat is Init/Nat.v). - This Coq.Init.Nat module (with only pure definitions) is Include'd in the aforementioned Coq.Arith.PeanoNat.Nat. You might see Init.Nat sometimes instead of just Nat (for instance when doing "Print plus"). Normally it should be ok to just ignore these "Init" since Init.Nat is included in the full PeanoNat.Nat. I'm investigating if it's possible to get rid of these "Init" prefixes. - Concerning predicates, orders le and lt are still defined in Init/Peano.v, with their notations "<=" and "<". Properties in PeanoNat.Nat directly refer to these predicates in Peano. For instantation reasons, PeanoNat.Nat also contains a Nat.le and Nat.lt (defined via "Definition le := Peano.le", we cannot yet include an Inductive to implement a Parameter), but these aliased predicates won't probably be very convenient to use. - Technical remark: I've split the previous property functor NProp in two parts (NBasicProp and NExtraProp), it helps a lot for building PeanoNat.Nat incrementally. Roughly speaking, we have the following schema: Module Nat. Include Coq.Init.Nat. (* definition of operations : add ... sqrt ... *) ... (** proofs of specifications for basic ops such as + * - *) Include NBasicProp. (** generic properties of these basic ops *) ... (** proofs of specifications for advanced ops (pow sqrt log2...) that may rely on proofs for + * - *) Include NExtraProp. (** all remaining properties *) End Nat. - All other files in directory Arith are now taking advantage of PeanoNat : they are now filled with compatibility notations (when earlier lemmas have exact counterpart in the Nat module) or lemmas with one-line proofs based on the Nat module. All hints for database "arith" remain declared in these old-style file (such as Plus.v, Lt.v, etc). All the old-style files are still Require'd (or not) by Arith.v, just as before. - Compatibility should be almost complete. For instance in the stdlib, the only adaptations were due to .ml code referring to some Coq constant name such as Coq.Init.Peano.pred, which doesn't live well with the new compatibility notations.
2014-07-09Fixing the previous patch to keep transparent states in sync.Pierre-Marie Pédrot
2014-07-09Recovering transparent state from kernel oracles in constant time.Pierre-Marie Pédrot
2014-07-08Fixing bug #3270. Patch by Robbert Krebbers.Pierre-Marie Pédrot
2014-07-08Exporting Proof.split in proofview.Pierre-Marie Pédrot
2014-07-07Revert "time tac" (committed by mistake).Hugo Herbelin
This reverts commit abad0a15ac44cb5b53b87382bb4d587d9800a0f6.
2014-07-07time tacHugo Herbelin
2014-07-07Updating README wrt coq-club and ftp.Hugo Herbelin
2014-07-07Fix g_coqast for explicit applications.Matthieu Sozeau
2014-07-07Coq_makefile: fix cmx compilation when there are both ml and mllibPierre Boutillier
2014-07-07In flex-flex cases, the undefinedness of an evar can not be preseved after ↵Matthieu Sozeau
converting the stacks. Take care of this by recalling unification.
2014-07-07Missing check of evar instantiation, resulting in missing constraints (bug ↵Matthieu Sozeau
from MathClasses).
2014-07-07In dest_prod_assum, allow non-toplevel let-reductions (fixes a bug found in ↵Matthieu Sozeau
MathClasses).
2014-07-05Using IStream coiterator to explicit the captured state of tactic matching ↵Pierre-Marie Pédrot
results.
2014-07-03Cleanup code related to the constraint solving, which sits now outside theMatthieu Sozeau
kernel in library/universes.ml.
2014-07-03Properly compute the transitive closure of the system of constraintsMatthieu Sozeau
generated by a mutual inductive definition (bug found in CFGV). Actually this code can move out of the kernel.
2014-07-03Restore proper order of effects in letin_tac_gen. Fixes CFGV again.Matthieu Sozeau
2014-07-03Fix eta expansion of primitive records (HoTT bug #78), which now fails ↵Matthieu Sozeau
cleanly when called on partially applied constructors. Also protect evar_conv from that case.
2014-07-03Fix Coq_makefile in presence of mlpackPierre Boutillier
2014-07-03coqdoc is minimaly -Q awarePierre Boutillier
2014-07-03Adding a coiterator to IStream.Pierre-Marie Pédrot
2014-07-03More efficient implementation of Ltac match, by inlining a stream map.Pierre-Marie Pédrot
2014-07-03When defining a monomorphic Program, do not allow arbitrary instantiationsMatthieu Sozeau
of the universe context in the obligations, it gets gradually fixed globally by each one of them. Fixes bug found in Misc/Overloading.
2014-07-03Bug 3405: Coq_makefile: Implicit rules only for listed files in Make filePierre Boutillier
2014-07-02In setoid_rewrite, force resolution of the contraints generated by rewriting ↵Matthieu Sozeau
only. Do not mix it with resolution of user-introduced subgoals of typeclass type (bug found in ATBR).
2014-07-02Fix a Not_found anomaly raised by solve_evar_evar, we were breaking theMatthieu Sozeau
invariant that the evar arguments to that function always have to be undefined.
2014-07-02Indeed simpl never is really honored now.Matthieu Sozeau