summaryrefslogtreecommitdiff
path: root/CheckInsert.agda
AgeCommit message (Collapse)Author
2020-08-01move imports for agda-stdlib 1.3Helmut Grohne
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.
2018-11-25remove unused importsHelmut Grohne
These will happen to break with later agda-stdlib releases.
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-01-02remove lemma-lookupM-insert-other in favour of lookup∘update′Helmut Grohne
2014-11-26fix compilation against agda stdlib 0.9Helmut Grohne
2014-10-30make more parameters implicitHelmut Grohne
All of these changes were applied to functions of type ... -> (x : ...) -> ... == x -> ... where x could be preceded by just making the x implicit, because it can be uniquely deduced from the equality proof.
2014-10-20change restrict and fromAscList to work with VecHelmut Grohne
While they do work with Lists and there is no inherent need to know the length, they are most often invoked in a context where a Vec needs to be converted to a List using toList. By changing them to work with Vec, quite a few toList calls can be dropped.
2014-10-16sym result of lemma-lookupM-{i,checkI}nsert-otherHelmut Grohne
Typically we have the complex term on the LHS and the simplified term on the RHS. These lemmata did it otherwise and by symming them, we save two syms.
2014-10-15remove lemma-just≢nothingHelmut Grohne
Special case of contradiction.
2014-01-28there is no need to work with IsPreorderHelmut Grohne
2014-01-28use the indexed version of the Vec SetoidHelmut Grohne
2014-01-23show a stronger lemma-checkInsert-restrictHelmut Grohne
We can actually get semantic equality there without requiring anything else. Indeed this was already hinted in the BX for free paper that says, that lemma-1 holds in semantic equality.
2014-01-17generalize checkInsert to arbitrary SetoidsHelmut Grohne
This is another step towards permitting arbitrary Setoids in bff.
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-02-01employ insertionresult in lemma-lookupM-checkInsertHelmut Grohne
2013-01-28drop the insert- prefix from the insertionresult ctorsHelmut Grohne
2013-01-17Merge branch view2 into masterHelmut Grohne
Get rid of checkInsertProof entirely. Conflicts: Bidir.agda (change of lemma-just\==nnothing vs. checkInsertProof removal)
2013-01-14define a more useful version of lemma-just\==nnothingHelmut Grohne
If one had a parameter of type just x \== nothing it could be simply refuted by case splitting. So the cases where lemma-just\==nnothing was used always employed trans to combine two results. The new version takes both results instead.
2013-01-12introduce a proper view on checkInsertHelmut Grohne
Thanks to Joachim Breitner for helping me to work out the definition of InsertionResult and to Daniel Seidel for helping me understand what makes a view.
2013-01-10reduce a precondition of lemma-checkInsert-lookupMHelmut Grohne
Now it looks a lot more like lemma-lookupM-insert-other, so rename it to lemma-lookupM-checkInsert-other.
2013-01-10add new lemma-checkInsert-lookupMHelmut Grohne
Suggested by Joachim Breitner.
2013-01-09simplify lemma-lookupM-checkInsert using case-splitHelmut Grohne
2012-11-22shorten line length of lemma-lookupM-checkInsertHelmut Grohne
2012-11-02rewrite checkInsert using "... |" notationHelmut Grohne
Less characters => more readable.
2012-10-25rename lemma-from-just to just-injectiveHelmut Grohne
We already have suc-injective and \::-injective. Consistency!
2012-10-22finally parameterize CheckInsertHelmut Grohne
Also adapt depending modules. Long lines generally become shorter. The misleading name "EqInst" (hiding the decidability) got discarded.
2012-09-26use _\==n_ and _\notin_ instead of \negHelmut Grohne
Consistent. Shorter.
2012-09-26import [_] instead of Reveal_is_Helmut Grohne
This makes things a little shorter and more readable.
2012-09-18one more application of lemma-just\==nnothingHelmut Grohne
2012-06-05move checkInsert and related properties to CheckInsert.agdaHelmut Grohne