# Why is \restriction a relation-symbol?

I do not understand why \restriction (from package amssymb) is defined to be a relation-symbol. It is certainly not one in mathematics... Is there any special reason, or should I just consider it a bug and redefine it using \mathbin?

I'm not sure why amssymb defines \restriction as a math relation symbol.

\DeclareMathSymbol{\upharpoonright} {\mathrel}{AMSa}{"16}
\global\let\restriction\upharpoonright


Given these definitions, you can “fix” it according to your taste by making it an ordinary or binary operation symbol:

\documentclass{article}
\usepackage{amsmath,amssymb}

\DeclareMathSymbol{\ORDrestriction}{\mathord}{AMSa}{"16}
\DeclareMathSymbol{\BINrestriction}{\mathbin}{AMSa}{"16}

\begin{document}

$f\restriction A$ (relation)

$f\ORDrestriction A$ (ordinary)

$f\BINrestriction A$ (binary operation)

\end{document}


Once you have made your choice, you can remove the undesired definition and also the capitalized prefix.

If you want the relation spacing but also to avoid line breaks after the symbol, you can do

\renewcommand{\restriction}{\upharpoonright\nolinebreak}


If you prefer cargo cult programming

\renewcommand{\restriction}{\upharpoonright\nobreak}

• @campa \nobreak is not documented in the LaTeX manual. ;-) Oct 8 '20 at 11:53
• Thanks. This raises a good question: I simply did \def\rt{\mathbin{\restriction}} to make it a binary operation. Is \DeclareMathSymbol{\rt}{\mathbin}{AMSa}{"16} a better option, and why? Oct 8 '20 at 12:05
• @user21820 If you want to use a different name, there's basically no difference. The latter is slightly more efficient. Oct 8 '20 at 12:24
• I see, ok thanks! Oct 8 '20 at 12:35