Необычный стиль теорем
Sep 04 2020
Я хочу написать некоторые теоремы с выходными данными, которые несколько самоопределяются, такие как «Теорема A, теорема B, теорема B ^ +, теорема B ^ #» и т. Д., И хочу, чтобы эти специальные теоремы находились вне обычного счетчика теорем, т.е. теоремы сохраняют свою собственную нумерацию, как «Теорема 1.1, Теорема 1.2», даже если «Теорема B» находится между ними. Есть ли простой способ добиться этого?
Это может быть связано с вопросом здесь, но я думаю, что это не так. Заранее спасибо!
Ответы
6 egreg Sep 03 2020 at 23:27
Что-то вроде этого?
\documentclass{article}
\usepackage{amsthm}
\newtheorem{theorem}{Theorem}[section]
\newtheorem{theoremvar}{Theorem}
\newenvironment{theorem*}[1]
{\renewcommand{\thetheoremvar}{#1}\theoremvar}
{\endtheoremvar}
\begin{document}
\section{Title}
\ref{normal1},
\ref{normal2},
\ref{normal3},
\ref{normal4},
\ref{special1},
\ref{special2},
\ref{special3}
\begin{theorem}\label{normal1}
This is a normal theorem.
\end{theorem}
\begin{theorem}\label{normal2}
This is a normal theorem.
\end{theorem}
\begin{theorem*}{A}\label{special1}
This is a special theorem.
\end{theorem*}
\begin{theorem}\label{normal3}
This is a normal theorem.
\end{theorem}
\begin{theorem*}{B$^+$}\label{special2}
This is a special theorem.
\end{theorem*}
\begin{theorem*}{B$^{\sharp}$}\label{special3}
This is a special theorem.
\end{theorem*}
\begin{theorem}\label{normal4}
This is a normal theorem.
\end{theorem}
\end{document}
У theorem*среды есть обязательный аргумент для специальной метки.