diff --git a/theories/base.v b/theories/base.v
index 538dd416a6fc4b468ad6ea82894805540273b6c3..ba67b79b870a3633ce5dc29d3ba75f2bd6155311 100644
--- a/theories/base.v
+++ b/theories/base.v
@@ -190,6 +190,11 @@ embedded logics. *)
Notation "'True'" := True (format "True") : type_scope.
Notation "'False'" := False (format "False") : type_scope.
+(** Change [forall] into a notation in order to enable overloading. *)
+Notation "'forall' x .. y , P" := (forall x, .. (forall y, P%type) ..)
+ (at level 200, x binder, y binder, right associativity,
+ only parsing) : type_scope.
+
(** * Equality *)
(** Introduce some Haskell style like notations. *)