O contador de páginas não funciona na equação no topo de uma nova página

O contador de páginas não funciona na equação no topo de uma nova página

No exemplo abaixo (desculpe, não sei como diminuir), tento incluir o número da página na numeração da equação, mas no topo de uma nova página, a equação é numerada pela página anterior e não pela página em que está realmente. Indico onde ocorre o problema com uma frase que faz referência à equação numerada incorretamente. Como você pode ver, no topo da página 3, todas as 4 equações do alignambiente são numeradas pela página anterior.

Vejo o mesmo problema com qualquer ambiente semelhante a um teorema.

Motivação: é muito mais fácil encontrar uma equação (ou qualquer estrutura semelhante a um teorema) em um artigo ou livro grande se a referência indicar o número da página em vez da seção ou qualquer outra coisa.)

\documentclass[12pt,letterpaper]{amsart}
\numberwithin{equation}{page}
\begin{document}
\begin{equation}
  \frac12=\frac24\label{eq:1}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:2}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:3}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:4}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:5}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:6}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:7}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:8}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:9}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:10}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:11}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:12}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:13}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:14}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:15}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:16}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:17}  
\end{equation}
Equation \eqref{eq:17} is on page \pageref{eq:17}, not on the
previous page.
\begin{equation}
  \frac12=\frac24\label{eq:18}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:19}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:20}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:21}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:22}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:23}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:24}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:25}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:26}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:27}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:28}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:29}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:30}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:31}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:32}  
\end{equation}
\begin{align}
  \frac12&=\frac24\label{eq:33} \\
  \frac12&=\frac24\\
  \frac12&=\frac24\\
  \frac12&=\frac24
\end{align}
Equation \eqref{eq:33} is on page \pageref{eq:33}, not on the previous
page.
\begin{equation}
  \frac12=\frac24\label{eq:34}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:35}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:36}  
\end{equation}


\end{document}

Adicionado (obrigado!!!): O perpagepacote funcionou perfeitamente. Uma observação: requer uma dose extra de látex. Eu poderia até usá-lo para ambientes semelhantes a teoremas. Aqui está o que eu precisava fazer para que todos os teoremas fossem numerados por página. Observe que a redefinição do contador teve que ser feita após a definição do thmambiente, pois o contador thmcontador não existia antes.

\mdtheorem[style=theorem]{thm}{Theorem}
\let\origthethm\thethm
\MakePerPage{thm}
\renewcommand{\thethm}{\theperpage.\origthethm}

Responder1

Use o perpagepacote desenvolvido para tais per - pageatividades. O valor correto da página pode ser recuperado com a \theperpagemacro.

\documentclass[12pt,letterpaper]{amsart}

\let\origtheequation\theequation

\usepackage{perpage}

\MakePerPage{equation}


\renewcommand{\theequation}{\theperpage.\origtheequation}



\begin{document}
\begin{equation}
  \frac12=\frac24\label{eq:1}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:2}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:3}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:4}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:5}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:6}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:7}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:8}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:9}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:10}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:11}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:12}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:13}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:14}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:15}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:16}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:17}  
\end{equation}
Equation \eqref{eq:17} is on page \pageref{eq:17}, not on the
previous page.
\begin{equation}
  \frac12=\frac24\label{eq:18}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:19}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:20}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:21}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:22}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:23}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:24}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:25}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:26}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:27}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:28}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:29}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:30}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:31}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:32}  
\end{equation}
\begin{align}
  \frac12&=\frac24\label{eq:33} \\
  \frac12&=\frac24\\
  \frac12&=\frac24\\
  \frac12&=\frac24
\end{align}
Equation \eqref{eq:33} is on page \pageref{eq:33}, not on the previous
page.
\begin{equation}
  \frac12=\frac24\label{eq:34}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:35}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:36}  
\end{equation}


\end{document}

insira a descrição da imagem aqui

Responder2

Você pode usar o zrefpacote, em particular o seu perpagemódulo.

Observe o uso de \thezpagepara obter o número de página correto, o que não é o mesmo que \thepageem algumas circunstâncias: o problema é que o TeX digita ainda mais as coisas antes de perceber que precisa ejetar uma página; isso é feito para encontrar o ponto de quebra de página ideal de acordo com suas regras.

\documentclass[12pt]{amsart}

\usepackage{zref-perpage}

\usepackage[a6paper]{geometry} % just for the example

\zmakeperpage{equation}
\renewcommand{\theequation}{\thezpage.\arabic{equation}}

\begin{document}
\begin{equation}
  \frac12=\frac24\label{eq:1}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:2}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:3}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:4}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:5}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:6}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:7}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:8}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:9}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:10}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:11}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:12}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:13}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:14}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:15}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:16}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:17}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:18}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:19}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:20}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:21}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:22}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:23}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:24}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:25}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:26}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:27}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:28}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:29}  
\end{equation}
\begin{equation}
  \frac12=\frac24\label{eq:30}  
\end{equation}
\end{document}

O geometrypacote tem sido utilizado apenas para reduzir a quantidade de código e para mostrar várias páginas em uma pequena imagem.

insira a descrição da imagem aqui

informação relacionada