amsmath / AMSFonts

Si vas a componer matematicas serias, el primer paquete que debes cargar es amsmath. Este paquete de la American Mathematical Society es el estandar de facto para composicion matematica y refuerza sustancialmente las funciones matematicas integradas de LaTeX, desde displays alineados hasta control fino del espaciado. Esta pagina no trata los entornos de alineacion en si (tienen su propia pagina), sino por que cargar amsmath y los comandos transversales que funcionan en distintos entornos: \text, \operatorname, \DeclareMathOperator, \intertext, \substack y \numberwithin. Tambien presenta los companeros de amsmath: amssymb / AMSFonts, que aportan blackboard bold, Fraktur y cientos de simbolos extra, y amsthm para entornos de teoremas.

Que es amsmath

amsmath es el paquete matematico que la American Mathematical Society (AMS) desarrollo para componer sus propias revistas. Las funciones matematicas integradas de LaTeX son minimas: no alcanzan para alinear formulas multilinea, controlar finamente los numeros de ecuacion ni componer correctamente nombres de funciones. amsmath cubre estas carencias de una vez y hoy se considera practicamente obligatorio en documentos de matematicas y fisica. Se carga con una sola linea en el preambulo.

latex
\usepackage{amsmath}

amsmath es menos un paquete unico que un conjunto de paquetes pequenos. Como dice claramente su User’s Guide oficial, amsmath incorporates amstext (el comando \text para texto dentro de matematicas), amsopn (\DeclareMathOperator y afines para definir operadores) y amsbsy (matematicas en negrita con \boldsymbol). Por tanto, la linea \usepackage{amsmath} trae todo esto. amsmath esta clasificado como paquete LaTeX required y desde 2016 su mantenimiento lo lleva el LaTeX Project en lugar de la AMS (version actual 2.17z, julio de 2025).

Lo mas visible que ofrece amsmath son sus entornos para alinear formulas multilinea: align, gather, multline, split, alignat y el entorno de casos cases, entre otros. Son lo bastante extensos para tener su propia pagina, “Displayed, aligned & numbered equations”; aqui solo los nombramos y nos centramos en los comandos transversales que funcionan dentro de cualquier entorno.

amssymb y AMSFonts

La contraparte de amsmath es amssymb (parte de AMSFonts), que proporciona simbolos y fuentes. Tienen funciones distintas: amsmath anade maquinaria de composicion (alineacion, espaciado, numeracion), mientras que amssymb amplia el conjunto de simbolos y alfabetos que puedes escribir. Cargalo asi en el preambulo.

latex
\usepackage{amssymb}

amssymb define todos los simbolos contenidos en las fuentes simbolicas AMS msam y msbm, poniendo a disposicion cientos de simbolos adicionales ausentes de LaTeX estandar: por ejemplo \leqslant y \geqslant (desigualdades inclinadas), \nleq y \subsetneq (relaciones negadas y de subconjunto propio), \therefore y \because, \square y \blacksquare, y \varnothing (un glifo alternativo de conjunto vacio). Como amssymb carga amsfonts internamente, no hace falta mencionar amsfonts por separado.

amssymb, mas precisamente AMSFonts, tambien anade dos alfabetos matematicos: blackboard bold mediante \mathbb{...} y Fraktur (Gothic) mediante \mathfrak{...}. \mathbb{R}, \mathbb{C} y \mathbb{Z} dan las R, C y Z huecas en negrita para los reales, los complejos y los enteros. Ten en cuenta, sin embargo, que blackboard bold solo existe en mayusculas: no hay minusculas ni digitos. Fraktur, en cambio, viene en ambos casos, asi que puedes escribir \mathfrak{g} para un algebra de Lie g o \mathfrak{p} para un ideal primo p.

latex
\[
  \mathbb{R} \subset \mathbb{C}, \qquad
  \mathfrak{g} = \operatorname{Lie}(G)
\]

Este ejemplo muestra, en negrita hueca, que los reales R estan dentro de los complejos C, y luego escribe el algebra de Lie de un grupo de Lie G como una g Fraktur. Como \mathbb y \mathfrak son funciones de AMSFonts, \usepackage{amsfonts} basta si solo quieres las fuentes y no los simbolos; pero como normalmente tambien quieres los simbolos, cargar amssymb es la opcion fiable.

