Skip to content

Implement `big_sepL_delete`

Dan Frumin requested to merge dfrumin/iris-coq:big_sepl_delete into master

The big_sepL_delete lemma is quite useful and is akin to big_sepM_delete.

  Lemma big_sepL_delete Φ l i x :
    l !! i = Some x →
    ([∗ list] k↦y ∈ l, Φ k y) ⊣⊢ Φ i x ∗ [∗ list] k↦y ∈ l, ⌜ k ≠ i ⌝ → Φ k y.

I use it when big_sepL_lookup_acc is not enough, ie when I need to have access to the rest of the list as well.

I don't think that it can be implemented on the level of monoids, because it relies on the fact that we have this ⌜ k ≠ i ⌝ assumption. Furthermore, I was not able to come up with a shorter proof. If anyone knows how to compresses the two parts of the proof into one, I'd really appreciate that.

Merge request reports