Wzory w LaTeXu

Piszemy artykuł ze wzorami matematycznymi

LaTeX jest bogato wyposażony w środki służące do eleganckiego i prostego redagowania wzorów matematycznych. Oczywiście wszystko to, co powiedzieliśmy dotąd o redagowaniu artykułów odnosi się także do prac matematycznych i artykułów technicznych zawierających wzory. Czytelnik nie zamierzający ich stosować może, w zasadzie, rozdział ten pominąć.

Otoczenie matematyczne

Poznaliśmy już kilka otoczeń, na przykład służących do wyliczania (Rozdział 4.2). Otoczenie matematyczne, które dalej w skrócie oznaczać będziemy math, ma wiele cech podobnych. Są jednak także pewne różnice, sprowadzające się do tego, że w otoczeniu math nie wszystkie komendy są dozwolone lub działają nieco inaczej.

Sposobów wchodzenia w otoczenie math jest kilka, w zależności od tego czy wzór ma być w tekście, czy poza nim, numerowany czy też nie. O tych komendach, które powodują umieszczenie wzoru poza tekstem z pustymi liniami przed i po wzorze, będziemy krótko mówić, że eksponują wzór. Chociaż takie użycie tego słowa nie jest w języku polskim powszechnie przyjęte, wydaje się ono lepsze niż kalka językowa wzór wyświetlony na oznaczenie displayed formula.

Deklarowanie otoczenia math.

Podstawowe sposoby deklarowania otoczenia math są następujące:

  • Deklarowanie wzorów w tekście:

    1. $tekst wzoru$

    2. \(tekst wzoru\)1

    3. \begin{math} tekst wzoru \end{math}

  • Eksponowanie wzorów bez numeracji:

    1. \[tekst wzoru\]

    2. \begin{displaymath} tekst wzoru \end{displaymath}

  • Wzory eksponowane i numerowane2 (za wyjątkiem pozycji 3):

    1. \begin{equation} tekst wzoru \end{equation}

    2. \begin{eqnarray} tekst wzoru \end{eqnarray}

    3. \begin{eqnarray*} tekst wzoru \end{eqnarray*}

    W tym przypadku trzeba skorzystać z krótkiego kodu math.

Zakres zastosowania powyższych deklaracji nie wymaga, w zasadzie, komentarza. Jakie są zatem różnice między deklaracjami otoczeń z tej samej grupy. Deklaracje grup pierwszej i drugiej są wewnątrz grup równoważne. To po co jest ich po kilka? Te krótkie służą ekonomii pisania znaczków. Te długie, służą, jak się wydaje, zapewnieniu jednolitej formy komendom definiującym otoczenia w LaTeXu. Ale nie tylko, komendy zawierające backlash i nawiasy (okrągłe i kwadratowe) bywają kłopotliwe wtedy, gdy we wzorach następuje ,,zgęszczenie" różnych nawiasów. W takich sytuacjach lepiej używać pełnej słownej, formy komendy. Odporna na różne konteksty zastosowań jest też komenda $tekst wzoru$, stosowana do wzorów w tekście.

Komentarza wymagają też różnice między deklaracjami trzeciej grupy. Wszystkie one eksponują wzory, z tym, że otoczenie equation stosuje się do pojedynczych wzorów, natomiast otoczenie eqnarray stosowane jest do wzorów w kilku wierszach (jak je pisać pokażemy osobno poniżej). W obu tych przypadkach wzory są numerowane kolejno - LaTeX zakłada osobny licznik do numerowania wzorów (kwestię odwoływania się do wzorów też omówimy osobno dalej). Wersja eqnarray z gwiazdką też służy do pisania wzorów wielowierszowych, lecz ich nie numeruje.

Zanim przejdziemy do prezentacji sposobów pisania różnych symboli we wzorach, zobaczmy jak wyglądają one w poszczególnych otoczeniach.

Przykłady wzorów w tekście.

LaTeXWygląd
$a = b\cdot c$a=bc
\(a = b\cdot c\)(a = b\cdot c)
Niech $a=b+c$ oraz niech $d=e+f$.Niech a=b+c oraz niech d=e+f.
Wtedy $a+d=b+c+e+f$Wtedy a+d=b+c+e+f

Aby wyeksponować wzór, piszemy tak:

