| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2018-09-03 | Coq: solver should split earlier | Brian Campbell | |
| otherwise some other parts don't work properly. Also update RISC-V patch. | |||
| 2018-09-03 | Coq: get top-level value definitions to work nicely again | Brian Campbell | |
| Also required some solver fixes: - make sure that ArithFacts are always cleared to avoid loops - extract_properties should do the goal first because it might add extra work to do in the hypotheses - unfolding should come before extract_properties | |||
| 2018-09-03 | Coq: rework generation of dependent pairs so that they are only | Brian Campbell | |
| constructed when a function call, cast, or binder demands them, removing some ambiguous corner cases. Also - Don't simplify nexps before printing (note that we usually end up needing a (8 * x) / 8 lemma as a result) - More extraction of properties in the goal - Splitting of conditionals/matches in goals (which can occur more often because of the new positions of build_ex in definitions) - Try simple solving first to improve speed / reduce proof sizes / help fill in metavariables (because manipulating the goal can interfere with instantiating them) - Update RISC-V patch | |||
| 2018-08-30 | Coq: correct endianness reversal bug | Brian Campbell | |
| 2018-08-28 | Coq: make some library definitions compute | Brian Campbell | |
| 2018-08-15 | Get RISC-V on Coq into reasonable state to show | Brian Campbell | |
| - Fill in Coq builtins for more of the RISC-V prelude - Update Barriers - More general autocast - Temporary sub_nat definition (until the backend handles nat better) - Patch to bring results into a reasonable state - Use Let rather than Definition for non-dependent top-level values | |||
| 2018-08-14 | Coq: attempt a quick proof before an indepth one | Brian Campbell | |
| 2018-08-13 | Coq: more strings for RISC-V | Brian Campbell | |
| 2018-08-13 | Coq: drop irrelevant definitions before constraint solving | Brian Campbell | |
| (which were slowing down RISCV unacceptably because dealing with the xlen max/min values is surprisingly expensive) | |||
| 2018-08-10 | Coq: add some of string library | Brian Campbell | |
| 2018-08-09 | Coq: a bit more handling of unknown constraints | Brian Campbell | |
| 2018-08-03 | Coq: use a dummy constraint when the real one is unknown | Brian Campbell | |
| Not really what we want, but a useful placeholder because of the widespread use of ex_int. | |||
| 2018-08-03 | Coq: generalise dependent pair handling a little | Brian Campbell | |
| 1. for monadic values (not in a terribly useful way, though) 2. for more types | |||
| 2018-08-02 | Coq: limit eauto to ensure termination in reasonable time | Brian Campbell | |
| 2018-08-02 | Fill in more Coq builtins for aarch64 | Brian Campbell | |
| 2018-08-01 | Coq: implicit range conversions for function arguments, debug tracing | Brian Campbell | |
| The new option -dcoq_debug_on takes a list of functions to output tracing on. | |||
| 2018-07-18 | Coq: constraint solving improvements | Brian Campbell | |
| Use eauto so that user-added hints are more flexible, example with Replicate in aarch64, dropped zbool to prevent slow proof searches (and preprocessing deals with boolean comparisons now). Report failed constraints after preprocessing; Separate preprocessing tactic out. | |||
| 2018-07-17 | Coq: integer shifts | Brian Campbell | |
| 2018-07-17 | Coq: add printing stubs | Brian Campbell | |
| 2018-07-17 | Coq: handle E_constraint properly | Brian Campbell | |
| Adds missing constraints for aarch64 | |||
| 2018-07-16 | Coq: add support for more complex atom types | Brian Campbell | |
| As a result, add proof to pow2. | |||
| 2018-07-12 | Coq: handle all bool conjunctions/disjunctions | Brian Campbell | |
| 2018-07-12 | Coq: remove unnecessary constraint on foreach loops | Brian Campbell | |
| 2018-07-09 | Bits for bits of aarch64 in coq | Brian Campbell | |
| 2018-07-07 | Coq: bbv have reorganised their repository | Brian Campbell | |
| 2018-07-07 | Coq: precise generic vectors | Brian Campbell | |
| (probably still some pattern matching to do, but I don't think the models use that) | |||
| 2018-07-07 | Coq: supply index constraint in for loops | Brian Campbell | |
| 2018-07-07 | Coq: eq_range should take proofs | Brian Campbell | |
| 2018-07-06 | Coq: use List.In predicates in constraint solving; make other bits robust | Brian Campbell | |
| 2018-07-05 | Coq: get index_list right | Brian Campbell | |
| 2018-07-02 | Coq: add some string functions | Brian Campbell | |
| 2018-07-02 | Coq: replace simpl in a tactic with a more precise "change" | Brian Campbell | |
| Prevents partial unfolding of Z.pow. | |||
| 2018-06-25 | Coq: add typeclass based comparison, and instantiate for enums | Brian Campbell | |
| 2018-06-25 | Coq: automatic cast introduction | Brian Campbell | |
| 2018-06-22 | Precise bitvector subrange functions for Coq. | Brian Campbell | |
| Also fix the constraints in the standard prelude files, add a couple of useful cast rewriting lemmas. | |||
| 2018-06-22 | Add coq builtins for MIPS | Brian Campbell | |
| 2018-06-22 | Coq: library updates, esp extending bitvector multiplies, Undefined | Brian Campbell | |
| 2018-06-22 | Coq: project away range types in comparisons | Brian Campbell | |
| 2018-06-20 | Coq: reverse_endianness | Brian Campbell | |
| 2018-06-20 | Coq: Tidy up libraries, export String | Brian Campbell | |
| 2018-06-20 | Coq: a few more ops | Brian Campbell | |
| 2018-06-19 | Coq: library name update (as we did for Lem) | Brian Campbell | |
| 2018-06-18 | Separate bitvector access/update from generic vector access in std prelude | Brian Campbell | |
| (necessary for backends where they're different) Coq uint/sint and related fixes | |||
| 2018-06-18 | Coq: update prompt monad wrt Lem | Brian Campbell | |
| 2018-06-13 | Coq: library updates, informative type errors, fix type aliases | Brian Campbell | |
| (The last bit is to declare type aliases as Type so that Coq uses the type scope for notation, so * is prod, not multiplication). | |||
| 2018-06-12 | Coq: support for range type, along with related existential improvements | Brian Campbell | |
| Plus - Complete solver support for inequalities - Reduce exponentials in solver | |||
| 2018-06-12 | Coq: add more to library | Brian Campbell | |
| 2018-06-08 | Coq: existential and constraint solving work | Brian Campbell | |
| - add existential unpacking for function arguments - add mechanism for using properties for existentially typed top-level values (useful for the typechecking tests) - support for length_list and In in Coq constraint solving | |||
| 2018-06-08 | Coq: some very basic existential support | Brian Campbell | |
| Only single variable in places, only packed at literals and variables, no unpacking | |||
| 2018-05-25 | Coq: fill in some built-ins | Brian Campbell | |
| vector_access is a bit hacky at the moment - it expects a constraint to be shown between the index and the list size, but we don't track list sizes in general | |||
