aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* Fix a proofGravatar Jason Gross2018-04-18
|
* Change a proof in src/Util/OptionGravatar Jason Gross2018-04-18
| | | | | | This was causing issues with bug minimization because some hints seem to follow [Require], not [Import], and so when [eauto] got stronger, this proof was failing.
* Merge pull request #335 from mit-plv/cpsloopsGravatar Andres Erbsen2018-04-18
|\ | | | | comprehensive loops framework with complete proof theory
* | Actually display the error messages from pipeline failuresGravatar Jason Gross2018-04-18
| | | | | | | | | | See https://github.com/coq/coq/issues/7291 and https://github.com/mit-plv/fiat-crypto/issues/349#issuecomment-382180578
* | Add a Z.cast2 case to bounds extractionGravatar Jason Gross2018-04-18
| |
* | Also include the syntax tree in bounds analysis errorsGravatar Jason Gross2018-04-18
| | | | | | | | This should fix #349 (or at least most of it).
* | move requires to top of fileGravatar Jade Philipoom2018-04-11
| |
* | barrett reduction definition and proofGravatar Jade Philipoom2018-04-11
| |
* | add a list lemmaGravatar Jade Philipoom2018-04-11
| |
* | add some lemmas aboud div and modGravatar Jade Philipoom2018-04-11
| |
* | Add new assembly-mimicking operations rshi, cc_m, and cc_lGravatar Jade Philipoom2018-04-11
| |
* | fix trashed carry flagGravatar Jade Philipoom2018-04-11
| |
* | remove commentGravatar Jade Philipoom2018-04-11
| |
* | add a comment to rerun buildGravatar Jade Philipoom2018-04-11
| |
* | Automate some proofs a bit moreGravatar Jason Gross2018-04-11
| |
* | try to fix build on coq masterGravatar Jade Philipoom2018-04-11
| |
* | prove stronger bound on quotient error for barrett reductionGravatar Jade Philipoom2018-04-11
| |
* | Update number/string conversionsGravatar Jason Gross2018-04-09
| | | | | | | | To updated version of https://github.com/coq/coq/pull/6597
* | package properties of weight functions into a recordGravatar Jade Philipoom2018-04-09
| |
* | relocate and prove an admitGravatar Jade Philipoom2018-04-09
| |
* | reorganization: move more things into BaseConversionGravatar Jade Philipoom2018-04-09
| |
* | better factoring-out of mul_converted stuff, define saturated arith operationsGravatar Jade Philipoom2018-04-06
| |
* | Use a simpler form of UncurryingGravatar Jason Gross2018-04-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After in-person discussion with Andres, we decided that, because the previous form of uncurrying was only half-uncurried (not including identifiers nor lambdas passed to other lambdas), and the strongest driver of a full uncurrying pass would be having an easier-to-visualize intermediate representation / knowing more clearly what the pipeline is doing, and the changes required for making this a full uncurrying pass would be global to the pipeline (require changing the type of identifiers), we would instead go back the version of uncurrying that I initially proposed, where we only uncurry the top-level function. Note that we create a slightly more complicated term (with more application nodes) than we have to; if we instead took in `@expr (@expr var) t` rather than `@expr var t`, we wouldn't introduce needless abstractions. However, the current form admits an extremely simple proof of correctness, which doesn't even require well-formedness of the expression tree.
* | Stick an uncurry pass in the pipelineGravatar Jason Gross2018-04-04
| | | | | | | | | | This allows us to (a) consolidate the constant and non-constant pipelines and (b) vastly simplify the call-with-id-continuation logic.
* | Add UncurryGravatar Jason Gross2018-04-04
| | | | | | | | | | This pass uncurries all applied lambdas. Care is taken to not do beta reduction and to not introduce spurious `Abs` or `App` nodes.
* | pass-through after Jason's reviewGravatar Jade Philipoom2018-04-03
| |
* | pass-through after Andres's review in #334Gravatar Jade Philipoom2018-04-03
| |
* | move requires to the top of the fileGravatar Jade Philipoom2018-04-03
| |
* | make montgomery not depend on intermediate weight for multiplication being ↵Gravatar Jade Philipoom2018-04-03
| | | | | | | | the sqrt of the usual weight
* | rename w_half to w_mulGravatar Jade Philipoom2018-04-03
| |
* | make a more general kind of mul_converted_halve that produces the correct ↵Gravatar Jade Philipoom2018-04-03
| | | | | | | | carries even in cases where w is not necessarily the square of w', but potentially some other power
* | move some lemmas to ZUtil/ListUtilGravatar Jade Philipoom2018-04-03
| |
* | move some shared lemmas between Columns/Rows into a Saturated moduleGravatar Jade Philipoom2018-04-03
| |
* | reprint Montgomery output (order of additions in Rows.flatten changed)Gravatar Jade Philipoom2018-04-03
| |
* | more proof automation in RowsGravatar Jade Philipoom2018-04-03
| |
* | automate some Rows proofsGravatar Jade Philipoom2018-04-03
| |
* | organize Rows into sectionsGravatar Jade Philipoom2018-04-03
| |
* | organize proofs into sectionsGravatar Jade Philipoom2018-04-03
| |
* | more cleanup of flatten proofsGravatar Jade Philipoom2018-04-03
| |
* | clean up some [flatten] proofsGravatar Jade Philipoom2018-04-03
| |
* | move some lemmas/hints to ListUtilGravatar Jade Philipoom2018-04-03
| |
* | fix typo and add booleans for carriesGravatar Jade Philipoom2018-04-03
| |
* | changing Montgomery notationsGravatar Jade Philipoom2018-04-03
| |
* | make add_with_get_carry with a constant zero for the carry translate to ↵Gravatar Jade Philipoom2018-04-03
| | | | | | | | add_get_carry
* | inline shifts for Montgomery exampleGravatar Jade Philipoom2018-04-03
| |
* | Make Montgomery example use row-wise flatten (involves adding Nat.max, ↵Gravatar Jade Philipoom2018-04-03
| | | | | | | | List.tl, and List.hd to the pipeline)
* | add Rows.from_associational and some more length proofs that allow ↵Gravatar Jade Philipoom2018-04-03
| | | | | | | | Rows.length_from_associational
* | move mul_converted to its own moduleGravatar Jade Philipoom2018-04-03
| |
* | finish flatten_partitions and slightly change the format of _partitions ↵Gravatar Jade Philipoom2018-04-03
| | | | | | | | lemma statements
* | proved admits about sum_rowsGravatar Jade Philipoom2018-04-03
| |