$$a^{2} + b^{2} =c^{2}$$

a2+b2=c2

$$a\in A \; {\rm and} \; b\in B \; {\rm then} \; a\in A\cup B$$ 
$$A\subset A\cup B$$

aA;and;bB;then;aAB

AAB

Powyżej użyto kilku symboli, które zdefiniujemy dopiero później, ale ich znaczenia nietrudno się domyślić. W szczególności, {\rm tekst} powoduje, że tekst wewnątrz otoczenia math nie zostanie potraktowany jako ciąg symboli matematycznych. Przykład zastosowania otoczenia eqnarray podamy dalej.

Podstawowe zasady redagowania wzorów matematycznych

Prosimy Czytelnika o wyrozumiałe potraktowanie podanych niżej zasad redagowania wzorów pod LaTeXem. Są one ogólne i jako takie bywają trywialne (to w celu ośmielenia, aby samemu spróbować) lub są od nich wyjątki (i te mogą denerwować, jeśli zasady potraktuje się zbyt dogmatycznie).

Zasady redagowania wzorów.
  1. Wszystkie wzory, a nawet pojedyncze litery w tekście, będące symbolami matematycznymi piszemy w otoczeniu math.

  2. Wewnątrz otoczenia math większość wzorów daje się pisać zgodnie ze ,,zdrowym rozsądkiem", a jeśli na coś nie ma symbolu na klawiaturze, to powiniśmy znaleźć go w tej książce.

  3. Symbole LaTeXa używane we wzorach mają wewnętrzną logikę, raz obejrzane i kilka razy użyte same wchodzą w podświadomość.

  4. Próby własnego formatowania wzoru w otoczeniu math nie mają większego sensu. LaTeX nie bierze pod uwagę dodatkowych spacji, chyba że specjalnie go do tego skłonimy.

  5. Większość standardowych funkcji matematycznych oraz będących w międzynarodowym użyciu skrótów matematycznych oznacza to co powinny oznaczać, należy je tylko poprzedzić backslashem. I tak: \sin x oznacza sinx. Szczegółowe informacje podano w poniższej Tablicy.

    LaTeXWyglądLaTeXWygląd
    \arccosarccos\arcsinarcsin
    \arctanarctan\coscos
    \coshcosh\cotcot
    \cothcoth\csccsc
    \degdeg\detdet
    \dimdim\expexp
    \gcdgcd\homhom
    \kerker\PrPr
    \secsec\sinsin
    \sinhsinh\tantan
    \tanhtanh
  6. Większość greckich liter pisze się tak: \angielski zapis litery. Przykładowo: \alpha, \beta, \gamma oznaczają to, czego można się po nich spodziewać (αβγ).

Wśród ogólnych zasad wymienić warto reguły pisania indeksów u dołu i u góry liter.

Indeksy górne.
litera^{indeks}
(tekst wzoru)^{indeks}
Przykład
$$x^{2} + a^{i^{2}} \;\; x^{x} -  e^{2x}$$

x2+ai2;;xxe2x

Indeksy dolne.
litera_{indeks dolny}
(tekst wzoru)_{indeks dolny}
Przykład
$$x_{i}+a_{i_{j}} - z_{i+j}$$ 

xi+aijzi+j

$$x_{\bullet}+H_{\sqrt(n)}$$

x+H(n)

Możliwe jest oczywiście równoczesne użycie dolnych i górnych indeksów:

$$x^{(i)}_{j} + a_{j^{2}} + b^{(i_{1})}_{k_{2}}$$
xj(i)+aj2+bk2(i1)

Jeżeli wzór po przekształceniu do HTML nie wygląda tak jak powinien — zapewne wynika to z tego, że zawartość wzoru jest przekształcana przez parser Markdown — można zamknąć go wewnącz krótkiego kodu

{{< math >}} wzór {{< /math >}}

Musiałem to zrobić w przypadku powyższego wzoru.

Pisanie indeksów umieściliśmy wśród ogólnych zasad pisania wzorów. Uzasadnienie tego wyboru zawarte jest w poniższych stwierdzeniach.

  • Zarówno litera jak i indeks w powyższych schematach pisania indeksów mogą być skomplikowanymi wyrażeniami.

  • Te same zasady rządzą pisaniem indeksów i potęg.

  • Dokładnie tak samo jak indeksy piszemy zakresy sumowania, całkowania i wielokrotnego indeksowanego mnożenia.

