Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(data/alist,data/finmap): always insert key-value pair #722

Merged
merged 2 commits into from
Feb 18, 2019

Conversation

spl
Copy link
Collaborator

@spl spl commented Feb 13, 2019

  • Changed {alist,finmap}.insert to always insert the key-value pair instead of doing nothing if the inserted key is found. This allows for useful theorems such as lookup_insert.
  • Added list.keys and used key membership instead of exists/forall. This makes proofs easier in some places.
  • Added a few other useful theorems such as lookup_eq_none, lookup_erase, lookup_erase_ne.

  • reviewed and applied the coding style: coding, naming
  • make sure definitions and lemmas are put in the right files
  • make sure definitions and lemmas are not redundant

* Changed {alist,finmap}.insert to always insert the key-value pair
  instead of doing nothing if the inserted key is found. This allows for
  useful theorems such as lookup_insert.
* Added list.keys and used key membership instead of exists/forall. This
  makes proofs easier in some places.
* Added a few other useful theorems such as lookup_eq_none,
  lookup_erase, lookup_erase_ne.
@cipher1024 cipher1024 self-assigned this Feb 13, 2019
@spl
Copy link
Collaborator Author

spl commented Feb 18, 2019

Any feedback on this? I'd like to continue building on top of it but don't want to start if it's not going to be accepted.

@cipher1024 cipher1024 merged commit 9a2c13a into master Feb 18, 2019
@spl spl mentioned this pull request Feb 19, 2019
@spl spl deleted the finmap-insert branch February 19, 2019 06:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants