amsthm

Pakiet pozwala na definiowanie �rodowisk s�u��cych do opisu przyk�ad�w, zada�, definicji itp. (p. theorem.sty) podstawowym poleceniem jest:
\newteorem{nazwa �rodowiska}{tekst nag��wka}
lub
\newteorem{nazwa �rodowiska}%
[nazwa innego �rodowiska]{tekst nag��wka}

(w typ wypadku licznikiem kolejnych pozycji b�dzie licznik okre�lony przez nazwa innego �rodowiska (wsp�lny licznik))
\newteorem*{nazwa �rodowiska}{tekst nag��wka}
jak powy�ej, ale �rodowisko nie b�dzie numerowane
oraz
\newteorem{nazwa �rodowiska}%
{tekst nag��wka}[licznik nadrz�dny]

licznik zliczaj�cy kolejne u�ycie nazwa �rodowiska jest zerowany przy zmianie licznika licznik nadrz�dny (np: chapter, section. subsection lub nazwa innego �rodowiska definiowanegp za pomoc� polecenie \newtheorem), oraz w sk�ad numeru wchodzi licznik nadrz�dny. Oba warianty dodatkowe s� wzajemnie wykluczaj�ce si�.

Posta� wywo�ania zdefiniowanego �rodowiska jest nast�puj�ca:
\begin{nazwa}
zawarto��
\end{nazwa}
lub
\begin{nazwa}[dodatek]
zawarto��
\end{nazwa}
gdzie nazwa jest nazw� �rodowiska zdefiniowan� poleceniem \newtheorem, a dodatek mo�e stanowi� dodatkowy komentarz (b�d�cy cz�ci� nag��wka).

Definicja i u�ycie nowego �rodowiska mo�e wygl�da� nast�puj�co:

\newtheorem{twierdzenie}{Twierdzenie}
\newtheorem{lemat}{Lemat}[twierdzenie]
.
.
.
\begin{twierdzenie}
podstawowe
\begin{lemat}
pierwszy lemat
\end{lemat}
\begin{lemat}
drugi lemat
\end{lemat}
\end{twierdzenie}

\begin{twierdzenie}[specjalne]
i jeszcze jedno twierdzenie
\end{twierdzenie}
a po przetworzeniu:

Spos�b prezentacji �rodowiska jest zale�ny od wybranego stylu. Polecenie newtheorem mo�na poprzedzi� poleceniem theoremstyle (domy�lnie u�ywany jest styl plain).

Wywo�anie polecenie wygl�da nast�puj�co:
\theoremstyle{style}
gdzie style mo�e przyjmowa� nast�puj�ce warto�ci:

plain
emuluje oryginalny styl LaTeX'a (tekst nag��wka jest sk�adany czcionk� wyt�uszczon�, a wn�trze �rodowiska kursyw� (bez przej�cia do nowej linii po nag��wku).
definition
jak powy�ej, ale wn�trze jest sk�adane antykw�
remark
tekst nag��wka sk�adany jest kursyw� (bez przej�cia do nowej linii po nag��wku), a wn�trze �rodowiska antykw�

Lista dost�pnych styli jest ograniczona, ale mamy do dyspozycji polecenie umo�liwiaj�ce definiowane nowych styli: \newtheoremstyle{nazwa stylu}%
{odleg�o�� przed}%
{odleg�o�� po}%
{font do sk�adu wn�trza}%
{wci�cie}%
{font nag��wka}%
{znak po nag��wku}%
{odleg�o�� po nag��wku}%
{w�asna definicja nag��wka}

