
Ich möchte einige Theoreme wie folgt aufschreiben:
\begin{theorem}
\begin{preconditions}
$A := \begin{pmatrix} 1 & 2 \\ 3 & 4 \end{pmatrix}$\\
$B := \begin{pmatrix} 2 & 2 \\ 3 & 4 \end{pmatrix}$\\
$n \in \mathbb{N}$
\end{preconditions}
\begin{claim}
$\sqrt{2} \notin \mathbb{Q}$
\end{claim}
\begin{proof}{directly}
[... the proof ...]
\end{proof}
\end{theorem}
Es sollte so aussehen:
**Theorem 123**
**Preconditions**:
$A := \begin{pmatrix} 1 & 2 \\ 3 & 4 \end{pmatrix}$\\
$B := \begin{pmatrix} 2 & 2 \\ 3 & 4 \end{pmatrix}$\\
$n \in \mathbb{N}$
**Claim**: √2 ∉ Q
**Proof**: directly
[... the proof ...]
[.. the end] ■
( Theorem 123
, Preconditions
, Claim
und Proof
sollten fett sein)
Logik hinter der Umgebung:
- Die Theoreme sollten automatisch eine Nummer erhalten, die bei eins beginnt und für jeden Theorem um eins hochzählt
- Innerhalb der Theoremumgebung sind nur die Umgebungen
preconditions
,claim
undproof
zulässig - Innerhalb der Theoremumgebung müssen die
claim
und die Umgebung genau einmal vorhanden sein.proof
- Der Inhalt des Beweises und der Inhalt der Voraussetzungen sollten die gleiche Absicht haben.
Was ich bisher gefunden habe:
ich dachte\neue Umgebungkönnte sein, was ich suche:
\newenvironment{name}[num]{before}{after}
aber ich konnte nicht herausfinden, wie ich interne Umgebungen als erforderlich markieren kann.
Das amsthm-Paket scheint Umgebungen für den Beweis zu haben (Quelle), aber ich sehe keine Möglichkeit, die verschiedenen Umgebungen zu verschachteln und sie so aussehen zu lassen, wie ich es möchte
Satzscheint viele Möglichkeiten zu bieten. Ich habe 4 neue Theoremumgebungen erstellt:
\newtheorem{theorem}{Theorem}
\newtheorem{preconditions}{Preconditions}
\newtheorem{proof}{Proof}
\newtheorem{claim}{Claim}
Ich habe den Latex-Code von oben verwendet und Folgendes erhalten:
Dieser hat keine Absicht der inneren Umgebungen, die inneren Umgebungen sind nummeriert, obwohl sie nicht nummeriert sein sollten und keineGrabsteinist am Ende
Antwort1
Ich benutzte diethmtools
Paket als Frontend für , amsthm
um eine neue Proof
Umgebung zu definieren; die anderen beiden Umgebungen wurden mit erstellt \newenvironment
. Die Umgebungen Proof
, claim
und precondition
verwenden adjustwidth
aus demchangepage
Paket, um den linken Rand zu vergrößern. Natürlich können Sie die erforderlichen Anpassungen entsprechend Ihren Anforderungen vornehmen:
\documentclass{article}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{amsthm}
\usepackage{thmtools}
\usepackage{changepage}
\usepackage[nopar]{lipsum}% just to generate some text
\newlength\Thmindent
\setlength\Thmindent{20pt}
\newenvironment{precondition}
{\par\medskip\adjustwidth{\Thmindent}{}\normalfont\textbf{Preconditions:}\par\nobreak}
{\endadjustwidth}
\newenvironment{claim}
{\par\medskip\adjustwidth{\Thmindent}{}\normalfont\textbf{Claim:}}
{\endadjustwidth}
\declaretheoremstyle[
spaceabove=0pt,spacebelow=0pt,
preheadhook=\adjustwidth{\Thmindent}{},
prefoothook=\endadjustwidth,
headpunct=:,
numbered=no,
qed=\qedsymbol
]{proof}
\declaretheorem[style=proof]{Proof}
\theoremstyle{plain}
\newtheorem{theorem}{Theorem}
\begin{document}
\begin{theorem}
\lipsum[2]
\begin{precondition}
\begin{itemize}
\item $A := \begin{pmatrix} 1 & 2 \\ 3 & 4 \end{pmatrix}$
\item $B := \begin{pmatrix} 2 & 2 \\ 3 & 4 \end{pmatrix}$
\item $n \in \mathbb{N}$
\end{itemize}
\end{precondition}
\begin{claim}
$\sqrt{2}\notin\mathbb{Q}$
\end{claim}
\begin{Proof}
\lipsum[2]
\end{Proof}
\end{theorem}
\end{document}