diff --git a/algebra/agree.v b/algebra/agree.v
index 6479419c0d202ed1d2d02664592cb5c03a5c8579..a62b288f26eaad80b7dc805c42eba32bdddfcb69 100644
--- a/algebra/agree.v
+++ b/algebra/agree.v
@@ -148,8 +148,8 @@ Arguments agreeC : clear implicits.
 Arguments agreeR : clear implicits.
 
 Program Definition agree_map {A B} (f : A → B) (x : agree A) : agree B :=
-  {| agree_car n := f (x n); agree_is_valid := agree_is_valid x |}.
-Solve Obligations with auto using agree_valid_S.
+  {| agree_car n := f (x n); agree_is_valid := agree_is_valid x;
+     agree_valid_S := agree_valid_S _ x |}.
 Lemma agree_map_id {A} (x : agree A) : agree_map id x = x.
 Proof. by destruct x. Qed.
 Lemma agree_map_compose {A B C} (f : A → B) (g : B → C) (x : agree A) :
diff --git a/prelude/base.v b/prelude/base.v
index fc03e031f598d2131524c7b9e6fad0a2314b1c85..c4c2eb8227a2d20700f5554db1a3a476ad273268 100644
--- a/prelude/base.v
+++ b/prelude/base.v
@@ -7,6 +7,7 @@ structures. *)
 Global Generalizable All Variables.
 Global Set Automatic Coercions Import.
 Global Set Asymmetric Patterns.
+Global Unset Transparent Obligations.
 From Coq Require Export Morphisms RelationClasses List Bool Utf8 Program Setoid.
 Obligation Tactic := idtac.