Podstawowe operacje

Prezentację symboli LaTeXa spróbowaliśmy podzielić na (umowne) działy, aby ułatwić ich odnajdowanie.

Cztery działania

Dodawanie i odejmowanie nie nastręczają trudności. Piszemy zwyczajnie: a+b oraz ab, z użyciem dostępnych na klawiaturze znaków.

Mnożenie i dzielenie.

Klawiatura nie zawiera kropki do mnożenia (* rezerwuje LaTeX do swoich komend). Dlatego operacje te piszemy wybierając jeden ze sposobów podanych w Tablicy, pamiętając o pisaniu wzorów w otoczeniu math.

LaTeXWygląd
$ab$ab
$a\cdot b$ab
$a\times b$a×b
$a * b$ab
$\frac{licznik}{mianownik}$licznikmianownik
$\dfrac{licznik}{mianownik}$3licznikmianownik

Zwracamy uwagę, że między nawiasami klamrowymi obejmującymi licznik i mianownik [nie ma spacji]{.ul}.

Przykłady
$$(a+b)\cdot(c+d) + \frac{a+b}{c-d}$$ 

(a+b)(c+d)+a+bcd

$$a_{i}\cdot\frac{x}{x+\frac{1}{y}}$$ 

aixx+1y

$$\frac{1+a\times (b+\frac{c}{d+1})}{x+y}$$

1+a×(b+cd+1)x+y

Zobaczymy teraz jak pisać sumy i iloczyny indeksowane.

$$\sum x_{i} \;\; \prod a_{i}$$ 

xi;;ai​​

$$\sum_{i} x_{i} \;\; \prod_{i} a_{i}$$ 

ixi;;iai

i=1nxi;;i=1nai

Oczywiście xi oraz ai w powyższych wzorach zastąpić można znacznie bardziej skomplikowanymi wyrażeniami. Uwaga ta dotyczy też zakresów sumowania i mnożenia.

Inne często używane działania arytmetyczne

Pierwiastkowanie.

   \sqrt{argument}
   \sqrt[n]{argument}

Przykładowo:

$$\sqrt[3]{x+y+z-2}$$

x+y+z23

W skomplikowanych wyrażeniach, gdzie znak pierwiastka byłby monstrualnych rozmiarów, lepiej użyć znaku potęgowania do ułamkowej potęgi.

Potęgowanie.

Oto przykłady komend:

$$a^{b} \;\;   (a+b)^{c}$$

ab;;(a+b)c

 $$a^{\frac{b}{c}}$$

abc

Przykłady te pokazują, że zarówno wyrażenie podnoszone do potęgi jak i wykładnik mogą być skomplikowanymi wzorami, do których stosują się reguły otoczenia math.

Znaki równości, nierówności i im podobne

Znaki +, -, = dostępne są na klawiaturze i te piszemy (we wzorach) ,,normalnie", tzn. bez żadnych ozdobników w postaci \, nawiasów itp. Sposób pisania tych znaków poza wzorami wymaga rozważenia! Cyfry, znaki operacji , relacji w trybie matematycznym wyglądają nieco inaczej.

-1 
+3 
2=7

-1

+3

2=7

$-1$
$+3$
$2=7$

1

+3

2=7

Zestaw symboli, które trzeba pisać specjalnie podajemy poniżej

<

< obie ostre nierówności (i inne znaki też)

>

> stosować w otoczeniu math.

\leq mniejsze lub równe.

\geq większe lub równe.

\equiv równoważne.

\sim tego samego rzędu, podobne.

\simeq w przybliżeniu równe, podobne lub równe.

\approx w przybliżeniu równe, aproksymuje.

\cong kongruentne, w przybliżeniu równe.

\asymp równość asymptotyczna.

\neq nie jest równe.

\doteq polecamy do zapisu równości z definicji, bo wstawienie znaczka def nad = jest pracochłonne.

\ll znacznie mniejsze (zwykle o kilka rzędów).

\gg znacznie większe (zwykle o kilka rzędów).

A oto przykłady zastosowania kilku symboli z powyższego zestawu

