Quero usar vários tipos de seções de texto/ambientes semelhantes a teoremas em meu documento (por exemplo, axiomas, definições e lemas), que devem ser automaticamente numerados de forma independente pelo LaTeX, e para os quais também quero definir referências no mesmo texto. Deve ficar assim (textos em negrito são títulos, idealmente gerados pelo LaTeX a partir de um \begin{}
comando -, e textos em itálico são referências a esses ambientes.)
Axioma 1:Fjon é um Sudário
Axioma 2:Cada Sudário tem exatamente um Gob que também é um Sudário.
Definição 1: Ruficiência
Cada Sudário é rufioso apenas consigo mesmo, nunca com qualquer outro Sudário.Axioma 3:Nenhum Shrud é rude com seu próprio Gob.
Axioma 4:Se duas Shruds têm Gobs que são rudes um com o outro, então essas Shruds também são rufiosas.
Lema 1:Existem mortalhas
Esta é uma consequência trivial deAxioma 1.
∎Lema 2:Existem outros Shruds além de Fjon
Fjon existe (Axioma 1) e ele tem um Gob devido aAxioma 2, mas o Gob de Fjon não pode ser o próprio Fjon como consequência deDefinição 1eAxioma 3, então o Gob de Fjon deve ser outro Shrud.
∎Definição 2: Muna, Obaji
Muna é o Gob de Fjon, Obaji é o Gob de MunaAxioma 5:Fjon não é o Gob de nenhum Shrud
Lema 3:Qualquer outro Shrud além de Fjon é Gob of a Shrud
(Prova)
∎
Veja como espero conseguir isso:
\begin{axiom} % shall print "Axiom 1:", where 1 is a sequential number that is increased for each axiom
\label{ax:Fjon_is_Shrud}
Fjon is a Shrud
\end{axiom}
\begin{axiom} % shall print "Axiom 2:"
\label{ax:Gob}
Every Shrud has exactly one Gob that is also a Shrud.
\end{axiom}
\begin{definition}{Ruficiousity} % shall print "Definition 1: Ruficiousity" followed by a line break
\label{def:Ruficiousity}
\textbf{Ruficiousity}
Every Shrud is ruficious only to himself, never to any other Shrud.
\end{definition}
...
\begin{lemma} % shall print "Lemma 1:"
\label{lem:Shruds}
\textbf{Shruds exist}
This is a trivial consequence of \ref{ax:Fjon_is_Shrud}.
\end{lemma}
Mas isso obviamente não é suficiente. Acho que preciso definir adicionalmente em algum lugar que axiomas, definições e lemas são coisas que podem ser usadas em um par início-fim, e acho que preciso de alguma forma dizer ao LaTeX para atribuir números a esses elementos, e que cada um deles tem sua própria lista de números que é independente de qualquer outro elemento numerado.
O que preciso fazer (e onde) no meu documento para conseguir isso?
Responder1
É para isso que servem os teoremas. Aqui eu uso amsthm
. Não anotei tudo, mas acho que você pode imaginar como continuar.
\documentclass{article}
\usepackage{amsthm} % for defining theorem-like environments
\newtheorem{axiom}{Axiom} % first argument: what you have to write in "\begin{...}"; second argument is the displayed name
\newtheorem{definition}{Definition}
\newtheorem{lemma}{Lemma}
\usepackage{cleveref} % for nice references
\crefname{axiom}{axiom}{axioms} % first argument: name of environment; second argument: singular form of how it should be referenced; third argument: plural form of how it should be referenced
\crefname{definition}{definition}{definitions}
\crefname{lemma}{lemma}{lemmata}
\begin{document}
\begin{axiom}\label{ax:Fjon}
Fjon is a Shrud.
\end{axiom}
\begin{axiom}
Every Shrud has exactly one Gob that is also a Shrud.
\end{axiom}
\begin{definition}[Ruficiousity]
Every \ldots
\end{definition}
\begin{axiom}
No Shrud \ldots
\end{axiom}
\begin{lemma}
Shruds exist.
\end{lemma}
\begin{proof}
This is a trivial consequence of \cref{ax:Fjon}.
\end{proof}
\begin{lemma}
There are other Shruds than Fjon.
\end{lemma}
\begin{proof}
Fjon exists (\cref{ax:Fjon}) and he has\ldots
\end{proof}
\end{document}
Observe que os ambientes semelhantes ao teorema acima podem ser ainda mais personalizados, por exemplo, você pode conseguir Axiom 1:
em vez de Axiom 1.
definir a \newtheoremstyle
, consulteamsthm
documentação.