diff --git a/theories/gmultiset.v b/theories/gmultiset.v
index f6a8a17158c3358a25b78bd5ab55e594ae247785..a4960ac2250cd38f1c62be7291963736180160bc 100644
--- a/theories/gmultiset.v
+++ b/theories/gmultiset.v
@@ -397,6 +397,14 @@ Section more_lemmas.
   Lemma list_to_set_disj_app l1 l2 :
     list_to_set_disj (l1 ++ l2) =@{gmultiset A} list_to_set_disj l1 ⊎ list_to_set_disj l2.
   Proof. induction l1; multiset_solver. Qed.
+  Lemma elem_of_list_to_set_disj x l:
+    x ∈@{gmultiset A} list_to_set_disj l ↔ x ∈ l.
+  Proof.
+    induction l as [|?? IH]; [set_solver|split].
+    - intros [->%gmultiset_elem_of_singleton| Hin]%gmultiset_elem_of_disj_union;
+        [set_solver|by right; apply IH].
+    - intros [-> |]%elem_of_cons; rewrite ?list_to_set_disj_cons; multiset_solver.
+  Qed.
   Global Instance list_to_set_disj_perm :
     Proper ((≡ₚ) ==> (=)) (list_to_set_disj (C:=gmultiset A)).
   Proof. induction 1; multiset_solver. Qed.
@@ -603,6 +611,12 @@ Section more_lemmas.
   Lemma gmultiset_difference_subset X Y : X ≠ ∅ → X ⊆ Y → Y ∖ X ⊂ Y.
   Proof. multiset_solver. Qed.
 
+  Lemma gmultiset_difference_disj_union_r X Y Z : X ∖ Y = (X ⊎ Z) ∖ (Y ⊎ Z).
+  Proof. multiset_solver. Qed.
+
+  Lemma gmultiset_difference_disj_union_l X Y Z : X ∖ Y = (Z ⊎ X) ∖ (Z ⊎ Y).
+  Proof. multiset_solver. Qed.
+
   (** Mononicity *)
   Lemma gmultiset_elements_submseteq X Y : X ⊆ Y → elements X ⊆+ elements Y.
   Proof.