poszczeg�lne parametry maj� nast�puj�ce znaczenie:
nazwa stylu nazwa nowego stylu (mo�e by� argumentem polecenia \theoremstyle)
odleg�o�� przed okre�la odleg�o�� w pionie przed �rodowiskiem (pusty argument oznacza 0pt)
odleg�o�� po okre�la odleg�o�� w pionie po �rodowisku (pusty argument oznacza 0pt)
font do sk�adu wn�trza okre�la font, kt�rym prezentowany jest tekst wn�trza �rodowiska
wci�cie okre�la odleg�o�� tekstu nag��wka od lewego marginesu strony
font nag��wka okre�la font, kt�rym prezentowany jest tekst nag��wka
znak po nag��wku okre�la dodatkowy znak (ci�g znak�w) wstawianych po nag��wku; za pomoc� tego parametru mo�emy wstawi� znak kropki po nag��wku
odleg�o�� po nag��wku okre�la odleg�o�� w poziomie, mi�dzy tekstem nag��wka, a tre�ci� twierdzenia; znak spacji oznacza normaln� przerw� mi�dzy wyrazami (zmienn� w razie potrzeby), wstawienie polecenie \newline powoduje �e tekst wn�trza jest sk�adany ,,od nowej linii''
w�asna definicja nag��wka powy�sza specyfikacja mo�e ustali� na sta�e tre�� nag��wka okre�lon� poleceniem \newtheorem. �atwo wida�, �e taka specyfikacja by�aby ma�o przydatna.

Wyr�niono 3 cz�ci nag��wka: nazwa (drugi parametr polecenie \newtheorem), numer kolejny oraz dodatkowa notatka (parametr opcjonalny polecenia \begin{nazwa}[notka]), za wizualizacj� poszczeg�lnych cz�ci odpowiadaj� polecenia: \thmname, \thmnumber i \thmnote, a warto�ci poszczeg�lnych element�w s� podstawiane za pierwszy, drugi i trzeci parametr formalny (#1 -- nazwa, #2 -- numer i #3 -- opcjonalna notka). W najprostszym przypadku specyfikacja tego parametru mo�e wygl�da� nast�puj�co:
\newtheoremstyle{mojetwierdzenie}
   {2ex}{2ex}{\sffamily}{0pt}{\normalfont}{.}{\newline}
   {{\thmname{#1 }}{\thmnumber{#2}}{\thmnote{ (#3)}}}

Specyfikacja ostatniego parametru jest neutralna (zgodna z ustawieniami domy�lnymi).

Spr�bujmy zdefiniowa� �rodowisko, kt�rego numer b�dzie prezentowany na lewym marginesie, a dodatkowa notka b�dzie prezentowana fontem ,,bold italic''
\newtheoremstyle{mojetwierdzenie}{2ex}{2ex}
   {\sffamily}{-1cm}{\bfseries}{}{\newline}
   {\thmnumber{\hbox to 1cm{#2.\hss}}\thmname{#1 }{\thmnote{ \itshape(#3)}}}
\newtheoremstyle{mojlemat}{0pt}{0pt}{\itshape}{0pt}{\normalfont}{.}{\newline}%
   {\thmname{#1 }\thmnumber{#2}\thmnote{ (#3)}}
\theoremstyle{mojetwierdzenie}
\newtheorem{twierdzenie}{Twierdzenie}
\theoremstyle{mojlemat}
\newtheorem{lemat}{Lemat}[twierdzenie]
.
.
.
aaa aaa aaa aaa aaa aaa aaa aaa aaa aaa
aaa aaa aaa aaa aaa aaa aaa aaa aaa aaa
aaa aaa aaa aaa aaa aaa aaa aaa aaa aaa
aaa aaa aaa aaa aaa aaa aaa aaa aaa aaa
\begin{twierdzenie}
podstawowe
\begin{lemat}
pierwszy lemat
\end{lemat}
dalszy tekst twierdzenia
\begin{lemat}
drugi lemat
\end{lemat}
po twierdzeniu i przed nast�pnym
\end{twierdzenie}
\begin{twierdzenie}[specjalne]
i jeszcze jedno twierdzenie
\end{twierdzenie}

dodatkowo dost�pna jest makroinstrukcja \swapnumbers, kt�ra powoduje, �e najpierw jest podawany numer kolejny �rodowiska, a potem jego nag��wek. W przypadku u�ycia polecenie \newtheoremstyle z bardziej wyrafinowanym formatem mog� wyst�pi� efekty uboczne.


W�odzimierz Macewicz
Ostatnie zmiany: 05.05.2014.