Skip to content
Snippets Groups Projects

Fix inconsistencies in `lookup` and `elem_of` lemmas for `list`

Merged Robbert Krebbers requested to merge robbert/list_fmap_lemmas into ci/refactor_staging
  • Rename lemmas elem_of_list_X into list_elem_of_X to be consistent with the list_lookup_X lemmas. Some lemmas contained other inconsistencies (e.g., _1 and _2 swapped), see CHANGELOG for details.
  • Change the order of the conjunction in list_lookup_fmap_Some. The new version is (f <$> l) !! i = Some y ↔ ∃ x, y = f x ∧ l !! i = Some x, which makes it consistent with list_elem_of_fmap and the corresponding lemmas for sets and maps. To be continued in other MR, insert link
  • Rename list_alter_fmaplist_fmap_alter and remove list_alter_fmap_mono which was a monomorphic duplicate.

With the exception of the list_elem_of_fmap change, all changes in this MR can be applied by sed. It would be best to merge it together with !526 (merged) so we only have to run a giant sed script once on reverse dependencies.

Edited by Robbert Krebbers

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • Ralf Jung
  • Ralf Jung
  • added 1 commit

    Compare with previous version

  • Robbert Krebbers changed the description

    changed the description

  • There was a bug in the MR description and CHANGELOG, I said that list_elem_of_fmap changed, but it is list_lookup_fmap_Some that changed.

  • added 1 commit

    Compare with previous version

  • Robbert Krebbers mentioned in merge request !532

    mentioned in merge request !532

  • Robbert Krebbers mentioned in merge request iris!1008

    mentioned in merge request iris!1008

  • Robbert Krebbers added 12 commits

    added 12 commits

    • fea65407...b7eaaf91 - 2 earlier commits
    • f85c45f4 - Follow same scheme for `multiplicity_singleton`.
    • 211ee09d - Follow same scheme for list lemmas.
    • 0a52e84c - CHANGELOG.
    • fead4470 - Merge branch 'robbert/eq_lemmas' into 'ci/refactor_staging'
    • d9a6e55e - Make `lookup` and `elem_of` lemmas for `list` consistent with those for map and set.
    • 44d3349c - CHANGELOG.
    • 1235cdaa - Also fix `elem_of_list` → `list_elem_of` inconsistency.
    • 4aa3ffdf - Rename `list_alter_fmap` → `list_fmap_alter`, remove `list_alter_fmap_mono`.
    • d875d10f - Fix bug in CHANGELOG.
    • f6820a98 - Rename `list_elem_of_fmap_2_alt` → `list_elem_of_fmap_2'`.

    Compare with previous version

  • Robbert Krebbers changed the description

    changed the description

  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Please register or sign in to reply
    Loading