$$a+b\leq c$$

a+bc

 $$A\equiv B$$

AB

$$a^{2}\ll \sqrt[10]{a}$$

a2a10

Wzory podstaw matematyki

Wyrażenia teorii mnogości

Podstawowe wyrażenia teorii mnogości pisze się całkiem naturalnie. Jak można oczekiwać, \in oznacza element zbioru, a \subset podzbiór zbioru. A oto przykłady (\quad to taki większy odstęp):

$$a\in A \quad A\subset B$$

aAAB

$$a\in A\subset B$$

aAB

Pełną listę operacji poniżej

\subset podzbiór.

\subseteq podzbiór, który może być równy całemu zbiorowi.

\supset nadzbiór.

\supseteq nadzbiór, który może być równy zbiorowi.

\in element zbioru.

\ni element zbioru.

\emptyset zbiór pusty.

\sqsubset nie wiemy, co sądzić o takim podzbiorze.

\sqsubseteq to też taki podzbiór, ale może być równy temu, w którym się zawiera.

\sqsupset jeśli poprzednie nam nie przeszkadzały to ten też nie powinien.

sqsupseteq łatwo było zgadnąć, jak taki znaczek otrzymać i co on oznacza.

\cap iloczyn zbiorów.

\cup suma zbiorów.

\bigcap ,,duży" iloczyn zbiorów.

\bigcup ,,duża" suma zbiorów.

Można oczywiście indeksować sumy i iloczyny zbiorów. Na przykład:

i=1nAi

A jak zrobić różnice symetryczną zbiorów? Wobec braku jednolitej konwencji w literaturze można użyć jednego z poniższych znaczków:

$$\ominus \quad \setminus \quad \triangle$$

Warto wspomnieć jeszcze o komendzie \aleph (). Natomiast specjalnego znaku do oznaczania mocy zbioru nie znaleźliśmy.

Kwantyfikatory i wyrażenia logiczne

Zacznijmy od najprostszych symboli:

\vee alternatywa.

\wedge koniunkcja.

\Rightarrow implikacja.

\Leftarrow implikacja (lewa, ale nie koniecznie nieprawdziwa).

¬

\neg znak negacji logicznej.

\forall duży kwantyfikator.

\exists mały kwantyfikator.

\bigwedge duży kwantyfikator dla tradycjonalistów.

\bigvee mały kwantyfikator tradycyjny.

\Leftrightarrow wtedy i tylko wtedy, wynikanie w obie strony.

\Longrightarrow implikacja (długa, ale przez to nie koniecznie bardziej prawdziwa).

\Longleftarrow implikacja (długa w lewo).

\Longleftrightarrow to chyba najdłuższa zbitka kilku słów bez spacji jaka w LaTeXu występuje.

\Downarrow implikacja z góry w dół może się przydać w diagramach wnioskowania).

\Uparrow niektórzy wolą wnioskować z lewa na prawo a inni z dołu do góry.

\Updownarrow a jeszcze inni wolą w obie strony.

\models to też jest podobno w logice używane.

\prec symbol relacji poprzedzania.

\preceq poprzedza lub współwystępuje.

\succ następnik.

\succeq następnik, który może się spóżnić.

Warto zwrócić uwagę, że LaTeX rozróżnia duże i małe litery, także w komendach. Jeśli zatem napiszemy \rightarrow zamiast \Rightarrow, to strzałka będzie cieńsza niż chcieliśmy ().

Sposoby pisania kwantyfikatorów podano powyżej. A jak zapisać zakres obowiązywania kwantyfikatora? Można to zrobić z użyciem wyrażeń typu indeksów dolnych. Przykładowo:

$$\forall_{x > 0} \quad \exists_{x\in A}$$

x>0xA


  1. W normalnym LaTeXu wystarczy pojedynczy znak backslash przed nawiasem okrągłym; tu trzeba ten znak podwoić… Stąd preferuję użycie znaku $ na oznaczenie początku i końca wzoru. ↩︎

  2. Uzyskanie wzorów numerowanych jest trudne (ale nie niemożliwe). ↩︎

  3. Zwracam uwagę na różnicę pomiędzy \frac a \dfrac. Te d oznacza „displaystyle” czyli wszystko jest nieco większe. ↩︎

Poprzedni
Następny