aboutsummaryrefslogtreecommitdiff
path: root/src/Reflection/TypeInversion.v
Commit message (Collapse)AuthorAge
* Handle inversion of homogenous products in reflective type inversionGravatar Jason Gross2017-04-01
|
* Switch to fully uncurried form for reflectionGravatar Jason Gross2017-03-01
| | | | | | | | | | | This will eventually make a number of proofs easier. Unfortunately, the correctness lemmas for AddCoordinates and LadderStep no longer work (because of different arities), and there's a proof in Experiments/Ed25519 that I've admitted. The correctness lemmas will be easy to re-add when we have a more general version that handle arbitrary type shapes.
* Deduplicate codeGravatar Jason Gross2017-02-28
| | | | There was duplicate code in Reflection.Equality and Reflection.TypeInversion
* Better cleanup in type_inversionGravatar Jason Gross2017-02-13
|
* Better type_inversionGravatar Jason Gross2017-02-13
| | | | Now we don't loop on [Unit = Unit] hypotheses, clearing them instead.
* Add inversion_typeGravatar Jason Gross2017-02-13
|
* Fix lazymatch orderingGravatar Jason Gross2017-02-01
|
* More powerful preinvert_one_typeGravatar Jason Gross2017-02-01
| | | | It's be nice if we could find a uniform way to do this for all flat_types which resolve to constructors...
* Add invert_exprGravatar Jason Gross2017-02-01