Números de ecuaciones en un entorno dividido confusos por el teorema thref

Números de ecuaciones en un entorno dividido confusos por el teorema thref

Cuando uso ntheoremla threfopción, cada vez que uso el amsmath splitcomando, la numeración avanza uno.

Aquí hay un ejemplo:

\documentclass{article}

\usepackage{amsmath}
\usepackage[amsmath,thref]{ntheorem}

\begin{document}

\begin{equation}
    a = b
\end{equation}

\begin{equation}
    b = c
\end{equation}

\begin{equation}
    \begin{split}
        a & = b\\
        &= c
    \end{split}
\end{equation}

\end{document}

La ecuación final debería estar numerada (3), pero en su lugar está numerada (4). La eliminación threfresuelve el problema.

¿Alguien puede decirme cómo solucionar este problema? Cualquier ayuda es muy apreciada.

Respuesta1

Normalmente desaconsejo su uso ntheorem, pero es posible que usted prefiera hacerlo amsthm. Puedes resolver el problema dethref pornousando la opción y pasando al cleverefpaquete mucho más potente.

\documentclass{article}

\usepackage{amsmath}
\usepackage[amsmath]{ntheorem}
\usepackage{cleveref}

\newtheorem{theorem}{Theorem}

\begin{document}

\begin{theorem}\label{test}
\begin{equation}
    a = b
\end{equation}
\end{theorem}

\Cref{test} says something interesting.

\begin{equation}
    b = c
\end{equation}

\begin{equation}
    \begin{split}
        a & = b\\
        &= c
    \end{split}
\end{equation}

\end{document}

ingrese la descripción de la imagen aquí

Respuesta2

Solución alternativa: reemplazar splitcon el alignedmedio ambiente:

\documentclass{article}

\usepackage{amsmath}
\usepackage[amsmath,thref]{ntheorem}

\begin{document}

\begin{equation}
    a = b
\end{equation}

\begin{equation}
    b = c
\end{equation}

\begin{equation}
    \begin{aligned}
        a & = b\\
        &= c
    \end{aligned}
\end{equation}

\end{document} 

ingrese la descripción de la imagen aquí

Respuesta3

Puedes probar esto:

\documentclass{article}

\usepackage{amsmath}
\usepackage[amsmath,thref]{ntheorem}
\makeatletter
\newcommand\forcefirstchoice{\firstchoice@false}
\makeatother

\begin{document}

\begin{equation}
    a = b
\end{equation}

\begin{equation}
    b = c
\end{equation}

\begin{equation}\forcefirstchoice
    \begin{split}
        a & = b\\
        &= c
    \end{split}
\end{equation}


\begin{equation}\forcefirstchoice
    \begin{split}
        a & = b\\
        &= c
    \end{split}
\end{equation}

\end{document}

Producción:

cita en bloque

información relacionada