(1.1 정리)와 같은 정리 스타일 및 (1.2 중간 값 정리)와 같은 사용자 정의 정리

(1.1 정리)와 같은 정리 스타일 및 (1.2 중간 값 정리)와 같은 사용자 정의 정리

나는 이 책에서 사용된 것과 같은 정리 스타일을 찾고 있습니다.
Ross의 기본 분석

나는 다음과 같은 사용자 정의 정리를 얻고 싶다는 점을 제외하고 이미 대부분의 작업을 수행했습니다.

여기에 이미지 설명을 입력하세요

다음과 같이 입력하면:

\begin{thm}[Rational Zeros Theorem]
...
\end{thm}

내가 원하는 나머지 스타일은 다음과 같습니다.

  1. 수와 정리를 바꾸는 것
  2. 정리/정의의 선두 뒤에 개행 문자가 있는 경우
  3. "증거"를 가지고 있습니다. 이탤릭체 대신 볼드체로, 그 뒤에 줄바꿈 문자를 추가합니다.
  4. 증명이 목록으로 시작하는 경우 개행 문자도 가짐

저는 이미 1,2,3을 구현하려고 노력해 왔으며 관심이 있으시면 github에서 찾을 수 있습니다.https://github.com/kasperpeulen/Ross-Theorem-Style

아직 4번 문제를 해결하지 못했지만 여기에서 다른 게시물을 찾았으므로 혼자서 해결할 수 있을 것 같지만 이에 대한 도움도 물론 감사하겠습니다.

답변1

좋습니다. 이제 작동하게 되었습니다. 이 웹사이트의 다른 게시물 덕분에 채팅에서 타악기의 도움을 받을 수 있습니다.

여기에 이미지 설명을 입력하세요

다음은 여기에서도 찾을 수 있는 코드입니다. https://github.com/kasperpeulen/Ross-Theorem-Style

\documentclass[12pt]{article}
\usepackage{amsmath, amssymb, amsthm}

\newtheoremstyle{theorem}% name
  {}%         Space above, empty = `usual value'
  {}%         Space below
  {\itshape}% Body font
  {}%         Indent amount 
  {\bfseries}% Head font
  {.}%        Punctuation after head
  {\newline}% Space after head: \newline = linebreak
   {\def\temp{#3}\ifx\temp\empty\thmnumber{#2 }\thmname{#1}\else\thmnumber{#2}\thmnote{ #3}\fi}%         Head spec

\theoremstyle{theorem}
\newtheorem{thm}{Theorem}[section]
\newtheorem{prop}[thm]{Proposition}
\newtheorem{lem}[thm]{Lemma}
\newtheorem{cor}[thm]{Corollary}

\swapnumbers    
\newtheoremstyle{definition}% name
  {}%         Space above, empty = `usual value'
  {}%         Space below
  {}% Body font
  {}%         Indent amount
  {\bfseries}% Head font
  {.}%        Punctuation after thm head
  {\newline}% Space after head: \newline = linebreak
  {}%         Head spec

\theoremstyle{definition}
\newtheorem{defn}[thm]{Definition}
\newtheorem{example}[thm]{Example}
\theoremstyle{remark}
\newtheorem{remark}[thm]{Remark}

