Como incorporar colchetes dentro de um ambiente `\ensuremath` dentro de um `\newglossaryentry`?

Como incorporar colchetes dentro de um ambiente `\ensuremath` dentro de um `\newglossaryentry`?

Executando pdflatexno seguinte documento

\documentclass{article}
\usepackage{glossaries-extra}
\newglossaryentry{injective}{name={\ensuremath{X\overset{1:1}{\rightarrow}Y}},description={injective function}}
\makeglossaries
\begin{document}
\glsadd{injective}
\printglossaries
\end{document}

produz o seguinte erro de compilação:

! Argument of \@tempc has an extra }.
<inserted text> 
                \par 
l.3 ...arrow}Y}},description={injective function}}

Responder1

\oversetnão é robusto, portanto falha ao gravar no arquivo. Tentar

...X\protect\overset...

Aliás, eu provavelmente usaria amsmathe \xrightarrow{1{:}1}em vez da \oversetconstrução

informação relacionada