Texto dentro de matematicas — \text

En modo matematico, cada letra se lee como una variable, asi que escribir area produce el producto de cuatro variables. Para poner palabras ordinarias, rectas y con espaciado correcto, dentro de una formula, usa \text{...} de amsmath (mas precisamente, de amstext incorporado). La cadena encerrada se compone con la misma fuente y espaciado que el texto del cuerpo.

La ventaja de \text es que reconoce el tamano. El antiguo \mbox{...} tambien puede poner texto recto dentro de matematicas, pero permanece en tamano de cuerpo incluso dentro de un subindice o superindice, chocando con el tipo mas pequeno alrededor. \text se reduce para ajustarse al contexto: a tamano script dentro de un subindice, y aun mas en un script de segundo orden. Su nombre tambien expresa claramente su proposito.

latex
\[
  f(x) = x^2 \quad \text{for all } x \in \mathbb{R},
  \qquad v_{\text{max}} = 3.
\]

Aqui \text{for all } se compone recto y en tamano de cuerpo a la derecha de la formula (se respeta el espacio final), mientras que el subindice de v, \text{max}, se compone recto pero reducido a tamano script. Con \mbox, este ultimo saldria demasiado grande para su entorno. Ten en cuenta que escribir $...$ dentro de \text{...} cambia esa parte de nuevo a matematicas.

Operadores con nombre — \operatorname y \DeclareMathOperator

Los nombres de funciones como \sin, \log y \lim estan predefinidos en LaTeX estandar, compuestos rectos y con el espaciado adecuado. Pero los operadores que no estan en esa lista, como rank, Hom, ess sup y similares, debes definirlos tu. Dos comandos de amsmath (amsopn incorporado) se encargan de ello.

Para un operador recto usado una sola vez, usa \operatorname{...}. Por ejemplo, \operatorname{rank} A compone rank recto con el espaciado de operador correcto despues, de modo que no se pega ni se aleja demasiado de la A siguiente. Si usas el mismo operador muchas veces, es mas limpio definirlo una vez en el preambulo con \DeclareMathOperator{\rank}{rank} y luego escribir \rank en el cuerpo. \DeclareMathOperator es un comando solo para el preambulo; no puede usarse en el cuerpo del documento.

Ambos comandos tienen una forma con estrella que cambia donde van los scripts. \operatorname / \DeclareMathOperator sin estrella coloca el subindice en la parte inferior derecha del operador (como \log). \operatorname* / \DeclareMathOperator* con estrella lo coloca directamente debajo en display style, la posicion “limits”, como \lim, \sup y \max. Los operadores con indice debajo, como argmax y argmin, se definen con la forma con estrella.

latex
% プリアンブル / in the preamble
\DeclareMathOperator{\rank}{rank}
\DeclareMathOperator*{\argmax}{arg\,max}

% 本文 / in the body
\[
  \rank A \le n, \qquad
  \hat{x} = \argmax_{x \in S} f(x)
\]

Aqui se definen dos operadores en el preambulo. En el cuerpo, \rank A compone rank recto, mientras que \argmax, al estar en un display, coloca x ∈ S directamente debajo de arg max (porque se definio con estrella). El \, dentro de la definicion es un espacio fino entre arg y max, para que se lean como dos palabras.

Texto en alineaciones y subindices apilados

Los dos comandos siguientes entran en juego junto con entornos de alineacion y operadores grandes. Primero, \intertext{...} permite insertar una linea de texto en medio de un display multilinea (como align) conservando la alineacion. Si cierras el entorno, escribes el texto y lo vuelves a abrir, los puntos de alineacion antes y despues ya no coinciden. Con \intertext, las columnas & de las lineas de arriba y abajo siguen alineadas a traves del texto insertado.

latex
\begin{align}
  A &= B + C \\
  \intertext{ここで $C$ を展開すると / expanding $C$ gives}
  A &= B + D + E
\end{align}

Aqui una explicacion de una linea, “expanding C gives”, se situa entre las dos ecuaciones, pero el = de A &= permanece alineado arriba y abajo. \intertext solo tiene sentido dentro de entornos de alineacion como align (consulta la pagina separada para los detalles de esos entornos).