%Makes "Proof." boldface
\makeatletter
\renewenvironment{proof}[1][\proofname] {\par\pushQED{\qed}\normalfont\topsep6\p@\@plus6\p@\relax\trivlist\item[\hskip\labelsep\bfseries#1\@addpunct{.}]\mbox{}\\*}{\popQED\endtrivlist\@endpefalse}
\makeatother

%Fix if theorem starts with a list
\makeatletter
\def\itemfix{%
\if@inlabel
 \noindent \par\nobreak\vskip-\baselineskip\hrule\@height\z@
\fi}

\let\olditemize\itemize
\def\itemize{\itemfix\olditemize}
\makeatother

\makeatletter
\def\enumfix{%
\if@inlabel
 \noindent \par\nobreak\vskip-\baselineskip\hrule\@height\z@
\fi}
\let\oldenumerate\enumerate
\def\enumerate{\enumfix\oldenumerate}

\begin{document}
\section{Some examples}

\begin{defn}
Here is a definition of \emph{something}.
\end{defn}

\begin{thm}[Intermediate Value Theorem]
This is a theorem with a name and with a number.
\end{thm}

\begin{thm}
This is a theorem without name and with a number.
\end{thm}

\begin{proof}
Here is the proof.
\end{proof}

\begin{thm}
\begin{enumerate}
\item Theorem that starts with a list.
\item Which seems to work.
\end{enumerate}
\end{thm}

\begin{thm}
\begin{itemize}
\item Theorem that starts with a list.
\item Which seems to work.
\end{itemize}
\end{thm}

\end{document}

답변2

다음 은 증명이 방정식 표시(그룹)로 끝나는 경우에도 ntheorem자동으로 (사용자 정의 가능한) 기호를 배치하는 이점이 있는 간단한 솔루션입니다 .end-of-proof

\documentclass[12pt,a4paper]{article}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{amssymb}
\usepackage{mathtools, nccmath}
\usepackage{enumitem}
\usepackage[thmmarks, thref, amsmath]{ntheorem}

\makeatletter
\renewtheoremstyle{changebreak}%
  {\item[\rlap{\vbox{\hbox{\hskip\labelsep \theorem@headerfont
          ##2\ ##1\theorem@separator}\hbox{\strut}}}]}%
  {\item[\rlap{\vbox{\hbox{\hskip\labelsep \theorem@headerfont
          ##2\ ##3\theorem@separator}\hbox{\strut}}}]}
\makeatother

\theoremstyle{changebreak}
\theoremseparator{. }
\theoremheaderfont{\upshape\bfseries}
\theorembodyfont{\itshape}

\newtheorem{thm}{Theorem}[section]

\theorembodyfont{\upshape}
\newtheorem{defi}[thm]{Definition}
\theoremstyle{nonumberbreak}
\theoremseparator{}
\theoremsymbol{\ensuremath{\blacksquare}}
\newtheorem{proof}{Proof}

\begin{document}

\section{A First Section}

\begin{thm}
 A numbered, unnamed theorem.
\end{thm}

\begin{thm}[Rational Zeros Theorem]
Suppose $ c_0 ,c_1 ,\dots, c_n $ be integers and $ r $ a rational number satisfying the polynomial equation.
\begin{equation}\label{intpol}
  c_n xⁿ + c_{n-1} x^{n-1} + ... +c_1 x + c_0 =0
\end{equation}
where $ n ≥ 1$, $ c_{n} \ne 0$ and $ c_0 \ne 0 $. Let $ r = \mfrac{c}{d}$, where $ c, d $ are integers having no common factors and $ d \ne 0 $. Then $ c $ divides $ c_0 $ and $ d $ divides $ c_n $.
\end{thm}

\begin{proof}
\begin{itemize}[wide = 0pt]
  \item[\em First proof.]
Left as an exercise.

  \item[\em Second proof.] We deduce from the hypothesis that
\begin{align*}
   & c_{n}cⁿ + c_{n-1}c^{n-1}d + ... + c_1 cd^{n-1} + c_0 dⁿ = 0, \\
\intertext{which we may rewrite as}
   & c(c_{n}c^{n-2} + c_{n-1}c^{n-2}d + ... + c_1 d^{n-1}) = -c_0 dⁿ\\
\shortintertext{or}
 & d(c_{n-1}c^{n-1} + ... + c_1 cd^{n-2} + c_0 d^{n-1}) = -c_{n}cⁿ.
\end{align*}
\end{itemize}
\end{proof}

\begin{defi}
  A \textbf{rational function} is the quotient of two polynomial functions.
\end{defi}

\end{document}

여기에 이미지 설명을 입력하세요

관련 정보