diff --git a/theories/fin_sets.v b/theories/fin_sets.v
index 11789c4aaf74ae027aaf65c3d5ce739a8a8cbbbc..932ff62f69b1b40eae8772a19560f51be4048dd2 100644
--- a/theories/fin_sets.v
+++ b/theories/fin_sets.v
@@ -35,6 +35,10 @@ Proof.
 Defined.
 
 (** * The [elements] operation *)
+Global Instance set_unfold_elements X x P :
+  SetUnfold (x ∈ X) P → SetUnfold (x ∈ elements X) P.
+Proof. constructor. by rewrite elem_of_elements, (set_unfold (x ∈ X) P). Qed.
+
 Global Instance elements_proper: Proper ((≡) ==> (≡ₚ)) (elements (C:=C)).
 Proof.
   intros ?? E. apply NoDup_Permutation.