El otro, \substack{...}, apila varias lineas de condiciones debajo de un operador grande como una suma o producto, con lineas separadas por \\. Usalo, por ejemplo, para colocar “0 ≤ i ≤ m” y “0 < j < n” en dos lineas debajo de una suma. El entorno subarray hace algo muy parecido y ademas acepta un especificador de alineacion como l (izquierda).

latex
\[
  \sum_{\substack{0 \le i \le m \\ 0 < j < n}} a_{ij}
\]

Aqui dos condiciones se apilan en dos lineas bajo el signo de suma, indicando la suma de a_{ij} en ese rango. El interior de \substack sigue en modo matematico, asi que relaciones como \le funcionan como de costumbre.

Fracciones, binomios y control de numeracion

El comando de fraccion \frac forma parte de LaTeX estandar, pero amsmath anade variantes de estilo fijo. \dfrac{...}{...} siempre compone la fraccion en display style (grande) sin importar el contexto, y \tfrac{...}{...} siempre en text style (pequena). Usa \dfrac para agrandar una fraccion en texto corrido, o \tfrac para reducir una parte dentro de un display. Para fracciones continuas existe \cfrac{...}{...}, que mantiene legible cada nivel sin importar cuan profunda sea la anidacion.

Para coeficientes binomiales existe \binom{n}{k}, que compone el simbolo de combinacion: n sobre k dentro de parentesis redondos. Tambien tiene formas de estilo fijo, \dbinom (siempre display style) y \tbinom (siempre text style).

latex
\[
  \binom{n}{k} = \dfrac{n!}{k!\,(n-k)!}
\]

Aqui el lado izquierdo es el coeficiente binomial (n sobre k entre parentesis redondos) y el derecho es la fraccion n!/(k!(n−k)!) compuesta grande con \dfrac. El \, del denominador es un espacio fino entre el signo factorial y el parentesis.

Para numeracion, \numberwithin{equation}{section} es practico. Escrito en el preambulo, vincula los numeros de ecuacion a los numeros de seccion, reiniciando el contador de ecuaciones en cada nueva seccion. La primera ecuacion de la seccion 2, por ejemplo, se numera “(2.1)”. Es la forma estandar de evitar que los numeros de ecuacion lleguen a tres o cuatro digitos en un documento largo.

amsmath proporciona mucho mas: entornos de matrices (pmatrix, bmatrix, etc.), delimitadores de tamano automatico, entornos de alineacion para displays y matematicas en negrita mediante \boldsymbol. Las matrices se cubren en “Matrices & arrays,” los entornos de alineacion en “Displayed, aligned & numbered equations,” y las sumas y operadores grandes en “Sums, integrals & big operators.”

Que poner en el preambulo

En la practica, para cualquier documento con matematicas, lo habitual es poner juntas estas tres lineas en el preambulo: amsmath (la maquinaria de composicion), amssymb (simbolos, mas blackboard bold y Fraktur) y amsthm para entornos de teoremas y pruebas. El orden de carga es bastante libre, con la unica precaucion de que amsthm debe ir despues de amsmath.

document.tex
\documentclass{article}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{amsthm}
\begin{document}
\[
  \zeta(s) = \sum_{n=1}^{\infty} \frac{1}{n^{s}}, \qquad s \in \mathbb{C}
\]
\end{document}

Este ejemplo minimo carga los tres paquetes y luego compone la definicion de la funcion zeta de Riemann como display, con n=1 debajo y encima del signo de suma, y \mathbb{C} mostrando los complejos C en negrita hueca. Los entornos theorem, proof y relacionados que proporciona amsthm son un tema aparte, cubierto en la pagina “Theorems & proofs (amsthm).”

PaqueteFuncionQue proporciona
amsmathMaquinaria de composicion matematicaEntornos de alineacion, \text, \operatorname, \dfrac, \binom, etc.
amssymbSimbolos y alfabetos matematicosCientos de simbolos msam/msbm, \mathbb, \mathfrak (carga amsfonts)
amsfontsSolo fuentes\mathbb y \mathfrak (sin simbolos extra)
amsthmEntornos de teoremas y pruebas\newtheorem, entorno proof, \theoremstyle