Wie füge ich am Ende einer Definition ein „qed-Quadrat“ hinzu?

Wie füge ich am Ende einer Definition ein „qed-Quadrat“ hinzu?

Ich verwende die acmartDokumentklasse für die Einreichung eines Konferenzpapiers. Ich habe ein einfaches Beispiel bereitgestellt (Code unten), das derzeit die folgende Ausgabe ergibt:

Bildbeschreibung hier eingeben

Fragen:

  1. Wie kann ich die „Definition“-Umgebung ändern, sodass der Text „Definition“ genauso aussieht wie der Text „Theorem“ (Kursivschrift entfernen, dann sieht auch die Schriftart anders aus)?
  2. Wie füge ich eine neue „Bemerkungs“-Umgebung hinzu, die dasselbe anzeigt wie die bereits vorhandenen (Theorem, Lemma, Korollar usw.)?
  3. Wie kann ich am Ende einer dieser Umgebungen ein „qed-Quadrat“ derselben Größe hinzufügen (auch wenn es keinen „Beweis“ gibt)?

Code:

\documentclass[acmtog,anonymous,review]{acmart}
\usepackage{graphicx}

\AtEndPreamble{%
\theoremstyle{acmtheorem}
\newtheorem{remark}[theorem]{Remark}}

\begin{document}

\section{}

\begin{theorem}
    A theorem.
    \begin{proof}
    \end{proof}
\end{theorem}

\begin{definition}
    A definition.
    \begin{flushright}
        $\square$
    \end{flushright}
\end{definition}

\begin{remark}
    A remark.
    \begin{flushright}
        $\square$
    \end{flushright}
\end{remark}

\end{document}

Antwort1

Wenn Sie einen Beitrag für eine Konferenz einreichen, sollten Sie nicht versuchen, deren Standards zu ändern. So können Sie es jedenfalls machen.

\documentclass[acmtog,anonymous,review]{acmart}

\AtEndPreamble{%
  \theoremstyle{acmplain}%
  % note to copy editors: remove the following
  % two lines if standard ACM style is preferred
  \let\definition\relax\let\enddefinition\relax
  \newtheorem{definition}[theorem]{Definition}%
  % end note to copy editors
  \newtheorem{remark}[theorem]{Remark}%
  \AtBeginEnvironment{definition}{\pushQED{\qed}}%
  \AtEndEnvironment{definition}{\popQED}%
  \AtBeginEnvironment{remark}{\pushQED{\qed}}%
  \AtEndEnvironment{remark}{\popQED}%
}

\begin{document}

\section{Test}

\begin{theorem}
A theorem.
\end{theorem}
\begin{proof}
And its proof.
\end{proof}

\begin{definition}
A definition.
\end{definition}

\begin{remark}
A remark.
\end{remark}

\end{document}

Bildbeschreibung hier eingeben

Anmerkungen.

  1. Der Standardtheoremstil ist acmplain.
  2. Ein Beweis gehört nicht zum Lehrsatz.

Antwort2

Ich habe Ihre Frage so verstanden, dass Sie Theoreme, Definitionen und Bemerkungenallehaben den gleichen Stil. In diesem Fall beantworte ich Ihre Fragen in anderer Reihenfolge:

  1. Wie füge ich eine neue „Bemerkungs“-Umgebung hinzu, die dasselbe anzeigt wie die bereits vorhandenen (Theorem, Lemma, Korollar usw.)?

Bearbeiten: Ihrem Kommentar zufolge gehe ich davon aus, dass Sie in allen drei Umgebungen Kapitälchen für die Überschriften und nicht kursive Schriftart für den Haupttext wünschen.

Zunächst müssen Sie einen neuen Theoremstil definieren, da keiner der acmartvordefinierten Theoremstile Ihren Anforderungen entspricht.acmartKlassendokumentationstellt den Quellcode für die Definition des acmplainTheoremstils bereit (auf Seite 110, glaube ich), sodass Sie diese Definition in Ihren eigenen Code kopieren und einfügen und nach Belieben ändern können. Anschließend können Sie damit \theoremstyle{your-style-name}den Stil Ihrer benutzerdefinierten Theoremumgebungen festlegen.

  1. Wie kann ich die „Definition“-Umgebung ändern, sodass der Text „Definition“ genauso aussieht wie der Text „Theorem“ (Kursivschrift entfernen, dann sieht auch die Schriftart anders aus)?

Da es keine direkte Möglichkeit gibt, die Definition einer Theoremumgebung zu ändern, müssen Sie die Darstellung von definition(und theorem) selbst definieren. Sie haben zwei Möglichkeiten:

  1. Definieren Sie Ihre eigenen Definitions- und Theoremumgebungen mit unterschiedlichen Namen, damit sie nicht mit den vorhandenen Umgebungen kollidieren. Ich empfehle diese Option, da sie am einfachsten ist und die vorhandenen Definitionen nicht überschreibt (falls dies zu Problemen mit Ihrer Übermittlung führen könnte).
  2. Unterdrücken Sie die bestehenden Umgebungsdefinitionen mit der Klassenoption acmthm=false. Anschließend können Sie Ihre eigenen definitionundtheorem mit vorhandenen Umgebungen in Konflikt zu geraten. Beachten Sie, dass dadurchalle Theoremumgebungen definiert durchacmart, einschließlich theorem, proposition, definition, example, usw. Wenn Sie diese Option wählen, müssen Sie daher alle anderen Umgebungen nach Bedarf selbst definieren.
  1. Wie kann ich am Ende einer dieser Umgebungen ein „qed-Quadrat“ derselben Größe hinzufügen (auch wenn es keinen „Beweis“ gibt)?

Ich empfehle die Verwendung vonthmtools Paket für Ihre benutzerdefinierten Umgebungsdefinitionen zu verwenden, da dies das Festlegen des QED-Symbols sehr einfach macht. Diese Lösung wird in vorgeschlagendie Postvon @barbara-beeton in den Kommentaren verlinkt, aber es ist das dritte von oben. Siehe diethmtoolsPaketdokumentationfür mehr Details.

Neues und verbessertes MWE (mit benutzerdefinierten Umgebungen unter anderen Namen):

\documentclass[acmtog, anonymous, review]{acmart}

\usepackage{thmtools}

\makeatletter
\AtEndPreamble{
    % Modified from definition of acmplain
    % acmart documentation, page 110
    % https://mirror.las.iastate.edu/tex-archive/macros/latex/contrib/acmart/acmart.pdf
    \newtheoremstyle{mystyle}%
        {.5\baselineskip\@plus.2\baselineskip
            \@minus.2\baselineskip}% space above
        {.5\baselineskip\@plus.2\baselineskip
            \@minus.2\baselineskip}% space below
        {\normalfont}% body font
        {\@acmplainindent}% indent amount
        {\scshape}% head font
        {.}% punctuation after head
        {.5em}% spacing after head
        {\thmname{#1}\thmnumber{ #2}\thmnote{ {\@acmplainnotefont(#3)}}}% head spec

    \theoremstyle{mystyle}
    \declaretheorem[name=Theorem, parent=section]{thm}
    \declaretheorem[name=Definition, qed=$\square$, sibling=thm]{defn}
    \declaretheorem[name=Remark, qed=$\square$, sibling=thm]{remark}
}
\makeatother

\begin{document}

\section{}

\begin{thm}
    A theorem.
    \begin{proof}
    \end{proof}
\end{thm}

\begin{defn}
    A definition.
\end{defn}

\begin{remark}
    A remark.
\end{remark}

\end{document}

MWE des OP mit gewünschtem Styling und QED-Symbolen

verwandte Informationen