The Coq manual (Simultaneous definition of terms and notations) states
Thanks to reserved notations, inductive, co-inductive, record, recursive and corecursive definitions can use customized notations.
I would like to define something like
Reserved Notation "A +' B" (at level 80).
Record foo T :=
{ add : T -> T ->T;
commute a b : a +' b = b +' a
where "a +' b" := (add a b)
}.
but I get
Error: Unknown interpretation for notation "_ +' _".