diff --git a/algebra/cmra.v b/algebra/cmra.v index 93ee00523cddf35139e7f2a6e0c5142c77394a8c..474b1af4109e549e3da8a257d5fae1f897859af0 100644 --- a/algebra/cmra.v +++ b/algebra/cmra.v @@ -1201,6 +1201,11 @@ Section option. ✓{n} (my ⋅ Some x) → my = None. Proof. rewrite comm. by apply exclusiveN_Some_l. Qed. + Lemma exclusive_Some_l x `{!Exclusive x} my : ✓ (Some x ⋅ my) → my = None. + Proof. destruct my. move=> /(exclusive_l x) []. done. Qed. + Lemma exclusive_Some_r x `{!Exclusive x} my : ✓ (my ⋅ Some x) → my = None. + Proof. rewrite comm. by apply exclusive_Some_l. Qed. + Lemma Some_included x y : Some x ≼ Some y ↔ x ≡ y ∨ x ≼ y. Proof. rewrite option_included; naive_solver. Qed. Lemma Some_included' `{CMRATotal A} x y : Some x ≼ Some y ↔ x ≡ y ∨ x ≼ y.