egreg
Respondí amablemente a mi pregunta (previamente) sobre cómo dar a los números la misma numeración que a los teoremas aquí:
Numerar tablas secuencialmente.
Desafortunadamente, esta muy buena solución parece ser incompatible (en lo que, con suerte, será fácilmente reparable) con el código preexistente al que me he apegado. Aquí hay una versión parodia de mi documento.
\documentclass{article}
\usepackage{amsmath,amsthm,thmtools,float,cleveref}
\declaretheorem[name=Theorem,numberwithin=section]{thm}
\newtheorem{theorem}[thm]{Theorem}
\newtheorem{corollary}[thm]{Corollary}
\newtheorem{theorem}[table]{Theorem}
\begin{document}
Look at \Cref{TABLE}!
\begin{restatable}{theorem}{TheThm}\label{THM}
I said to look at \Cref{TABLE}!
\end{restatable}
\begin{theorem}[Best theorem]
Hello, world!
\end{theorem}
\begin{table}[H]
\caption{Good table-caption}\label{TABLE}
\begin{center}
\begin{tabular}{l | l}
ABCD & EFG \end{tabular}
\end{center}
\end{table}
That was so exquisite we must recapitulate:
\TheThm*
\end{document}
Recibo la siguiente advertencia: LaTeX Error: Command \theorem already defined. Or name \end... illegal, see p.192 of the manual.
Parece que se debe en parte a que tengo \newtheorem{theorem}[thm]{Theorem}
. Pero si elimino eso, el documento ya no parece saber qué es un teorema.
Eliminar thmtools
da un error diferente, pero quiero usar el restatable
entorno.
Mi ingenua suposición sobre qué hacer con
\newtheorem{theorem}[table]{Theorem}
para evitar el error, es decir, reemplazarlo con
\newtheorem{table}[thm]{Table}
—Tampoco tiene éxito.
También me gustaría una manera de hacer el texto "Cuadro XX" en negrita como los títulos de los teoremas, si eso es posible. Quizás esa debería ser otra pregunta.
Respuesta1
El problema es que estas declarando theorem
dos veces, primero
\newtheorem{theorem}[thm]{Theorem}
y luego
\newtheorem{theorem}[table]{Theorem}
Tampoco mezclaría declaraciones hechas con \declaretheorem
y con \newtheorem
.
En tu caso, creo que lo siguiente debería hacer lo que quieres:
\newtheorem{theorem}[table]{Theorem}
\newtheorem{corollary}[table]{Corollary}
\numberwithin{table}{section}
\numberwithin{theorem}{section}
\numberwithin{corollary}{section}
Acerca de su última solicitud, cargue el paquete caption
y emita
\captionsetup[table]{labelfont=bf}
MWE completo:
\documentclass{article}
\usepackage{amsmath,amsthm,thmtools,float,cleveref}
\usepackage{caption}
\captionsetup[table]{labelfont=bf}
\newtheorem{theorem}[table]{Theorem}
\newtheorem{corollary}[table]{Corollary}
\numberwithin{table}{section}
\numberwithin{theorem}{section}
\numberwithin{corollary}{section}
\begin{document}
\section{Test}
Look at \Cref{TABLE}!
\begin{restatable}{theorem}{TheThm}\label{THM}
I said to look at \Cref{TABLE}!
\end{restatable}
\begin{theorem}[Best theorem]
Hello, world!
\end{theorem}
\begin{table}[H]
\caption{Good table-caption}\label{TABLE}
\begin{center}
\begin{tabular}{l | l}
ABCD & EFG \end{tabular}
\end{center}
\end{table}
\begin{corollary}
And this is a corollary
\end{corollary}
That was so exquisite we must recapitulate:
\TheThm*
\end{document}
Producción:
EDITAR
Para tener la misma numeración para tablas y figuras, agregue las siguientes líneas en su preámbulo:
\makeatletter
\let\c@figure\c@table
\makeatother
Además, si no quieres utilizar \numberwithin
muchas veces, puedes proceder de esta forma. En primer lugar, declara
\numberwithin{table}{section}
\numberwithin{figure}{section}
y luego declara tu entorno tipo teorema de la siguiente manera:
\declaretheorem[numberlike=table]{theorem}
\declaretheorem[numberlike=theorem]{corollary}
MWE completo:
\documentclass{article}
\usepackage{amsmath,amsthm,thmtools,float,cleveref}
\usepackage{graphicx}
\usepackage{caption}
\captionsetup{labelfont=bf}
\numberwithin{table}{section}
\numberwithin{figure}{section}
\makeatletter
\let\c@figure\c@table
\makeatother
\declaretheorem[numberlike=table]{theorem}
\declaretheorem[numberlike=theorem]{corollary}
\begin{document}
\section{Test}
Look at \Cref{TABLE}!
\begin{restatable}{theorem}{TheThm}\label{THM}
I said to look at \Cref{TABLE}!
\end{restatable}
\begin{theorem}[Best theorem]
Hello, world!
\end{theorem}
\begin{table}[H]
\caption{Good table-caption}\label{TABLE}
\centering
\begin{tabular}{l | l}
ABCD & EFG \end{tabular}
\end{table}
\begin{corollary}
And this is a corollary
\end{corollary}
\begin{figure}[H]
\caption{Good figure-caption}\label{FIGURE}
\centering
\includegraphics[scale=.3]{example-image}
\end{figure}
That was so exquisite we must recapitulate:
\TheThm*
\end{document}
Producción
Respuesta2
Debido a que el problema real estará en los documentos con \chapter
, existen algunas modificaciones en su código. El relevante está marcado como PS.
\documentclass{report}
%\usepackage{amsmath,amsthm,thmtools,float,cleveref}
\usepackage{amsmath,amsthm,float,cleveref}
%\declaretheorem[name=Theorem,numberwithin=section]{thm}
%\newtheorem{theorem}[thm]{Theorem}
\newtheorem{theorem}{Theorem}
%\newtheorem{corollary}[thm]{Corollary}
%\newtheorem{theorem}[table]{Theorem}
\def\thetable{\arabic{table}} % This is important - PS
\begin{document}
\chapter{First}
\section{First}
Look at \Cref{TABLE}!
%\begin{restatable}{theorem}{TheThm}\label{THM}
\begin{table}
\label{THM}
I said to look at \Cref{TABLE}!
\end{table}
%\end{restatable}
\begin{theorem}[Best theorem]
Hello, world!
\end{theorem}
\begin{table}[H]
\caption{Good table-caption}\label{TABLE}
\begin{center}
\begin{tabular}{l | l}
ABCD & EFG \end{tabular}
\end{center}
\end{table}
That was so exquisite we must recapitulate:
%\TheThm*
\end{document}
(Por alguna extraña razón mi imagen estaba completamente negra aquí. Si alguien pudiera intentarlo, si es problema mío o del sitio, por favor...)