summaryrefslogtreecommitdiff
path: root/Generic.agda
AgeCommit message (Collapse)Author
2019-09-29port to agda/2.6.0.1 and agda-stdlib/1.1Helmut Grohne
* Data.Vec.lookup changed parameter order. * A number of symbols were moved from Data.Maybe to submodules. * In a number of occasions, agda no longer figures implicit arguments and they had to be made explicit. * We can no longer use heterogeneous proofs inside equational reasoning for propositional equality. Use heterogeneous equational reasoning. * Stop importing proof-irrelevance as that would require K.
2019-03-31Generic.toList-fromList is Data.Vec.Properties.toList∘fromListHelmut Grohne
2019-03-31Generic.just-injective is Data.Maybe.just-injectiveHelmut Grohne
2018-11-25port to agda/2.5.4.1 and agda-stdlib/0.17Helmut Grohne
2018-11-25reorganize equality importsHelmut Grohne
Since we are working with multiple setoids now, it makes more sense to qualify their members. Follow the "as P" pattern from the standard library. Also stop importing those symbols from Relation.Binary.Core as later agda-stdlib versions will move them away. Rather than EqSetoid or PropEq, use P.setoid consistently.
2018-11-25fix missing import of "length"Helmut Grohne
Broken in parent commit.
2018-01-02length-replicate is now upstream as wellHelmut Grohne
2014-02-24define mapMV via sequenceVHelmut Grohne
This makes a few proofs easier and eliminates the need for sequence-map entirely.
2014-02-17Merge branch feature-partial-getlen into masterHelmut Grohne
It allows defining get functions that are only defined for some vector lengths. It retains backwards compatibility with the previous state via a VecVec compatibility module. The biggest benefit is that now standard library functions such as tail, take and drop can be passed to bff. Conflicts: heavy BFF.agda (imports, bff type clash) Bidir.agda (imports, heavy bff type clash in theorem-{1,2} and lemma-get-mapMV) Generic.agda (imports) Precond.agda (imports, bff type clash in assoc-enough)
2014-02-07eliminate useless withsHelmut Grohne
2014-02-07replace rewrite with cong where feasibleHelmut Grohne
2014-02-03make things compile with 2.3.0.1Helmut Grohne
* Remove let patter , match = foo usage * Remove Qualified.infix-symbol usage * Add non-obvious absurd patterns * Qualify constructors
2014-01-30express VecBFF via PartialVecBFFHelmut Grohne
2014-01-28improve readability using _∋_≈_ instead of Setoid._≈_Helmut Grohne
2014-01-28use the indexed version of the Vec SetoidHelmut Grohne
2014-01-27Merge branch feature-deleteHelmut Grohne
Most conflicts stem from varying imports or added functions and a take-both approach merges them. A notable exception is theorem-2, where a new result sequence-cong was required. Apart from that, theorem-2 could be taken almost verbatim from feature-delete albeit its type coming from feature-decsetoid. Conflicts: Bidir.agda FinMap.agda Generic.agda Precond.agda
2014-01-27cleanup unused functions and useless stepsHelmut Grohne
2014-01-24prove theorem-2 in the presence of deleteHelmut Grohne
The biggest piece of this puzzle was establishing get <$> mapMV f v == mapMV f (get v) provided that the result of mapMV is just something. lemma-union-not-used lost a "map just", but could be retained in structure.
2014-01-17show that Vec is an indexed SetoidHelmut Grohne
We get the plain Setoid for free then.
2014-01-16generalize lemma-insert-same to arbitrary SetoidsHelmut Grohne
The general idea is to enable bff to use arbitrary DecSetoids. * assoc needs to learn about DecSetoid * checkInsert needs to learn about DecSetoid * InsertionResult needs to learn about Setoid * Parameters to InsertionResult.same become weaker * lemma-checkInsert-restrict should work with weaker same * lemma-insert-same needs to learn about Setoid
2013-12-16add a mapM variant on the Maybe monad on VecsHelmut Grohne
2013-12-16move generic functions to a new Generic moduleHelmut Grohne