0% encontró este documento útil (0 votos)
78 vistas112 páginas

Divulgación Matemática: TEMat Vol. 3

Cargado por

Andoni05
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
78 vistas112 páginas

Divulgación Matemática: TEMat Vol. 3

Cargado por

Andoni05
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

VOL.

3 — MAYO 2019
divulgación de trabajos de estudiantes de matemáticas e-ISSN 2530-9633

Asociación Nacional de Estudiantes de Matemáticas


e-ISSN 2530-9633

divulgación de trabajos de estudiantes de matemáticas

volumen 3
mayo de 2019

[Link]
[Link]

Una iniciativa de la
Asociación Nacional de Estudiantes de Matemáticas
Publica

Asociación Nacional de Estudiantes de Matemáticas


Plaza de las Ciencias, 3
Despacho 525, Facultad de Ciencias Matemáticas
Universidad Complutense de Madrid
28040 – Madrid
temat@[Link]
publicaciones@[Link]
contacto@[Link]

Colabora

Real Sociedad Matemática Española


Plaza de las Ciencias, 3
Despacho 525, Facultad de Ciencias Matemáticas
Universidad Complutense de Madrid
28040 – Madrid

Diseño de portada: Roberto Berná Larrosa, rbernalarrosa@[Link]


TEMat, divulgación de trabajos de estudiantes de matemáticas – volumen 3 – mayo de 2019
e-ISSN: 2530-9633
[Link]
© 2019 Asociación Nacional de Estudiantes de Matemáticas.
© 2019 los autores de los artículos.
cb Salvo que se indique lo contrario, el contenido de esta revista está disponible bajo una licencia
Creative Commons Reconocimiento 4.0 Internacional.
Equipo
Editor jefe
Isaac Sánchez Barrera, Barcelona Supercomputing Center (BSC) y Universitat Politècnica de Catalunya

Editor asociado
Alberto Espuny Díaz, University of Birmingham

Edición
Fernando Ballesta Yagüe, Universidad de Murcia
Emilio Domínguez Sánchez, Universidad de Murcia
Álvaro González Hernández, Universidad de Salamanca
Alejandra Martínez Moraian, Universidad de Alcalá
Javier Martínez Perales, BCAM - Basque Center for Applied Mathematics
Garazi Muguruza Lasa, Universidad Complutense de Madrid

Comité editorial
Pablo Manuel Berná Larrosa, Universidad Autónoma de Madrid
Francesc Gispert Sánchez, Concordia University
Domingo García Rodríguez (representante de la RSME), Universitat de València
Álvaro González Hernández (representante de la ANEM), Universidad de Salamanca
David González Moro
Víctor Manuel Ortiz Sotomayor, Universitat Politècnica de València
Eva Primo Tárraga, Universidad Rey Juan Carlos
Juan Miguel Ribera Puchades, Universidad de La Rioja
Israel Pablo Rivera Ríos, Instituto de Matemática de Bahía Blanca
Lucía Rotger García, Universidad de La Rioja

Revisiones externas
En este volumen han colaborado realizando revisiones externas:

Alberto Cobos Rábano, KU Leuven


Alba Delgado Calvache, Universitat Politècnica de Catalunya
Antonio Galbis, Universitat de València
Daniel Gil Muñoz, Universitat Politècnica de Catalunya
Susana Gutiérrez, University of Birmingham
María Isabel González-Vasco, Universidad Rey Juan Carlos
Jordi Montes Sanabria, Universitat Politècnica de Catalunya
Arturo Rodríguez Fanlo, Oxford University
Erik Sarrión Pedralva, Universitat Politècnica de València
Sorina Sferle, Universitat Politècnica de Catalunya
Sobre TEMat
TEMat es una revista de divulgación de trabajos de estudiantes de matemáticas publicada sin ánimo de
lucro por la Asociación Nacional de Estudiantes de Matemáticas. Se busca publicar trabajos divulgativos
de matemáticas, escritos principalmente (pero no exclusivamente) por estudiantes, de todo tipo: breves
reseñas, introducciones a temas de investigación complejos, o artículos explicando las bases e incluso
algún pequeño resultado de trabajos desarrollados por estudiantes.

TEMat persigue el doble objetivo de dar visibilidad a la calidad y diversidad de los trabajos realizados por
estudiantes de matemáticas en los centros españoles a la vez que permite a los estudiantes publicar sus
primeros artículos, familiarizándose así con el proceso de redacción, revisión y corrección que va asociado
a la actividad investigadora.

Se contemplan para su publicación artículos escritos en castellano de todas las áreas de las matemáticas,
incluyendo álgebra, análisis, ciencias de la computación, combinatoria, educación matemática, estadística,
geometría, teoría de números y cualquier otra área de las matemáticas (puras y aplicadas), así como
aplicaciones científicas o tecnológicas en las que las matemáticas jueguen un papel central.
Índice general

Carta del presidente de la ANEM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VII

«El problema de las sumas de dos cuadrados»,


de Alberto Cobos Rábano . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

«Geometría diferencial en el estudio de imágenes médicas»,


de Clara Rodríguez Pérez . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

«El teorema de Karush-Kuhn-Tucker, una generalización del teorema de los multiplicadores


de Lagrange, y programación convexa»,
de Fco. Javier Martínez Sánchez . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

«Códigos de Reed-Muller: las matemáticas detrás de las primeras fotografías del planeta rojo»,
de Andoni De Arriba De La Hera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

«Distribuciones tipo fase en un estudio de fiabilidad»,


de Christian José Acal González, Juan Eloy Ruiz Castro y Ana María Aguilera del Pino . . . . . . . . . 63

«Álgebras de Boole y la dualidad de Stone»,


de Clara María Corbalán Mirete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

«Buscando triángulos en grafos muy grandes: un ejemplo de property testing »,


de Alberto Espuny Díaz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

TEMat, 3 (2019) e-ISSN: 2530-9633 V


Carta del presidente de la ANEM
Con este tercer volumen de TEMat, la Asociación Nacional de Estudiantes de Matemáticas sigue adelante
consolidando este ambicioso proyecto, único a nivel internacional. Cada vez son más los artículos que
recibe el comité editorial, muestra innegable de la madurez que ha obtenido TEMat en estos tres años de
vida y de la ilusión que tiene el estudiantado con la revista y con fomentar la ciencia en España.

Asimismo, desde el presente volumen, la Real Sociedad Matemática Española (RSME) va a colaborar con
TEMat, por lo que aprovechamos para expresar el agradecimiento de la ANEM. Su colaboración servirá
para dar aún más difusión a TEMat y para ayudar en la revisión de algunos artículos, lo que aportará a la
revista más visibilidad y capacidad de edición y revisión.

Siguiendo las líneas de crecimiento, pronto se publicarán los primeros volúmenes temáticos de TEMat,
que servirán para acercar los congresos de jóvenes estudiantes a la publicación de artículos científicos.

Nada de esto sería posible sin el desinteresado trabajo de todos los revisores de los artículos. Gracias
a ellos, TEMat puede seguir creciendo. Para finalizar, me gustaría agradecer el incansable e intachable
trabajo de todo el comité editorial: nada de esto hubiera sido posible sin vosotros.

Guillem García Subies,


presidente de la ANEM.

Madrid, mayo de 2019.

TEMat, 3 (2019) e-ISSN: 2530-9633 VII


El problema de las sumas de dos cuadrados

� Alberto Cobos Rábanoa Resumen: Con el pretexto de resolver el problema clásico de la representación
KU Leuven como suma de dos cuadrados en teoría de números, introduciremos una serie de
albertocobosrabano@[Link] conceptos fundamentales de este campo, como son las funciones multiplicativas
o la descomposición de primos en anillos de enteros. Veremos también la relación
entre la teoría de números y otras ramas de las matemáticas, pues la resolución del
problema se basa en el estudio de los enteros gaussianos y de la divisibilidad en
este anillo. Concluiremos demostrando qué enteros son sumas de dos cuadrados
de enteros, y de cuántas maneras distintas.

Abstract: With the pretext of solving the classical number theory problem of rep-
resentations as a sum of two squares, we shall introduce a series of fundamental
concepts of this field, such as multiplicative functions or factorizations of primes
in rings of integers. We shall also see the connection between number theory and
other fields of mathematics, as the solution of the problem is based on the study of
Gaussian integers and their divisibility. We shall finish by showing which integers
are a sum of two squares of integers, and in how many different ways.

Palabras clave: teoría de números, sumas de dos cuadrados, función


multiplicativa, enteros gaussianos, primos gaussianos.
MSC2010: 11E25.
Recibido: 23 de agosto de 2018.
Aceptado: 13 de septiembre de 2018.

Agradecimientos: Quiero agradecer al profesor Luis Manuel Navas, de la Universidad de Salamanca, todo el
tiempo que me ha dedicado y todo lo que he aprendido de él en el desarrollo de mi Trabajo de Fin de Grado,
del cual se extrae este artículo.

Referencia: COBOS RÁBANO, Alberto. «El problema de las sumas de dos cuadrados». En: TEMat, 3 (2019), págs. 1-16.
ISSN: 2530-9633. URL: [Link]

a El autor estaba afiliado a la Universidad de Salamanca (USAL) durante la realización de este trabajo.

cb Este trabajo se distribuye bajo una licencia Creative Commons Reconocimiento 4.0 Internacional
[Link]
El problema de las sumas de dos cuadrados

1. Introducción
El objetivo de este artículo es resolver el siguiente problema clásico de la teoría de números.
Problema 1. Determinar qué números naturales son suma de dos cuadrados de enteros. ◀

En otras palabras, queremos determinar qué 𝑛 ∈ Ž se pueden expresar en la forma 𝑛 = 𝑎2 + 𝑏2 para


ciertos 𝑎, 𝑏 ∈ š. Con esto ya podemos dar nuestra primera definición.
Definición 2. Diremos que una pareja (𝑎, 𝑏) ∈ š2 es una representación de 𝑛 ∈ Ž como suma de dos
cuadrados si 𝑎2 + 𝑏2 = 𝑛. Por abuso de notación, diremos también que 𝑎2 + 𝑏2 es una representación de
𝑛, considerando relevante tanto el orden como el signo de 𝑎 y 𝑏. ◀

Relacionado con el problema de determinar los naturales que son representables, queremos resolver
también el siguiente problema.
Problema 3. Dado 𝑛 ∈ Ž representable como suma de dos cuadrados, dar una fórmula cerrada para el
número de representaciones distintas de 𝑛 como suma de dos cuadrados. ◀

La primera referencia histórica a problemas de sumas de cuadrados es el problema 8 de la Aritmética de


Diofanto, que pide escribir un cuadrado como suma de dos cuadrado. Dicho problema fue retomado por
Fermat, quien enunció también el problema 1. Véase el libro de Weil [9] para más información.
Comencemos con un ejemplo para comprender los problemas 1 y 3.
Ejemplo 4. Para números «pequeños» es fácil hacer las comprobaciones pertinentes a mano. Un ejemplo
de número que es suma de dos cuadrados, junto con todas las representaciones posibles, es el siguiente:
10 = 12 + 32 = (−1)2 + 32 = 12 + (−3)2 = (−1)2 + (−3)2
= 32 + 12 = 32 + (−1)2 = (−3)2 + 12 = (−3)2 + (−1)2 .
Este ejemplo nos sirve para aclarar que contamos como representaciones distintas las permutaciones y
los cambios de signo; es decir, estamos contando las soluciones (𝑥, 𝑦) ∈ š2 de la ecuación 𝑥2 + 𝑦2 = 𝑛,
para cada 𝑛 fijo. También 4 es suma de dos cuadrados:
4 = 22 + 02 = (−2)2 + 02 = 02 + 22 = 02 + (−2)2 .
En este caso existen cuatro representaciones en lugar de ocho, porque cambiar de signo a 0 es no hacer
nada. También es fácil comprobar que 3 no es suma de dos cuadrados, luego el problema 1 no es trivial,
pues hay números que sí son representables y otros que no. También se puede comprobar que 1996 no es
suma de dos cuadrados, o que
2018 = 432 + 132 = (−43)2 + 132 = 432 + (−13)2 = (−43)2 + (−13)2
= 132 + 432 = (−13)2 + 432 = 132 + (−43)2 = (−13)2 + (−43)2
son todas las representaciones de 2018 como sumas de dos cuadrados, para lo cual es recomendable leer
primero este documento en lugar de hacer todos los cálculos «por fuerza bruta». ◀

Antes de continuar, introducimos algunos conceptos y notaciones.


Definición 5. Dados 𝑛, 𝑘 ∈ Ž, se denomina conjunto de representaciones de 𝑛 como suma de 𝑘 cua-
drados y se denota 𝑅𝑘 (𝑛) al conjunto
𝑅𝑘 (𝑛) = {(𝑥1 , … , 𝑥𝑘 ) ∈ š𝑘 ∶ 𝑥12 + … + 𝑥𝑘2 = 𝑛}.
Estamos interesados en calcular su cardinal, para lo cual consideramos la función que sobre 𝑛 ∈ Ž toma
el valor
𝑟𝑘 (𝑛) = #𝑅𝑘 (𝑛),
denominada función de suma de 𝑘 cuadrados o función de representación (como suma de 𝑘 cuadrados).
Por tanto, 𝑟𝑘 (𝑛) es el número de representaciones de 𝑛 como suma de 𝑘 cuadrados de enteros, contando
como distintos los cambios de signo y las permutaciones1 . ◀
1 También 𝑘
tiene sentido considerar el caso 𝑛 = 0, siendo 𝑅𝑘 (0) = {(0, …, 0)} y, por tanto, 𝑟𝑘 (0) = 1 para todo 𝑘 ∈ Ž.

2 [Link]
Cobos Rábano

(0,1)

(-1,0) (1,0)
(0,0)

(0,-1)

Figura 1: Representación gráfica de 𝑅2 (1) = 𝑆 1 (0, 1) ∩ š2 y 𝑅2 (7) = 𝑆 1 (0, √7) ∩ š2 = ∅.

De la definición surge una duda curiosa: ¿por qué nos interesa contar como distintas las permutaciones
y los cambios de signo? Un motivo es que la interpretación geométrica de 𝑅𝑘 (𝑛) es que estos son los
puntos que pertenecen a la esfera de centro 0 y radio √𝑛 en ’𝑘 y tienen coordenadas enteras (véase la
figura 1, en la que hemos representado 𝑅2 (1) y 𝑅2 (7) = ∅). Por tanto, geométricamente, está claro que las
permutaciones y los cambios de signo nos dan puntos distintos y deberían contarse como tales.
Ejemplo 6. Un ejemplo trivial de función de representación es el caso 𝑘 = 1. Para 𝑛 ∈ Ž se tiene que

2 si 𝑛 es un cuadrado perfecto,
𝑟1 (𝑛) = {
0 si 𝑛 no es un cuadrado perfecto,

siendo en el primer caso √𝑛 y −√𝑛 las dos representaciones distintas. ◀

Sobre las funciones de representación hay muchos resultados conocidos, como por ejemplo el teorema de
los cuatro cuadrados de Lagrange, que afirma que 𝑟4 (𝑛) > 0 para todo 𝑛 ∈ Ž; es decir, que todo entero no
negativo es suma de cuatro cuadrados de enteros. De hecho, 4 es el mínimo valor de 𝑘 con esta propiedad,
pues ya hemos visto que 3 no es suma de dos cuadrados y no es complicado comprobar que 7 no es
suma de tres cuadrados. También se conoce una fórmula para 𝑟4 (𝑛), aunque no abordaremos aquí su
demostración. No obstante, no todo está dicho sobre este tipo de problemas. Por ejemplo, el problema de
Waring, «para cada ℓ ∈ Ž, ¿existe un 𝑘 ∈ Ž tal que cada 𝑛 ∈ Ž es suma de a lo más 𝑘 potencias ℓ-ésimas?»,
no está completamente resuelto, pues se sabe que la respuesta es afirmativa pero se desconocen los valores
óptimos de 𝑘.
Concluimos esta introducción con una pregunta: ¿qué herramientas son necesarias para resolver los
problemas 1 y 3? La base fundamental que vamos a utilizar es el álgebra. Dedicaremos la sección 2 a
recordar los conceptos y resultados básicos de la teoría de divisibilidad, que trata de generalizar conceptos
como división, máximo común divisor o elemento primo más allá de los números enteros, y se estudia
en cursos básicos de cualquier grado en Matemáticas. Aplicaremos esta teoría al estudio de los enteros
gaussianos, que son los elementos de la forma 𝑎 + 𝑏i con 𝑎, 𝑏 ∈ š pensados como subanillo de los números
complejos. En particular, queremos determinar los primos gaussianos, y relacionarlos con la solución
del problema 1. Por último, introduciremos un concepto de teoría de números como son las funciones
multiplicativas que nos permitirá, junto con toda la información antes recabada, solucionar el problema 3.

2. Un repaso de teoría de divisibilidad


Para facilitar la comprensión de las demás secciones, hemos decidido añadir este repaso sobre teoría
de la divisibilidad. Asumimos que el lector está familiarizado con la teoría de divisibilidad en anillos
como se estudia en muchos cursos introductorios de álgebra abstracta; en particular, suponemos que
conoce los conceptos de elementos primos e irreducibles, unidades y asociados, y máximo común divisor.
Recogeremos los principales resultados que nos harán falta posteriormente, aunque no incluiremos su
demostración, al no ser este el objetivo de este documento. Puede consultarse el libro de Jacobson [6,
capítulo 2].

TEMat, 3 (2019) e-ISSN: 2530-9633 3


El problema de las sumas de dos cuadrados

En lo sucesivo denotaremos por 𝐴 a un anillo conmutativo con unidad 1 ≠ 02 y sin divisores de cero (esto
es, un dominio de integridad3 ) y llamaremos indistintamente unidad o elemento invertible a cualquier
𝑎 ∈ 𝐴 tal que existe 𝑏 ∈ 𝐴 con 𝑎𝑏 = 1.
Definición 7. Un elemento 𝑑 ∈ 𝐴 se dice que divide a otro elemento 𝑎 ∈ 𝐴 y se denota 𝑑 ∣ 𝑎 si 𝑎 = 𝑚𝑑
para algún 𝑚 ∈ 𝐴. En ese caso, se dice que 𝑑 es un divisor o un factor de 𝑎, mientras que la igualdad
𝑎 = 𝑚𝑑 es una factorización de 𝑎. En términos de ideales, 𝑑 ∣ 𝑎 ⟺ (𝑎) ⊆ (𝑑). ◀

Definición 8. Dos elementos 𝑎, 𝑏 ∈ 𝐴 se dice que son asociados (o que 𝑎 es un asociado de 𝑏, o que 𝑏
es un asociado de 𝑎) si generan el mismo ideal; es decir, si (𝑎) = (𝑏). En términos de divisibilidad, esto
equivale a que 𝑎 ∣ 𝑏 y 𝑏 ∣ 𝑎. Escribiremos 𝑎 ∼ 𝑏 si 𝑎 y 𝑏 son asociados. En un dominio de integridad, es fácil
comprobar que 𝑎 ∼ 𝑏 si y solo si 𝑏 = 𝜖𝑎 para alguna unidad 𝜖. Claramente, ser asociados es una relación
de equivalencia en 𝐴. ◀

Definición 9. Sea 𝑐 ∈ 𝐴 no nulo y no invertible. Dada una factorización 𝑐 = 𝑎𝑏, diremos que 𝑎 es un factor
(o divisor) no trivial si 𝑎 no es invertible y no es asociado de 𝑐. En otro caso, decimos que 𝑎 es un factor
trivial. En caso de que tanto 𝑎 como 𝑏 sean factores no triviales, decimos que la factorización 𝑐 = 𝑎𝑏 es
una factorización no trivial. ◀

Definición 10. Un elemento no invertible 𝑝 ∈ 𝐴, 𝑝 ≠ 0, se dice que es irreducible si 𝑝 solamente admite


factorizaciones triviales; esto es, si 𝑝 = 𝑎𝑏, entonces o bien 𝑎 o bien 𝑏 es una unidad. Por el contrario, si
𝛼 ∈ 𝐴 es no nulo y no invertible y admite alguna factorización no trivial, se dice que 𝛼 es compuesto. ◀
Definición 11. Un elemento no invertible 𝑝 ∈ 𝐴, 𝑝 ≠ 0, se dice que es primo si para cualesquiera 𝑎, 𝑏 ∈ 𝐴
tales que 𝑝 ∣ 𝑎𝑏, o bien 𝑝 ∣ 𝑎 o bien 𝑝 ∣ 𝑏. En términos de ideales, esto significa que (𝑝) es un ideal primo
(no nulo). ◀

Lema 12. En un dominio íntegro, los elementos primos son irreducibles.


Lema 13. En un dominio de ideales principales4 (DIP) 𝐴, un elemento no nulo y no invertible 𝑎 ∈ 𝐴 es
irreducible si y solo si el ideal (𝑎) es maximal. En particular, los elementos irreducibles son primos.
Proposición 14 (unicidad de la factorización en primos en cualquier dominio). Sea 𝐴 un dominio de
integridad y sea 𝑎 ∈ 𝐴 un elemento no nulo y no invertible. Si 𝑎 es producto de primos5 , entonces esta
factorización es única salvo reordenaciones y asociados. En otras palabras, si
𝑎 = 𝑝1 𝑝2 ⋯ 𝑝𝑛 = 𝑞1 𝑞2 ⋯ 𝑞𝑚 ,
donde los 𝑝𝑖 y los 𝑞𝑗 son primos (no necesariamente distintos) y 𝑛, 𝑚 ∈ Ž, entonces 𝑛 = 𝑚 y, tras una
reordenación adecuada, 𝑝𝑖 ∼ 𝑞𝑖 para todo 𝑖.
Proposición 15 (existencia de factorización en irreducibles en dominios noetherianos). En un dominio
íntegro noetheriano6 𝐴, todo elemento no nulo y no invertible es producto finito de elementos irreducibles.
En particular, esto es válido para un DIP.
Definición 16. Un dominio de factorización única (DFU) es un dominio íntegro en el que todo elemento
no nulo y no invertible es producto de irreducibles de manera única salvo reordenaciones y asociados. ◀
Lema 17. En un dominio de factorización única, todo elemento irreducible es primo.
Teorema 18. Un dominio de ideales principales es un dominio de factorización única.
Definición 19. Un domino euclídeo es un dominio íntegro 𝐴 en el que existe una función 𝜈 ∶ 𝐴⧵{0} → š≥0
tal que, si 𝑎, 𝑏 ∈ 𝐴 y 𝑏 ≠ 0, existen 𝑞, 𝑟 ∈ 𝐴 con 𝑎 = 𝑞𝑏 + 𝑟 y o bien 𝑟 = 0 o bien 𝜈(𝑟) < 𝜈(𝑏)7 . ◀

2 Esta condición sirve para excluir el caso del anillo 𝐴 = 0.


3 Recordamos que un anillo conmutativo con unidad 𝐴 se dice que es íntegro o que es un dominio de integridad si para
cualesquiera 𝑎, 𝑏 ∈ 𝐴 se verifica la condición 𝑎𝑏 = 0 ⟹ 𝑎 = 0 o 𝑏 = 0.
4 Recordamos que un dominio de ideales principales es un dominio de integridad 𝐴 en el que todo ideal es de la forma (𝑎) para

algún 𝑎 ∈ 𝐴.
5 En general, un elemento de un dominio de integridad puede no tener descomposición como producto de primos. Por ello

introducimos a continuación el concepto de dominio de factorización única.


6 Recordamos que un anillo es noetheriano si verifica la condición de cadena ascendente; es decir, si para cada cadena de ideales

𝐼1 ⊆ … ⊆ 𝐼𝑛 ⊆ … existe un 𝑛 tal que 𝐼𝑛 = 𝐼𝑛+𝑚 para todo 𝑚 ∈ Ž.


7 Sin pérdida de generalidad, podemos asumir que 𝜈(𝑎) ≤ 𝜈(𝑎𝑏) para 𝑎, 𝑏 ∈ 𝐴 con 𝑎, 𝑏 ≠ 0. A veces se considera esta desigualdad

como parte de la definición de dominio euclídeo.

4 [Link]
Cobos Rábano

Lema 20. Un domino euclídeo es un dominio de ideales principales.


Corolario 21. Un dominio euclídeo es un dominio de factorización única.
Definición 22. Un máximo común divisor (mcd) de dos elementos 𝑎, 𝑏 en un dominio de integridad 𝐴
es un divisor común 𝑑 de 𝑎 y 𝑏 que es maximal en la relación de divisibilidad; esto es, un 𝑑 ∈ 𝐴 tal que
𝑑 ∣ 𝑎 y 𝑑 ∣ 𝑏, y si 𝛿 es cualquier otro elemento con la misma propiedad, entonces 𝛿 ∣ 𝑑8 . Decimos que
𝑎, 𝑏 son primos relativos o coprimos si su mcd existe y es una unidad. El máximo común divisor de dos
elementos es único salvo asociados. ◀

Teorema 23 (lema de Bezout). Si 𝐴 es un DIP, un máximo común divisor de dos elementos 𝑎, 𝑏 ∈ 𝐴 es


cualquier elemento 𝑑 tal que (𝑎) + (𝑏) = (𝑑).
Concluimos con una lista de sencillas observaciones sobre el máximo común divisor y algunos ejemplos
de los conceptos que hemos introducido previamente.
Corolario 24 (propiedades de divisibilidad). Sea 𝐴 un DIP y sean 𝑎, 𝑏, 𝑐, 𝑎′ , 𝑏′ ∈ 𝐴. Entonces,
• Los elementos 𝑎, 𝑏 ∈ 𝐴 son coprimos si y solo si existen 𝑠, 𝑡 ∈ 𝐴 tales que 𝑠𝑎 + 𝑡𝑏 = 1.
• Si 𝑎, 𝑏 son coprimos y 𝑎 ∣ 𝑏𝑐, entonces 𝑎 ∣ 𝑐.
• Si 𝑎, 𝑏 son coprimos y 𝑎 ∣ 𝑐, 𝑏 ∣ 𝑐, entonces 𝑎𝑏 ∣ 𝑐.
• Los elementos 𝑎, 𝑏 son ambos coprimos con 𝑐 si y solo si 𝑎𝑏 es coprimo con 𝑐.
• Si 𝑎𝑏 = 𝑎′ 𝑏′ y tanto 𝑎, 𝑏′ como 𝑎′ , 𝑏 son coprimos, entonces 𝑎 ∼ 𝑎′ y 𝑏 ∼ 𝑏′ .
Ejemplo 25. El anillo š es un dominio euclídeo tomando como 𝜈 la función valor absoluto, por lo que
también es un DIP (lema 20) y un DFU (corolario 21).
Si 𝑘 es un cuerpo, es bien conocido que sus únicos ideales son (0) y 𝑘 = (1), luego 𝑘 es un DIP y también
un DFU (teorema 18); es más, se comprueba fácilmente que el anillo de polinomios en una variable con
coeficientes en 𝑘, que denotamos por 𝑘[𝑥], es un dominio euclídeo tomando 𝜈(𝑝(𝑥)) igual al grado de
𝑝(𝑥).
En general, si un anillo 𝐴 es un DFU, también 𝐴[𝑥] es un DFU; en particular, š[𝑥] es un DFU. Si š[𝑥] fuera
un DIP, entonces todo elemento irreducible generaría un ideal maximal (lema 13); en particular, como 𝑥
es irreducible, (𝑥) sería maximal y, por tanto, š[𝑥]/(𝑥) ≃ š sería un cuerpo, lo cual es claramente falso. Es
decir, š[𝑥] es un DFU que no es un DIP, y, por tanto, tampoco es un dominio euclídeo (lema 20). ◀

3. Enteros gaussianos
Tras haber refrescado conceptos como la divisibilidad, los dominios de ideales principales, los dominios
de factorización única, etc., es ahora el momento de ponerlos en práctica. Para ello, vamos a introducir
los enteros gaussianos. Comenzaremos definiendo este anillo y exponiendo algunas de sus propiedades
básicas, para enfrascarnos enseguida en la demostración de que los enteros gaussianos forman un dominio
euclídeo, pudiendo, por tanto, aplicar los conocimientos adquiridos en la sección 2. Concluiremos esta
sección mostrando que existe una estrecha relación entre divisibilidad en š y divisibilidad en los enteros
gaussianos. Todos estos detalles constituyen los primeros pasos hacia nuestro objetivo final: resolver los
problemas 1 y 3. Para esta sección y la siguiente tomamos como referencia el artículo divulgativo de
Conrad [2].
Definición 26. Se denomina anillo de enteros gaussianos al subanillo š[i] de ƒ definido como
š[i] = {𝑎 + 𝑏i ∶ 𝑎, 𝑏 ∈ š}. ◀

En los números complejos, dado 𝑧 = 𝑥 + 𝑦i, se define su conjugado como 𝑧 = 𝑥 − 𝑦i. Esta operación se
restringe bien a los enteros gaussianos pues, si 𝛼 ∈ š[i], entonces 𝛼 ∈ š[i]. Por otro lado, como ƒ es
un cuerpo, š[i] es un anillo íntegro. Además, podemos pensar que los enteros son enteros gaussianos
mediante el morfismo inyectivo de anillos 𝑛 ↦ 𝑛 + 0i para cada 𝑛 ∈ š.
8 Como es de esperar, si tomamos 𝐴 = š el concepto de máximo común divisor que acabamos de definir coincide con el habitual,

y es único salvo cambio de signo.

TEMat, 3 (2019) e-ISSN: 2530-9633 5


El problema de las sumas de dos cuadrados

Ejemplo 27. Dados 𝛼, 𝛽 ∈ š[i], podemos determinar si 𝛼 ∣ 𝛽 en š[i] dividiendo en ƒ. Esto nos dará
un cociente de elementos de š[i] (que pertenece, por tanto, al cuerpo de fracciones, ‘[i]) y se trata de
comprobar si este cociente vuelve a ser un elemento de š[i]. Por ejemplo,

14 + 3i (14 + 3i)(4 − 5i) 71 − 58i


= = ∉ š[i],
4 + 5i 16 + 25 41
lo cual demuestra que (4 + 5i) ∤ (14 + 3i) en š[i]. ◀

También podemos restringir a los enteros gaussianos la norma que a 𝑧 = 𝑥 + 𝑦i ∈ ƒ le asigna el valor

𝑁(𝑧) = 𝑧𝑧 = (𝑥 + 𝑦i) (𝑥 − 𝑦i) = 𝑥2 + 𝑦2 .

Está claro, además, que si 𝛼 ∈ š[i], entonces 𝑁(𝛼) ∈ š≥0 . La norma 𝑁 nos facilita información sobre el
anillo de enteros gaussianos. Además, utilizando que la conjugación compleja es multiplicativa (es decir,
𝑧1 𝑧2 = 𝑧1 ⋅ 𝑧2 ) se comprueba fácilmente que también es multiplicativa la norma 𝑁.
Una propiedad fundamental sobre š[i] es que se trata de un dominio euclídeo y, por tanto, hay factoriza-
ción única como producto de irreducibles (que son lo mismo que los primos) a partir de los resultados
mencionados en la sección previa.
Teorema 28. š[i] es un dominio euclídeo con respecto a la norma 𝑁. En otras palabras, dados 𝛼, 𝛽 ∈ š[i]
con 𝛽 ≠ 0, existen 𝛾, 𝜌 ∈ š[i] tales que 𝛼 = 𝛽𝛾 + 𝜌 y 𝑁(𝜌) < 𝑁(𝛽). De hecho, podemos elegir 𝜌 tal que
𝑁(𝜌) ≤ 12 𝑁(𝛽).
Demostración. Sean 𝛼, 𝛽 ∈ š[i] con 𝛽 ≠ 0. Dividimos en ƒ para obtener que

𝛼 𝛼𝛽 𝛼𝛽 𝑚 + 𝑛i
= = = ,
𝛽 𝛽𝛽 𝑁(𝛽) 𝑁(𝛽)

donde 𝑚 + 𝑛i = 𝛼𝛽 ∈ š[i]. Usando que š es un dominio euclídeo, podemos encontrar 𝑞1 , 𝑞2 , 𝑟1 , 𝑟2 ∈ š


tales que
𝑚 = 𝑁(𝛽)𝑞1 + 𝑟1 , 𝑛 = 𝑁(𝛽)𝑞2 + 𝑟2
y 0 ≤ |𝑟1 |, |𝑟2 | ≤ 12 𝑁(𝛽). Esto es consecuencia de permitir restos negativos; es decir, en lugar de to-
mar restos 𝑟1 , 𝑟2 ∈ {0, 1, … , 𝑁(𝛽) − 1}, permitimos elegir los restos de entre los enteros del intervalo
[−𝑁(𝛽)/2, … , 𝑁(𝛽)/2). Entonces,

𝛼 𝑁(𝛽)𝑞1 + 𝑟1 + (𝑁(𝛽)𝑞2 + 𝑟2 )i 𝑟 + 𝑟2 i
= = 𝑞 1 + 𝑞2 i + 1 .
𝛽 𝑁(𝛽) 𝑁(𝛽)

Tomamos 𝛾 = 𝑞1 + 𝑞2 i, reordenamos y multiplicamos por 𝛽, para obtener que


𝑟1 + 𝑟2 i
𝛼 − 𝛽𝛾 = .
𝛽

Basta con comprobar que 𝑁(𝛼 − 𝛽𝛾) ≤ 12 𝑁(𝛽), y tomar 𝜌 = 𝛼 − 𝛽𝛾. Ahora bien, tomando normas a ambos
lados, como 𝑁(𝛽) = 𝑁(𝛽), queda que
1
𝑟2 + 𝑟22 𝑁(𝛽)2 + 14 𝑁(𝛽)2 1
𝑁(𝛼 − 𝛽𝛾) = 1 ≤ 4
= 𝑁(𝛽). ▪
𝑁(𝛽) 𝑁(𝛽) 2

A continuación, presentamos una serie de resultados que relacionan la divisibilidad en š y en š[i] por
medio de la norma 𝑁. Algunas de estas propiedades serán claves para resolver el problema de los dos
cuadrados.
Lema 29. Sean 𝑐 ∈ š y 𝛼 = 𝑎 + 𝑏i ∈ š[i]. Entonces, 𝑐 ∣ 𝛼 en š[i] si y solo si 𝑐 ∣ 𝑎 y 𝑐 ∣ 𝑏 en š. En particular,
tomando 𝑏 = 0 se deduce que 𝑐 ∣ 𝑎 en š[i] si y solo si 𝑐 ∣ 𝑎 en š.
Demostración. Si 𝛽 = 𝑚 + 𝑛i ∈ š[i], 𝑐𝛽 = 𝛼 ⟺ 𝑐𝑚 + 𝑐𝑛i = 𝑎 + 𝑏i ⟺ 𝑐𝑚 = 𝑎 y 𝑐𝑛 = 𝑏. ▪

6 [Link]
Cobos Rábano

Proposición 30 (propiedades de divisibilidad sobre la norma). Sean 𝛼, 𝛽 ∈ š[i].


1. Si 𝛽 ∣ 𝛼, entonces 𝑁(𝛽) ∣ 𝑁(𝛼).
2. 𝛼 es una unidad si y solo si 𝑁(𝛼) = 1.
3. Las unidades gaussianas son š[i]∗ = {±1, ±i}.
4. Si 𝛼 ≠ 0 y 𝛽 ∣ 𝛼, entonces 𝑁(𝛽) = 𝑁(𝛼) si y solo si 𝛽 ∼ 𝛼.
5. 𝑁(mcdš[i] (𝛼, 𝛽)) ∣ mcdš (𝑁(𝛼), 𝑁(𝛽)).
6. Si 𝛼, 𝛽 ≠ 0, entonces cualquier divisor común de 𝛼, 𝛽 de norma máxima es un mcd.
7. Si 𝛼, 𝛽 tienen normas coprimas en š, entonces 𝛼, 𝛽 son coprimos en š[i].
8. Si 𝑁(𝛼) es primo en š, entonces 𝛼 es primo en š[i].
Demostración.
1. Es consecuencia inmediata de ser 𝑁 multiplicativa.
2. Si 𝛼𝛽 = 1, entonces 𝑁(𝛼)𝑁(𝛽) = 𝑁(𝛼𝛽) = 𝑁(1) = 1 y, como 𝑁(𝛼), 𝑁(𝛽) ∈ š≥0 , se debe dar que
𝑁(𝛼) = 𝑁(𝛽) = 1. Recíprocamente, 1 = 𝑁(𝛼) = 𝛼𝛼 indica que 𝛼 es el inverso de 𝛼.
3. Basta resolver 𝑎2 + 𝑏2 = 1 para 𝑎, 𝑏 ∈ š.
4. Dado 𝛼 ≠ 0, si 𝛽 ∣ 𝛼 tenemos que 𝛼 = 𝛾𝛽. Entonces, 𝑁(𝛼) = 𝑁(𝛾)𝑁(𝛽), luego 𝑁(𝛼) = 𝑁(𝛽) si y solo si
𝑁(𝛾) = 1, que por la propiedad 2 equivale a que 𝛾 ∈ š[i]∗ y, por tanto, 𝛽 ∼ 𝛼.
5. Por la propiedad 2, la norma es independiente de la elección de asociados. Si 𝛿 ∣ 𝛼, 𝛽, por la
propiedad 1 tenemos que 𝑁(𝛿) ∣ 𝑁(𝛼), 𝑁(𝛽) y, por tanto, 𝑁(𝛿) ∣ mcdš (𝑁(𝛼), 𝑁(𝛽)). En particular, esto
es válido para 𝛿 = mcdš[i] (𝛼, 𝛽).
6. Sea 𝛿 un mcd de 𝛼, 𝛽 y sea 𝑑 un divisor común de 𝛼, 𝛽 de norma máxima. Por definición, 𝑑 ∣ 𝛿, luego
por la propiedad 1 tenemos que 𝑁(𝑑) ∣ 𝑁(𝛿) y, por tanto, 𝑁(𝑑) ≤ 𝑁(𝛿), así que por maximalidad de
𝑁(𝑑) se tiene que 𝑁(𝑑) = 𝑁(𝛿). De la propiedad 4 deducimos que 𝑑 ∼ 𝛿, luego 𝑑 también es un mcd
de 𝛼, 𝛽.
7. Por la propiedad 5, si mcdš (𝑁(𝛼), 𝑁(𝛽)) = 1, entonces 𝑁(mcdš[i] (𝛼, 𝛽)) = 1, luego de la propiedad 2
se deduce que mcdš[i] (𝛼, 𝛽) es una unidad, es decir, 𝛼 y 𝛽 son coprimos en š[i].
8. Si 𝑁(𝛼) = 𝑝 para algún primo 𝑝 y 𝛼 = 𝛽𝛾, entonces 𝑝 = 𝑁(𝛽)𝑁(𝛾). Utilizando la factorización única
en Ž deducimos que 𝑁(𝛽) = 1 o 𝑁(𝛾) = 1; por tanto, o bien 𝛽 o bien 𝛾 es una unidad. ▪
Observación 31. La propiedad 1 no es una equivalencia. En el ejemplo 27 vimos que (4 + 5i) ∤ (14 + 3i),
pero 𝑁(4 + 5i) = 41 ∣ 205 = 𝑁(14 + 3i).
La propiedad 4 solo es cierta bajo la hipótesis de que 𝛽 ∣ 𝛼. Es fácil encontrar enteros gaussianos que
tengan igual norma pero no sean asociados. Por ejemplo, 𝛼 = 2 + i, 𝛽 = 2 − i tienen norma 5; 𝛼 = 3 + 4i,
𝛽 = 5 tienen norma 25, y 1 + 8i, 4 + 7i tienen norma 65.
Del mismo modo, la propiedad 8 permite comprobar la primalidad en š[i] a través de la norma, pero
no es una equivalencia. Por ejemplo, es fácil comprobar que 3 es primo en š[i] pero tiene norma 9. Esto
muestra, además, que no es cierto en general que 𝑁(mcdš[i] (𝛼, 𝛽)) = mcdš (𝑁(𝛼), 𝑁(𝛽)). Por ejemplo,
2 − i y 2 + i son coprimos (pues son primos como consecuencia de la propiedad 8 y, como hemos dicho
anteriormente, no son asociados), pero ambos tienen norma igual a 5. También 𝛼 = 3 + 4i y 𝛽 = 3 + i
son coprimos (pues 𝛼 = (2 + i)2 y 𝛽 = (2 − i)(1 + i)), mientras que 𝑁(𝛼) = 25, 𝑁(𝛽) = 10, de modo que
mcdš (𝑁(𝛼), 𝑁(𝛽)) = 5. ◀

Corolario 32. Se verifican las siguientes afirmaciones:


1. Un entero gaussiano 𝛼 es no nulo y no invertible si y solo si 𝑁(𝛼) > 1.
2. Supongamos que 𝑁(𝛼) > 1. Un factor 𝛽 de 𝛼 es trivial si y solo si 𝑁(𝛽) = 1 (unidad) o 𝑁(𝛽) = 𝑁(𝛼)
(asociado). Por tanto, existen ocho factores triviales de 𝛼, dados por las cuatro unidades ±1, ±i y los
cuatro asociados ±𝛼, ±i𝛼. Además, un divisor 𝛽 de 𝛼 es no trivial si y solo si 1 < 𝑁(𝛽) < 𝑁(𝛼).
Demostración. Basta aplicar que 𝑁 valora en š≥0 , la equivalencia entre tener norma nula y ser 0, y la
propiedad 2 de la proposición 30 para demostrar la primera afirmación, mientras que la segunda afirmación
se deduce de las propiedades 1, 2, 3 y 4 de la proposición 30. ▪

TEMat, 3 (2019) e-ISSN: 2530-9633 7


El problema de las sumas de dos cuadrados

4. Primos gaussianos y sumas de dos cuadrados


Nos proponemos ahora resolver el problema 1. Para ello, estudiaremos primero qué primos enteros son
representables como sumas de dos cuadrados, lo cual está íntimamente relacionada con la divisibilidad
en š[i] y da sentido al estudio que hemos hecho de este anillo. Esta relación motivará que dediquemos
parte de nuestro tiempo a explorar los primos enteros que son primos gaussianos, la factorización en š[i]
y a determinar todos los primos gaussianos. Concluiremos determinando la factorización de cualquier
entero como producto de primos gaussianos, y utilizando este resultado para resolver el problema 1.
Comenzamos con una sencilla observación que nos ayuda a entender por qué los enteros gaussianos son
esenciales para nuestro estudio.
Proposición 33. Un entero 𝑛 es representable como suma de dos cuadrados si y solo si existe un entero
gaussiano 𝛼 tal que 𝑛 = 𝑁(𝛼).
Demostración. Esto es inmediato a partir de la expresión 𝑁(𝑎 + 𝑏i) = 𝑎2 + 𝑏2 . ▪

La proposición previa nos permite hacer una de las observaciones fundamentales, que era conocida
por Fermat y Euler: la propiedad de ser representable como suma de dos cuadrados es una propiedad
multiplicativa. Es decir, si 𝑛1 , 𝑛2 , … , 𝑛𝑠 ∈ Ž son representables con 𝑛𝑖 = 𝑁(𝛼𝑖 ) para cada 𝑖, entonces
𝑛1 𝑛2 ⋯ 𝑛𝑠 = 𝑁(𝛼1 ⋯ 𝛼𝑠 ) también es representable9 . ¡Ojo!, no estamos diciendo que se trate de una equiva-
lencia; es decir, puede suceder que 𝑛1 𝑛2 ⋯ 𝑛𝑠 sea representable como suma de dos cuadrados mientras
que alguno de los 𝑛𝑖 no sea representable. Siguiendo este razonamiento, estamos interesados en estudiar
la representabilidad de los divisores y, por tanto, la representabilidad de los primos enteros, y en relacionar
esta con la divisibilidad en š[i].
Teorema 34. Un primo entero 𝑝 es suma de dos cuadrados si y solo si 𝑝 es compuesto en š[i]. Es decir, 𝑝
permanece primo en š[i] si y solo si 𝑝 no es suma de dos cuadrados.
Demostración. Si un primo entero 𝑝 es de la forma 𝑝 = 𝑎2 + 𝑏2 , entonces 𝑝 = (𝑎 + 𝑏i)(𝑎 − 𝑏i) es una
descomposición no trivial en š[i] por el corolario 32, pues 1 < 𝑁(𝑎 ± 𝑏i) = 𝑝 < 𝑝2 = 𝑁(𝑝).
Recíprocamente, sea 𝑝 un primo en š que es compuesto en š[i], y sea 𝑝 = 𝛼𝛽 una descomposición
no trivial. Tomando normas, 𝑝2 = 𝑁(𝛼)𝑁(𝛽). Por el corolario 32, necesariamente se debe cumplir que
𝑁(𝛼) = 𝑁(𝛽) = 𝑝. Por tanto, si 𝛼 = 𝑎 + 𝑏i, entonces 𝑝 = 𝑎2 + 𝑏2 . ▪
Corolario 35. Sea 𝑝 ∈ Ž un primo impar que es compuesto en š[i]. Salvo asociados, 𝑝 tiene dos factores
primos distintos en š[i]. Además, dichos factores son conjugados y tienen norma 𝑝.
Demostración. De la demostración del teorema 34 sabemos que 𝑁(𝑎 ± 𝑏i) = 𝑝, luego por la propiedad 8 de
la proposición 30, 𝑎 ± 𝑏i son primos gaussianos. Si 𝑎 + 𝑏i = 𝜖(𝑎 − 𝑏i) para alguna unidad 𝜖 ∈ š[i], entonces

𝜖 = 1 ⟹ 𝑎 + 𝑏i = 𝑎 − 𝑏i ⟹ 𝑏 = 0, 𝑝 = 𝑎2 ,

⎪𝜖 = −1 ⟹ 𝑎 + 𝑏i = −𝑎 + 𝑏i ⟹ 𝑎 = 0, 𝑝 = 𝑏2 ,
⎨𝜖 = i ⟹ 𝑎 + 𝑏i = 𝑏 + 𝑎i ⟹ 𝑏 = 𝑎, 𝑝 = 2𝑎2 ,

⎩𝜖 = −i ⟹ 𝑎 + 𝑏i = −𝑏 − 𝑎i ⟹ 𝑏 = −𝑎, 𝑝 = 2𝑎2 .

En cualquier caso, esto es imposible para un primo impar 𝑝, por lo que 𝑎 ± 𝑏i no son asociados. ▪

Comenzaremos estudiando los primos enteros que son sumas de dos cuadrados. Para ello, el teorema 34
nos indica que es conveniente estudiar la factorización en š[i] de los primos enteros. El siguiente lema
nos indica que de este modo se recuperan todos los primos gaussianos.
Lema 36. Todo primo gaussiano 𝜋 divide a algún primo entero 𝑝 en š[i].
Demostración. Basta observar que 𝑁(𝜋) = 𝜋𝜋 en š[i]. Como 𝑁(𝜋) > 1 y 𝑁(𝜋) ∈ Ž, existe la descompo-
sición en primos enteros 𝜋𝜋 = 𝑁(𝜋) = 𝑝1 ⋯ 𝑝𝑟 , y como 𝜋 es primo, debe dividir a alguno de los 𝑝𝑖 . ▪

9 Esta sencilla idea, basada en la multiplicatividad de 𝑁, resulta clave para demostrar el teorema de los cuatro cuadrados de

Lagrange que hemos enunciado más adelante como el teorema 58, pues en la práctica se demuestra que todo primo entero es
representable.

8 [Link]
Cobos Rábano

Observación 37. El primo 𝑝 = 2 factoriza como 2 = (1 + i)(1 − i), donde 1 ± i son primos gaussianos de
norma 2, pero son asociados pues 1 − i = −i(1 + i), luego 2 = −i(1 + i)2 , apareciendo dos veces el primo
gaussiano 1 + i. El hecho de que en una factorización aparezca un primo con multiplicidad mayor que 1 se
conoce como ramificación. En general, se utiliza la siguiente terminología para clasificar la factorización
de un primo entero en š[i]. ◀

Definición 38. Sea 𝑝 ∈ Ž un primo entero.

• Si 𝑝 permanece primo en š[i], se dice que 𝑝 es un primo inerte.


• Si 𝑝 es compuesto en š[i], decimos que 𝑝 es un primo que descompone.
• Si 𝑝 = 2, se dice que 2 es el primo ramificado. ◀

Utilizando esta terminología, hemos visto hasta el momento que 𝑝 es inerte si y solo si 𝑝 no es suma de
dos cuadrados; que los compuestos impares 𝑝 descomponen con dos factores primos no asociados, y que
𝑝 = 2 es ramificado y es asociado del cuadrado del primo 1 + i. Por otro lado, el teorema 34 ha resultado
ser una herramienta útil en nuestro estudio, pero no resuelve el problema por sí solo. Necesitamos la
caracterización de primos que son sumas de dos cuadrados, debida a Fermat.
Teorema 39 (clasificación de los primos que son sumas de dos cuadrados). Sea 𝑝 un primo entero. Las
siguientes afirmaciones son equivalentes:
1. 𝑝 = 2 o 𝑝 ≡ 1 mód 4.
2. La ecuación 𝑥2 ≡ −1 mód 𝑝 tiene solución; es decir, −1 es un cuadrado módulo 𝑝.
3. 𝑝 = 𝑎2 + 𝑏2 para ciertos 𝑎, 𝑏 ∈ š.

En particular, los primos enteros 𝑝 congruentes con 3 mód 4 son precisamente los primos enteros que no
son suma de dos cuadrados.
Demostración. 3 ⟹ 1: Basta utilizar que los cuadrados módulo 4 son 0 y 1, por lo que cualquier entero
𝑛 ≡ 3 mód 4 no puede ser suma de dos cuadrados en š/(4), y menos aún en š.
1 ⟹ 2: Para 𝑝 = 2, 𝑥2 ≡ −1 mód 𝑝 tiene solución 𝑥 = 1. Para un primo impar 𝑝, podemos considerar la
siguiente factorización en †𝑝 [𝑥]:
(𝑝−1) (𝑝−1)
(1) 𝑥𝑝−1 − 1 = (𝑥 2 − 1)(𝑥 2 + 1).

Aplicando el teorema de Fermat10 , todo elemento 𝑎 no nulo de †𝑝 verifica que 𝑎𝑝−1 − 1 ≡ 0 mód 𝑝 o,
lo que es lo mismo, existen al menos 𝑝 − 1 raíces distintas en †𝑝 del polinomio 𝑥𝑝−1 − 1. En el lado
derecho de la ecuación (1), al ser †𝑝 [𝑥] un DFU (ejemplo 25), el primer polinomio del lado derecho no
puede tener más raíces que su grado, que es (𝑝 − 1)/2, luego el segundo polinomio del lado derecho
debe tener alguna raíz sobre †𝑝 ; en otras palabras, existe 𝑎 ∈ š tal que 𝑎(𝑝−1)/2 ≡ −1 mód 𝑝. Si,
además, 𝑝 ≡ 1 mód 4, entonces (𝑝 − 1)/4 ∈ Ž y 𝑥 = 𝑎(𝑝−1)/4 satisface que 𝑥2 ≡ 𝑎(𝑝−1)/2 ≡ −1 mód 𝑝.
2 ⟹ 3: Por el teorema 34, basta demostrar que 𝑝 es compuesto en š[i]. Si 𝑥 ∈ š es una solución de
𝑥2 ≡ −1 mód 𝑝, entonces 𝑝 ∣ (𝑥2 + 1) en š, luego 𝑝 ∣ (𝑥2 + 1) = (𝑥 + i)(𝑥 − i) en š[i]. Si 𝑝 fuera primo
en š[i], tendríamos que 𝑝 ∣ (𝑥 + i) o 𝑝 ∣ (𝑥 − i), y del lema 29 deduciríamos que 𝑝 ∣ 1, lo cual es
imposible. Por tanto, 𝑝 es compuesto en š[i]. ▪

Resumimos los resultados previos en los siguientes teoremas.


Teorema 40 (factorización de primos enteros como producto de primos gaussianos). Sea 𝑝 ∈ Ž un primo.
La descomposición de 𝑝 en š[i] queda determinada por la congruencia de 𝑝 módulo 4 como sigue:
1. Si 𝑝 ≡ 3 mód 4, entonces 𝑝 permanece primo en š[i] (inerte).
2. Si 𝑝 ≡ 1 mód 4, entonces 𝑝 = 𝜋𝜋, donde 𝜋, 𝜋 son primos conjugados y no asociados (descompone).
3. 2 = (1 + i)(1 − i) = −i (1 + i)2 (ramificado).
Demostración. Basta combinar la observación 37, los teoremas 39 y 34 y el corolario 35. ▪
10 Si
𝑎 ≢ 0 mód 𝑝, entonces 𝑎𝑝−1 ≡ 1 mód 𝑝. Aunque se pueden dar demostraciones sencillas y directas, también es un corolario
inmediato del teorema de Lagrange en teoría de grupos, pues el grupo de unidades †∗𝑝 tiene orden 𝑝 − 1.

TEMat, 3 (2019) e-ISSN: 2530-9633 9


El problema de las sumas de dos cuadrados

Teorema 41. Sea 𝛼 ∈ š[i] un primo gaussiano. Entonces, salvo asociados, 𝛼 debe ser de uno de los
siguientes tipos:
1. 𝑝 ∈ Ž es un primo entero con 𝑝 ≡ 3 mód 4,
2. 𝜋 o 𝜋 con 𝑁(𝜋) = 𝑝 ∈ Ž primo y 𝑝 ≡ 1 mód 4, o
3. 1 + i.

Además, todos los tipos de enteros gaussianos arriba descritos, al igual que sus asociados, son primos
gaussianos, por lo que hemos descrito todos los primos gaussianos.
Demostración. Por el lema 36, cada primo gaussiano divide a un primo entero. Como š[i] tiene factorización
única, los primos de š[i] deben ser los primos gaussianos que aparecen en el teorema 40. Por último, está
claro que los enteros gaussianos que aparecen en el enunciado son primos, pues en los dos últimos tipos
𝑁(𝛼) es primo y la propiedad 8 de la proposición 30 lo concluye, y en el primer tipo es consecuencia del
teorema 40. ▪

En particular, del teorema 41 se deduce que la norma de cualquier primo gaussiano es 𝑝 o 𝑝2 , siendo 𝑝 un
primo entero. Por último, del teorema 40 se deduce la factorización de cualquier entero dentro de š[i].
Corolario 42. Sea 𝑛 ≥ 2 un entero, y sean 𝑝1 , … , 𝑝𝑟 los factores primos de 𝑛 congruentes con 1 mód 4 y
𝑞1 , … , 𝑞𝑠 los factores primos de 𝑛 congruentes con 3 mód 4, de modo que la descomposición de 𝑛 como
producto de primos en š es la siguiente:
𝑛 𝑛 𝑚 𝑚𝑠
𝑛 = 2𝑐 𝑝1 1 ⋯ 𝑝𝑟 𝑟 𝑞1 1 ⋯ 𝑞𝑠

para ciertos 𝑛ℓ , 𝑚𝑗 ≥ 1 y 𝑐 ∈ š≥0 . Para cada 1 ≤ ℓ ≤ 𝑟, sea 𝑝ℓ = 𝜋ℓ 𝜋ℓ la descomposición de 𝑝ℓ como


producto de dos primos conjugados no asociados en š[i]. Entonces, 𝑛 factoriza en š[i] del siguiente
modo:
𝑛 𝑛 𝑛 𝑛 𝑚 𝑚
𝑛 = (1 + i)2𝑐 𝜋1 1 𝜋1 1 ⋯ 𝜋𝑟 𝑟 𝜋𝑟 𝑟 𝑞1 1 ⋯ 𝑞𝑠 𝑠 .
Además, dicha factorización es única salvo el orden de los factores y asociados.
Demostración. Es consecuencia de ser š[i] un DFU (por el teorema 28 y el corolario 21) y del teorema 41. ▪

Terminamos esta sección con el resultado principal, la solución completa al problema 1, que viene dada
por medio de los factores primos del entero en cuestión. En el teorema está excluido el caso 𝑛 = 1, pero
está claro que 1 = 12 + 02 = (−1)2 + 02 = 02 + 12 = 02 + (−1)2 son todas sus representaciones, y, en
particular, es representable.
Teorema 43. Un entero 𝑛 > 1 es suma de dos cuadrados si y solo si cada factor primo 𝑝 de 𝑛 verificando
𝑝 ≡ 3 mód 4 tiene multiplicidad par.
Demostración. Ya hemos comentado que ser suma de dos cuadrados es una propiedad multiplicativa
tras la proposición 33. El primo 𝑝 = 2 y cualquier primo 𝑝 ≡ 1 mód 4 son sumas de dos cuadrados por el
teorema 39; por tanto, también lo son sus potencias. Por otro lado, un primo 𝑝 ≡ 3 mód 4 no es suma de
dos cuadrados, pero 𝑝2 sí lo es y, por tanto, cualquier potencia par de 𝑝 es también suma de dos cuadrados.
En definitiva, cualquier 𝑛 en el que los primos 𝑝 ≡ 3 mód 4 aparecen con multiplicidad par es una suma
de dos cuadrados.
Sea ahora 𝑛 > 1 suma de dos cuadrados que tiene un factor primo 𝑝 ≡ 3 mód 4 (pues en otro caso no
hay nada que demostrar). Si 𝑛 = 𝑎2 + 𝑏2 , entonces 𝑝 ∣ 𝑛 = (𝑎 + 𝑏i)(𝑎 − 𝑏i) en š[i], y como 𝑝 es inerte,
o bien 𝑝 ∣ (𝑎 + 𝑏i) o bien 𝑝 ∣ (𝑎 − 𝑏i). En cualquier caso, la conclusión es que 𝑝 ∣ 𝑎 y 𝑝 ∣ 𝑏 en š por el
lema 29. De 𝑎 = 𝑝𝐴 y 𝑏 = 𝑝𝐵 se deduce que 𝑛 = 𝑎2 + 𝑏2 = 𝑝2 (𝐴2 + 𝐵2 ), luego 𝑝2 ∣ 𝑛 y 𝑛/𝑝2 = 𝐴2 + 𝐵2 es
suma de dos cuadrados. Si 𝑚 es la multiplicidad de 𝑝 como divisor de 𝑛, escribiendo 𝑚 = 2𝑘 + 𝑟 para
𝑟 = 0 o 1 y aplicando este resultado recursivamente 𝑘 veces, concluimos que 𝑛′ = 𝑛/𝑝2𝑘 es suma de dos
cuadrados. El caso 𝑟 = 1 implicaría que 𝑝 ∣ 𝑛′ pero 𝑝2 ∤ 𝑛′ , pero esto no es posible por el razonamiento
previo (sustituyendo 𝑛 por 𝑛′ ). Por tanto, se tiene que 𝑟 = 0 o, lo que es lo mismo, la multiplicidad de 𝑝 es
par. ▪

10 [Link]
Cobos Rábano

5. Número de representaciones como suma de dos cuadrados


Para concluir, queremos utilizar los resultados anteriores para resolver el problema 3. La fórmula buscada
dependerá, como uno podría imaginar, de los divisores de 𝑛 que son congruentes con 1 y con 3 mód 4;
más concretamente, de su cardinal. La fórmula que queremos demostrar es la siguiente:

(2) 𝑟2 (𝑛) = 4(𝑑1 (𝑛) − 𝑑3 (𝑛)),

donde 𝑑𝑗 (𝑛) denota el número de divisores de 𝑛 congruentes con 𝑗 mód 4 para 𝑗 ∈ {1, 3}. Para la demostra-
ción necesitamos realizar varias comprobaciones, por lo que hemos decidido dividir la prueba en una
serie de pasos.
• Partiendo de la factorización de 𝑛, observar que podemos eliminar las potencias pares de primos
𝑝 ≡ 3 mód 4, al igual que el factor 2 (con su potencia).
• Interpretar el factor 4 de la ecuación (2), así como las funciones 𝑟2 (𝑛) y 𝑟2 (𝑛)/4, en términos de
ideales del anillo š[i].
• Demostrar que, tras dividir la ecuación (2) por 4, ambos términos son multiplicativos en 𝑛; es decir,
que si demostramos la fórmula para 𝑛, 𝑚 coprimos, entonces es válida para 𝑛𝑚.
• Demostrar que la fórmula es cierta para las potencias de primos enteros 𝑛 = 𝑝𝑒 .
La mayoría de estas ideas se encuentran en el libro de Hardy y Wright [5, sección 20] con un enfoque
ligeramente distinto.
Proposición 44. Dado 𝑛 ∈ Ž, 𝑟2 (𝑛) = 𝑟2 (2𝑛).
Demostración. Sea 𝑛 = 𝑎2 +𝑏2 una representación de 𝑛. Entonces, se puede comprobar que (𝑎−𝑏)2 +(𝑎+𝑏)2
2 2
es una representación de 2𝑛. Recíprocamente, sea 2𝑛 = 𝑐2 +𝑑2 . Entonces, 𝑐 ≡ 𝑑 mód 2 y 𝑛 = ( 𝑐+𝑑
2
) +( 𝑐−𝑑
2
).
Por tanto, (𝑎, 𝑏) ↦ (𝑎 − 𝑏, 𝑎 + 𝑏) es una biyección entre 𝑅2 (𝑛) y 𝑅2 (2𝑛). ▪
Observación 45. El hecho de que si 𝑛 = 𝑎2 + 𝑏2 , entonces 2𝑛 = (𝑎 − 𝑏)2 + (𝑎 + 𝑏)2 , es también consecuencia
de la igualdad (𝑎2 +𝑏2 )(𝑐2 +𝑑2 ) = (𝑎𝑐−𝑏𝑑)2 +(𝑎𝑑 +𝑏𝑐)2 para cualesquiera 𝑎, 𝑏, 𝑐, 𝑑 ∈ ’, lo cual se deduce de
que 𝑁 sea multiplicativa y, por tanto, 𝑁(𝑎 + 𝑏i)𝑁(𝑐 + 𝑑i) = 𝑁((𝑎 + 𝑏i)(𝑐 + 𝑑i)). Dicha fórmula nos indica que
el producto de enteros representables es representable, y nos da un modo de obtener una representación
de 𝑛𝑚 conocidas representaciones de 𝑛 y de 𝑚, que es lo que aplicamos para 𝑚 = 2 = 12 + 12 . Solamente
existen fórmulas similares que expresan el producto de dos sumas de 𝑘 cuadrados como una suma de 𝑘
cuadrados para 𝑘 ∈ {1, 2, 4, 8}, como afirma el problema de Hurwitz; para más información, véase el libro
de Jacobson [6, sección 7.6]. ◀

La proposición 44 nos indica que, a la hora de calcular 𝑟2 (𝑛), podemos primero simplificar 𝑛 dividiendo por
2 tantas veces como sea posible. El análogo para los primos 𝑝 ≡ 3 mód 4 que presentamos a continuación
nos permite simplificar las potencias de 𝑝 por pares, lo cual tiene sentido porque recordamos que, si 𝑝 es
divisor de 𝑛 con multiplicidad impar, entonces 𝑛 no es representable.
Proposición 46. Sean 𝑛, 𝑝 ∈ Ž con 𝑝 primo y 𝑝 ≡ 3 mód 4. Entonces, 𝑟2 (𝑛) = 𝑟2 (𝑝2 𝑛).
Demostración. Si 𝑛 = 𝑎2 + 𝑏2 , entonces 𝑝2 𝑛 = (𝑝𝑎)2 + (𝑝𝑏)2 . Recíprocamente, si 𝑝2 𝑛 = 𝑐2 + 𝑑2 , entonces,
repitiendo el argumento del teorema 43 (es decir, que como 𝑝 es inerte, 𝑝 ∣ 𝑐2 + 𝑑2 = (𝑐 + 𝑑i)(𝑐 − 𝑑i)
en š[i] y, por tanto, 𝑝 ∣ 𝑐, 𝑑 en š), vemos que 𝑛 = (𝑐/𝑝)2 + (𝑑/𝑝)2 es una representación de 𝑛. Por tanto,
(𝑎, 𝑏) ↦ (𝑝𝑎, 𝑝𝑏) es una biyección entre 𝑅2 (𝑛) y 𝑅2 (𝑝2 𝑛). ▪

Hasta el momento no hemos tenido que lidiar con el tema de las permutaciones y cambios de signo
entre representantes. Con el fin de evitar este detalle, consideramos una variación sobre el conjunto de
representaciones.
Definición 47. Una representación 𝑛 = 𝑎2 + 𝑏2 se dice positiva si 𝑎 > 0 y 𝑏 ≥ 0. Se define el conjunto de
representaciones positivas de 𝑛 como sigue:

𝑅2+ (𝑛) = {(𝑥, 𝑦) ∈ š2 ∶ 𝑥2 + 𝑦2 = 𝑛, 𝑥 > 0, 𝑦 ≥ 0}.

Definimos también la función 𝑟+


2 (𝑛) = #𝑅2 (𝑛) que cuenta las representaciones positivas de 𝑛.
+

TEMat, 3 (2019) e-ISSN: 2530-9633 11


El problema de las sumas de dos cuadrados

Vía la biyección š2 → š[i] ∶ (𝑎, 𝑏) ↦ 𝛾 = 𝑎 + 𝑏i, podemos pensar que 𝑅2 (𝑛) y 𝑅2+ (𝑛) son subconjuntos de
š[i], y diremos que 𝑎 + 𝑏i es un entero gaussiano positivo si (𝑎, 𝑏) ∈ 𝑅2+ (𝑛). Bajo esta correspondencia,
𝑟2 (𝑛) es claramente el número de enteros gaussianos 𝛾 tales que 𝑁(𝛾) = 𝑛. El siguiente resultado nos
dice que al considerar solamente generadores positivos estamos eliminando la multiplicación por 4 que
aparece al considerar asociados (pues hay precisamente cuatro unidades), de modo que 𝑟2 (𝑛) cuenta los
cuatro asociados de un 𝛼 ≠ 0 como representaciones distintas, mientras que 𝑟+ 2 (𝑛) cuenta solamente una
de ellas.
Lema 48. Sea 𝑛 ∈ Ž. Si pensamos (𝑥, 𝑦) ∈ 𝑅2 (𝑛) como el entero gaussiano 𝛼 = 𝑥 + 𝑦i ≠ 0, entonces 𝛼
tiene un único asociado 𝛽 que pertenece a 𝑅2+ (𝑛). Por tanto, 𝑟2 (𝑛) = 4𝑟+
2 (𝑛).

Demostración. Que los cuatro asociados distintos de 𝛼,

{𝛼 = 𝑥 + 𝑦i, i𝛼 = −𝑦 + 𝑥i, −𝛼 = −𝑥 − 𝑦i, −i𝛼 = 𝑦 − 𝑥i} ,

pertenecen a 𝑅2 (𝑛), pero solo uno de ellos pertenece a 𝑅2+ (𝑛), es una mera comprobación. La fórmula es
una consecuencia inmediata. ▪
Observación 49. Recordemos que 𝛼 ∼ 𝛽 ⟺ (𝛼) = (𝛽). Por tanto, estamos seleccionando el único
generador positivo de cada ideal (no nulo). Es más, podemos definir una norma 𝑁 ′ sobre el conjunto de
ideales del siguiente modo: para 𝐼 = (𝛼), se define 𝑁 ′ (𝐼) = 𝑁(𝛼). 𝑁 ′ está bien definida porque (𝛼) = (𝛽) ⟺
𝛼 = 𝜖𝛽 para alguna unidad 𝜖, y 𝑁(𝛼) = 𝑁(𝜖)𝑁(𝛽) = 𝑁(𝛽) por ser 𝑁 multiplicativa y por la propiedad 2 de la
proposición 30. Además, 𝑁 ′ es multiplicativa por serlo 𝑁. Por abuso de notación, denotaremos a ambas
normas como 𝑁. Teniendo esto en cuenta, 𝑟+ 2 (𝑛) contabiliza el número de ideales de š[i] de norma 𝑛 (vía
la correspondencia que asocia a cada (𝑎, 𝑏) ∈ 𝑅2+ (𝑛) el ideal (𝑎 + 𝑏i)), a diferencia de 𝑟2 (𝑛), que contabiliza
el número de elementos de norma 𝑛. ◀

Intentemos ahora entender el factor 4 de la ecuación (2), así como el hecho de que en el ejemplo 4 el
número 4 tuviera cuatro representaciones mientras que el número 10 tenía ocho representaciones, cuando
en ambos casos hay una sola representación salvo permutaciones y asociados. Para ello consideramos el
conjunto de elementos no nulos de š[i], y la acción sobre él (por multiplicación) del grupo de unidades
š[i]∗ , que identificamos con el grupo cíclico 𝐶4 generado por la multiplicación por i. La acción es libre11 y,
por tanto, cada órbita12 tiene longitud 4; de hecho, la órbita de 𝛼 ≠ 0 es {i𝛼, −𝛼, −i𝛼, 𝛼}. Podemos considerar
también la acción (sobre el conjunto de elementos no nulos de š[i]) del grupo diédrico 𝐷4 , tomando como
generadores la multiplicación por i y la conjugación. En ese caso, la órbita de 𝛼 = 𝑥 + 𝑦i ≠ 0 es

𝛼 = 𝑥 + 𝑦i ↔ (𝑥, 𝑦), 𝛼 = 𝑥 − 𝑦i ↔ (𝑥, −𝑦),


i𝛼 = −𝑦 + 𝑥i ↔ (−𝑦, 𝑥), i𝛼 = 𝑦 + 𝑥i ↔ (𝑦, 𝑥),
−𝛼 = −𝑥 − 𝑦i ↔ (−𝑥, −𝑦), −𝛼 = −𝑥 + 𝑦i ↔ (−𝑥, 𝑦),
−i𝛼 = 𝑦 − 𝑥i ↔ (𝑦, −𝑥), −i𝛼 = −𝑦 − 𝑥i ↔ (−𝑦, −𝑥).

En términos de ideales, 𝐶4 permuta los generadores de (𝛼), mientras que 𝐷4 permuta los generadores de
(𝛼) y los de su ideal conjugado (𝛼). Como siempre hay cuatro asociados distintos, la órbita puede tener
longitud 4 u 8, y tiene longitud 4 si y solo si (𝛼) = (𝛼). Esto último ocurre si y solo si
• o bien 𝑥 = 0 o 𝑦 = 0, caso en que (𝛼) está generado por un número natural,
• o bien 𝑥 = 𝑦, caso en que (𝛼) está generado por 𝑚(1 + i) para algún 𝑚 ∈ Ž.
Por último, si incluimos al elemento 0 = 0 + 0i ↔ (0, 0), se trataría del único punto fijo de las acciones
antes mencionadas.
Continuamos simplificando el problema 3: veremos que 𝑟+ 2 (𝑛) es una función multiplicativa en 𝑛; es
decir, si 𝑛, 𝑚 ∈ Ž y mcd(𝑚, 𝑛) = 1, entonces 𝑟+
2 (𝑚𝑛) = 𝑟2 (𝑚)𝑟2 (𝑛). La multiplicatividad es una propiedad
+ +

importante de funciones sobre Ž que reduce considerablemente la dificultad de determinar su valor,


y aparece frecuentemente al tomar enfoques aritméticos, como es nuestro caso. Por este motivo es
conveniente que tratemos algunos resultados básicos sobre estas funciones.
11 Recordamos que una acción de un grupo 𝐺 en un conjunto 𝑋 se dice libre si de la igualdad 𝑔 ⋅ 𝑥 = ℎ ⋅ 𝑥, siendo 𝑔, ℎ ∈ 𝐺, 𝑥 ∈ 𝑋,

se deduce que 𝑔 = ℎ. En nuestro caso esto está claro pues 𝜖𝛼 = 𝜖′ 𝛼 ⟹ (𝜖 − 𝜖′ )𝛼 = 0 y, por integridad, se tiene que 𝜖 = 𝜖′ .
12 La órbita de un elemento 𝑥 (siendo 𝐺 una acción en 𝑋) es el conjunto {𝑔 ⋅ 𝑥}
𝑔∈𝐺 de los trasladados de 𝑥 por 𝐺.

12 [Link]
Cobos Rábano

5.1. Apunte sobre funciones multiplicativas


Definición 50. Sea 𝑀 un monoide13 con elemento unidad 1. Una función aritmética 𝑀-valorada (o sim-
plemente una función aritmética cuando no haya ambigüedad sobre 𝑀) es una función 𝑓 ∶ Ž → 𝑀. ◀
Definición 51. Una función aritmética 𝑓 se dice que es multiplicativa si 𝑓(1) = 1 y si para cualesquie-
ra 𝑛, 𝑚 ∈ Ž tales que mcd(𝑛, 𝑚) = 1 se verifica que 𝑓(𝑛𝑚) = 𝑓(𝑛)𝑓(𝑚). Si, además, 𝑓 verifica que
𝑓(𝑛𝑚) = 𝑓(𝑛)(𝑚) para cualesquiera 𝑛, 𝑚 ∈ Ž (independientemente de su mcd), entonces se dice que 𝑓 es
completamente multiplicativa. ◀

Un ejemplo trivial de función completamente multiplicativa es la función constante 1. Para 𝑀 = ƒ también


lo es la exponenciación compleja 𝑓(𝑛) = 𝑛𝑠 . Un ejemplo menos obvio y que está relacionado con las
representaciones por dos cuadrados es el siguiente.
Ejemplo 52. Es fácil comprobar que la función14

(−1)
𝑛−1
2 si 𝑛 ≡ 1 mód 2, ⎧ 1 si 𝑛 ≡ 1 mód 4,
(3) 𝜒(𝑛) = { } = −1 si 𝑛 ≡ 3 mód 4,
0 si 𝑛 ≡ 0 mód 2, ⎨
⎩ 0 si 𝑛 ≡ 0 mód 2

es una función completamente multiplicativa con valores en el submonoide {−1, 0, 1} de (Ž, ⋅, 1). ◀

También es fácil comprobar la siguiente proposición, por lo que dejamos la demostración para el lector.
Proposición 53.

• Una función 𝑓 ∶ Ž → 𝑀 es multiplicativa si y solo si 𝑓(1) = 1 y para cualesquiera 𝑝, 𝑛 ∈ Ž y 𝑒 ∈ Ž,


siendo 𝑝 primo y mcd(𝑝, 𝑛) = 1, se verifica que 𝑓(𝑝𝑒 𝑛) = 𝑓(𝑝𝑒 )𝑓(𝑛).
• Dos funciones multiplicativas 𝑓, 𝑔 ∶ Ž → 𝑀 son iguales si y solo si 𝑓(𝑝𝑒 ) = 𝑔(𝑝𝑒 ) para cada primo
𝑝 ∈ Ž y cada 𝑒 ∈ Ž.

Pasamos ahora a introducir la convolución de Dirichlet, que es una operación de funciones aritméticas y
que preserva la multiplicatividad. Este hecho nos será muy útil para determinar la expresión de 𝑟+
2 (𝑛). De
ahora en adelante consideramos solamente funciones aritméticas ƒ-valoradas.
Definición 54. Sean 𝑓, 𝑔 funciones aritméticas. Definimos la convolución de Dirichlet de 𝑓 y 𝑔 como
𝑛
(𝑓 ∗ 𝑔)(𝑛) = ∑ 𝑓(𝑑)𝑔 ( ) = ∑ 𝑓(𝑎)𝑔(𝑏),
𝑑∣𝑛
𝑑 𝑎𝑏=𝑛

donde la suma se toma sobre todos los divisores positivos de 𝑛. ◀

Proposición 55. Si 𝑓, 𝑔 son funciones multiplicativas, entonces 𝑓 ∗ 𝑔 también es multiplicativa.


Demostración. Está claro que (𝑓 ∗ 𝑔)(1) = 1. Basta demostrar que (𝑓 ∗ 𝑔)(𝑝𝑒 𝑛) = (𝑓 ∗ 𝑔)(𝑝𝑒 )(𝑓 ∗ 𝑔)(𝑛) si
𝑝 es primo, 𝑒 ∈ Ž y mcd(𝑝, 𝑛) = 1. Observamos que todo divisor 𝑑 de 𝑝𝑒 𝑛 es de la forma 𝑑 = 𝑝𝑐 𝑑 ′ para
0 ≤ 𝑐 ≤ 𝑒 y 𝑑 ′ ∣ 𝑛 únicos. Por tanto, se tiene que

𝑝𝑒 𝑛 𝑝𝑒 𝑛 𝑛
(𝑓 ∗ 𝑔)(𝑝𝑒 𝑛) = ∑ 𝑓(𝑑)𝑔 ( ) = ∑ 𝑓(𝑝𝑐 𝑑 ′ )𝑔 ( 𝑐 ′ ) = ∑ 𝑓(𝑝𝑐 )𝑓(𝑑 ′ )𝑔(𝑝𝑒−𝑐 )𝑔 ( ′ )
𝑑∣𝑝𝑒 𝑛
𝑑 0≤𝑐≤𝑒 𝑝 𝑑 0≤𝑐≤𝑒 𝑑
𝑑′ ∣𝑛 𝑑 ′ ∣𝑛
𝑒
𝑝 𝑛
= ( ∑ 𝑓(𝑝𝑐 )𝑔 ( )) ( ∑ 𝑓(𝑑 ′ )𝑔 ( ′ )) = (𝑓 ∗ 𝑔)(𝑝𝑒 ) (𝑓 ∗ 𝑔)(𝑛). ▪
0≤𝑐≤𝑒
𝑝𝑐 𝑑 ′ ∣𝑛
𝑑

13 Un monoide es un conjunto 𝑀 con una operación interna asociativa y con elemento neutro. El lector puede pensar que se trata

de un grupo pues tomaremos 𝑀 = ƒ, pero no es necesaria la existencia de elemento opuesto para la definición.
14 En teoría de números, 𝜒 se conoce como símbolo de reciprocidad cuadrática de −1 o como el carácter de Dirichlet no trivial

módulo 4.

TEMat, 3 (2019) e-ISSN: 2530-9633 13


El problema de las sumas de dos cuadrados

5.2. Expresión de la función de representación


Veamos ahora la principal razón por la que hemos introducido las funciones multiplicativas.
Teorema 56. La función 𝑟+
2 (𝑛) ∶ Ž → š≥0 es multiplicativa.

Demostración. Está claro que 𝑟+ 2 (1) = 1. Queremos demostrar que 𝑟2 (𝑝 𝑛) = 𝑟2 (𝑝 )𝑟2 (𝑛) para cualquier
+ 𝑒 + 𝑒 +

primo 𝑝 y cualesquiera 𝑛, 𝑒 ∈ Ž con mcd(𝑝, 𝑛) = 1. Pensando los elementos de 𝑅2+ (𝑚) como ideales
de norma 𝑚, la multiplicatividad de la norma demuestra que la aplicación de multiplicación de ideales
𝑅2+ (𝑝𝑒 ) × 𝑅2+ (𝑛) → 𝑅2+ (𝑝𝑒 𝑛) ∶ ((𝛽), (𝛾)) ↦ (𝛽𝛾) está bien definida. Basta demostrar que se trata de una
biyección.
La inyectividad se sigue de que 𝛽, 𝛾 deben ser coprimos en š[i] porque sus normas son coprimas en š
(propiedad 7 de la proposición 30) y del corolario 24. En efecto, si 𝛽𝛾 = 𝛽′ 𝛾′ con 𝑁(𝛽) = 𝑁(𝛽′ ) = 𝑝𝑒 y
𝑁(𝛾) = 𝑁(𝛾′ ) = 𝑛, entonces mcd(𝑁(𝛽), 𝑁(𝛾′ )) = 1 implica que mcd(𝛽, 𝛾′ ) = 1, luego 𝛽 ∣ 𝛽 ′ . Del mismo
modo se deduce que 𝛽′ ∣ 𝛽, luego 𝛽, 𝛽′ son asociados, y lo análogo es cierto para 𝛾, 𝛾′ . En términos de
ideales, esto significa que (𝛽) = (𝛽′ ) y (𝛾) = (𝛾′ ).
La epiyectividad equivale a demostrar que si 𝛼 ∈ š[i] tiene norma 𝑝𝑒 𝑛 entonces se puede factorizar
𝛼 = 𝛽𝛾 con 𝑁(𝛽) = 𝑝𝑒 y 𝑁(𝛾) = 𝑛. Consideramos la factorización de 𝛼 en š[i], 𝛼 = 𝜋1 ⋯ 𝜋𝑟 , sien-
do 𝜋𝑖 primos gaussianos contados con multiplicidad y únicos salvo asociados. Entonces, tenemos que
𝑝𝑒 𝑛 = 𝑁(𝛼) = 𝑁(𝜋1 ) ⋯ 𝑁(𝜋𝑟 ). Algunas de las normas 𝑁(𝜋𝑗 ) deben ser divisibles por 𝑝. Reordenando, po-
demos suponer que son 𝜋1 , … , 𝜋𝑠 , con 1 ≤ 𝑠 ≤ 𝑟, y entonces 𝑝 ∤ 𝑁(𝜋𝑠+1 ), … , 𝑁(𝜋𝑟 ). Sabemos que 𝑁(𝜋𝑗 )
debe ser de la forma 𝑞 o 𝑞2 para algún primo entero 𝑞, luego 𝑁(𝜋𝑗 ) = 𝑝 o 𝑝2 para 1 ≤ 𝑗 ≤ 𝑠, mientras que
mcd(𝑝, 𝑁(𝜋𝑠+1 ⋯ 𝜋𝑟 )) = 1. Necesariamente 𝑁(𝜋1 ⋯ 𝜋𝑠 ) = 𝑝𝑒 y 𝑁(𝜋𝑠+1 ⋯ 𝜋𝑟 ) = 𝑛. Por tanto, debe darse
que 𝛽 = 𝜋1 ⋯ 𝜋𝑠 y 𝛾 = 𝜋𝑠+1 ⋯ 𝜋𝑟 salvo asociados. ▪

Finalmente, podemos resolver el problema 3 utilizando los resultados previos.


Teorema 57. Para cada 𝑛 ∈ Ž, 𝑟+
2 (𝑛) = 𝑑1 (𝑛) − 𝑑3 (𝑛) y, por tanto, 𝑟2 (𝑛) = 4(𝑑1 (𝑛) − 𝑑3 (𝑛)).

Demostración. Basta probar la fórmula para 𝑟+ 2 (𝑛) y aplicar el lema 48. Para ello, consideramos de nuevo
la función 𝜒 del ejemplo 52. Por definición se tiene que

(𝜒 ∗ 1)(𝑛) = ∑ 𝜒(𝑑)1(𝑛/𝑑) = ∑ 𝜒(𝑑) = ∑ 1 − ∑ 1 = 𝑑1 (𝑛) − 𝑑3 (𝑛).


𝑑∣𝑛 𝑑∣𝑛 𝑑∣𝑛 𝑑∣𝑛
𝑑≡1 mód 4 𝑑≡3 mód 4

Por tanto, tenemos que demostrar que 𝑟+2 (𝑛) = (𝜒 ∗ 1)(𝑛). Ambas funciones son multiplicativas: para 𝑟2 (𝑛)
+

es consecuencia del teorema 56, mientras que 𝜒 ∗ 1 es multiplicativa por serlo las funciones 𝜒 y 1, como
consecuencia de la proposición 55. De la proposición 53 se deduce que basta con demostrar que ambas
funciones coinciden sobre las potencias de primos, para lo cual utilizaremos la siguiente propiedad: si 𝑝
es primo y 𝑒 ∈ Ž, entonces los divisores de 𝑝𝑒 son precisamente 𝑝𝑐 variando 𝑐 en el conjunto {0, 1, … , 𝑒}.
Separamos a continuación la demostración según las congruencias módulo 4.

• Para 𝑝 = 2, tenemos que 𝑟+2 (2 ) = 𝑟2 (1) = 1 por la proposición 44. Por otro lado, todos los divisores
𝑒 +

de 2 distintos de 𝑑 = 1 son pares, luego 𝑑1 (2𝑒 ) − 𝑑3 (2𝑒 ) = 1 y se da la igualdad.


𝑒

• Para un primo 𝑝 ≡ 3 mód 4, aplicando la proposición 46 y el teorema 43 tenemos que

2 (1) = 1
𝑟+ si 𝑒 ≡ 0 mód 2,
𝑟+
2 (𝑝 𝑒
) = {
0 si 𝑒 ≡ 1 mód 2.

Observamos que 𝑝𝑐 ≡ 1 mód 4 si y solo si 𝑐 es par y que 𝑝𝑐 ≡ 3 mód 4 si y solo si 𝑐 es impar, por lo
que 𝑑1 (𝑝𝑒 ) − 𝑑3 (𝑝𝑒 ) es la diferencia entre la cantidad de números pares e impares en el conjunto
{0, 1, … , 𝑒}, que claramente coincide con el valor arriba indicado en la expresión de 𝑟+
2 (𝑝 ).
𝑒

• Si 𝑝 ≡ 1 mód 4, entonces todos los divisores de 𝑝𝑒 son congruentes con 1 mód 4. Así, 𝑑1 (𝑝𝑒 ) − 𝑑3 (𝑝𝑒 )
es precisamente el número de divisores de 𝑝𝑒 , que es 𝑒+ 1. Por otro lado, 𝑟+
2 (𝑝 ) es el número de ideales
𝑒

(𝛼) de norma 𝑝 . Como 𝑝 es un primo que descompone, esto es, 𝑝 = 𝜋𝜋 con 𝑁(𝜋) = 𝑁(𝜋) = 𝑝,
𝑒
𝑒
tenemos que 𝛼𝛼 = 𝜋𝑒 𝜋 y, por la factorización única, los ideales mencionados son de la forma
(𝛼) = (𝜋) (𝜋) con 𝑟 + 𝑠 = 𝑒 y 0 ≤ 𝑟, 𝑠, luego hay precisamente 𝑒 + 1 de ellos.
𝑟 𝑠

14 [Link]
Cobos Rábano

6. Conclusiones
En este artículo hemos visto cómo la teoría de números puede nutrirse del álgebra y hemos dado unas
pinceladas de algunos conceptos de la teoría algebraica de números, como son los primos que descompo-
nen, que ramifican o que son inertes, y también de algunos conceptos de teoría analítica de números,
como las funciones multiplicativas y la convolución de Dirichlet. Todos estos detalles nos han servido
para resolver un problema clásico que muestra muy bien cómo es la teoría de números, en la que para la
demostración de un enunciado aparentemente inocente uno debe valerse de muy diversas herramientas.
No queremos terminar sin comentar algunos problemas relacionados con la suma de dos cuadrados que
no hemos podido tratar. Por ejemplo, hemos estudiado el número representaciones que existen de un
entero 𝑛, pero no hemos hablado de cómo obtenerlas. Puede encontrarse un ejemplo de este cálculo en el
libro de Niven, Zuckerman y Montgomery [7, capítulo 3, ejemplo 3]. En general, el problema se reduce a
calcular las representaciones para los primos que dividan a 𝑛 y utilizar la observación 45. Claramente es
necesario el uso de ordenadores para valores grandes de 𝑛, siendo interesante estudiar los algoritmos de
resolución de este problema.
Similar al estudio que hemos hecho para dos cuadrados, uno puede preguntarse por el valor de la función
𝑟𝑘 (𝑛) para distintos valores de 𝑘. Está claro que en nuestro estudio ha resultado fundamental utilizar
los enteros gaussianos š[i]. El caso 𝑘 = 4 se puede estudiar de manera similar, sustituyendo ƒ por los
cuaterniones15 y š[i] por los cuaterniones con coeficientes enteros16 . Uno puede de este modo demostrar
el siguiente teorema.
Teorema 58 (teorema de los cuatro cuadrados de Lagrange). Todo entero no negativo es suma de cuatro
cuadrados de enteros.

El teorema es equivalente a afirmar que 𝑅4 (𝑛) ≠ ∅ para todo 𝑛 ∈ Ž, y también a que 𝑟4 (𝑛) ≥ 1 para todo
𝑛 ∈ Ž. Se conoce, además, la fórmula explícita de 𝑟4 (𝑛), dada por Jacobi.
Teorema 59. Para 𝑛 ∈ Ž, 𝑟4 (𝑛) = 8 ∑4∤𝑑∣𝑛 𝑑.

La suma se toma sobre los divisores de 𝑛 que no son divisibles por 4. Existen varias maneras de demostrar
esta fórmula: una es observando que una suma de cuatro cuadrados no es más que dos sumas de dos
cuadrados, luego la fórmula de 𝑟4 (𝑛) puede deducirse si conocemos la expresión de 𝑟2 (𝑛) sin excesivo
trabajo (véase el libro de Davidoff, Sarnak y Valette [4, sección 2.4], donde se trata el caso 𝑛 impar, pero
el caso 𝑛 par es consecuencia de los resultados que allí aparecen); otra manera consiste en estudiar
funciones modulares, que son interesantes por sí mismas y están muy presentes en la actualidad en la
teoría de números; también se puede intentar seguir los pasos que hemos dado en este artículo y utilizar la
factorización sobre los cuaterniones con coeficientes enteros, aunque esta opción es bastante complicada
porque se trata de un anillo no conmutativo (para estudiar dicha factorización puede consultarse el libro
de Conway y Smith [3, capítulo 5]), y también existen demostraciones elementales, como, por ejemplo, el
artículo de Spearman y Williams [8] o el libro de Williams [10, capítulo 9], donde se hace una demostración
basada en unas identidades de Liouville nada evidentes, aunque elementales.

Referencias
[1] COBOS RÁBANO, Alberto. On certain algebraic, arithmetic and topological properties of quaternions.
Trabajo de Fin de Grado. Universidad de Salamanca, 2018.
[2] CONRAD, Keith. The gaussian integers. Expository papers. 2016. URL: [Link]
~kconrad/blurbs/.
15 Por cuaterniones nos referimos a los cuaterniones de Hamilton, que son, salvo isomorfismo algebraico, el único ’-álgebra de

dimensión finita no conmutativa. Más explícitamente, se trata de elementos de la forma 𝑎 + 𝑏i + 𝑐j + 𝑑k tales que 𝑎, 𝑏, 𝑐, 𝑑 ∈ ’ y
donde i2 = j2 = k2 = ijk = −1.
16 Para ser más precisos, es conveniente considerar un subanillo de los cuaterniones con coeficientes enteros, denominado anillo

de cuaterniones de Hurwitz, por ser este un dominio euclídeo. Se muestra así que la teoría de divisibilidad es relevante en el
problema de determinar 𝑟𝑘 (𝑛) en general, y no solo en el caso 𝑘 = 2.

TEMat, 3 (2019) e-ISSN: 2530-9633 15


El problema de las sumas de dos cuadrados

[3] CONWAY, John H. y SMITH, Derek A. On quaternions and octonions: their geometry, arithmetic, and
symmetry. A K Peters, Ltd., 2003, págs. xii+159. ISBN: 978-1-56881-134-5.
[4] DAVIDOFF, Giuliana; SARNAK, Peter, y VALETTE, Alain. Elementary number theory, group theory, and
Ramanujan graphs. Vol. 55. London Mathematical Society Student Texts. Cambridge University Press,
Cambridge, 2003, págs. x+144. [Link]
[5] HARDY, Godfrey H. y WRIGHT, Edward M. An introduction to the theory of numbers. 3rd ed. Oxford,
at the Clarendon Press, 1954, págs. xvi+419.
[6] JACOBSON, Nathan. Basic algebra. I. Second edition. W. H. Freeman y Company, New York, 1986,
págs. xviii+499. ISBN: 978-0-7167-1480-4.
[7] NIVEN, Ivan; ZUCKERMAN, Herbert S., y MONTGOMERY, Hugh L. An introduction to the theory of
numbers. Fifth. John Wiley & Sons, Inc., New York, 1991, págs. xiv+529. ISBN: 978-0-471-62546-9.
[8] SPEARMAN, Blair K. y WILLIAMS, Kenneth S. «The simplest arithmetic proof of Jacobi’s four squares
theorem». En: Far East Journal of Mathematical Sciences (FJMS) 2.3 (2000), págs. 433-439. ISSN:
0972-0871.
[9] WEIL, André. Number theory. An approach through history from Hammurapi to Legendre. Re-
print of the 1984 edition. Modern Birkhäuser Classics. Birkhäuser Boston, Inc., Boston, MA, 2007,
págs. xxii+377. ISBN: 978-0-8176-4565-6.
[10] WILLIAMS, Kenneth S. Number theory in the spirit of Liouville. Vol. 76. London Mathematical Society
Student Texts. Cambridge University Press, Cambridge, 2011, págs. xviii+287. ISBN: 978-0-521-17562-
3.

16 [Link]
Geometría diferencial
en el estudio de imágenes médicas

� Clara Rodríguez Pérez Resumen: La teoría de variedades de Fréchet riemannianas nos proporciona un
Universidad de La Laguna marco teórico para abordar el estudio del espacio  de curvas planas cerradas
clara8794@[Link] regulares, de modo que se pueda introducir la distancia entre dos de estas curvas.
En este artículo presentamos una noción de curva media extrínseca de una muestra
finita de curvas planas cerradas regulares. El término «extrínseco» se refiere al
hecho de que embebemos  en un espacio euclídeo para poder calcular la media
de forma natural y, desde esta, dar la noción de curva media extrínseca en .
Además, presentamos un algoritmo para el cálculo de la curva media extrínseca y lo
aplicamos al estudio de imágenes médicas. Para ello, previamente lo discretizamos
y lo implementamos en MATLAB. Este trabajo está basado en resultados de Gual-
Arnau, Ibáñez Gual y Simó Vidal [9].

Abstract: The Riemmanian Geometry on Fréchet manifolds gives us a theorical


framework in order to study the space  of regular closed plane curves, so that
we can introduce the distance between two such curves. In this article, we present
a notion of the extrinsic mean curve of a finite sample of regular closed plane
curves. The word «extrinsic» refers to the fact that we have embedded  into an
Euclidean space in order to compute the mean in a natural way and, from it, give
the notion of an extrinsic mean curve. Furthemore, we develop an algorithm to
calculate the extrinsic mean curve and we use it to study medical images. To do
that, we previously discretize and implement the algorithm with MATLAB. This
work is based on results of Gual-Arnau, Ibáñez Gual, and Simó Vidal [9].

Palabras clave: variedades de Fréchet, curvas planas cerradas regulares, métricas


riemannianas, distancia entre curvas, curva media extrínseca, aplicaciones a
imágenes médicas.
MSC2010: 58B10, 58B20, 58D15.
Recibido: 24 de enero de 2018.
Aceptado: 30 de enero de 2019.

Agradecimientos: En primer lugar, me gustaría dar las gracias a Ximo Gual-Arnau por plantear la temá tica de este
artículo y a mis profesores Juan Carlos Marrero Gonzá lez y Edith Padró n Ferná ndez por su inestimable ayuda
para publicarlo. En segundo lugar, quiero expresar un profundo agradecimiento a mi tía Mariluz Rodríguez
Palmero por su optimismo e implicació n y a mi familia por toda la confianza, cariñ o y apoyo que me ha dado
desde que inicié el viaje por las matemá ticas. Dedicado a mi padre Miguel José Rodríguez Palmero.

Referencia: RODRÍGUEZ PÉREZ, Clara. «Geometría diferencial en el estudio de imágenes médicas». En: TEMat,
3 (2019), págs. 17-31. ISSN: 2530-9633. URL: [Link]

cb Este trabajo se distribuye bajo una licencia Creative Commons Reconocimiento 4.0 Internacional
[Link]
Geometría diferencial en el estudio de imágenes médicas

1. Introducción
Cuando un radiólogo se enfrenta con la decisión de radiar un tumor, su experiencia e intuición son dos
herramientas fundamentales. Sobre la imagen computarizada en 2D, el médico señala una curva cerrada
cuyo interior debe ser radiado. Sin embargo, puede ocurrir que los contornos señalados para un mismo
tumor por profesionales diferentes de la medicina no sean iguales. Delimitar con la mayor exactitud posible
estos contornos es significativamente importante. Es necesario radiar la mayor masa tumoral posible,
mientras se intenta dañar la menor cantidad de tejido no afectado por el tumor. Durante los últimos años,
distintos grupos de investigación han intentado crear herramientas más eficaces para enfrentarse a este
problema (véanse, por ejemplo, el libro de Bookstein [2] y los artículos de Goodall [8] y Kendall [11]).
En este trabajo nos planteamos la obtención de la curva media extrínseca de una muestra finita de curvas
delimitadas sobre una imagen plana por varios profesionales de la medicina.
Así, las matemáticas, de una manera transversal, juegan un papel fundamental en el estudio de esta
problemática. El término transversal se justifica porque en la resolución del problema intervienen diferentes
áreas:
• La geometría diferencial de variedades riemannianas de Fréchet infinito dimensionales, ya que el
espacio de estas curvas determina una variedad de este tipo.
• El análisis funcional de los espacios de Fréchet sobre los que se modelan estas variedades.
• La estadística para hallar una media de las curvas cerradas consideradas.
• El análisis numérico para implementar computacionalmente el proceso.
Para estudiar este problema, el primer elemento que debemos considerar es el espacio de las formas
planas. Pero, ¿qué es matemáticamente una forma plana? En algunos trabajos (véanse, por ejemplo, los
textos de Dryden y Mardia [4] y de Kendall et al. [12]) se considera una forma plana como un número
finito de puntos del plano. La teoría matemática desarrollada en torno a esta descripción depende de la
elección de puntos que se haya hecho, por lo que en muchas ocasiones es poco eficiente.
La otra opción (propuesta por Azencott, Coldefy y Younes [1] y detallada por Younes [16]) es considerar
una forma como una curva diferenciable cerrada, de modo que podamos referirnos al objeto a través de
su contorno. Para desarrollar esta perspectiva debemos trabajar con un concepto matemático comple-
jo: las variedades de Fréchet riemannianas infinito dimensionales (véanse, por ejemplo, el artículo de
Hamilton [10] y las referencias contenidas en él).
Una de las desventajas de considerar variedades infinito dimensionales es la cantidad de problemas que
plantea relacionados con el cálculo de herramientas estadísticas como la media. Si tomamos una muestra
de puntos de un espacio euclídeo, es sencillo calcular la media. En cambio, en el caso del espacio de curvas
planas cerradas regulares, al que denotamos por , la tarea no es tan simple.
El primer problema en estos espacios es cómo definir la distancia entre curvas. Un primer análisis muestra
que  es una variedad de Fréchet sobre la que se puede definir una métrica riemanniana (véase, por
ejemplo, el artículo de Sundaramoorthi et al. [15]). Por lo tanto, una manera de establecer la distancia
entre curvas es considerar la correspondiente distancia riemanniana sobre . En este caso, obtenemos
una media intrínseca, como se muestra en el trabajo de fin de máster de Flores Compañ [5] y el artículo de
Flores Compañ et al. [6].
Otra opción es embeber la variedad riemanniana  en un espacio euclídeo y, desde allí, calcular la media
de la muestra. En general, esta media no está en la variedad, así que se debe establecer un procedimiento
para encontrar la curva de  que minimice la distancia con la curva media. La nueva curva se denomina
curva media extrínseca. Este tipo de medida es interesante cuando las curvas representan fronteras de
superficies anatómicas donde las rotaciones, traslaciones o dilataciones son elementos que se deben tener
en cuenta en las conclusiones médicas.
El objetivo de este trabajo es indagar acerca de la segunda posibilidad. Así, en este artículo presentamos
la construcción propuesta en el artículo de Gual-Arnau, Ibáñez Gual y Simó Vidal [9] de una media
extrínseca, clarificando algunos conceptos y explicando de forma genérica el proceso. Además, mostramos
un algoritmo que se deriva de la fundamentación teórica y se aplica a un caso médico, con el fin de probar
su posible aplicabilidad al mundo real. El trabajo de fin de grado en el que se basa este artículo es el de
Rodríguez Pérez [14].
18 [Link]
Rodríguez Pérez

2. El espacio de las curvas planas diferenciables como un espacio de


Fréchet
Antes de enfrentarnos al problema de hallar la curva media extrínseca debemos estudiar el espacio donde
vamos a trabajar. Este es el espacio de las curvas planas cerradas diferenciables, que denotamos por
𝐶 ∞ (“1 , ’2 ), compuesto por las funciones 𝐶 ∞ -diferenciables de “1 en ’2 , es decir,

𝐶 ∞ (“1 , ’2 ) = {𝑓 ∶ “1 → ’2 ∣ 𝑓 es 𝐶 ∞ -diferenciable}.

Nótese que se trata de un espacio infinito dimensional, por lo que hay ciertas propiedades y definiciones
geométricas y topológicas de los espacios finito dimensionales que no se cumplen en general. Por ejemplo,
el teorema de la función inversa.
A continuación, recordaremos brevemente algunas nociones matemáticas que serán útiles para asignar
una estructura geométrico-algebraica a 𝐶 ∞ (“1 , ’2 ).
Definición 1. Una seminorma es una función 𝔭 ∶ 𝑉 → ’ sobre un espacio vectorial 𝑉 que satisface las
siguientes propiedades:
I) para cualesquiera 𝑢, 𝑣 ∈ 𝑉, 𝔭(𝑢 + 𝑣) ≤ 𝔭(𝑢) + 𝔭(𝑣),
II) para todo 𝑢 ∈ 𝑉 y para todo 𝜆 ∈ ’, 𝔭(𝜆𝑢) = |𝜆|𝔭(𝑢). ◀

Usando las propiedades anteriores, obtenemos de II) que 𝔭(0) = 0 y de I) y II), que 𝔭(𝑢) ≥ 0 para todo
𝑢 ∈ 𝑉; sin embargo, 𝔭(𝑢) = 0 no implica que 𝑢 = 0. Por tanto, toda norma es una seminorma, pero el
recíproco no es cierto en general. Por ejemplo, en ’2 podemos definir la seminorma 𝔭((𝑥, 𝑦)) = |𝑦| para
(𝑥, 𝑦) ∈ ’2 . Claramente, para todo (𝑥, 0) con 𝑥 ∈ ’, 𝑥 ≠ 0, se tiene que 𝔭((𝑥, 0)) = 0, por lo que 𝔭 no
puede ser una norma.
Así, dado un conjunto de seminormas {𝔭𝑖 }𝑖∈‰ sobre un espacio vectorial 𝑉, donde ‰ es un conjunto cualquiera
de índices, y un punto 𝑢0 de 𝑉, podemos generar una base de entornos de 𝑢0 del siguiente modo:

𝑈‚,𝜀 (𝑢0 ) = {𝑢 ∈ 𝑉 ∣ 𝔭𝑖 (𝑢 − 𝑢0 ) < 𝜀, ∀ 𝑖 ∈ ‚},

donde ‚ es un subconjunto finito de ‰ no vacío y 𝜀 > 0.


De esta manera, sobre 𝑉 podemos inducir una topología asociada a esta base de entornos, respecto de la
cual las aplicaciones 𝔭𝑖 son aplicaciones continuas. En este caso se puede probar que, respecto de esta
topología, las operaciones asociadas a la estructura de espacio vectorial son aplicaciones continuas. Por
consiguiente, todo espacio vectorial con una familia de seminormas define un espacio vectorial topológico.
Definición 2. Se dice que un espacio vectorial topológico 𝑉 es un espacio de Fréchet si y solo si satisface
las siguientes propiedades:
1. 𝑉 es un espacio Hausdorff, es decir, para cualesquiera dos puntos de 𝑉 existen dos entornos cuya
intersección es vacía.
2. La topología sobre 𝑉 está inducida por una familia numerable de seminormas {𝔭𝑛 }𝑛∈Ž . Esto significa
que un subconjunto 𝑈 de 𝑉 es abierto si y solo si para todo 𝑢 ∈ 𝑈 existen 𝑘 ≥ 0 y 𝜀 > 0 tales que el
conjunto
{𝑣 ∈ 𝑉 ∣ 𝔭𝑛 (𝑣 − 𝑢) < 𝜀, ∀ 𝑛 ≤ 𝑘}
está contenido en 𝑈.
3. 𝑉 es un espacio vectorial completo respecto de la familia de seminormas, esto es, toda suceción de
Cauchy es convergente respecto de 𝔭𝑛 para todo 𝑛 ∈ Ž. ◀

De hecho, las condiciones segunda y la tercera de la definición 2 son equivalentes a que se pueda definir
una distancia 𝑑 invariante por traslación sobre el espacio vectorial 𝑉 y que, respecto de esa métrica, el
espacio sea completo. La relación entre la métrica 𝑑 y las seminormas es

1 𝔭𝑘 (𝑢 − 𝑣)
𝑑(𝑢, 𝑣) = ∑ .
𝑘=0
2𝑘 1 + 𝔭𝑘 (𝑢 − 𝑣)

TEMat, 3 (2019) e-ISSN: 2530-9633 19


Geometría diferencial en el estudio de imágenes médicas

A continuación, veremos una manera de construir ejemplos de espacios de Fréchet.


Sea 𝑉 un espacio vectorial con un conjunto contable de seminormas {𝔭𝑛 }𝑛∈Ž . Si estas cumplen las siguientes
propiedades:

𝐹1 Si 𝑣 ∈ 𝑉 y 𝔭𝑛 (𝑣) = 0 para todo 𝑛 ∈ Ž, entonces 𝑣 = 0,


𝐹2 Si (𝑣𝑖 )𝑖∈Ž es una sucesión de Cauchy en 𝑉 respecto de cada seminorma 𝔭𝑛 , entonces existe 𝑣 ∈ 𝑉 tal
que la sucesión 𝑣𝑖 converge a 𝑣 respecto de cada seminorma 𝔭𝑛 ,

entonces 𝑉 es un espacio de Fréchet. Esto es así ya que la condición 𝐹2 garantiza obviamente que 𝑉 es
completo respecto de cada seminorma y 𝐹1 garantiza que 𝑉 es Hausdorff.
Usando este método y el conjunto de seminormas {𝔭𝑛 }𝑛∈Ž definido por

𝔭𝑛 (𝑓) = máx{‖𝑓(𝑘) (𝜃)‖ ∣ 𝑘 ≤ 𝑛},


𝜃∈“1

se puede probar que el espacio de las curvas cerradas en el plano 𝐶 ∞ (“1 , ’2 ) es un espacio de Fréchet
infinito dimensional (para más detalles, se puede consultar el trabajo de Rodríguez Pérez [14]).

3. El espacio de curvas planas cerradas regulares como variedad de


Fréchet
En la sección anterior conocimos el espacio donde debemos trabajar, 𝐶 ∞ (“1 , ’2 ). Sin embargo, en nuestro
estudio nos interesa considerar el espacio de curvas cerradas en el plano que cumplan una cierta propiedad
de regularidad: el vector tangente en cada punto de la curva debe ser distinto de cero. A este conjunto lo
denotamos por
 = {𝑓 ∈ 𝐶 ∞ (“1 , ’2 ) ∣ ‖𝑓′ (𝜃)‖ ≠ 0, ∀ 𝜃 ∈ “1 },
siendo ‖ ⋅ ‖ la norma en ’2 , y se puede demostrar que es un abierto de 𝐶 ∞ (“1 , ’2 ) [14].
Además, no solo queremos que las curvas cerradas en el plano sean regulares, sino también que estén nor-
malizadas, es decir, que tengan longitud 1 y centroide el origen. El centroide de un objeto está relacionado
con la noción física del centro de masas. En el caso de una curva cerrada 𝑓 ∶ “1 → ’2 se define como

1
𝑐(𝑓) = ∫ ‖𝑓′ (𝜃)‖𝑓(𝜃) d𝜃 ∈ ’2 ,
𝐿(𝑓) 0

donde

(1) 𝐿(𝑓) = ∫ ‖𝑓′ (𝜃)‖ d𝜃.
0

Nota 3. Se debe entender la función 𝑐(𝑓) como la integración en cada una de las componentes de la
función ‖𝑓′ (𝜃)‖𝑓(𝜃). ◀

A este nuevo conjunto lo denotamos por 𝑑 = {𝑓 ∈  ∣ 𝐿(𝑓) = 1, 𝑐(𝑓) = (0, 0)}.


Sin embargo, este subconjunto de  no es un abierto de 𝐶 ∞ (“1 , ’2 ). Este hecho nos obliga a trabajar con
una nueva categoría de espacio: las variedades de Fréchet.
Definición 4. Sea 𝑀 un espacio topológico Hausdorff. Una carta sobre 𝑀 modelada sobre un espacio de
Fréchet 𝐸 es una aplicación 𝜙 ∶ 𝑈 ⊂ 𝑀 → 𝐸 continua tal que 𝑈 es un abierto de 𝑀, 𝜙(𝑈) es un abierto de
𝐸 y 𝜙 ∶ 𝑈 ⊂ 𝑀 → 𝜙(𝑈) es un homeomorfismo. Un atlas sobre 𝑀 modelado sobre 𝐸 es un conjunto de
cartas {(𝑈𝛼 , 𝜙𝛼 )}𝛼∈ , siendo  un conjunto de índices, modeladas sobre 𝐸, tales que 𝑀 = ⋃𝛼∈ 𝑈𝛼 y, para
cualesquiera 𝛼 y 𝛽 que cumplen que 𝑈𝛼 ∩ 𝑈𝛽 ≠ ∅, se tiene que

𝜙𝛽 ∘ 𝜙𝛼−1 ∶ 𝜙𝛼 (𝑈𝛼 ∩ 𝑈𝛽 ) ⊆ 𝐸 → 𝜙𝛽 (𝑈𝛼 ∩ 𝑈𝛽 ) ⊆ 𝐸

20 [Link]
Rodríguez Pérez

es diferenciable. Una estructura diferenciable sobre 𝑀 es un atlas maximal con respecto a esta última
condición. En tal caso, se dice que 𝑀 es una variedad de Fréchet.
Una subvariedad de una variedad de Fréchet 𝑀 modelada sobre 𝐸 es un subconjunto 𝑁 de 𝑀 tal que para
todo 𝑥 ∈ 𝑁 existe una carta (𝑈, 𝜙) de 𝑀 tal que 𝜙(𝑈 ∩ 𝑁) = 𝜙(𝑈) ∩ 𝐸1 , siendo 𝐸1 un subespacio lineal
cerrado de 𝐸. ◀

Téngase en cuenta que la noción de variedad de Fréchet es una generalización del concepto de variedad
diferenciable 𝑛-dimensional, donde hemos reemplazado ’𝑛 por el espacio de Fréchet 𝐸.
Ejemplo 5. Un espacio de Fréchet 𝐸 es naturalmente una variedad de Fréchet. Basta tomar el atlas formado
por la carta (𝐸, Id ), donde Id ∶ 𝐸 → 𝐸 es la aplicación identidad en 𝐸. ◀

Ejemplo 6. Un abierto 𝑈 en 𝑀 es una subvariedad de 𝑀. ◀

Por lo tanto,  es una subvariedad de Fréchet del espacio de Fréchet 𝐶 ∞ (“1 , ’2 ), pero ¿qué ocurre con
𝑑 ?
Tras la definición 4, extender la noción de curva diferenciable sobre una variedad de Fréchet resulta
natural.
Definición 7. En una variedad de Fréchet 𝑀 modelada sobre un espacio de Fréchet 𝐸, una curva (aplicación
continua) 𝛾 ∶ (−𝜀, 𝜀) → 𝑀 es diferenciable si para todo 𝑡0 ∈ (−𝜀, 𝜀) existen un 𝛿 > 0 y una carta (𝑈, 𝜙) de
𝑀 tales que (𝑡0 − 𝛿, 𝑡0 + 𝛿) ⊂ (−𝜀, 𝜀), 𝛾(𝑡0 − 𝛿, 𝑡0 + 𝛿) ⊂ 𝑈 y

𝜙 ∘ 𝛾 ∶ (𝑡0 − 𝛿, 𝑡0 + 𝛿) → 𝜙(𝑈) ⊂ 𝐸

es una aplicación diferenciable [13]. ◀

Supongamos ahora que 𝐹 ∶ 𝑀1 → 𝑀2 es una aplicación continua entre variedades de Fréchet modeladas
sobre 𝐸1 y 𝐸2 , respectivamente. La aplicación 𝐹 es diferenciable en 𝑝 ∈ 𝑀1 si existe una carta (𝑈1 , 𝜙1 ) de
𝑀1 donde 𝑈1 contiene a 𝑝 y otra carta (𝑈2 , 𝜙2 ) de 𝑀2 donde 𝑈2 contiene a 𝐹(𝑝), con 𝐹(𝑈1 ) ⊆ 𝑈2 , tales que
la aplicación
1
𝜙2 ∘ 𝐹 ∘ 𝜙 −
1 ∶ 𝜙1 (𝑈1 ) ⊆ 𝐸1 → 𝜙2 (𝑈2 ) ⊆ 𝐸2

es diferenciable. La aplicación 𝐹 es diferenciable cuando lo es en cada uno de sus puntos.


En variedades finito dimensionales, un vector tangente en un punto de la variedad puede definirse de dos
formas equivalentes: como una derivación en el espacio de funciones reales diferenciables en un entorno
del punto, o como un vector tangente de una curva en la variedad que pasa por el punto. Esta equivalencia
no ocurre en el caso infinito dimensional: todo vector velocidad de una curva es una derivación, pero no
todas las derivaciones son inducidas desde una curva sobre la variedad. Nosotros utilizaremos los vectores
velocidad de las curvas sobre la variedad, esto es, trabajaremos con el espacio tangente cinemático.
Si 𝑀 es una variedad de Fréchet y 𝑝 ∈ 𝑀, entonces el espacio tangente cinemático 𝑇𝑝 𝑀 en 𝑝 es el espacio
cociente de curvas diferenciables 𝛾 ∶ (−𝜀, 𝜀) → 𝑀 tales que 𝛾(0) = 𝑝, con la relación de equivalencia

𝛾 ∼ 𝛾 ⟺ 𝛾′ (0) = 𝛾 (0).

Se puede probar que 𝑇𝑝 𝑀 es un espacio vectorial. Si 𝑈 es un abierto de 𝑀, resulta que 𝑇𝑝 𝑈 es isomorfo a


𝑇𝑝 𝑀 y, en el caso de un espacio de Fréchet 𝐸, se tiene que 𝑇𝑝 𝐸 es difeomorfo a 𝐸.
Seguidamente, supongamos que 𝐹 ∶ 𝑀1 → 𝑀2 es una aplicación diferenciable en 𝑝.
Definición 8. La aplicación inducida por 𝐹 entre los espacios tangentes 𝑇𝑝 𝑀1 y 𝑇𝐹(𝑝) 𝑀2 , o aplicación
tangente en 𝑝, es la aplicación lineal 𝑇𝑝 𝐹 ∶ 𝑇𝑝 𝑀1 → 𝑇𝐹(𝑝) 𝑀2 tal que para todo 𝑣 ∈ 𝑇𝑝 𝑀1 se tiene que
𝑇𝑝 𝐹(𝑣) = (𝐹 ∘ 𝛾)′ (0), donde 𝛾 ∶ (−𝜀, 𝜀) → 𝑀1 es una curva en 𝑀1 tal que 𝛾(0) = 𝑝 y 𝛾′ (0) = 𝑣. ◀

En general, cuando estamos trabajando con variedades de Fréchet, el teorema de la función inversa no es
cierto. Es necesario que las variedades de Fréchet sean de un tipo especial, muy cercano a las variedades
de Banach: las variedades Tame-Fréchet. Estas variedades no son objeto de estudio de este artículo. Solo
necesitamos el siguiente resultado, que se demuestra a partir del corolario 2.3.2 (pág. 146) y del teorema
2.3.1 (pág. 196) del artículo de Hamilton [10].

TEMat, 3 (2019) e-ISSN: 2530-9633 21


Geometría diferencial en el estudio de imágenes médicas

Teorema 9. Sean 𝑀1 una variedad compacta, 𝑀2 una variedad de dimensión finita, 𝑉 un espacio vectorial
finito dimensional, 𝐹 ∶ 𝑈 ⊆ 𝐶 ∞ (𝑀1 , 𝑀2 ) → 𝑉 una aplicación diferenciable en un abierto 𝑈 de 𝐶 ∞ (𝑀1 , 𝑀2 )
y 𝛾0 ∈ 𝑈. Si las aplicaciones lineales

𝑇𝛾 𝐹 ∶ 𝑇𝛾 𝐶 ∞ (𝑀1 , 𝑀2 ) → 𝑇𝐹(𝛾) 𝑉, ∀ 𝛾 ∈ 𝐹 −1 (𝐹(𝛾0 )),

son suprayectivas, entonces 𝐹 −1 (𝐹(𝛾0 )) es una subvariedad de 𝑈 y

𝑇𝛾 (𝐹 −1 (𝐹(𝛾0 ))) = Ker 𝑇𝛾 𝐹, ∀ 𝛾 ∈ 𝐹 −1 (𝐹(𝛾0 )).

De esta manera, volviendo a nuestro problema real, podemos tomar la aplicación diferenciable

(𝐿, 𝑐) ∶  ⊂ 𝐶 ∞ (“1 , ’2 ) → ’ × ’2

definida por (𝐿, 𝑐)(𝑓) = (𝐿(𝑓), 𝑐(𝑓)). Está claro que 𝑑 = (𝐿, 𝑐)−1 (1, (0, 0)). Por lo tanto, usando el teorema
anterior podemos demostrar que 𝑑 es una subvariedad de  y que 𝑇𝑓 𝑑 = Ker 𝑇𝑓 (𝐿, 𝑐).

4. Una métrica riemanniana sobre el espacio de las curvas cerradas


regulares en el plano
A continuación, trataremos de definir una métrica en . Para ello, recordamos brevemente la noción de
métrica de Riemann sobre una variedad de Fréchet.
Sean 𝑀 una variedad de Fréchet modelada sobre 𝐸 y 𝑇𝑀 = ⋃𝑝∈𝑀 𝑇𝑝 𝑀 el fibrado tangente de 𝑀. Denotamos
por 𝜋 ∶ 𝑇𝑀 → 𝑀 a la proyección 𝜋(𝑝, [𝛾]) = 𝑝. Entonces, 𝑇𝑀 es una variedad de Fréchet modelada
sobre 𝐸 × 𝐸 que hace a 𝜋 diferenciable. En efecto, basta tomar un atlas de 𝑇𝑀 de la siguiente manera:
{(𝜋−1 (𝑈𝛼 ), 𝜙𝛼 )}𝛼∈ tal que 𝜙𝛼 ∶ 𝜋−1 (𝑈𝛼 ) → 𝐸 × 𝐸 está definida como
𝜙𝛼 (𝑝, [𝛾]) = (𝜑𝛼 (𝑝), (𝜑𝛼 ∘ 𝛾)′ (0)),

siendo {(𝑈𝛼 , 𝜑𝛼 )}𝛼∈ un atlas diferenciable de 𝑀.


Asimismo, el producto fibrado 𝑇𝑀 ×𝑀 𝑇𝑀 ≔ {(𝑝, [𝛾1 ], [𝛾2 ]) ∣ 𝑝 ∈ 𝑀 y [𝛾1 ], [𝛾2 ] ∈ 𝑇𝑝 𝑀} también es una
variedad de Fréchet modelada sobre 𝐸 × 𝐸 × 𝐸. Basta considerar la proyección 𝜋 ˜ ∶ 𝑇𝑀 ×𝑀 𝑇𝑀 → 𝑀 y el
˜−1 (𝑈𝛼 ), 𝜙˜𝛼 }𝛼∈ , tal que
atlas {(𝜋

𝜙˜𝛼 ∶ ˜−1 (𝑈𝛼 )


𝜋 → 𝐸×𝐸×𝐸
(𝑝, [𝛾1 ], [𝛾2 ]) ↦ (𝜑𝛼 (𝑝), (𝜑𝛼 ∘ 𝛾1 )′ (0), (𝜑𝛼 ∘ 𝛾2 )′ (0)) ,

donde {(𝑈𝛼 , 𝜑𝛼 )}𝛼∈ es un atlas de 𝑀.


Ahora podemos definir la noción de métrica riemanniana en una variedad de Fréchet.
Definición 10. Sea 𝑀 una variedad. Una métrica riemanniana es una aplicación diferenciable

⟨⋅, ⋅⟩𝑀 ∶ 𝑇𝑀 ×𝑀 𝑇𝑀 → ’

tal que para todo 𝑝 ∈ 𝑀 la aplicación ⟨⋅, ⋅⟩𝑀 ∶ 𝑇𝑝 𝑀 × 𝑇𝑝 𝑀 → ’ es un producto escalar sobre 𝑇𝑝 𝑀. ◀

Si regresamos al problema de definir una métrica sobre , podemos definir la siguiente descomposición
de los elementos ℎ de 𝑇𝑓  [15]:

ℎ(𝜃) = ℎ𝑡 + ℎ𝑙 (𝑓(𝜃) − 𝑐(𝑓)) + 𝐿(𝑓)ℎ𝑑 (𝜃),

donde

1. ℎ𝑡 = 𝑇𝑓 𝑐(ℎ) ∈ ’2 ,
2. ℎ𝑙 = 𝑇𝑓 (ln 𝐿)(ℎ) ∈ ’,

22 [Link]
Rodríguez Pérez

1
3. ℎ𝑑 = (ℎ − ℎ𝑡 − ℎ𝑙 (𝑓 − 𝑐(𝑓))) ∈ Ker 𝑇𝑓 (𝐿, 𝑐),
𝐿(𝑓)
siendo 𝐿 la aplicación longitud definida en la ecuación (1).
De este modo, se demuestra que la aplicación

𝜙∶ 𝑇𝑓  → ’2 × ’ × Ker 𝑇𝑓 (𝐿, 𝑐)
ℎ ↦ (ℎ𝑡 , ℎ𝑙 , ℎ𝑑 )

es un isomorfismo de espacios vectoriales, lo que nos sugiere introducir la siguiente métrica riemanniana
sobre  [15].
Proposición 11. Sean ℎ y 𝑘 dos elementos de 𝑇𝑓 . Entonces, la operación ⟨⋅, ⋅⟩ ∶ 𝑇𝑓  × 𝑇𝑓  → ’ dada
por 2π
⟨(ℎ𝑑 )′ (𝜃), (𝑘𝑑 )′ (𝜃)⟩
⟨ℎ, 𝑘⟩ = ⟨ℎ𝑡 , 𝑘𝑡 ⟩ + ℎ𝑙 𝑘𝑙 + 𝐿(𝑓) ∫ d𝜃
0
‖𝑓′ (𝜃)‖
define una métrica riemanniana sobre , donde ⟨⋅, ⋅⟩ es el producto escalar estándar en ’2 .
Nota 12. Sea 𝐹 ∶ (𝑀1 , ⟨⋅, ⋅⟩𝑀1 ) → (𝑀2 , ⟨⋅, ⋅⟩𝑀2 ) un difeomorfismo entre variedades riemannianas de Fréchet.
Diremos que 𝐹 es una isometría si para todo 𝑝 ∈ 𝑀1 se tiene que

⟨𝑇𝑝 𝐹([𝑓1 ]), 𝑇𝑝 𝐹([𝑓2 ])⟩𝑀2 = ⟨[𝑓1 ], [𝑓2 ]⟩𝑀1 , ∀[𝑓1 ], [𝑓2 ] ∈ 𝑇𝑝 𝑀1 . ◀

Es más,  con esta métrica es isométrico a ’2 × ’ × 𝑑 con la métrica derivada de los productos escalares
correspondientes a ’2 y ’, y el producto sobre 𝑇𝑓0 𝑑 siguiente :

⟨ℎ0′ (𝜃), 𝑘′0 (𝜃)⟩
(2) ⟨ℎ0 , 𝑘0 ⟩𝑑 = ∫ d𝜃,
0
‖𝑓0′ (𝜃)‖

donde 𝑓0 ∈ 𝑑 y ℎ0 , 𝑘0 ∈ 𝑇𝑓0 𝑑 .
Proposición 13. La aplicación 𝜙1 ∶  → ’2 × ’ × 𝑑 definida por

𝑓 − 𝑐(𝑓)
𝜙1 (𝑓) = (𝑐(𝑓), ln 𝐿(𝑓), )
𝐿(𝑓)

es una isometría respecto de ⟨⋅, ⋅⟩ y la métrica determinada por la estándar sobre ’2 , ’ y ⟨⋅, ⋅⟩𝑑 .
Nota 14. Si restringimos ⟨⋅, ⋅⟩ a 𝑇𝑓0 𝑑 , obtenemos ⟨⋅, ⋅⟩𝑑 . ◀

Antes de finalizar esta sección, presentaremos otra descripción de la variedad riemanniana (𝑑 , ⟨⋅, ⋅⟩𝑑 )
que nos será útil en lo sucesivo.
Proposición 15. Si ′𝑑 = {𝑓 ∈  ∣ 𝐿(𝑓) = 1, 𝑓(0) = (0, 0)}, entonces

a) ′𝑑 es una subvariedad de  y su espacio tangente en 𝑓 ∈ ′𝑑 es

𝑇𝑓 ′𝑑 = {ℎ ∈ 𝑇𝑓  ∣ 𝑇𝑓 𝐿(ℎ) = 0, ℎ(0) = (0, 0)}.

b) La aplicación 𝜌 ∶ 𝑑 → ′𝑑 dada por 𝜌(𝑓) = 𝑓 − 𝑓(0) es un difeomorfismo.


c) Si sobre ′𝑑 consideramos la métrica riemanniana

⟨ℎ′ (𝜃), 𝑘′ (𝜃)⟩
⟨ℎ, 𝑘⟩′ = ∫ d𝜃
𝑑
0
‖𝑓′ (𝜃)‖

con ℎ, 𝑘 ∈ 𝑇𝑓 ′𝑑 y 𝑓 ∈ ′𝑑 , entonces 𝜌 ∶ (𝑑 , ⟨⋅, ⋅⟩𝑑 ) → (′𝑑 , ⟨⋅, ⋅⟩′𝑑 ) es una isometría.

TEMat, 3 (2019) e-ISSN: 2530-9633 23


Geometría diferencial en el estudio de imágenes médicas

5. El embebimiento
Queremos hallar la curva media extrínseca de una familia finita de curvas de  y, para ello, la estrategia
será embeber esta variedad en un espacio vectorial euclídeo. Recordamos que  es difeomorfo al espacio
producto ’2 × ’ × 𝑑 , por lo que podemos asumir que 𝑑 codifica la parte no euclídea de . Por lo
tanto, debemos preguntarnos en qué espacio vectorial euclídeo podemos embeber la subvariedad 𝑑 . La
respuesta a esta pregunta la da el espacio euclídeo infinito dimensional 𝑉 = 𝐶 ∞ (“1 , ’), cuyo producto
escalar es

⟨𝑎, 𝑏⟩ = ∫ 𝑎(𝜃)𝑏(𝜃) d𝜃.
0
Así, el embebimiento que vamos a considerar es
 ≅ ’2 × ’ × 𝑑 ↪ ’2 × ’ × 𝑉 × 𝑉.
A continuación, lo describimos con detalle.
Tomamos en 𝑉 × 𝑉 el conjunto de pares ortonormales bajo una cierta condición abierta
St 0 (2, 𝑉) = {(𝑎, 𝑏) ∈ St (2, 𝑉) ∣ (𝑎(𝜃), 𝑏(𝜃)) ≠ (0, 0) ∀ 𝜃 ∈ “1 },
donde St (2, 𝑉) = {(𝑎, 𝑏) ∈ 𝑉 × 𝑉 ∣ ‖𝑎‖𝑉 = ‖𝑏‖𝑉 = 1, ⟨𝑎, 𝑏⟩𝑉 = 0}.
Se puede demostrar que St (2, 𝑉) es una subvariedad de 𝑉 × 𝑉 y que St 0 (2, 𝑉) es un abierto de St (2, 𝑉) y,
por lo tanto, una subvariedad.
Asimismo, tomamos la aplicación
𝛹∶ St 0 (2, 𝑉) → ′𝑑
𝜃
1
(𝑎, 𝑏) ↦ 𝛹(𝑎, 𝑏)(𝜃) = ∫ (𝑎(𝑠) + 𝑖𝑏(𝑠))2 d𝑠,
2 0
que no es inyectiva, pues 𝛹(𝑎, 𝑏) = 𝛹(−𝑎, −𝑏).
Definición 16. Sea 𝑝 ∶ 𝑋̃ → 𝑋 una aplicación continua. Diremos que el subconjunto abierto 𝑈 ⊂ 𝑋 está
propiamente recubierto por 𝑝 si 𝑝−1 (𝑈) es la unión disjunta de subconjuntos abiertos de 𝑋,̃ cada uno de
los cuales se aplica por 𝑝 homeomórficamente sobre 𝑈. Se dice que la aplicación continua 𝑝 ∶ 𝑋̃ → 𝑋 es
una aplicación recubridora si todo punto 𝑥 ∈ 𝑋 tiene un entorno abierto propiamente recubierto por 𝑝.
Entonces diremos que 𝑝 ∶ 𝑋̃ → 𝑋 es un recubrimiento, 𝑋̃ es el espacio recubridor de 𝑋 y 𝑋 es el espacio
base de la aplicación recubridora 𝑝. ◀

De este modo, teniendo en cuenta la definición anterior, se puede demostrar que 𝛹 es una aplicación
recubridora de dos hojas, las cuales denotamos por (St 0 (2, 𝑉))+ , de manera que St 0 (2, 𝑉) es un recubridor
de dos hojas de ′𝑑 .
Por consiguiente, ′𝑑 es difeomorfa a cada una de las hojas del recubrimiento. Como 𝑑 y ′𝑑 son
difeomorfos, podemos concluir que 𝑑 también es difeomorfa con cada una de las hojas del recubrimiento
y, por lo tanto,
 ≅ ’2 × ’ × 𝑑 ≅ ’2 × ’ × (St 0 (2, 𝑉))+ ,
donde el difeomorfismo se define a través de la aplicación
𝜙∶ ’2 × ’ × (St 0 (2, 𝑉))+ → 
(3)
(𝑣, 𝑙, (𝑎, 𝑏)) ↦ 𝑣 + 𝑒𝑙 (𝛹(𝑎, 𝑏) − 𝑐 (𝛹(𝑎, 𝑏))) .
Así, el embebimiento que estábamos buscando es
 ↪ ’2 × ’ × (St 0 (2, 𝑉))+ ⊂ ’2 × ’ × 𝑉 × 𝑉
,
𝑓 ↪ (𝑐(𝑓), ln 𝐿(𝑓), (𝑎, 𝑏))
donde
𝛼(𝜃) 𝛼(𝜃)
𝑎(𝜃) = √2‖𝑓′ (𝜃)‖ cos ( ) y 𝑏(𝜃) = √2‖𝑓′ (𝜃)‖ sen ( ),
2 2
siendo 𝛼(𝜃) el ángulo que forma 𝑓 (𝜃) con el eje 𝑂𝑋 medido en el sentido contrario a las agujas del reloj.

24 [Link]
Rodríguez Pérez

6. La curva media extrínseca de una familia finita de curvas planas


cerradas regulares
Llegados a este punto, solo nos queda definir la curva media extrínseca de un conjunto finito de curvas
{𝑓1 , 𝑓2 , ⋯ , 𝑓𝑛 } de . Estas curvas se pueden identificar con los elementos de ’2 × ’ × 𝑉 × 𝑉

(𝑐(𝑓𝑖 ), ln 𝐿(𝑓𝑖 ), (𝑎𝑖 , 𝑏𝑖 )) ,

de manera que podemos definir la media en ’2 × ’ × 𝑉 × 𝑉 como (𝑐𝑚 , ln 𝐿𝑚 , (𝑎𝑚 , 𝑏𝑚 )), donde
𝑛 𝑛
1
∑ 𝑐(𝑓 ), ∏ 𝐿(𝑓𝑖 ),
𝑛
𝑐𝑚 = 𝐿𝑚 =
𝑛 𝑖=1 𝑖 √ 𝑖=1
𝑛 𝑛
1 1
𝑎𝑚 (𝜃) = ∑ 𝑎 (𝜃), 𝑏𝑚 (𝜃) = ∑ 𝑏 (𝜃).
𝑛 𝑖=1 𝑖 𝑛 𝑖=1 𝑖

Nota 17. Adviértase que 𝐿𝑚 es la media geométrica de 𝐿(𝑓𝑖 ) para todo 𝑖 ∈ {1, … , 𝑛} y que
𝑛
1
ln 𝐿𝑚 = ∑ ln 𝐿(𝑓𝑖 ). ◀
𝑛 𝑖=1

Lo que nos interesa es que (𝑐𝑚 , ln 𝐿𝑚 , (𝑎𝑚 , 𝑏𝑚 )) pertenezca a ’2 × ’ × St 0 (2, 𝑉), pero en general (𝑎𝑚 , 𝑏𝑚 )
no pertenece a St 0 (2, 𝑉). Por lo tanto, no es posible obtener el correspondiente elemento de  asociado
por la aplicación 𝜙 dada en la ecuación (3). La estrategia para subsanar este inconveniente consiste en
aplicar el proceso de normalización de Gram-Schmidt a (𝑎𝑚 , 𝑏𝑚 ) para conseguir un punto de St 0 (2, 𝑉).
Los puntos restantes de este espacio son rotaciones de dicho punto. Así, podemos calcular la rotación
correspondiente a la mínima distancia con (𝑎𝑚 , 𝑏𝑚 ). Para ello, debemos garantizar que ese elemento existe
y es único, por lo que suponemos que (𝑎𝑚 , 𝑏𝑚 ) es un punto no focal de St 0 (2, 𝑉), esto es, existe un único
(𝑎0𝑚 , 𝑏𝑚
0
) ∈ St 0 (2, 𝑉) tal que

(4) 𝑑0 ((𝑎𝑚 , 𝑏𝑚 ), St 0 (2, 𝑉)) = 𝑑0 ((𝑎𝑚 , 𝑏𝑚 ), (𝑎0𝑚 , 𝑏𝑚


0
)) .

Para ver con más detalle este proceso se puede consultar el trabajo de Rodríguez Pérez [14].
Nota 18. Esta condición de focalidad se puede garantizar en gran parte de los casos prácticos. Además, en
este caso, como St (2, 𝑉) es un cerrado de 𝑉 × 𝑉, siempre existe (𝑎𝑚 , 𝑏𝑚 ) ∈ St (2, 𝑉) tal que

𝑑0 ((𝑎𝑚 , 𝑏𝑚 ), St (2, 𝑉)) = 𝑑0 ((𝑎𝑚 , 𝑏𝑚 ), (𝑎𝑚 , 𝑏𝑚 )) . ◀

Para finalizar, todo el desarrollo teórico que hemos realizado nos permite cumplir nuestro objetivo: definir
la curva media extrínseca.
Definición 19. La curva media extrínseca de una muestra {𝑓1 , 𝑓2 , … , 𝑓𝑛 } de curvas planas cerradas regula-
res es la curva obtenida de la siguiente fórmula:

𝑛 • •
1 2 1 2
∏ 𝐿(𝑓𝑖 ) ( ∫ (𝑎0𝑚 (𝑠) + 𝑖𝑏𝑚
0
(𝑠)) d𝑠 − 𝑐( ∫ (𝑎0𝑚 (𝑠) + 𝑖𝑏𝑚
0
(𝑠)) d𝑠)) .
𝑛
𝑓𝑚 = 𝑐𝑚 + ◀
√ 𝑖=1 2 0 2 0

Nota 20. Obsérvese que 𝑓𝑚 = 𝜙 (𝑐𝑚 , ln 𝐿𝑚 , (𝑎0𝑚 , 𝑏𝑚


0
)). ◀

7. El algoritmo
La teoría desarrollada en las secciones anteriores nos permite construir un algoritmo para resolver el proble-
ma de encontrar la curva media extrínseca. A continuación lo describiremos paso a paso y, posteriormente,
estudiaremos un ejemplo sencillo. Así, el algoritmo se desarrolla en los siguientes pasos:

TEMat, 3 (2019) e-ISSN: 2530-9633 25


Geometría diferencial en el estudio de imágenes médicas

1. Establecer las curvas {𝑓1 , 𝑓2 , … , 𝑓𝑛 } planas cerradas y regulares que forman la muestra.
2. Calcular los correspondientes elementos de cada curva en ’2 × ’ × St 0 (2, 𝑉), es decir,

(𝑐(𝑓𝑖 ), ln 𝐿(𝑓𝑖 ), (𝑎𝑖 , 𝑏𝑖 )) ,

donde
2π 2π
1
𝐿(𝑓𝑖 ) = ∫ ‖𝑓𝑖′ (𝜃)‖ d𝜃, 𝑐(𝑓𝑖 ) = ∫ ‖𝑓𝑖′ (𝜃)‖𝑓𝑖 (𝜃) d𝜃,
0
𝐿(𝑓𝑖 ) 0

2‖𝑓𝑖′ (𝜃)‖ 𝛼 (𝜃) 2‖𝑓𝑖′ (𝜃)‖ 𝛼 (𝜃)


𝑎𝑖 (𝜃) = cos ( 𝑖 ), 𝑏𝑖 (𝜃) = sen ( 𝑖 ),
√ 𝐿(𝑓 𝑖 ) 2 √ 𝐿(𝑓 𝑖 ) 2

siendo 𝛼𝑖 (𝜃) el ángulo que forma 𝑓𝑖′ (𝜃) = (𝑥𝑖′ (𝜃), 𝑦𝑖′ (𝜃)) con el eje 𝑂𝑋.
3. Calcular el valor medio (𝑐𝑚 , ln 𝐿𝑚 , (𝑎𝑚 , 𝑏𝑚 )) en ’2 × ’ × 𝑉 × 𝑉 con las siguientes fórmulas:
𝑛 𝑛 𝑛 𝑛
1 1 1 1
𝑐𝑚 = ∑ 𝑐(𝑓 ), ln 𝐿𝑚 = ∑ ln 𝐿(𝑓𝑖 ), 𝑎𝑚 = ∑𝑎 y 𝑏𝑚 = ∑𝑏.
𝑛 𝑖=1 𝑖 𝑛 𝑖=1 𝑛 𝑖=1 𝑖 𝑛 𝑖=1 𝑖

4. Construir el par (𝑎0𝑚 , 𝑏𝑚


0
) ∈ St 0 (2, 𝑉) que minimiza la distancia con (𝑎𝑚 , 𝑏𝑚 ) ∈ 𝑉 × 𝑉. Consideramos
los elementos de 𝑉 × 𝑉
⟨𝑎𝑚 , 𝑏𝑚 ⟩𝑉
𝑢1 = 𝑎𝑚 y 𝑢2 = 𝑏𝑚 − 𝑎
⟨𝑎𝑚 , 𝑎𝑚 ⟩𝑉 𝑚
𝑢1 𝑢2
y los normalizamos, obteniendo el par (𝑎𝑔 = , 𝑏𝑔 = ). Por último, calculamos el elemento
‖𝑢1 ‖𝑉 ‖𝑢2 ‖𝑉
buscado con la fórmula

(𝑎0𝑚 , 𝑏𝑚
0
) = (𝑎𝑔 cos 𝛼 − 𝑏𝑔 sen 𝛼, 𝑎𝑔 sen 𝛼 + 𝑏𝑔 cos 𝛼),

donde 𝛼 es el ángulo
⟨𝑏𝑚 , 𝑎𝑔 ⟩𝑉 π 3π
𝛼 = arctan ∈ [0, [ ∪ ] , 2π[.
⟨𝑎𝑚 , 𝑎𝑔 ⟩𝑉 + ⟨𝑏𝑚 , 𝑏𝑔 ⟩𝑉 2 2

5. Calcular la curva 𝛹(𝑎0𝑚 , 𝑏𝑚


0
) ∈ ′𝑑 mediante la expresión
𝜃
1 2
𝛹(𝑎0𝑚 , 𝑏𝑚
0
)(𝜃) = ∫ (𝑎0𝑚 (𝑠) + 𝑖𝑏𝑚
0
(𝑠)) d𝑠.
2 0

6. Calcular el centroide de la curva 𝛹(𝑎0𝑚 , 𝑏𝑚


0
) ∈ ′𝑑 , esto es,

𝑐 (𝛹(𝑎0𝑚 , 𝑏𝑚
0
)) = ∫ ‖(𝛹(𝑎0 , 𝑏0 ))′ (𝜃)‖ 𝛹(𝑎0 , 𝑏0 )(𝜃) d𝜃.
‖ 𝑚 𝑚 ‖ 𝑚 𝑚
0

7. Construir la curva media extrínseca en , es decir,


𝑛
∏ 𝐿(𝑓𝑖 ) (𝛹(𝑎0𝑚 , 𝑏𝑚
0
) − 𝑐 (𝛹(𝑎0𝑚 , 𝑏𝑚
0
𝑛
𝑓𝑚 = 𝑐𝑚 + ))) .
√ 𝑖=1
Ejemplo 21. Para entender el proceso, presentamos un ejemplo matemático con tres circunferencias con
centro el origen y radios 1, 2 y 6, respectivamente.
Consideramos las curvas 𝑓1 (𝜃) = (cos 𝜃, sen 𝜃), 𝑓2 (𝜃) = (2 cos 𝜃, 2 sen 𝜃) y 𝑓3 (𝜃) = (6 cos 𝜃, 6 sen 𝜃). Usando
la fórmula de la longitud tenemos que 𝐿(𝑓1 ) = 2π, 𝐿(𝑓2 ) = 4π y 𝐿(𝑓3 ) = 12π. Por otro lado, el centroide de
todas ellas es el punto (0, 0). Como
π π
𝑓1′ (𝜃) = (− sen 𝜃, cos 𝜃) = ( cos (𝜃 + ), sen (𝜃 + )),
2 2

26 [Link]
Rodríguez Pérez

tenemos que el ángulo que forma 𝑓1′ (𝜃) con el eje 𝑂𝑋 es 𝛼1 (𝜃) = 𝜃 + π/2 y, de la misma manera, deducimos
que 𝛼1 (𝜃) = 𝛼2 (𝜃) = 𝛼3 (𝜃).
Con estos datos, estamos en condiciones de construir los pares (𝑎𝑖 , 𝑏𝑖 ) correspondientes a cada curva, esto
es,
1 𝜃 π 1 𝜃 π
(𝑎1 (𝜃), 𝑏1 (𝜃)) = (𝑎2 (𝜃), 𝑏2 (𝜃)) = (𝑎3 (𝜃), 𝑏3 (𝜃)) = (√ cos ( + ), √ sen ( + )) .
π 2 4 π 2 4
De este modo, el par (𝑎𝑚 , 𝑏𝑚 ) es

1 𝜃 π 1 𝜃 π
(𝑎𝑚 (𝜃), 𝑏𝑚 (𝜃)) = (√ cos ( + ), √ sen ( + )) .
π 2 4 π 2 4

Nótese que (𝑎𝑚 , 𝑏𝑚 ) ∈ St 0 (2, 𝑉), por lo que (𝑎0𝑚 , 𝑏𝑚


0
) = (𝑎𝑚 , 𝑏𝑚 ).
Finalmente, calculamos la curva imagen por la aplicación 𝛹, es decir,
𝜃
1 2 1
𝛹(𝑎0𝑚 , 𝑏𝑚
0
)(𝜃) = ∫ (𝑎0𝑚 (𝑠) + 𝑖𝑏𝑚
0
(𝑠)) d𝑠 = (cos(𝜃) − 1, sen(𝜃)),
2 0 2π

y su centroide, o sea,
−1
𝑐(𝛹(𝑎0𝑚 , 𝑏𝑚
0
)) = ( , 0).

3
Así, concluimos que la curva media en este ejemplo es la circunferencia de radio √ 12 y centro (0, 0)
3
𝑓𝑚 (𝜃) = √12(cos 𝜃, sen 𝜃). ◀

Nota 22. Téngase en cuenta que la curva media extrínseca es una circunferencia cuyo radio es la media
geométrica de los radios de la muestra. Este tipo de media es menos sensible a valores extremos que la
media aritmética y aparece como consecuencia de la introducción del logaritmo neperiano en la segunda
componente de  ≅ ’2 × ’ × (St 0 (2, 𝑉))+ . Es necesario aplicar el logaritmo neperiano porque tomar
directamente las longitudes implicaría trabajar en ’2 × ’+ × 𝑉 × 𝑉 y este espacio no es un espacio
vectorial. ◀

8. Una discretización del algoritmo


En el ejemplo 21 de la sección anterior tenemos las parametrizaciones de las curvas, pero esto no suele ser
así. Lo normal es que conozcamos una serie de puntos de cada curva, por lo que debemos discretizar el
proceso usando métodos numéricos de aproximación. En concreto, debemos discretizar dos operaciones:
la derivación y la integración.
Para la elaboración del código en MATLAB1 , hemos optado por utilizar los métodos numéricos que a
continuación describimos:

1. Para el cálculo de la derivada utilizamos el método del punto medio con cinco nodos, es decir,

1
𝑓′ (𝜃) ≈ [ − 𝑓(𝜃 + 2ℎ) + 8𝑓(𝜃 + ℎ) − 8𝑓(𝜃 − ℎ) + 𝑓(𝜃 − 2ℎ)],
12ℎ
donde 𝜃 ∈ {0, ℎ, 2ℎ, … , 2π} y ℎ es el tamaño de paso. El error cometido al usar este método es

ℎ4 (5)
𝑓 (𝜉), 𝜉 ∈ [𝜃 − 2ℎ, 𝜃 + 2ℎ],
30
por lo que es un método de orden 5 [3, pág. 178].

1 Archivo curva2.m, disponible en [Link]

TEMat, 3 (2019) e-ISSN: 2530-9633 27


Geometría diferencial en el estudio de imágenes médicas

2. Para el cálculo de las integrales usamos el método trapezoidal compuesto, esto es,
2π 𝑁−1

∫ 𝑓(𝜃) d𝜃 ≈ [𝑓(0) + 𝑓(2π) + 2 ∑ 𝑓(𝜃𝑖 )],
0
2 𝑖=2

donde 𝜃𝑖 ∈ {0, ℎ, 2ℎ, … , 2π}. En este caso, el error cometido por el método es

2πℎ2 ″
𝑓 (𝜉), 𝜉 ∈ [0, 2π]
12
y, por tanto, tiene orden 2 [3, pág. 194].

En lo que se refiere a los datos del algoritmo, debemos aportar como datos de entrada el número de curvas
de la muestra (𝑛), el número de puntos que se toman de cada curva (𝑁), el tamaño de paso ℎ y el conjunto
de puntos escogidos. Debido al uso del método trapezoidal compuesto, es preciso poner una restricción

sobre los puntos, pues tienen que ser tomados equiespaciadamente con tamaño de paso ℎ = . De
𝑁−1
esta manera, se obtiene como dato de salida una representación de las curvas de la muestra junto con la
curva media extrínseca.
Nota 23. Se podría plantear el uso de un método de mayor orden para la aproximación integral o, incluso,
métodos que no exijan que los puntos sean equiespaciados. No obstante, se debe tener en cuenta que la
integral del paso 5 es una integral acumulativa, por lo que no debe haber condiciones sobre el número de
puntos a escoger. ◀

Así, si aplicamos el algoritmo al ejemplo 21 de las circunferencias descritas tomando 18 puntos, obtenemos
el siguiente resultado, donde la curva media extrínseca es la curva dibujada en negro.

Figura 1: Curvas de radios 1, 2 y 6 y curva media extrínseca.

Como se observa, el algoritmo genera una curva que resulta ser una circunferencia centrada en el origen y
de radio 2,26, por lo que se comete un error de 0,03.

9. Aplicación a una imagen médica


Para finalizar este artículo, aplicamos el algoritmo al problema de delimitar un tumor cerebral en una
radiografía (figura 2) tomada por Gaillard [7]. Con la ayuda de tres expertos, hemos delimitado el tumor
usando el programa GeoGebra. Las tres curvas que formaron la muestra son las que aparecen en la imagen
de la derecha de la figura 2.
28 [Link]
Rodríguez Pérez

Figura 2: Tumor neuroepitelial disembrioplástico y curvas de la muestra. Imagen original (izquierda) tomada
por Gaillard [7] con licencia c b CC BY 3.0 Internacional.

Nota 24. Existen programas más sofisticados para realizar estas delimitaciones, pero en este artículo solo
queremos mostrar el proceso. ◀

Debido a que el tumor no es convexo, no basta utilizar 18 puntos como en el ejemplo anterior. En este
caso, para poder tomar el mismo número de puntos en las tres curvas, se ha elegido un punto inicial con
un ángulo 𝜃0 y el resto de puntos se han considerado con un tamaño de paso de 0,2244, lo que genera 33
puntos. De este modo, se han obtenido los siguientes resultados:

Cuadro 1: Longitudes y centroides de las curvas.

Longitud Centroide
Curva amarilla (c1) 4,676 413 (−0,083 440, −0,021 952)
Curva roja (c2) 4,677 151 (−0,092 342, −0,021 112)
Curva azul (c3) 4,946 474 (−0,086 342, −0,032 029)
𝑓𝑚 4,602 473 (−0,087 374, −0,025 031)

En la figura 3, se representa el resultado del algoritmo en la imagen de la izquierda y, en la de la derecha,


el conjunto de curvas sobre la radiografía, con la curva media extrínseca señalada en verde.

10. Conclusiones
El análisis de formas resulta ser un área de investigación de las matemáticas que permite dar respuestas
a problemas reales de diferentes ámbitos. Por ejemplo, en el área de la oncología, podemos plantear
problemas como la evolución de un tumor o la decisión de qué zonas se deben radiar y qué zonas no.
Pero también en otros contextos, como en el ámbito de la industria textil, donde podemos plantear la
búsqueda de una talla estándar; en la agricultura, donde podemos encontrar el área óptima para aplicar
fertilizante a los cultivos; en el área de la geología, detectando la ubicación aproximada de yacimientos
de petróleo y de minerales; en el ámbito de la vulcanología, donde podemos analizar la evolución de la

TEMat, 3 (2019) e-ISSN: 2530-9633 29


Geometría diferencial en el estudio de imágenes médicas

Figura 3: Resultado del algoritmo y representación del conjunto de curvas sobre la radiografía de la figura 2.

actividad volcánica, o en el ámbito de la aeronomía, en el que podemos dar una forma plana aproximada
de posibles nubes de gases que se encuentren en la atmósfera.
En este artículo se ha introducido al lector en el fascinante mundo de las variedades de Fréchet y se ha
explicado el proceso contenido en el artículo de Gual-Arnau, Ibáñez Gual y Simó Vidal [9]. A su vez, el
algoritmo desarrollado ha resultado ser eficiente con el ejemplo matemático de las tres circunferencias
concéntricas y con el ejemplo médico del tumor neuroepitelial disembrioplástico. Aunque para establecer
la eficacia del mismo es necesario estudiar más casos y hacer un análisis de errores, podemos concluir
que en este artículo se ha cumplido el objetivo planteado al inicio del mismo.
En particular, hemos tratado el problema del cálculo de la forma media a partir de una muestra de formas.
Este problema se puede contemplar desde dos perspectivas diferentes: calcular una media intrínseca o
una media extrínseca. La primera perspectiva implica trabajar con la estructura geométrica de la variedad
riemanniana de Fréchet del espacio de curvas planas cerradas regulares. La otra opción consiste en
embeber esta variedad en un espacio euclídeo en el que podamos calcular la media y posteriormente,
encontrar la curva (media extrínseca) en  que minimiza la distancia con la media en el espacio embebido.
La media extrínseca [9] se utiliza para evaluar la variabilidad de las observaciones que se hacen de una
misma imagen. Sin embargo, sería interesante comparar ambas perspectivas (la intrínseca y la extrínseca)
para el cálculo de la media.
Asimismo, recientes investigaciones plantean nuevos retos con curvas o superficies cerradas en el espacio
o con curvas planas no cerradas, las cuales son útiles para modelar los surcos del cerebro. Por consiguiente,
podemos afirmar que la aplicación de la geometría en el espacio de las formas es un campo abierto a
múltiples investigaciones.

Referencias
[1] AZENCOTT, Robert; COLDEFY, François, y YOUNES, Laurent. «A distance for elastic matching in object
recognition.» En: Proceedings of 13th International Conference on Pattern Recognition (Vienna). IEEE.
1996, págs. 687-691. [Link]
[2] BOOKSTEIN, Fred L. The Measurement of Biological Shape and Shape Change. Vol. 24. Lecture Notes in
Biomathematics. Springer Science y Business Media, New York, 1978. [Link]
978-3-642-93093-5.
[3] BURDEN, Richard L. y FAIRES, J. Douglas. Numerical Analysis. 9.a ed. Brooks/Cole, Cengage Learning,
2011. ISBN: 978-0-538-73351-9.

30 [Link]
Rodríguez Pérez

[4] DRYDEN, Ian L. y MARDIA, Kanti V. Statistical shape analysis. Wiley Series in Probability and Statistics:
Probability and Statistics. John Wiley & Sons, Ltd., Chichester, 1998, págs. xx+347. ISBN: 978-0-471-
95816-1.
[5] FLORES COMPAÑ, María Jesús. Media muestral intrínseca en el espacio de curvas planas. Trabajo de
Fin de Máster. Universitat Jaume I, 2014. URL: [Link]
[6] FLORES COMPAÑ, María Jesús; GUAL-ARNAU, Ximo; IBAÑEZ GUAL, M. Victoria, y SIMÓ VIDAL, Ame-
lia. «Intrinsic sample mean in the space of planar shapes». En: Pattern Recognition 60 (2016),
págs. 164-176. ISSN: 0031-3203. [Link]
[7] GAILLARD, Frank. Dysembryoplastic neuroepithelial tumour, MRI FLAIR. Imagen. 2008. URL: https:
//[Link]/wiki/File:[Link].
[8] GOODALL, Colin. «Procrustes Methods in the Statistical Analysis of Shape». En: Journal of the Royal
Statistical Society: Series B (Methodological) 53.2 (1991), págs. 285-321. ISSN: 0035-9246. https :
//[Link]/10.1111/j.2517-6161.1991.tb01825.x.
[9] GUAL-ARNAU, Ximo; IBÁÑEZ GUAL, M. Victoria, y SIMÓ VIDAL, Amelia. «A new extrinsic sample mean
in the shape space with applications to the boundaries of anatomical structures». En: Biometrical
Journal 57.3 (2015), págs. 502-516. ISSN: 0323-3847. [Link]
[10] HAMILTON, Richard S. «The inverse function theorem of Nash and Moser». En: American Mathematical
Society. Bulletin. New Series 7.1 (1982), págs. 65-222. ISSN: 0273-0979. [Link]
S0273-0979-1982-15004-2.
[11] KENDALL, David G. «Shape manifolds, Procrustean metrics, and complex projective spaces». En:
The Bulletin of the London Mathematical Society 16.2 (1984), págs. 81-121. ISSN: 0024-6093. https:
//[Link]/10.1112/blms/16.2.81.
[12] KENDALL, David G.; BARDEN, Dennis.; CARNE, Thomas K., y LE, Huiling. Shape and shape theory.
Wiley Series in Probability and Statistics. John Wiley & Sons, Ltd., Chichester, 1999, págs. xii+306.
[Link]
[13] KRIEGL, Andreas y MICHOR, Peter W. The convenient setting of global analysis. Vol. 53. Mathematical
Surveys and Monographs. American Mathematical Society, Providence, RI, 1997, págs. x+618. https:
//[Link]/10.1090/surv/053.
[14] RODRÍGUEZ PÉREZ, Clara. Geometría Diferencial en el estudio de imágenes médicas. Trabajo de Fin de
Grado. Universidad de La Laguna, 2017. URL: [Link]
[15] SUNDARAMOORTHI, Ganesh; MENNUCCI, Andrea; SOATTO, Stefano, y YEZZI, Anthony. «A new geometric
metric in the space of curves, and applications to tracking deforming objects by prediction and
filtering». En: SIAM Journal on Imaging Sciences 4.1 (2011), págs. 109-145. ISSN: 1936-4954. https:
//[Link]/10.1137/090781139.
[16] YOUNES, Laurent. «Optimal matching between shapes via elastic deformations». En: Image and
Vision Computing 17.5 (1999), págs. 381-389. ISSN: 0262-8856. [Link]
8856(98)00125-5.

TEMat, 3 (2019) e-ISSN: 2530-9633 31


El teorema de Karush-Kuhn-Tucker, una
generalización del teorema de los multiplicadores de
Lagrange, y programación convexa

Fco. Javier Martínez Sánchez Resumen: El presente artículo pretende mostrar una generalización del teorema
Facultad de Ciencias, de los multiplicadores de Lagrange, que resuelve problemas de optimización con-
Universidad de Granada dicionados solo a restricciones de igualdad. El teorema de Karush-Kuhn-Tucker es
javims282@[Link] una extensión suya que resuelve problemas de optimización condicionados tanto
a restricciones de igualdad como de desigualdad. En la primera sección del pre-
sente texto, se enuncia y comenta el teorema de Lagrange y se incluye un ejemplo
de aplicación. En la segunda sección, se enuncia y se demuestra el teorema que
extiende al teorema de Lagrange, incluyendo un ejemplo ilustrativo. En la tercera
y última sección, se hace una breve introducción a la programación convexa y
cóncava y se prueba la condición suficiente en programación convexa y cóncava.

Abstract: This paper expects to show a generalization of the Lagrange multiplier


rule, which solves optimization problems with only equality constraints. The
Karush-Kuhn-Tucker theorem is an extention of this result in which inequality
constraints are also considered. In the first section of this text, we discuss the
Lagrange multiplier rule, including one example. In the second one, we prove the
Karush-Kuhn-Tucker theorem, including another example. In the third and last
one, we make a brief introduction to convex and concave programming and we
prove a sufficient condition in convex and concave programming.

Palabras clave: optimización condicionada, programación no lineal, Lagrange,


Karush-Kuhn-Tucker, programación convexa, programación cóncava.
MSC2010: 90C30.
Recibido: 28 de octubre de 2018.
Aceptado: 4 de marzo de 2019.

Agradecimientos: A ti, lector.

Referencia: MARTÍNEZ SÁNCHEZ, Fco. Javier. «El teorema de Karush-Kuhn-Tucker, una generalización del teorema
de los multiplicadores de Lagrange, y programación convexa». En: TEMat, 3 (2019), págs. 33-44. ISSN: 2530-9633.
URL: [Link]

cb Este trabajo se distribuye bajo una licencia Creative Commons Reconocimiento 4.0 Internacional
[Link]
El teorema de Karush-Kuhn-Tucker

1. Introducción
A lo largo de la historia, la optimización ha resultado fructífera a la hora de resolver numerosos problemas
de naturaleza variada tanto en matemáticas como en física o economía, entre otras. La optimización es el
campo de las matemáticas dedicado a minimizar o maximizar una determinada función, distinguiéndose
dos grandes ramas dentro de esta, a saber: optimización libre y optimización condicionada.
Hoy en día es habitual, en el curso de Cálculo, estudiar que los valores extremos de una función real y
derivable 𝑓 definida en un intervalo abierto 𝐼 ⊂ ’ se encuentran entre los puntos 𝑥 ∈ 𝐼 tales que 𝑓′ (𝑥) = 0.
Y, dado 𝑛 ∈ Ž, los valores extremos de una función real de varias variables y diferenciable definida en un
subconjunto abierto 𝛺 ⊂ ’𝑛 se encuentran entre los puntos 𝒙 ∈ 𝛺 tales que ∇𝑓(𝒙) = 𝟎.
Dados 𝑛 ∈ Ž un número natural, 𝛺 ⊂ ’𝑛 un subconjunto no vacío de ’𝑛 y 𝑓 ∶ 𝛺 → ’ una función real
definida en 𝛺, la optimización libre trata de resolver el siguiente problema:
minimizar/maximizar 𝑓(𝒙)
{
𝒙 ∈ 𝛺.

Pero ¿qué pasa cuando se buscan el mínimo y máximo de una función condicionados a ciertas restricciones
o ligaduras? La optimización condicionada se encarga de responder a esta pregunta. En los siglos XVII y XVIII,
grandes matemáticos (en especial, Lagrange) se ocuparon de obtener máximos y mínimos condicionados
de determinadas funciones. A mediados del siglo XVIII, Lagrange publicó un método para resolver tales
problemas de optimización condicionada solo a restricciones de igualdad: el método de los multiplicadores
de Lagrange.
El objetivo del presente texto es mostrar una extensión del teorema de Lagrange que sirva para resolver un
programa mixto, que es un problema de optimización condicionada donde se minimiza o maximiza una
función sujeta a ambos tipos de restricciones: de igualdad y de desigualdad.
La programación lineal versa sobre la resolución del programa mixto lineal, esto es, el problema de
optimización condicionada a restricciones mixtas (de igualdad y desigualdad)
minimizar/maximizar 𝑓(𝒙) sujeto a

(⋆) 𝑓1 (𝒙) = 0, … , 𝑓𝑘 (𝒙) = 0, 𝑓𝑘+1 (𝒙) ≤ 0, … , 𝑓𝑚 (𝒙) ≤ 0,

⎩ 𝒙 ∈ 𝛺,
donde 𝛺 ⊂ ’ , 𝑛, 𝑘, 𝑚 ∈ Ž y todas las funciones involucradas 𝑓, 𝑓1 , … , 𝑓𝑚 son funciones lineales.
𝑛

Exceptuando al matemático francés G. Monge (1746-1818), quien en 1776 se interesó por problemas de
este tipo, debemos remontarnos al año 1939 para encontrar nuevos estudios relacionados con los métodos
de la actual programación lineal, entre los que destacan los siguientes matemáticos:
Leonid V. Kantoróvich (1912-1986) publicó una extensa monografía titulada «Mathematical methods of
organizing and planning production» [4] en 1939, en la que se hace corresponder una extensa gama
de problemas con una teoría matemática concisa.
Tjalling C. Koopmans (1910-1985) formuló el problema de transporte para conseguir determinar los planes
de embarque al mínimo coste total, conociendo de antemano la disponibilidad y demanda de cada
puerto, con la ayuda de Kantarovitch. Ambos fueron galardonados con el Premio Nobel de Economía
en 1975.
George B. Dantzig (1914-2015) desarrolló un método iterativo y eficaz de resolución del programa lineal,
llamado método símplex, utilizado para resolver el problema del puente aéreo de Berlín. Dantzig
recibió el Premio de Teoría John von Neumann de la Sociedad Americana de Investigación Operativa
del año 1975.
John von Neumann (1903-1957) estableció los fundamentos matemáticos de la programación lineal en
1947, al relacionar esta con la teoría de juegos, que había publicado tres años antes, junto con Oskar
Morgenstern, en el libro Theory of Games and Economic Behavior [11].
Martínez Sánchez [9] y Dantzig [3] ofrecen una información más ampliada de lo expuesto arriba. Este
trabajo trata sobre el teorema fundamental dedicado a resolver el programa mixto general (como el
programa (⋆) pero donde las funciones involucradas no tienen por qué ser lineales).

34 [Link]
Martínez Sánchez

2. El teorema de Langrange
En esta sección, se define la noción de programa con restricciones de igualdad, se enuncia el teorema de
Lagrange (utilizado para resolver tales programas) y se muestra un ejemplo ilustrativo.
Definición 1 (programa con restricciones de igualdad). Dados 𝑛, 𝑚 ∈ Ž, 𝛺 ⊂ ’𝑛 un subconjunto abierto
y no vacío de ’𝑛 y 𝑚 + 1 funciones reales 𝑓, 𝑔1 , … , 𝑔𝑚 de clase 𝒞 1 definidas en 𝛺, un programa con
restricciones de igualdad es un problema de optimización condicionada de la forma

min/max 𝑓(𝒙) sujeto a



(PI) 𝑔1 (𝒙) = 0, … , 𝑔𝑚 (𝒙) = 0, ◀

⎩ 𝒙 ∈ 𝛺.

Lagrange publicó de manera oficial su resultado en su obra Mécanique analytique [8] de 1788 (aunque
obtuvo el resultado en agosto 1755 cuando se lo envió por carta a su amigo L. Euler). A continuación se
enuncia la versión del teorema de Lagrange del libro de Apostol [1].
Teorema 2 (Lagrange, 1788). En la situación de la definición 1, si 𝑚 < 𝑛, 𝑓 tiene un extremo condicionado
por 𝑔1 (𝒙) = 0, … , 𝑔𝑚 (𝒙) = 0 en 𝒙∗ ∈ 𝛺 y la matriz jacobiana de 𝒈 = (𝑔1 , … , 𝑔𝑚 ) en 𝒙∗ tiene rango máximo
𝑚, entonces existen 𝑚 números reales 𝜆1 , … , 𝜆𝑚 ∈ ’ tales que
𝑚
(1) ∇𝑓(𝒙∗ ) + ∑ 𝜆𝑘 ∇𝑔𝑘 (𝒙∗ ) = 𝟎.
𝑘=1

La demostración mas común de este teorema hace uso del teorema de la función implícita, hecho por
el cual se exige como hipótesis que 𝑚 < 𝑛, y puede verse en el libro de Apostol [1]. Sin embargo, esta
hipótesis quedará eliminada en la versión general del teorema (teorema de Karush-Kuhn-Tucker). En
honor a Lagrange, la ecuación (1) recibe el nombre de condición de Lagrange y los escalares 𝜆1 , … , 𝜆𝑚
se denominan multiplicadores de Lagrange. Es conveniente advertir que el recíproco del teorema de
Lagrange no es cierto: es posible que la condición de Lagrange tenga solución 𝒙∗ ∈ 𝛺 pero que 𝒙∗ no
sea ni mínimo ni máximo de 𝑓 condicionado a las restricciones de igualdad 𝑔1 (𝒙) = 0, … , 𝑔𝑚 (𝒙) = 0. Es
conocido que los multiplicadores de Lagrange tienen una interpretación económica. No es el objetivo de
este trabajo exponer esta interpretación, pero si el lector lo desea podrá encontrar información al respecto
en el libro de Sydsaeter y Hammond [14].
A continuación, se expone un ejemplo sencillo de aplicación del teorema de Lagrange.
Ejemplo 3. Optimización de la función 𝑓 ∶ ’2 → ’ dada por 𝑓(𝑥, 𝑦) = 2𝑥𝑦 para todo (𝑥, 𝑦) ∈ ’2 sujeta a
la restricción 𝑔(𝑥, 𝑦) = 𝑥2 + 𝑦2 ≤ 1.
La función 𝑓 es continua y el conjunto 𝐾 = {(𝑥, 𝑦) ∈ ’2 ∶ 𝑥2 + 𝑦2 ≤ 1} es compacto, luego el teorema
de Weierstrass garantiza la existencia de mínimo y máximo de 𝑓 en 𝐾. A la hora de resolver el problema,
se distinguen dos casos según si el punto donde 𝑓 tiene un extremo global pertenece al interior o a la
frontera de 𝐾.
Por un lado, si el punto donde 𝑓 tiene un extremo global pertenece al interior de 𝐾, entonces se aplica la
condición necesaria de existencia de extremo en puntos interiores: las derivadas parciales de 𝑓 en dicho
punto deben anularse, dando lugar a un único punto candidato a extremo:

2𝑦 = 0,
∇𝑓(𝑥, 𝑦) = 0 ⟺ { ⟺ (𝑥, 𝑦) = (0, 0).
2𝑥 = 0

Por otro lado, si el punto donde 𝑓 tiene un extremo global pertenece a la frontera de 𝐾,
“ = {(𝑥, 𝑦) ∈ ’2 ∶ 𝑥2 + 𝑦2 = 1}, entonces se aplica el método de los multiplicadores de Lagrange:

2𝑦 + 2𝜆𝑥 = 0, √2
, ∓ 22 ) ,

⎧ ⎧𝜆 = 1 ⟹ (± 2
Condición de Lagrange: 2𝑥 + 2𝜆𝑦 = 0, ⟹ 𝜆 = ±1. Solución:
⎨ 2 2
⎨𝜆 = −1 ⟹ (± √2 , ± √2 ) .
⎩𝑥 + 𝑦 = 1 ⎩ 2 2

TEMat, 3 (2019) e-ISSN: 2530-9633 35


El teorema de Karush-Kuhn-Tucker

Basta comprobar los valores que toma 𝑓 en cada uno de los puntos obtenidos,

√2 √2 √2 √2
𝑓(0, 0) = 0, 𝑓 (± ,∓ ) = −1, 𝑓 (± ,± ) = 1,
2 2 2 2

y se concluye entonces que el mínimo de 𝑓 condicionado a 𝑥2 + 𝑦2 ≤ 1 vale −1 y se alcanza en los


√2
, ∓ 22 )

puntos (± 2
y que el máximo de 𝑓 condicionado a 𝑥2 + 𝑦2 ≤ 1 vale 1 y se alcanza en los puntos
√2
, ± 22 ).

(± 2

Las aplicaciones del teorema de Lagrange son muy variadas y numerosas. En particular, resulta verdadera-
mente útil para demostrar resultados relevantes de análisis matemático como, por ejemplo, las constantes
de equivalencia óptimas entre las normas ‖ ⋅ ‖1 y ‖ ⋅ ‖∞ de ’𝑛 , la desigualdad de Cauchy-Schwarz, el hecho
de que toda matriz simétrica real es diagonalizable en ’ o la desigualdad de Hadamard, así como para
resolver problemas de carácter geométrico, entre otros. En el trabajo de fin de grado de Martínez Sán-
chez [9], el lector encontrará todo lo anterior. Además, Wu y Wu [15] realizan varias demostraciones de la
desigualdad de Cauchy-Schwarz bastante sorprendentes por su sencillez.
Al intentar resolver un problema de extremos condicionados por el método de los multiplicadores de
Lagrange, teóricamente es sencillo determinar el sistema de Lagrange asociado, pero en la práctica no
siempre existe un procedimiento simple y rápido para resolverlo de manera exacta. En esa situación, una
posibilidad es aplicar métodos numéricos con los que se obtengan buenas aproximaciones de la solución
del sistema de Lagrange. El lector puede consultar algunos de estos métodos numéricos en el libro de
Peressini, Sullivan y Uhl [12].
Ahora bien, ¿qué ocurre cuando se incluyen restricciones de desigualdad en el programa (PI)? El teorema
de Karush-Kuhn-Tucker tiene la respuesta, como se verá en la siguiente sección.

3. El teorema de Karush-Kuhn-Tucker
El teorema de Karush-Kuhn-Tucker es el primer y principal resultado de toda una teoría que se desarrolló
a su alrededor y que dio lugar posteriormente a la programación no lineal. En esta sección se enuncia y
demuestra dicho teorema, acompañado de un ejemplo ilustrativo.
Antes de enunciar y demostrar el mencionado teorema, veamos sus distintos orígenes históricos, así como
su relación con la Segunda Guerra Mundial. En lo que sigue, se hará un breve resumen del artículo de
Kjeldsen [6]. Si el lector está interesado puede consultar dicho artículo para profundizar aún más en este
tema. Básicamente, el teorema de Karush-Kuhn-Tucker tuvo dos orígenes muy distintos.
En primer lugar, hay que hablar del matemático estadounidense William Karush (1917-1997), quien cursó
los estudios de matemáticas en la Universidad de Chicago y cuyo trabajo de fin de máster tenía como título
«Minima of functions of several variables with inequalities as side conditions» (1939) [5]. La motivación de
Karush era extender un artículo publicado el año anterior por el que, en aquel momento, era el jefe del
Departamento de Matemáticas de la Universidad de Chicago, A. Bliss, y que tenía por título «Normality
and abnormality in the calculus of variations» [2]. El resultado que demostró Karush en su trabajo en
1939 pertenece indudablemente al campo de la programación no lineal, pero esta área no existía en aquel
momento.
El Departamento de Matemáticas de la Universidad de Chicago, fundado con la apertura de la misma en
1892, estaba dirigido por E. Moore junto con G. Bolza y H. Maschke, quienes condujeron al departamento a
ser uno de los mas influyentes en matemáticas en Estados Unidos, especialmente en cálculo de variaciones.
Bolza estaba profundamente interesado en esta rama de las matemáticas1 y creó un amplio y fuerte grupo
de investigación dedicado única y exclusivamente al cálculo de variaciones. Este grupo fue conocido
posteriormente como la Escuela de Chicago en cálculo de variaciones y estaba formada tanto por profesores
como por alumnos interesados.
1 Hay que mencionar que Bolza se interesó en el cálculo de variaciones tras asistir a una conferencia de K. Weierstrass en 1879.

36 [Link]
Martínez Sánchez

En 1908, Maschke falleció y, dos años después, Bolza regresó a Alemania, su país natal. Chicago perdió así
a dos líderes matemáticos, lo que se tradujo en un declive que acabó con la llegada al departamento de un
nuevo equipo liderado por A. Bliss. Entre 1927 y 1941, el nuevo departamento y, sobre todo, Bliss, que fue
alumno de Bolza, continuaron con la tradición de los anteriores líderes y, de nuevo, el departamento se
caracterizó por un intenso estudio en cálculo de variaciones que ocupó la mayor parte de la investigación
matemática en Chicago. De hecho, entre 1927 y 1937, Bliss dirigió treinta y cinco tesis doctorales, de las
cuales treinta y cuatro pertenecían al cálculo de variaciones.
Como estudiante en Chicago, Karush fue producto de esta tradición. En su trabajo, Karush demostró una
condición necesaria para la existencia de mínimo local de una función de varias variables 𝑓 = 𝑓(𝑥1 , … , 𝑥𝑛 )
sujeta a desigualdades de la forma 𝑔1 (𝑥) ≥ 0, … , 𝑔𝑚 (𝑥) ≥ 0 con 𝑛, 𝑚 ∈ Ž. Karush llevó a cabo su trabajo
en 1939 mientras que la Escuela de Chicago se centraba en problemas de cálculo de variaciones con
restricciones de desigualdad, donde se minimizaban funcionales de la forma
𝑏
ℱ[𝜑] = ∫ 𝐹(𝑥, 𝜑(𝑥), 𝜑′ (𝑥)) d𝑥
𝑎
1
en el conjunto 𝐷 = {𝜑 ∈ 𝒞 (𝑎, 𝑏) ∶ 𝜑(𝑎) = 𝐴, 𝜑(𝑏) = 𝐵} para 𝐴, 𝐵 ∈ ’ fijos, 𝑎 < 𝑏 y 𝐹 una función conocida.
Así pues, el trabajo de Karush fue concebido como una versión finitodimensional de los problemas que se
atacaban en el cálculo de variaciones y, por lo tanto, en el ambiente de la Escuela de Chicago, carecía de
interés y pasó desapercibido. Nadie lo animó a publicarlo y quedó en el olvido durante muchos años.
En segundo lugar, encontramos a los matemáticos Albert W. Tucker (Canadá, 1905-1995) y Harold W. Kuhn
(California, 1925-2014), que eran, respectivamente, profesor y alumno en la Universidad de Princeton.
Kuhn y Tucker dieron una conferencia en verano de 1950 en Berkeley (Simposio de Berkeley), California,
donde enunciaron y demostraron su descubrimiento (lo que hoy en día conocemos por teorema de
Karush-Kuhn-Tucker).
En esta conferencia aparece por primera vez en la historia el nombre programación no lineal. El objetivo
de Kuhn y Tucker era generalizar la programación lineal, que ya había surgido años antes de la mano de
Dantzig. A diferencia de Karush, Kuhn y Tucker no tuvieron ningún inconveniente, adquirieron fama casi
instantánea en el mundo de las matemáticas y la gente empezó a referirse al resultado como el teorema
de Kuhn-Tucker a secas.
Lo que Kuhn y Tucker no sabían es que su resultado no era para nada novedoso. Karush, once años antes,
obtuvo prácticamente lo mismo, solo que él utilizaba otras herramientas y notación en la demostración.
En 1975, cuando Kuhn y Tucker se enteraron de que el teorema ya había sido probado por Karush en 1939,
le escribieron inmediatamente por carta para reconocer su trabajo y prioridad en este asunto.
Se trata, pues, de un descubrimiento múltiple y hoy en día la comunidad matemática se refiere al resultado
como teorema de Karush-Kuhn-Tucker, apareciendo el apellido Karush en primer lugar ya que este lo
demostró once años antes que Kuhn y Tucker; pero, ¿por qué el resultado de Karush pasó desapercibido y
tan solo once años después el mismo resultado tuvo tanta fama y reconocimiento? Pues bien, la respuesta
a esta pregunta, según la profesora e historiadora de matemáticas T. H. Kjeldsen, está en el contexto
histórico y social en el que nació el teorema. El fin de la Segunda Guerra Mundial supuso también la
igualdad entre matemática pura y matemática aplicada. Antes de la guerra, la matemática pura era la
que gobernaba y dominaba el mundo de las matemáticas pero, durante la guerra, muchos matemáticos
dedicados hasta entonces a la investigación en matemática aplicada fueron contratados por diversas
organizaciones involucradas en la guerra, como, por ejemplo, el Ejército, para que diseñaran métodos
de planificación de programas, una herramienta de las Fuerzas Armadas para llevar a cabo enormes
planteamientos logísticos.
Es más, el propio G. Dantzig, contratado por las Fuerzas Armadas en 1941, fue el principal responsable
de lo que hoy en día se conoce como programación lineal (que nació durante la guerra bajo el nombre
de programación en estructura lineal) y del famoso y sencillo método que resuelve un programa lineal, a
saber, el método símplex (ideado por el propio Dantzig). Más información sobre este método puede verse
en el artículo de Peressini, Sullivan y Uhl [12] si el lector está interesado.
Tras la guerra, Dantzig utilizó sus estudios acerca de la programación lineal para resolver el problema del
puente aéreo de Berlín: a mediados de 1948, en plena Guerra Fría, la URSS bloqueó las comunicaciones

TEMat, 3 (2019) e-ISSN: 2530-9633 37


El teorema de Karush-Kuhn-Tucker

terrestres entre las zonas occidentales alemanas ocupadas por los Aliados y la ciudad de Berlín, y Dantzig,
utilizando la programación lineal, diseñó un plan de abastecimiento aéreo minimizando los costes que, en
pocos meses, consiguió igualar a los suministros realizados por carretera y ferrocarril antes del bloqueo.
Los países se percataron de que para conseguir ser una potencia mundial debían ser fuertes no solo en el
ejército, sino también en ciencia e investigación, y fue ahí donde aumentó la importancia de la matemática
aplicada y, en especial, de la programación lineal. Tiene sentido, entonces, que, en ese ambiente, la
conferencia sobre programación no lineal de Kuhn y Tucker en 1950 fuera acogida de manera excelente y
que, sin embargo, al trabajo de Karush (anterior a la Segunda Guerra Mundial) no se le diera la importancia
correspondiente. Kjeldsen [6] y Kuhn [7] ofrecen información sobre todo esto y más. Además, Prékopa [13]
permite al lector encontrar la relación de estos problemas de optimización con principios de la física, así
como la demostración del lema de Farkas, una de las principales herramientas que permitió a Karush
demostrar su resultado.
Volviendo ya al contenido matemático, se definen a continuación lo que se entiende por un programa
mixto, un punto factible y un punto regular, con lo que estaremos en disposición de enunciar y demostrar
el teorema de Karush-Kuhn-Tucker.
Definición 4 (programa mixto). Dados 𝑛, 𝑝, 𝑞 ∈ Ž, 𝛺 un subconjunto abierto y no vacío de ’𝑛 y 1 + 𝑝 + 𝑞
funciones reales 𝑓, 𝑔1 , … , 𝑔𝑝 , ℎ1 , … , ℎ𝑞 de clase 𝒞 1 definidas en 𝛺, un programa mixto es un problema de
optimización condicionada de la siguiente forma:
minimizar 𝑓(𝒙) sujeto a maximizar 𝑓(𝒙) sujeto a
⎧ ⎧
⎪ 𝑔1 (𝒙) = 0, … , 𝑔𝑝 (𝒙) = 0, ⎪ 𝑔1 (𝒙) = 0, … , 𝑔𝑝 (𝒙) = 0,
(PM− ) (PM+ )
⎨ ℎ1 (𝒙) ≤ 0, … , ℎ𝑞 (𝒙) ≤ 0, ⎨ ℎ1 (𝒙) ≤ 0, … , ℎ𝑞 (𝒙) ≤ 0,
⎪ ⎪
⎩ 𝒙 ∈ 𝛺; ⎩ 𝒙 ∈ 𝛺.
En lo que sigue, escribiremos (PM) para referirnos indistintamente a (PM− ) o (PM+ ). ◀

La función 𝑓 se denomina función objetivo del problema (PM) y las igualdades {𝑔𝑖 (𝒙) = 0 ∶ 𝑖 = 1, … , 𝑝}
y desigualdades {ℎ𝑗 (𝒙) ≤ 0 ∶ 𝑗 = 1, … , 𝑞} se denominan restricciones de igualdad y desigualdad de (PM),
respectivamente.
Definición 5 (punto factible). Un punto factible para el problema (PM) es un punto 𝒙∗ ∈ 𝛺 tal que
𝑔𝑖 (𝒙∗ ) = 0 y ℎ𝑗 (𝒙∗ ) ≤ 0 para todo 𝑖 = 1, … , 𝑝 y 𝑗 = 1, … , 𝑞. ◀

Definición 6 (punto regular). Un punto regular para el problema (PM) es un punto factible 𝒙∗ ∈ 𝛺 de
(PM) tal que el conjunto de vectores siguiente es linealmente independiente:

{∇𝑔𝑖 (𝒙∗ ), ∇ℎ𝑗 (𝒙∗ ) ∈ ’𝑛 ∶ 𝑖 ∈ {1, … , 𝑝}, 𝑗 ∈ 𝐽(𝒙∗ )},

donde 𝐽(𝒙∗ ) = {𝑘 ∈ {1, … , 𝑞} ∶ ℎ𝑘 (𝒙∗ ) = 0}. ◀

Nota 7. Nótese que, bajo las hipótesis del teorema de Lagrange, el punto 𝒙 es regular. ∗

La siguiente versión del teorema de Karush-Kuhn-Tucker y la demostración aquí expuestas no son más
que una traducción del artículo de McShane [10].
Teorema 8 (Karush-Kuhn-Tucker, 1939 y 1950). En la situación de la definición 4, si 𝑓 tiene un mínimo
(resp. máximo) condicionado por 𝑔𝑖 (𝒙) = 0 para 𝑖 = 1, … , 𝑝 y por ℎ𝑗 (𝒙) ≤ 0 para 𝑗 = 1, … , 𝑞, entonces
existen números reales 𝜆0 , 𝜆1 , … , 𝜆𝑝 , 𝜇1 , … , 𝜇𝑞 ∈ ’, no todos nulos, tales que
𝑝 𝑞
(2) 𝜆0 ∇𝑓(𝒙) + ∑ 𝜆𝑖 ∇𝑔𝑖 (𝒙) + ∑ 𝜇𝑗 ∇ℎ𝑗 (𝒙) = 𝟎.
𝑖=1 𝑗=1

Además,
(I) 𝜆0 ≥ 0 y 𝜇𝑗 ≥ 0 (resp. 𝜇𝑗 ≤ 0) para todo 𝑗 = 1, … , 𝑞.
(II) 𝜇𝑗 ℎ𝑗 (𝒙∗ ) = 0 para 𝑗 = 1, … , 𝑞.
(III) Si 𝒙∗ es un punto regular, entonces se puede tomar 𝜆0 = 1.

38 [Link]
Martínez Sánchez

Demostración. A continuación, se demuestra el teorema para el caso de mínimo condicionado. El caso de


máximo condicionado se deduce de inmediato de este ya que basta aplicarlo a la función −𝑓.
Sin pérdida de generalidad asumimos que 𝒙∗ = 𝟎, 𝑓(𝒙∗ ) = 0 (esto siempre es posible tras considerar
una traslación adecuada) y que, para algún 𝑧 ∈ Ž con 0 ≤ 𝑧 ≤ 𝑞, se tiene ℎ1 (𝒙∗ ) = 0, … , ℎ𝑧 (𝒙∗ ) = 0 y
ℎ𝑧+1 (𝒙∗ ) < 0, … , ℎ𝑞 (𝒙∗ ) < 0 (basta ordenar las funciones ℎ1 , … , ℎ𝑞 de forma que las 𝑧 primeras se anulen
en 𝒙∗ y las restantes sean menores que cero en 𝒙∗ ). Nótese que el caso 𝑧 = 0 corresponde a que en todas
las desigualdades se dé la desigualdad estricta, ℎ𝑗 (𝒙∗ ) < 0 para todo 𝑗 = 1, … , 𝑞, mientras que el caso 𝑧 = 𝑞
corresponde a que en todas se dé la igualdad, ℎ𝑗 (𝒙∗ ) = 0 para todo 𝑗 = 1, … , 𝑞.
Por ser 𝒙∗ = 𝟎 un punto interior de 𝛺, existe 𝜀 > 0 tal que la bola abierta 𝐵(𝟎, 𝜀) de centro el origen y
radio 𝜀 está contenida en 𝛺, y es inmediato que la bola cerrada 𝐵(𝟎, 𝜀1 ) de centro el origen y radio 𝜀1 = 𝜀/2
está contenida en 𝛺. Por el teorema de conservación del signo, existe 𝜀2 > 0 tal que las restricciones ℎ𝑗
con 𝑗 = 𝑧 + 1, … , 𝑞 son negativas en 𝐵(𝟎, 𝜀2 ). Sea 𝜀0 = mín{𝜀1 , 𝜀2 }; entonces, la bola cerrada 𝐵(𝟎, 𝜀0 ) está
contenida en 𝛺 y las restricciones ℎ𝑗 para 𝑗 = 𝑧 + 1, … , 𝑞 son negativas en 𝐵(𝟎, 𝜀0 ).
Lema 9. Para cada 𝜀 > 0 con 𝜀 ≤ 𝜀0 existe 𝑁 ∈ Ž tal que
𝑝 𝑧
(3) 𝑓(𝒙) + ‖𝒙‖2 + 𝑁 ( ∑ 𝑔𝑖 (𝒙)2 + ∑ ℎ𝑗+ (𝒙)2 ) > 0 ∀ 𝒙 ∈ “(𝜀),
𝑖=1 𝑗=1

donde ℎ𝑗+ (𝒙) = máx {ℎ𝑗 (𝒙), 0} para cada 𝑗 = 1, … , 𝑧 y “(𝜀) = {𝒙 ∈ ’𝑛 ∶ ‖𝒙‖ = 𝜀}.
Demostración. Razonemos por reducción al absurdo y supongamos que el enunciado es falso:
Existe 𝜀 ̃ ∈ (0, 𝜀0 ] de forma que a cada 𝑁 ∈ Ž le corresponde un punto 𝒙𝑁 ∈ “(𝜀)̃ con
𝑝 𝑧
𝑓(𝒙𝑁 ) + ‖𝒙𝑁 ‖2 + 𝑁 (∑𝑖=1 𝑔𝑖 (𝒙𝑁 )2 + ∑𝑗=1 ℎ𝑗+ (𝒙𝑁 )2 ) ≤ 0.
Tomamos una sucesión de números naturales {𝑁𝑚 }𝑚∈Ž creciente y tendiendo a infinito y la sucesión de
los correspondientes puntos {𝒙𝑚 }𝑚∈Ž en “(𝜀)̃ de manera que
𝑝 𝑧
(4) 𝑓(𝒙𝑚 ) + ‖𝒙𝑚 ‖2 + 𝑁𝑚 ( ∑ 𝑔𝑖 (𝒙𝑚 )2 + ∑ ℎ𝑗+ (𝒙𝑚 )2 ) ≤ 0 ∀ 𝑚 ∈ Ž.
𝑖=1 𝑗=1

Como {𝒙𝑚 }𝑚∈Ž es una sucesión acotada de vectores de ’𝑛 , el teorema de Bolzano-Weierstrass garantiza la
existencia de una sucesión parcial de {𝒙𝑚 }𝑚∈Ž convergente a un punto 𝒙0 ∈ ’𝑛 . Supongamos, sin pérdida
de generalidad, que dicha sucesión parcial es desde un principio la sucesión original {𝒙𝑚 }𝑚∈Ž y, en virtud
de la continuidad de la función objetivo 𝑓 y de la función norma en ’𝑛 , se tiene que

lím 𝑓(𝒙𝑚 ) = 𝑓(𝒙0 ) y

‖𝒙0 ‖ = ‖ lím 𝒙𝑚 ‖ = lím ‖𝒙𝑚 ‖ = lím 𝜀 ̃ = 𝜀.̃


Dividiendo ahora ambos miembros de la desigualdad (4) por 𝑁𝑚 obtenemos que
𝑝 𝑧
𝑓(𝒙𝑚 ) ‖𝒙𝑚 ‖2
+ + ( ∑ 𝑔𝑖 (𝒙𝑚 )2 + ∑ ℎ𝑗+ (𝒙𝑚 )2 ) ≤ 0 ∀ 𝑚 ∈ Ž.
𝑁𝑚 𝑁𝑚 𝑖=1 𝑗=1

Tomando límite cuando 𝑚 tiende a infinito en la expresión anterior y usando que lím 𝑁𝑚 = ∞, lím 𝑓(𝒙𝑚 ) =
𝑓(𝒙 ) ‖𝒙 ‖2
𝑓(𝒙0 ) y lím ‖𝒙𝑚 ‖2 = 𝜀2̃ , lo que implica que lím 𝑁 𝑚 = lím 𝑁𝑚 = 0, se sigue que
𝑚 𝑚

𝑝 𝑧
∑ 𝑔𝑖 (𝒙0 )2 + ∑ ℎ𝑗+ (𝒙0 )2 ≤ 0,
𝑖=1 𝑗=1

de donde se deduce que 𝒙0 satisface que 𝑔𝑖 (𝒙0 ) = 0 para 𝑖 = 1, … , 𝑝 y ℎ𝑗+ (𝒙0 ) = 0 para 𝑗 = 1, … , 𝑧. Así que
lím 𝑓(𝒙𝑚 ) = 𝑓(𝒙0 ) ≥ 𝑓(𝒙∗ = 𝟎) = 0, pero por (4) se desprende que 𝑓(𝒙𝑚 ) ≤ −𝜀2̃ < 0 para todo 𝑚 ∈ Ž,
luego lím 𝑓(𝒙𝑚 ) = 𝑓(𝒙0 ) < 0 y se llega a una contradicción. ▪

TEMat, 3 (2019) e-ISSN: 2530-9633 39


El teorema de Karush-Kuhn-Tucker

Lema 10. Para cada 𝜀 > 0 con 𝜀 ≤ 𝜀0 existen un punto 𝒙 = (𝑥1 , … , 𝑥𝑛 ) ∈ ’𝑛 y un vector unitario
(𝜆0 , 𝜆1 , … , 𝜆𝑝 , 𝜇1 , … , 𝜇𝑧 ) con componentes 𝜆0 , 𝜇1 , … , 𝜇𝑧 no negativas tales que ‖𝒙‖ < 𝜀 y
𝑝 𝑧
(5) 𝜆0 [𝐷𝑘 𝑓(𝒙) + 2𝑥𝑘 ] + ∑ 𝜆𝑖 𝐷𝑘 𝑔𝑖 (𝒙) + ∑ 𝜇𝑗 𝐷𝑘 ℎ𝑗 (𝒙) = 0 ∀ 𝑘 = 1, … , 𝑛.
𝑖=1 𝑗=1

Demostración. Sea 𝜀 ̃ ∈ (0, 𝜀0 ] fijo pero arbitrario y 𝑁 ∈ Ž el número natural dado por el lema 9. Considérese
la función 𝐹 ∶ 𝐵(𝟎, 𝜖)̃ ⊂ 𝛺 → ’ definida por
𝑝 𝑧
𝐹(𝒙) = 𝑓(𝒙) + ‖𝒙‖2 + 𝑁 ( ∑ 𝑔𝑖 (𝒙)2 + ∑ ℎ𝑗+ (𝒙)2 ) ∀ 𝒙 ∈ 𝐵(𝟎, 𝜀).
̃
𝑖=1 𝑗=1

Como 𝐹 es continua y 𝐵(𝟎, 𝜀)̃ , compacto, el teorema de Weierstrass asegura la existencia de un punto
𝒙 ∈ 𝐵(𝟎, 𝜀)̃ donde 𝐹 alcanza su mínimo global; en particular, 𝐹(𝒙) ≤ 𝐹(𝒙∗ = 𝟎) = 0, y el lema 9 afirma que
‖𝒙‖ < 𝜀 ̃ (𝒙 es un punto interior de 𝐵(𝟎, 𝜀)̃ ). Así, todas las derivadas parciales de primer orden de 𝐹 deben
anularse en 𝒙:
𝑝 𝑧
(6) 𝐷𝑘 𝑓(𝒙) + 2𝑥𝑘 + 2𝑁 ( ∑ 𝑔𝑖 (𝒙)𝐷𝑘 𝑔𝑖 (𝒙) + ∑ ℎ𝑗+ (𝒙)𝐷𝑘 ℎ𝑗 (𝒙)) = 0 ∀ 𝑘 = 1, … , 𝑛,
𝑖=1 𝑗=1

donde se ha usado que la función (ℎ𝑗+ )2 (𝑗 = 1, … , 𝑧) es diferenciable en 𝐵(𝟎, 𝜀)̃ con

𝐷𝑘 (ℎ𝑗+ )2 (𝒙) = 2ℎ𝑗+ (𝒙)𝐷𝑘 ℎ𝑗 (𝒙) ∀ 𝒙 ∈ 𝐵(𝟎, 𝜖)̃

para cualquier 𝑘 = 1, … , 𝑛, lo cual se demuestra en el libro de Peressini, Sullivan y Uhl [12, capítulo 6]
teniendo en cuenta que
ℎ𝑗 (𝒙) + |ℎ𝑗 (𝒙)|
ℎ𝑗+ (𝒙) = ∀ 𝒙 ∈ 𝐵(𝟎, 𝜖).
̃
2
𝑝 𝑧 1/2
Tomando 𝜏 = [1 + 4𝑁 2 (∑𝑖=1 𝑔𝑖 (𝒙)2 + ∑𝑗=1 ℎ𝑗+ (𝒙)2 )] > 0 y definiendo

ℎ𝑗+ (𝒙)
1 𝑔 (𝒙)
𝜆0 = , 𝜆𝑖 = 2𝑁 𝑖 (𝑖 = 1, … , 𝑝), 𝜇𝑗 = {2𝑁 𝜏
𝑗 = 1, … , 𝑧;
𝜏 𝜏
0 𝑗 = 𝑧 + 1, … , 𝑞,

es fácil comprobar que el vector (𝜆0 , 𝜆1 , … , 𝜆𝑝 , 𝜇1 , … , 𝜇𝑧 ) es unitario, 𝜆0 y 𝜇𝑗 (𝑗 = 1, … , 𝑧) son no negativos y


dividiendo ambos miembros de la condición (6) por 𝜏 se consigue la igualdad (5). ▪

Finalmente, tomamos una sucesión decreciente de números reales y positivos {𝛿𝑚 }𝑚∈Ž tendiendo a
cero con 𝛿1 < 𝜀0 . Para cada 𝑚 ∈ Ž, elegimos un punto 𝒙𝑚 ∈ ’𝑛 con ‖𝒙𝑚 ‖ < 𝛿𝑚 y un vector unitario
(𝜆0,𝑚 , 𝜆1,𝑚 , … , 𝜆𝑝,𝑚 , 𝜇1,𝑚 , … , 𝜇𝑧,𝑚 , 0, … , 0) con componentes 𝜆0,𝑚 y 𝜇𝑗,𝑚 (𝑗 = 1, … , 𝑧) no negativas tales que
se cumple la igualdad (5) (esto es posible por el lema 10). De nuevo, por el teorema de Bolzano-Weierstrass,
existe una sucesión parcial para la cual los vectores unitarios convergen a un límite (𝜆0 , 𝜆1 , … , 𝜆𝑝 , 𝜇1 , … , 𝜇𝑞 ).
Como {𝒙𝑚 }𝑚∈Ž → 𝒙∗ = 𝟎, la ecuación (5) se cumple para este vector límite y esto demuestra el teorema
salvo el apartado (III), que se comenta a continuación: si 𝒙∗ es un punto regular, no puede ser que 𝜆0 = 0,
pues entonces la condición (2) contradice la independencia lineal de los vectores ∇𝑔1 (𝒙0 ), … , ∇𝑔𝑝 (𝒙∗ ),
∇ℎ1 (𝒙∗ ), … , ∇ℎ𝑧 (𝒙∗ ), y esto concluye la demostración del teorema. ▪

Esta demostración se le debe a Edward J. McShane (1904-1989) y fue publicada en un artículo para
The American Mathematical Monthly en el año 1973 [10], y es realmente asombrosa: únicamente aplica
teoremas elementales del análisis matemático como son el teorema de Weierstrass, el teorema de Bolzano-
Weierstrass y la condición necesaria de existencia de extremo en un punto interior.
Nótese que si 𝑞 = 0 y 𝑝 > 0, entonces el problema (PM) incluye solo restricciones de igualdad y el clásico
método de los multiplicadores de Lagrange aporta una condición necesaria de existencia de solución del
programa, y el caso extremo 𝑝 = 𝑞 = 0 da lugar a un problema de optimización libre.

40 [Link]
Martínez Sánchez

En honor a Karush, Kuhn y Tucker, la ecuación (2) junto con los apartados (I) y (II) del teorema 8 reciben
el nombre de condiciones de Karush-Kuhn-Tucker, los escalares 𝜆1 , … , 𝜆𝑝 (asociados a las restricciones
de igualdad) se denominan multiplicadores de Lagrange y los escalares 𝜇1 , … , 𝜇𝑞 (asociados a las restric-
ciones de desigualdad) se denominan multiplicadores de Karush-Kuhn-Tucker. Al igual que el teorema
de Lagrange, es conveniente advertir que el teorema de Karush-Kuhn-Tucker solo aporta una condición
necesaria, y no suficiente, de existencia de solución del programa (PM).
Obsérvese que no se impone ninguna hipótesis sobre el número de variables 𝑛 y el número de restricciones
𝑝 y 𝑞, a diferencia del teorema de Lagrange, donde se exigía que el número de restricciones de igualdad 𝑚
fuese menor que el número de variables 𝑛. En el caso 𝑞 = 0 (solamente restricciones de igualdad están
presentes), las condiciones (I) y (II) del ecuación (2) carecen de sentido.
En la práctica, si se sabe de antemano que existe un punto 𝒙∗ ∈ 𝛺 que es solución de (PM), entonces 𝒙∗
cumple las siguientes condiciones:
𝑝 𝑞
Condición estacionaria: 𝜆0 ∇𝑓(𝒙) + ∑𝑖=1 𝜆𝑖 ∇𝑔𝑖 (𝒙) + ∑𝑗=1 𝜇𝑗 ∇ℎ𝑗 (𝒙) = 𝟎.
Condición de factibilidad: 𝑔𝑖 (𝒙∗ ) = 0 para 𝑖 = 1, … , 𝑝 y ℎ𝑗 (𝒙∗ ) ≤ 0 para 𝑗 = 1, … , 𝑞.
Condición de holgura: 𝜇𝑗 ℎ𝑗 (𝒙∗ ) = 0 para 𝑗 = 1, … , 𝑞.
Condición de signo: 𝜆0 ≥ 0 y 𝜇𝑗 ≥ 0 para todo 𝑗 = 1, … , 𝑞 (para mínimo condicionado) o 𝜇𝑗 ≤ 0 para todo
𝑗 = 1, … , 𝑞 (para máximo condicionado).
A continuación, se expone un primer ejemplo sencillo de aplicación del teorema de Karush-Kuhn-Tucker.
Ejemplo 11. Resolver el siguiente problema de optimización:
optimizar 𝑓(𝑥, 𝑦, 𝑧) = 𝑥 + 𝑦 + 𝑧 sujeto a

ℎ1 (𝑥, 𝑦, 𝑧) = (𝑦 − 1)2 + 𝑧2 ≤ 1,

⎩ ℎ2 (𝑥, 𝑦, 𝑧) = 𝑥2 + (𝑦 − 1)2 + 𝑧2 ≤ 3.

Por el teorema de Weierstrass, existe solución (máximo y mínimo) del programa considerado y las condi-
ciones de Karush-Kuhn-Tucker son las siguientes:
Condición estacionaria: Condición de factibilidad:

1 + 2𝜇2 𝑥 = 0, (𝑦 − 1)2 + 𝑧2 ≤ 1,
⎧ {
1 + 2𝜇1 (𝑦 − 1) + 2𝜇2 (𝑦 − 1) = 0, 𝑥2 + (𝑦 − 1)2 + 𝑧2 ≤ 3.

⎩1 + 2𝜇1 𝑧 + 2𝜇2 𝑧 = 0.
Condición de holgura: Condición de signo:

𝜇1 [(𝑦 − 1)2 + 𝑧2 − 1] = 0, 𝜇1 , 𝜇2 ≥ 0 ⟶ mínimo local,


{ {
𝜇2 [𝑥2 + (𝑦 − 1)2 + 𝑧2 − 3] = 0. 𝜇1 , 𝜇2 ≤ 0 ⟶ máximo local.
A partir de la condición de holgura se distinguen cuatro casos:

𝜇 = 0, (caso I)
⎧𝜇1 = 0 ⟹ { 22
⎪ 𝑥 + (𝑦 − 1)2 + 𝑧2 − 3 = 0; (caso II)
⎨ 𝜇 = 0, (caso III)
⎪(𝑦 − 1)2 + 𝑧2 − 1 = 0 ⟹ { 22
⎩ 𝑥 + (𝑦 − 1)2 + 𝑧2 − 3 = 0, (caso IV)
pero la primera ecuación de la condición estacionaria obliga a que 𝜇2 ≠ 0, así que los solo se deben
comprobar los casos II y IV.
Caso II: para el caso II, un sencillo cálculo más o menos breve proporciona los siguientes dos puntos de
Karush-Kuhn-Tucker con sus correspondientes multiplicadores:
1
𝑃1 = (1, 2, 1), 𝝁 = (0, − ) ,
2
1
𝑃2 = (−1, 0, −1), 𝝁 = (0, ).
2

TEMat, 3 (2019) e-ISSN: 2530-9633 41


El teorema de Karush-Kuhn-Tucker

Caso IV: para el caso IV, un sencillo cálculo más o menos breve proporciona los siguientes cuatro puntos
de Karush-Kuhn-Tucker con sus correspondientes multiplicadores:

1 1 1 1
𝑃3 = ( √2, 1 + , ), 𝝁 = (− ,− ),
√2 √2 2√2 2√2
1 1 3 1
𝑃4 = ( √2, 1 − ,− ), 𝝁=( ,− ),
√2 √2 2√2 2√2
1 1 3 1
𝑃5 = (−√2, 1 + , ), 𝝁 = (− , ),
√2 √2 2√2 2√2
1 1 1 1
𝑃6 = (−√2, 1 − ,− ), 𝝁=( , ).
√2 √2 2√2 2√2
Finalmente, se aplican las dos condiciones aún no usadas (factibilidad y signo) y se resumen los resultados
obtenidos en el cuadro 1. ◀

Cuadro 1: Resumen de los resultados del ejemplo 11.

𝑃 𝝁 Factibilidad Signo Conclusión

𝑃1 (0, − 12 ) NO - -

𝑃2 (0, 12 ) NO - -

1 1
𝑃3 (− ,− ) SÍ Negativo Máximo condicionado
2√ 2 2√ 2

3 1
𝑃4 ( ,− ) SÍ NO -
2√2 2√2

3 1
𝑃5 (− , ) SÍ NO -
2√2 2√2

1 1
𝑃6 ( , ) SÍ Positivo Mínimo condicionado
2√ 2 2√ 2

4. Programación convexa y cóncava


En esta última sección se expone lo que se entiende por programa convexo y cóncavo y se prueba que la
condición necesaria de existencia de solución para programas mixtos que aporta el teorema de Karush-
Kuhn-Tucker es también condición suficiente bajo hipótesis de convexidad o concavidad. Antes de ello,
recordemos el siguiente resultado que caracteriza a las funciones diferenciables que son convexas o
cóncavas.
Proposición 12 (caracterización de funciones convexas y cóncavas). Sean 𝑛 ∈ Ž, 𝛺 ⊂ ’𝑛 un subconjunto
abierto, convexo y no vacío de ’𝑛 y 𝑓 ∶ 𝛺 → ’ una función real y diferenciable en 𝛺. Entonces,
• 𝑓 es convexa si y solo si 𝑓(𝒙) + ⟨∇𝑓(𝒙), 𝒚 − 𝒙⟩ ≤ 𝑓(𝒚) para todo 𝒙, 𝒚 ∈ 𝛺.
• 𝑓 es estrictamente convexa si y solo si 𝑓(𝒙) + ⟨∇𝑓(𝒙), 𝒚 − 𝒙⟩ < 𝑓(𝒚) para todo 𝒙, 𝒚 ∈ 𝛺 con 𝒙 ≠ 𝒚.
• 𝑓 es cóncava si y solo si 𝑓(𝒙) + ⟨∇𝑓(𝒙), 𝒚 − 𝒙⟩ ≥ 𝑓(𝒚) para todo 𝒙, 𝒚 ∈ 𝛺.
• 𝑓 es estrictamente cóncava si y solo si 𝑓(𝒙) + ⟨∇𝑓(𝒙), 𝒚 − 𝒙⟩ > 𝑓(𝒚) para todo 𝒙, 𝒚 ∈ 𝛺 con 𝒙 ≠ 𝒚.

42 [Link]
Martínez Sánchez

Definición 13 (programa convexo). Dados 𝑛, 𝑚 ∈ Ž, 𝛺 ⊂ ’𝑛 un subconjunto abierto, convexo y no


vacío de ’𝑛 y 𝑓, ℎ1 , … , ℎ𝑚 funciones reales, diferenciables y convexas en 𝛺, un programa convexo es un
problema de minimización condicionada de la siguiente forma:

minimizar 𝑓(𝒙) sujeto a



(PC )

ℎ1 (𝒙) ≤ 0, … , ℎ𝑚 (𝒙) ≤ 0, ◀

⎩ 𝒙 ∈ 𝛺.

Definición 14 (programa cóncavo). Dados 𝑛, 𝑚 ∈ Ž, 𝛺 ⊂ ’𝑛 un subconjunto abierto, convexo y no


vacío de ’𝑛 y 𝑓, ℎ1 , … , ℎ𝑚 funciones reales, diferenciables y cóncavas en 𝛺, un programa cóncavo es un
problema de maximización condicionada de la siguiente forma:

maximizar 𝑓(𝒙) sujeto a



(PC )
+
ℎ1 (𝒙) ≤ 0, … , ℎ𝑚 (𝒙) ≤ 0, ◀

⎩ 𝒙 ∈ 𝛺.

Teorema 15 (condición suficiente para programas convexos). Si 𝒙∗ ∈ 𝛺 es un punto factible y regular


para el programa convexo y cumple las condiciones de Karush-Kuhn-Tucker, entonces 𝒙∗ es solución del
programa convexo, esto es, 𝒙∗ es un mínimo global de 𝑓 condicionado a ℎ𝑘 (𝒙) ≤ 0 para 𝑘 = 1, … , 𝑚.
Demostración. Como 𝒙∗ es un punto regular por hipótesis, se puede tomar 𝜆0 = 1. Por hipótesis, existen
𝑚
escalares 𝜇1 , … , 𝜇𝑚 ∈ ’+ 0 no todos nulos tales que ∇𝑓(𝒙 ) + ∑𝑘=1 𝜇𝑘 ∇ℎ𝑘 (𝒙 ) = 0. Como 𝜇𝑘 ≥ 0 para
∗ ∗

cada 𝑘 = 1, … , 𝑚 y ℎ𝑘 (𝒙) ≤ 0 para cada 𝒙 ∈ 𝛺 y 𝑘 = 1, … , 𝑚, se tiene que 𝜇𝑘 ℎ𝑘 (𝒙) ≤ 0 para cada 𝒙 ∈ 𝛺 y


𝑘 = 1, … , 𝑚, y esto, junto con la proposición 12, permite escribir lo siguiente para cualquier punto factible
𝒙 ∈ 𝛺:
𝑚
𝑓(𝒙) ≥ 𝑓(𝒙) + ∑ 𝜇𝑘 ℎ𝑘 (𝒙)
𝑘=1
𝑚
≥ (𝑓(𝒙∗ ) + ⟨∇𝑓(𝒙∗ ), 𝒙 − 𝒙∗ ⟩) + ∑ 𝜇𝑘 (ℎ𝑘 (𝒙∗ ) + ⟨∇ℎ𝑘 (𝒙∗ ), 𝒙 − 𝒙∗ ⟩)
𝑘=1
𝑚 𝑚
= 𝑓(𝒙∗ ) + ⟨∇𝑓(𝒙∗ ), 𝒙 − 𝒙∗ ⟩ + ∑ ⏟⎵⏟⎵⏟
𝜇𝑘 ℎ𝑘 (𝒙∗ ) +⟨ ∑ 𝜇𝑘 ∇ℎ𝑘 (𝒙∗ ), 𝒙 − 𝒙∗ ⟩
𝑘=1 0 𝑘=1
𝑚
= 𝑓(𝒙∗ ) + ⟨∇𝑓(𝒙∗ ), 𝒙 − 𝒙∗ ⟩ + ⟨ ∑ 𝜇𝑘 ∇ℎ𝑘 (𝒙∗ ), 𝒙 − 𝒙∗ ⟩
𝑘=1
𝑚
= 𝑓(𝒙∗ ) + ⟨∇𝑓(𝒙∗ ) + ∑ 𝜇𝑘 ∇ℎ𝑘 (𝒙∗ ), 𝒙 − 𝒙∗ ⟩ = 𝑓(𝒙∗ ),
⏟⎵⎵⎵⎵⎵⎵⏟⎵⎵⎵⎵⎵⎵⏟
𝑘=1
𝟎

lo que significa que 𝒙 es un mínimo global de 𝑓 condicionado a ℎ𝑘 (𝒙) ≤ 0 para cada 𝑘 = 1, … , 𝑚, como se

quería. ▪

Una demostración análoga a la recién expuesta probaría la condición suficiente para programas cóncavos.
Animamos al lector a intentarlo.
Nota 16. En la situación del teorema 15, de la proposición 12 se deduce que, si la función objetivo 𝑓 de
(PC− ) (resp. (PC+ )) es estrictamente convexa (resp. estrictamente cóncava), entonces el mínimo global
(resp. máximo global) de (PC− ) (resp. (PC+ )) es único. ◀

Como comentario final, hay que destacar el alcance que tuvo y tienen los resultados aquí expuestos, con
mención especial a la programación convexa. La convexidad es una herramienta eficaz que aporta una
condición suficiente a la hora de resolver ciertos problemas de optimización y, además, grandes ramas
dentro de la programación, como la programación lineal (donde la función a optimizar es una función
lineal), geométrica (donde la función a optimizar es un posinomio2 ) o cuadrática (donde la función a
2 Un posinomio tiene la misma expresión que un polinomio en varias variables 𝑥 , … , 𝑥 , pero aquí las variables son solo positivas,
1 𝑛
los coeficientes son solo positivos y los exponentes son reales (positivos, negativos o cero).

TEMat, 3 (2019) e-ISSN: 2530-9633 43


El teorema de Karush-Kuhn-Tucker

optimizar es una función cuadrática), pueden atacarse aplicando el teorema 15. Todo esto puede verse
detalladamente en el trabajo final de grado de Martínez Sánchez [9], así como la programación convexa
dual, que a grandes rasgos, trata de asociar a cada programa convexo de minimización (PC− ) un programa
de maximización libre (sin restricciones) llamado programa convexo dual y que, a menudo, es mas fácil de
resolver que el propio (PC− ) y cuyas soluciones pueden usarse para generar soluciones de (PC− ). Véase el
libro de Peressini, Sullivan y Uhl [12] para más información al respecto.

Referencias
[1] APOSTOL, Tom M. Análisis matemático. Trad. por Vélez Cantarell, Francisco. Barcelona: Reverté, 1960.
[2] BLISS, G. A. «Normality and abnormality in the calculus of variations». En: Transactions of the
American Mathematical Society 43.3 (1938), págs. 365-376. ISSN: 0002-9947. [Link]
2307/1990066.
[3] DANTZIG, George B. Linear programming and extensions. RAND Corporation, 1963, págs. xvi+625.
[Link]
[4] KANTOROVICH, L. V. «Mathematical methods of organizing and planning production». En: Mana-
gement Science. Journal of the Institute of Management Science. Application and Theory Series 6
(1959/1960), págs. 366-422. ISSN: 0025-1909. [Link]
[5] KARUSH, William. Minima of functions of several variables with inequalities as side conditions. Thesis
(SM). The University of Chicago, 1939, pág. 25. URL: [Link]
url _ ver = Z39 . 88 - 2004&rft _ val _ fmt = info : ofi / fmt : kev : mtx : dissertation&res _ dat = xri :
pqdiss&rft_dat=xri:pqdiss:TM15121.
[6] KJELDSEN, Tinne Hoff. «A contextualized historical analysis of the Kuhn-Tucker theorem in nonlinear
programming: the impact of World War II». En: Historia Mathematica 27.4 (2000), págs. 331-361.
ISSN: 0315-0860. [Link]
[7] KUHN, Harold W. «Nonlinear programming: a historical view». En: Nonlinear programming Procee-
dings of a Symposium in Applied Mathematics Held in New York City. Vol. 9. SIAM-AMS Proceedings.
American Mathematical Society, 1976, págs. 1-26.
[8] LAGRANGE, Joseph-Louis. Mécanique analytique. Edición revisada. Librairie Scientifique et Technique
Albert Blanchard, 1965.
[9] MARTÍNEZ SÁNCHEZ, Francisco Javier. Una generalización del teorema de los multiplicadores de
Lagrange: condiciones de Karush-Kuhn-Tucker en programación no lineal. Trabajo de Fin de Grado.
Universidad de Granada, 2018. URL: [Link]
[Link].
[10] MCSHANE, Edward J. «The Lagrange Multiplier Rule». En: The American Mathematical Monthly 80.8
(1973), págs. 922-925. [Link]
[11] NEUMANN, John von y MORGENSTERN, Oskar. Theory of Games and Economic Behavior. Princeton
University Press, Princeton, New Jersey, 1944, págs. xviii+625.
[12] PERESSINI, Anthony L.; SULLIVAN, Francis E., y UHL, J. J., Jr. The mathematics of nonlinear program-
ming. Undergraduate Texts in Mathematics. Springer-Verlag, New York, 1988, págs. x+273. ISBN:
978-0-387-96614-4.
[13] PRÉKOPA, András. «On the development of optimization theory». En: The American Mathematical
Monthly 87.7 (1980), págs. 527-542. ISSN: 0002-9890. [Link]
[14] SYDSAETER, Knut y HAMMOND, Peter. Matemáticas para el análisis económico. Prentice Hall, 1996.
ISBN: 978-0-13-240615-4.
[15] WU, Hui-Hua y WU, Shanhe. «Various proofs of the Cauchy-Schwarz inequality». En: Octogon Mat-
hematical Magazine 17.1 (2009), págs. 221-229. URL: [Link]
Octogon/volumes/volume1/article1_19.pdf.

44 [Link]
Códigos de Reed-Muller: las matemáticas detrás de
las primeras fotografías del planeta rojo

� Andoni De Arriba De La Heraa Resumen: Este artículo tiene como objetivo presentar y estudiar los llamados
Instituto de Ciencias Matemáticas códigos de Reed-Muller binarios. Estos son un tipo muy especial de códigos que,
(ICMAT) además, han jugado un papel fundamental en nuestra historia, puesto que fueron
[Link]@[Link] los responsables de que se obtuvieran las primeras fotografías en blanco y negro
de la superficie marciana.
El artículo comienza con una breve introducción que tiene como objetivo situar
este en contexto, así como fijar algunas de las notaciones básicas. Después, se hace
un rápido repaso al mundo de los códigos desde un punto de vista matemático,
estudiando todas las nociones básicas necesarias para la correcta comprensión del
artículo. Con esto se pretende que cualquier lector mínimamente familiarizado con
las matemáticas pueda disfrutar de la lectura. Para terminar, a modo de aplicación
práctica, aparecen enlaces a programas diseñados en Mathematica que permiten
interactuar con la familia de códigos estudiada.

Abstract: This paper aims to present and study the so-called binary Reed-Muller
codes. These are a very special type of codes that have played a fundamental role
in our history, since they were responsible for obtaining the first black and white
photographies of the Martian surface.
The paper begins with a brief introduction that aims to place the work in context,
as well as to fix some of the basic notations. Later on, we quickly review the world
of codes from a mathematical point of view, studying all the basic notions that will
be necessary for the correct understanding of the paper. With this, we hope that
any reader minimally familiarized with mathematics will be able to enjoy reading
the paper. To finish, as a practical application, we include links to algorithms
designed in Mathematica that allow us to work with the studied code family.

Palabras clave: transmisión de información, códigos detectores y correctores de


errores, códigos lineales, alfabeto, letras, palabras, codificar, decodificar.
MSC2010: 94B05.
Recibido: 10 de septiembre de 2018.
Aceptado: 24 de febrero de 2019.

Agradecimientos: Quiero agradecer a la ANEM la oportunidad que ofrece a los jóvenes investigadores con la
creación de esta revista, y, en especial, a los editores por su dedicación a la misma y, más concretamente, por
su insistencia en que escribiera este artículo. Quisiera también dar las gracias a los revisores encargados para
este por el arduo trabajo llevado a cabo en la revisión. Finalmente, no puedo dejar sin mencionar a quien
fue mi directora de TFG, M.ª Asunción García Sánchez, por toda la ayuda que me brindó para la correcta
realización del mismo, ya que este artículo está basado en dicho trabajo.

Referencia: DE ARRIBA DE LA HERA, Andoni. «Códigos de Reed-Muller: las matemáticas detrás de las primeras
fotografías del planeta rojo». En: TEMat, 3 (2019), págs. 45-61. ISSN: 2530-9633. URL: [Link]
articulo/2019-p45.

a El autor estaba afiliado a la Universidad del País Vasco/Euskal Herriko Unibertsitatea (UPV/EHU) durante el desarrollo del trabajo del que

parte este artículo.

cb Este trabajo se distribuye bajo una licencia Creative Commons Reconocimiento 4.0 Internacional
[Link]
Códigos de Reed-Muller: las matemáticas detrás de las primeras fotografías del planeta rojo

1. Introducción
Este artículo tiene como objetivo estudiar los códigos de Reed-Muller. Esta es una de las familias más
antiguas y mejor conocidas entre los códigos lineales. En concreto, son un tipo muy especial de códigos
detectores y correctores de errores, con ricas propiedades algebraicas, que se utilizan habitualmente en
la transmisión de información. Los estudios que se van a tratar en el artículo se situan en una de las
aplicaciones más actuales del álgebra: la teoría de la información, cuyas bases fueron establecidas por
Claude Elwood Shannon1 [5], quien, a día de hoy, es considerado el padre de toda esta teoría. Hoy día, la
teoría de la información es la rama de las matemáticas y la computación que se ocupa del estudio de la
información y de todo lo relacionado con ella.
Supongamos que un emisor desea enviar un mensaje 𝒙 a través de un canal para que lo reciba un receptor
(proceso que se conoce por transmisión de información). A lo largo de este proceso, el mensaje 𝒙 suele
verse alterado debido al «ruido» del canal, de manera que el mensaje recibido por el receptor pasa a ser 𝒙′ ,
donde, en general, se tiene que 𝒙′ ≠ 𝒙. Aquí es donde entran los llamados códigos detectores y correctores
de errores. La idea consiste en que, antes de enviar el mensaje 𝒙, el emisor lo codifica como 𝒄, añadiéndole
información redundante. De esta manera, si en el canal se produce un error 𝒆 debido al cual se recibe el
mensaje alterado 𝒄′ = 𝒄 + 𝒆, tras decodificar este, el receptor debería ser capaz de recuperar 𝒄 y, de ahí,
deducir 𝒙. El objetivo que se busca con todo esto es el de lograr que este proceso tenga éxito de la manera
lo más eficiente posible (tanto en tiempo como en memoria).
Salvo que se diga lo contrario, nuestros mensajes serán vectores (que llamaremos palabras) del †𝑞 -espacio
vectorial finito †𝑛𝑞 , siendo 𝑞 = 𝑝𝑡 con 𝑝 primo (†𝑞 es lo que llamaremos alfabeto, mientras que a sus
elementos los denominaremos letras). Por simplicidad, se denota a las palabras de nuestro alfabeto por

𝒙 = (𝑥1 , 𝑥2 , … , 𝑥𝑛 ) ≡ 𝑥1 𝑥2 … 𝑥𝑛 .
not.

De esta manera, podemos definir matemáticamente un código como un subconjunto no vacío de palabras
(a las cuales nos referiremos de manera natural por palabras código) de un mismo alfabeto.
La idea es hacer un estudio completo de los códigos de Reed-Muller en el caso binario. Concretamente,
hablar de las tres construcciones conocidas para los mismos, así como del método de decodificación
propio por el cual son tan interesantes. En primer lugar, se incluye un rápido repaso en teoría de códigos
lineales, haciendo especial hincapié en aquello que hará falta para la correcta comprensión del artículo.
Hecho esto, entramos en materia con el objeto de estudio y, una vez terminado, aparecen algunos de
los programas diseñados en Mathematica para el Trabajo de Fin de Grado de De Arriba De La Hera [1].
Salvo que se diga lo contrario, todas las demostraciones de los resultados que aquí se utilizan pueden
encontrarse en el mismo. Además, se da por hecho que el lector está familiarizado con los conceptos y
resultados básicos del álgebra y la geometría, sobre todo en los casos finitos. También conviene tener
un mínimo de conocimiento de combinatoria, dado que a lo largo del artículo aparecen en repetidas
ocasiones resultados en los que es necesario hacer uso de coeficientes binomiales, así como algunas de
las relaciones más importantes que se conocen entre los mismos.

2. Repaso a la teoría de códigos lineales


A primera vista, parece muy complicado trabajar con la definición de código dada desde un punto de vista
matemático. Es por esta razón que resulta natural restringirse a familias de códigos más manejables y
fáciles de implementar. En concreto, nos centramos en los llamados códigos lineales.

2.1. Nociones básicas


Definición 1. Dados 𝑠 ≤ 𝑛 números naturales, llamamos código lineal de longitud 𝑛 y dimensión 𝑠 sobre
†𝑞 a un †𝑞 -subespacio vectorial de †𝑛𝑞 de dimensión 𝑠. Nos referimos a estos por códigos lineales 𝑞-arios
de longitud 𝑛 y dimensión 𝑠. ◀
1 Matemático, ingeniero eléctrico y criptógrafo americano; 30 abril, 1916 - 24 febrero, 2001.

46 [Link]
De Arriba De La Hera

Sea 𝒞 un código lineal 𝑞-ario de longitud 𝑛 y dimensión 𝑠. La principal ventaja que tiene el uso de códigos
lineales es que, por tratarse de subespacios vectoriales, admiten bases de la forma ℬ = {𝒄1 , … , 𝒄𝑠 }, de
modo que toda palabra código de 𝒞 puede expresarse de manera única como combinación lineal de estas
palabras básicas. Así, escribiendo 𝒄𝑖 = 𝑐𝑖1 … 𝑐𝑖𝑛 para todo 𝑖 ∈ {1, … , 𝑠}, podemos construir la conocida como
matriz generadora del código lineal, la cual se corresponde con

𝑐 𝑐12 ⋯ 𝑐1𝑛
⎛ 11 ⎞
𝑐 𝑐22 ⋯ 𝑐2𝑛
𝐺 = ⎜ 21 ⎟ ∈ Mat𝑠×𝑛 (†𝑞 ).
⎜⋮ ⋮ ⋮⎟
⎝𝑐𝑠1 𝑐𝑠2 ⋯ 𝑐𝑠𝑛 ⎠

Es obvio que para toda palabra código 𝒄 ∈ 𝒞 que tomemos existen únicos escalares 𝛼1 , … , 𝛼𝑠 ∈ †𝑞 tales
que 𝒄 = (𝛼1 ⋯ 𝛼𝑠 )𝐺. Por tanto, para dar un código lineal, basta dar una matriz generadora del mismo.
Se define por distancia de Hamming entre dos palabras 𝒙 e 𝒚 de igual longitud al entero no negativo

(1) 𝑑(𝒙, 𝒚) ≔ |{𝑖 ∈ {1, … , 𝑛} ∣ 𝑥𝑖 ≠ 𝑦𝑖 }| .

Por otra parte, se define como peso de una palabra 𝒙 al entero no negativo

(2) 𝜔(𝒙) ≔ |{𝑖 ∈ {1, … , 𝑛} ∣ 𝑥𝑖 ≠ 0}| .

Dado un código 𝒞 arbitrario (no necesariamente lineal), a partir de (1) y (2) podemos introducir

𝑑 ≡ 𝑑(𝒞) ≔ mín {𝑑(𝒄, 𝒄′ ) ∣ 𝒄, 𝒄′ ∈ 𝒞, 𝒄 ≠ 𝒄′ }


not.

y
𝜔 ≡ 𝜔(𝒞) ≔ mín {𝜔(𝒄) ∣ 𝒄 ∈ 𝒞, 𝒄 ≠ 𝟎} ,
not.
donde 𝑑 se conoce como distancia mínima del código, mientras que 𝜔 es el llamado peso mínimo del
mismo. Si 𝒞 es un código lineal, se comprueba fácilmente que 𝑑 = 𝜔.
Un código lineal 𝒞 detecta hasta 𝑡 errores si, recibida 𝒚 = 𝒄 + 𝒆 (siendo 𝒄 la palabra código enviada y 𝒆 el
error dado en la transmisión, el cual se representa también como una palabra), con 0 < 𝜔(𝒆) ≤ 𝑡, entonces
podemos asegurar que 𝒚 ∉ 𝒞. A su vez, un código lineal 𝒞 corrige hasta 𝑡 errores si, recibida 𝒚, existe a lo
más una palabra código 𝒄 ∈ 𝒞 satisfaciendo que 𝑑(𝒚, 𝒄) ≤ 𝑡. No resulta difícil percatarse de que cualquier
código 𝒞 detecta hasta 𝑑 − 1 errores, mientras que corrige hasta ⌊ 𝑑−2 1 ⌋.
Finalmente, se define como código dual de un código lineal 𝒞 ⊆ †𝑛𝑞 de dimensión 𝑠 al conjunto

𝒞 ⟂ ≔ {𝒙 ∈ †𝑛𝑞 ∣ ⟨𝒙, 𝒄⟩ = 0 ∀ 𝒄 ∈ 𝒞} ,

donde ⟨⋅, ⋅⟩ denota el producto escalar estándar en †𝑛𝑞 . Este vuelve a ser un código lineal 𝑞-ario de longitud
𝑛, pero de dimensión 𝑛 − 𝑠 en este caso. Por tanto, se cumple que dim(𝒞) + dim(𝒞 ⟂ ) = 𝑛. Más aún,
este hecho nos permite afirmar que 𝒞 ⟂ admite una matriz generadora 𝐻 ∈ Mat(𝑛−𝑠)×𝑛 (†𝑞 ). A esta se
la conoce como matriz de control del código lineal 𝒞 inicial. Entre las propiedades más importantes
de 𝐻 destaca que podemos definir 𝒞 a partir de esta. En efecto, no resulta complicado comprobar que
𝒞 = {𝒙 ∈ †𝑛𝑞 ∣ 𝒙𝐻 ⊤ = 𝟎}. Otra propiedad a tener en cuenta es que (𝒞 ⟂ )⟂ = 𝒞. Esto se debe a que toda matriz
generadora 𝐺 y de control 𝐻 para el código lineal 𝒞 están relacionadas mediante la igualdad 𝐺𝐻 ⊤ = 0 (o,
equivalentemente, 𝐻𝐺⊤ = 0).
Ejemplo 2. El ejemplo típico son los códigos de Hamming. Pese a que estos pueden construirse sobre
cualquier alfabeto, su construcción binaria es muy sencilla: dados 𝑠 un natural arbitrario y 𝑛 = 2𝑠 − 1,
el código de Hamming binario de orden 𝑠 (longitud 𝑛 y dimensión 𝑠) tiene por matriz de control aquella
cuyas columnas son las 𝑛 palabras no nulas de †𝑠2 escritas en forma ascendente (es decir, la representación
binaria ordenada de los números del 1 al 𝑛). En todos los casos la distancia mínima es 3. ◀

Ejemplo 3. Otro ejemplo interesante son los códigos de Hadamard. Dado 𝑠 un natural, este es el código
lineal binario de longitud 𝑛 = 2𝑠 y dimensión 𝑠 cuya matriz generadora se construye por columnas como
sigue: para cada 𝑖 ≤ 𝑛 natural, la 𝑖-ésima columna se corresponde con los bits de la representación binaria
del número entero 𝑖. Este es, como ya veremos, un caso especial de código de Reed-Muller binario. ◀

TEMat, 3 (2019) e-ISSN: 2530-9633 47


Códigos de Reed-Muller: las matemáticas detrás de las primeras fotografías del planeta rojo

2.2. Procesos de codificación y decodificación


Ya hemos comentado al comienzo que un proceso de codificación no es más que aquel a través del cual
añadimos información redundante a nuestras palabras con el fin de que, al emplear el correspondiente
proceso de decodificación, podamos recuperar estas si se produce algún error durante la transmisión de
información. Matemáticamente, esto significa que transformamos cada palabra que queremos transmitir
en palabras código. Esto no resulta una tarea sencilla en general (pues no parece existir un procedimiento
estándar a través del cual se asocia a cada una de estas palabras una palabra código). Sin embargo, cuando
tenemos códigos lineales entre manos, sí que se tiene un método bastante general gracias a que en estos
casos se tiene una matriz generadora del código. En efecto, basta multiplicar esta con cada palabra a
transmitir para obtener palabras código con las que trabajar en cada caso.

2.2.1. Codificación por matrices generadoras dadas en forma estándar

Ya hemos dicho que para dar un código lineal 𝒞 es suficiente dar una matriz generadora. Nos preguntamos
ahora: ¿se puede obtener una matriz generadora de expresión lo más sencilla posible? La respuesta a
esta pregunta nos la da el resultado del álgebra lineal que nos dice que toda matriz 𝐺 ∈ Mat𝑠×𝑛 (†𝑞 ) (con
𝑠 ≤ 𝑛) de rango máximo 𝑠 puede llevarse, realizando operaciones elementales en filas y columnas, a una
matriz de la forma (𝐼𝑠 ∣ 𝐵) con 𝐵 ∈ Mat𝑠×(𝑛−𝑠) (†𝑞 ). A esta se la conoce por forma estándar de 𝐺. Sin
embargo, en general, para que el código lineal que tenga a esta por matriz generadora coincida con 𝒞,
deben realizarse estas transformaciones elementales solo por filas. Luego no todo código lineal admite
una matriz generadora de este tipo. La importancia de las matrices generadoras dadas en forma estándar
radica en lo fácil que resulta codificar con ellas ya que, dada una palabra 𝒙 ≡ 𝑥1 … 𝑥𝑠 ∈ †𝑠𝑞 arbitraria, esta
se codifica como
𝑠+1 … 𝑐𝑛 ) ∈ 𝒞,
𝒙 (𝐼𝑠 ∣ 𝐵) = (𝑥1 … 𝑥𝑠 𝑐⏟⎵⏟⎵⏟
redundancias
donde es evidente que esta se corresponde con una palabra código en la que las 𝑠 primeras letras son,
precisamente, las de la palabra original 𝒙. Si 𝐺 = (𝐼𝑠 ∣ 𝐵) ∈ Mat𝑠×𝑛 (†𝑞 ) es una matriz generadora para un
cierto código lineal, entonces 𝐻 = (−𝐵⊤ ∣ 𝐼𝑛−𝑠 ) ∈ Mat(𝑛−𝑠)×𝑛 (†𝑞 ) es una matriz de control para el mismo.

2.2.2. Métodos generales de decodificación

Recordemos que el principal objetivo de la decodificación es recuperar las palabras enviadas durante
la transmisión de información que pueden haberse visto alteradas a lo largo de este proceso. Para ello,
el método de decodificación debe ser capaz de detectar y, si es posible, corregir los errores que puedan
haberse dado. Matemáticamente, recibida una palabra donde se ha dado un error de peso no nulo, hemos
de ser capaces de detectar que esta no es una palabra código y hallar «aquellas más próximas» para corregir
este. Cuando solo existe una palabra código en dichas condiciones, la decodificación es única. Existen dos
métodos de decodificación generales válidos para todo código lineal 𝒞 ⊆ †𝑛𝑞 con distancia mínima 𝑑.
Primero se tiene el llamado método de decodificación basado en líderes. Este se basa en la relación de
equivalencia sobre †𝑛𝑞 siguiente:

∀ 𝒙, 𝒚 ∈ †𝑛𝑞 , 𝒙ℜ𝒚 ⟺ 𝒙 − 𝒚 ∈ 𝒞.

Supongamos que se desea decodificar 𝒛 ∈ †𝑛𝑞 . Se buscan en [𝒛] (clase representada por 𝒛 en la relación de
equivalencia anterior) las palabras de menor peso posible (los líderes de [𝒛]). Sea una de estas 𝒆𝒛 . Entonces,
se decodifica 𝒛 por 𝒛 − 𝒆𝒛 , que es una palabra código (se toma como error al líder elegido). Esta palabra 𝒛
admite decodificación única en caso de que 𝜔(𝒆𝒛 ) ≤ ⌊ 𝑑−2 1 ⌋. Este método es útil cuando resulta sencillo
enumerar explícitamente las palabras del código.
Otro método de decodificación alternativo válido para cuando conocemos la matriz de control 𝐻 para 𝒞 es
el llamado método de decodificación basado en síndromes. Este, definiendo 𝑆(𝒙) ≔ 𝒙𝐻 ⊤ como el síndrome
de cada palabra 𝒙 ∈ †𝑛𝑞 respecto de 𝐻, se basa en la relación de equivalencia sobre †𝑛𝑞 siguiente:

∀ 𝒙, 𝒚 ∈ †𝑛𝑞 , 𝒙 ∼ 𝒚 ⟺ 𝑆(𝒙) = 𝑆(𝒚).

48 [Link]
De Arriba De La Hera

Supongamos que se desea decodificar 𝒛 ∈ †𝑛𝑞 . Si 𝑆(𝒛) = 𝟎, se tiene que 𝒛 es una palabra código y la
decodificamos tal cual. En caso contrario, hay que buscar en 𝒛 ̄ (clase representada por 𝒛 en la relación de
equivalencia anterior) una palabra 𝒆𝒛 de peso lo mínimo posible, para decodificar 𝒛 como 𝒛 − 𝒆𝒛 , que es
claramente una palabra código. Para obtener 𝒆𝒛 en la práctica, construimos una tabla con los síndromes
de las palabras del espacio vectorial total, ordenadas por pesos de menor a mayor. Habitualmente, se
construye una tabla con los síndromes de las palabras con peso hasta ⌊ 𝑑−2 1 ⌋. A esta se la conoce por tabla
de síndromes. Si el síndrome de nuestra palabra coincide con alguno de la tabla, podemos asegurar que la
decodificación será única. Sin embargo, esto no es así cuando el peso de la palabra líder es mayor que
1
⌊ 𝑑−
2
⌋. Este método es útil cuando es fácil calcular una matriz de control del código.
Existen otros métodos de decodificación propios para ciertos tipos de códigos lineales más eficaces que
estos dos, como puede ser el método de decodificación cíclica, válido para los llamados códigos cíclicos.
Más adelante aparecerá otro método de decodificación, que tiene especial importancia cuando se trabaja
con códigos de Reed-Muller binarios. Este es el llamado método de decodificación por mayoría.
Ejemplo 4. Consideremos el código de Hamming binario de orden 3. Una matriz de control para este
código es
0 0 0 1 1 1 1
𝐻 = (0 1 1 0 0 1 1) .
1 0 1 0 1 0 1
Para encontrar las palabras del código, basta con resolver las ecuaciones determinadas por 𝐻 siguientes:
+ 𝑥4 + 𝑥5 + 𝑥6 + 𝑥7 = 0;

+ 𝑥2 + 𝑥3 + 𝑥6 + 𝑥7 = 0;

⎩ + 𝑥1 + 𝑥3 + 𝑥5 + 𝑥7 = 0.
Podemos obtener una base tomando 𝑥3 , 𝑥5 , 𝑥6 y 𝑥7 como variables libres. Dando a tres de estas el valor 0
y 1 a la restante, obtenemos ℬ = {1110000, 1001100, 0101010, 1101001}. Denotando al código por ℋ(3),
tenemos que
0000000 1110000 1001100 0101010 1101001 0111100 1011010 0011001
ℋ(3) = { }.
1100110 0100101 1000011 0010110 1010101 0110011 0001111 1111111
Considerando la palabra 1010101, que pertenece al código, vamos a reemplazar el último 1 por un 0. Ahora,
empleando los dos métodos que se acaban de explicar, vamos a recuperar la palabra original.
• Aplicando, por un lado, el método de decodificación basado en líderes, tenemos que calcular la clase
de equivalencia [1010100] ≡ {𝒙 ∣ 𝒙 − 1010100 ∈ ℋ(3)}. Esta es
1010100 0100100 0011000 1111110 0111101 1101000 0001110 1001101
{ }.
0110010 1110001 0010111 1000010 𝟎𝟎𝟎𝟎𝟎𝟎𝟏 1100111 1011011 0101011
Como hay una única palabra de peso 1, la decodificación es única, y es 1010101.
• Si, por el contrario, aplicamos el método de decodificación basado en síndromes, calculamos tanto
𝑆(1010100) = (1010100)𝐻 ⊤ = (111) como los síndromes de las palabras con peso hasta 1, para ver
cuáles coinciden con este. Omitiendo la palabra nula, tenemos la siguiente tabla de síndromes:
palabras 1000000 0100000 0010000 0001000 0000100 0000010 0000001
síndromes 001 010 011 100 101 110 𝟏𝟏𝟏
Como hay una única palabra de mismo síndrome, la decodificación es única, y es 1010101.
En resumen, la decodificación ha sido la que cabía esperar empleando ambos métodos. ◀

2.3. Algunas construcciones de códigos lineales


Se incluyen a continuación tres construcciones interesantes de códigos lineales. Resulta un buen ejercicio
de repaso comprobar que, efectivamente, lo son, así como que se cumplen todas las propiedades que
se van a enunciar para las mismas. Todas estas comprobaciones pueden encontrarse en el trabajo de
De Arriba De La Hera [1, capítulo 1, Problemas Resueltos].

TEMat, 3 (2019) e-ISSN: 2530-9633 49


Códigos de Reed-Muller: las matemáticas detrás de las primeras fotografías del planeta rojo

Ejemplo 5 (código suma). Sean 𝒞1 , 𝒞2 ⊆ †𝑛𝑞 dos códigos lineales con distancia mínima 𝑑𝑖 , dimensión 𝑘𝑖 y
matriz generadora 𝐺𝑖 ∈ Mat𝑘𝑖×𝑛 (†𝑞 ), respectivamente, siendo 𝑖 ∈ {1, 2}. Se demuestra que la suma de 𝒞1 y
𝒞2 , dada por
𝒞1 + 𝒞2 ≔ {𝒄1 + 𝒄2 ∣ 𝒄𝑖 ∈ 𝒞𝑖 con 𝑖 ∈ {1, 2}} ,
es un código lineal 𝑞-ario con distancia mínima 𝑑 ≤ mín{𝑑1 , 𝑑2 }. Se puede probar, además, que, si
𝒞1 ∩ 𝒞2 = {𝟎}, entonces dim(𝒞1 + 𝒞2 ) = 𝑘1 + 𝑘2 y una matriz generadora de 𝒞1 + 𝒞2 viene dada por

𝐺
𝐺 = ( 1 ). ◀
𝐺2
𝑛
Ejemplo 6 (código concatenación). Sean 𝒞𝑖 ⊆ †𝑞 𝑖 códigos lineales de longitud 𝑛𝑖 , distancia mínima 𝑑𝑖 ,
dimensión 𝑘𝑖 , matriz generadora 𝐺𝑖 ∈ Mat𝑘𝑖×𝑛𝑖 (†𝑞 ) y matriz de control 𝐻𝑖 ∈ Mat(𝑛−𝑘𝑖)×𝑛 (†𝑞 ), respectiva-
mente, siendo 𝑖 ∈ {1, 2}. Se demuestra que la concatenación de 𝒞1 con 𝒞2 , dada por

𝒞1 ∗ 𝒞2 ≔ {𝒄1 ∗ 𝒄2 = 𝑐11 … 𝑐1𝑛1 𝑐21 … 𝑐2𝑛2 ∣ 𝒄𝑖 ∈ 𝐶𝑖 con 𝑖 ∈ {1, 2}},

es un código lineal 𝑞-ario de longitud 𝑛1 + 𝑛2 , dimensión 𝑘1 + 𝑘2 , distancia mínima 𝑑 = mín{𝑑1 , 𝑑2 } y


matrices generadora y de control

𝐺 0 𝐻1 0
𝐺=( 1 ) y 𝐻=( ). ◀
0 𝐺2 0 𝐻2

Ejemplo 7 (construcción de Plotkin). Sean 𝒞1 , 𝒞2 ⊆ †𝑛𝑞 dos códigos lineales de distancia mínima 𝑑𝑖 , dimen-
sión 𝑘𝑖 , matriz generadora 𝐺𝑖 ∈ Mat𝑘𝑖×𝑛 (†𝑞 ) y matriz de control 𝐻𝑖 ∈ Mat(𝑛−𝑘𝑖)×𝑛 (†𝑞 ), respectivamente,
siendo 𝑖 ∈ {1, 2}. Se demuestra que el conjunto definido por

𝒞1 ⊛ 𝒞2 ≔ {(𝒄1 ∣ 𝒄1 + 𝒄2 ) ∣ 𝒄𝑖 ∈ 𝒞𝑖 con 𝑖 ∈ {1, 2}} ,

donde (𝒄1 ∣ 𝒄1 + 𝒄2 ) ≔ 𝒄1 ∗ (𝒄1 + 𝒄2 ) = 𝒄1 ∗ 𝒄1 + 𝟎 ∗ 𝒄2 para todo 𝒄1 ∈ 𝒞1 , 𝒄2 ∈ 𝒞2 , es un código lineal 𝑞-ario


de longitud 2𝑛, dimensión 𝑘1 + 𝑘2 , distancia mínima 𝑑 = mín{2𝑑1 , 𝑑2 } y matrices generadora y de control

𝐺 𝐺1 𝐻 0
𝐺=( 1 ) y 𝐻=( 1 ). ◀
0 𝐺2 −𝐻2 𝐻2

Nota 8. El código lineal presentado en el ejemplo 7 jugará un papel muy importante cuando tratemos la
segunda de las construcciones para los códigos de Reed-Muller binarios. ◀

3. Códigos de Reed-Muller binarios


3.1. Aspectos históricos
Los códigos de Reed-Muller son una familia infinita de códigos lineales, que toman su nombre de los
dos matemáticos que los propusieron en el año 1954, prácticamente al mismo tiempo, en dos trabajos
independientes: Irving Stoy Reed2 y David Eugene Muller3 . Ambos se ocuparon de introducir estos en el
caso binario. Hoy se sabe que el primero en realizar la primera de las construcciones para estos códigos en
su forma binaria fue Muller [3], mientras que su estudio en detalle y la sencilla decodificación por la que
son tan conocidos e importantes en este caso binario es obra de Reed [4].
Los códigos de Reed-Muller tienen una gran importancia en la historia. Su estudio en la década de los
años 50 fue fundamental para que en los años posteriores se hiciesen grandes avances en la exploración
espacial. Así, desde 1969 hasta 1977, todas las naves espaciales de la NASA iban equipadas con un código
de Reed-Muller binario de longitud 32, dimensión 6 y distancia mínima 16. Se escogió dicho código dado
que el cociente entre la dimensión del mismo y su longitud es (relativamente) pequeño para la amplia
distancia mínima que posee. Por esta razón podemos decir que nos encontramos ante un código de bajo
coste y buenas capacidades para corregir errores.
2 Matemático e ingeniero estadounidense; 12 noviembre, 1923 - 11 septiembre, 2012.
3 Matemático e informático teórico estadounidense; 2 noviembre, 1924 - 27 abril, 2008.

50 [Link]
De Arriba De La Hera

Una de las misiones más destacadas que se llevó a cabo con el uso de estos códigos, y que pasó a la
historia por su gran impacto, fue la realizada en los años 70 por la sonda Mariner 9, ya que esta fue la
primera que permitió la observación fotográfica de la superficie marciana. Esta sonda fue lanzada el 30 de
mayo del 1971, llegando a su destino el 13 de noviembre del mismo año, convirtiéndose así en la primera
nave espacial en orbitar un planeta distinto al nuestro. Científicamente, esta misión, que constituyó una
continuación de las observaciones adquiridas por las sondas Mariner 6 y 7, tenía como objetivo mostrar
las primeras fotografías de Marte. En un principio la misión se complicó debido a las grandes tormentas
de arena que se dieron sobre todo el conjunto de la superficie del planeta. Sin embargo, en 1972, cuando
por fin amainaron dichas tormentas, se obtuvieron estas primeras fotografías en blanco y negro, las cuales
cambiaron completamente la visión que se tenía hasta entonces del planeta rojo (figura 1). La sonda tomó
fotografías en blanco y negro de 600 × 600 = 360 000 píxeles, donde a cada píxel se le asignó una 6-tupla
para representar el brillo. Cada píxel era codificado como una palabra de longitud 32 (se emplearon 26
bits de redundancia). Fue necesario usar un código con palabras de gran longitud, pues los errores de
transmisión debían minimizarse al máximo dada la enorme distancia que los mensajes recorrían desde
Marte a la Tierra. Era, además, imprescindible, dado el tiempo requerido por cada transmisión, que la
decodificación fuese posible en la mayor parte de los casos y con garantías de unicidad.

Figura 1: Imágenes, facilitadas por la NASA bajo dominio público, captadas por la sonda Mariner 9.

3.2. Construcciones y propiedades principales


Como ya se ha adelantado, existen tres formas de introducir los códigos de Reed-Muller binarios. Cada una
de ellas resulta importante por motivos distintos, como ya iremos comprobando a lo largo del artículo.

3.2.1. Construcción original de Muller


Esta es la primera construcción conocida, debida a D. E. Muller. Además de la referencia principal [1],
ha sido necesario también consultar las notas de Iranzo Aznar y Pérez Monasor [2, Lección 7] para la
redacción de esta parte por motivos que se entenderán más adelante (véase la nota 19). Para introducir
esta construcción en su versión original, es necesaria la conocida como teoría de Boole, la cual se pretende
estudiar brevemente a continuación.

TEMat, 3 (2019) e-ISSN: 2530-9633 51


Códigos de Reed-Muller: las matemáticas detrás de las primeras fotografías del planeta rojo

Definición 9. Sea 𝑚 un número natural. Una aplicación 𝑓 ∶ †𝑚 2 → †2 es una función booleana de 𝑚


variables. Se denota al conjunto de todas las funciones booleanas de 𝑚 variables por 𝔅𝑚 . ◀

Observación 10. Podemos dotar a 𝔅𝑚 con una estructura de anillo conmutativo y unitario. Más aún, se
tiene que este conjunto también posee estructura de †2 -espacio vectorial. En definitiva, nos encontramos
ante una †2 -álgebra conmutativa y unitaria, la cual se conoce usualmente por álgebra de Boole. ◀

A partir de este momento, y salvo que se diga lo contrario, vamos a trabajar con el álgebra †𝑚
2 dado 𝑚 un
entero no negativo, y tendremos siempre que 𝑛 = 2𝑚 .
Observación 11. Si se fija un orden en los 𝑛 elementos de †𝑚 2 , es posible describir toda función booleana
𝑓 ∶ †𝑚2 → †2 de manera unívoca a través de una tabla con todos los elementos de †2 y los respectivos
𝑚

valores que toma 𝑓 en cada uno de estos. A esta se la conoce por tabla de verdad asociada a 𝑓. Además,
fijado un orden †𝑚2 = {𝒗1 , … , 𝒗𝑛 } y dada 𝑓 ∈ 𝔅𝑚 arbitraria, inducimos la siguiente notación:

𝑓𝑖 ≡ 𝑓(𝒗𝑖 ), ∀ 𝑖 ∈ {1, … , 𝑛}.


not.

Llamaremos a este valor coordenada 𝑖-ésima de 𝑓 bajo el orden establecido en †𝑚 2 . En estas condiciones,
toda aplicación 𝑓 ∈ 𝔅𝑚 puede identificarse de manera unívoca empleando tablas de verdad con la
correspondiente palabra 𝒇 ≡ 𝑓1 … 𝑓𝑛 ∈ †𝑛2 . Así, lo natural es trabajar con el conjunto †𝑚 2 = {𝒗1 , … , 𝒗𝑛 }
ordenado cuando se tengan funciones booleanas. A 𝒇 ∈ †𝑛2 se la conoce por palabra característica de 𝑓
bajo el orden establecido. En particular, se deduce de este hecho que |𝔅𝑚 | = 2𝑛 < ∞. ◀

Definición 12. Definimos el anillo de los polinomios booleanos de 𝑚 indeterminadas como el cociente
†2 [𝑥1 , … , 𝑥𝑚 ]
𝒫𝑚 ≡ .
not. (𝑥12 2
− 𝑥 1 , … , 𝑥𝑚 − 𝑥𝑚 )

Cada clase de equivalencia 𝐹 = 𝐹 + (𝑥12 − 𝑥1 , … , 𝑥𝑚


2
− 𝑥𝑚 ) ∈ 𝒫𝑚 posee un único representante
𝑖 𝑖
𝐹 ∗ ≡ ∑ 𝑎𝑖1…𝑖𝑚 𝑥11 ⋯ 𝑥𝑚𝑚 ∈ †2 [𝑥1 , … , 𝑥𝑚 ] (𝑎𝑖1…𝑖𝑚 ∈ †2 ) ,
not.

verificando que 𝑖1 , … , 𝑖𝑚 ∈ {0, 1}. Esta se conoce por forma reducida del polinomio 𝐹. Además, es evidente
que esta está unívocamente determinada aplicando a cada monomio de 𝐹 las reglas
2
𝑥𝑖 𝑥⎵⏟⎵
⏟⎵ 𝑗 = 𝑥𝑗 𝑥𝑖
⎵⏟ y 𝑥
⏟𝑖⎵⏟ 𝑖,
=⎵𝑥⏟
conmutatividad en †2 [𝑥1 ,…,𝑥𝑚 ] pequeño teorema de Fermat en †2

para cualesquiera 𝑖, 𝑗 ∈ {1, … , 𝑚} diferentes, hasta que los factores del polinomio resultante sean todos
distintos. Resulta natural definir en estas condiciones el grado de un polinomio booleano como el grado,
entendido en el sentido usual, del correspondiente polinomio en su forma reducida. ◀

Observación 13. No es complicado percatarse de que 𝒫𝑚 tiene también estructura de espacio vectorial sobre
𝑟 𝑟
†2 . De hecho, el conjunto ℬ = {𝑥11 ⋯ 𝑥𝑚𝑚 ∣ 𝑟𝑖 ∈ {0, 1} ∀ 𝑖 ∈ {1, … , 𝑚}} es una base de este (en particular, 𝒫𝑚
es finito como espacio vectorial). Así, dado que el número de monomios booleanos de 𝑚 indeterminadas
y grado 𝑘 es (𝑚
𝑘
) trivialmente, no resulta complicado comprobar que |𝒫𝑚 | = 2𝑚 . ◀

De ahora en adelante, y salvo que se diga lo contrario, nos restringimos al uso de polinomios en forma
reducida cuando tratemos con los elementos de 𝒫𝑚 y vamos a suponer que tenemos fijado un orden
†𝑚2 = {𝒗1 , … , 𝒗𝑛 }. En particular, utilizar palabras en †2 y funciones booleanas de 𝑚 variables resulta
𝑛

equivalente. Razonando por inducción sobre 𝑚, el número de indeterminadas, obtenemos el siguiente


resultado, necesario para probar el que sigue y que resulta clave para llevar a cabo esta construcción.
Lema 14. Sea 𝐹 ∈ †2 [𝑥1 , … , 𝑥𝑚 ] un polinomio arbitrario no necesariamente dado en forma reducida. Si
se cumple que 𝐹(𝑢1 , … , 𝑢𝑚 ) = 0 para todo 𝑢1 , … , 𝑢𝑚 ∈ †2 , entonces 𝐹 ∗ = 0.
Teorema 15. Los conjuntos 𝔅𝑚 y 𝒫𝑚 son isomorfos como †2 -álgebras conmutativas y unitarias, a través
de la aplicación que asocia a cada polinomio booleano 𝐹 la única función booleana 𝑓 tal que
𝐹(𝑢1 , 𝑢2 , … , 𝑢𝑚 ) = 𝑓(𝒖), ∀ 𝒖 = (𝑢1 , 𝑢2 , … , 𝑢𝑚 ) ∈ †𝑚
2 .

En consecuencia, cada polinomio en forma reducida tiene asociada una, y solo una, palabra de †𝑛2 .

52 [Link]
De Arriba De La Hera

Demostración. Veamos en primer lugar que la aplicación

𝜓𝑚 ∶ †2 [𝑥1 , … , 𝑥𝑚 ] ⟶ †𝑛2
(3)
𝐹 ⟼ 𝜓𝑚 (𝐹) ≔ 𝒇 ≡ 𝑓1 … 𝑓𝑛

es un epimorfismo de álgebras sobre †2 . El único paso no trivial es comprobar la sobreyectividad. Para


ello, dado 𝒙 ∈ †𝑛2 arbitrario, suponiendo que 𝒗𝑖 = (𝛼1𝑖 , … , 𝛼𝑚
𝑖
2 para todo 𝑖 ∈ {1, … , 𝑛}, definimos
) ∈ †𝑚
𝑚
𝐹𝒗𝑖 (𝑥1 , … , 𝑥𝑚 ) ≔ ∏ (1 − (𝑥𝑗 − 𝛼𝑗𝑖 )) ∈ †2 [𝑥1 , … , 𝑥𝑚 ], ∀ 𝑖 ∈ {1, … , 𝑛}.
𝑗=1

Por el pequeño teorema de Fermat, se tiene que, para todo 𝒘 = (𝑤1 , … , 𝑤𝑚 ) ∈ †𝑚


2 y todo 𝑖 ∈ {1, … , 𝑛},

1, si 𝒘 = 𝒗𝑖 ;
𝐹𝒗𝑖 (𝑤1 , … , 𝑤𝑚 ) = {
0, si 𝒘 ≠ 𝒗𝑖 .

De esta manera, resulta inmediato comprobar, por cómo se define la aplicación (3), si escribimos las
imágenes explícitamente, que el conjunto ℬ = {𝜓𝑚 (𝐹𝒗𝑖 ) ∣ 𝑖 ∈ {1, … , 𝑛}} se corresponde con la base canónica
de †𝑛2 . En consecuencia, existen escalares 𝑘𝑖 ∈ †2 para cada 𝑖 ∈ {1, … , 𝑛} tales que
𝑛 𝑛
𝒙 = ∑ 𝑘𝑖 𝜓𝑚 (𝐹𝒗𝑖 ) = 𝜓𝑚 ( ∑ 𝑘𝑖 𝐹𝒗𝑖 ) .
𝑖=1 𝑖=1

𝑛
Así, tomando 𝐹 = ∑𝑖=1𝑘𝑖 𝐹𝒗𝑖 , es evidente que 𝜓𝑚 (𝐹) = 𝒙. Queda así probada la sobreyectividad de (3).
Hecho esto, aplicando el primer teorema de isomorfía para álgebras, se sigue que

†2 [𝑥1 , … , 𝑥𝑚 ]
≅ Im(𝜓𝑚 ) ≡ †𝑛2 .
Ker(𝜓𝑚 )

Basta probar, por tanto, que Ker(𝜓𝑚 ) = (𝑥12 − 𝑥1 , … , 𝑥𝑚


2
− 𝑥𝑚 ) y habremos terminado. El contenido no trivial
2 2
es Ker(𝜓𝑚 ) ⊆ (𝑥1 − 𝑥1 , … , 𝑥𝑚 − 𝑥𝑚 ) y se argumenta por reducción al absurdo: dado 𝐹 ∈ Ker(𝜓𝑚 ) arbitrario,
vamos a suponer que 𝐹 ∉ (𝑥12 − 𝑥1 , … , 𝑥𝑚 2
− 𝑥𝑚 ) para llegar a una contradicción. En estas condiciones,
suponiendo que 𝑅 es la forma reducida de 𝐹, se tiene que la clase de equivalencia para 𝐹 puede escribirse
como 𝐹 = 𝑅 + (𝑥12 − 𝑥1 , … , 𝑥𝑚 2
− 𝑥𝑚 ), donde 𝑅 ≠ 0 necesariamente. Pero, como 𝜓𝑚 (𝐹) = 𝟎 por hipótesis,
estamos ante las condiciones del lema 14, luego 𝐹 ∗ = 𝑅 = 0, en contra de la suposición hecha. ▪

Sea 𝑟 un número natural tal que 𝑟 ≤ 𝑚. Denotaremos por 𝒫𝑚 (𝑟) al conjunto de los polinomios booleanos
de 𝑚 indeterminadas en 𝒫𝑚 con grado menor o igual que 𝑟. Este es trivialmente un †2 -subespacio vectorial
de 𝒫𝑚 de dimensión finita. Empleando entonces el teorema 15 que acabamos de probar, estamos en
condiciones de dar la siguiente definición importante.
Definición 16. Se define por código de Reed-Muller binario ℛℳ(𝑟, 𝑚) de orden 𝑟 y longitud 𝑛 a la imagen
directa de 𝒫𝑚 (𝑟) a través de la aplicación dada en (3). Dicho de otra manera, este es el conjunto de todas
las palabras binarias de longitud 𝑛 asociadas a todos los polinomios booleanos de 𝑚 indeterminadas
mediante el isomorfismo dado en el teorema 15 con grado menor o igual que 𝑟. ◀

Nota 17. Por convenio, escribiremos que ℛℳ(ℓ, 𝑚) = {0 … 0} para todo entero ℓ < 0. Además, por la
definición, es inmediato que ℛℳ(𝑚, 𝑚) = †𝑛2 y ℛℳ(0, 𝑚) = {0 … 0, 1 … 1}. ◀

Observación 18. Esta definición es independiente del orden fijado sobre †𝑚 2 . En otras palabras, dado un
código de Reed-Muller binario construido bajo un cierto orden en †𝑚 2 fijado, al cambiar dicho orden,
obtenemos otro código de Reed-Muller binario, con los mismos parámetros que el inicial (estos solo se
diferencian en que se han permutado entre sí las letras de un número finito de posiciones fijadas en todas
las palabras del código). Cuando dos códigos están relacionados tal y como se acaba de explicar, se dice
que son códigos equivalentes por permutación. ◀

Nota 19. Esta construcción fue generalizada a cualquier cuerpo finito †𝑞 en 1968. El lector interesado en
ello puede consultar el trabajo de De Arriba De La Hera [1, capítulo 2] y las referencias ahí recogidas para
comprender esta generalización. ◀

TEMat, 3 (2019) e-ISSN: 2530-9633 53


Códigos de Reed-Muller: las matemáticas detrás de las primeras fotografías del planeta rojo

Proposición 20. El código de Reed-Muller binario ℛℳ(𝑟, 𝑚) es un código lineal de longitud 𝑛 sobre †2 .
Manteniendo las notaciones introducidas en el teorema 15, una matriz generadora para este es

𝜓𝑚 (1)
⎛ ⎞
𝜓𝑚 (𝑥1 )
⎜ ⎟
⎜ ⋮ ⎟
(4) 𝐺(𝑟, 𝑚) ≡ ⎜ 𝜓𝑚 (𝑥𝑚 ) ⎟.
not.
⎜ 𝜓𝑚 (𝑥1 𝑥2 ) ⎟
⎜ ⋮ ⎟
⎝𝜓𝑚 (𝑥𝑚−𝑟+1 … 𝑥𝑚 )⎠

En consecuencia, la dimensión como †2 -subespacio vectorial de †𝑛2 viene dada por la fórmula
𝑟
𝑚
(5) dim(ℛℳ(𝑟, 𝑚)) = ∑ ( ).
𝑘=0
𝑘

Además, no resulta complicado comprobar que ℛℳ(𝑟, 𝑚)⟂ = ℛℳ(𝑚 − 𝑟 − 1, 𝑚).


Demostración. Basta probar que todas las palabras de †𝑛2 asociadas a los monomios reducidos de 𝒫𝑚 (𝑟)
constituyen una base de ℛℳ(𝑟, 𝑚). Nos es suficiente ver que estas generan un sistema linealmente
independiente argumentando por reducción al absurdo y haciendo uso del lema 14. Una vez se tiene esto,
con un simple argumento combinatorio, obtenemos la fórmula dada para la dimensión. Finalmente, la
igualdad entre códigos lineales se deduce de la inclusión ℛℳ(𝑚 − 𝑟 − 1, 𝑚) ⊆ ℛℳ(𝑟, 𝑚)⟂ dado que la
suma de las dimensiones de ℛℳ(𝑚 − 𝑟 − 1, 𝑚) y ℛℳ(𝑟, 𝑚) es 2𝑚 . ▪
Ejemplo 21. Vamos a construir empleando la definición dada el código ℛℳ(1, 3). Para ello, vamos a fijar
el orden †32 = {000, 001, 010, 011, 100, 101, 110, 111}. Hecho esto, tenemos que obtener 𝒫3 (1), esto es, los
polinomios booleanos de 3 indeterminadas que tengan grado menor o igual que 1. Estos son los siguientes:

0, 𝑥1 , 𝑥2 , 𝑥3 , 𝑥1 + 𝑥 2 , 𝑥1 + 𝑥 3 , 𝑥2 + 𝑥 3 , 𝑥1 + 𝑥 2 + 𝑥 3 ,
1, 1 + 𝑥1 , 1 + 𝑥2 , 1 + 𝑥3 , 1 + 𝑥1 + 𝑥2 , 1 + 𝑥1 + 𝑥3 , 1 + 𝑥2 + 𝑥3 , 1 + 𝑥1 + 𝑥2 + 𝑥3 .

Así, ya podemos enumerar las palabras del código de Reed-Muller deseado, y tenemos que estas son

00000000 00001111 00110011 01010101 00111100 01011010 01100110 01101001


{ }.
11111111 11110000 11001100 10101010 11000011 10100101 10011001 10010110

A partir de esto, podemos obtener una matriz generadora para el código inmediatamente, y tenemos por
la fórmula (5) que la dimensión de este es 4. ◀

3.2.2. Construcción recursiva de Plotkin

Nos basamos en la construcción de Plotkin recogida en el ejemplo 7 para obtener una construcción
recursiva de los códigos de Reed-Muller binarios, solo válida para un cierto orden en los elementos de †𝑚
2 .

Definición 22. Dada la expansión binaria 𝑖0 + 2𝑖1 + 22 𝑖2 + ⋯ + 2𝑚−2 𝑖𝑚−2 + 2𝑚−1 𝑖𝑚−1 de un cierto entero 𝑖,
con 𝑖0 , 𝑖1 , … , 𝑖𝑚−2 , 𝑖𝑚−1 ∈ {0, 1}, asociamos a 𝑖 + 1 el elemento (𝑖𝑚−1 , 𝑖𝑚−2 , … , 𝑖2 , 𝑖1 , 𝑖0 ) ∈ †𝑚
2 . Esto es,

1 ⟶ (0, 0, … , 0, 0, 0);
2 ⟶ (0, 0, … , 0, 0, 1);
3 ⟶ (0, 0, … , 0, 1, 0);
4 ⟶ (0, 0, … , 0, 1, 1);
5 ⟶ (0, 0, … , 1, 0, 0);
⋮ ⋮ ⋮
2𝑚 − 2 ⟶ (1, 1, … , 1, 0, 1);
2𝑚 − 1 ⟶ (1, 1, … , 1, 1, 0);
2𝑚 ⟶ (1, 1, … , 1, 1, 1).

Al orden inducido por esta asociación sobre †𝑚


2 lo llamaremos orden canónico de †2 .
𝑚

54 [Link]
De Arriba De La Hera

Supondremos a lo largo de todo este apartado que tenemos fijado el orden canónico para los elementos de
†𝑚2 . Además, mantendremos la notación 𝜓𝑚 introducida en el teorema 15 para la aplicación (3). Nuestro
primer objetivo pasa por estudiar las propiedades fundamentales que se tienen bajo este orden, las cuales
se recogen en los resultados siguientes, y nos permiten escribir ℛℳ(𝑟, 𝑚) como construcción de Plotkin
entre ℛℳ(𝑟, 𝑚 − 1) y ℛℳ(𝑟 − 1, 𝑚 − 1). Hecho esto, podremos obtener expresiones dependientes de 𝑟 y 𝑚
tanto para la distancia mínima como para una matriz generadora de todos los códigos de Reed-Muller
binarios (esto último solo para cuando se tiene el orden canónico) de manera recursiva.
Lema 23. Se tiene la siguiente tabla de verdad:

𝜓𝑚 (𝑥𝑚 ) = 0101010101010101 … 010101;


𝜓𝑚 (𝑥𝑚−1 ) = 001100110011001 … 0110011;
𝜓𝑚 (𝑥𝑚−2 ) = 00001111000011 … 00001111;
⋮ ⋮ ⋮
𝜓𝑚 (𝑥2 ) = 00 … 011 … 100 … 011 … 11;
𝜓𝑚 (𝑥1 ) = 00000
⏟⎵ ⎵⎵⏟⎵… 0000 11111
⎵⎵⏟ ⏟⎵ ⎵⎵⏟⎵… 1111
⎵⎵⏟ .
2𝑚−1 2𝑚−1

Lema 24. Sea 𝐹 un polinomio booleano en cuya expresión no aparece la indeterminada 𝑥1 y que, por
tanto, podemos ver como polinomio de 𝑚 − 1 indeterminadas. Si la palabra binaria asociada en este caso
es 𝒇 = 𝑓1 … 𝑓2𝑚−1 , entonces se tiene que la palabra binaria asociada a 𝐹 como polinomio booleano de 𝒫𝑚
es la concatenación 𝒇 ∗ 𝒇 = 𝑓1 … 𝑓2𝑚−1 𝑓1 … 𝑓2𝑚−1 .

Estos dos resultados son fundamentales para probar el que sigue a continuación, que es característico de
esta construcción. Las demostraciones para ambos son inmediatas: para el primero, basta construir las
tablas de verdad para el orden canónico de †𝑚2 asociadas a los monomios booleanos 𝑥𝑖 como elementos
de 𝒫𝑚 , mientras que el segundo se sigue de construir las tablas de verdad para el orden canónico de †𝑚2
asociadas al polinomio dado en el enunciado, visto como elemento tanto de 𝒫𝑚 como de 𝒫𝑚−1 , y, hecho
esto, comparar estas dos palabras para ver que la segunda concatenada consigo misma es la primera.
Teorema 25. Dado un número natural 𝑟 tal que 0 < 𝑟 < 𝑚, se cumple que

(6) ℛℳ(𝑟, 𝑚) = ℛℳ(𝑟, 𝑚 − 1) ⊛ ℛℳ(𝑟 − 1, 𝑚 − 1).

Demostración. Veamos primero que ℛℳ(𝑟, 𝑚) ⊆ ℛℳ(𝑟, 𝑚 − 1) ⊛ ℛℳ(𝑟 − 1, 𝑚 − 1). Sea 𝒙 ∈ ℛℳ(𝑟, 𝑚)
una palabra código, asociada al polinomio booleano 𝐹 de 𝑚 indeterminadas y grado menor o igual que 𝑟.
Podemos expresar 𝐹 en función de dos polinomios booleanos de 𝑚 − 1 indeterminadas 𝐺 y 𝐻 por

(7) 𝐹(𝑥1 , … , 𝑥𝑚 ) = 𝐺(𝑥2 , … , 𝑥𝑚 ) + 𝑥1 𝐻(𝑥2 , … , 𝑥𝑚 ),

donde 𝐺 tiene grado menor o igual que 𝑟 y 𝐻, grado menor o igual que 𝑟 − 1. Supongamos que 𝒙𝐺 y 𝒙𝐻 son
las palabras binarias asociadas a estos polinomios, respectivamente, los cuales estamos viendo como si
fuesen polinomios booleanos de 𝑚 − 1 indeterminadas. Es evidente, por definición, que 𝒙𝐺 ∈ ℛℳ(𝑟, 𝑚 − 1)
y 𝒙𝐻 ∈ ℛℳ(𝑟 − 1, 𝑚 − 1). Ahora, por el lema 24, se tiene que 𝒙𝐺 ∗ 𝒙𝐺 y 𝒙𝐻 ∗ 𝒙𝐻 son las palabras binarias
asociadas a nuestros polinomios booleanos, respectivamente, vistos como si tuvieran 𝑚 indeterminadas.
Aplicando entonces 𝜓𝑚 a (7), por el lema 23 se tiene, por ser este un homomorfismo de álgebras, que

𝒙 = 𝜓𝑚 (𝐹) = 𝜓𝑚 (𝐺) + 𝜓𝑚 (𝑥1 )𝜓𝑚 (𝐻) = 𝒙𝐺 ∗ 𝒙𝐺 + 𝟎 ∗ 𝒙𝐻 ∈ ℛℳ(𝑟, 𝑚 − 1) ⊛ ℛℳ(𝑟 − 1, 𝑚 − 1).

Para obtener la igualdad basta ver que ambos códigos tienen la misma dimensión. En efecto, por (5) y la
fórmula de Pascal, por como viene dada la fórmula correspondiente a la dimensión en la construcción de
Plotkin recogida en el ejemplo 7,
𝑟
𝑚 𝑚 𝑟
𝑚 𝑚−1 𝑟
𝑚−1 𝑟
𝑚−1
dim(ℛℳ(𝑟, 𝑚)) = ∑ ( ) = ( ) + ∑ ( ) = ( )+ ∑ ( )+ ∑( )
𝑘=0
𝑘 0 𝑘=1
𝑘 0 𝑘=1
𝑘 𝑘=1
𝑘−1
𝑟−1
𝑟
𝑚−1 𝑚−1
= ∑( )+ ∑ ( ) = dim(ℛℳ(𝑟, 𝑚 − 1) ⊛ ℛℳ(𝑟 − 1, 𝑚 − 1))
𝑘=0
𝑘 𝑘=0
𝑘

por las propiedades de los coeficientes binomiales y haciendo el correspondiente cambio de variable. ▪

TEMat, 3 (2019) e-ISSN: 2530-9633 55


Códigos de Reed-Muller: las matemáticas detrás de las primeras fotografías del planeta rojo

Definición 26. Dado 𝑟 un entero tal que 0 ≤ 𝑟 ≤ 𝑚, se define recursivamente ℛℳ(𝑟, 𝑚) para el orden
canónico de †𝑚2 teniendo en cuenta el caso base de la nota 17 y empleando la fórmula (6). ◀

Proposición 27. Dado 𝑟 natural tal que 0 ≤ 𝑟 ≤ 𝑚, la distancia mínima de ℛℳ(𝑟, 𝑚) es 2𝑚−𝑟 .
Demostración. Consecuencia del ejemplo 7, calculando primero esta a mano en el caso base. ▪
𝐺(𝑚 − 1, 𝑚)
Lema 28. Se tiene que 𝐺(0, 𝑚) = (1 1 ⋯ 1) y 𝐺(𝑚, 𝑚) = ( ).
0 ⋯ 01
Demostración. Ambas igualdades son consecuencia inmediata de cómo viene dada la matriz generadora
correspondiente en (4). La primera se debe a que la aplicación 𝜓𝑚 verifica que 𝜓𝑚 (1) = 𝟏. La segunda
se sigue de que 𝜓𝑚 es un homomorfismo de álgebras y el lema 23, pues tenemos de esta manera que
𝜓𝑚 (𝑥1 ⋯ 𝑥𝑚 ) = 𝜓𝑚 (𝑥1 ) ⋯ 𝜓𝑚 (𝑥𝑚 ) = 0 … 01 y el resto de polinomios que quedan tienen por palabras
características a las del código ℛℳ(𝑚 − 1, 𝑚), cuya matriz generadora es 𝐺(𝑚 − 1, 𝑚). ▪
Proposición 29. Dado 𝑟 natural tal que 0 ≤ 𝑟 ≤ 𝑚, se tiene que la matriz generadora de ℛℳ(𝑟, 𝑚) viene
dada de manera recursiva a partir de las matrices generadoras de ℛℳ(𝑟, 𝑚 − 1) y ℛℳ(𝑟 − 1, 𝑚 − 1) como
sigue:
𝐺(𝑟, 𝑚 − 1) 𝐺(𝑟, 𝑚 − 1)
(8) 𝐺(𝑟, 𝑚) = ( ).
0 𝐺(𝑟 − 1, 𝑚 − 1)
Demostración. Consecuencia del ejemplo 7, teniendo en cuenta que tenemos por caso base los dos casos
recogidos en el lema 28. ▪
Ejemplo 30. Usando la proposición 29 que acabamos de demostrar, vamos a construir 𝐺(1, 3). Esto es,
vamos a dar la matriz generadora de ℛℳ(1, 3) para el orden canónico de †𝑚
2 . De esta manera, podemos
enumerar las palabras de ℛℳ(1, 3) para este orden fácilmente. En virtud de lo que hemos visto, por
inducción, se tiene que
𝐺(1, 1) 𝐺(1, 1) 𝐺(1, 1) 𝐺(1, 1)
𝐺(1, 2) 𝐺(1, 2)
𝐺(1, 3) = ( ) = (0 0 𝐺(0, 1) 0 0 𝐺(0, 1))
0 𝐺(0, 2)
0 0 0 0 1 1 1 1
𝐺(0, 1) 𝐺(0, 1) 𝐺(0, 1) 𝐺(0, 1) 1 1 1 1 1 1 1 1
⎛ ⎞ ⎛ ⎞
0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
=⎜ ⎟=⎜ ⎟.
⎜0 0 1 1 0 0 1 1 ⎟ ⎜0 0 1 1 0 0 1 1⎟
⎝0 0 0 0 1 1 1 1 ⎠ ⎝0 0 0 0 1 1 1 1⎠

Además, por la fórmula dada en la proposición 27, se tiene que la distancia mínima es 23−1 = 22 = 4. Así,
hemos concluido que este es un código de Reed-Muller binario cuya longitud y dimensión vienen a ser
8 y 4, respectivamente, con distancia mínima 4 también. Por tanto, pese a las buenas capacidades para
corregir errores, este código no resulta ser de bajo coste. Sin embargo, es posible dar con otro código que
es lo bastante eficaz en estos dos aspectos, como se va a comprobar al final del artículo. ◀

Nota 31. Cabe resaltar que el orden dado en la definición 22 no es único. A saber, en las mismas condiciones
enunciadas, también podemos tomar el orden inducido por la asignación
1 ⟶ (0, 0, 0, … , 0, 0);
2 ⟶ (1, 0, 0, … , 0, 0);
3 ⟶ (0, 1, 0, … , 0, 0);
4 ⟶ (1, 1, 0, … , 0, 0);
5 ⟶ (0, 0, 1, … , 0, 0);
⋮ ⋮ ⋮
2𝑚 − 2 ⟶ (1, 0, 1, … , 1, 1);
2𝑚 − 1 ⟶ (0, 1, 1, … , 1, 1);
2𝑚 ⟶ (1, 1, 1, … , 1, 1).
Este orden parece más «coherente» y los resultados se cumplen exactamente igual, cambiando algunos
detalles. Sin embargo, se ha tomado el otro debido al funcionamiento interno del comando Tuples en
Mathematica, ya que este genera automáticamente el orden dado en la definición 22. ◀

56 [Link]
De Arriba De La Hera

3.2.3. Construcción geométrica


Para terminar, vamos a obtener información adicional acerca de los códigos de Reed-Muller binarios desde
un punto de vista geométrico. Para ello, se emplea el †2 -espacio vectorial †𝑚
2 como geometría finita, que
se denota por 𝐸𝐺(𝑚, 2). Obtenemos así una caracterización geométrica de ℛℳ(𝑟, 𝑚).
Definición 32. Dados un subespacio vectorial 𝑉 de †𝑚 2 y un punto 𝒂 ∈ 𝐸𝐺(𝑚, 2), una variedad afín que
pasa por 𝒂 y tiene dirección 𝑉 es la clase de equivalencia 𝒂 + 𝑉 = {𝒂 + 𝒗 ∣ 𝒗 ∈ 𝑉}. Llamaremos dimensión
de la variedad 𝒂 + 𝑉 a la del subespacio vectorial 𝑉. Si esta es 𝑘, diremos que 𝒂 + 𝑉 es una 𝑘-variedad. ◀
Observación 33. Un subconjunto de 𝐸𝐺(𝑚, 2) es una 𝑘-variedad si y solo si este es el conjunto de soluciones
para un sistema de 𝑚 − 𝑘 ecuaciones lineales sobre †2 en 𝑚 variables con rango 𝑚 − 𝑘. Esto se observa
mediante equivalencias teniendo en cuenta que, dado 𝑉 un †2 -subespacio vectorial de †𝑚 2 de dimensión
𝑘 (esto es, lo que hemos definido por código lineal binario de longitud 𝑚 y dimensión 𝑘) con 𝐻 matriz de
control, entonces 𝒙 es palabra código si y solo si se tiene que 𝒙𝐻 ⊤ = 0. ◀

Sea 𝐹 un polinomio booleano de 𝑚 indeterminadas. Fijado un orden 𝐸𝐺(𝑚, 2) = {𝒗1 , … , 𝒗𝑛 } en nuestra


geometría finita, asociamos a este, además de la correspondiente palabra binaria 𝒇, el subconjunto

2 ∣ 𝑓(𝒗) = 1} = {𝒗𝑖 ∣ 𝑓𝑖 = 1} ⊆ 𝐸𝐺(𝑚, 2).


𝑆𝐹 ≡ {𝒗 ∈ †𝑚
not.

Mediante este proceso se obtienen todos los subconjuntos de la geometría finita 𝐸𝐺(𝑚, 2). Así, diremos
que 𝐹 es el polinomio booleano asociado a 𝑆𝐹 y 𝒇 es la palabra característica asociada a 𝑆𝐹 . Nuestro
objetivo es describir los códigos de Reed-Muller binarios en términos de las variedades afines de 𝐸𝐺(𝑚, 2).
Proposición 34. Si 𝑆 ⊆ 𝐸𝐺(𝑚, 2) es una 𝑘-variedad, el correspondiente polinomio booleano asociado a
esta tiene grado 𝑚 − 𝑘. Aunque el recíproco no es cierto en general, sí que lo es para monomios booleanos.
Demostración. La 𝑘-variedad 𝑆 es el conjunto de soluciones para un sistema de 𝑚 − 𝑘 ecuaciones lineales
en 𝑚 variables con rango 𝑚 − 𝑘 por la observación 33, en las cuales podemos suponer sin pérdida de
generalidad que en la parte derecha tenemos un 1 en todos los casos. Una solución de este sistema lo es
también de la ecuación que resulta de multiplicar todos los polinomios de la parte izquierda e igualarlos
a 1. El polinomio resultante tiene grado 𝑚 − 𝑘. En conclusión, como 𝑆 es el conjunto de soluciones para
la ecuación que se sigue de igualar este a 1, el polinomio booleano asociado a 𝑆 tiene grado 𝑚 − 𝑘. El
recíproco es trivialmente cierto si se tienen monomios booleanos. Para cualquier otro caso, basta dar un
contraejemplo: existen polinomios booleanos 𝐹 de grado 𝑘 ≥ 2 tales que el subconjunto 𝑆𝐹 ⊆ 𝐸𝐺(𝑚, 2) no
es una (𝑚 − 𝑘)-variedad. Sea 𝐹 = 𝑥1 𝑥2 + 𝑥3 un polinomio booleano de 3 variables y grado 2. Por reducción
al absurdo, si 𝑆𝐹 es una variedad afín, como 𝐹 es de grado 2, esta es una recta afín. Pero
𝑆𝐹 = {(𝑥1 , 𝑥2 , 𝑥3 ) ∈ †32 | 𝑥1 𝑥2 + 𝑥3 = 1} = {(1, 1, 0), (0, 0, 1), (1, 0, 1), (0, 1, 1)},
lo cual es absurdo, ya que las rectas afines tienen exactamente dos puntos. ▪
Teorema 35. El código de Reed-Muller binario ℛℳ(𝑟, 𝑚) es el subespacio vectorial generado por todas
las palabras características asociadas a las variedades afines de 𝐸𝐺(𝑚, 2) con dimensión al menos 𝑚 − 𝑟.
Demostración. Sea 𝒙 la palabra característica asociada a una variedad afín 𝑆𝒙 de dimensión al menos
𝑚 − 𝑟. Supongamos que 𝐹𝒙 es el polinomio booleano que tiene asociada esta palabra característica. En
virtud de la proposición 34, se tiene que este polinomio booleano tiene grado menor o igual que 𝑟. Así,
por como se definen los códigos de Reed-Muller binarios, se tiene que 𝒙 ∈ ℛℳ(𝑟, 𝑚). Recíprocamente,
sea 𝐹 el polinomio booleano asociado a una palabra 𝒙𝐹 ∈ ℛℳ(𝑟, 𝑚). Sabemos que este tiene grado
𝑙
𝑠 ≤ 𝑟. Supongamos que 𝐹 = ∑𝑖=1 𝑃𝑖 , siendo 𝑃𝑖 con 𝑖 ∈ {1, … , 𝑙} los monomios booleanos en los que se
descompone 𝐹. Obsérvese que estos tienen grado deg(𝑃𝑖 ) ≤ 𝑠 para todo 𝑖 ∈ {1, … , 𝑙}. Por la linealidad de
𝑙
nuestra aplicación 𝜓𝑚 se tiene que 𝒙𝐹 = ∑𝑖=1 𝒙𝑃𝑖 es la palabra característica asociada a 𝐹. Ahora bien, por
la segunda parte de la proposición 34, cada 𝒙𝑃𝑖 es la palabra característica asociada a una variedad afín de
dimensión 𝑚 − deg(𝑃𝑖 ) ≥ 𝑚 − 𝑠. Por tanto, la palabra 𝒙𝐹 es suma de palabras características de variedades
afines con dimensión al menos 𝑚 − 𝑠 ≥ 𝑚 − 𝑟. ▪
Definición 36. Dado 𝑟 un entero tal que 0 ≤ 𝑟 ≤ 𝑚, se define geométricamente ℛℳ(𝑟, 𝑚) como el
subespacio vectorial generado por todas las palabras características asociadas a las variedades afines de
𝐸𝐺(𝑚, 2) con dimensión al menos 𝑚 − 𝑟. ◀

TEMat, 3 (2019) e-ISSN: 2530-9633 57


Códigos de Reed-Muller: las matemáticas detrás de las primeras fotografías del planeta rojo

La siguiente es una consecuencia importante del teorema 35, empleando la parte final de la proposición 20,
necesaria para entender la decodificación en los códigos de Reed-Muller binarios.
Corolario 37. Todas las palabras características asociadas a conjuntos que sean (𝑟 + 1)-variedades de
𝐸𝐺(𝑚, 2) son elementos de ℛℳ(𝑟, 𝑚)⟂ .

3.3. Métodos de codificación y decodificación en códigos de Reed-Muller binarios


Para terminar, vamos a estudiar los métodos de codificación y decodificación propios para códigos de
Reed-Muller binarios. Recogemos en una tabla los dos algoritmos que describen estos dos procesos.
Empezamos estableciendo un procedimiento de codificación basado en el resultado general siguiente
que permite obtener un orden para los elementos de †𝑚
2 tal que ℛℳ(𝑟, 𝑚) admite una matriz generadora
dada en forma estándar.
Proposición 38. Toda matriz binaria 𝐺 ∈ Mat𝑠×𝑛 (†2 ) de rango máximo 𝑠 ≤ 𝑛 puede llevarse, realizando
operaciones elementales por filas y permutaciones en las columnas, a una matriz dada en forma estándar.
Demostración. Sea 𝐺 = (𝑔𝑖𝑗 )(𝑖,𝑗)∈({1,…,𝑠}×{1,…,𝑛}) ∈ Mat𝑠×𝑛 (†2 ). Como el rango de 𝐺 coincide con el número
de filas 𝑠, necesariamente en cada una de estas ha de existir al menos un elemento no nulo.
1. Si 𝑔11 = 1, para cada 𝑖 ∈ {2, … , 𝑠}, sustituimos cada fila 𝑖-ésima de 𝐺 por la fila 𝑖-ésima de 𝐺 menos
su primera fila. De esta forma, a través de operaciones elementales por filas, transformamos 𝐺 en

1 ∗ ⋯ ∗
⎛ ⎞
(9) ⎜ 0 ⎟,
⎜ ⋮ 𝐵 ⎟
⎝ 0 ⎠

que sigue teniendo rango 𝑠, siendo 𝐵 ∈ Mat(𝑠−1)×(𝑛−1) (†2 ).


2. Si 𝑔11 = 0, ha de existir una columna 𝑗 de 𝐺 tal que 𝑔1𝑗 = 1. Permutamos las columnas 1 y 𝑗 de 𝐺
entre sí. La matriz que así obtenemos está en las condiciones descritas en el paso 1 anterior.
En cualquier caso, obtenemos una matriz del tipo (9). Estudiamos ahora la posición (2, 2) de esta nueva
matriz. Sin pérdida de generalidad, podemos suponer que 𝑔22 = 1. Así, realizando una vez más operaciones
elementales por filas, podemos llevar esta matriz a una de la forma

1 0 ∗ ⋯ ∗
⎛ ⎞
0 1 ∗ ⋯ ∗
⎜ ⎟
⎜ 0 0 ⎟,
⎜ ⋮ ⋮ 𝐷 ⎟
⎝ 0 0 ⎠

que vuelve a ser una matriz de rango 𝑠, donde 𝐷 ∈ Mat(𝑠−2)×(𝑛−2) (†2 ). Reiterando este proceso un total de
𝑠 veces, obtenemos finalmente una matriz dada en forma estándar. ▪
Corolario 39. Dado el código de Reed-Muller binario ℛℳ(𝑟, 𝑚), existe un orden para los elementos de
2 tal que ℛℳ(𝑟, 𝑚) admite una matriz generadora dada en forma estándar.
†𝑚
Demostración. Basta hacer uso de la proposición 38 con una matriz generadora, teniendo en cuenta que
permutar dos columnas de esta entre sí equivale a intercambiar la posición de dos letras en todas las
palabras del código ℛℳ(𝑟, 𝑚). Por la observación 18, esto no cambia el código de Reed-Muller binario. ▪
Definición 40. Resulta natural referirnos al orden de †𝑚 2 obtenido por aplicación del corolario 39 como
orden estándar de †𝑚
2 respecto de ℛℳ(𝑟 , 𝑚) . Este dista mucho de ser único en general. ◀

La mayor ventaja que tienen los códigos de Reed-Muller binarios es su fácil decodificación por el llamado
algoritmo de Reed. Este toma como base un método muy práctico y eficiente de decodificación para cierto
tipo de códigos lineales, del cual hemos comentado algo al comienzo. Su principal característica es que no
emplea síndromes, pues detecta directamente las posiciones donde se han producido los errores.

58 [Link]
De Arriba De La Hera

3.3.1. Algoritmo de Reed

Hay muchas formas de presentar el algoritmo de Reed, pero la mejor manera de hacerlo es en términos de
la geometría finita 𝐸𝐺(𝑚, 2). Supongamos que, fijado un orden 𝐸𝐺(𝑚, 2) = {𝒗1 , … , 𝒗𝑛 }, se ha enviado una
palabra código 𝒄 ∈ ℛℳ(𝑟, 𝑚), a partir de la cual recibimos 𝒚 = 𝒄 + 𝒆. Asumiendo que 𝜔(𝒆) ≤ 2𝑚−𝑟−1 − 1,
este tiene que ser capaz de determinar las posiciones 𝑖 ∈ {1, 2, … , 𝑛} en las que se hayan cometido errores
durante la transmisión (puesto que, conocidas estas, dado que estamos en el caso binario, la decodificación
será trivial). Para ello, reformularemos el problema empleando las 0-variedades de 𝐸𝐺(𝑚, 2).
Definición 41. Sea 𝑆 una 𝑘-variedad con palabra característica asociada 𝒙𝑆 . Recibida 𝒚 = 𝒄 + 𝒆 tal que
𝒄 ∈ ℛℳ(𝑟, 𝑚), con 𝜔(𝒆) ≤ 2𝑚−𝑟−1 − 1, la paridad de 𝑆 respecto de 𝒚 no es más que la paridad, en el sentido
binario usual (donde 0 representa par, mientras que 1, impar), de ⟨𝒙𝑆 , 𝒆⟩ ≡ 𝜔(𝒙𝑆 𝒆) ∈ †2 . ◀

En estas circunstancias, por como vienen dadas las palabras características de las 0-variedades, determinar
si la 𝑖-ésima coordenada de 𝒚 es correcta o no para cada 𝑖 ∈ {1, 2, … , 𝑛} equivale a calcular la paridad
correspondiente a la 0-variedad 𝑆 = {𝒗𝑖 }. Desafortunadamente, esta no puede ser evaluada directamente.
Afortunadamente, tenemos el siguiente resultado, que es consecuencia inmediata del corolario 37.
Proposición 42. Bajo las condiciones enunciadas, si 𝑆 es una (𝑟 + 1)-variedad con palabra característica
asociada 𝒙𝑆 , se tiene que la paridad de 𝑆 respecto de 𝒚 coincide con la de 𝜔(𝒙𝑆 𝒚).

La idea consiste en utilizar el conocimiento de las paridades respecto de 𝒚 con todas las (𝑟 + 1)-variedades
para determinar la paridad respecto de 𝒚 del resto de 𝑘-variedades, con 𝑘 ≤ 𝑟. Para ello, se procede por
«lógica mayoritaria». Esto es, dada una 𝑘-variedad 𝑆 para la que conocemos todas las paridades respecto
de 𝒚 en las (𝑘 + 1)-variedades que la contienen, diremos que su paridad respecto de 𝒚 coincide con
aquella que tienen la mayoría de estas variedades afines. El resultado que demuestra la veracidad de este
mecanismo es la segunda clave del algoritmo de Reed y requiere de otros dos resultados técnicos.
Lema 43. Para cada 𝑘-variedad 𝑆 = 𝒂 + 𝑉 de 𝐸𝐺(𝑚, 2) y cada punto 𝒃 ∈ 𝐸𝐺(𝑚, 2) − 𝑆 que consideremos,
existe una única variedad afín de dimensión 𝑘 + 1 que contiene tanto a 𝑆 como a 𝒃.
Lema 44. Cada 𝑘-variedad de 𝐸𝐺(𝑚, 2), con 𝑘 < 𝑚, está contenida exactamente en 2𝑚−𝑘 − 1 variedades
afines de dimensión 𝑘 + 1.

El primero de estos dos es un análogo al quinto postulado de Euclídes para nuestra geometría finita. Es,
por tanto, un resultado de existencia y unicidad, cuya prueba es similar a la que se da para este en un curso
de geometría elemental. El segundo, por otro lado, se sigue del anterior haciendo un rápido argumento de
combinatoria entre variedades afines.
Teorema 45 (criterio de la lógica mayoritaria, CLM). Bajo estas condiciones, dada una 𝑘-variedad 𝑆,
con 𝑘 ≤ 𝑟, se tiene que la paridad de 𝑆 respecto de 𝒚 coincide con la que tienen la mayoría de las
(𝑘 + 1)-variedades que contienen a 𝑆.
Demostración. Por el lema 44, tenemos que 𝑆 está contenida en 2𝑚−𝑘 − 1 variedades afines de dimensión
𝑘 + 1, donde cada una de estas viene determinada de forma unívoca dando un punto exterior a 𝑆 en virtud
del lema 43. Por hipótesis, dado que el número de errores en 𝒚 no supera los 2𝑚−𝑟−1 − 1, existen a lo más
2𝑚−𝑟−1 − 1 variedades afines de dimensión 𝑘 + 1 que contienen a 𝑆 determinadas por los puntos exteriores
correspondientes a una coordenada incorrecta de 𝒚. El resto de las (𝑘 + 1)-variedades tienen la propiedad
de que no contienen puntos exteriores a 𝑆 correspondientes a coordenadas erróneas de 𝒚 por la unicidad
probada en el lema 43. En efecto, si alguna de estas variedades afines contiene algún punto exterior a 𝑆
correspondiente a una coordenada errónea de 𝒚, necesariamente debería ser una de las anteriores debido
a esta unicidad. Así, por la definición 41, estas tienen la misma paridad respecto de 𝒚 que 𝑆. En resumen,
por todo lo mencionado, el número de (𝑘 + 1)-variedades con la misma paridad respecto de 𝒚 que 𝑆 es al
menos de (2𝑚−𝑘 − 1) − (2𝑚−𝑟−1 − 1). El resultado a partir de aquí se debe a que trivialmente se cumple la
desigualdad 2𝑚−𝑘 − 2𝑚−𝑟−1 ≥ 2𝑚−𝑟−1 , pues 𝑘 ≤ 𝑟. ▪
Ejemplo 46. Supongamos recibida la palabra 01100001, codificada mediante el orden canónico de †32
en ℛℳ(1, 3), donde se ha producido un error. Vamos a decodificarla mediante el algoritmo de Reed.
Primero calculamos la paridad de los planos afines de 𝐸𝐺(3, 2) = {𝒗1 , 𝒗2 , 𝒗3 , 𝒗4 , 𝒗5 , 𝒗6 , 𝒗7 , 𝒗8 } empleando
la proposición 42. Se tiene la tabla siguiente:

TEMat, 3 (2019) e-ISSN: 2530-9633 59


Códigos de Reed-Muller: las matemáticas detrás de las primeras fotografías del planeta rojo

plano palabra paridad plano palabra paridad


{𝒗1 , 𝒗2 , 𝒗3 , 𝒗4 } 11110000 par {𝒗2 , 𝒗3 , 𝒗5 , 𝒗8 } 01101001 impar
{𝒗1 , 𝒗2 , 𝒗5 , 𝒗6 } 11001100 impar {𝒗2 , 𝒗3 , 𝒗6 , 𝒗7 } 01100110 par
{𝒗1 , 𝒗2 , 𝒗7 , 𝒗8 } 11000011 par {𝒗2 , 𝒗4 , 𝒗5 , 𝒗7 } 01011010 impar
{𝒗1 , 𝒗3 , 𝒗5 , 𝒗7 } 10101010 impar {𝒗2 , 𝒗4 , 𝒗6 , 𝒗8 } 01010101 par
{𝒗1 , 𝒗3 , 𝒗6 , 𝒗8 } 10100101 par {𝒗3 , 𝒗4 , 𝒗5 , 𝒗6 } 00111100 impar
{𝒗1 , 𝒗4 , 𝒗5 , 𝒗8 } 10011001 impar {𝒗3 , 𝒗4 , 𝒗7 , 𝒗8 } 00110011 par
{𝒗1 , 𝒗4 , 𝒗6 , 𝒗7 } 10010110 par {𝒗5 , 𝒗6 , 𝒗7 , 𝒗8 } 00001111 impar

Ahora, por el criterio de la lógica mayoritaria, se calculan las paridades correspondientes a las rectas afines.
Estas son las siguientes:

recta paridad recta paridad recta paridad recta paridad


{𝒗1 , 𝒗2 } par {𝒗2 , 𝒗3 } par {𝒗3 , 𝒗5 } impar {𝒗4 , 𝒗8 } par
{𝒗1 , 𝒗3 } par {𝒗2 , 𝒗4 } par {𝒗3 , 𝒗6 } par {𝒗5 , 𝒗6 } impar
{𝒗1 , 𝒗4 } par {𝒗2 , 𝒗5 } impar {𝒗3 , 𝒗7 } par {𝒗5 , 𝒗7 } impar
{𝒗1 , 𝒗5 } impar {𝒗2 , 𝒗6 } par {𝒗3 , 𝒗8 } par {𝒗5 , 𝒗8 } impar
{𝒗1 , 𝒗6 } par {𝒗2 , 𝒗7 } par {𝒗4 , 𝒗5 } impar {𝒗6 , 𝒗7 } par
{𝒗1 , 𝒗7 } par {𝒗2 , 𝒗8 } par {𝒗4 , 𝒗6 } par {𝒗6 , 𝒗8 } par
{𝒗1 , 𝒗8 } par {𝒗3 , 𝒗4 } par {𝒗4 , 𝒗7 } par {𝒗7 , 𝒗8 } par

De la misma forma, si obtenemos la paridad de cada punto, se observa que el único impar es el 𝒗5 . En
definitiva, concluimos que el único error dado durante la transmisión de información se encuentra en la
quinta posición. Por tanto, decodificamos la palabra recibida como 01101001. ◀

Dados los parámetros 𝑟 y 𝑚 del código de Reed-Muller binario, calculamos la matriz generadora dada en
forma estándar con la que vamos a trabajar. Hecho esto, para cada palabra 𝒙 a codificar, procedemos a su
codificación tal y como ya se explicó en su momento al comienzo del artículo.

Algoritmo 1 (Cálculo de la matriz estándar). Algoritmo 2 (Codificación).


1: subrutina MATRIZ ESTÁNDAR(𝑟,𝑚) 1: subrutina CODIFICAR(𝐺,𝒙)
2: calcular matriz generadora usando la proposición 29 2: devolver el producto 𝒙𝐺
3: si la matriz ya está en forma estándar, entonces 3: fin subrutina
4: no hacer nada
5: en caso contrario
6: aplicar procedimiento de la proposición 38
7: fin si
8: devolver la matriz 𝐺 dada en forma estándar
9: fin subrutina

Dado el código de Reed-Muller binario ℛℳ(𝑟, 𝑚), recibida una palabra 𝒚 arbitraria, se describen los pasos
a seguir para su decodificación mediante el algoritmo de Reed.
Algoritmo 3 (Decodificación).
1: subrutina DECODIFICAR(𝒚,𝑟,𝑚)
2: si la palabra 𝒚 tiene más de 2𝑚−𝑟−1 − 1 errores, entonces
3: no se puede decodificar de manera única
4: en caso contrario
5: calcular la paridad respecto de 𝒚 para las (𝑟 + 1)-variedades de 𝐸𝐺(𝑚, 2) por la proposición 42
6: para 𝑘 desde 𝑟 hasta 0 hacer
7: calcular la paridad respecto de 𝒚 para todas las 𝑘-variedades de 𝐸𝐺(𝑚, 2) usando el CLM
8: fin para
9: corregir las coordenadas de 𝒚 correspondientes a todas las 0-variedades impares respecto de 𝒚
10: devolver la palabra corregida
11: fin si
12: fin subrutina

60 [Link]
De Arriba De La Hera

Referencias
[1] DE ARRIBA DE LA HERA, Andoni. Códigos de Reed-Muller. Trabajo de Fin de Grado. Zientzia eta
Teknologia Fakultatea-Facultad de Ciencia y Tecnología (ZTF-FCT), Universidad del País Vasco/Euskal
Herriko Unibertsitatea (UPV/EHU), 2016. URL: [Link]
[2] IRANZO AZNAR, María Jesús y PÉREZ MONASOR, Francisco. LECCIONES de Elementos de Álgebra.
Aplicaciones. Facultad de Matemáticas, Universidad de Valencia. URL: [Link]
lecciones_de_codigos.pdf.
[3] MULLER, David Eugene. «Application of Boolean algebra to switching circuit design and to error
detection». En: Transactions of the IRE Professional Group on Electronic Computers EC-3.3 (sep. de
1954), págs. 6-12. ISSN: 2168-1740. [Link]
[4] REED, Irving Stoy. «A class of multiple-error-correcting codes and the decoding scheme». En: Transac-
tions of the IRE Professional Group on Information Theory 4.4 (1954), págs. 38-49. ISSN: 2168-2690.
[Link]
[5] SHANNON, Claude Elwood. «A mathematical theory of communication». En: The Bell System Technical
Journal 27 (1948), págs. 379-423, 623-656. ISSN: 0005-8580. [Link]
7305.1948.tb01338.x.

A. Anexo: algunos programas en Mathematica


Para terminar, se incluye el archivo con los programas en Mathematica (junto con un PDF generado a
partir de este) que son útiles para llevar a cabo la codificación y decodificación en códigos de Reed-Muller
binarios. En particular, estamos interesados en el código ℛℳ(1, 5) utilizado por la NASA cuando se llevo a
cabo la misión del Mariner 9 (véase el ejemplo 47). Todos estos programas tienen como objetivo realizar los
procedimientos de codificación y decodificación de manera eficaz para dicho código en especial, aunque
resulten válidos para todos los de la forma ℛℳ(1, 𝑚) con 𝑚 número natural arbitrario. Ambos archivos se
pueden encontrar aquí:
Programa en Mathematica: [Link] ([Link])
Código en PDF: [Link] ([Link])
Ejemplo 47. Vamos a aplicar estos algoritmos para comprobar que ℛℳ(1, 5) es el código de Reed-Muller
binario que empleó la sonda Mariner 9 para obtener las primeras fotografías de la superficie marciana.
Lo primero es observar que este es un código lineal de longitud 32. Calculamos una matriz generadora
escribiendo en Mathematica la instrucción correspondiente, obteniendo así

que tiene rango máximo 6 (coincide con el número de filas). Por consiguiente, esta es también la dimensión
del código. La distancia mínima se obtiene a partir de la fórmula dada en la proposición 27, y es 16. En
definitiva, este es el código de Reed-Muller binario mencionado al comienzo del artículo. Vamos a hacer
un ejemplo de decodificación. Supongamos que se está enviando información codificada en ℛℳ(1, 5)
mediante el orden estándar de †52 y que recibimos la palabra 10011101010001101110010010001001 que
no tiene más de siete errores. Vamos a decodificar esta mediante el algoritmo de Reed. Escribiendo la
instrucción correspondiente en Mathematica, obtenemos la palabra 10010001111001100110011010011001
(obsérvese que hemos sido capaces de corregir los siete errores que se habían dado durante la transmisión
de información). Así, como se sabe que esta ha sido codificada mediante una matriz dada en forma
estándar y nuestro código es de dimensión 6, como ya hemos comprobado, la palabra original enviada es
100100. ◀

TEMat, 3 (2019) e-ISSN: 2530-9633 61


Distribuciones tipo fase en un estudio de fiabilidad

� Christian José Acal González Resumen: Hoy en día, el análisis de fiabilidad está presente en cualquier área
Departamento de Estadística e de conocimiento donde se esté interesado en comprobar el tiempo de vida (o,
Investigación Operativa, Universidad de análogamente, el tiempo de fallo) de un sistema dado. A modo de ejemplo, esta
Granada, e Instituto de Matemáticas de disciplina es ampliamente utilizada en estudios de ingeniería donde el objetivo
la Universidad de Granada (IEMath-GR) fundamental es garantizar la calidad y el buen funcionamiento de los aparatos. La
chracal@[Link] rama encargada de estudiar y analizar los tiempos de fallos de estos sistemas es
la estadística. La estadística pretende ajustar los datos experimentales medidos
Juan Eloy Ruiz Castro en estos sistemas mediante el uso de distribuciones de probabilidad. Un enfoque
relativamente nuevo, y que cada vez está teniendo más importancia en la actua-
Departamento de Estadística e
lidad, es a través de las distribuciones tipo fase, cuya flexibilidad y propiedades
Investigación Operativa, Universidad de
hacen que esta clase de distribuciones sea una buena candidata para obtener un
Granada, e Instituto de Matemáticas de ajuste más riguroso.
la Universidad de Granada (IEMath-GR)
jeloy@[Link]
Abstract: Nowadays, the reliability analysis is present in any knowledge area where
one is interested in checking the lifetime (or, similarly, the failure time) of a given
Ana María Aguilera del Pino
system. As an example, this discipline is widely used in engineering studies where
Departamento de Estadística e the main objective is to ensure the quality and the appropriate operation of the
Investigación Operativa, Universidad de devices. The branch of knowledge responsible for studying and analyzing the
Granada, e Instituto de Matemáticas de failure times of these systems is statistics. The purpose of statistics is to fit the
la Universidad de Granada (IEMath-GR) experimental data measured in these systems through the use of probability distri-
aaguiler@[Link] butions. A relatively new approach, which is having more significance in currently,
is through phase type distributions, whose flexibility and properties make them
good candidates to obtain a better fit.

Palabras clave: fiabilidad, tiempos de fallo, distribuciones de probabilidad,


análisis gráfico, distribución tipo fase, ajuste estadístico.
MSC2010: 62J05, 62N05, 62P99.
Recibido: 28 de noviembre de 2018.
Aceptado: 26 de abril de 2019.

Agradecimientos: Los autores agradecen el apoyo del Ministerio de Economía y Competitividad de España en el
proyecto MTM2017-87708-P, también respaldado por el programa FEDER.

Referencia: ACAL GONZÁLEZ, Christian José; RUIZ CASTRO, Juan Eloy y AGUILERA DEL PINO, Ana María. «Dis-
tribuciones tipo fase en un estudio de fiabilidad». En: TEMat, 3 (2019), págs. 63-74. ISSN: 2530-9633. URL:
[Link]

cb Este trabajo se distribuye bajo una licencia Creative Commons Reconocimiento 4.0 Internacional
[Link]
Distribuciones tipo fase en un estudio de fiabilidad

1. Introducción
El análisis de fiabilidad es una materia multidisciplinar que ha sido desarrollada en diferentes contextos
dentro de la ingeniería (eléctrica, mecánica, química, civil) y que tiene múltiples aplicaciones, entre otras
áreas, en supervivencia y medicina. Desde el punto de vista general, la fiabilidad comprende el conjunto
de operaciones utilizadas para el buen funcionamiento y seguridad de los sistemas (un sistema puede
ser una red eléctrica, cualquier electrodoméstico, un coche, un ser vivo, etc.). Estos sistemas funcionan
un determinado tiempo influenciados por ciertas condiciones ambientales específicas que no se pueden
controlar y sometidos a un continuo desgaste. El conjunto de todas estas condiciones o variables afecta al
funcionamiento de los sistemas, provocando que dichos sistemas fallen de manera aleatoria. A raíz de esto,
y haciendo hincapié en que la ocurrencia de fallos se produce aleatoriamente, la teoría de la probabilidad
juega un papel determinante en el cálculo de la fiabilidad de componentes y sistemas. Está claro que todas
las unidades de un cierto tipo, fabricadas y operando en condiciones similares, no fallarán a la vez, sino
que habrá diferencias entre los tiempos de fallo. Consecuentemente, estos tiempos de fallo obedecen a
distribuciones de probabilidad que pueden ser o no conocidas, y que permiten calcular la probabilidad de
fallo de las unidades. Se debe destacar que en un estudio de fiabilidad existen múltiples ocasiones en las
que el objetivo no es estudiar los tiempos de fallo en sí, sino otra variable que, aunque esté altamente
relacionada con los tiempos de fallo, trate un problema distinto. Por ejemplo, en los artículos de Long et
al. [8] y Luo et al. [9] se realiza un estudio de los datos experimentales correspondientes al voltaje de fallo
de un tipo de memorias concretas (estos aparatos dejan de funcionar tras aplicarles un cierto voltaje, pero
paralelamente han estado funcionando un determinado tiempo).
En consecuencia, la estadística y, más concretamente, la probabilidad proporcionan una serie de he-
rramientas para el cálculo y la mejora de la fiabilidad y suministran una definición cuantitativa de la
misma. Aunque existen distintas definiciones para aclarar este concepto, la definición usual es la que sigue:
«Probabilidad de que un dispositivo efectuará la función para la que fue construido hasta un momento
dado bajo condiciones específicas de uso» [4]. Por lo tanto, podemos concluir que la fiabilidad es la
probabilidad de que un sistema se comporte adecuadamente durante un tiempo establecido y, en cierto
sentido, podemos verla como una medida de calidad: cuanto más tiempo funcione, mejor. Sin embargo,
dejando a un lado los conceptos típicos de ingeniería para centrarnos en la teoría de la probabilidad, que
es lo que realmente nos compete, saber qué distribución probabilística siguen los tiempos de fallo nos
permite, en primer lugar, determinar las principales características de operación de dicho sistema y, en
segundo lugar, conocer cómo funcionará el sistema en el futuro.
En muchos campos donde se hace uso de la estadística aplicada, la distribución normal es el punto de
partida natural para modelizar cualquier variable aleatoria de interés. La razón fundamental de su uso se
debe a las buenas propiedades que presenta esta distribución (es simétrica, unimodal, asintótica, etc.)
y por proporcionar la base para la estadística inferencial clásica por su relación con el teorema central
del límite. Sin embargo, en el ámbito de la fiabilidad, donde es habitual trabajar con variables que toman
valores positivos, la distribución normal tiene menor interés. En la década de los 50, Epstein y Sobel
empezaron a trabajar con la distribución exponencial como modelo probabilístico para analizar el tiempo
de vida de unos dispositivos [6]. Una razón fundamental de la popularidad e importancia de la distribución
exponencial para su uso en el ámbito de la fiabilidad (probablemente la más usada) es su simplicidad y
versatilidad. Por ejemplo, esta distribución es muy útil cuando los datos que se utilizan son escasos, cuando
se estudian sistemas en régimen estacionario (el tiempo de funcionamiento crece indefinidamente) o
cuando se tienen sistemas complejos en los cuales no es fácil aplicar técnicas analíticas. Sin embargo, la
distribución exponencial se ha quedado «corta» en la actualidad y cada vez es más común utilizar otros
tipos de distribuciones, como pueden ser la distribución de Weibull, la distribución gamma, la distribución
de valores extremos, la distribución log-normal, etc. No obstante, y a pesar de que estas distribuciones son
bien conocidas y ampliamente utilizadas de manera exitosa en diversas ramas de la ciencia, la ingeniería
y la medicina (por ejemplo, y para seguir con los dispositivos mencionados por Long et al. [8] y Luo
et al. [9], en el artículo de Pan et al. [12] se emplea la distribución de Weibull para modelizar los datos
experimentales medidos en estos tipos de aparatos), a veces el ajuste que se obtiene no es del todo preciso
y, en consecuencia, es necesario plantearse un enfoque diferente que mejore la rigurosidad del ajuste. Bajo
este contexto, en los últimos años se ha venido utilizando con bastante frecuencia un enfoque basado en
las distribuciones tipo fase, cuya flexibilidad y propiedades hacen que sean unas buenas candidatas para

64 [Link]
Acal González, Ruiz Castro, Aguilera del Pino

obtener un mejor ajuste de los datos experimentales. A modo de ejemplo, y continuando con el tipo de
memorias mencionadas a lo largo de la introducción, en el artículo de Acal et al. [1] se demuestra tras un
estudio pormenorizado que el ajuste que se obtiene con las distribuciones tipo fase es más riguroso que el
que se logra con la distribución de Weibull.
Las distribuciones tipo fase (PHD), las cuales fueron introducidas y analizadas en detalle por Neuts [10, 11],
constituyen una clase de distribuciones no negativas que hacen posible modelizar problemas complejos
con resultados bien estructurados gracias a su forma algebraico-matricial. Debido a sus valiosas propie-
dades, muchas variedades de esta clase de distribuciones han sido consideradas en diversas ramas del
conocimiento y aplicadas en estudios de fiabilidad, procesos de renovación, teoría de colas y análisis de
supervivencia [13, 14]. Casos particulares de las distribuciones tipo fase son las distribuciones exponencial,
Erlang, Erlang generalizada, hipergeométrica y coxiana, entre otras. De hecho, no solo algunas distribu-
ciones de probabilidad muy conocidas son distribuciones tipo fase, sino que cualquier distribución de
probabilidad no negativa puede ser aproximada tanto como se desee mediante una PHD.
Finalmente, una vez que tenemos controlada la distribución, podemos extraer las principales propiedades
del sistema a partir de las funciones que caracterizan a una distribución (función de densidad, función de
distribución, etc.). En un análisis de fiabilidad habitual destaca el papel que juegan la función de fiabilidad
y la función de riesgo (también conocida como función razón de fallo), y la aparición de datos censurados,
que son aquellos tiempos de fallo de algunas unidades experimentales que se desconocen por algún
motivo (por ejemplo, en un estudio de medicina donde estamos interesados en ver cómo afecta la dosis
de un nuevo medicamento en el tiempo de vida de pacientes con cáncer, si un paciente deja el estudio,
ya sea porque se ha mudado de ciudad o porque no quiere seguir perteneciendo a dicho estudio, este
valor será desconocido y, por tanto, censurado). Aunque en el presente artículo no vamos a tratar los datos
censurados, hay que tener en cuenta que es un concepto muy común en estos tipos de estudios y que
deben ser tratados de manera correcta.
Este artículo está estructurado como sigue. En la sección 2 se describen las funciones típicas de un estudio
de fiabilidad y las expresiones que adoptan estas funciones en cada una de las distribuciones más comunes,
además de detallar una técnica ampliamente utilizada para ajustar distribuciones de probabilidad a los
tiempos de fallo. La sección 3 está centrada en detallar y en definir brevemente las propiedades más
importantes de las distribuciones tipo fase. Un ejemplo de simulación con el paquete estadístico R, donde
se discute la modelización de distintas distribuciones a los datos simulados, se puede ver en la sección 4.
Finalmente, tras las secciones mencionadas, figura un apartado dedicado a las conclusiones obtenidas en
el presente trabajo.

2. Metodología básica en fiabilidad


En esta sección se definen una serie de medidas que se utilizan en el contexto de la fiabilidad y análisis de
supervivencia. Se debe notar que para estas definiciones se va a considerar el tiempo de fallo del sistema,
pero son extensibles para cualquier otra variable que esté relacionada con el tiempo de fallo.

2.1. Función de distribución, fiabilidad y razón de fallo en fiabilidad


La función de distribución de una variable aleatoria 𝑇, definida sobre el eje real positivo, se define como la
función 𝐹(𝑡) = [𝑇 ≤ 𝑡]. Asimismo, su función de densidad se define como

[𝑡 ≤ 𝑇 < 𝑡 + Δ𝑡] d𝐹(𝑡)


𝑓(𝑡) = lím = .
Δ𝑡→0 Δ𝑡 d𝑡
Dado que la variable aleatoria 𝑇 representa el tiempo de fallo (tiempo de vida), la función de fiabilidad
representa la probabilidad de que no ocurra un fallo en el intervalo (0, 𝑡) o, lo que es lo mismo, la probabi-
lidad de que un sistema sobreviva en el intervalo (0, 𝑡), de ahí que también sea conocida como función de
supervivencia. Se representa como sigue:

𝑅(𝑡) = [𝑇 > 𝑡] = 1 − 𝐹(𝑡).

TEMat, 3 (2019) e-ISSN: 2530-9633 65


Distribuciones tipo fase en un estudio de fiabilidad

Cabe recalcar que la gráfica de esta función es decreciente, ya que es la complementaria de la función de
distribución; se inicia en 𝑅(0) = 1, y tiende a cero cuando 𝑡 → ∞. Otra medida que es muy utilizada en
este ámbito es el tiempo medio de fallo, que se define como la esperanza de la variable,
∞ ∞
[𝑇] = ∫ 𝑡𝑓(𝑡) d𝑡 = ∫ 𝑅(𝑡) d𝑡.
0 0

Esta relación se obtiene aplicando el teorema de Fubini, como se puede ver a continuación:
∞ ∞ ∞ ∞ ᵆ ∞ ᵆ ∞
∫ 𝑅(𝑡) d𝑡 = ∫ ∫ 𝑓(𝑢) d𝑢 d𝑡 = ∫ ∫ 𝑓(𝑢) d𝑡 d𝑢 = ∫ 𝑓(𝑢) ∫ d𝑡 d𝑢 = ∫ 𝑢𝑓(𝑢) d𝑢.
0 0 𝑡 0 0 0 0 0

Por otro lado, la función razón de fallo o razón de riesgo se interpreta como la razón instantánea de fallo, y
se define a partir de la siguiente relación:
[𝑡 ≤ 𝑇 < 𝑡 + Δ𝑡 ∣ 𝑇 > 𝑡] 𝑓(𝑡)
ℎ(𝑡) = lím = .
Δ𝑡→0 Δ𝑡 𝑅(𝑡)
Asimismo, dado que la función de densidad se puede expresar en términos de la función de fiabilidad, la
expresión anterior se puede escribir
d𝑅(𝑡)/ d𝑡
ℎ(𝑡) = − ,
𝑅(𝑡)
e integrando esta ecuación diferencial en el intervalo (0, 𝑡) con la condición inicial 𝑅(0) = 1 se tiene que
𝑅(𝑡) = e−𝐻(𝑡) ,
siendo
𝑡
𝐻(𝑡) = ∫ ℎ(𝑥) d𝑥
0
la tasa de fallo acumulada hasta el tiempo 𝑡. Esta relación muestra que la función de fallo caracteriza la
distribución.

2.2. Expresiones de algunas distribuciones en fiabilidad


En el cuadro 1 se pueden observar las expresiones de las medidas definidas en el apartado anterior que
adoptan algunas de las distribuciones más comunes en un estudio de fiabilidad. Además, se indican los
límites de cada uno de los parámetros de los que depende cada una de las distribuciones definidas, donde
𝑡 > 0 en todas las distribuciones salvo en la log-normal, que satisface 𝑡 ∈ ’.
Como se comentó en la introducción del presente artículo, además de estas distribuciones, existen otras
distribuciones de probabilidad que tienen un rol importante en el campo de la fiabilidad. Sin embargo,
como el objetivo no es estudiar todas las distribuciones que se emplean para modelizar los tiempos de fallo,
simplemente se procede a mencionar el nombre de estas distribuciones: Erlang, gamma, chi-cuadrado,
Pareto, etc.

2.3. Análisis gráfico


Cuando la estimación de los parámetros utilizando el método de máxima verosimilitud presenta serias
dificultades de cálculo, como es el caso de la distribución de Weibull, se emplea un análisis gráfico que
facilita el ajuste de un conjunto de datos observados. Esta técnica gráfica es una técnica paramétrica que
se basa en el principio de mínimos cuadrados, y suele ser aplicada debido a su sencillez y porque permite
una primera idea gráfica del ajuste.
Grosso modo, lo que se hace es construir una nube de puntos a partir de los tiempos de fallo observados y
a este conjunto de datos se le ajusta una recta por el criterio de mínimos cuadrados. La forma final de la
nube de puntos dependerá de la distribución de probabilidad que se considere. Si el ajuste es bueno, lo
que se valora en función del coeficiente de determinación, se acepta que el conjunto de valores observados
sigue la distribución considerada y se calculan los parámetros de dicha distribución a partir de la recta
estimada por mínimos cuadrados.

66 [Link]
Acal González, Ruiz Castro, Aguilera del Pino

Cuadro 1: Expresiones que adoptan las distribuciones consideradas.

Exponencial Weibull Valores extremos (Gumbel) Log-normal

ln(𝑡) − 𝜇
𝜙( ),
1 − e−𝛾e
𝛽 𝛽𝑡
𝐹(𝑡) 1 − e−𝜆𝑡 1 − e−(𝜆𝑡) 𝜎
con 𝜙 f. distr. 𝑁(0, 1)

1 (ln(𝑡)−𝜇)2

𝛽𝜆(𝜆𝑡)𝛽−1 e−(𝜆𝑡) (𝛽𝛾)e𝛽𝑡−𝛾e
𝛽 𝛽𝑡
𝑓(𝑡) 𝜆e−𝜆𝑡 e 2𝜍2

𝜎𝑡√2π

ln(𝑡) − 𝜇
e−𝛾e
𝛽 𝛽𝑡
𝑅(𝑡) e−𝜆𝑡 e−(𝜆𝑡) 1 − 𝜙( )
𝜎
1 1 ∞
Γ ( + 1), 𝜍2
∫ e−𝛾e d𝑡
𝛽𝑡
[𝑇] 1/𝜆 𝜆 𝛽 e𝜇+ 2

con Γ f. gamma 0

ℎ(𝑡) 𝜆 (𝛽𝜆)(𝜆𝑡)𝛽−1 𝛽𝛾e𝛽𝑡 𝑓(ln(𝑡))/𝑅(ln(𝑡))

Parám. 𝜆>0 𝜆 > 0, 𝛽 > 0 𝛾 = 𝜆𝛽 , 𝜆 > 0, 𝛽 > 0 𝜇 ∈ ’, 𝜎 > 0

2.3.1. Análisis gráfico en la distribución exponencial


Puesto que el análisis estadístico habitual que se utiliza en datos experimentales correspondientes a los
tiempos de fallo de un sistema es mediante la distribución exponencial, se va a explicar cómo se aplica
esta técnica y cómo se obtienen los parámetros de esta distribución en la práctica. Esto se puede extender
para el caso de considerar otra distribución cualquiera.
Se parte de la función de fiabilidad de la distribución exponencial,

𝑅(𝑡) = e−𝜆𝑡 , 𝑡 ≥ 0, 𝜆 > 0,

y se opera en esta expresión hasta conseguir una relación lineal. En consecuencia, si se toman logaritmos
neperianos, queda
ln(𝑅(𝑡)) = −𝜆𝑡, 𝑡 ≥ 0, 𝜆 > 0,
o lo que es lo mismo,
ln(1 − 𝐹(𝑡)) = −𝜆𝑡, 𝑡 ≥ 0, 𝜆 > 0.
Teniendo en cuenta esta última expresión, si despejamos el signo negativo que precede a 𝑡, la nube de
puntos que hay que representar tiene la siguiente forma:

{(𝑡𝑖 , − ln(1 − 𝑝𝑖 )), 𝑖 = 1, 2, … , 𝑛},

siendo 𝑡𝑖 los tiempos de fallo observados (ordenados de menor a mayor) y 𝑝𝑖 los valores que toma la función
de distribución empírica en los 𝑡𝑖 . En la literatura se han introducido varias elecciones posibles para estos
valores 𝑝𝑖 , como, por ejemplo, cualquiera de las tres aproximaciones siguientes, siendo la segunda opción
la más utilizada:
𝑖 𝑖 − 0,5 𝑖
𝑝𝑖 = , 𝑝𝑖 = , 𝑝𝑖 = .
𝑛 𝑛 𝑛+1
A este conjunto de datos se le ajusta una recta del tipo 𝑦 = 𝑎𝑥 + 𝑏 por el principio de mínimos cuadrados
y se estudia el ajuste. Si el ajuste es bueno, se acepta que el conjunto de valores observados sigue una
distribución exponencial y, finalmente, a partir de la ecuación de la recta, se calcula la estimación del
parámetro de la distribución, el cual en este caso coincide con la pendiente de la recta, es decir,
𝜆 ̂ = 𝑎.

TEMat, 3 (2019) e-ISSN: 2530-9633 67


Distribuciones tipo fase en un estudio de fiabilidad

2.3.2. Análisis gráfico en otras distribuciones


Extrapolando la teoría explicada en el anterior apartado, se pueden estimar los parámetros de cualquier
distribución que se desee. En la cuadro 2 figuran las estimaciones de los parámetros de las distribuciones
detalladas en el cuadro 1 aplicando la técnica del análisis gráfico, así como las nubes de puntos que hay
que suponer en cada caso para calcular dichas estimaciones.

Cuadro 2: Estimaciones y nubes de puntos para cada distribución considerada.

Nube de puntos Estimación de parámetros a partir de 𝑦 = 𝑎𝑥 + 𝑏

Weibull {(ln(𝑡𝑖 ), ln(− ln(1 − 𝑝𝑖 )))} 𝛽 ̂ = 𝑎; 𝜆 ̂ = e𝑏/𝑎

Valores extremos {(𝑡𝑖 , ln(− ln(1 − 𝑝𝑖 )))} 𝛽 ̂ = 𝑎; 𝛾 ̂ = e𝑏


1 𝑏
Log-normal {(ln(𝑡𝑖 ), 𝜙−1 (𝑝𝑖 ))} 𝜎̂ = ; 𝜇̂ = −
𝑎 𝑎

3. Distribuciones tipo fase


Como se ha comentado en la introducción del presente artículo, las distribuciones tipo fase fueron
introducidas por Neuts en 1975. Estas distribuciones pueden ser definidas en el ámbito de cadenas
de Markov y poseen propiedades interesantes (como, por ejemplo, la falta de memoria parcial o las
propiedades de clausura) que hacen que dichas distribuciones sean consideradas en diversas ramas de la
ciencia o ingeniería.
Una PHD se define como la distribución del tiempo hasta la absorción en una cadena de Markov con
un estado o clase absorbente. El espacio de estados viene dado por un número general 𝑚 de estados
transitorios, donde la probabilidad de estar inicialmente en el estado 𝑖 es 𝛼𝑖 , y un estado absorbente, 𝑚 + 1
(se considera que la cadena inicialmente no está en el estado absorbente, 𝛼𝑚+1 = 0). Además, la intensidad
𝑚+1
de transición del estado 𝑖 al estado 𝑗 viene dada por 𝑞𝑖𝑗 para 𝑖 ≠ 𝑗, y si 𝑖 = 𝑗 entonces 𝑞𝑖𝑖 = − ∑𝑗=1,𝑖≠𝑗 𝑞𝑖𝑗 .
Una distribución tipo fase se representa, considerando solo los estados transitorios de la cadena de Markov
asociada, a través del par (𝜶, 𝑻), siendo 𝜶 = (𝛼1 , … , 𝛼𝑚 ) y 𝑻 = (𝑞𝑖𝑗 )𝑖,𝑗=1,…,𝑚 .
La función de distribución de una PHD está dada por

𝐹(𝑡) = 1 − 𝜶e𝑻𝑡 𝒆, 𝑡 ≥ 0,

donde 𝒆 es un vector columna de unos con el orden apropiado. A partir de esta definición se pueden
obtener de forma inmediata las distintas expresiones definidas en la sección 2.1. Sin embargo, y como
se utilizarán en la siguiente sección, se procede a mostrar seguidamente la expresión de la función de
fiabilidad y de la función razón de fallo, respectivamente, para mayor claridad:
𝜶e𝑻𝑡 𝑻 0
𝑅(𝑡) = 𝜶e𝑻𝑡 𝒆, 𝑡 ≥ 0, y ℎ(𝑡) = , 𝑡 ≥ 0,
𝜶e𝑻𝑡 𝒆
siendo 𝑻 0 = −𝑻𝒆 el vector de intensidad de transición desde un estado transitorio hasta un estado de
absorción.
Las distribuciones tipo fase son importantes no solo por su estructura, sino también por las buenas
propiedades que permiten la aplicabilidad e interpretación de los resultados de manera sencilla. Las
propiedades de estas distribuciones han sido estudiadas exhaustivamente en los últimos años. De hecho,
en el libro de He [7] puede verse un estudio actual en el que se revisan las propiedades más esenciales e
importantes de las PHD. Sin embargo, la razón fundamental por la cual esta clase de distribuciones es tan
atractiva en estos tipos de datos es debido a que la clase PHD es densa en el conjunto de distribuciones
de probabilidad no negativas [2]. Este resultado implica que cualquier distribución de probabilidad no
negativa puede ajustarse tanto como se desee mediante una PHD, por lo que dicha flexibilidad hace que
las PHD sean unas buenas candidatas para obtener un mejor ajuste.

68 [Link]
Acal González, Ruiz Castro, Aguilera del Pino

No obstante, a continuación se enumeran otras propiedades interesantes e importantes:

1. Constituyen una clase de distribuciones no negativas que permite describir las principales medidas
asociadas en una forma algorítmica.
2. La clase de PHD es cerrada bajo una serie de operaciones: mínimo, máximo, suma, etc.
3. Generalizan un gran número de distribuciones conocidas:
• Distribución exponencial: 𝐹(𝑡) = 1 − e−𝜆𝑡 para 𝑡 ≥ 0, 𝜶 = 1, 𝑻 = −𝜆 y 𝑚 = 1.
𝑚−1
• Distribución de Erlang: 𝐹(𝑡) = 1 − ∑𝑗=0 e−𝜆𝑡 (𝜆𝑡)𝑗 /𝑗! para 𝑡 ≥ 0, 𝑚 ≥ 1 y 𝜆 > 0,

−𝜆 𝜆
⎛ ⎞
−𝜆 ⋱
𝜶 = (1, 0, … , 0, 0), 𝑻=⎜ ⎟ .
⎜ ⋱ 𝜆 ⎟
⎝ −𝜆 ⎠
𝑚×𝑚

𝑡 𝑚 𝑚 𝜆
• Distribución hipoexponencial: 𝐹(𝑡) = 1 − ∑𝑥=0 ∑𝑖=1 e−𝜆𝑖𝑥 (∏𝑗=1;𝑗≠𝑖 𝜆 −𝜆
𝑗
) para 𝑡 ≥ 0, 𝜆𝑖 ≠ 𝜆𝑗
𝑗 𝑖
con 𝑖 ≠ 𝑗,
−𝜆1 𝜆1
⎛ ⎞
−𝜆2 ⋱
𝜶 = (1, 0, … , 0, 0), 𝑻 = ⎜ ⎟ .
⎜ ⋱ 𝜆𝑚−1 ⎟
⎝ −𝜆𝑚 ⎠
𝑚×𝑚
𝑚
• Distribución hiperexponencial: 𝐹(𝑡) = 1 − ∑𝑖=1 𝛼𝑖 (1 − e−𝜆𝑖𝑡 ) para 𝑡 ≥ 0,

−𝜆1
⎛ ⎞
−𝜆2
𝜶 = (𝛼1 , 𝛼2 , … , 𝛼𝑚 ), 𝑻=⎜ ⎟ .
⎜ ⋱ ⎟
⎝ −𝜆𝑚 ⎠𝑚×𝑚

𝑡 𝑚 𝑚 𝑔𝑗 𝜆𝑗
• Distribución coxiana: 𝐹(𝑡) = 1 − ∑𝑥=0 ∑𝑖=1 e−𝜆𝑖𝑥 (∏𝑗=1;𝑗≠𝑖 𝜆𝑗 −𝜆𝑖
) para 𝑡 ≥ 0, 𝜆𝑖 ≠ 𝜆𝑗 con 𝑖 ≠ 𝑗,

−𝜆1 𝑔1 𝜆1
⎛ ⎞
−𝜆2 ⋱
𝜶 = (1, 0, … , 0, 0), 𝑻=⎜ ⎟ .
⎜ ⋱ 𝑔𝑚−1 𝜆𝑚−1 ⎟
⎝ −𝜆𝑚 ⎠𝑚×𝑚

𝑚 𝑡 𝑚 𝑚 𝑔𝑗 𝜆𝑗
• Distribución coxiana generalizada: 𝐹(𝑡) = 1 − ∑𝑖=1 𝛼𝑖 (∑𝑥=0 ∑𝑖=1 e−𝜆𝑖𝑥 (∏𝑗=1;𝑗≠𝑖 𝜆𝑗 −𝜆𝑖
)) para
𝑡 ≥ 0, 𝜆𝑖 ≠ 𝜆𝑗 con 𝑖 ≠ 𝑗,

−𝜆1 𝑔 1 𝜆1
⎛ ⎞
−𝜆2 ⋱
𝜶 = (𝛼1 , 𝛼2 , … , 𝛼𝑚 ), 𝑻=⎜ ⎟ .
⎜ ⋱ 𝑔𝑚−1 𝜆𝑚−1 ⎟
⎝ −𝜆𝑚 ⎠𝑚×𝑚

Finalmente, en lo que a las PHD se refiere, cabe decir que para la estimación de los parámetros de estas
distribuciones no se puede utilizar el análisis gráfico definido en la sección anterior, porque las PHD no se
pueden linealizar. En consecuencia, se recurre a un método iterativo denominado algoritmo esperanza-
maximización, más conocido como algoritmo EM (desarrollado por Asmussen, Nerman y Olsson [3] y
presentado en el libro de Buchholz, Kriege y Felko [5]), que alterna dos pasos, esperanza y maximización,
para obtener la estimación de los parámetros por máxima verosimilitud. En la actualidad existen paquetes
implementados en Matlab o en R (véase el paquete mapfit), e incluso aplicaciones disponibles para
ordenador (por ejemplo, EMpht), tanto para determinar la estructura de las distribuciones tipo fase como
para la estimación de sus parámetros.

TEMat, 3 (2019) e-ISSN: 2530-9633 69


Distribuciones tipo fase en un estudio de fiabilidad

4. Simulación con R
El objetivo de la presente sección es demostrar el poder de ajuste de las distribuciones tipo fase. Para ello,
se han simulado cien valores de una distribución no negativa (más concretamente, cien valores de una
distribución uniforme en el intervalo [0,3]) y, seguidamente, se ha procedido a ajustar las distribuciones de
Erlang, Weibull, valores extremos y log-normal a los datos simulados (ya ordenados) mediante la técnica
del análisis gráfico. La bondad del ajuste de cada una de las distribuciones mencionadas se ha comparado
por medio del coeficiente de determinación (𝑅2 ) obtenido en cada caso, eligiendo como óptima aquella
cuyo valor 𝑅2 esté más cercano a 1. Seleccionada la distribución más precisa, se procede, en primer lugar,
a estimar la distribución tipo fase que mejor se ajusta a estos datos y, posteriormente, a comparar el ajuste
obtenido en ambas distribuciones.
En la figura 1 aparece el ajuste de los datos simulados con las distribuciones descritas en la sección 2.2
utilizando el análisis gráfico: la gráfica (A) representa el ajuste mediante la distribución exponencial, la
gráfica (B) denota el ajuste a través de la distribución de Weibull, la gráfica (C) muestra el ajuste por medio
de la distribución de valores extremos, y la gráfica (D) revela el ajuste mediante la distribución log-normal.
A tenor del gráfico y apoyándose en el cuadro 3, en el cual figura la estimación de mínimos cuadrados
de los parámetros de cada distribución y el coeficiente de determinación alcanzado en cada caso, se
concluye que la distribución que mejor funciona para los datos simulados es la distribución de Weibull.
En consecuencia, esta será la distribución elegida para compararla con la distribución tipo fase al final de
la presente sección.
(A) (B)

● ●


5




1










Ln(− Ln(1 − FDatos))

● ●●●


●●
0
4


●●
− Ln(1 − FDatos)

●●
● ●
● ●

●●
●●●

−1

● ●●●
● ●●
●●
3

● ●●
● ●●
● ● ●●●


● ●

● ●


● ●●
2


● ●
−3

● ●
●●●●
● ●
● ●
●●● ●

●● ●●
● ●
1

●●●
● ●●● ●
● ●●
●●
● ●●●
●●
●● ●

●●●
−5

● ●●
●● ●
●●●●●●


●●●
●●●●● ●
0

0.0 0.5 1.0 1.5 2.0 2.5 3.0 −3 −2 −1 0 1


Datos Ln(Datos)

● Datos Experimentales
Ajuste

(C) (D)

● ●
●●● ●

●●
1


● ●
● ● ●
●●●● ●
●● ●

Ln(− Ln(1 − FDatos))

●●
● ●● ●
● ●●● ●

0

●●●
● ●●● ●
●●
● ●●
●● ●
1

●●● ●

●● ●
φ−1 (FDatos)

●● ●
● ●
−1

● ●
●●●
● ●




●●
●● ●●●
●●

● ●●

●● ●●
0


●● ●

●●
● ●●

●●● ● ●
●●
●●
●● ●●


−3

● ●●●
−1

● ●●●
● ●●

● ● ●
● ●●

● ● ●
−2



−5

● ●

0.0 0.5 1.0 1.5 2.0 2.5 3.0 −3 −2 −1 0 1


Datos Ln(Datos)

Figura 1: Ajuste por mínimos cuadrados de los datos simulados a través del método de análisis gráfico: (A)
distribución exponencial, (B) distribución de Weibull, (C) distribución de valores extremos, (D) distribución
log-normal. Para más claridad se indica la nube de puntos considerada en cada caso.

Seguidamente, se han ajustado distintas distribuciones tipo fase a los datos simulados usando el algoritmo
EM, asumiendo que la matriz que contiene las intensidades transitorias hasta la absorción, es decir, la
matriz 𝑻, tiene estructura interna general. Esto da lugar a que se estimen 𝑚(𝑚 + 1) + 𝑚 parámetros, siendo

70 [Link]
Acal González, Ruiz Castro, Aguilera del Pino

Cuadro 3: Coeficiente de determinación alcanzado y parámetros estimados por mínimos cuadrados tras
aplicar el método de análisis gráfico a los datos simulados considerando distintas distribuciones.

𝑅2 Parámetros estimados
Exponencial 0,75 𝜆 ̂ = 0,935
Weibull 0,97 𝜆 ̂ = 0,562; 𝛽 ̂ = 1,375
Valores extremos 0,87 𝛾 ̂ = 0,07; 𝛽 ̂ = 1,31
Log-normal 0,86 𝜇̂ = 0,16; 𝜎̂ = 0,99

𝑚 el número de estados transitorios. Después de este análisis, se ha observado que la estructura interna
y el vector que contiene las probabilidades iniciales no adoptan una expresión concreta para un 𝑚 fijo,
sino que van variando según el número de estados que se considere. En base a ello, no se puede asumir
ninguna distribución tipo fase conocida a los datos.
Los parámetros de la distribución tipo fase han sido estimados aplicando el algoritmo EM con la aplicación
EMpht y con el paquete mapfit de R. Se empieza con un número pequeño de estados y se va aumentando
hasta que se consigue el ajuste óptimo, el cual es alcanzado para los datos simulados en veinte fases. La
representación de dicha distribución tipo fase se puede apreciar en el apéndice A que figura al final del
artículo. Una vez estimados los parámetros de la distribución tipo fase, se procede a observar gráficamente
la precisión del ajuste de esta distribución a los datos simulados. La tasa de fallo acumulada experimental
estimada por la distribución tipo fase se muestra en la figura 2. Cabe notar que en este caso, y con el
objetivo de utilizar de nuevo la técnica del análisis gráfico, en el eje de ordenadas se representa − ln(1 − 𝐹)
y en el eje de abscisas, los datos ordenados (esta transformación es una generalización de la realizada en
el caso exponencial).
Finalmente, se procede a comparar los ajustes obtenidos a través de la distribución de Weibull y de la
distribución tipo fase. Para ello, se utilizan la función de fiabilidad y la función tasa de riesgo. En la figura 3
se muestra, por un lado, la función de fiabilidad experimental, además del ajuste por Weibull y tipo fase
(A) y, por otro lado, la tasa de riesgo experimental frente al ajuste por Weibull y tipo fase.
A raíz de los gráficos de la figura 3, el mejor resultado se logra cuando se considera la distribución tipo
fase con veinte estados transitorios (fases) y puede apreciarse que la precisión es bastante notable.


5


4


− Ln(1 − FDatos)


3


● Datos Experimentales ●

Ajuste ●





2





●● ●



●●

●●
● ● ●

●●
●●
1

●●
●●●
●● ●

● ●●

●●●●
● ●●●
●●


●●●
●●● ●

●●
●●●
●●●●
●●

● ●●● ●
●●●●●●
0

0.0 0.5 1.0 1.5 2.0 2.5 3.0


Datos

Figura 2: Tasa de fallo acumulada de los datos simulados y el correspondiente ajuste de la distribución tipo
fase con veinte fases.

TEMat, 3 (2019) e-ISSN: 2530-9633 71


Distribuciones tipo fase en un estudio de fiabilidad

Figura 3: (A) Función de fiabilidad 𝑅(𝑡) frente a los datos simulados y las distribuciones de Weibull y tipo
fase. (B) Tasa de riesgo ℎ(𝑡) frente a los datos simulados y las distribuciones de Weibull y tipo fase.

5. Conclusiones
El análisis estadístico habitual realizado con datos experimentales en estudios de fiabilidad para caracterizar
las principales razones de fallo de cualquier sistema es a través de distribuciones continuas, como pueden
ser la distribución de Weibull, exponencial, gamma, log-normal, etc. Sin embargo, a veces el ajuste obtenido
a los datos medidos no es del todo riguroso. Este hecho sugiere que otras distribuciones estadísticas podrían
funcionar de una mejor manera y el ajuste sería más preciso. A este respecto, en los últimos años es cada
vez más común utilizar un enfoque basado en las distribuciones tipo fase, ya que cualquier distribución no
negativa puede aproximarse tanto como sea necesario mediante una distribución tipo fase. Cabe destacar
también las buenas propiedades algebraico-matricial y de clausura que posee la clase de distribuciones
tipo fase y su fácil algoritmización que permite obtener expresiones de las cantidades de interés del modelo
en forma bien estructurada, de modo que puedan ser tratadas computacionalmente de manera rápida y
eficaz, facilitando así la estimación de los parámetros.
Para poner de manifiesto el poder de precisión de estas distribuciones, en el presente trabajo se han
simulado cien valores de una distribución uniforme en el intervalo [0, 3], y se han ajustado y comparado
distintas distribuciones. Después de un estudio exhaustivo y pormenorizado se ha concluido que la
distribución que mejor funciona para los datos simulados es la distribución tipo fase. Por lo tanto, y en
consecuencia de todo lo comentado a lo largo del artículo, parece evidente concluir que las distribuciones
tipo fase deben ser tenidas en cuenta cuando se quiera analizar datos experimentales referidos al fallo de
cualquier sistema.

Referencias
[1] ACAL, Christian; RUIZ-CASTRO, Juan Eloy; AGUILERA, Ana María; JIMÉNEZ-MOLINOS, Francisco, y
ROLDÁN, Juan B. «Phase-type distributions for studying variability in resistive memories». En: Journal
of Computational and Applied Mathematics 345 (2019), págs. 23-32. ISSN: 0377-0427. [Link]
org/10.1016/[Link].2018.06.010.
[2] ASMUSSEN, Søren. Ruin Probabilities. Hong Kong: World Scientific, 2000. [Link]
1142/7431.
[3] ASMUSSEN, Søren; NERMAN, Olle, y OLSSON, Marita. «Fitting Phase-Type Distributions via the EM
Algorithm». En: Scandinavian Journal of Statistics 23.4 (1996), págs. 419-441. ISSN: 03036898. URL:
[Link]
[4] BAZOVSKY, Igor. Reliability theory and practice. Prentice-Hall, 1961.

72 [Link]
Acal González, Ruiz Castro, Aguilera del Pino

[5] BUCHHOLZ, Peter; KRIEGE, Jan, y FELKO, Iryna. Input Modeling with Phase-Type Distributions and
Markov Models. Theory and Applications. 1.a ed. SpringerBriefs in Mathematics. An optional note.
Cham: Springer, 2014. [Link]
[6] EPSTEIN, Benjamin y SOBEL, Milton. «Life Testing». En: Journal of the American Statistical Association
48.263 (1953), págs. 486-502. [Link]
[7] HE, Qi-Ming. Fundamentals of Matrix-Analytic Methods. New York: Springer, 2014. [Link]
org/10.1007/978-1-4614-7330-5.
[8] LONG, Shibing; CAGLI, Carlo; IELMINI, Daniele; LIU, Ming, y SUÑÉ, Jordi. «Analysis and modeling of
resistive switching statistics». En: Journal of Applied Physics 111.7, 074508 (2012). [Link]
10.1063/1.3699369.
[9] LUO, Wun-Cheng; LIU, Jen-Chieh; FENG, Hsien-Tsung; LIN, Yen-Chuan; HUANG, Jiun-Jia; LIN, Kuan-
Liang, y HOU, Tuo-Hung. «RRAM SET speed-disturb dilemma and rapid statistical prediction met-
hodology». En: 2012 International Electron Devices Meeting. Dic. de 2012, págs. 9.5.1-9.5.4. https:
//[Link]/10.1109/IEDM.2012.6479012.
[10] NEUTS, Marcel F. «Probability distributions of phase type». En: Liber Amicorum Professor Emeritus
Dr. H. Florin (1975), págs. 173-206.
[11] NEUTS, Marcel F. Matrix-geometric solutions in stochastic models: an algorithmic approach. Courier
Corporation, 1994. ISBN: 978-0-486-68342-3.
[12] PAN, Feng; GAO, Shuang; CHEN, Chao; SONG, Chen, y ZENG, Fei. «Recent progress in resistive random
access memories: Materials, switching mechanisms, and performance». En: Materials Science and
Engineering: R: Reports 83 (2014), págs. 1-59. ISSN: 0927-796X. [Link]
2014.06.002.
[13] RUIZ-CASTRO, Juan Eloy y DAWABSHA, Mohammed. «A discrete MMAP for analysing the behaviour
of a multi-state complex dynamic system subject to multiple events». En: Discrete Event Dynamic
Systems (dic. de 2018). ISSN: 1573-7594. [Link]
[14] RUIZ-CASTRO, Juan Eloy; DAWABSHA, Mohammed, y ALONSO, Francisco Javier. «Discrete-time Mar-
kovian arrival processes to model multi-state complex systems with loss of units and an indeter-
minate variable number of repairpersons». En: Reliability Engineering & System Safety 174 (2018),
págs. 114-127. ISSN: 0951-8320. [Link]

A. Apéndice
La representación de la distribución tipo fase lograda en la sección 4 es la siguiente:
1. El vector 𝜶 toma los valores

(0,5416, 0,1237, 0,2346, 0, 0,0515, 0,0003, 0,0001, 0, 0,0026, 0, 0, 0,0121, 0, 0, 0,0215, 0,0001, 0, 0, 0,0119, 0).

2. La matriz 𝑻 adopta la expresión que se ve en la página siguiente, en la figura 4.

TEMat, 3 (2019) e-ISSN: 2530-9633 73


74
-5.9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5.9 0 0 0
⎛ 0 -8 0 0 0.18 4.17 0 0 0 0 0 0.87 0 0 0.02 2.77 0 0 0 0 ⎞
⎜ 0 0.85 -18.91 0 3.67 2.85 0 0 0.02 0 0 2.64 0 0 0.5 0.87 0 7.43 0.08 0 ⎟
⎜ 0 0 0 -5.9 0 0 5.9 0 0 0 0 0 0 0 0 0 0 0 0 0

⎜ ⎟
0 0.44 0 0 -6.17 3.9 0 0 0 0 0 0.3 0 0 0.05 1.47 0 0 0 0
⎜ ⎟
0 0 0 0 0 -6.51 0 0 0 3.94 0 0 0 0.85 0 1.72 0 0 0 0
⎜ ⎟
0 0 0 0 0 0 -5.9 0 1.87 0 0 0 0 0 0 0 0 0 4.02 0
⎜ ⎟
0 0 0 0 0 0 0 -5.9 0 0 0 0 0 0 0 0 0 0 0 5.9
⎜ ⎟
⎜ 0 0.77 0 0 1.39 0 0 0 -6.15 0 0 0.28 0 0 3.39 0 0 0 0.32 0 ⎟
⎜ 0 0 0 0 0 0 0 0 0 -7.07 2.38 0 0 4.69 0 0 0 0 0 0 ⎟
Distribuciones tipo fase en un estudio de fiabilidad

⎜ 0 0 0 0 0 0 0 0 0 0 -6.08 0 0 0 0 0 0 6.08 0 0 ⎟
⎜ 0 0.06 0 0 0.18 0.87 0 0 0 0.02 0 -7.58 0 0.02 0 6.42 0 0 0 0 ⎟
⎜ 0 0 0 5.9 0 0 0 0 0 0 0 0 -5.9 0 0 0 0 0 0 0 ⎟
⎜ 0 0 0 0 0 0 0 0 0 0.06 6.69 0 0 -6.75 0 0 0 0 0 0 ⎟
⎜ 0 2.78 0 0 0.17 1.94 0 0 0 0 0 1.47 0 0 -6.9 0.53 0 0 0 0 ⎟
⎜ 0 0 0 0 0 0.01 0 0 0 2.57 0 0 0 3.94 0 -6.53 0 0 0 0 ⎟
⎜ 0 0 0 0 0 0 0 5.9 0 0 0 0 0 0 0 0 -5.9 0 0 0 ⎟
⎜ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -6.77 0 0 ⎟
⎜ 0 0.33 0 0 3.01 0 0 0 0.07 0 0 0.18 0 0 2.41 0 0 0 -6 0 ⎟
⎝ 0 0 0 0 0 0 0 0 0 0 0 0 5.9 0 0 0 0 0 0 -5.9 ⎠

Figura 4: Expresión de la matriz 𝑻.

[Link]
Álgebras de Boole y la dualidad de Stone

� Clara María Corbalán Mirete Resumen: Este artículo tiene como objetivo introducir los conceptos de álgebra
Universidad de Murcia de Boole y espacio de Stone, así como presentar la dualidad existente entre ambos.
[Link]@[Link] Para ello, comenzamos presentando este tipo de álgebras, algunas de sus propie-
dades y sus elementos y subconjuntos más destacables: átomos, ideales, filtros y
ultrafiltros. Gracias a ellos seremos capaces de demostrar el teorema de Stone, el
cual cuenta con dos versiones y establece que toda álgebra de Boole 𝔅 es isomorfa
al álgebra de los clopen sobre el espacio de los ultrafiltros de 𝔅. Además de esto,
y ya para finalizar, probaremos que todo espacio de Stone 𝑋 es homeomorfo al
espacio de los ultrafiltros del álgebra de los clopen sobre 𝑋.

Abstract: The purpose of this paper is to introduce the concepts of Boolean algebra
and Stone space, and to present the duality between them. In order to achieve
this, we begin by presenting some of the Boolean algebra’s properties and its most
fundamental elements and subsets: atoms, ideals, filters and ultrafilters. Then, we
will be able to prove Stone’s theorem, which has two versions and states that every
Boolean algebra 𝔅 is isomorphic to the clopen algebra on the space of ultrafilters
of 𝔅. Finally, we will prove that every Stone space 𝑋 is homeomorphic to the space
of ultrafilters of the clopen algebra on 𝑋.

Palabras clave: álgebra de Boole, espacio de Stone, clopen, dual, ultrafiltro.


MSC2010: 03G05, 06E15.
Recibido: 1 de octubre de 2018.
Aceptado: 25 de febrero de 2019.

Agradecimientos: Me gustaría mostrar mi gratitud a Antonio Avilés López y a Gonzalo Martínez Cervantes,
directores de mi Trabajo Final de Máster, por su ayuda, paciencia y dedicación, ya que este artículo se basa,
en parte, en dicho trabajo. A los revisores por ayudarme a mejorar la calidad del mismo. A José Luis, mi amigo,
por el apoyo prestado ahora y siempre. Y también a Paco porque siempre he podido contar con él.

Referencia: CORBALÁN MIRETE, Clara María. «Álgebras de Boole y la dualidad de Stone». En: TEMat, 3 (2019),
págs. 75-86. ISSN: 2530-9633. URL: [Link]

cb Este trabajo se distribuye bajo una licencia Creative Commons Reconocimiento 4.0 Internacional
[Link]
Álgebras de Boole y la dualidad de Stone

1. Introducción
Llamadas así en honor al matemático inglés autodidacta George Boole, las álgebras de Boole aparecieron
por primera vez como estructura algebraica en un pequeño panfleto [1] publicado en 1847 en respuesta
a la controversia generada entre el profesor Augustus De Morgan y sir William Hamilton acerca de la
llamada «cuantificación del predicado» y, más tarde, en 1854, como parte de su trabajo más importante,
An investigation of the laws of thought, on which are founded the mathematical theories of logic and
probabilities [2]. Boole intentó reducir la lógica a un álgebra sencilla que solo utilizara dos cantidades (0, 1)
y tres operaciones básicas (y, o, no).
Sin embargo, en la actualidad estos trabajos únicamente poseen interés histórico, pues, a pesar de los
pequeños avances que realizaron Schröder, Löwenheim y Huntington a principios de siglo, se considera
que la teoría moderna de álgebras de Boole se inició en 1930 con las aportaciones de Marshall Stone y
Alfred Tarski. Desde entonces ha habido un desarrollo constante de este campo. Así, en 1948, el matemático
estadounidense Claude Shannon demostró que las álgebras de Boole se podían aplicar para optimizar el
diseño de los sistemas de conmutación telefónica y que los circuitos con relés eran capaces de resolver
problemas relacionados con ellas. De este modo, Boole se convirtió, con la ayuda de Shannon, en uno de
los fundadores de la era digital.
Por otra parte, la dualidad topológica de Stone tiene su origen a la vez que la teoría moderna de álgebras
de Boole y los espacios de Hausdorff compactos cero-dimensionales, también llamados espacios de Stone,
pues existe una correspondencia entre los homomorfismos entre álgebras de Boole y las aplicaciones entre
espacios de Stone. Como consecuencia, las cuestiones algebraicas en las álgebras de Boole se traducen en
topológicas en los espacios de Stone y viceversa.

2. Álgebras de Boole
Las álgebras de Boole se definen a partir de una lista de axiomas algebraicos. Ahora nos dedicaremos a
presentar las leyes aritméticas que se derivan de dichos axiomas y algunas nociones básicas acerca de estas
estructuras y sobre algunos de sus subconjuntos. Las principales fuentes de referencia para la elaboración
de este artículo han sido los libros de Koppelberg [5] y Jané [4]. Se recomienda su consulta para una mayor
profundización en el tema.
Definición 1. Un álgebra de Boole es un álgebra 𝔅 = (ℬ, ∨𝔅 , ∧𝔅 , ¬𝔅 , 0𝔅 , 1𝔅 ), donde ℬ ≠ ∅, que satisface
los siguientes axiomas:
I) ∀ 𝑥, 𝑦 ∈ ℬ, 𝑥 ∨ 𝑦 = 𝑦 ∨ 𝑥 y 𝑥 ∧ 𝑦 = 𝑦 ∧ 𝑥.
II) ∀ 𝑥, 𝑦, 𝑧 ∈ ℬ, 𝑥 ∨ (𝑦 ∨ 𝑧) = (𝑥 ∨ 𝑦) ∨ 𝑧 y 𝑥 ∧ (𝑦 ∧ 𝑧) = (𝑥 ∧ 𝑦) ∧ 𝑧.
III) ∀ 𝑥, 𝑦, 𝑧 ∈ ℬ, 𝑥 ∨ (𝑦 ∧ 𝑧) = (𝑥 ∨ 𝑦) ∧ (𝑥 ∨ 𝑧) y 𝑥 ∧ (𝑦 ∨ 𝑧) = (𝑥 ∧ 𝑦) ∨ (𝑥 ∧ 𝑧).
IV) ∀ 𝑥 ∈ ℬ, 𝑥 ∨ ¬𝑥 = 1 y 𝑥 ∧ ¬𝑥 = 0.
V) ∀ 𝑥 ∈ ℬ, 𝑥 ∨ 0 = 𝑥 y 𝑥 ∧ 1 = 𝑥. ◀

Observación 2. Conviene tener en cuenta que los axiomas dados en la definición anterior dependen
del autor, pues existen varias versiones equivalentes. Esto puede comprobarse consultando el libro de
Koppelberg [5], en donde se enuncian unos axiomas similares que pueden resultar útiles para probar
algunos de los resultados cuya demostración no se ha realizado. ◀

Un álgebra de Boole se dice que es propia si se cumple que 0𝔅 ≠ 1𝔅 ; en otro caso, diremos que es impropia.
Si 𝑎, 𝑏 ∈ 𝔅, decimos que 𝑎 ∨ 𝑏 es la unión o disyunción de 𝑎 y 𝑏; que 𝑎 ∧ 𝑏 es la intersección o conjunción
de 𝑎 y 𝑏, y que ¬𝑎 es el complemento de 𝑎.
Definición 3. Una estructura 𝔄 = (𝒜, ∨𝔄 , ∧𝔄 , ¬𝔄 , 0𝔄 , 1𝔄 ) es una subálgebra de un álgebra de Boole
𝔅 = (ℬ, ∨𝔅 , ∧𝔅 , ¬𝔅 , 0𝔅 , 1𝔅 ) si 𝒜 ⊆ ℬ, 0𝔄 = 0𝔅 , 1𝔄 = 1𝔅 y las operaciones ∨𝔄 , ∧𝔄 , ¬𝔄 son las restriccio-
nes de ∨𝔅 , ∧𝔅 , ¬𝔅 a 𝒜. ◀

76 [Link]
Corbalán Mirete

Para todo conjunto 𝐴, el álgebra potencia 𝑃(𝐴) = (𝒫(𝐴), ∪, ∩, −


, ∅, 𝐴), donde para cada 𝑋 ⊆ 𝐴, 𝑋 = 𝐴 ⧵ 𝑋,
es un álgebra de Boole. 𝑃(𝐴) es propia si y solo si 𝐴 ≠ ∅.
Más generalmente, dado un conjunto 𝐴, un álgebra de conjuntos sobre 𝐴 es una subálgebra de 𝑃(𝐴). Así,
una colección ℬ de subconjuntos de 𝐴 es el universo de un álgebra de conjuntos sobre 𝐴 si y solo si ∅, 𝐴
son elementos de ℬ y para todo 𝑋, 𝑌 ∈ ℬ se cumple que 𝑋 ∪ 𝑌, 𝑋 ∩ 𝑌, 𝐴 ⧵ 𝑋 ∈ ℬ.
Ejemplo 4 (álgebras finitas/cofinitas). Sea 𝑋 un conjunto cualquiera. Un subconjunto 𝑎 de 𝑋 se dice que
es cofinito en 𝑋 si 𝑋 ⧵ 𝑎 es finito. Consideremos

𝐴 = {𝑎 ⊆ 𝑋 ∶ 𝑎 es finito o cofinito}.

Entonces, 𝐴 es un álgebra de conjuntos sobre 𝑋, denominada álgebra finita/cofinita sobre 𝑋. Para compro-
bar que 𝑎 ∪ 𝑏 y 𝑎 ∩ 𝑏 pertenecen a 𝐴 para 𝑎, 𝑏 ∈ 𝐴, nótese que 𝑎 ∪ 𝑏 es finita si 𝑎 y 𝑏 son finitos, y cofinita
en otro caso. Que 𝑎 ∩ 𝑏 ∈ 𝐴 se sigue de las leyes de De Morgan 𝑎 ∩ 𝑏 = 𝑋 ⧵ ((𝑋 ⧵ 𝑎) ∪ (𝑋 ⧵ 𝑏)) puesto que 𝐴
es cerrado bajo complementarios y uniones. ◀

Si 𝑋 tiene una cardinalidad infinita 𝜅, entonces tiene un álgebra finita/cofinita. Puesto que 𝑋 tiene exacta-
mente 𝜅 subconjuntos finitos, todo cardinal infinito se corresponde con la cardinalidad de un álgeba de
Boole. Un entero no negativo 𝑘, sin embargo, cumple esto si y solo si 𝑘 = 2𝑛 para algún 𝑛 ∈ Ž, como se
sigue del corolario 28.
Ejemplo 5 (álgebra de los clopen). Sea 𝑋 un espacio topológico. Un subconjunto de 𝑋 es un clopen si es
abierto y cerrado. El conjunto de los subconjutos clopen, Clop(𝑋), es un álgebra de conjuntos sobre 𝑋,
denominada álgebra de los clopen sobre 𝑋. ◀

He aquí algunos primeros resultados en relación a las álgebras booleanas cuyas demostraciones, como se
puede apreciar, son sencillas y rutinarias.
Lema 6. Toda álgebra booleana cumple que

I) 𝑥 ∨ 𝑥 = 𝑥 y 𝑥 ∧ 𝑥 = 𝑥.
II) 𝑥 ∧ 0 = 0 y 𝑥 ∨ 1 = 1.
III) ¬𝑥 es el único elemento 𝑦 ∈ ℬ tal que 𝑥 ∧ 𝑦 = 0 y 𝑥 ∨ 𝑦 = 1.
IV) ¬¬𝑥 = 𝑥.
V) si ¬𝑥 = ¬𝑦, entonces 𝑥 = 𝑦.
VI) ¬0 = 1 y ¬1 = 0.
VII) ¬(𝑥 ∨ 𝑦) = ¬𝑥 ∧ ¬𝑦 y ¬(𝑥 ∧ 𝑦) = ¬𝑥 ∨ ¬𝑦.
VIII) 𝑥 ∨ (𝑥 ∧ 𝑦) = 𝑥 y 𝑥 ∧ (𝑥 ∨ 𝑦) = 𝑥.
IX) 𝑥 ∨ (¬𝑥 ∨ 𝑦) = 1 y 𝑥 ∧ (¬𝑥 ∧ 𝑦) = 0.
Demostración. I) Haciendo uso de los axiomas de la definición 1 es sencillo ver que

𝑥 ∨ 𝑥 = (𝑥 ∨ 𝑥) ∧ 1 = (𝑥 ∨ 𝑥) ∧ (𝑥 ∨ ¬𝑥) = 𝑥 ∨ (𝑥 ∧ ¬𝑥) = 𝑥 ∨ 0 = 𝑥.

De forma similar se obtiene el otro resultado.


II) En efecto,
𝑥 ∧ 0 = 𝑥 ∧ (𝑥 ∧ ¬𝑥) = (𝑥 ∧ 𝑥) ∧ ¬𝑥 = 𝑥 ∧ ¬𝑥 = 0.
De forma similar se obtiene que 𝑥 ∨ 1 = 1.
III) Supongamos que 𝑥 ∧ 𝑦 = 0 y 𝑥 ∨ 𝑦 = 1. Entonces, aplicando los axiomas, se tiene que

𝑦 = 𝑦 ∧ 1 = 𝑦 ∧ (𝑥 ∨ ¬𝑥) = (𝑦 ∧ 𝑥) ∨ (𝑦 ∧ ¬𝑥) = (𝑥 ∧ 𝑦) ∨ (¬𝑥 ∧ 𝑦) = 0 ∨ (¬𝑥 ∧ 𝑦)


= (𝑥 ∧ ¬𝑥) ∨ (¬𝑥 ∧ 𝑦) = (¬𝑥 ∧ 𝑥) ∨ (¬𝑥 ∧ 𝑦) = ¬𝑥 ∧ (𝑥 ∨ 𝑦) = ¬𝑥 ∧ 1 = ¬𝑥.

IV) Aplicando los axiomas se sabe que ¬𝑥 ∨ 𝑥 = 𝑥 ∨ ¬𝑥 = 1 y que ¬𝑥 ∧ 𝑥 = 𝑥 ∧ ¬𝑥 = 0. Por la propiedad


anterior, se tiene que 𝑥 = ¬¬𝑥.

TEMat, 3 (2019) e-ISSN: 2530-9633 77


Álgebras de Boole y la dualidad de Stone

V) Si ¬𝑥 = ¬𝑦, entonces 𝑥 = ¬¬𝑥 = ¬¬𝑦 = 𝑦.


VI) Veamos que ¬0 = 1. Sabemos que 𝑥 ∨ ¬𝑥 = 1; por tanto, 0 ∨ ¬0 = 1 y debemos probar que 0 ∨ 1 = 1:

0 ∨ 1 = 1 ∨ 0 = (0 ∨ ¬0) ∨ 0 = (0 ∨ 0) ∨ (¬0 ∨ 0) = 0 ∨ (¬0 ∨ 0) = (¬0 ∨ 0) ∨ 0 = ¬0 ∨ 0 = 0 ∨ ¬0 = 1.

El otro caso se prueba de forma similar.


VII) Se tiene que

(𝑥 ∨ 𝑦) ∧ ¬𝑥 ∧ ¬𝑦 = ((𝑥 ∧ ¬𝑥) ∨ (𝑦 ∧ ¬𝑥)) ∧ ¬𝑦 = (0 ∨ (𝑦 ∧ ¬𝑥)) ∧ ¬𝑦 = (0 ∧ ¬𝑦) ∨ (𝑦 ∧ ¬𝑥 ∧ ¬𝑦)


= 0 ∨ (𝑦 ∧ ¬𝑦 ∧ ¬𝑥) = 0 ∨ (0 ∧ ¬𝑥) = 0 ∨ 0 = 0.

La segunda igualdad se obtiene por un argumento análogo.


VIII) Es fácil comprobar que

𝑥 ∨ (𝑥 ∧ 𝑦) = (𝑥 ∧ 1) ∨ (𝑥 ∧ 𝑦) = 𝑥 ∧ (1 ∨ 𝑦) = 𝑥 ∧ (𝑦 ∨ 1) = 𝑥 ∧ 1 = 𝑥.

De forma análoga se obtiene el segundo resultado.


IX) Por último,
𝑥 ∨ (¬𝑥 ∨ 𝑦) = (𝑥 ∨ ¬𝑥) ∨ 𝑦 = 1 ∨ 𝑦 = 1.

La otra igualdad se prueba de forma similar. ▪


Proposición 7. En toda álgebra de Boole se cumple que

I) (𝑥 ∨ 𝑦) ∨ (¬𝑥 ∧ ¬𝑦) = 1.
II) (𝑥 ∨ 𝑦) ∧ (¬𝑥 ∧ ¬𝑦) = 0.
Demostración. I) Tenemos que

(𝑥 ∨ 𝑦) ∨ (¬𝑥 ∧ ¬𝑦) = ((𝑥 ∨ 𝑦) ∨ ¬𝑥) ∧ ((𝑥 ∨ 𝑦) ∨ ¬𝑦)


= (𝑦 ∨ (𝑥 ∨ ¬𝑥)) ∧ (𝑥 ∨ (𝑦 ∨ ¬𝑦)) = (𝑦 ∨ 1) ∧ (𝑥 ∨ 1) = 1 ∧ 1 = 1.

II) Se procede de manera similar. ▪


Corolario 8 (leyes de De Morgan). Toda álgebra booleana cumple que

I) ¬(𝑥 ∨ 𝑦) = ¬𝑥 ∧ ¬𝑦.
II) ¬(𝑥 ∧ 𝑦) = ¬𝑥 ∨ ¬𝑦.
Demostración. Basta con aplicar la proposición anterior y el punto II) del lema 6. ▪

A continuación enunciaremos un principio general que, en lo que a computación se refiere, ahorra una
gran cantidad de trabajo.
Definición 9. Si 𝐸 es una expresión en un lenguaje cuyos únicos símbolos no lógicos son ∨, ∧, ¬, 0, 1,
entonces 𝐸′ , la expresión dual, se obtiene a partir de 𝐸 al reemplazar los símbolos ∨, ∧, 0, 1 por ∧, ∨, 1, 0,
respectivamente, dejando fijo ¬.
Una forma alternativa de interpretar 𝐸 es como función de ℬ𝑛 en ℬ dada por múltiples composiciones de
∨𝔅 , ∧𝔅 , ¬𝔅 . ◀

Obsérvese que (𝐸′ )′ es 𝐸 y que la expresión dual de cada uno de los axiomas anteriores es un axioma.
Definición 10. Si 𝔅 = (ℬ, ∨𝔅 , ∧𝔅 , ¬𝔅 , 0𝔅 , 1𝔅 ) es un álgebra de Boole, denotaremos como 𝔅′ al álgebra dual
′ ′ ′ ′ ′
de 𝔅, cuyo universo también es ℬ pero tal que ∨𝔅 = ∧𝔅 , ∧𝔅 = ∨𝔅 , ¬𝔅 = ¬𝔅 , 0𝔅 = 1𝔅 y 1𝔅 = 0𝔅 . ◀

Está claro que (𝔅′ )′ = 𝔅 y que todo enunciado 𝐸 es verdadero en 𝔅 si y solo si 𝐸′ lo es en 𝔅′ . En consecuencia,
𝔅′ satisface los axiomas y es, por tanto, un álgebra de Boole. A partir de estas consideraciones podemos
establecer el siguiente principio:

78 [Link]
Corbalán Mirete

Proposición 11 (principio de dualidad). Si 𝐸 es un enunciado verdadero en toda álgebra de Boole, su dual


𝐸′ también lo es.
Demostración. Sea 𝐸 tal enunciado y sea 𝔅 un álgebra de Boole. Veamos que 𝐸 ′ es verdadero en 𝔅.
Dado que 𝔅′ es un álgebra de Boole, se tiene que 𝐸 es verdadero en 𝔅′ . Por tanto, como sabemos que
todo enunciado 𝐸 es verdadero en 𝔅 si y solo si 𝐸′ lo es en 𝐵′ , se tiene que 𝐸′ es verdadero en (𝔅′ )′ . Pero
(𝔅′ )′ = 𝔅. Por tanto, se tiene que, tal y como queríamos probar, 𝐸 ′ es verdadero en 𝔅. ▪

Seguidamente, definiremos una relación de orden en las álgebras de Boole, pero antes debemos probar un
primer resultado.
Lema 12. En toda álgebra de Boole se cumple que

𝑥 ∧ 𝑦 = 𝑥 ⟺ 𝑥 ∨ 𝑦 = 𝑦.

Demostración. Supongamos que 𝑥 ∧ 𝑦 = 𝑥. Haciendo uso de los axiomas se tiene que

𝑦 = 𝑦 ∧ 1 = 𝑦 ∧ (𝑥 ∨ ¬𝑥) = (𝑦 ∧ 𝑥) ∨ (𝑦 ∧ ¬𝑥) = (𝑥 ∧ 𝑦) ∨ (𝑦 ∧ ¬𝑥)


= 𝑥 ∨ (𝑦 ∧ ¬𝑥) = (𝑥 ∨ 𝑦) ∧ (𝑥 ∨ ¬𝑥) = (𝑥 ∨ 𝑦) ∧ 1 = 𝑥 ∨ 𝑦.

Para la implicación contraria deberemos utilizar esto mismo haciendo uso del principio de dualidad. Así,
sabemos que, si 𝑦 ∧ 𝑥 = 𝑦, entonces 𝑦 ∨ 𝑥 = 𝑥. Por dualidad, se tiene que, si 𝑦 ∨ 𝑥 = 𝑦, entonces 𝑦 ∧ 𝑥 = 𝑥.
Y, finalmente, por el axioma I) de la definición 1, se tiene que, si 𝑥 ∨ 𝑦 = 𝑦, entonces 𝑥 ∧ 𝑦 = 𝑥. ▪
Definición 13. Dada un álgebra de Boole 𝔅, definimos el orden canónico de 𝔅, al que denotaremos como
≤𝔅 o simplemente ≤, como
𝑥 ≤ 𝑦 ⟺ 𝑥 ∧ 𝑦 = 𝑥.
O, equivalentemente,
𝑥 ≤ 𝑦 ⟺ 𝑥 ∨ 𝑦 = 𝑦. ◀

Lema 14. El orden canónico de un álgebra de Boole es un orden parcial, pues

I) 𝑥 ≤ 𝑥;
II) si 𝑥 ≤ 𝑦 e 𝑦 ≤ 𝑥, entonces 𝑥 = 𝑦;
III) si 𝑥 ≤ 𝑦 e 𝑦 ≤ 𝑧, entonces 𝑥 ≤ 𝑧.
Demostración. I) Como vimos en el lema 6, se tiene que 𝑥 ∧ 𝑥 = 𝑥. Por tanto, se tiene que 𝑥 ≤ 𝑥 por la
definición de orden.
II) Si 𝑥 ≤ 𝑦 e 𝑦 ≤ 𝑥, por la definición, se tiene que 𝑥 = 𝑥 ∧ 𝑦 e 𝑦 = 𝑦 ∧ 𝑥. Entonces, por el axioma I), se tiene
que 𝑥 = 𝑦.
III) Si 𝑥 ≤ 𝑦 e 𝑦 ≤ 𝑧, por definición, 𝑥 = 𝑥 ∧ 𝑦 e 𝑦 = 𝑦 ∧ 𝑧. Por tanto,

𝑥 ∧ 𝑧 = (𝑥 ∧ 𝑦) ∧ 𝑧 = 𝑥 ∧ (𝑦 ∧ 𝑧) = 𝑥 ∧ 𝑦 = 𝑥.

Así, 𝑥 ≤ 𝑧. ▪
Proposición 15. Si 𝔅 es un álgebra de Boole,

I) (ℬ, ≤) es un retículo, es decir, para cada par de elementos {𝑥, 𝑦} existen un supremo, 𝑥 ∨ 𝑦, y un
ínfimo, 𝑥 ∧ 𝑦.
II) 1 es el elemento máximo y 0, el mínimo de (ℬ, ≤).
Demostración. I) Veamos que el supremo de {𝑥, 𝑦} es 𝑥 ∨ 𝑦. Se tiene que 𝑥 ≤ 𝑥 ∨ 𝑦, pues

𝑥 ∨ (𝑥 ∨ 𝑦) = (𝑥 ∨ 𝑥) ∨ 𝑦 = 𝑥 ∨ 𝑦.

Sea 𝑧 una cota superior arbitraria de 𝑥 e 𝑦, es decir, 𝑦 ≤ 𝑧 y 𝑥 ≤ 𝑧. Por tanto,

(𝑥 ∨ 𝑦) ∨ 𝑧 = 𝑥 ∨ (𝑦 ∨ 𝑧) = 𝑥 ∨ 𝑧 = 𝑧.

TEMat, 3 (2019) e-ISSN: 2530-9633 79


Álgebras de Boole y la dualidad de Stone

Se tiene, pues, que 𝑥 ∨ 𝑦 ≤ 𝑧, lo que prueba que 𝑥 ∨ 𝑦 es la menor cota superior de {𝑥, 𝑦}.
El caso del ínfimo resulta análogo por dualidad.
II) Dado que 𝑥 ∨ ¬𝑥 = 1, 1 es el supremo de {𝑥, ¬𝑥}. En particular, 𝑥 ≤ 1, ∀ 𝑥. ▪
Lema 16. Si 𝑥 ≤ 𝑥′ e 𝑦 ≤ 𝑦′ , entonces 𝑥 ∨ 𝑦 ≤ 𝑥′ ∨ 𝑦′ , 𝑥 ∧ 𝑦 ≤ 𝑥′ ∧ 𝑦′ y, además, ¬𝑥′ ≤ ¬𝑥.
Lema 17. En toda álgebra de Boole 𝔅 se cumple que

I) 𝑥 ≤ 𝑦 si y solo si ¬𝑦 ≤ ¬𝑥 si y solo si 𝑥 ∧ ¬𝑦 = 0.
II) 𝑧 ∧ 𝑥 ≤ 𝑦 si y solo si 𝑥 ≤ ¬𝑧 ∨ 𝑦.
Definición 18. Un álgebra de Boole se dirá completa si todo conjunto tiene un supremo. ◀

Definición 19. Un homomorfismo entre dos álgebras de Boole 𝔄 y 𝔅 es una aplicación 𝑓 ∶ 𝔄 → 𝔅 tal que,
para todo 𝑥, 𝑦 ∈ 𝒜,

𝑓(𝑥 ∨ 𝑦) = 𝑓(𝑥) ∨ 𝑓(𝑦), 𝑓(𝑥 ∧ 𝑦) = 𝑓(𝑥) ∧ 𝑓(𝑦), 𝑓(¬𝑥) = ¬𝑓(𝑥), 𝑓(0) = 0 y 𝑓(1) = 1.

Un homomorfismo 𝑓 ∶ 𝔄 → 𝔅 entre dos álgebras de Boole es un monomorfismo o embebimiento si es


inyectivo. Y diremos que es epimorfismo si es suprayectivo. ◀

Definición 20. Un isomorfismo 𝑓 ∶ 𝔄 → 𝔅 entre álgebras de Boole es un monomorfismo que además es


epimorfismo. ◀

Proposición 21. Supongamos que 𝔄 y 𝔅 son dos álgebras de Boole y que 𝑓 es una biyección entre ellas.
Entonces, 𝑓 es un isomorfismo entre las álgebras 𝔄 y 𝔅 si y solo si 𝑓 es un isomorfismo entre los órdenes
(𝒜, ≤𝔄 ) y (ℬ, ≤𝔅 ).
Demostración. Por la proposición 15 tenemos definidos los símbolos lógicos en términos del orden. La
demostración se deja para el lector. ▪

2.1. Átomos, ultrafiltros y el teorema de Stone


Esta sección está destinada a enunciar teorema de Stone, el cual tiene dos versiones, la versión conjuntista
y la topológica, cuyas demostraciones veremos más adelante.
Notación 22. Habitualmente se identifica ℬ con 𝔅; por ello, a partir de ahora escribiremos 𝑥 ∈ 𝔅 cuando
un elemento 𝑥 pertenezca al álgebra. ◀

Definición 23. Llamaremos átomo en un álgebra de Boole a todo elemento 𝑎 ∈ 𝔅 distinto de 0 tal que
{𝑏 ∈ 𝔅 ∶ 𝑏 ≤ 𝑎} = {0, 𝑎}. Denotaremos como At 𝔅 al conjunto de los átomos de 𝔅.
Diremos que 𝔅 es un álgebra atómica si para todo elemento 𝑥 ∈ 𝔅 distinto de 0 existe algún átomo 𝑎 tal
que 𝑎 ≤ 𝑥. ◀

Ejemplo 24. Un álgebra potencia 𝑃(𝑋) y el álgebra finita/cofinita sobre 𝑋 son atómicas, siendo los átomos
los conjuntos unipuntuales {𝑥}, con 𝑥 ∈ 𝑋.
Otro ejemplo de álgebra atómica es cualquier álgebra de Boole finita, dado que si 𝑥 > 0 en un álgebra de
Boole y no existiese ningún átomo por debajo de 𝑥, habría una sucesión infinita estrictamente decreciente
𝑥0 = 𝑥 > 𝑥1 > 𝑥2 > … en 𝔄+ = {𝑥 ∈ 𝔄 ∶ 0 < 𝑥} = 𝔄 ⧵ {0}. ◀

Lema 25. Para todo elemento 𝑎 ∈ 𝔅 las siguientes afirmaciones son equivalentes:

I) a es un átomo de 𝔅;
II) para todo 𝑥 ∈ 𝔅, o bien 𝑎 ≤ 𝑥 o bien 𝑎 ≤ ¬𝑥, pero no ambos;
III) 𝑎 > 0 y, para todo 𝑥, 𝑦 ∈ 𝔅, 𝑎 ≤ 𝑥 ∨ 𝑦 si y solo si 𝑎 ≤ 𝑥 o 𝑎 ≤ 𝑦.
Proposición 26. Para toda álgebra de Boole, la aplicación 𝑓 ∶ 𝔅 → 𝑃(At 𝔅) definida por el conjunto
𝑓(𝑥) = {𝑎 ∈ At 𝔅 ∶ 𝑎 ≤ 𝑥} es un homomorfismo. Será un embebimiento si 𝔅 es atómica y un epimorfismo
si es completa.

80 [Link]
Corbalán Mirete

Demostración. Evidentemente, 𝑓(0) = ∅ y 𝑓(1) = At 𝔅. Por el lema 25 II) se tiene que

𝑓(¬𝑥) = {𝑎 ∈ At 𝔅 ∶ 𝑎 ≤ ¬𝑥} = At 𝔅 ⧵ {𝑎 ∈ At 𝔅 ∶ 𝑎 ≤ 𝑥} = At 𝔅 ⧵ 𝑓(𝑥),

y que 𝑓(𝑥 ∨ 𝑦) = 𝑓(𝑥) ∪ 𝑓(𝑦) se obtiene de manera similar aplicando el lema 25 III). Además, se tiene que
𝑓(𝑥 ∧ 𝑦) = 𝑓(𝑥) ∩ 𝑓(𝑦) puesto que, por ser 𝑥 ∧ 𝑦 el ínfimo de {𝑥, 𝑦},

𝑎 ≤ 𝑥 ∧ 𝑦 si y solo si 𝑎 ≤ 𝑥 y 𝑎 ≤ 𝑦,

lo cual es cierto para todo 𝑎 ∈ 𝔅. Por tanto, 𝑓 es un homomorfismo.


Consideremos ahora 𝔅 un álgebra atómica y sean 𝑥 ≠ 𝑦 en 𝔅. Sin pérdida de generalidad podemos suponer
que 𝑥 ≰ 𝑦. En tal caso, 𝑥 ∧ ¬𝑦 ≠ 0 por el lema 17 I), y existirá un átomo 𝑎 ∈ 𝔅 tal que 𝑎 ≤ 𝑥 ∧ ¬𝑦. Se tiene
que 𝑎 ∈ 𝑓(𝑥) y 𝑎 ∉ 𝑓(𝑦) y, por tanto, que 𝑓(𝑥) ≠ 𝑓(𝑦), siendo 𝑓 inyectiva.
Por último, 𝑓 es un epimorfismo si 𝔅 es completa pues, dado un conjunto de átomos 𝐴 ⊆ At 𝔅, se tiene
que 𝑓(sup 𝐴) = 𝐴. En efecto, obviamente 𝐴 ⊆ 𝑓(sup 𝐴). Y si 𝐴 ≠ 𝑓(sup 𝐴), existe un átomo 𝑎 ∉ 𝐴 tal que
𝑎 ≤ sup 𝐴. En tal caso, como 𝑎 ∉ 𝐴, 𝑏 ≤ ¬𝑎 para todo 𝑏 ∈ 𝐴. De ello se tiene que 𝑎 ≤ sup 𝐴 ≤ ¬𝑎, es decir,
𝑎 ≤ ¬𝑎, lo cual es absurdo. ▪

Esta proposición no solo es una versión más débil del teorema de Stone, sino que es una descripción de
las álgebras de Boole atómicas completas.
Corolario 27. Toda álgebra de Boole atómica es isomorfa a un álgebra de conjuntos. Toda álgebra de Boole
completa y atómica es isomorfa a un álgebra potencia.
Corolario 28. Las álgebras booleanas finitas son, salvo isomorfismos, las álgebras potencia de los conjuntos
finitos.
Demostración. Si 𝔅 es un álgebra booleana finita, entonces At 𝔅 es finita y 𝔅 es completa y atómica. Por la
proposición 26, 𝔅 es isomorfa a 𝑃(At 𝔅). ▪

En particular, un álgebra de Boole tendrá por cardinal un número natural si y solo si es una potencia de 2.
Corolario 29. Dos álgebras booleanas finitas son isomorfas si y solo si tienen la misma cardinalidad.
Demostración. Si 𝔄 y 𝔅 tienen la misma cardinalidad 𝜅, entonces, como 𝔄 ≃ 𝑃(At 𝔄) y 𝔅 ≃ 𝑃(At 𝔅), se
tiene que 𝜅 = 2𝑛 , donde 𝑛 = | At 𝔄| = | At 𝔅|. Recíprocamente, toda biyección entre At 𝔄 y At 𝔅 da lugar a
un isomorfismo entre 𝑃(At 𝔄) y 𝑃(At 𝔅) y, por ende, entre 𝔄 y 𝔅. ▪

Pasemos ahora a ver algunas definiciones y propiedades referentes a los filtros y ultrafiltros en álgebras de
Boole.
Los ultrafiltros son la principal herramienta en la prueba del teorema de Stone. Estos surgen de manera
natural a partir de los embebimientos de álgebras de Boole en álgebras potencia. Veamos, primeramente,
una definición más sencilla de lo que es un ultrafiltro en un álgebra booleana.
Sea 𝑒 ∶ 𝔅 → 𝑃(𝑋) un embebimiento o, para mayor generalidad, un homomorfismo. Entonces, para
cualquier punto 𝑥 ∈ 𝑋, el subconjunto

𝐹 = {𝑎 ∈ 𝔅 ∶ 𝑥 ∈ 𝑒(𝑎)}

de 𝔅 tiene las siguientes propiedades:

• 1 ∈ 𝐹, 0 ∉ 𝐹,
• 𝑎 ∧ 𝑏 ∈ 𝐹 si y solo si 𝑎, 𝑏 ∈ 𝐹,
• 𝑎 ∨ 𝑏 ∈ 𝐹 si y solo si 𝑎 ∈ 𝐹 o 𝑏 ∈ 𝐹,
• ¬𝑎 ∈ 𝐹 si y solo si 𝑎 ∉ 𝐹.

Los subconjuntos de 𝔅 con estas propiedades son exactamente los ultrafiltros de 𝔅. Pasemos ahora a la
definición en base a los filtros del álgebra.

TEMat, 3 (2019) e-ISSN: 2530-9633 81


Álgebras de Boole y la dualidad de Stone

Definición 30. Un ideal en un álgebra de Boole 𝔅 es un subconjunto, 𝐼, de 𝔅 tal que para cualesquiera
𝑎, 𝑏 ∈ 𝔅

• 0 ∈ 𝐼;
• si 𝑎, 𝑏 ∈ 𝐼, entonces 𝑎 ∨ 𝑏 ∈ 𝐼;
• si 𝑎 ∈ 𝐼 y 𝑏 ≤ 𝑎, entonces 𝑏 ∈ 𝐼. ◀

Un ideal 𝐼 es propio si y solo si 𝐼 ≠ 𝔅. En otro caso se dirá impropio.


Definición 31. Un filtro en un álgebra de Boole 𝔅 es un ideal en el álgebra dual 𝔅′ . Así, un subconjunto 𝐹
de 𝔅 es un filtro en 𝔅 si y solo si para cualesquiera 𝑎, 𝑏 ∈ 𝔅
• 1 ∈ 𝐹;
• si 𝑎, 𝑏 ∈ 𝐹, entonces 𝑎 ∧ 𝑏 ∈ 𝐹;
• si 𝑎 ∈ 𝐹 y 𝑎 ≤ 𝑏, entonces 𝑏 ∈ 𝐹. ◀

Un filtro 𝐹 es propio si y solo si 𝐹 ≠ 𝔅. En otro caso se dirá impropio. Un filtro 𝐹 es maximal si es propio
y no existe otro filtro en 𝔅 que lo contenga como subconjunto propio.
Observación 32. Para todo ideal 𝐼 se cumple que 0 ∈ 𝐼 y para todo filtro 𝐹, que 1 ∈ 𝐹. Además, un ideal es
propio si y solo si no contiene al 1 y un filtro lo es si y solo si no contiene al 0. ◀

Lema 33. Sea 𝔅 un álgebra de Boole. Si 𝑋 ⊂ ℬ, entonces

• 𝑋 es ideal de 𝔅 si y solo si {¬𝑎 ∶ 𝑎 ∈ 𝑋} es filtro en 𝔅.


• 𝑋 es filtro de 𝔅 si y solo si {¬𝑎 ∶ 𝑎 ∈ 𝑋} es ideal de 𝔅.

Si 𝔅 es un álgebra de Boole, la intersección de todo conjunto de filtros en 𝔅 es también un filtro en 𝔅. Así,


dado 𝑋 un subconjunto de 𝔅, hay un filtro mínimo, 𝐹(𝑋), en 𝔅 que incluye a 𝑋, a saber, la intersección de
todos los filtros en 𝔅 que incluyen a 𝑋. 𝐹(𝑋) es el filtro generado por 𝑋. Si 𝑋 es vacío, 𝐹(𝑋) = {1𝔅 }; si 𝑋 es
no vacío, 𝐹(𝑋) es el conjunto de los elementos 𝑏 ∈ 𝔅 tales que 𝑥1 ∧ … ∧ 𝑥𝑛 ≤ 𝑏 para 𝑛 ≥ 1 y 𝑥1 , … , 𝑥𝑛 ∈ 𝑋.
Del mismo modo, dado que la intersección de todo conjunto de ideales en 𝔅 es un ideal en 𝔅, si 𝑋 ⊆ 𝔅,
hay un menor ideal, 𝐼(𝑋), que incluye a 𝑋. 𝐼(𝑋) es el ideal generado por 𝑋. Si 𝑋 es vacío, 𝐼(𝑋) = {0}; si es
no vacío, 𝐼(𝑋) es el conjunto de los elementos 𝑏 ∈ 𝔅 tales que 𝑏 ≤ 𝑥1 ∨ … ∨ 𝑥𝑛 para 𝑛 ≥ 1 y 𝑥1 , … , 𝑥𝑛 ∈ 𝑋.
Definición 34. Si 𝔅 es un álgebra de Boole, decimos que un subconjunto 𝑋 ⊆ 𝔅 tiene la propiedad de la
intersección finita (PIF) si y solo si el ínfimo de todo subconjunto finito de 𝑋 es distinto de 0.
Decimos que 𝑋 tiene la propiedad de la unión finita (PUF) si y solo si el supremo de todo subconjunto
finito de 𝑋 es distinto de 1. ◀

Definición 35. Decimos que un ideal 𝐼 en un álgebra de Boole 𝔅 es primo si y solo si es propio y, para
cualesquiera 𝑎, 𝑏 ∈ 𝔅, si 𝑎 ∧ 𝑏 ∈ 𝐼 se tiene que 𝑎 ∈ 𝐼 o 𝑏 ∈ 𝐼.
Dualmente, un filtro 𝐹 en un álgebra 𝔅 es un ultrafiltro si y solo si es propio y, para cualesquiera 𝑎, 𝑏 ∈ 𝔅,
si 𝑎 ∨ 𝑏 ∈ 𝐹 se tiene que 𝑎 ∈ 𝐹 o 𝑏 ∈ 𝐹. ◀

Así, un ideal es primo si y solo si su filtro dual es un ultrafiltro, y un filtro es un ultrafiltro si y solo si su
ideal dual es primo.
Observación 36. Otra forma de definirlos y que resulta mucho más práctica a la hora de comprobar si un
conjunto es un ultrafiltro es la siguiente:

Un filtro 𝐹 en 𝔅 es un ultrafiltro si para cada 𝑥 ∈ 𝔅 se tiene que 𝑥 ∈ 𝐹 o ¬𝑥 ∈ 𝐹, pero no ambos. ◀

Proposición 37. Un filtro es maximal si y solo si es un ultrafiltro.


Demostración. Para un filtro 𝐹 y un elemento 𝑎 ∉ 𝐹, el conjunto {𝑏 ∈ 𝔅 ∶ ∃ 𝑧 ∈ 𝐹, 𝑧 ∧ ¬𝑎 ≤ 𝑏} es un filtro
que extiende a 𝐹 y contiene a ¬𝑎. ▪

82 [Link]
Corbalán Mirete

Teorema 38. Un subconjunto de un álgebra de Boole está contenido en un ultrafiltro si y solo si posee la
propiedad de intersección finita (PIF).
Demostración. Por tener la propiedad PIF, el filtro generado es propio, luego se tiene que el conjunto
{𝐹 ⊆ 𝔅 ∶ 𝑋 ⊆ 𝐹 y 𝐹 filtro propio} es no vacío. Aplicando el lema de Zorn y la proposición 37 se obtiene el
resultado. ▪
Corolario 39. Un elemento 𝑎 de un álgebra de Boole está contenido en un ultrafiltro si y solo si 𝑎 > 0.
Definición 40. Para un álgebra de Boole 𝔅,

Ult 𝔅 = {𝐹 ⊆ 𝔅 ∶ 𝐹 es un ultrafiltro de 𝔅}

es el conjunto de los ultrafiltros de 𝔅.


La aplicación 𝑠 ∶ 𝔅 → 𝑃(Ult 𝔅) definida por

𝑠(𝑥) = {𝐹 ∈ Ult 𝔅 ∶ 𝑥 ∈ 𝐹}

se denomina aplicación de Stone. ◀

Teorema 41 (de representación de Stone, versión conjuntista). Toda álgebra de Boole es isomorfa a un
álgebra de conjuntos.
Demostración. La prueba de que la aplicación de Stone 𝑠 es un homomorfismo de 𝔅 en 𝑃(Ult 𝔅) es análoga
a la que aparece en la proposición 26.
Veamos que 𝑠 es inyectiva. Consideremos 𝑥 ≠ 𝑦 en 𝔅; sin pérdida de generalidad podemos considerar
𝑥 ≰ 𝑦. Por tanto, 𝑥 ∧ ¬𝑦 > 0, por el lema 17 I). Por el corolario 39, sea 𝐹 un ultrafiltro que contenga a 𝑥 ∧ ¬𝑦,
de modo que, por una definición de ultrafiltro equivalente a la dada, contendrá a 𝑥 y a ¬𝑦. De ese modo, se
tiene que 𝑥 ∈ 𝐹 e 𝑦 ∉ 𝐹, siendo esto último por la observación 36, lo cual implica que 𝐹 ∈ 𝑠(𝑥) ⧵ 𝑠(𝑦). ▪

Recordemos que un álgebra de conjuntos es una subálgebra del álgebra potencia sobre un conjunto dado.
Esta versión del teorema de Stone establece que toda álgebra de Boole 𝔅 es isomorfa a un álgebra de
conjuntos, y gracias a la versión topológica que estudiaremos a continuación veremos que se trata del
álgebra de los clopen sobre un espacio topológico.

3. Espacios de Stone
Esta sección establece la dualidad fundamental entre las álgebras de Boole y unos espacios topológicos
especiales, los espacios de Stone. Así, el álgebra dual de un espacio de Stone 𝑋 es Clop(𝑋), el álgebra
de los subconjuntos clopen de 𝑋, y el espacio dual de un álgebra de Boole 𝔅 es el conjunto Ult 𝔅 de los
ultrafiltros de 𝔅, equipado con la llamada topología de Stone. El resultado de toda esta teoría es que toda
álgebra de Boole 𝔅 es isomorfa a Clop(Ult 𝔅) —para ser exactos, la aplicación 𝑠 ∶ 𝔅 → 𝑃(Ult 𝔅) definida
anteriormente es un isomorfismo entre 𝔅 y Clop(Ult 𝔅)—. En particular, obtendremos una versión más
fuerte del teorema de representación de Stone.
El álgebra Clop(𝑋) de los subespacios clopen de un espacio topológico arbitrario es uno de los ejemplos
estándar de álgebra de conjuntos. Para un espacio conexo 𝑋, sin embargo, este álgebra se reduce a {∅, 𝑋}.
Recordemos algunos conceptos topológicos antes de entrar en materia.
Definición 42. Diremos que 𝛽 ⊂ 𝜏 es una base de la topología 𝜏 si y solo si para todo punto 𝑝 contenido
en un abierto 𝑈 existe 𝐵 ∈ 𝛽 tal que 𝑝 ∈ 𝐵 ⊂ 𝑈. ◀

Equivalentemente, una familia 𝛽 no vacía de subconjuntos de 𝑋 formará base de alguna topología si se


cumple:
• ⋃{𝐵 ∶ 𝐵 ∈ 𝛽} = 𝑋.
• Para cualesquiera 𝐵, 𝐵′ ∈ 𝛽 se verifica que 𝐵 ∩ 𝐵′ = ∪𝛽𝑖 , para ciertos 𝛽𝑖 ∈ 𝛽.

TEMat, 3 (2019) e-ISSN: 2530-9633 83


Álgebras de Boole y la dualidad de Stone

Ahora introduciremos algunos axiomas de separación en topología, ya que haremos uso de ellos más
adelante. Un espacio topológico 𝑋 se dice que es
• 𝑇2 o Hausdorff si para todo 𝑥, 𝑦 ∈ 𝑋 con 𝑥 ≠ 𝑦 existen 𝑈, 𝑉 abiertos tales que 𝑥 ∈ 𝑈, 𝑦 ∈ 𝑉 y
𝑈 ∩ 𝑉 = ∅.
• normal si para todo par de cerrados disjuntos 𝐶, 𝐶 ′ ⊂ 𝑋 existen 𝑈, 𝑉 abiertos disjuntos tales que
𝐶 ⊂ 𝑈, 𝐶 ′ ⊂ 𝑉 y 𝑈 ∩ 𝑉 = ∅.
• 𝑇4 si es normal y 𝑇2 .
Definición 43. Un espacio topológico 𝑋 es compacto si todo cubrimiento por abiertos de 𝑋 admite un
subrecubrimiento finito. ◀

Proposición 44. Si 𝐾 es compacto y 𝑇2 , entonces 𝐾 es 𝑇4 .


Definición 45. Sea 𝑋 un espacio topológico. Diremos que 𝑋 es cero-dimensional si Clop(𝑋) es una base
de la topología de 𝑋. ◀

Definición 46. 𝑋 es un espacio de Stone si es Hausdorff, compacto y cero-dimensional. ◀

Que un espacio sea cero-dimensional es equivalente a que exista una base o subbase para 𝑋 formada por
conjuntos clopen. Por ejemplo, el espacio de los números irracionales con la topología heredada de ’ es
cero-dimensional, teniendo (𝑎, 𝑏) ∩ (’ ⧵ ‘) con 𝑎, 𝑏 ∈ ‘ como base de clopens.
Ejemplo 47. Veamos algunos ejemplos de espacios de Stone:

I) Todo espacio finito y discreto es de Stone. En particular, denotaremos como 2 al espacio de Stone
2 = {0, 1} con la topología discreta.
II) Por el teorema de Tychonoff, el espacio producto de cualquier familia de espacios de Stone es de
Stone. En particular, también lo es el espacio 2𝐼 para cualquier conjunto de índices 𝐼, el cual es
conocido como el espacio de Cantor de peso |𝐼|, para un 𝐼 infinito.
III) Todo subespacio cerrado de un espacio de Stone es un espacio de Stone. ◀

Definición 48. Un espacio 𝑋 diremos que es conexo si Clop(𝑋) = {∅, 𝑋}, es decir, si X no es la unión de
dos subconjuntos cerrados disjuntos no vacíos.
Un espacio topológico 𝑋 es totalmente disconexo si ningún subespacio con al menos dos elementos es
conexo. ◀

Teorema 49. Un espacio de Hausdorff compacto es cero-dimensional, y por tanto de Stone, si y solo si es
totalmente disconexo.
Demostración. Sea 𝑋 un compacto Hausdorff. Si 𝑋 es cero-dimensional e 𝑌 un subespacio de 𝑋 con dos
puntos distintos 𝑦 e 𝑦′ , entonces existe un clopen 𝐴 tal que 𝑦 ∈ 𝐴 e 𝑦′ ∉ 𝐴. Así que 𝑌 ∩ 𝐴 es un subconjunto
clopen propio no vacío de 𝑌 e 𝑌 no es conexo. Por consiguiente, 𝑋 es totalmente disconexo.
Recíprocamente, supongamos que 𝑋 es totalmente disconexo. Sean pues 𝑥 ∈ 𝑋 y 𝑈 un entorno abierto de
𝑥; debemos encontrar un clopen 𝐹 de 𝑋 tal que 𝑥 ∈ 𝐹 ⊆ 𝑈, probando así que Clop(𝑋) es una base. Para
ello definimos
ℱ = {𝐹 ∈ Clop(𝑋) ∶ 𝑥 ∈ 𝐹}, 𝑞 = 𝐹.

𝐹∈ℱ

Basta probar que 𝑞 ⊆ 𝑈 y que 𝑞 es clopen. En efecto, dado que 𝑋 es compacto, 𝑈 abierto y todo 𝐹 ∈ ℱ
cerrado, para algún subconjunto finito 𝐹 ′ de ℱ se tiene que ⋂ 𝐹 ′ ⊆ 𝑈 y podemos considerar 𝐹 = ⋂ 𝐹 ′ .
Veamos que 𝑞 = {𝑥}; para ello, supongamos que 𝑞 tiene al menos dos puntos, por lo que no es conexo al
ser 𝑋 totalmente disconexo. De este modo,

𝑞 = 𝑞1 ∪ 𝑞2 ,

donde 𝑞1 , 𝑞2 son cerrados disjuntos no vacíos de 𝑞. Ahora tenemos que 𝑞 es un subconjunto cerrado de 𝑋;
por tanto, cada 𝑞𝑖 es cerrado en 𝑋. Por la compacidad y, por tanto, normalidad de 𝑋, podemos escoger
dos abiertos disjuntos 𝑈1 , 𝑈2 tales que 𝑞𝑖 ⊆ 𝑈𝑖 . Entonces, 𝑞 ⊆ 𝑈1 ∪ 𝑈2 y, nuevamente por compacidad,

84 [Link]
Corbalán Mirete

𝐹 ⊆ 𝑈1 ∪ 𝑈2 para algún 𝐹 ∈ ℱ. De este modo, tanto 𝑈1 ∩ 𝐹 como 𝑈2 ∩ 𝐹 son clopen en 𝐹 y, por tanto, como
𝐹 es clopen, también en 𝑋. Dado que 𝑥 ∈ 𝐹, podemos asumir que 𝑥 ∈ 𝑈1 ∩ 𝐹. Entonces, 𝑈1 ∩ 𝐹 ∈ ℱ y
𝑞 ⊆ 𝑈1 ∩ 𝐹. Esto implica que 𝑞2 ⊆ 𝑞 ⊆ 𝑈1 , lo cual contradice que 𝑞2 ⊆ 𝑈2 , que los 𝑈𝑖 fuesen disjuntos y
que 𝑞𝑖 fuese no vacío. ▪

A esto se debe que a los compactos Hausdorff en ocasiones se les denote como compactos totalmente
disconexos o cero-dimensionales de manera indistinta.
Lema 50. Sea 𝑋 un espacio de Stone.

I) Si 𝐵 ⊆ Clop(𝑋) es una base para 𝑋 cerrada bajo uniones finitas, entonces 𝐵 = Clop(𝑋).
II) Si 𝑌 es un subespacio cerrado de 𝑋, entonces Clop(𝑌 ) = {𝑎 ∩ 𝑌 ∶ 𝑎 ∈ Clop(𝑋)}.
III) Si 𝑦, 𝑧 son subconjuntos cerrados y disjuntos de 𝑋, existe un subconjunto clopen de 𝑋 que separa 𝑦
de 𝑧, es decir, tal que 𝑦 ⊆ 𝑎 y 𝑧 ⊆ 𝑋 ⧵ 𝑎.

Ahora estamos preparados para probar la versión topológica del teorema de representación de Stone.
Recordemos que Ult 𝔅 es el conjunto de todos los ultrafiltros de un álgebra de Boole 𝔅 y que la aplicación
de Stone es un monomorfismo de álgebras de Boole. En particular, 𝑠(𝔅) es una familia de subconjuntos de
Ult 𝔅 cerrada bajo intersecciones finitas y, por tanto, base de una topología.
Definición 51. Para un álgebra de Boole 𝔅 se define la topología de Stone como la única topología en Ult 𝔅
que tiene como base 𝑠(𝔅).
Ult 𝔅 dotado de la topología de Stone es el espacio de Stone o espacio dual o el espacio de los ultrafiltros
de 𝔅. ◀

Teorema 52 (de representación de Stone, versión topológica). Toda álgebra de Boole es isomorfa al álgebra
de los clopen de un espacio de Stone. Más concretamente, el espacio dual Ult 𝔅 de un álgebra de Boole 𝔅
es un espacio de Stone y la aplicación de Stone 𝑠 ∶ 𝔅 → 𝑃(Ult 𝔅) es un isomorfismo entre 𝔅 y Clop(Ult 𝔅).
Demostración. Sea 𝔅 un álgebra de Boole y 𝑋 = Ult 𝔅 su espacio dual. 𝑋 es cero-dimensional puesto que
todos los elementos de la base 𝑠(𝑎) son clopen, por ser 𝑋 ⧵ 𝑠(𝑎) = 𝑠(¬𝑎). Además, 𝑋 es Hausdorff, pues si
suponemos que 𝐹, 𝐺 son dos ultrafiltros distintos de 𝔅, por la maximalidad de 𝐹 podemos tomar 𝑎 ∈ 𝐹 ⧵ 𝐺.
Entonces, 𝑠(𝑎) y 𝑠(¬𝑎) son entornos disjuntos de 𝐹 y 𝐺.
Veamos que 𝑋 es compacto. Para ello, sea 𝑈 un recubrimiento abierto de 𝑋. Bastará considerar el caso en
el que todo elemento de 𝑈 es un elemento básico; por ello, consideremos 𝑈 = {𝑠(𝑎) ∶ 𝑎 ∈ 𝐴}, con 𝐴 ⊆ 𝔅.
Supongamos que 𝑋 no posee subrecubrimiento finito; entonces, para 𝑛 ∈ Ž y 𝑎1 , … , 𝑎𝑛 ∈ 𝐴 se tiene que

𝑠(𝑎1 ) ∪ … ∪ 𝑠(𝑎𝑛 ) ≠ 𝑋 = 𝑠(1),

y, por tanto, 𝑎1 ∨ … ∨ 𝑎𝑛 ≠ 1 y ¬𝑎1 ∧ … ∧ ¬𝑎𝑛 ≠ 0. De esto, se sigue que el conjunto ¬𝐴 = {¬𝑎 ∶ 𝑎 ∈ 𝐴} tiene
la PIF. Por el teorema 38, consideremos ahora 𝐹 un ultrafiltro de 𝔅 que contiene a ¬𝐴. Entonces, para cada
𝑎 ∈ 𝐴 se tiene que ¬𝑎 ∈ 𝐹, 𝑎 ∉ 𝐹 y 𝐹 ∉ 𝑠(𝑎), lo cual contradice que 𝑈 es un cubrimiento de 𝑋.
Por tanto, 𝑋 es un espacio de Stone. Dado que la aplicación de Stone 𝑠 es un monomorfismo entre 𝔅 y
Clop(𝑋), por el lema 50 I) se tiene que Clop(𝑋) = 𝑠(𝔅) considerando 𝐵 = 𝑠(𝔅) la base de 𝑋. ▪
Definición 53. Para un espacio de Stone 𝑋, llamamos álgebra dual de 𝑋 a Clop(𝑋). Para cada 𝑥 ∈ 𝑋, el
conjunto
𝑡(𝑥) = {𝐴 ∈ Clop(𝑋) ∶ 𝑥 ∈ 𝐴}
es un ultrafiltro de Clop(𝑋). Esto define la aplicación de Stone

𝑡 ∶ 𝑋 → Ult Clop(𝑋). ◀

De este modo, vemos que el teorema 52 puede enunciarse de forma que establezca que toda álgebra de
Boole es isomorfa a su bidual, esto es, al álgebra dual de su espacio dual. Recíprocamente, todo espacio de
Stone es homeomorfo a su bidual.

TEMat, 3 (2019) e-ISSN: 2530-9633 85


Álgebras de Boole y la dualidad de Stone

Teorema 54. Todo espacio de Stone es homeomorfo al espacio de Stone de un álgebra de Boole. Más
concretamente, para un espacio de Stone 𝑋, la aplicación 𝑡 ∶ 𝑋 → Ult Clop(𝑋) es un homeomorfismo
entre 𝑋 y Ult Clop(𝑋).
Demostración. Basta probar que 𝑡 es continua y biyectiva puesto que tanto 𝑋 como Ult Clop(𝑋) son espacios
Hausdorff y compactos.
Consideremos 𝔄 = Clop(𝑋). La continuidad de 𝑡 se sigue del hecho de que las preimágenes de los conjuntos
básicos 𝑠(𝑎), 𝑎 ∈ 𝔄, son abiertos: para 𝑎 ∈ 𝔄 y 𝑥 ∈ 𝑋, se tiene 𝑥 ∈ 𝑡−1 (𝑠(𝑎)) si y solo si 𝑡(𝑥) ∈ 𝑠(𝑎) si y solo
si 𝑎 ∈ 𝑡(𝑥) si y solo si 𝑥 ∈ 𝑎, de modo que 𝑡−1 (𝑠(𝑎)) = 𝑎 es clopen.
Para probar que 𝑡 es inyectiva, consideremos 𝑥 e 𝑦 puntos distintos de 𝑋. Dado que 𝑋 es un espacio de
Stone, podemos tomar 𝑎 ∈ Clop(𝑋) tal que 𝑥 ∈ 𝑎 e 𝑦 ∉ 𝑎. Por tanto, 𝑎 ∈ 𝑡(𝑥) ⧵ 𝑡(𝑦).
Finalmente, para demostrar que 𝑡 es suprayectiva debemos considerar un ultrafiltro 𝐹 ∈ Ult Clop(𝑋).
Como 𝑋 es compacto y 𝐹 es una familia de subconjuntos cerrados de 𝑋 que posee la PIF, podemos tomar
𝑥 ∈ 𝑋 de modo que 𝑥 ∈ 𝑎 para cada 𝑎 ∈ 𝐹. Entonces, 𝐹 ⊆ 𝑡(𝑥) y, por la maximalidad del ultrafiltro 𝐹, se
tiene que 𝐹 = 𝑡(𝑥). ▪

Referencias
[1] BOOLE, George. The mathematical analysis of logic. Philosophical Library, 1847.
[2] BOOLE, George. An investigation of the laws of thought, on which are founded the mathematical
theories of logic and probabilities. Dover Publications, Inc., New York, 1957, xi+424 pp. (1 plate).
[3] CORBALÁN MIRETE, Clara María. Sumas torcidas de espacios de Banach. Trabajo de Fin de Máster.
Universidad de Murcia, 2018. URL: [Link]
C3%A1n+Mirete+-+[Link]/7150b8f5-7023-4679-9a9c-2fe41f74157a.
[4] JANÉ, Ignacio. Álgebras de Boole y lógica. Vol. 5. Materials Docents. Edicions Universitat Barcelona,
1989. ISBN: 978-84-7875-040-5.
[5] KOPPELBERG, Sabine. Handbook of Boolean algebras. Vol. 1. Edited by J. Donald Monk and Robert
Bonnet. North-Holland Publishing Co., Amsterdam, 1989, págs. xx+312. ISBN: 978-0-444-70261-6.

86 [Link]
Este trabajo colaboró con una conferencia plenaria durante el XVIII Encuentro Nacional
de Estudiantes de Matemáticas, celebrado en Sevilla en julio de 2017.

Buscando triángulos en grafos muy grandes:


un ejemplo de property testing

� Alberto Espuny Díaz Resumen: El property testing hace referencia a un conjunto de técnicas algorítmi-
University of Birmingham cas que se han desarrollado para conseguir algoritmos decisionales que trabajen
axe673@[Link] en tiempo sublineal en el tamaño de la entrada a cambio de perder precisión
en la respuesta del algoritmo. En este artículo presentamos una breve discusión
sobre el property testing, explicando el porqué de su utilidad y cómo valorar su
eficiencia. En particular, nos centramos en algoritmos que comprueban propieda-
des en grafos, presentando los tres modelos más utilizados para comprobar estas
propiedades y un ejemplo de cómo tratar una propiedad, la ausencia de triángulos,
en cada uno de ellos.

Abstract: Property testing refers to a group of algorithmic techniques developed


to achieve decision algorithms that work in sublinear time at the expense of some
accuracy in the algorithms’ output. In this paper, we present a brief discussion
about property testing, explaining its usefulness and how to evaluate the efficiency
of property testing algorithms. In particular, we consider algorithms that test graph
properties. We present the three most common property testing models for graphs
and, as an example, show how to test one property, triangle-freeness, in each of
these models.

Palabras clave: algoritmos, grafos, property testing, libre de triángulos,


regularidad, complejidad.
MSC2010: 05C85, 05D40, 68R10.
Recibido: 11 de septiembre de 2017.
Aceptado: 9 de septiembre de 2018.

Referencia: ESPUNY DÍAZ, Alberto. «Buscando triángulos en grafos muy grandes: un ejemplo de property testing ».
En: TEMat, 3 (2019), págs. 87-100. ISSN: 2530-9633. URL: [Link]

cb Este trabajo se distribuye bajo una licencia Creative Commons Reconocimiento 4.0 Internacional
[Link]
Buscando triángulos en grafos muy grandes: un ejemplo de property testing

1. Introducción
El desarrollo de los ordenadores y de los algoritmos que estos ejecutan ha permitido que a día de hoy
podamos resolver en unos pocos segundos problemas que hace cien años habrían llevado meses de trabajo
a un gran equipo de personas. Los problemas que se pueden resolver son muchos y muy variados, al igual
que lo son las ideas subyacentes en los algoritmos. Sin embargo, y al contrario de una noción bastante
extendida en la sociedad, no todos los problemas se pueden resolver rápido con nuestros ordenadores, y
no es cuestión solo de conseguir ordenadores más potentes.
En general, podemos decir que un algoritmo es un proceso que, dada una entrada de datos (un conjunto
de datos para el que queremos resolver un problema), sigue una serie de pasos hasta que resuelve el
problema. En general, cuanto más grande sea el conjunto de entrada, mayor será el tiempo que tarda el
algoritmo en resolver el problema, aunque sea solo porque necesita leer toda la entrada. Así, si el conjunto
de entrada tiene tamaño 𝑛 (en número de bits, aunque se acostumbra a utilizar el tamaño natural de
la entrada), el tiempo que tarda en resolver el problema es una función de 𝑛, y esta función es a lo que
llamamos la complejidad temporal del algoritmo. En general, nos interesa que los algoritmos resuelvan
problemas para entradas de datos muy grandes (porque esas son las que nos cuesta mucho resolver a
nosotros), de modo que nos interesa conocer cómo crece esta complejidad cuando 𝑛 tiende a infinito.
Vamos a considerar un par de ejemplos. Supongamos que la entrada de datos es un grafo con 𝑛 vértices;
es muy razonable suponer que queremos conocer una propiedad del grafo de entrada. Por ejemplo,
supongamos que queremos saber si el grafo es bipartito. En ese caso, es fácil demostrar que hay un
algoritmo lineal que permite resolver el problema (lineal en el tamaño de la entrada, que en este caso no
es 𝑛 sino 𝑛 más el número de aristas del grafo). Los algoritmos que tienen una complejidad lineal (y, en
general, polinómica) se consideran «eficientes» (o «rápidos»).
El problema de saber si un grafo es bipartito es equivalente a saber si es 2-coloreable. En general, consi-
deremos el problema de la 𝑘-coloreabilidad (es decir, queremos saber si los vértices del grafo se pueden
colorear con 𝑘 colores de manera que no haya dos vértices del mismo color unidos por una arista). Para
cualquier valor de 𝑘 ≥ 3 se sabe que este problema es NP-completo [17], lo que quiere decir que los
mejores algoritmos que conocemos para resolverlo tienen una complejidad superpolinomial (es decir, que
crece más rápido que cualquier polinomio) en el tamaño de la entrada. De hecho, los algoritmos exactos
que se conocen tienen complejidad exponencial. En general, se considera que los algoritmos que tienen
una complejidad superpolinomial son «ineficientes». Los ejemplos de problemas que se comportan de
este modo son muy variados, de manera que hay muchos problemas para los que un ordenador tardará
mucho tiempo en dar una respuesta exacta si el conjunto de datos de la entrada es grande.
Consideremos ahora un algoritmo eficiente (cuya complejidad sea polinomial), pero supongamos que
queremos estudiar una entrada de datos enorme. Por ejemplo, supongamos que queremos estudiar el
grafo de internet, o de Facebook, o estudiar una propiedad en una base de datos enorme de una empresa.
En estos casos, aunque el algoritmo sea eficiente, el simple hecho de leer toda la entrada de datos y
procesarla ya supone un coste absurdo, además de que solo el almacenamiento de los datos ya supondría
un problema (por el espacio de memoria que tienen los ordenadores).
Así pues, la pregunta natural es «¿qué podemos hacer en estos casos en los que queremos resolver un
problema pero no tenemos suficientes recursos temporales?».

2. Complejidad y notación asintótica


El análisis de algoritmos es una tarea imprescindible para saber si su implementación es adecuada o si los
recursos que necesitan para resolver un problema son excesivos. De este análisis se desprende la idea de
que los algoritmos sean eficientes o no, y a partir de este estudio se han desarrollado muchos problemas
en el área de la teoría de la computación.
En general, dado un algoritmo que resuelve un problema, el objetivo del análisis de algoritmos es determinar
los recursos (temporales, espaciales o de cualquier otro tipo) que el algoritmo necesita para resolver el
problema. La cantidad de recursos que necesita depende del tamaño de la entrada, pero distintas entradas
con el mismo tamaño pueden necesitar distintos recursos. En ese caso, se toma una cota superior sobre

88 [Link]
Espuny Díaz

los recursos que necesita considerando el peor caso de entre todas las entradas con el mismo tamaño.
Los recursos más estudiados habitualmente son el tiempo y el espacio, aunque en este artículo no nos
centraremos en el espacio.
Definición 1. La complejidad temporal de un algoritmo para cada valor de 𝑛 se define como el máximo
número total de operaciones atómicas que realiza el ordenador sobre todas las entradas de tamaño 𝑛. ◀

Nótese que esta definición no tiene que tener una equivalencia exacta con el tiempo real que tarda el
algoritmo. Este tiempo depende de muchos otros factores, como el ordenador empleado, la distribución de
los datos en la memoria o el tipo de operaciones que el ordenador realiza. Sin embargo, por simplicidad, se
suele trabajar en el modelo de coste uniforme, según el cual todas las operaciones que realiza el ordenador
tienen el mismo coste constante (operaciones atómicas). Este modelo es bastante adecuado si se puede
garantizar que el tiempo de todas las operaciones está acotado por alguna constante.
A la hora de estudiar la complejidad de algoritmos (y también el comportamiento de muchas estructuras
combinatorias que dependen de un cierto parámetro de tamaño 𝑛) muchas veces es interesante saber cuál
es su crecimiento asintótico en función del parámetro 𝑛 cuando este tiende a infinito. Esto es especialmente
útil cuando solo interesa saber cómo se comparan las complejidades de dos algoritmos diferentes. Para
hablar de estos comportamientos asintóticos es útil emplear la notación asintótica.
Definición 2. Sean 𝑓 y 𝑔 dos funciones de 𝑛 que toman solo valores no negativos.

• Decimos que 𝑓(𝑛) = 𝒪 (𝑔(𝑛)) (y se lee que «𝑓 es o grande de 𝑔») si y solo si existen constantes 𝑀 ∈ ’
y 𝑛0 ∈ Ž tales que 𝑓(𝑛) ≤ 𝑀𝑔(𝑛) para todo 𝑛 ≥ 𝑛0 .
• Decimos que 𝑓(𝑛) = 𝑜 (𝑔(𝑛)) (y se lee que «𝑓 es o pequeña de 𝑔») si y solo si para toda constante
𝛿 > 0 existe una constante 𝑁 ∈ Ž tal que 𝑓(𝑛) ≤ 𝛿𝑔(𝑛) para todo 𝑛 ≥ 𝑁. Equivalentemente, si 𝑔 no
𝑓(𝑛)
se anula a partir de un cierto punto, podemos decir que 𝑓(𝑛) = 𝑜 (𝑔(𝑛)) si lím = 0.
𝑛→∞ 𝑔(𝑛)

• Decimos que 𝑓(𝑛) = Ω (𝑔(𝑛)) (y se lee que «𝑓 es omega grande de 𝑔») si y solo si existen constantes
𝑀 ∈ ’ y 𝑛0 ∈ Ž tales que 𝑓(𝑛) ≥ 𝑀𝑔(𝑛) para todo 𝑛 > 𝑛0 . Equivalentemente, podemos decir que
𝑓(𝑛) = Ω (𝑔(𝑛)) si y solo si 𝑔(𝑛) = 𝒪 (𝑓(𝑛)).
• Decimos que 𝑓(𝑛) = Θ (𝑔(𝑛)) (y se lee que «𝑓 es theta de 𝑔») si y solo si existen constantes 𝑘1 , 𝑘2 ∈ ’
y 𝑛0 ∈ Ž tales que 𝑘1 𝑔(𝑛) ≤ 𝑓(𝑛) ≤ 𝑘2 𝑔(𝑛) para todo 𝑛 ≥ 𝑛0 . Equivalentemente, decimos que
𝑓(𝑛) = Θ (𝑔(𝑛)) si y solo si 𝑓(𝑛) = 𝒪 (𝑔(𝑛)) y 𝑓(𝑛) = Ω (𝑔(𝑛)). ◀

Nótese que aquí el uso de «=» es un abuso de notación. Se puede utilizar 𝒪(𝑔(𝑛)) para denotar el conjunto
de todas las funciones 𝑓 que cumplen la definición 2 (y lo mismo se puede hacer para las otras notaciones
presentadas). De este modo, el símbolo «=» indica que 𝑓 pertenece a ese conjunto, no la igualdad.
Al trabajar con la complejidad (temporal, digamos) de un algoritmo es muy habitual utilizar este tipo de
notación. Así, por ejemplo, se pueden programar algoritmos para determinar si un grafo 𝐺 = (𝑉, 𝐸) es
bipartito o no con complejidad 𝒪(|𝑉| + |𝐸|). En general, la notación o grande se utiliza para dar cotas
superiores sobre la complejidad.
Es habitual hablar de la «complejidad» de un problema para referirnos a la complejidad de un algoritmo
que resuelve el problema de manera óptima. Si sabemos que ningún algoritmo podrá resolver el problema
con una complejidad menor que una determinada función, esta constituye una cota inferior, y podemos
utilizar la notación omega grande para denotar esta cota.

3. Property testing
La idea básica del property testing surge como una respuesta natural a la pregunta final de la introducción:
«¿Qué podemos hacer si queremos resolver un problema pero no tenemos suficientes recursos temporales?».
Digamos que tenemos una cierta estructura de datos y queremos saber si cumple una cierta propiedad (por
ejemplo, dada una función 𝑓 como un conjunto de pares (𝑥, 𝑦), donde 𝑦 = 𝑓(𝑥), podemos querer saber si 𝑓
es lineal o no). Nuestro objetivo es desarrollar algoritmos que nos permitan saber esto y cuya complejidad
sea mejor que la de los algoritmos exactos. Como nuestros algoritmos exactos no son suficientemente

TEMat, 3 (2019) e-ISSN: 2530-9633 89


Buscando triángulos en grafos muy grandes: un ejemplo de property testing

eficientes para nuestros objetivos, a cambio estamos dispuestos a sacrificar parte del conocimiento que
queremos obtener; en particular, en lugar de saber si la propiedad se cumple o no, nos puede interesar
saber si se cumple o está «lejos» de cumplirse, y nos podemos conformar con saber esto no de manera
exacta, pero sí con una probabilidad suficientemente grande. Con esta premisa, nos gustaría desarrollar
algoritmos ultraeficientes.
Para ser precisos, un algoritmo de property testing toma una decisión aproximada sobre si la estructura
de datos presenta o está «lejos» de presentar la propiedad estudiada, donde «lejos» quiere decir que la
entrada se debe modificar de un modo no negligible para que llegue a tener la propiedad. Para ello, al
algoritmo se le proporciona un parámetro de distancia, 𝜀, y el algoritmo deberá aceptar la entrada con
probabilidad alta si presenta la propiedad, rechazarla con probabilidad alta si está 𝜀-lejos de presentarla, y
puede contestar cualquier cosa en el caso restante. Por probabilidad alta queremos decir probabilidad
mayor que 2/3, aunque esta es una convención, y se podría tomar cualquier probabilidad mayor que 1/2.
La definición de distancia se debe especificar en cada problema concreto.
Podemos observar que el solo hecho de leer toda la entrada ya supone un coste lineal para el algoritmo,
de modo que no vamos a poder mejorar esto. En su lugar, lo que suponemos es que el algoritmo no lee la
entrada, sino que los datos de entrada están almacenados en algún sitio y nuestro algoritmo tiene acceso a
un oráculo que conoce estos datos. El algoritmo tiene permitido hacer consultas a este oráculo, de manera
que podemos leer solo una parte pequeña de los datos, ahorrando así mucho tiempo al algoritmo. Nuestro
objetivo general, ahora, es encontrar algoritmos con complejidad sublineal; en particular, el uso de esta
teoría ha permitido desarrollar algoritmos que tienen una complejidad independiente del tamaño de la
entrada, es decir, podríamos decir que tienen complejidad constante.
El property testing se comenzó a estudiar en los años 90, siendo utilizado implícitamente por Blum,
Luby y Rubinfeld [7] y definido formalmente por primera vez por Rubinfeld y Sudan [25] en 1996. Más
tarde, Goldreich, Goldwasser y Ron [12] extendieron la definición a un contexto más general y empezaron
a estudiar propiedades de grafos. El estudio del property testing se ha hecho muy generalizado desde
entonces y se han obtenido aplicaciones muy variadas, como algoritmos para trabajar con diferentes
propiedades algebraicas de funciones, con funciones lógicas, propiedades geométricas, de lenguajes
restringidos, de distribuciones, etc. Pero quizá el área en la que más énfasis se ha dado al property testing
es en combinatoria y, en particular, en teoría de grafos. Nosotros nos vamos a concentrar en una de estas
aplicaciones; para leer sobre otros muchos problemas, técnicas y aplicaciones se puede acudir al estudio
de Ron [24], aunque también existen otros estudios menos enfocados a la parte combinatoria y numerosos
artículos.
Dado un algoritmo cualquiera, el estudio de su complejidad es siempre necesario para saber si implemen-
tarlo vale la pena. En el caso del property testing vamos a considerar especialmente dos tipos de recursos:
el tiempo y el número de consultas al oráculo. Podemos hablar así de complejidad de consultas.
Definición 3. La complejidad de consultas para cada valor de 𝑛 de un algoritmo con acceso a un oráculo
se define como el máximo número total de consultas que realiza el algoritmo sobre todas las entradas de
tamaño 𝑛. ◀

En este artículo nos centramos en trabajar con grafos. Recordamos que un grafo se define como un par
𝐺 = (𝑉, 𝐸) donde 𝑉 es un conjunto de vértices y 𝐸 ⊆ 𝑉 × 𝑉 es un conjunto de pares de vértices, que se
denominan aristas. Por simplicidad, denotaremos una arista (𝑢, 𝑣) como 𝑢𝑣. Los vértices de un grafo se
suelen representar mediante puntos, y las aristas, mediante líneas que unen los puntos. Dada una arista,
decimos que es incidente a un vértice si uno de sus dos extremos es dicho vértice. El número de aristas
incidentes a un vértice es su grado. Para un vértice 𝑣, decimos que un vértice 𝑢 es vecino de 𝑣 si 𝑢𝑣 ∈ 𝐸.
Decimos que un grafo es simple si no hay aristas múltiples (dos o más aristas uniendo los mismo vértices)
ni aristas que unan un vértice consigo mismo. Aquí nos centraremos solo en grafos simples.
Sea 𝐺 = (𝑉, 𝐸) un grafo simple con |𝑉| = 𝑛. A la hora de dar este grafo como una entrada para un algoritmo,
los vértices se deben etiquetar, es decir, se les da un orden 𝑣1 , 𝑣2 , … , 𝑣𝑛 . Las formas de dar las aristas pueden
ser diferentes, y los algoritmos que se desarrollan dependen de esta estructura de datos.
Para trabajar con problemas de grafos en property testing se han definido varios modelos. Cada uno de
ellos tiene sus particularidades y su utilidad, y es interesante en general estudiar problemas en los distintos
modelos.

90 [Link]
Espuny Díaz

3.1. El modelo de grafos densos


Una de las estructuras de datos tradicionales para almacenar grafos es la que se denomina la matriz de
adyacencia, una matriz cuadrada 𝐴 = (𝑎𝑖,𝑗 )𝑛𝑖,𝑗=1 de tamaño 𝑛 × 𝑛 en la que las filas y columnas se numeran
con las etiquetas de los vértices, y la entrada 𝑎𝑖,𝑗 toma el valor 1 si 𝑣𝑖 𝑣𝑗 ∈ 𝐸(𝐺), y 0 en caso contrario.
Dada esta estructura de datos, las consultas que se le pueden hacer al oráculo son del tipo «¿hay una arista
entre los vértices 𝑣𝑖 y 𝑣𝑗 del grafo?», y la respuesta del oráculo deberá ser «sí» o «no». A estas consultas las
denominaremos consultas de par de vértices. La idea de distancia que emplearemos también tiene que
ver con esta representación del grafo. Diremos que un grafo 𝐺 está 𝜀-lejos de tener una propiedad si hay
que modificar por lo menos 𝜀𝑛2 entradas de la matriz de adyacencia para que 𝐺 presente dicha propiedad,
es decir, si hay que modificar 𝜀𝑛2 /2 aristas del grafo. Nótese que el número máximo de aristas que un grafo
puede tener es (𝑛2 ) ≈ 𝑛2 /2. Este modelo fue introducido por Goldreich, Goldwasser y Ron [12].
El motivo por el que este modelo se conoce como el de grafos densos tiene que ver con esta noción de
distancia. Sea {𝐺𝑛 ∶ 𝑛 ∈ Ž} una secuencia de grafos tales que 𝐺𝑛 tiene 𝑛 vértices. Decimos que los grafos
de la secuencia son densos (a partir de un índice 𝑛0 ) si existe alguna constante 𝛿 tal que todos los grafos
𝐺𝑛 con 𝑛 ≥ 𝑛0 tienen al menos 𝛿𝑛2 aristas. Por comodidad, no hablaremos de secuencias de grafos, sino
solo de grafos densos, pero siempre con la idea subyacente de que el tamaño de los grafos tiende a infinito.
Es en este tipo de grafos en los que es más interesante estudiar propiedades en este modelo, ya que,
por ejemplo, cualquier grafo no denso nunca estará 𝜀-lejos de una propiedad que se pueda conseguir
eliminando aristas, de modo que nuestros algoritmos no podrán determinar si la tiene o no.

3.2. El modelo de grado acotado


La otra estructura de datos tradicional para presentar los grafos se conoce como la lista de incidencia, y
consiste en una lista de los vértices vecinos a 𝑣𝑖 para cada 𝑖 ∈ {1, … , 𝑛}. El orden en que aparecen estos
vecinos puede ser arbitrario, e induce un doble etiquetado de las aristas del grafo. Si el grado de todos los
vértices está uniformemente acotado por una cota 𝑑, esta estructura de datos presenta toda la información
sobre las aristas del grafo de una forma bastante compacta.
Si tenemos esta estructura de datos, para cada vértice 𝑢 las consultas que se le pueden hacer al oráculo
son del tipo «¿cuál es el 𝑖-ésimo vecino de 𝑢?». La respuesta del oráculo deberá ser o bien un vértice 𝑣, que
aparece en la 𝑖-ésima posición en la lista de incidencia de 𝑢, o bien un símbolo especial si el grado de 𝑢 es
menor que 𝑖. A estas consultas las denominaremos consultas de vecindad. La distancia que definimos
también tiene que ver con la estructura de datos: diremos que un grafo está 𝜀-lejos de tener una propiedad
si hay que modificar más de 𝜀𝑛𝑑 entradas de la lista de incidencia para que obtenga la propiedad. Nótese
que el máximo número de aristas que puede tener el grafo, dada la cota sobre el grado, es 𝑛𝑑/2.
Este modelo, introducido por Goldreich y Ron [13], es especialmente útil para grafos en los que el número
de aristas es del orden de 𝑛𝑑, es decir, aquellos en los que el grado medio del grafo es del mismo orden
que el grado máximo. En particular, como veremos, esto es cierto si 𝑑 es una constante.

3.3. El modelo de grafos generales


El modelo de grafos generales fue introducido por Kaufman, Krivelevich y Ron [18] después de que Parnas
y Ron [22] propusieran separar el modelo de la estructura de datos utilizada e introdujesen un modelo
intermedio. Así, sin conocer la estructura de datos empleada, el oráculo puede responder tanto a consultas
de par de vértices como de vecindad. Además, a veces también se le permite responder a la consulta «¿cuál
es el grado del vértice 𝑢?», aunque nosotros no utilizaremos este tipo de consultas.
Dado que la estructura de datos no se conoce, la distancia en este modelo no se mide respecto al máximo
número de aristas que el grafo podría tener, sino respecto al número de aristas que tiene. Así, decimos que
un grafo 𝐺 = (𝑉, 𝐸) está 𝜀-lejos de presentar una propiedad si hay que modificar al menos 𝜀|𝐸| aristas para
que la propiedad se dé.
El modelo de grafos generales es hasta ahora el menos estudiado de los tres. Presenta la ventaja de que
se puede trabajar con todo tipo de grafos, pero el análisis de algoritmos en él puede llegar a ser muy

TEMat, 3 (2019) e-ISSN: 2530-9633 91


Buscando triángulos en grafos muy grandes: un ejemplo de property testing

complejo. En cualquier caso, cabe insistir en que los modelos no son equivalentes. En este sentido, un
mismo problema estudiado en modelos diferentes puede tener soluciones también diferentes. Veremos
un ejemplo de esto más adelante.

4. El problema de la ausencia de triángulos


Sea 𝐺 = (𝑉, 𝐸) un grafo. Sean 𝑢, 𝑣, 𝑤 ∈ 𝑉(𝐺) tres vértices cualesquiera. Si 𝑢𝑣, 𝑢𝑤, 𝑣𝑤 ∈ 𝐸(𝐺), decimos
que estas tres aristas forman un triángulo. Si 𝐺 no tiene ningún triángulo, decimos que 𝐺 está libre de
triángulos. A la propiedad de que 𝐺 esté libre de triángulos la llamamos ausencia de triángulos.
Supongamos que tenemos un grafo grande y queremos saber si está libre de triángulos. Un algoritmo
exacto que comprueba si el grafo está libre de triángulos mediante una búsqueda en anchura tiene una
complejidad lineal (𝒪(|𝑉| + |𝐸|)), de modo que es un problema que se resuelve de manera muy eficiente,
pero ¿qué pasa si el tamaño del grafo es tal que un tiempo lineal no es suficiente, o que nuestro ordenador
no tiene suficiente memoria para almacenar los datos? Vamos a intentar resolver este problema como un
ejemplo de property testing en cada uno de los modelos.

4.1. Ausencia de triángulos en el modelo de grado acotado


El problema de la ausencia de triángulos en el modelo de grado acotado fue resuelto por Goldreich y
Ron [13] en el mismo artículo en que introdujeron dicho modelo. La solución que dieron se basa en dar
directamente un algoritmo bastante sencillo:

Algoritmo 1 (comprueba la ausencia de triángulos para grafos en el modelo de grado acotado).


1: Entrada: tamaño del grafo 𝑛, grado máximo 𝑑 y parámetro de distancia 𝜀
2: seleccionar uniforme e independientemente 𝑠 = Θ (1/𝜀) vértices de 𝐺
3: etiquetar los vértices seleccionados como 𝑣1 , 𝑣2 , … , 𝑣𝑠
4: para 𝑖 = 1 hasta 𝑠 hacer
5: consultar todos los vecinos de 𝑣𝑖
6: para cada vecino 𝑢 de 𝑣𝑖 hacer
7: consultar todos los vecinos de 𝑢
8: comprobar si algún vecino de 𝑢 es vecino de 𝑣𝑖
9: si sí, entonces
10: rechazar
11: fin si
12: fin para
13: fin para
14: aceptar

Lo que hace este algoritmo es buscar triángulos de los que forme parte alguno de los vértices 𝑣𝑖 selecciona-
dos. Para cada 𝑖 ∈ {1, … , 𝑠}, lo que hace el algoritmo es seleccionar todos los vecinos de 𝑣𝑖 y, para cada uno
de estos, comprobar si cierra un triángulo con alguno de los otros vecinos (línea 8). Si el algoritmo consigue
encontrar un solo triángulo, entonces rechaza la entrada (es decir, el algoritmo afirma que el grafo está
𝜀-lejos de la ausencia de triángulos); si no encuentra ningún triángulo, entonces acepta la entrada.
Teorema 4. El algoritmo 1 es un algoritmo que comprueba la ausencia de triángulos en un grafo en el
modelo de grado acotado con 𝒪 (𝑑2 /𝜀) consultas en tiempo 𝒪 (𝑑3 /𝜀).
Demostración. Para demostrar este teorema hay que comprobar varias cosas: que el algoritmo es correcto
(es decir, que dada una entrada cualquiera contesta de forma correcta con las probabilidades pertinentes)
y que se cumplen las dos cotas de complejidad dadas.
En primer lugar, es muy fácil observar que si el grafo sobre el que se hacen consultas no tiene triángulos, el
algoritmo nunca podrá encontrar ninguno y aceptará la entrada con probabilidad 1. Ahora concentrémonos
en el bucle que empieza en la línea 6. En cada iteración el algoritmo realiza como mucho 𝑑 consultas

92 [Link]
Espuny Díaz

para obtener los vecinos de 𝑣𝑖 , y después 𝑑 consultas para cada uno de ellos, lo que supone un total de
como máximo 𝑑2 + 𝑑 consultas. Dado que al bucle se entra Θ (1/𝜀) veces, está claro que el número total de
consultas es 𝒪 (𝑑2 /𝜀). En cuando al tiempo que tarda el algoritmo en total, en el mismo bucle tenemos que
comprobar si se cierran triángulos. Para esto, para cada uno de los vecinos 𝑢 de 𝑣𝑖 (de los que hay como
máximo 𝑑) comparamos cada vecino de 𝑢 con cada uno de los vecinos de 𝑣𝑖 ; esto supone un máximo
de como mucho 𝑑3 comparaciones. De este modo, la cota 𝒪 (𝑑3 /𝜀) sobre la complejidad temporal del
algoritmo está clara.
Finalmente, queda comprobar que si el grafo que estudiamos está 𝜀-lejos de la ausencia de triángulos,
entonces el algoritmo 1 rechazará la entrada con probabilidad al menos 2/3. Por definición, si el grafo
está 𝜀-lejos de la ausencia de triángulos, entonces hay que realizar al menos 𝜀𝑛𝑑 modificaciones sobre las
aristas para convertirlo en un grafo libre de triángulos. Como añadir aristas nunca nos ayuda a eliminar
triángulos, esto quiere decir que debemos eliminar al menos 𝜀𝑛𝑑 aristas para eliminar todos los triángulos
del grafo, lo cual significa que hay al menos 𝜀𝑛𝑑 aristas del grafo que forman parte de triángulos. Ahora
bien, como cada vértice tiene grado como máximo 𝑑, eso quiere decir que hay al menos 𝜀𝑛 vértices del
grafo que forman parte de triángulos. Así, al elegir los 𝑠 vértices se puede tomar una constante (implícita
en la notación Θ) suficientemente grande como para que la probabilidad de que al menos uno de los 𝑠
vértices seleccionados pertenezca a un triángulo sea al menos 2/3. Y, entonces, el algoritmo encontrará
ese triángulo y rechazará la entrada. ▪

En particular, podemos calcular el valor de esa constante implícita. Como la muestra se toma de manera
independiente, tenemos que la probabilidad de que cada uno de los vértices elegidos pertenezca a un
triángulo es mayor o igual que 𝜀, de modo que la probabilidad de que no pertenezca a ningún triángulo es
menor o igual que 1 − 𝜀. Después de tomar 𝑠 vértices, la probabilidad de que ninguno pertenezca a un
triángulo es menor o igual que (1 − 𝜀)𝑠 , así que la probabilidad de que alguno de los vértices pertenezca a
un triángulo es

Pr(algún vértice de la muestra pertenezca a un triángulo) ≥ 1 − (1 − 𝜀)𝑠 ≥ 1 − e−𝜀𝑠 .

Como queremos que esta probabilidad sea de al menos 2/3, tenemos que

2 1 log 3
1 − e−𝜀𝑠 ≥ ⟺ 𝑒−𝜀𝑠 ≤ ⟺ 𝜀𝑠 ≥ log 3 ⟺ 𝑠 ≥ ,
3 3 𝜀
de modo que tomar 𝑠 = log 3/𝜀 es suficiente para que el algoritmo funcione.
Es interesante remarcar el hecho de que la cota que hemos obtenido sobre el número de consultas no
depende de 𝑛, como tampoco lo hace la complejidad temporal del algoritmo. Así, podemos ir aumentando
el tamaño del grafo tanto como queramos, y nuestro algoritmo siempre tardará el mismo tiempo en
decidir.
Por otra parte, si queremos afinar más nuestra decisión, nos interesará variar el parámetro 𝜀. Si el parámetro
es muy pequeño podremos distinguir grafos que están más cerca según nuestra distancia, con lo cual
podríamos decir que la respuesta del algoritmo es mejor en este sentido (distingue grafos que no distinguiría
para valores de 𝜀 más grandes). Como queremos variar este parámetro, también es bueno saber cómo
varía la complejidad del algoritmo respecto a él. Y lo que tenemos en este caso, en virtud del teorema
anterior, es que la complejidad (tanto temporal como del número de consultas) es lineal en el inverso de 𝜀,
es decir, el algoritmo es bastante eficiente también en este sentido.

4.2. Ausencia de triángulos en el modelo de grafos densos: regularidad


Vamos a considerar ahora el mismo problema, pero trabajando en el modelo de grafos densos. Así, podemos
suponer que los grafos que queremos estudiar tienen un número cuadrático de aristas. Para poder resolver
bien el problema en este contexto vamos a necesitar una serie de definiciones y un resultado central en la
combinatoria extremal de los últimos cincuenta años.
Dado un grafo 𝐺 = (𝑉, 𝐸), sean 𝐴 y 𝐵 dos conjuntos no vacíos de vértices tales que 𝐴 ∩ 𝐵 = ∅. Supongamos
que 𝐸(𝐴, 𝐵) representa el conjunto de aristas cuyos vértices están uno en 𝐴 y otro en 𝐵.

TEMat, 3 (2019) e-ISSN: 2530-9633 93


Buscando triángulos en grafos muy grandes: un ejemplo de property testing

Definición 5. La densidad del par 𝐴, 𝐵 se define como


|𝐸(𝐴, 𝐵)|
𝑑(𝐴, 𝐵) = . ◀
|𝐴||𝐵|
Definición 6. Se dice que el par 𝐴, 𝐵 es 𝛾-regular, para algún 𝛾 ∈ [0, 1], si para todo par de conjuntos
𝐴′ ⊆ 𝐴, 𝐵′ ⊆ 𝐵 con |𝐴′ | ≥ 𝛾|𝐴| y |𝐵 ′ | ≥ 𝛾|𝐵| se cumple que |𝑑(𝐴′ , 𝐵′ ) − 𝑑(𝐴, 𝐵)| < 𝛾. ◀

Una de las herramientas centrales en combinatoria extremal hoy en día, aunque también tiene muchas
aplicaciones en otros campos, es el siguiente lema, debido a Szemerédi [26].
Lema 7 (lema de regularidad de Szemerédi). Para cualquier ℓ0 ∈ Ž y cualquier 𝛾 ∈ (0, 1] existe un entero
𝑀 = 𝑀(ℓ0 , 𝛾) tal que todo grafo 𝐺 = (𝑉, 𝐸) con 𝑛 ≥ 𝑀 vértices tiene una partición 𝒜 = {𝑉1 , … , 𝑉ℓ } de 𝑉
con ||𝑉𝑖 | − |𝑉𝑗 || ≤ 1 para todo 𝑖, 𝑗 ∈ {1, … , ℓ}, donde ℓ0 ≤ ℓ ≤ 𝑀, tal que todos los pares (𝑉𝑖 , 𝑉𝑗 ) excepto como
mucho 𝛾(ℓ2) son 𝛾-regulares.

La demostración de este resultado no es complicada, pero nos interesa más ver una de sus aplicaciones.
Vamos a presentar un algoritmo muy simple que comprueba si un grafo cualquiera está libre de triángulos
o está 𝜀-lejos de estarlo, y vamos a utilizar el lema 7 para analizarlo.

Algoritmo 2 (comprueba la ausencia de triángulos para grafos en el modelo de grafos densos).


1: Entrada: tamaño del grafo 𝑛 y parámetro de distancia 𝜀
2: 𝑀 ← 𝑀(8/𝜀, 𝜀/8)
3: seleccionar uniforme e independientemente 𝑠 = Θ (𝑀 2 /𝜀3 ) vértices de 𝐺
4: consultar todos los pares de vértices
5: si encuentra un triángulo, entonces
6: rechazar
7: en caso contrario
8: aceptar
9: fin si

Teorema 8. El algoritmo 2 es un algoritmo que comprueba la ausencia de triángulos en un grafo en el


modelo de grafos densos con complejidad temporal y de consultas 𝒪 (𝑀 4 /𝜀6 ).
Demostración. En el caso de que el grafo de la entrada no tenga ningún triángulo, está claro que el
algoritmo 2 no podrá encontrar ninguno, así que dirá que el grafo está libre de triángulos con probabilidad
1. De este modo, debemos comprobar que el algoritmo es correcto cuando el grafo 𝐺 = (𝑉, 𝐸) de la entrada
está 𝜀-lejos de la ausencia de triángulos.
Por el lema 7, tomando ℓ0 = 8/𝜀 y 𝛾 = 𝜀/8, sabemos que existe una partición 𝒜 = {𝑉1 , … , 𝑉ℓ } de los vértices
de 𝐺 en ℓ partes, ℓ0 ≤ ℓ ≤ 𝑀 = 𝑀(𝜀), con las propiedades dadas por el lema. Cada una de las partes tendrá
tamaño ⌊𝑛/ℓ⌋ o ⌈𝑛/ℓ⌉; como trabajamos con problemas asintóticos, tenemos que 𝑛 tiende a infinito y
podemos despreciar los errores de redondeo, y trabajar solo con 𝑛/ℓ. Alternativamente, también se puede
pensar que tomamos 𝑛 múltiplo de ℓ para este desarrollo.
Si nos fijamos en una cualquiera de las partes de la partición, el número máximo de aristas que puede haber
2 2
en su interior es (𝑛/ℓ
2
) ≤ 12 (𝑛/ℓ) , lo que supone un total de como máximo ℓ2 (𝑛/ℓ) = 21ℓ 𝑛2 ≤ 21ℓ 𝑛2 = 16
𝜀 2
𝑛
0
aristas. Si definimos un grafo 𝐺1 como el grafo que se obtiene de 𝐺 después de eliminar todas estas aristas,
tenemos que 𝐺1 está al menos ( 15 16
𝜀)-lejos de estar libre de triángulos.
Consideremos ahora las parejas de la partición de 𝐺 que no son regulares. Por el lema 7, hay como máximo
𝜀 2
𝜀 ℓ
( ) ≤ 16
8 2
ℓ parejas de estas, y cada pareja puede formar un total de como máximo (𝑛/ℓ)2 aristas, de modo
que en total hay como máximo 16𝜀 ℓ2 (𝑛/ℓ)2 = 16𝜀 𝑛2 aristas entre las parejas no regulares. Si definimos un
grafo 𝐺2 como el que se obtiene de 𝐺1 después de eliminar todas las aristas que hay entre las parejas no
regulares, tenemos que 𝐺2 está al menos ( 78 𝜀)-lejos de la ausencia de triángulos.
Consideremos, finalmente, las parejas (𝑉𝑖 , 𝑉𝑗 ) de la partición con 𝑑(𝑉𝑖 , 𝑉𝑗 ) < 𝜀/2, es decir, aquellas en las que
|𝐸(𝑉𝑖 , 𝑉𝑗 )| < 2𝜀 (𝑛/ℓ)2 . El número de parejas con esta propiedad es como máximo (ℓ2) ≤ ℓ2 /2 (en el caso de
que todas tengan la propiedad), de modo que el número total de aristas que hay entre todas estas parejas

94 [Link]
Espuny Díaz

de la partición es de como máximo 4𝜀 𝑛2 . Si definimos un grafo 𝐺3 como el que se obtiene de 𝐺2 después


de eliminar todas estas aristas, tenemos que 𝐺3 está al menos ( 58 𝜀)-lejos de la ausencia de triángulos.
En particular, como nuestro grafo aún tiene triángulos, tienen que existir tres índices 𝑖, 𝑗 y 𝑘 tales que
𝑑(𝑉𝑖 , 𝑉𝑗 ), 𝑑(𝑉𝑗 , 𝑉𝑘 ), 𝑑(𝑉𝑖 , 𝑉𝑘 ) ≥ 𝜀/2. Todo este proceso de eliminación de aristas se muestra en la figura 1.
Vamos a demostrar ahora que el hecho de que exista esta terna (𝑉𝑖 , 𝑉𝑗 , 𝑉𝑘 ) tal que todas las parejas son
𝜀
8
-regulares y tienen densidad al menos 𝜀/2 implica que en el grafo va a haber muchos triángulos, y que
una muestra suficientemente grande conseguirá capturar alguno de estos. Sea 𝑣 ∈ 𝑉𝑖 un vértice cualquiera.
Sea 𝛤𝑗 (𝑣) el conjunto de vecinos de 𝑣 en 𝑉𝑗 , y sea 𝛤𝑘 (𝑣) el conjunto de vecinos de 𝑣 en 𝑉𝑘 . Vamos a decir que
𝑣 es útil si |𝛤𝑗 (𝑣)| ≥ 4𝜀 𝑛ℓ y |𝛤𝑘 (𝑣)| ≥ 4𝜀 𝑛ℓ . Como (𝑉𝑗 , 𝑉𝑘 ) es 8𝜀 -regular, si 𝑣 es útil entonces

𝜀 𝜀 2 𝑛 2 3𝜀3 2
|𝐸 (𝛤𝑗 (𝑣), 𝛤𝑘 (𝑣)) | ≥ (𝑑 (𝑉𝑗 , 𝑉𝑘 ) − ) ( ) ( ) ≥ 𝑛,
8 4 ℓ 256ℓ2
ya que 𝑑 (𝑉𝑗 , 𝑉𝑘 ) ≥ 𝜀/2 en 𝐺3 . Teniendo en cuenta que ℓ ≤ 𝑀, esto quiere decir que si tenemos un vértice
útil 𝑣 ∈ 𝑉𝑖 y tomamos una muestra adicional de 𝒪 (𝑀 2 /𝜀3 ) pares de vértices, con una constante implícita
suficientemente grande, entonces encontraremos uno de estos triángulos con probabilidad al menos 2/3.
Y para esto basta, claramente, con tomar una muestra de 𝒪 (𝑀 2 /𝜀3 ) vértices y considerar todas las posibles
parejas.
Finalmente, queda demostrar que el número de vértices útiles es suficientemente grande, de modo que
una muestra también suficientemente grande podrá encontrar uno de ellos con probabilidad al menos
2/3. Para ello, consideremos un vértice 𝑣 ∈ 𝑉𝑖 que no es útil. Diremos que 𝑣 es inútil en 𝑗 si |𝛤𝑗 (𝑣)| < 4𝜀 𝑛ℓ , y
que es inútil en 𝑘 si |𝛤𝑘 (𝑣)| < 4𝜀 𝑛ℓ . Podemos suponer sin pérdida de generalidad que el número de vértices
inútiles en 𝑗 es mayor o igual que el de vértices inútiles en 𝑘. Supongamos que al menos la mitad de los
vértices no son útiles. Entonces, al menos la cuarta parte son inútiles en 𝑗. Sea 𝑉𝑖 ′ el conjunto de dichos
vértices, de modo que |𝑉𝑖 ′ | > 𝛾|𝑉𝑖 | ya que 𝛾 = 8𝜀 ≤ 18 , y sea 𝑉𝑗 ′ = 𝑉𝑗 . Entonces,

|𝑉𝑖 ′ | 4𝜀 𝑛ℓ 𝜀 3
𝑑 (𝑉𝑖 ′ , 𝑉𝑗 ′ ) ≤ = < 𝜀 ≤ 𝑑 (𝑉𝑖 , 𝑉𝑗 ) − 𝛾,
|𝑉𝑖 ′ ||𝑉𝑗 ′ | 4 8

lo que contradice la regularidad del par (𝑉𝑖 , 𝑉𝑗 ). Por lo tanto, el número de vértices útiles en 𝑉𝑖 es de al
menos 2𝑛ℓ , y una muestra independiente de 𝒪(𝑀) vértices contendrá uno de estos con probabilidad al
menos 2/3.
Así, se puede tomar una muestra de 𝒪(𝑀) + 𝒪 (𝑀 2 /𝜀3 ) = 𝒪 (𝑀 2 /𝜀3 ) vértices, que contendrá al menos un
vértice útil y un par de vértices que formen un triángulo con el anterior con probabilidad al menos 2/3. Al
consultar todos los pares de vértices, el algoritmo descubrirá el triángulo y rechazará la entrada, lo que
demuestra que el algoritmo es correcto. El número de consultas es 𝒪 (𝑀 4 /𝜀6 ), ya que el número de posibles
aristas es cuadrático en el número de vértices seleccionados. La complejidad temporal es la misma, ya
que se puede buscar un triángulo en el grafo inducido por la muestra con una búsqueda en anchura, que
tiene un coste lineal en el tamaño del grafo que se estudia. ▪

Como se desprende de la demostración, el teorema 8 establece que la complejidad, tanto temporal como
de consultas, del algoritmo 2 es independiente del tamaño de la entrada, igual que en el caso del modelo
de grado acotado. Sin embargo, el comportamiento con respecto a 𝜀 es mucho menos eficiente que en el
caso anterior. Aunque el exponente de la cota sobre el número de consultas que da el teorema 8 se puede
mejorar con un análisis más cuidadoso, la cota sobre 𝑀 que da el lema de regularidad de Szemerédi es
una torre de altura polinomial en el inverso de 𝜀.
Definición 9. Denotamos por 𝑇(𝑛) la función torre de altura 𝑛, que se define de manera recursiva como
𝑇(1) = 2 y 𝑇(𝑛 + 1) = 2𝑇(𝑛) para todo 𝑛 ≥ 1. ◀

La mejor cota superior sobre el valor de 𝑀 que se obtiene del lema 7 es de la forma 𝑇 (𝒪(1/𝜀2 )), un número
enorme que hace que este algoritmo no sea realmente aplicable para resolver este problema, ya que ningún
ordenador tiene capacidad de memoria suficiente (aunque para grafos suficientemente grandes, sigue
siendo mejor esta cota que cualquier otra que sea una función que tienda a infinito con 𝑛). Siendo esto
una cota superior, nos podríamos plantear si no se puede mejorar utilizando otras técnicas. Sin embargo,

TEMat, 3 (2019) e-ISSN: 2530-9633 95


Buscando triángulos en grafos muy grandes: un ejemplo de property testing

(a) (b)

(c) (d)

Figura 1: Representación del proceso de eliminación de aristas empleado en la demostración del teorema 8.
La partición representada tiene cuatro conjuntos por simplicidad, pero el número de conjuntos dado por
el lema 7 es mucho mayor. La figura 1a representa el grafo original 𝐺. La figura 1b representa el grafo 𝐺1
obtenido tras eliminar las aristas dentro de cada conjunto de la partición. El grafo 𝐺2 , obtenido eliminando
las aristas de pares no regulares, se representa en la figura 1c. La figura 1d representa el grafo 𝐺3 final,
obtenido tras eliminar también las aristas de parejas cuya densidad sea muy baja.

96 [Link]
Espuny Díaz

Alon [1] demostró que la complejidad de consultas de este problema tiene que ser superpolinómica, es
decir, demostró que existen grafos que están 𝜀-lejos de la ausencia de triángulos pero para los cuales no
hay ningún algoritmo que trabaje con un número polinómico en 1/𝜀 de consultas que pueda distinguirlos
de grafos libres de triángulos. Este resultado fue completado más tarde por Alon y Shapira [5]. A pesar de
la cota superpolinómica de Alon, sigue habiendo un salto muy grande entre las cotas inferior y superior
conocidas. Cerrar este hueco es un problema abierto interesante.
El lema de regularidad de Szemerédi (lema 7) tiene muchas más aplicaciones en la teoría del property
testing en el modelo de grafos densos. Se utilizó repetidamente para obtener resultados para algoritmos
que comprueban diferentes propiedades en grafos, especialmente en la caracterización de propiedades
de primer orden [2]. Por ejemplo, se demostró que la 𝑘-coloreabilidad es una propiedad que se puede
comprobar con un número de consultas independiente del tamaño del grafo, a pesar de que este problema
sea NP-completo en su versión exacta. Finalmente, Alon, Fischer, Newman y Shapira [3] demostraron
un resultado muy general, estableciendo que una propiedad de grafos se puede comprobar en tiempo
independiente del tamaño de la entrada en el modelo de grafos densos si y solo si comprobar dicha
propiedad se puede reducir a comprobar si el grafo satisface una determinada partición de Szemerédi.

4.3. Ausencia de triángulos en el modelo de grafos generales: cotas


El problema de la ausencia de triángulos en el modelo de grafos generales fue estudiado por Alon, Kaufman,
Krivelevich y Ron [4]. Lo que demostraron en este contexto es que no se puede resolver el problema con
un número de consultas independiente de 𝑛. Vamos a ver aquí un resultado parcial.
Para poder trabajar con una distancia que depende del número de aristas del grafo, debemos tener la
capacidad de trabajar con cada número posible de aristas o, al menos, con cada crecimiento asintótico de
este número. Así, queremos encontrar cotas sobre la complejidad de los algoritmos que comprueban si el
grafo de entrada está libre de triángulos o está 𝜀-lejos de la ausencia de triángulos para cada crecimiento
asintótico del número de aristas. Para hacer esto, vamos a trabajar con el grado medio del grafo y a
establecer cotas para cada posible valor. El grado medio de un grafo 𝐺 = (𝑉, 𝐸) con |𝑉| = 𝑛 se define como
𝑑 = 2|𝐸|/𝑛. Si consideramos valores de 𝑑 como funciones de 𝑛, cada posible valor de 𝑑 da lugar también a
un único crecimiento asintótico de |𝐸| al tender 𝑛 a infinito. Nótese que 𝑑 es como máximo lineal en 𝑛, en
cuyo caso estamos trabajando con grafos densos.
Teorema 10. Cualquier algoritmo que compruebe la ausencia de triángulos en un grafo en el modelo de
grafos generales debe realizar al menos Ω(√𝑛/𝑑) consultas.
Demostración. Para comprobar esto, basta con demostrar que existen dos familias de grafos 𝒢1 y 𝒢2 tales
que todos los grafos de ambas tienen el mismo grado medio 𝑑 y el mismo número de vértices, todos los
grafos de 𝒢1 están libres de triángulos, todos los grafos de 𝒢2 están 𝜀-lejos de la ausencia de triángulos, y
cualquier algoritmo que realice 𝑜(√𝑛/𝑑) consultas sobre un grafo de cualquiera de las dos familias no será
capaz de distinguir a cuál de las dos pertenece con probabilidad suficientemente alta.
Las dos familias que definimos son las siguientes. Cada familia se define con un único grafo sobre 𝑛 vértices,
y considerando todos los posibles etiquetados de los vértices. El grafo que define 𝒢1 consiste en un grafo
bipartito completo sobre dos conjuntos de tamaño √𝑛𝑑/2, y el resto de vértices están aislados (es decir,
no tienen ninguna arista incidente a ellos). El grafo que define 𝒢2 consiste en un grafo completo sobre
√𝑛𝑑 vértices, y el resto de vértices están de nuevo aislados. Es muy fácil comprobar que el grado medio
de cualquier grafo en 𝒢1 es exactamente 𝑑, mientras que el grado medio en 𝒢2 es 𝑑(1 − Θ(√1/𝑛𝑑)), que
asintóticamente crece igual que 𝑑, de modo que estas dos familias tienen un número de aristas comparable
conforme 𝑛 tiende a infinito. Además, es evidente que cualquier grafo en 𝒢1 está libre de triángulos, ya
que es bipartito.
Hay que comprobar ahora que cualquier grafo en 𝒢2 está 𝜀-lejos de la ausencia de triángulos, para algún
𝜀 > 0. Pero esto es una consecuencia del teorema de Mantel [19], que establece que el máximo número de
aristas en un grafo libre de triángulos sobre 𝑘 vértices es ⌊𝑘2 /4⌋. Así, en nuestro caso, tenemos que eliminar
casi 𝑛𝑑/4 aristas, lo que supone que cualquier grafo en 𝒢2 está 𝜀-lejos de la ausencia de triángulos para
cualquier 𝜀 < 1/4.

TEMat, 3 (2019) e-ISSN: 2530-9633 97


Buscando triángulos en grafos muy grandes: un ejemplo de property testing

Ahora, supongamos que un algoritmo trata de encontrar un triángulo en un grafo seleccionado unifor-
memente entre las dos familias con solo 𝑜(√𝑛/𝑑) consultas. Para ser capaz de distinguirlos necesitará
encontrar uno de los vértices que tienen grado positivo, ya que en caso contrario solo habrá encontrado
vértices aislados. Pero la probabilidad de encontrar uno cualquiera de estos vértices es Θ(√𝑑/𝑛), de modo
que al realizar todas las consultas la probabilidad de encontrar uno, por la desigualdad de Boole, es
𝑜(√𝑛/𝑑√𝑑/𝑛) = 𝑜(1), es decir, tiende a cero conforme 𝑛 tiende a infinito. Así pues, se deben realizar al
menos Ω(√𝑛/𝑑) consultas. ▪
La cota que da el teorema 10 es mejor para grafos poco densos, y va empeorando conforme 𝑑 aumenta.
En particular, si 𝑑 es constante se observa una gran diferencia entre este resultado y el del teorema 4: en
este caso tenemos una cota de Ω(√𝑛) sobre el número de consultas, mientras que en el modelo de grado
acotado se podía resolver el problema con un número de consultas independiente de 𝑛.
Conforme 𝑑 crece, la cota del teorema 10 es más débil. Sin embargo, Alon, Kaufman, Krivelevich y Ron [4]
dan otras cotas para distintos valores de 𝑑 que mejoran esta, utilizando técnicas más avanzadas que
las presentadas aquí. En general, consiguen demostrar que para cualquier valor de 𝑑 = 𝒪(𝑛1−𝜈(𝑛) ), con
log log log 𝑛+4
𝜈(𝑛) = log log 𝑛 = 𝑜(1), cualquier algoritmo que compruebe la ausencia de triángulos deberá realizar
Ω(𝑛1/3 ) consultas.
Por otra parte, en el mismo artículo también se dan cotas superiores a la complejidad, es decir, se demuestra
que existen algoritmos que resuelven el problema ejecutando un determinado número de consultas. La
cota general que se obtiene es de 𝒪(𝑛6/7 poly log(𝑛)). Así, aunque en el modelo de grafos generales no se
pueden conseguir algoritmos que resuelvan el problema con un número de consultas independiente de
𝑛, sí se puede conseguir que lo hagan en tiempo sublineal, lo cual ya es una mejora considerable con
respecto a los algoritmos exactos. Cerrar el espacio entre la cota superior y la inferior para determinar la
complejidad real del problema es aún un problema abierto.

5. Conclusiones y otros problemas


Como se ha podido ver a lo largo del texto, el property testing permite desarrollar algoritmos para comprobar
propiedades de estructuras de datos cuya complejidad es inferior a la de algoritmos exactos a cambio de
sacrificar exactitud en la respuesta. Este sacrificio tiene una componente probabilística (la probabilidad de
que el algoritmo dé una respuesta errónea no es nula, en la mayoría de casos) y determinista (la respuesta
no se da sobre la propiedad, sino con respecto a una medida de distancia respecto a la propiedad). El
desarrollo de estos algoritmos, además de un interés puramente teórico, también tiene muchas aplicaciones
para resolver problemas en situaciones en las que los algoritmos tradicionales son demasiado lentos.
Hemos podido ver tres ejemplos de cómo tratar algoritmos en diferentes modelos para una determinada
propiedad, y cómo el comportamiento de los algoritmos en cada modelo puede ser muy diferente. En
general, las propiedades que se pueden estudiar son muy variadas. En el modelo de grafos densos existen
resultados muy generales que engloban muchas de ellas, como ocurre con el caso del resultado de Alon,
Fischer, Newman y Shapira [3]. También se puede considerar property testing aplicado a hipergrafos, y
en este contexto destaca el resultado de Joos, Kim, Kühn y Osthus [16], que generaliza la clasificación de
propiedades que se pueden estudiar con un número constante de consultas. En el caso del modelo de
grado acotado, uno de los resultados más destacables se debe a Benjamini, Schramm y Shapira [6], quienes
determinaron que toda propiedad cerrada por menores se puede estudiar con un número constante de
consultas. Destacan también los resultados de Newman y Sohler [21]. El modelo de grafos generales es,
sin duda, uno de los menos estudiados, y al trabajo de Alon, Kaufman, Krivelevich y Ron [4] se le pueden
añadir resultados como el de Kaufman, Krivelevich y Ron [18], que estudiaron la propiedad de ser bipartito,
o el de Espuny Díaz, Joos, Kühn y Osthus [8], que extendieron algunos resultados de Alon, Kaufman,
Krivelevich y Ron [4] de la ausencia de triángulos a la ausencia de cualquier subgrafo fijo y también al
caso de hipergrafos. En general, esta área aún tiene muchos problemas abiertos. Muchos de los problemas
abiertos tienen que ver con determinar con exactitud la complejidad de los problemas decisionales en
property testing.
Además de todo lo que se ha discutido hasta ahora, el property testing también se emplea para estudiar
propiedades que no tienen nada que ver con grafos (se pueden ver muchos ejemplos en el estudio de

98 [Link]
Espuny Díaz

Ron [24]). Además de esto, existen algunas extensiones naturales del property testing. Una de ellas tiene
que ver con la distribución subyacente a la hora de definir la distancia; en particular, si esta distribución es
desconocida se habla de distribution-free testing [11, 12, 14, 15]. Otra de las extensiones es la que se conoce
como tolerant testing, en la que el algoritmo recibe dos parámetros de distancia, 𝜀1 y 𝜀2 , y debe distinguir
entre el caso de que la entrada de datos esté 𝜀1 -cerca de la propiedad o 𝜀2 -lejos [9, 23]. Relacionado con lo
anterior, también se pueden estudiar algoritmos que traten de aproximar la distancia de la entrada a una
cierta propiedad [10, 20, 23]. En general, estudiar la relación entre los algoritmos de property testing y los
algoritmos de aproximación clásicos (se sabe que son dos tipos de problemas completamente distintos,
como se menciona en el estudio de Ron [24]) también puede ser un problema interesante.

Referencias
[1] ALON, Noga. «Testing subgraphs in large graphs». En: Random Structures & Algorithms 21.3-4 (2002).
Random structures and algorithms (Poznan, 2001), págs. 359-370. ISSN: 1042-9832. [Link]
org/10.1002/rsa.10056.
[2] ALON, Noga; FISCHER, Eldar; KRIVELEVICH, Michael, y SZEGEDY, Mario. «Efficient testing of large
graphs». En: Combinatorica. An International Journal on Combinatorics and the Theory of Computing
20.4 (2000), págs. 451-476. ISSN: 0209-9683. [Link]
[3] ALON, Noga; FISCHER, Eldar; NEWMAN, Ilan, y SHAPIRA, Asaf. «A combinatorial characterization of
the testable graph properties: it’s all about regularity». En: SIAM Journal on Computing 39.1 (2009),
págs. 143-167. ISSN: 0097-5397. [Link]
[4] ALON, Noga; KAUFMAN, Tali; KRIVELEVICH, Michael, y RON, Dana. «Testing triangle-freeness in general
graphs». En: SIAM Journal on Discrete Mathematics 22.2 (2008), págs. 786-819. ISSN: 0895-4801.
[Link]
[5] ALON, Noga y SHAPIRA, Asaf. «Testing subgraphs in directed graphs». En: Journal of Computer and
System Sciences 69.3 (2004), págs. 353-382. ISSN: 0022-0000. [Link]
2004.04.008.
[6] BENJAMINI, Itai; SCHRAMM, Oded, y SHAPIRA, Asaf. «Every minor-closed property of sparse graphs is
testable». En: Advances in Mathematics 223.6 (2010), págs. 2200-2218. [Link]
[Link].2009.10.018.
[7] BLUM, Manuel; LUBY, Michael, y RUBINFELD, Ronitt. «Self-testing/correcting with applications to
numerical problems». En: Proceedings of the 22nd Annual ACM Symposium on Theory of Computing
(Baltimore, MD, 1990). Vol. 47. 3. 1993, págs. 549-595. [Link]
90044-W.
[8] ESPUNY DÍAZ, Alberto; JOOS, Felix; KÜHN, Daniela, y OSTHUS, Deryk. «Edge correlations in random
regular hypergraphs and applications to subgraph testing». En: ArXiv e-prints (mar. de 2018). arXiv:
1803.09223 [[Link]].
[9] FISCHER, Eldar y FORTNOW, Lance. «Tolerant versus intolerant testing for Boolean properties». En:
Theory of Computing. An Open Access Journal 2 (2006), págs. 173-183. ISSN: 1557-2862. https :
//[Link]/10.4086/toc.2006.v002a009.
[10] FISCHER, Eldar y NEWMAN, Ilan. «Testing versus estimation of graph properties». En: SIAM Journal
on Computing 37.2 (2007), págs. 482-501. ISSN: 0097-5397. [Link]
[11] GLASNER, Dana y SERVEDIO, Rocco A. «Distribution-free testing lower bounds for basic Boolean
functions». En: Theory of Computing. An Open Access Journal 5 (2009), págs. 191-218. ISSN: 1557-2862.
[Link]
[12] GOLDREICH, Oded; GOLDWASSER, Shafi, y RON, Dana. «Property testing and its connection to learning
and approximation». En: Journal of the ACM 45.4 (1998), págs. 653-750. ISSN: 0004-5411. https:
//[Link]/10.1145/285055.285060.
[13] GOLDREICH, Oded y RON, Dana. «Property testing in bounded degree graphs». En: Algorithmica.
An International Journal in Computer Science 32.2 (2002), págs. 302-343. ISSN: 0178-4617. https:
//[Link]/10.1007/s00453-001-0078-7.

TEMat, 3 (2019) e-ISSN: 2530-9633 99


Buscando triángulos en grafos muy grandes: un ejemplo de property testing

[14] HALEVY, Shirley y KUSHILEVITZ, Eyal. «Distribution-free property-testing». En: SIAM Journal on
Computing 37.4 (2007), págs. 1107-1138. ISSN: 0097-5397. [Link]
[15] HALEVY, Shirley y KUSHILEVITZ, Eyal. «Distribution-free connectivity testing for sparse graphs». En:
Algorithmica. An International Journal in Computer Science 51.1 (2008), págs. 24-48. ISSN: 0178-4617.
[Link]
[16] JOOS, Felix; KIM, Jaehoon; KÜHN, Daniela, y OSTHUS, Deryk. «A characterization of testable hypergraph
properties». En: ArXiv e-prints (jul. de 2017). arXiv: 1707.03303 [[Link]].
[17] KARP, Richard M. «Reducibility among combinatorial problems». En: Complexity of computer compu-
tations (Proc. Sympos., IBM Thomas J. Watson Res. Center, Yorktown Heights, N.Y., 1972). Springer US,
1972, págs. 85-103. [Link]
[18] KAUFMAN, Tali; KRIVELEVICH, Michael, y RON, Dana. «Tight bounds for testing bipartiteness in
general graphs». En: SIAM Journal on Computing 33.6 (2004), págs. 1441-1483. ISSN: 0097-5397.
[Link]
[19] MANTEL, W. «Problem 28 (solution by H. Gouwentak, W. Mantel, J. Teixeira de Mattes, F. Schuh and
W.A. Wythoff». En: Wiskundige Opgaven 10 (1907), págs. 60-61.
[20] MARKO, Sharon y RON, Dana. «Distance approximation in bounded-degree and general sparse
graphs». En: Approximation, randomization and combinatorial optimization. Vol. 4110. Lecture Notes
in Comput. Sci. Springer, Berlin, 2006, págs. 475-486. [Link]
[21] NEWMAN, Ilan y SOHLER, Christian. «Every property of hyperfinite graphs is testable». En: SIAM
Journal on Computing 42 (2013), págs. 1095-1112. ISSN: 0097-5397. [Link]
120890946.
[22] PARNAS, Michal y RON, Dana. «Testing the diameter of graphs». En: Random Structures & Algorithms
20.2 (2002), págs. 165-183. ISSN: 1042-9832. [Link]
[23] PARNAS, Michal; RON, Dana, y RUBINFELD, Ronitt. «Tolerant property testing and distance approxi-
mation». En: Journal of Computer and System Sciences 72.6 (2006), págs. 1012-1042. ISSN: 0022-0000.
[Link]
[24] RON, Dana. «Algorithmic and analysis techniques in property testing». En: Foundations and Trendsr
in Theoretical Computer Science 5.2 (2009), front matter, 73-205. ISSN: 1551-305X. [Link]
10.1561/0400000029.
[25] RUBINFELD, Ronitt y SUDAN, Madhu. «Robust characterizations of polynomials with applications
to program testing». En: SIAM Journal on Computing 25.2 (1996), págs. 252-271. ISSN: 0097-5397.
[Link]
[26] SZEMERÉDI, Endre. «Regular partitions of graphs». En: Problèmes combinatoires et théorie des graphes
(Colloq. Internat. CNRS, Univ. Orsay, Orsay, 1976). Vol. 260. Colloq. Internat. CNRS. CNRS, Paris, 1978,
págs. 399-401.

100 [Link]
TEMat, volumen 3. Mayo de 2019.
e-ISSN: 2530-9633

Publicado con la colaboración de la


Real Sociedad Matemática Española

© 2019 Asociación Nacional de Estudiantes de Matemáticas.


© 2019 los autores de los artículos.
cb Salvo que se indique lo contrario, el contenido está disponible bajo una licencia
Creative Commons Reconocimento 4.0 Internacional.

También podría gustarte