Está en la página 1de 214

Tema 1: Combinatoria

C. Ortiz, A. Mndez, E. Martn y J. Sendra

Febrero de 2011

ndice

Gua del tema 2

1. Introduccin 1

2. Principios bsicos del conteo 1

3. Variaciones 2

4. Permutaciones 4

5. Permutaciones circulares. 5

6. Permutaciones con repeticin. 6

7. Combinaciones 8

8. Nmeros Combinatorios 9

9. Combinaciones con repeticin 11

10. Aplicaciones 12

11. Resumen 14

Referencias 15

1
Matemtica Discreta (UPM). Curso 2010/11. 2o semestre Martn, E.; Mndez, A.; Ortiz, C.; Sendra, J.

1. Introduccin

La Combinatoria es la parte de las Matemticas que estudia las diversas formas de realizar
agrupaciones con los elementos de un conjunto, formndolas y calculando su nmero. Existen distintas
formas de realizar estas agrupaciones, segn se repitan los elementos o no, segn se puedan tomar
todos los elementos de que disponemos o no y si influye o no el orden de colocacin de los elementos.
El desarrollo de la combinatoria est fuertemente ligado con su aplicacin en la teora de la probabilidad,
pero tambin es importante en otras ciencias como la informtica, por ejemplo en la teora de la
codificacin y en el anlisis de algoritmos.

2. Principios bsicos del conteo

Iniciaremos nuestro estudio enunciando los principios fundamentales del conteo

Proposicin 2.1. Principio aditivo o Regla de la suma. Sean A y B son dos sucesos que no
pueden ocurrir simultneamente. Si el suceso A ocurre de m maneras distintas y el B de n maneras
distintas, entonces el suceso A o el B se podr ocurrir de m + n maneras distintas.

Ejemplo 2.1. Supongamos que en un cine se proyectan tres pelculas diferentes por la maana y cinco
por la tarde. Si se desea ver una sola pelcula. Cuntas opciones tenemos?. Sea A el suceso: Ver una
pelcula por la maana y B el suceso: Ver una pelcula por la tarde.
Como hay tres pelculas diferentes por la maana y cinco por la tarde , el suceso A se puede presentar
de 3 maneras distintas y el B de 5. Como no ocurren simultneamente, o vas por la maana o por la
tarde . Aplicando la regla anterior, el total de opciones de ver una sola pelcula ser: 3 + 5 = 8

Observacin 2.1. la regla anterior se puede aplicar a ms de dos sucesos siempre que sean disjuntos
dos a dos, es decir, que cada par de tareas no puedan ocurrir simultneamente.

Proposicin 2.2. Principio multiplicativo o Regla del producto. Si un suceso A puede ocurrir
en m maneras e, independientemente, un segundo suceso B puede ocurrir en n maneras, entonces el
nmero de de maneras en que ambos,A y B, pueden ocurrir es m n

Ejemplo 2.2. Cuntos nmeros pares de tres cifras se pueden formar, usando las cifras 0, 1, 2, 3, 4,
5 y 6, si stas pueden repetirse?
Al formar un nmero par de tres cifras A1 A2 A3 con ayuda de las cifras dadas, en vez de A1 puede
tomarse una cifra cualquiera, salvo el 0, es decir 6 posibilidades. En vez de A2 pueden tomarse cualquier
cifra, es decir 7 posibilidades, y en vez de A3 cualquiera de las cifras 0, 2, 4, 6, es decir 4 posibilidades.

1
Matemtica Discreta (UPM). Curso 2010/11. 2o semestre Martn, E.; Mndez, A.; Ortiz, C.; Sendra, J.

De este modo, conforme a la Regla de Multiplicar existen 674 = 168 procedimientos. As pues, con
las cifras dadas pueden formarse 168 nmeros pares de tres cifras.

Veamos a estudiar a continuacin agrupaciones de objetos admitiendo que no hay repeticin y


que importa el orden en que estn situados los objetos dentro del grupo.

3. Variaciones

Definicin 3.1. Sea un conjunto formado por m elementos distintos. Recibe el nombre de variacin
de orden n de esos m elementos (n m), a todo grupo ordenado formado por n elementos tomados de
los m, de tal manera que dos grupos se considerarn distintos si difieren en alguno de sus elementos o
bien, si teniendo los mismos, difieren en el orden en que estn colocados.
El total de esos grupos ordenados se indica por Vm,n .

Teorema 3.1. El total de variaciones de orden n que pueden formarse con los m elementos de un
conjunto dado, es:
Vm,n = m(m 1)(m 2) (m n + 1)

Demostracin. El primer elemento de la variacin podr elegirse de m formas distintas. Por tanto
el segundo elemento se podr elegir de m 1 maneras diferentes, ya que quedan m 1 elementos
para escoger. Razonando de la misma forma, existirn m 2 posibilidades de elegir el tercero , y
as sucesivamente, hasta llegar a la eleccin del nsimo, lo que podr hacerse escogiendo de entre
m (n 1) candidatos.
Como las etapas de eleccin son independientes unas de otras, aplicando la regla del producto, se
tendr

Vm,n = m(m 1)(m 2) [m (n 2)][m (n 1)] = m(m 1)(m 2) (m n + 2)(m n + 1)

Definicin 3.2. Para un entero n 0, n factorial (que se denota n!) se define como

0! = 1

n! = n(n 1)(n 2) 3 2 1 para n1

Adems, para cada n 0, (n + 1)! = (n + 1)(n!).

Nota 3.1. Teniendo en cuenta la definicin anterior tenemos:


m(m 1)(m 2) (m n + 1)(m n)(m n 1) 2 1 m!
Vm,n = =
(m n)(m n 1) . . . 2 1 (m n)!

2
Matemtica Discreta (UPM). Curso 2010/11. 2o semestre Martn, E.; Mndez, A.; Ortiz, C.; Sendra, J.

El siguiente ejemplo muestra el proceso de solucin de un problema combinatorio.

Ejemplo 3.1. Cuntos nmeros de tres cifras diferentes se pueden formar con los dgitos que com-
ponen el nmero 24756?

En este problema tenemos como elementos a los dgitos 2, 4, 7, 5, 6; en total 5 elementos y


debemos formar muestras de 3 elementos diferentes, es importante destacar el hecho de la no repeticin
de los elementos las muestras.

Formemos algunas muestras del experimento.

247, 724, 245

Resulta fcil observar el cumplimiento de las caractersticas correspondientes a las variaciones sin
repeticin.
Dos muestras difieren:

En el orden de sus elementos: (247, 724)

En que, por lo menos, hay un elemento diferente. (247 y 245)

Los elementos no se repiten en la misma muestra. Comprobado que el elemento combinatorio presente
en el problema es sin duda variaciones sin repeticin podemos determinar fcilmente la cantidad de
elementos del conjunto (m=5) y la cantidad de elementos que tienen las muestras (n=3).

Aplicando la frmula para el clculo y efectuando los mismos obtenemos, V5,3 = 5 4 3 = 60


nmeros de tres cifras.

Para validar el resultado obtenido podemos aplicar la regla del producto:

Designando al lugar de las centenas por la variable p, las decenas por q y las unidades por r.
El lugar p puede ser ocupado de 5 formas, q de 4 formas y r de 3 formas. El nmero de veces en que
en se pueden formar las cifras: p q r = 5 4 3 = 60.

Consideremos ahora que hay repeticin y que importa el orden en que estn situados los objetos
dentro del grupo.

Definicin 3.3. Sea un conjunto formado por m elementos distintos. Recibe el nombre de variacin
con repeticin de orden n cualquier grupo formado por n elementos, no necesariamente distintos,
tomados entre los m del conjunto original. Al poder repetir elementos puede que sea n > m. El total
de esos grupos ordenados se indica por V Rm,n .

3
Matemtica Discreta (UPM). Curso 2010/11. 2o semestre Martn, E.; Mndez, A.; Ortiz, C.; Sendra, J.

Teorema 3.2. El total de variaciones con repeticin de orden n que pueden formarse con los m
elementos de un conjunto dado, es V Rm,n = mn

Demostracin. Como en el conjunto dado existen m elementos, el primer elemento podr elegirse de
m maneras distintas. Para elegir el segundo podrn tomarse de nuevo cualquiera de los m elementos del
conjunto, dado que puede repetirse, y as sucesivamente hasta tomar el nsimo, que podr elegirse
de entre los m. Como las etapas son independientes unas de otras, aplicando la regla del producto
tendremos
V Rm,n = m m m m = mn

Ejemplo 3.2.

Cuantos nmeros de tres cifras se pueden formar con las nueve cifras significativas del sistema
decimal?
Al tratarse de nmeros el orden importa y adems no dice nada sobre cifras distintas, luego si
pueden repetirse. Por tanto, se pueden formar 729 nmeros: V R9,3 = 93 = 729

Cuantas palabras distintas de 10 letras (con o sin sentido) se pueden escribir utilizando slo
las dos primeras letras del alfabeto?
Al tratarse de palabras el orden importa y adems como son palabras de 10 letras y slo tenemos
dos para formarlas, deben repetirse. Por tanto, se pueden formar 1024 palabras : V R2,10 =
210 = 1024

4. Permutaciones

Un caso particular de las variaciones son las permutaciones, que son agrupaciones que pueden
formarse tomando todos los elementos del conjunto a la vez.

Definicin 4.1. Sea un conjunto formado por m elementos distintos. Recibe el nombre de per-
mutacin simple de m elementos, cada uno de los distintos grupos que puede formarse de manera
que cada uno de ellos contenga los m elementos dados, difiriendo un grupo de otro nicamente en el
orden de colocacin de sus elementos. El total de esos grupos ordenados se indica por Pm .

Teorema 4.1. El total de permutaciones simples o sin repeticiones de m elementos, es

Pm = m!

4
Matemtica Discreta (UPM). Curso 2010/11. 2o semestre Martn, E.; Mndez, A.; Ortiz, C.; Sendra, J.

Demostracin. Es obvio que las permutaciones sin repeticiones de m elementos se pueden considerar
como variaciones de orden m de m elementos, por tanto :

Pm = Vm,m = m(m 1)(m 2) (m m + 2)(m m + 1) = m(m 1)(m 2) 2 1 = m!

Ejemplo 4.1. De cuntas formas distintas se pueden sentar cinco personas en un banco? Slo importa
el orden, ya que se sientan todas, luego se trata de una permutacin

P 5 = 5! = 120

Nota 4.1. Como hemos definido las permutaciones sin repeticin de los m elementos de un conjunto
como un caso particular de las variaciones sin repeticin, se hace necesario declarar cules son las
caractersticas que permiten diferenciarlas del resto de las variaciones sin repeticin. En este sentido
enunciaremos a ttulo de caractersticas las siguientes:

Dos muestras difieren nicamente en el orden de sus elementos.

En todas las muestras del experimento aparecen los m elementos del conjunto.

Los elementos no se repiten en las muestras.

5. Permutaciones circulares.

En los ejemplos anteriores hemos imaginado los elementos que forman las permutaciones colo-
cados ordenadamente en lnea recta. Hubiera sido lo mismo imaginarlos situados en una curva abierta;
pero las condiciones varan si los situamos en una curva cerrada porque el orden que se establece entre
sus elementos es relativo:

No cambia si se efecta una rotacin de modo que cada elemento ocupe el lugar del otro. A este
tipo de permutaciones se les llama permutaciones circulares o cclicas. En las permutaciones circulares
los elementos se consideran distribuidos sobre una circunferencia.

Las permutaciones circulares pueden identificarse si el anlisis de situacin mencionada conlleva


a la confeccin de una curva cerrada, fijando uno de los m elementos y permutando los m 1 restantes,
tal y como se hace en las permutaciones sin repeticin.

Definicin 5.1. Dado un conjunto de m elementos, recibe el nombre de permutacin circular, una
agrupacin de los m elementos de forma que una cualquiera de ellas ser distinta de otra nicamente
si vara la posicin relativa de sus elementos.

5
Matemtica Discreta (UPM). Curso 2010/11. 2o semestre Martn, E.; Mndez, A.; Ortiz, C.; Sendra, J.

Teorema 5.1. El nmero de permutaciones circulares de m elementos se calcula mediante la frmula:

P c(m) = (m 1)!, m es un nmero natural mayor o igual que 1.

Demostracin. Usaremos el mtodo de induccin.


Se verifica para m = 1. P c(1) = (1 1)! = 0! = 1
Lo suponemos para m = kP c(k) = (k 1)! = (k 1) (k 2) (k (k 2)) 1
Y lo demostramos para m = k + 1. Multiplicando por k en ambos miembros de P c(k) = (k 1)!,
obtenemos:
P c(k + 1) = (k 1)! k = k!

Ejemplo 5.1. De cuntas formas se pueden sentar 8 personas alrededor de una mesa?.
Se trata de una permutacin circular de 8 elementos: P c(8) = (8 1)! = 7! = 5040

6. Permutaciones con repeticin.

Hasta ahora hemos tratado las permutaciones lineales y las circulares, estableciendo las car-
actersticas que permiten identificarlas. En ambos casos permutamos elementos distintos entre s. En
cambio, si algunos fueran iguales debemos hacer otras consideraciones.

Definicin 6.1. Sea un conjunto de m elementos, entre los que existen n1 objetos iguales y de un
mismo tipo, n2 iguales pero de otro tipo, y as sucesivamente hasta un grupo de nk objetos tambin
idnticos entre s. Las permutaciones distintas que pueden formarse en esas condiciones reciben el
nombre de permutaciones con repeticin de m elementos entre los que n1 son iguales, n2 son
tambin iguales, y as sucesivamente, hasta nk iguales. El total de esos grupos distintos se indica por
P r(m, n1 , n2 , . . . , nk ) con m = n1 + n2 + + nk

Las permutaciones con repeticin se identifican fcilmente a travs de sus caractersticas esen-
ciales:

En cada grupo aparecen los m elementos del conjunto.

Los grupos difieren slo en el orden entre los elementos de diferente naturaleza.

Ejemplo 6.1. El nmero 3344 tiene dos nmeros 3 y dos nmeros 4, si permutamos los cuatro dgitos
que lo componen, siempre observaremos la presencia de estos en todas las muestras, sin embargo; si
permutamos entre s los elementos de igual naturaleza, no se apreciarn diferencias entre las muestras.
Deberemos permutar los elementos de diferente naturaleza para poder distinguirlas.

6
Matemtica Discreta (UPM). Curso 2010/11. 2o semestre Martn, E.; Mndez, A.; Ortiz, C.; Sendra, J.

Formacin y nmero de permutaciones con repeticin.


Consideremos las permutaciones que podemos hacer con los dgitos que componen al nmero 1234.
Formando todas las muestras de ese experimento podemos observar:

1234 2134 3124 4123


1243 2143 3142 4132
1324 2341 3214 4231
1342 2314 3241 4213
1423 2413 3412 4312
1432 2431 3421 4321

Hay 24 permutaciones. Si en lugar de elegir el nmero anterior, hubisemos seleccionado el nmero


3344, en todas las muestras obtenidas anteriormente podramos sustituir el 2 por el 4 y al 1 por el 3.
En este caso de estas 24 permutaciones seran diferentes slo 6 de ellas.

3434 4334 3344 4343


3443 4343 3344 4334
3344 4433 3434 4433
3344 4433 3443 4343
3434 4343 3434 4343
3443 4334 3443 4334

En el experimento anterior, de las 24 permutaciones lineales del nmero 3344 hay 6 dgitos repetidos 4
veces cada uno, entonces el conjunto de cifras cuya diferencia est en el orden de colocacin se calcula
fcilmente mediante la operacin siguiente: 24/4=6.
La interpretacin del resultado anterior conlleva a plantear para el clculo de las permutaciones con
P4
repeticin la siguiente relacin: =6
4
Sabemos que P4 = 4! = 24, pero podemos escribir el denominador como 4 = 2! 2!, cada uno de estos
2! significa la cantidad de permutaciones de cada uno de los elementos que se repiten en el conjunto
de valores.

Teorema 6.1. El nmero de permutaciones con repeticin (P r) que se pueden hacer con m elementos,
de los cuales hay repetidos n1 , n2 , . . . nk es:

m!
P r(m, n1 , n2 , . . . , nk ) = , Siendo m = n1 + n2 + + nk
n1 ! n2 ! nk !

Ejemplo 6.2. De cuntas maneras se pueden colocar las figuras blancas (dos caballos, dos torres, dos
alfiles, el rey y la reina) en la primera fila del tablero de ajedrez?
Se trata de un experimento sobre permutaciones con repeticin de m = 8 elementos agrupados en

7
Matemtica Discreta (UPM). Curso 2010/11. 2o semestre Martn, E.; Mndez, A.; Ortiz, C.; Sendra, J.

subgrupos n1 = 2, n2 = 2, n3 = 2, n4 = 1 y n5 = 1 de elementos iguales.

8!
P r(8, 2, 2, 2, 1, 1) = = 5040
2! 2! 2! 1! 1!

7. Combinaciones

Proseguimos el estudio manteniendo la condicin de que no hay repeticin pero ahora admi-
tiendo que no importa el orden en que estn situados los objetos dentro de un grupo.

Definicin 7.1. Sea un conjunto formado por m elementos distintos. Recibe el nombre de combi-
nacin simple de orden n o n-aria de esos m elementos (n m), cada grupo formado por n elemen-
tos tomados de los m, y tal que dos combinaciones se considerarn distintas si difieren en alguno de
sus elementos.

En las combinaciones no influye el orden de colocacin, dos combinaciones son la misma si


contienen los mismos elementos colocados en distinto orden.

Teorema 7.1. El total de combinaciones simples de orden n que pueden formarse con los m elementos
de un conjunto dado, es
m!
Cm,n =
n!(m n)!

Demostracin.Dada una combinacin de orden n, se obtienen todas las variaciones del mismo orden
permutando de todas las maneras posibles los elementos de aqullas. se tendr entonces

Cm,n Pn = Vm,n

y por tanto
Vm,n m(m 1)(m 2) (m n + 1)
Cm,n = =
Pn n!
Multiplicando numerador y denominador por

(m n)! = (m n)(m n 1) 3 2 1

Obtenemos
m!
Cm,n =
n!(m n)!

Ejemplo 7.1. Cuantos grupos de 5 alumnos pueden formarse con los treinta alumnos de una clase.
(Un grupo es distinto de otro si se diferencia de otro por lo menos en un alumno)

8
Matemtica Discreta (UPM). Curso 2010/11. 2o semestre Martn, E.; Mndez, A.; Ortiz, C.; Sendra, J.

No importa el orden (son grupos de alumnos). No puede haber dos alumnos iguales en un grupo
evidentemente, luego sin repeticin.
30!
C30,5 = = 142506
5!(30 5)!
Por tanto, se pueden formar 142506 grupos distintos.

8. Nmeros Combinatorios

Definicin 8.1. Sean m y n nmeros enteros tales que 0 n m. Se denomina nmero combina-
torio o coeficiente binmico, al cociente
m!
n!(m n)!

m
que se representa por y se lee m sobre n.
n
Los nmeros m y n se llaman, respectivamente, ndice superior e ndice inferior del nmero combina-
torio.

Los nmeros combinatorios presentan algunas propiedades muy interesantes que justifican el
amplio uso que se hace de ellos en algunas ramas cientficas.
Propiedades

1. Por definicin
m! m
Cm,n = =
n!(m n)! n
y teniendo en cuenta que por convenio 0! = 1 y que 1! = 1, podemos considerar los siguientes
casos particulares:
m m!
= Cm,0 = =1
0 0!(m 0)!

m m!
= Cm,m = =1
m m!(m m)!

2. Dos nmeros combinatorios son iguales si sus ndices superiores son iguales y la suma de los
inferiores es igual al ndice superior:

m m
= o bien Cm,n = Cm,mn
n mn
En efecto:
m m! m! m
= = =
n n!(m n)! [m (m n)]! (m n)! mn
Los nmeros combinatorios que tienen esta forma reciben el nombre de nmeros complemen-
tarios.

9
Matemtica Discreta (UPM). Curso 2010/11. 2o semestre Martn, E.; Mndez, A.; Ortiz, C.; Sendra, J.

3. La suma de dos numeros combinatorios cuyos indices superiores son iguales y los inferiores difieren
en una unidad es igual a otro numero combinatorio cuyo ndice inferior es el mayor de los dos
indices inferiores y cuyo ndice superior supera en una unidad al ndice superior de los sumandos.

m m1 m1
= + o bien Cm,n = Cm1,n + Cm1,n1
n n n1
En efecto, se tiene

m1 m1 (m 1)! (m 1)! (m 1)! (m n) + (m 1)! n
+ = + = =
n n1 n! (m 1 n)! (n 1)! (m n)! n! (m n)!

(m 1)! m m! m
= =
n! (m n)! n! (m n)! n
Esta propiedades quedan reflejadas en el llamado triangulo de Tartaglia.
En el siglo XVI, el italiano Niccol Tartaglia propuso un tringulo regular de nmeros tales que:

Todas las filas del tringulo comienzan y terminan por la unidad, y son simtricas con
respecto al valor central.

Cada nmero del tringulo es igual a la suma de los dos situados encima de l (salvo los
extremos).

La suma de todos los elementos de cada fila coincide con el valor 2m , siendo m el orden de
la fila.

m=1 1 1
m=2 1 2 1
m=3 1 3 3 1
m=4 1 4 6 4 1
m=5 1 5 10 10 5 1
m=6 1 6 15 20 15 6 1
Tambin podemos escribir
1 1
m=1 0 1
2 2 2
m=2 0 1 2
3 3 3 3
m=3 0 1 2 3
4 4 4 4 4
m=4 0 1 2 3 4
5 5 5 5 5 1
m=5 0 1 2 3 5 5
6 6 6 6 6 6 6
m=6 0 1 2 3 4 5 6

4. Aplicando reiteradamente la propiedad anterior , se llega a la expresin siguiente.



m m1 m2 m3 n n1
= + + + + +
n n1 n1 n1 n1 n1

10
Matemtica Discreta (UPM). Curso 2010/11. 2o semestre Martn, E.; Mndez, A.; Ortiz, C.; Sendra, J.

9. Combinaciones con repeticin

Comenzamos con un ejemplo: En una confitera se venden 3 tipos de pasteles diferentes. De


cuntas formas se pueden comprar 4 pasteles?
Como se puede apreciar este problema tiene otra estructura que los ya resueltos. No se trata de una
variacin porque el orden en que se dispongan los pasteles en una caja es indiferente. Por esta razn la
naturaleza del problema se halla ms cerca de las combinaciones que de las variaciones, sin embargo
en las muestras de este experimento los elementos pueden aparecer repetidos. Estamos en presencia de
un caso especial de las combinaciones conocido como combinaciones con repeticin.
Para una mejor comprensin del problema consideremos una vez ms el conteo.
Formemos para ello las muestras que componen este experimento; considerando el conjunto formado
por las letras {a, b, c} como los tipos de pasteles.
Formando todas las muestras de tres pasteles, obtendramos el siguiente resultado:

aaaa, aaab, aaac, aabb, aabc, aacc, abbb, abbc, abcc, accc, bbbb, bbbc, bbcc, bccc, cccc.

Mediante conteo podemos ver que hay 15 agrupaciones diferentes. En este experimento la diferencia
entre las muestras no est en el orden sino que difieren, por lo menos, en un elemento. Es preciso
observar que los elementos pueden repetirse en una muestra.

Definicin 9.1. Sea un conjunto formado por m elementos todos ellos distintos entre s. Recibe el
nombre de combinaciones con repeticin de orden n de m elementos, cada grupo formado por n
elementos, distintos o repetidos, tomados de los m dados. El total de esos grupos ordenados se indica
por CRm,n

Las caractersticas que destacan los rasgos de este concepto son:

Los grupos no difieren en el orden entre sus elementos.

Los elementos se pueden repetir en los grupos.

Teorema 9.1. El nmero de combinaciones con repeticin de orden n que pueden formarse con los de
m elementos de un conjunto dado, es

m+n1 (m + n 1)!
CRm,n = = = Cm+n1,n
n n!(m 1)!

Obsrvese que el orden n puede ser mayor que el nmero de elementos m del conjunto dado. Como se
ha visto en el ejemplo que sirve de introduccin a esta seccin.

En lo sucesivo esta frmula nos permitir el clculo de las combinaciones con repeticin.

11
Matemtica Discreta (UPM). Curso 2010/11. 2o semestre Martn, E.; Mndez, A.; Ortiz, C.; Sendra, J.

Ejemplo 9.1. Cuntas fichas tiene el juego del domin?


Una ficha de domin es un rectngulo en el que hay dos partes, en cada una de ellas hay una serie
de puntos que indican la puntuacin de esa parte. Estas puntuaciones van de blanca (0 puntos) a 6.
Tenemos pares de puntuaciones de 0 a 6.
El total de fichas ser:
7+21 8 8!
CR7,2 = = = = 28
2 2 2!6!

10. Aplicaciones

1. Binomio de Newton

Teorema 10.1. Si x e y son dos variables y m un entero positivo, entonces se verifica que
m
m m m m m1 m m2 2 m m1 m m X m mk k
(x+y) = x + x y+ x y + + xy + y = x y
0 1 2 m1 m k
k=0

Demostracin. (x + y)m = (x + y) (x + y) (x + y) al realizar esta multiplicacin se tomar


un solo termino de cada uno los m factores y el coeficiente del trmino general xmk y k , con
0 k m, se obtendr tomando x,de todas las formas posibles, en m k de los m parntesis
m
que tenemos. Es decir : Cm,k = .
k
Por ejemplo

3 3 3 2 3 2 3 3 3
(x + y)3 = x + x y+ x y+ y x + 3x2 y + 3xy 2 + y 3
0 1 2 3

Observacin 10.1. Como los coeficientes del binomio de Newton son nmeros combinato-
rios cumplirn las propiedades de estos nmeros, enunciadas anteriormente, y su clculo se
podr realizar mediante la tcnica del tringulo de Tartaglia.

Si el desarrollo binomio de Newton escribimos (y) en lugar de y, tenemos:



m m m m m m1 k m mk k m m
(x+(y)) = (xy) = x x y+ +(1) x y + +(1) ym =
0 1 k m
m
X
m mk k
= (1)k x y
k
k=0

Si en (x + y)m hacemos x = y = 1, resulta:



m m m m m m m
(1 + 1) = 2 = + + + + +
0 1 2 m1 m

es decir, la suma de los coeficientes del desarrollo (x + y)m vale 2m .

12
Matemtica Discreta (UPM). Curso 2010/11. 2o semestre Martn, E.; Mndez, A.; Ortiz, C.; Sendra, J.

Si en (x y)m hacemos x = y = 1, tenemos:



m m m m m m
(1 1) = 0 = + +
0 1 2 m1 m
o lo que es igual

m m m m m m
+ + + = + + +
0 2 4 1 3 5

2. Frmula de Leibnitz

Teorema 10.2. Si x, y, z son tres variables y m un entero positivo, entonces se verifica:


X m!
(x + y + z)m = x y z , con + + = m
! ! !

Demostracin. Dado que (x + y + z)m = [x + (y + z)]m podemos aplicar el teorema del binomio
de Newton:
m
X m
X m
m m m m m X m m
(x + y + z) = [x + (y + z)] = x (y + z) = x y z

=0 =0 =0

Los dos signos sumatorios indican dos polinomios. El producto de dos polinomios es otro poli-
nomio y el producto de los dos nmeros combinatorio es:

m m m! (m )! m!
= =
! (m )! ! (m )! ! ! !
siendo = m o bien + + = m, adems , , pueden variar independientemente
unos de otros, siempre y cuando su suma sea m.
Esa frmula puede generalizarse a cualquier nmero de variables.

Ejemplo 10.1. Calculemos (x + y + z)4 . En primer lugar, descomponemos 5 en 3 sumandos para


obtener los coeficientes del desarrollo:
4!
4 = 4 + 0 + 0, 4! 0! 0! =1
4!
4 = 3 + 1 + 0, 3! 1! 0! =4
4!
4 = 2 + 2 + 0, 2! 2! 0! =6
4!
4 = 2 + 1 + 1, 2! 1! 1! = 12

Entonces

(x + y + z)4 = x4 + y 4 + z 4 +

+ 4(x3 y + x3 z + y 3 x + y 3 z + z 3 x + z 3 y)

+ 6(x2 y 2 + x2 z 2 + y 2 z 2 )

+ 12(x2 yz + y 2 xz + z 2 xy)

13
Matemtica Discreta (UPM). Curso 2010/11. 2o semestre Martn, E.; Mndez, A.; Ortiz, C.; Sendra, J.

3. Soluciones enteras de una ecuacin.


Usaremos las combinaciones con repeticin para determinar el nmero de soluciones enteras de
una ecuacin.

Observacin 10.2. Las siguientes proposiciones son equivalentes:

El nmero de soluciones de la ecuacin

x1 + x2 + + xn = r, xi 0, 1in

El nmero de selecciones, con repeticin de tamao r de una coleccin de tamao n.

El nmero de maneras de distribuir r objetos idnticos entre n destinatarios distintos.

Ejemplo 10.2. Calcula el nmero de soluciones enteras de la ecuacin:

x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 = 24

con xi 2, i, 1 i 8.
Calcular las soluciones de la ecuacin dada es equivalente a calcular las soluciones no negativas
de la ecuacin:
x01 + x02 + x03 + x04 + x05 + x06 + x07 + x08 = 8

donde x0i = xi 2. Que ser:



8+81 15 15!
CR8,8 = = = = 6435
8 8 7!8!

Este ejemplo es equivalente a resolver el siguiente problema: Una tienda vende ocho tipos de
objetos. De cuntas formas distintas se pueden elegir 24 objetos de modo que haya dos de cada
tipo?.

11. Resumen

Variaciones :

Sin repeticin: Interviene el orden, en cada agrupacin el nmero n de elementos es menor


que el nmero m total de elementos y su frmula es:

m!
Vm,n = m(m 1)(m 2) (m n + 1) =
(m n)!

Con repeticin: Interviene el orden n < m, n > m y su frmula es:

V Rm,n = mn

14
Matemtica Discreta (UPM). Curso 2010/11. 2o semestre Martn, E.; Mndez, A.; Ortiz, C.; Sendra, J.

Permutaciones :

Sin repeticin: Interviene el orden, n = m y su frmula es:

Pm = m!

Con repeticin: Interviene el orden, n = m y su frmula es:

m!
P r(m, n1 , n2 , . . . , nk ) =
n1 ! n2 ! nk !

Combinaciones :

Sin repeticin: No Interviene el orden,n m y su frmula es:



m m!
Cm,n = =
n n! (m n)!

Con repeticin: No interviene el orden y su frmula es:



m+n1
CRm,n =
n

Referencias

[1] E. Bujalance, J.A. Bujalance, A.F. Costa, E. Martnez, Elementos de Matemtica Discreta, Sanz
y Torres, Madrid, 1993.

[2] F. Garca , Matemtica Discreta, Thomson, Madrid, 2005.

[3] R.L. Grimaldi, Matemtica discreta y combinatoria. Una introduccin con aplicaciones, Prentice-
Hall, Mxico, 1998.

[4] T. Veerarajan, Matemticas discretas. Con teora de grficas y combinatoria. , Mc Graw Hill,
Mxico, 2008.

15
Chapter 17

Generating Functions

Generating Functions are one of the most surprising and useful inventions in Dis
crete Math. Roughly speaking, generating functions transform problems about
sequences into problems about functions. This is great because weve got piles of
mathematical machinery for manipulating functions. Thanks to generating func
tions, we can apply all that machinery to problems about sequences. In this way,
we can use generating functions to solve all sorts of counting problems. There is a
huge chunk of mathematics concerning generating functions, so we will only get a
taste of the subject.
In this chapter, well put sequences in angle brackets to more clearly distinguish
them from the many other mathematical expressions oating around.
The ordinary generating function for g0 , g1 , g2 , g3 . . . is the power series:
G(x) = g0 + g1 x + g2 x2 + g3 x3 + .
There are a few other kinds of generating functions in common use, but ordinary
generating functions are enough to illustrate the power of the idea, so well stick
to them. So from now on generating function will mean the ordinary kind.
A generating function is a formal power series in the sense that we usually
regard x as a placeholder rather than a number. Only in rare cases will we actu
ally evaluate a generating function by letting x take a real number value, so we
generally ignore the issue of convergence.
Throughout this chapter, well indicate the correspondence between a sequence
and its generating function with a double-sided arrow as follows:
g0 , g1 , g2 , g3 , . . . g0 + g1 x + g2 x2 + g3 x3 +
For example, here are some sequences and their generating functions:
0, 0, 0, 0, . . . 0 + 0x + 0x2 + 0x3 + = 0
1, 0, 0, 0, . . . 1 + 0x + 0x2 + 0x3 + = 1
3, 2, 1, 0, . . . 3 + 2x + 1x2 + 0x3 + = 3 + 2x + x2

385
386 CHAPTER 17. GENERATING FUNCTIONS

The pattern here is simple: the ith term in the sequence (indexing from 0) is the
coefcient of xi in the generating function.
Recall that the sum of an innite geometric series is:

1
1 + z + z2 + z3 + =
1z

This equation does not hold when |z| 1, but as remarked, we dont worry about
convergence issues. This formula gives closed form generating functions for a
whole range of sequences. For example:

1
1, 1, 1, 1, . . . 1 + x + x2 + x3 + =
1x
1
1, 1, 1, 1, . . . 1 x + x2 x3 + x4 =
1+x
1
1, a, a2 , a3 , . . . 1 + ax + a2 x2 + a3 x3 + =
1 ax
1
1, 0, 1, 0, 1, 0, . . . 1 + x2 + x4 + x6 + =
1 x2

17.1 Operations on Generating Functions


The magic of generating functions is that we can carry out all sorts of manipu
lations on sequences by performing mathematical operations on their associated
generating functions. Lets experiment with various operations and characterize
their effects in terms of sequences.

17.1.1 Scaling
Multiplying a generating function by a constant scales every term in the associated
sequence by the same constant. For example, we noted above that:

1
1, 0, 1, 0, 1, 0, . . . 1 + x2 + x4 + x6 + =
1 x2

Multiplying the generating function by 2 gives

2
= 2 + 2x2 + 2x4 + 2x6 +
1 x2

which generates the sequence:

2, 0, 2, 0, 2, 0, . . .
17.1. OPERATIONS ON GENERATING FUNCTIONS 387

Rule 11 (Scaling Rule). If


f0 , f1 , f2 , . . . F (x),
then
cf0 , cf1 , cf2 , . . . c F (x).
The idea behind this rule is that:
cf0 , cf1 , cf2 , . . . cf0 + cf1 x + cf2 x2 +
= c (f0 + f1 x + f2 x2 + )
= cF (x)

17.1.2 Addition
Adding generating functions corresponds to adding the two sequences term by
term. For example, adding two of our earlier examples gives:
1
1, 1, 1, 1, 1, 1, ...
1x
1
+ 1, 1, 1, 1, 1, 1, ...
1+x

1 1
2, 0, 2, 0, 2, 0, ... +
1x 1+x
Weve now derived two different expressions that both generate the sequence 2, 0, 2, 0, . . . .
They are, of course, equal:
1 1 (1 + x) + (1 x) 2

+ = =
1x 1+x (1 x)(1 + x) 1 x2

Rule 12 (Addition Rule). If


f0 , f1 , f2 , . . . F (x), and
g0 , g1 , g2 , . . . G(x),
then
f0 + g0 , f1 + g1 , f2 + g2 , . . . F (x) + G(x).
The idea behind this rule is that:


f0 + g0 , f1 + g1 , f2 + g2 , . . . (fn + gn )xn
n=0



n n
= fn x + gn x
n=0 n=0
= F (x) + G(x)
388 CHAPTER 17. GENERATING FUNCTIONS

17.1.3 Right Shifting


Lets start over again with a simple sequence and its generating function:
1
1, 1, 1, 1, . . .
1x
Now lets right-shift the sequence by adding k leading zeros:

0, 0, . . . , 0, 1, 1, 1, . . . xk + xk+1 + xk+2 + xk+3 +



k zeroes

= xk (1 + x + x2 + x3 + )
xk
=
1x
Evidently, adding k leading zeros to the sequence corresponds to multiplying the
generating function by xk . This holds true in general.
Rule 13 (Right-Shift Rule). If f0 , f1 , f2 , . . . F (x), then:

0, 0, . . . , 0, f0 , f1 , f2 , . . . xk F (x)

k zeroes

The idea behind this rule is that:


k zeroes

0, 0, . . . , 0, f0 , f1 , f2 , . . . f0 xk + f1 xk+1 + f2 xk+2 +
= xk (f0 + f1 x + f2 x2 + f3 x3 + )
= xk F (x)

17.1.4 Differentiation
What happens if we take the derivative of a generating function? As an example,
lets differentiate the now-familiar generating function for an innite sequence of
1s.

d 2 3 4 d 1
(1 + x + x + x + x + ) =
dx dx 1 x
1
1 + 2x + 3x2 + 4x3 + = (17.1)
(1 x)2
1
1, 2, 3, 4, . . .
(1 x)2

We found a generating function for the sequence 1, 2, 3, 4, . . . of positive integers!


In general, differentiating a generating function has two effects on the corre
sponding sequence: each term is multiplied by its index and the entire sequence is
shifted left one place.
17.1. OPERATIONS ON GENERATING FUNCTIONS 389

Rule 14 (Derivative Rule). If

f0 , f1 , f2 , f3 , . . . F (x),

then
f1 , 2f2 , 3f3 , . . . F (x).

The idea behind this rule is that:

f1 , 2f2 , 3f3 , . . . f1 + 2f2 x + 3f3 x2 +


d
= (f0 + f1 x + f2 x2 + f3 x3 + )
dx
d
= F (x)
dx
The Derivative Rule is very useful. In fact, there is frequent, independent need
for each of differentiations two effects, multiplying terms by their index and left-
shifting one place. Typically, we want just one effect and must somehow cancel out
the other. For example, lets try to nd the generating function for the sequence of
squares, 0, 1, 4, 9, 16, . . . . If we could start with the sequence 1, 1, 1, 1, . . . and
multiply each term by its index two times, then wed have the desired result:

0 0, 1 1, 2 2, 3 3, . . . = 0, 1, 4, 9, . . .

A challenge is that differentiation not only multiplies each term by its index, but
also shifts the whole sequence left one place. However, the Right-Shift Rule 13 tells
how to cancel out this unwanted left-shift: multiply the generating function by x.
Our procedure, therefore, is to begin with the generating function for 1, 1, 1, 1, . . . ,
differentiate, multiply by x, and then differentiate and multiply by x once more.

1
1, 1, 1, 1, . . .
1x
d 1 1
1, 2, 3, 4, . . . =
dx 1 x (1 x)2
1 x
0, 1, 2, 3, . . . x =
(1 x)2 (1 x)2
d x 1+x
1, 4, 9, 16, . . . 2
=
dx (1 x) (1 x)3
1+x x(1 + x)
0, 1, 4, 9, . . . x 3
=
(1 x) (1 x)3

Thus, the generating function for squares is:

x(1 + x)
(17.2)
(1 x)3
390 CHAPTER 17. GENERATING FUNCTIONS

17.1.5 Products
Rule 15 ( Product Rule). If

a0 , a1 , a2 , . . . A(x), and b0 , b1 , b2 , . . . B(x),

then
c0 , c1 , c2 , . . . A(x) B(x),
where
cn ::= a0 bn + a1 bn1 + a2 bn2 + + an b0 .
To understand this rule, let


C(x) ::= A(x) B(x) = c n xn .
n=0

We can evaluate the product A(x) B(x) by using a table to identify all the
cross-terms from the product of the sums:

b0 x 0 b1 x 1 b2 x 2 b3 x 3 ...

a0 x0 a0 b0 x0 a 0 b1 x 1 a0 b2 x2 a0 b3 x3 ...

a1 x1 a1 b0 x1 a 1 b1 x 2 a1 b2 x3 ...

a2 x2 a2 b0 x2 a 2 b1 x 3 ...

a3 x3 a3 b0 x3 ...

..
. ...

Notice that all terms involving the same power of x lie on a /-sloped diagonal.
Collecting these terms together, we nd that the coefcient of xn in the product is
the sum of all the terms on the (n + 1)st diagonal, namely,

a0 bn + a1 bn1 + a2 bn2 + + an b0 . (17.3)

This expression (17.3) may be familiar from a signal processing course; the se
quence c0 , c1 , c2 , . . . is called the convolution of sequences a0 , a1 , a2 , . . . and b0 , b1 , b2 , . . . .

17.2 The Fibonacci Sequence


Sometimes we can nd nice generating functions for more complicated sequences.
For example, here is a generating function for the Fibonacci numbers:
x
0, 1, 1, 2, 3, 5, 8, 13, 21, . . .
1 x x2
17.2. THE FIBONACCI SEQUENCE 391

The Fibonacci numbers may seem like a fairly nasty bunch, but the generating
function is simple!
Were going to derive this generating function and then use it to nd a closed
form for the nth Fibonacci number. The techniques well use are applicable to a
large class of recurrence equations.

17.2.1 Finding a Generating Function


Lets begin by recalling the denition of the Fibonacci numbers:

f0 = 0
f1 = 1
fn = fn1 + fn2 (for n 2)

We can expand the nal clause into an innite sequence of equations. Thus, the
Fibonacci numbers are dened by:

f0 =0
f1 =1
f2 =f1 + f0
f3 =f2 + f1
f4 =f3 + f2
..
.

Now the overall plan is to dene a function F (x) that generates the sequence on
the left side of the equality symbols, which are the Fibonacci numbers. Then we
derive a function that generates the sequence on the right side. Finally, we equate
the two and solve for F (x). Lets try this. First, we dene:

F (x) = f0 + f1 x + f2 x2 + f3 x3 + f4 x4 +

Now we need to derive a generating function for the sequence:

0, 1, f1 + f0 , f2 + f1 , f3 + f2 , . . .

One approach is to break this into a sum of three sequences for which we know
generating functions and then apply the Addition Rule:

0, 1, 0, 0, 0, ... x
0, f0 , f1 , f2 , f3 , ... xF (x)
+ 0, 0, f0 , f1 , f2 , ... x2 F (x)
0, 1 + f0 , f1 + f0 , f2 + f1 , f3 + f2 , . . . x + xF (x) + x2 F (x)

This sequence is almost identical to the right sides of the Fibonacci equations. The
one blemish is that the second term is 1 + f0 instead of simply 1. However, this
amounts to nothing, since f0 = 0 anyway.
392 CHAPTER 17. GENERATING FUNCTIONS

Now if we equate F (x) with the new function x + xF (x) + x2 F (x), then were
implicitly writing down all of the equations that dene the Fibonacci numbers in
one fell swoop:

F (x) = f0 + f1 x+ f2 x2 + f3 x3 +

x + xF (x) + x2 F (x) = 0 + (1 + f0 ) x + (f1 + f0 ) x2 + (f2 + f1 ) x3 +

Solving for F (x) gives the generating function for the Fibonacci sequence:

F (x) = x + xF (x) + x2 F (x)

so
x
F (x) = .
1 x x2
Sure enough, this is the simple generating function we claimed at the outset.

17.2.2 Finding a Closed Form


Why should one care about the generating function for a sequence? There are sev
eral answers, but here is one: if we can nd a generating function for a sequence,
then we can often nd a closed form for the nth coefcient which can be pretty
useful! For example, a closed form for the coefcient of xn in the power series for
x/(1 x x2 ) would be an explicit formula for the nth Fibonacci number.
So our next task is to extract coefcients from a generating function. There are
several approaches. For a generating function that is a ratio of polynomials, we
can use the method of partial fractions, which you learned in calculus. Just as the
terms in a partial fraction expansion are easier to integrate, the coefcients of those
terms are easy to compute.
Lets try this approach with the generating function for Fibonacci numbers.
First, we factor the denominator:

1 x x2 = (1 1 x)(1 2 x)

where 1 = 12 (1 + 5) and 2 = 12 (1 5). Next, we nd A1 and A2 which satisfy:

x A1 A2
2
= +
1xx 1 1 x 1 2 x

We do this by plugging in various values of x to generate linear equations in A1


and A2 . We can then nd A1 and A2 by solving a linear system. This gives:

1 1
A1 = =
1 2 5
1 1
A2 = =
1 2 5
17.2. THE FIBONACCI SEQUENCE 393

Substituting into the equation above gives the partial fractions expansion of
F (x):
x 1 1 1
=
1 x x2 5 1 1 x 1 2 x
Each term in the partial fractions expansion has a simple power series given by the
geometric sum formula:
1
= 1 + 1 x + 12 x2 +
1 1 x
1
= 1 + 2 x + 22 x2 +
1 2 x
Substituting in these series gives a power series for the generating function:

1 1 1
F (x) =
5 1 1 x 1 2 x
1
= (1 + 1 x + 12 x2 + ) (1 + 2 x + 22 x2 + ) ,

5
so
1n 2n
fn =
5
n n
1 1+ 5 1 5
=
5 2 2

This formula may be scary and astonishing its not even obvious that its
value is an integer but its very useful. For example, it provides (via the re
peated squaring method) a much more efcient way to compute Fibonacci num
bers than crunching through the recurrence, and it also clearly reveals the expo
nential growth of these numbers.

17.2.3 Problems
Class Problems
Problem 17.1.
The famous mathematician, Fibonacci, has decided to start a rabbit farm to ll up
his time while hes not making new sequences to torment future college students.
Fibonacci starts his farm on month zero (being a mathematician), and at the start
of month one he receives his rst pair of rabbits. Each pair of rabbits takes a month
to mature, and after that breeds to produce one new pair of rabbits each month.
Fibonacci decides that in order never to run out of rabbits or money, every time a
batch of new rabbits is born, hell sell a number of newborn pairs equal to the total
number of pairs he had three months earlier. Fibonacci is convinced that this way
hell never run out of stock.
394 CHAPTER 17. GENERATING FUNCTIONS

(a) Dene the number, rn , of pairs of rabbits Fibonacci has in month n, using a
recurrence relation. That is, dene rn in terms of various ri where i < n.

(b) Let R(x) be the generating function for rabbit pairs,

R(x) ::= r0 + r1 x + r2 x2 + .

Express R(x) as a quotient of polynomials.

(c) Find a partial fraction decomposition of the generating function R(x).

(d) Finally, use the partial fraction decomposition to come up with a closed form
expression for the number of pairs of rabbits Fibonacci has on his farm on month
n.

Problem 17.2.
Less well-known than the Towers of Hanoi but no less fascinating are the Tow
ers of Sheboygan. As in Hanoi, the puzzle in Sheboygan involves 3 posts and n
disks of different sizes. Initially, all the disks are on post #1:

Post #1 Post #2 Post #3

The objective is to transfer all n disks to post #2 via a sequence of moves. A


move consists of removing the top disk from one post and dropping it onto an
other post with the restriction that a larger disk can never lie above a smaller disk.
Furthermore, a local ordinance requires that a disk can be moved only from a post to
the next post on its right or from post #3 to post #1. Thus, for example, moving a
disk directly from post #1 to post #3 is not permitted.
(a) One procedure that solves the Sheboygan puzzle is dened recursively: to
move an initial stack of n disks to the next post, move the top stack of n 1 disks
to the furthest post by moving it to the next post two times, then move the big, nth
disk to the next post, and nally move the top stack another two times to land on
top of the big disk. Let sn be the number of moves that this procedure uses. Write
a simple linear recurrence for sn .

(b) Let S(x) be the generating function for the sequence s0 , s1 , s2 , . . . . Show that
S(x) is a quotient of polynomials.
17.2. THE FIBONACCI SEQUENCE 395

(c) Give a simple formula for sn .

(d) A better (indeed optimal, but we wont prove this) procedure to solve the
Towers of Sheboygan puzzle can be dened in terms of two mutually recursive
procedures, procedure P1 (n) for moving a stack of n disks 1 pole forward, and
P2 (n) for moving a stack of n disks 2 poles forward. This is trivial for n = 0. For
n > 0, dene:
P1 (n): Apply P2 (n 1) to move the top n 1 disks two poles forward to the third
pole. Then move the remaining big disk once to land on the second pole. Then
apply P2 (n 1) again to move the stack of n 1 disks two poles forward from the
third pole to land on top of the big disk.
P2 (n): Apply P2 (n 1) to move the top n 1 disks two poles forward to land
on the third pole. Then move the remaining big disk to the second pole. Then
apply P1 (n 1) to move the stack of n 1 disks one pole forward to land on the
rst pole. Now move the big disk 1 pole forward again to land on the third pole.
Finally, apply P2 (n 1) again to move the stack of n 1 disks two poles forward
to land on the big disk.
Let tn be the number of moves needed to solve the Sheboygan puzzle using proce
dure P1 (n). Show that
tn = 2tn1 + 2tn2 + 3, (17.4)
for n > 1.
Hint: Let sn be the number of moves used by procedure P2 (n). Express each of tn
and sn as linear combinations of tn1 and sn1 and solve for tn .

(e) Derive values a, b, c, , such that

tn = an + b n + c.

Conclude that tn = o(sn ).

Homework Problems
Problem 17.3.
Taking derivatives of generating functions is another useful operation. This is done
termwise, that is, if

F (x) = f0 + f1 x + f2 x2 + f3 x3 + ,

then
F (x) ::= f1 + 2f2 x + 3f3 x2 + .
For example,

1 1
= = 1 + 2x + 3x2 +
(1 x)2 (1 x)
396 CHAPTER 17. GENERATING FUNCTIONS

so
x
H(x) ::= = 0 + 1x + 2x2 + 3x3 +
(1 x)2
is the generating function for the sequence of nonegative integers. Therefore

1+x
= H (x) = 1 + 22 x + 32 x2 + 42 x3 + ,
(1 x)3
so
x2 + x
= xH (x) = 0 + 1x + 22 x2 + 32 x3 + + n2 xn +
(1 x)3
is the generating function for the nonegative integer squares.
(a) Prove that for all k N, the generating function for the nonnegative integer
kth powers is a quotient of polynomials in x. That is, for all k N there are
polynomials Rk (x) and Sk (x) such that

Rk (x)
[xn ] = nk . (17.5)
Sk (x)

Hint: Observe that the derivative of a quotient of polynomials is also a quotient of


polynomials. It is not necessary work out explicit formulas for Rk and Sk to prove
this part.

(b) Conclude that if f (n) is a function on the nonnegative integers dened recur
sively in the form

f (n) = af (n 1) + bf (n 2) + cf (n 3) + p(n)n

where the a, b, c, C and p is a polynomial with complex coefcients, then the


generating function for the sequence f (0), f (1), f (2), . . . will be a quotient of poly
nomials in x, and hence there is a closed form expression for f (n).
Hint: Consider
Rk (x)
Sk (x)

Problem 17.4.
Generating functions provide an interesting way to count the number of strings of
matched parentheses. To do this, well use the description of these strings given
in Denition 11.1.2 as the set, GoodCount, of strings of parentheses with a good
count. Let cn be the number of strings in GoodCount with exactly n left parenthe
ses, and let C(x) be the generating function for these numbers:

C(x) ::= c0 + c1 x + c2 x2 + .
17.2. THE FIBONACCI SEQUENCE 397

(a) The wrap of a string, s, is the string, (s), that starts with a left parenthesis
followed by the characters of s, and then ends with a right parenthesis. Explain
why the generating function for the wraps of strings with a good count is xC(x).
Hint: The wrap of a string with good count also has a good count that starts and
ends with 0 and remains positive everywhere else.

(b) Explain why, for every string, s, with a good count, there is a unique sequence
of strings s1 , . . . , sk that are wraps of strings with good counts and s = s1 sk .
For example, the string r ::= (())()(()()) GoodCount equals s1 s2 s3 where s1 =
(()), s2 = (), s3 = (()()), and this is the only way to express r as a sequence of
wraps of strings with good counts.

(c) Conclude that

C = 1 + xC + (xC)2 + + (xC)n + , (17.6)

so
1
C= , (17.7)
1 xC
and hence
1 1 4x
C= . (17.8)
2x

Let D(x) ::= 2xC(x). Expressing D as a power series

D(x) = d0 + d1 x + d2 x2 + ,

we have
dn+1
cn = . (17.9)
2
(d) Use (17.12), (17.13), and the value of c0 to conclude that

D(x) = 1 1 4x.

(e) Prove that


(2n 3) (2n 5) 5 3 1 2n
dn = .
n!

Hint: dn = D(n) (0)/n!

(f) Conclude that



1 2n
cn = .
n+1 n
398 CHAPTER 17. GENERATING FUNCTIONS

Exam Problems
Problem 17.5.
Dene the sequence r0 , r1 , r2 , . . . recursively by the rule that r0 = r1 = 0 and

rn = 7rn1 + 4rn2 + (n + 1),

for n 2. Express the generating function of this sequence as a quotient of poly


nomials or products of polynomials. You do not have to nd a closed form for
rn .

17.3 Counting with Generating Functions


Generating functions are particularly useful for solving counting problems. In par
ticular, problems involving choosing items from a set often lead to nice generating
functions by letting the coefcient of xn be the number of ways to choose n items.

17.3.1 Choosing Distinct Items from a Set


The generating function for binomial coefcients follows directly from the Bino
mial Theorem:

k k k k k k k 2 k k
, , ,..., , 0, 0, 0, . . . + x+ x + + x
0 1 2 k 0 1 2 k
= (1 + x)k

Thus, the coefcient of xn in (1+x)k is nk , the number of ways to choose n dis


tinct items from a set of size k. For example, the coefcient of x2 is k2 , the number

of ways to choose 2 items from a set with k elements. Similarly, the coefcient of
xk+1 is the number of ways to choose k + 1 items from a size k set, which is zero.
(Watch out for this reversal of the roles that k and n played in earlier examples;
were led to this reversal because weve been using n to refer to the power of x in
a power series.)

17.3.2 Building Generating Functions that Count


Often we can translate the description of a counting problem directly into a gen
erating function for the solution. For example, we could gure out that (1 + x)k
generates the number of ways to select n distinct items from a k-element set with
out resorting to the Binomial Theorem or even fussing with binomial coefcients!
Here is how. First, consider a single-element set {a1 }. The generating function
for the number of ways to select n elements from this set is simply 1 + x: we have 1
way to select zero elements, 1 way to select one element, and 0 ways to select more
than one element. Similarly, the number of ways to select n elements from the set
{a2 } is also given by the generating function 1 + x. The fact that the elements differ
in the two cases is irrelevant.
17.3. COUNTING WITH GENERATING FUNCTIONS 399

Now here is the main trick: the generating function for choosing elements from a
union of disjoint sets is the product of the generating functions for choosing from each set.
Well justify this in a moment, but lets rst look at an example. According to this
principle, the generating function for the number of ways to select n elements from
the {a1 , a2 } is:
(1 + x) (1 + x) = (1 + x)2 = 1 + 2x + x2

gen func for gen func for gen func for

selecting an a1 selecting an a2 selecting from

{a1 , a2 }

Sure enough, for the set {a1 , a2 }, we have 1 way to select zero elements, 2 ways to
select one element, 1 way to select two elements, and 0 ways to select more than
two elements.
Repeated application of this rule gives the generating function for selecting n
items from a k-element set {a1 , a2 , . . . , ak }:
(1 + x) (1 + x) (1 + x) = (1 + x)k

gen func for gen func for gen func for gen func for
selecting an a1 selecting an a2 selecting an ak selecting from
{a1 , a2 , . . . , ak }
This is the same generating function that we obtained by using the Binomial Theo
rem. But this time around we translated directly from the counting problem to the
generating function.
We can extend these ideas to a general principle:
Rule 16 (Convolution Rule). Let A(x) be the generating function for selecting items
from set A, and let B(x) be the generating function for selecting items from set B. If A
and B are disjoint, then the generating function for selecting items from the union A B
is the product A(x) B(x).
This rule is rather ambiguous: what exactly are the rules governing the selec
tion of items from a set? Remarkably, the Convolution Rule remains valid under
many interpretations of selection. For example, we could insist that distinct items
be selected or we might allow the same item to be picked a limited number of
times or any number of times. Informally, the only restrictions are that (1) the or
der in which items are selected is disregarded and (2) restrictions on the selection
of items from sets A and B also apply in selecting items from A B. (Formally,
there must be a bijection between n-element selections from A B and ordered
pairs of selections from A and B containing a total of n elements.)
To count the number of ways to select n items from A B, we observe that we
can select n items by choosing j items from A and n j items from B, where j is
any number from 0 to n. This can be done in aj bnj ways. Summing over all the
possible values of j gives a total of
a0 bn + a1 bn1 + a2 bn2 + + an b0
400 CHAPTER 17. GENERATING FUNCTIONS

ways to select n items from A B. By the Product Rule, this is precisely the coef
cient of xn in the series for A(x)B(x).

17.3.3 Choosing Items with Repetition


The rst counting problem we considered was the number of ways to select a
dozen doughnuts when ve avors were available. We can generalize this ques
tion as follows: in how many ways can we select n items from a k-element set if
were allowed to pick the same item multiple times? In these terms, the doughnut
problem asks in how many ways we can select n = 12 doughnuts from the set of
k = 5 avors
{chocolate, lemon-lled, sugar, glazed, plain}
where, of course, were allowed to pick several doughnuts of the same avor. Lets
approach this question from a generating functions perspective.
Suppose we make n choices (with repetition allowed) of items from a set con
taining a single item. Then there is one way to choose zero items, one way to
choose one item, one way to choose two items, etc. Thus, the generating function
for choosing n elements with repetition from a 1-element set is:

1, 1, 1, 1, . . . 1 + x + x2 + x3 +
1
=
1x

The Convolution Rule says that the generating function for selecting items from
a union of disjoint sets is the product of the generating functions for selecting items
from each set:
1 1 1 1
=
1x 1x 1x (1 x)k

gen func for gen func for gen func for gen func for
choosing a1 s choosing a2 s choosing ak s repeated choice from
{a1 , a2 , . . . , ak }

Therefore, the generating function for choosing items from a k-element set with
repetition allowed is 1/(1 x)k .
Now the Bookkeeper Rule tells us that the number of ways to choose n items
with repetition from an k element set is

n+k1
,
n

so this is the coefcient of xn in the series expansion of 1/(1 x)k .


On the other hand, its instructive to derive this coefcient algebraically, which
we can do using Taylors Theorem:
17.3. COUNTING WITH GENERATING FUNCTIONS 401

Theorem 17.3.1 (Taylors Theorem).

f (0) 2 f (0) 3 f (n) (0) n


f (x) = f (0) + f (0)x + x + x + + x + .
2! 3! n!

This theorem says that the nth coefcient of 1/(1 x)k is equal to its nth deriva
tive evaluated at 0 and divided by n!. Computing the nth derivative turns out not
to be very difcult (Problem 17.7).

17.3.4 Problems
Practice Problems
Problem 17.6.
You would like to buy a bouquet of owers. You nd an online service that will
make bouquets of lilies, roses and tulips, subject to the following constraints:

there must be at most 3 lilies,

there must be an odd number of tulips,

there can be any number of roses.

Example: A bouquet of 3 tulips, 5 roses and no lilies satises the constraints.


Let fn be the number of possible bouquets with n owers that t the services
constraints. Express F (x), the generating function corresponding to f0 , f1 , f2 , . . . ,
as a quotient of polynomials (or products of polynomials). You do not need to sim
plify this expression.

Class Problems
Problem 17.7.

Let A(x) = n=0 an xn . Then its easy to check that

A(n) (0)
an = ,
n!

where A(n) is the nth derivative of A. Use this fact (which you may assume) instead
of the Convolution Counting Principle, to prove that

1 n+k1 n
k
= x .
(1 x) n=0
k1

So if we didnt already know the Bookkeeper Rule, we could have proved it


from this calculation and the Convolution Rule for generating functions.
402 CHAPTER 17. GENERATING FUNCTIONS

Problem 17.8.
We are interested in generating functions for the number of different ways to com
pose a bag of n donuts subject to various restrictions. For each of the restrictions
in (a)-(e) below, nd a closed form for the corresponding generating function.
(a) All the donuts are chocolate and there are at least 3.

(b) All the donuts are glazed and there are at most 2.

(c) All the donuts are coconut and there are exactly 2 or there are none.

(d) All the donuts are plain and their number is a multiple of 4.

(e) The donuts must be chocolate, glazed, coconut, or plain and:

there must be at least 3 chocolate donuts, and


there must be at most 2 glazed, and
there must be exactly 0 or 2 coconut, and
there must be a multiple of 4 plain.

(f) Find a closed form for the number of ways to select n donuts subject to the
constraints of the previous part.

Problem 17.9. (a) Let


x2 + x
S(x) ::= .
(1 x)3
What is the coefcient of xn in the generating function series for S(x)?

(b) Explain why S(x)/(1 x) is the generating function for the sums of squares.
n
That is, the coefcient of xn in the series for S(x)/(1 x) is k=1 k 2 .

(c) Use the previous parts to prove that


n
n(n + 1)(2n + 1)
k2 = .
6
k=1

Homework Problems
Problem 17.10.
We will use generating functions to determine how many ways there are to use
pennies, nickels, dimes, quarters, and half-dollars to give n cents change.
(a) Write the sequence Pn for the number of ways to use only pennies to change
n cents. Write the generating function for that sequence.

(b) Write the sequence Nn for the number of ways to use only nickels to change n
cents. Write the generating function for that sequence.
17.4. AN IMPOSSIBLE COUNTING PROBLEM 403

(c) Write the generating function for the number of ways to use only nickels and
pennies to change n cents.

(d) Write the generating function for the number of ways to use pennies, nickels,
dimes, quarters, and half-dollars to give n cents change.

(e) Explain how to use this function to nd out how many ways are there to
change 50 cents; you do not have to provide the answer or actually carry out the
process.

Exam Problems
Problem 17.11.
The working days in the next year can be numbered 1, 2, 3, . . . , 300. Id like to
avoid as many as possible.

On even-numbered days, Ill say Im sick.

On days that are a multiple of 3, Ill say I was stuck in trafc.

On days that are a multiple of 5, Ill refuse to come out from under the blan
kets.

In total, how many work days will I avoid in the coming year?

Problem 17.12.
Dene the sequence r0 , r1 , r2 , . . . recursively by the rule that r0 = r1 = 0 and

rn = 7rn1 + 4rn2 + (n + 1),

for n 2. Express the generating function of this sequence as a quotient of poly


nomials or products of polynomials. You do not have to nd a closed form for
rn .

Problem 17.13.
Find the coefcients of x10 y 5 in (19x + 4y)15

17.4 An Impossible Counting Problem


So far everything weve done with generating functions we could have done an
other way. But here is an absurd counting problem really over the top! In how
many ways can we ll a bag with n fruits subject to the following constraints?

The number of apples must be even.


404 CHAPTER 17. GENERATING FUNCTIONS

The number of bananas must be a multiple of 5.


There can be at most four oranges.
There can be at most one pear.

For example, there are 7 ways to form a bag with 6 fruits:

Apples 6 4 4 2 2 0 0
Bananas 0 0 0 0 0 5 5
Oranges 0 2 1 4 3 1 0
Pears 0 0 1 0 1 0 1
These constraints are so complicated that the problem seems hopeless! But lets
see what generating functions reveal.
Lets rst construct a generating function for choosing apples. We can choose a
set of 0 apples in one way, a set of 1 apple in zero ways (since the number of apples
must be even), a set of 2 apples in one way, a set of 3 apples in zero ways, and so
forth. So we have:
1
A(x) = 1 + x2 + x4 + x6 + =
1 x2
Similarly, the generating function for choosing bananas is:
1
B(x) = 1 + x5 + x10 + x15 + =
1 x5
Now, we can choose a set of 0 oranges in one way, a set of 1 orange in one way,
and so on. However, we can not choose more than four oranges, so we have the
generating function:
1 x5
O(x) = 1 + x + x2 + x3 + x4 =
1x
Here were using the geometric sum formula. Finally, we can choose only zero or
one pear, so we have:
P (x) = 1 + x
The Convolution Rule says that the generating function for choosing from among
all four kinds of fruit is:
1 1 1 x5
A(x)B(x)O(x)P (x) = (1 + x)
1 x 1 x5 1 x
2

1
=
(1 x)2
= 1 + 2x + 3x2 + 4x3 +
Almost everything cancels! Were left with 1/(1 x)2 , which we found a power
series for earlier: the coefcient of xn is simply n + 1. Thus, the number of ways to
form a bag of n fruits is just n + 1. This is consistent with the example we worked
out, since there were 7 different fruit bags containing 6 fruits. Amazing!
17.4. AN IMPOSSIBLE COUNTING PROBLEM 405

17.4.1 Problems
Homework Problems
Problem 17.14.
Miss McGillicuddy never goes outside without a collection of pets. In particular:

She brings a positive number of songbirds, which always come in pairs.


She may or may not bring her alligator, Freddy.
She brings at least 2 cats.
She brings two or more chihuahuas and labradors leashed together in a line.

Let Pn denote the number of different collections of n pets that can accompany
her, where we regard chihuahuas and labradors leashed up in different orders as
different collections, even if there are the same number chihuahuas and labradors
leashed in the line.
For example, P6 = 4 since there are 4 possible collections of 6 pets:
2 songbirds, 2 cats, 2 chihuahuas leashed in line
2 songbirds, 2 cats, 2 labradors leashed in line
2 songbirds, 2 cats, a labrador leashed behind a chihuahua
2 songbirds, 2 cats, a chihuahua leashed behind a labrador
And P7 = 16 since there are 16 possible collections of 7 pets:
2 songbirds, 3 cats, 2 chihuahuas leashed in line
2 songbirds, 3 cats, 2 labradors leashed in line
2 songbirds, 3 cats, a labrador leashed behind a chihuahua
2 songbirds, 3 cats, a chihuahua leashed behind a labrador
4 collections consisting of 2 songbirds, 2 cats, 1 alligator, and a line of 2 dogs
8 collections consisting of 2 songbirds, 2 cats, and a line of 3 dogs.
(a) Let
P (x) ::= P0 + P1 x + P2 x2 + P3 x3 +
be the generating function for the number of Miss McGillicuddys pet collections.
Verify that
4x6
P (x) = .
(1 x)2 (1 2x)

(b) Find a simple formula for Pn .


406 CHAPTER 17. GENERATING FUNCTIONS

Problem 17.15.
Generating functions provide an interesting way to count the number of strings of
matched parentheses. To do this, well use the description of these strings given
in Denition 11.1.2 as the set, GoodCount, of strings of parentheses with a good
count. Let cn be the number of strings in GoodCount with exactly n left parenthe
ses, and let C(x) be the generating function for these numbers:
C(x) ::= c0 + c1 x + c2 x2 + .
(a) The wrap of a string, s, is the string, (s), that starts with a left parenthesis
followed by the characters of s, and then ends with a right parenthesis. Explain
why the generating function for the wraps of strings with a good count is xC(x).
Hint: The wrap of a string with good count also has a good count that starts and
ends with 0 and remains positive everywhere else.
(b) Explain why, for every string, s, with a good count, there is a unique sequence
of strings s1 , . . . , sk that are wraps of strings with good counts and s = s1 sk .
For example, the string r ::= (())()(()()) GoodCount equals s1 s2 s3 where s1 =
(()), s2 = (), s3 = (()()), and this is the only way to express r as a sequence of
wraps of strings with good counts.
(c) Conclude that
C = 1 + xC + (xC)2 + + (xC)n + , (17.10)
so
1
C= , (17.11)
1 xC
and hence
1 1 4x
C= . (17.12)
2x

Let D(x) ::= 2xC(x). Expressing D as a power series

D(x) = d0 + d1 x + d2 x2 + ,
we have
dn+1
cn = . (17.13)
2
(d) Use (17.12), (17.13), and the value of c0 to conclude that

D(x) = 1 1 4x.

(e) Prove that


(2n 3) (2n 5) 5 3 1 2n
dn = .
n!
Hint: dn = D(n) (0)/n!
(f) Conclude that
1 2n
cn = .
n+1 n
17.4. AN IMPOSSIBLE COUNTING PROBLEM 407

Exam Problems
Problem 17.16.
T-Pain is planning an epic boat trip and he needs to decide what to bring with him.

He denitely wants to bring burgers, but they only come in packs of 6.


He and his two friends cant decide whether they want to dress formally or
casually. Hell either bring 0 pairs of ip ops or 3 pairs.

He doesnt have very much room in his suitcase for towels, so he can bring
at most 2.
In order for the boat trip to be truly epic, he has to bring at least 1 nautical
themed pashmina afghan.

(a) Let gn be the the number of different ways for T-Pain to bring n items (burgers,
pairs of ip ops, towels, and/or afghans) on his boat trip. Express the generating

function G(x) ::= n=0 gn xn as a quotient of polynomials.

(b) Find a closed formula in n for the number of ways T-Pain can bring exactly n
items with him.
408 CHAPTER 17. GENERATING FUNCTIONS
MIT OpenCourseWare
http://ocw.mit.edu

6.042J / 18.062J Mathematics for Computer Science


Spring 2010

For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms.
Captulo 3

Las estructuras b
asicas de la
Combinatoria

Cuando contamos y enumeramos, cuando hacemos Combinatoria, aparecen con frecuencia


unas estructuras basicas, que merecen nombres propios y analisis especcos. As, cada vez
que, tras meditar detenidamente sobre una cierta cuesti on combinatoria, identiquemos los
objetos de interes (por ejemplo, particiones de un cierto conjunto en bloques no vacos),
sabremos que la respuesta estara en una correspondiente familia de n umeros (para el caso,
numeros de Stirling). Este captulo sera una suerte de muestrario de estas estructuras basicas:
explicaremos los contextos en las que aparecen unas u otras y aprenderemos a contar cuantas
de ellas hay, en cada caso.
Preparese el lector, pues, para una excursi on, casi taxon
omica, en la que ira descubriendo
paulatinamente las principales familias, algunos de los generos, y hasta alguna que otra
especie, que pueblan el h abitat combinatorio.
En realidad, ya iniciamos esta excursi on en el captulo anterior, en el que presentamos
diversos tipos de listas (con y sin repetici on, circulares, etc.). Recomendamos al lector que
que tenga presentes los resultados que all obtuvimos, porque aparecer an continuamente en
los argumentos combinatorios que siguen.

3.1. Subconjuntos. Coeficientes bin


omicos
Sea A un conjunto con n 1 elementos. Para las cuestiones que nos interesan, los nombres
de los elementos de A no desempe nan papel alguno, as que, por concreci on y conveniencia,
supondremos que A es el conjunto {1, . . . , n}. Queremos saber cuantos subconjuntos (sin
repeticion) distintos de tama
no k podemos extraer de el. Por ejemplo, si n = 4 y k = 2,
hay seis 2-subconjuntos: {1, 2}, {1, 3}, {1, 4}, {2, 3}, {2, 4} y {3, 4}. Llamemos
C(n, k) = #{k-subconjuntos extrados de un conjunto de n elementos} .
El par
ametro k, que indica el tama no de los subconjunto que nos interesan, puede tomar en
principio los valores k = 0, 1, 2, . . . Pero si k > n, entonces C(n, k) = 0, pues resulta imposible
construir un subconjunto con m as elementos de los que tiene el conjunto de partida.

103
104 Captulo 3. Las estructuras ba
sicas de la Combinatoria

As que situemonos en el rango de interes: para un cierto n 1 y para cada 0 k n. Si


nuestro objetivo fuera contar el n
umero de listas de longitud k y sin repeticion que podemos
formar con n smbolos, la respuesta sera

n!
n(n 1) (n k + 1) = ,
(n k)!

como vimos en la subseccion 2.2.1. Consideremos ahora una cualquiera de ellas: en sus k
posiciones tiene smbolos distintos, as que podremos reordenarla de k! maneras distintas.
La observacion clave es que cada una de estas k! posibles reordenaciones da lugar, si nos
olvidamos del orden de presentaci on de los smbolos, a un u
nico conjunto de tama
no k.
Por tanto, podemos relacionar cada k! listas (en las que s es relevante el orden) con un
solo conjunto (en el que el orden no es relevante). Esta aplicaci on k! a 1 entre el conjunto de
las k-listas sin repeticion formadas con smbolos {1, . . . , n} y la coleccion de k-subconjuntos
de {1, . . . , n} nos permite concluir que, para cada n 1,

n!
si 0 k n;
C(n, k) = k! (n k)!

0 si k > n.

con el convenio habitual de que 0! = 1. Observese que de este analisis combinatorio se deduce
n!
que la fracci
on k! (nk)! es un entero, algo que no es sencillo comprobar algebraicamente.
Es tradicional designar al cociente de factoriales de la f
ormula anterior con el siguiente
smbolo: ! "
n n!
=
k k! (n k)!
(se lee n sobre k). Estos n
umeros son conocidos como coeficientes binomicos1 y estan, en
principio, denidos para cada entero positivo n y para cada 0 k n. El lector podr
a com-
probar que ! " ! "
n n
=1 y =1
n 0
(utilizando de nuevo que 0! = 1). Unos valores que son consistentes con la interpretacion
combinatoria que aqu estamos considerando: por un lado, C(n, n) = 1, porque el u nico
conjunto con n elementos que se puede extraer de un conjunto de n elementos es el propio
conjunto; y, por otro, C(n, 0) = 1, puesto que solo hay un conjunto de tamano cero que
podemos extraer del conjunto {1, . . . , n}, el conjunto vaco .
En lo que sigue, para evitar una proliferaci on innecesaria de smbolos, y salvo alguna
reaparici
on espor
adica de la notacion C(n, k), diremos que, dado n 1, el n umero de sub-
conjuntos de tama no k que podemos extraer del conjunto {1, . . . , n}, esto es, el numero de
maneras
n en que podemos seleccionar k s
mbolos de entre una coleccion de n, viene dado
por k , con el convenio adicional de que este coeciente binomico es 0 para los valores de k
que quedan fuera del rango 0 k n.
1
As llamados porque se obtienen en el desarrollo del binomio de Newton (vease la subsecci
on 3.1.2).

(versi
on preliminar 26 de septiembre de 2010)
3.1. Subconjuntos. Coeficientes bin
omicos 105

Aunque en la subseccion 3.1.3 presentaremos algunas aplicaciones combinatorias intere-


santes de estos n
umeros, ah va un primer ejemplo simpatico, para que el lector empiece a
captar su utilidad.
Ejemplo 3.1.1 La ley de Murphy y los calcetines. Tenemos diez pares de calcetines
(distintos) y desaparecen seis calcetines (escogidos al azar). Que es m
as probable, que nos
queden cuatro pares u tiles (el bueno)2 ?
tiles (el caso malo) o que nos queden siete pares u
Lo adivin
o: la ley de Murphy es cierta, es mas probable que nos queden s
olo 4 pares. Etique-
temos los calcetines seg
un la pareja a la que pertenezcan y si son derecho o izquierdo:
D1 , I1 , D2 , I2 , . . . D10 , I10 .
Como en el ejemplo 2.2.4, apelaremos a la nocion de probabilidad como cociente del n umero
de casos favorables entre el total. Hay 20 6 posibles desapariciones distintas, pues hay que
elegir 6 de los 20 calcetines. Si han de quedar 7 pares utiles, la u
nica posibilidad es que hayan
desaparecido tres pares completos. Para contar los casos favorables, basta elegir esas tres
parejas (de entre las 10 que hay). As que, si llamamos p7 a la probabilidad de tener 7 pares
u
tiles, 10
1
p7 = 20
3
= .
6
323
Si quedan 4 parejas u tiles, s
olo puede ser porque haya desaparecido un calcetn de cada
 
una de las otras seis. As que decidimos primero que cuatro parejas quedan ntegras ( 10
4
posibilidades) y luego que seis calcetines desaparecen: uno de la primera pareja que queda
(2 posibilidades), otro de la segunda (otras 2 posibilidades), etc. En total, hay 26 posibles
desapariciones. As que 10 6
2 112
p4 = 420 = .
6
323
Es 112 veces mas probable estar en el caso malo! Pero no desesperemos: en realidad, lo mas
probable es que nos queden 5 pares u tiles. Podemosanalizar
 este caso con el siguiente argu-
mento: elegimos los 5 pares que quedan completos ( 10 5 maneras) y, de los restantes 5 pares,
uno ha de desaparecer completo (5 posibilidades), y del resto hemos de elegir que calcetn
desaparece (24 maneras). En total,
10
5 24 168
p5 = 5 20 = .
6
323
El u
ltimo caso (6 pares utiles) requerira elegir los 6 pares ntegros, y de los otros cuatro,
elegir los dos que desaparecen completos y tomar un calcetn de las otras dos parejas:
10 4 2
2 42
p6 = 6 202 = .
6
323
Observese el permanente uso de la regla del producto que hemos hecho en estos calculos.
Compruebese tambien que p4 + p5 + p6 + p7 = 1.
2
Notese que, en esta desastrosa circunstancia, por lo dem
as bastante habitual, no pueden quedar m
as de 7
pares ntegros, y que siempre quedan al menos 4.

(versi
on preliminar 26 de septiembre de 2010)
106 Captulo 3. Las estructuras ba
sicas de la Combinatoria

3.1.1. Propiedades de los coeficientes bin


omicos
Vamos a enunciar unas cuantas propiedades utiles de los coecientes binomicos, que
comprobaremos con argumentos algebraicos y combinatorios.

A. Simetra
La propiedad que nos disponemos a demostrar es la siguiente:
! " ! "
n n
= para n 1 y 0 k n,
k nk

La raz
on por la que hablamos de propiedad de simetra resultar a evidente cuando, unas
p
aginas mas adelante, dispongamos los coecientes bin omicos en el habitual tri
angulo.
La prueba algebraica es muy sencilla:
! " ! "
n n! n! n
= = = .
k k!(n k)! (n k)! (n (n k))! nk
Pero es mas interesante conrmar esta propiedad utilizando argumentos combinatorios. Lla-
memos
   
subconjuntos de tama no k subconjuntos de tama no n k
1 = y 2 = .
extrados de {1, . . . , n} extrados de {1, . . . , n}
A cada subconjunto B de tama no k (es decir, incluido en 1 ) le podemos asociar el sub-
conjunto de tama no n k (que estara incluido en 2 ) formado por todos los elementos de
{1, . . . , n} que no est
an en B, esto es, {1, . . . , n} \ B.
Construimos as una aplicaci on entre los conjuntos 1 y 2 que, como podr a comprobar
sin dicultad el lector, es biyectiva. De lo que se deduce que ambos conjuntos han de tener
el mismo tama no. Es decir, que las cantidades
! " ! "
n n
|1 | = y |2 | =
k nk
han de ser iguales.

B. Suma de los coeficientes bin


omicos
La segunda propiedad da cuenta del valor de la suma de todos los coecientes binomicos
de ndice superior jo: para cada n 1,
n ! "
n
= 2n
k
k=0

La prueba algebraica, manipulando los factoriales que aparecen en la suma, es una tarea muy
laboriosa. Sin embargo, es sencillo construir una prueba por inducci
on, y animamos al lector
a completarla (ejercicio 3.1.1). Veremos tambien una demostracion alternativa, utilizando el
teorema del binomio, en la subsecci on 3.1.2.

(versi
on preliminar 26 de septiembre de 2010)
3.1. Subconjuntos. Coeficientes bin
omicos 107

 
La prueba combinatoria es trasparente. Sabemos que nk cuenta, para cada 0 k n,
el n
umero de subconjuntos de tama no k que podemos extraer del conjunto A = {1, . . . , n}.
Llamemos al conjunto de todos los posibles subconjuntos de A. Sabemos (recuerdese el
no 2n . Denamos ademas
ejemplo 2.2.2) que el conjunto tiene tama

0 = {subconjuntos de A de tama
no 0}
1 = {subconjuntos de A de tama
no 1}
..
.
n = {subconjuntos de A de tama
no n}.

Los conjuntos {0 , 1 , 2 , . . . , n } constituyen una partici


on de (compruebese!). As que,
con la regla de la suma, concluimos que

n n ! "
n
|| = |j | ; es decir, n
2 = .
j
j=0 j=0

Conviene insistir en la identificaci on entre subconjuntos y listas de ceros y unos del ejem-
plo 2.2.2. All vimos que dar un subconjunto del conjunto {1, . . . , n} es exactamente lo mismo
que construir una lista de longitud n con ceros y unos. El diccionario entre ambas cuestiones
es: si en la posicion j-esima de la lista aparece un 1, el elemento j esta en el subconjunto; y
si aparece un 0, no estara.
En su momento esto nos permitio determinar que hay 2n subconjuntos posibles. Ahora
podemos ser un poco mas nos: si solo nos interesamos por los subconjuntos de tama
no k, el
mismo argumento nos permite reinterpretar, combinatoriamente, los coecientes bin omicos:
! "  
n listas de longitud n formadas con ceros
=# .
k o unos que tienen exactamente k unos

C. Regla de recurrencia
La u
ltima propiedad por la que nos vamos a interesar es una regla de recurrencia para
los coecientes binomicos, que nos permitira calcularlos de manera muy eciente. La citada
regla dice as: dado n 2 y para cada 1 k n 1,
! " ! " ! "
n n1 n1
= +
k k k1

La prueba algebraica, aunque sencilla, requiere unas ciertas manipulaciones:


! " ! "
n1 n1 (n 1)! (n 1)! nk n! k n!
+ = + = +
k k1 k!(n 1 k)! (k 1)!(n k)! n k!(n k)! n k!(n k)!
! "% & ! "
n k nk n
= + = .
k n n k
  
=1

(versi
on preliminar 26 de septiembre de 2010)
108 Captulo 3. Las estructuras ba
sicas de la Combinatoria

Para una comprobaci on combinatoria, construimos la siguiente particion:



Subconjuntos de Subconjuntos de tamano k Subconjuntos de tamano k
no k extrados =
tama extrados de {1, . . . , n} extrados de {1, . . . , n}
de {1, . . . , n} que contienen al elemento n que no contienen al elemento n

Por supuesto, la eleccion del elemento n, el u ltimo, para este proceso es totalmente arbitraria
(podamos haber
  elegido, por ejemplo, el primero). El conjunto de la izquierda, ya lo sabemos,
no nk , y la regla de la suma nos permite escribir que
tiene tama

! " Subconjuntos de tamano k Subconjuntos de tamano k
n
=# extrados de {1, . . . , n} +# extrados de {1, . . . , n}
k que contienen al elemento n que no contienen al elemento n

   
Subconjuntos de tama no k 1 Subconjuntos de tama no k
=# +#
extrados de {1, . . . , n 1} extrados de {1, . . . , n 1}
! " ! "
n1 n1
= + .
k1 k
La pen ultima igualdad es la clave del argumento, y est a basada en un par de biyecciones.
Para el primer termino argumentamos as: para construir todos los subconjuntos de tama no k
con los elementos {1, . . . , n} que contengan al elemento n, basta decidir quienes son sus k 1
acompa nantes, es decir, basta elegir k 1 elementos del conjunto {1, . . . , n 1}. Para el
segundo termino, como los subconjuntos que estamos considerando en este caso no contienen
a n, tendremos que escoger los k elementos de entre los del conjunto {1, . . . , n 1}.
La combinacion de esta regla de recurrencia y lo que por razones
que se entenderan en un momento llamaremos los valores frontera,
! " ! "
n n
=1 y = 1, para cada n 1,
0 n
nos permite calcular y codicar los valores de todos los coecientes
bin
omicos. Para ello, es costumbre utilizar el llamado triangulo de
3
Pascal-Tartaglia : un tri angulo formado por casillas que van etique-
tadas con dos parametros, n y k. El par ametro n etiqueta los pisos
del tri
angulo, empezando en n = 0, mientras que el par ametro k, por
su parte, marcara la coordenada de las sucesivas diagonales, de nuevo
Figura 3.1: Tartaglia
de k = 0 en adelante. En la casilla de coordenadas n y k situamos el
umero C(n, k), o indistintamente nk .
n
3
A veces s olo tri
angulo de Tartaglia, a veces s olo tri
angulo de Pascal. Niccolo Fontana (1499-1557) es
mas conocido como Tartaglia (tartamudo; o tartaja, m as catizo y un punto despectivo). Parece ser que
de peque no fue gravemente herido en la cara por las tropas francesas que ocupaban Brescia, su localidad
natal, y que de aquel episodio conserv o una gran cicatriz en el rostro y ciertas dicultades para hablar.
Tradujo y public o numerosas obras matem asicas, como los Elementos de Euclides y algunos tratados
aticas cl
de Arqumedes. Consigui o, entre otros logros, obtener una f ormula para la resoluci
on de la ecuaci
on c
ubica
(vease la nota al pie de la p
agina 20).

(versi
on preliminar 26 de septiembre de 2010)
3.1. Subconjuntos. Coeficientes bin
omicos 109

Para que todo cuadre, es conveniente decidir que C(0, 0) = 1; una denici on consistente
con la formula de los factoriales, aunque sin aparente signicado combinatorio4 . Los valores
en los bordes (las fronteras) del tri
angulo son siempre 1. Y las casillas interiores se rellenan
siguiendo la ecuacion de recurrencia, cuya interpretaci on graca aparece debajo de estas
lneas, a la izquierda: cada coeciente binomico se obtiene sumando los valores de los dos
inmediatamente superiores. Con esta regla, y los valores en los bordes, podemos completar
el tri
angulo, tal como hacemos a continuaci on (hasta n = 7):

C(n1, k1) C(n1, k)

s +
C(n, k)
k=0
 k=1
 k=2
n=0 1  k=3
n=1 1 1  k=4
n=2 1 2 1  k=5
n=3 1 3 3 1 
n=4 1 4 6 4 1 k=6

n=5 1 5 10 10 5 1 k=7
n=6 1 6 15 20 15 6 1 
n=7 1 7 21 35 35 21 7 1

Si, por ejemplo, el lector


6 dirige su mirada al piso n = 6 y diagonal k = 2, encontrar a el
valor de C(6, 2), o bien 2 , que es 15. Hoy en da asociamos este triangulo a los nombres de
Pascal y/o Tartaglia, pero los coecientes binomicos eran ya conocidos, en mayor o menor
grado, siglos antes. Por ejemplo, por Ibn Ezra5 y por Levi ben Gerson6 , entre los siglos
XII y XIV. Aunque los matem aticos arabes y chinos7 tambien manejaban estos n umeros,
8
como se aprecia en la gura de la derecha, del siglo XIII. El tri
angulo de Tartaglia, casi un
icono cabalista, contiene, veladamente, muchas sucesiones de n umeros de interes9 . Es buen
momento para recomendar, de nuevo, la lectura de El diablo de los n umeros de Erzensberger.
4
O si lo tiene, en realidad? Alardee el lector de sus habilidades para el razonamiento escol astico-bizantino
y justique combinatoriamente que C(0, 0) = 1.
5
Abraham Ben Meir Ibn Ezra (1089-1164), matem atico, exegeta y astrologo. . . espa
nol!, nacido en Tudela
y muerto en Calahorra, estaba interesado y saba calcular los coecientes bin omicos con n = 7. Porque siete
eran los cuerpos celestes: el Sol, la Luna, Mercurio, Venus, Marte, J upiter y Saturno. Como buen astr ologo,
a Ibn Ezra le preocupaba saber de cu antas formas se puede estar simult aneamente bajo varios de esos signos.
El lector podr a encontrar m as informaci on sobre este personaje en el artculo La astrologa combinatoria del
rabino Ibn Ezra, de Doron Zeilberger (La Gaceta de la Real Sociedad Matem atica Espa nola 1 (1998), no. 3).
6
Parece que fue el rabino Levi Ben Gerson (1288-1344) el primero en dar una expresi on explcita de los
coecientes bin omicos.
7
Vease la referencia a Al-Karaji de la p agina 40. Aprovechamos aqu para sugerir al lector una excelente
referencia en Historia de las Matem aticas: Mathematics and its history (Springer-Verlag, 1991), de J. Stillwell.
8
La tabla acaba en n = 8. Observe el lector los smbolos. Sera capaz de escribir los n umeros del 1 al 99
en estos caracteres chinos?  
9
Por ejemplo, los numeros triangulares Tn = n+1 2
(vease el ejercicio 1.2.3), que est an en la diagonal k = 2.
Vease tambien la subsecci on 6.3.5.

(versi
on preliminar 26 de septiembre de 2010)
110 Captulo 3. Las estructuras ba
sicas de la Combinatoria

 
La regla de recurrencia anterior permite escribir nk (cuyo ndice superior es n) en termi-
nos de la suma de dos coecientes binomicos cuyos ndices superiores son n 1. Si repetimos
el procedimiento, pero para los dos nuevos coecientes binomicos, llegamos a
! " ! " ! " %! " ! "& %! " ! "&
n n1 n1 n2 n2 n2 n2
= + = + + +
k k k1 k k1 k1 k2
! " ! " ! " ! "! " ! "! " ! "! "
n2 n2 n2 2 n2 2 n2 2 n2
= +2 + = + + .
k k1 k2 0 k 1 k1 2 k2
 
Ahora nk se escribe como suma de coecientes binomicos de ndice superior n2. N otese que
los n
umeros que los acompa nan pueden ser escritos, a su vez, como coecientes binomicos.
Podramos iterar el proceso, pero los calculos seran demasiado
n engorrosos, y vale la pena
argumentar en general, combinatoriamente. Queremos escribir k en terminos de coecientes
binomicos cuyo ndice superior sea, por ejemplo, n l. Primero declaramos del primer tipo
a l elementos de entre {1, . . . , n}, por ejemplo los l primeros, marcando los restantes n l
como del segundo tipo. Ahora clasicamos los k-subconjuntos dependiendo del n umero j
(con 0 j k) de elementos del primer tipo que contengan, en la siguiente partici on:
  k  
k-subconjuntos extrados k-subconjuntos extrados de {1, . . . , n}
= .
de {1, . . . , n} con j elementos del primer tipo
j=0

Observese que, como solo hay l elementos del primer tipo, los conjuntos de la colecci on de la
derecha que corresponden a valores j > l son vacos.
Calculamos el tama no del conjunto con etiqueta j seleccionando primero que j elementos
an en nuestro subconjunto (hay jl posibilidades); y luego seleccionando
del primer tipo est
 nl 
los k j elementos del segundo tipo que contiene el subconjunto (hay kj posibilidades).
Aplicando las reglas de la suma y del producto llegamos a la f ormula de Vandermonde10 :
! " k ! "! "
n l nl
=
k j kj
j=0

El caso l = 1 es la f
ormula de recursion habitual. La suma anterior se extiende, en realidad,
hasta el mnimo de l y k. Esta imprecision en los lmites de sumaci
on no supone problema
alguno si seguimos aplicando el convenio (que ser a de uso general en lo que sigue) de que
los coecientes binomicos son nulos si, por ejemplo, el ndice de abajo es mayor que el de
arriba, o si aparecen ndices negativos. En muchas ocasiones aprovecharemos este convenio
para ser voluntariamente poco cuidadosos con los lmites de sumaci on. Por ejemplo, en la
ormula anterior de Vandermonde podramos haber escrito que la suma se extiende hasta .
f
 
10
El nombre del matem atico y m
usico frances Alexandre-Theophile Vander-  1 1 1 
 
monde (1735-1796) ha quedado asociado al determinante de Vandermonde,  a1 a2 an 
'  
que exhibimos a la derecha, y cuyo valor es 1i<jn (aj ai ). Vease, por  a21 a22 a2n 
 
ejemplo, c omo aparece este determinante en la demostraci on del teorema 4.36.  .. .. .. .. 
 . 
Aunque parece ser que, pese a que Vandermonde fue uno de los pioneros de  . . . 
 a n1
an1 n1
an 
la teora de los determinantes, jam
as considero el que lleva su nombre. 1 2

(versi
on preliminar 26 de septiembre de 2010)
3.1. Subconjuntos. Coeficientes bin
omicos 111

D. C
alculo y tama
no de los coeficientes bin
omicos
Como ya hemos visto, los coecientes binomicos siguen la siguiente formula:
! "
n n! n(n 1) (n k + 1)
= =
k k!(n k)! k(k 1) 3 2 1

(n
otese que hay tantos factores en el numerador como en el denominador). Una f ormula que,
en principio, parece ser la mejor manera de calcularlos. Ahora bien, si el lector recuerda la
discusion de las subsecciones 2.4.3 y 2.4.4, convendra con nosotros en que n! es un n umero
asombrosamente grande. Si, por ejemplo, quisieramos calcular un modesto 50 30 con la f
ormula
anterior, necesitaramos evaluar los factoriales de 50, 30 y 20, para luego dividirlos. Una tarea
que puede poner en apuros a cualquier ordenador. Sin embargo, la aplicaci on reiterada de la
regla de recurrencia permite calcularlos de una manera quiz as mas eciente, pues solo requiere
un cierto numero de sumas. Por esta razon, muchos paquetes matematicos de calculo emplean
este segundo procedimiento para evaluar los coecientes bin omicos.
Pero la formula contiene mucha informaci on. Con ella, y con la ayuda de la f ormula de
Stirling, podemos estimar el orden de magnitud de un coeciente bin omico cualquiera. Fije-
mos un valor de n, un piso en el triangulo de Tartaglia, y miremos los coecientes binomicos
cuyo ndice superior es n. Por ejemplo, los correspondientes a n = 7 son 1, 7, 21, 35, 35, 21, 7, 1 .
Como ya sabemos, por la propiedad A
de esta misma subseccion, la lista es simetri-
ca con respecto al elemento central (o cen-
trales, si, como en el ejemplo, n es impar).
Notese que los valores van creciendo, de iz-
quierda a derecha, hasta llegar al centro (o
centros), a partir del cual empiezan a decre-
cer. Este comportamiento es general:
! " ! " ! "
n n n
max = =
k=0,...,n k n/2 n/2

Observese que los dos coecientes binomicos escritos a la derecha son el mismo si n es par.
Vea el lector el ejercicio 3.1.2 para una posible demostraci on. A la derecha mostramos la
gr
aca con los valores de los sucesivos coecientes binomicos para n = 20.
Interesa conocer el orden de magnitud del coeciente bin omico que ocupa la posicion
central (o centrales) de una la del triangulo de Pascal-Tartaglia, que como hemos visto
 
antes, es el mayor de toda la la. Por comodidad de calculo, analizaremos el coeciente 2n
n .
2n
Para empezar, la suma de todos los coecientes j vale 22n = 4n , as que cada uno de
   
ellos, y en particular 2n n
n , ha de ser menor que 4 . Pero adem as, como 2nn es el mayor de
todos ellos,
2n ! " 2n ! " ! "
n 2n 2n 2n
4 = < = (2n + 1) .
j n n
j=0 j=0

(versi
on preliminar 26 de septiembre de 2010)
112 Captulo 3. Las estructuras ba
sicas de la Combinatoria

Reuniendo ambas estimaciones, concluimos que


! "
4n 2n
< < 4n .
2n + 1 n
La precisa estimacion asintotica de Stirling (vease la seccion 2.4.4) nos permite anar m
as:
! "
2n (2n)! (2n)2n e2n 4 n 1
= = 4n cuando n .
n n! n! n
[n en 2 n]2 n

As que es un crecimiento exponencial, con una peque na correccion (el denominador n).
Visto en una escala logartmica, que es la adecuada en este caso, estas correcciones son
irrelevantes, y el lector podra comprobar sin esfuerzo que
 
ln 2nn
lm = 1.
n n ln(4)

3.1.2. Sobre el teorema del binomio


Tras tanto mentar a los coecientes binomicos, resulta oportuno recordar el origen de su
nombre. La regla del binomio de Newton nos permite calcular la potencia n-esima de una
suma de dos terminos. La formulaci
on habitual es la siguiente:
n ! "

n n
(1 + x) = xk
k
k=0

una expresi on que es v alida para cualquier n umero real x. Un ejercicio interesante, que
proponemos al lector como ejercicio 3.1.19, consiste en probar la validez del teorema por
induccion en n.

Atenci
n
on!, nuestra denicion del coeciente bin omi-
(1 + x)
co k era puramente combinatoria: n umero de mane-



(1 + x)I
ras de escoger k elementos de entre un conjunto de n
(1 + x)Y
hay que escoger
elementos. Y aqu reaparecen, de repente, como coe- n factores 9


k veces la x
cientes del polinomio que se obtiene al desarrollar
+


(1 + x)n . Pero en realidad es justamente la denici on (1 + x)
(1 + x)
combinatoria la que lo justica. Vease el esquema de
la derecha, en el que hemos escrito los n factores en columna. Nos preguntamos cuantas veces
aparecer a el termino xk al multiplicarlos todos, pues ese sera el coeciente de xk . Pero para
que aparezca xk habr a que tomar k veces la x (y nk veces el 1, claro). Es decir, hay que
elegir las k las en las que tomamos la x. Es decir, nk .
Por cierto que este es un primer ejemplo de una funci on generatriz: la funci on (1 + x)n
genera, al ser desarrollada en potencias de x, la sucesion de n umeros
! "
 n  !
 n " ! " ! " ! " 
n n n
= , , ,..., , 0, 0, 0 . . . ;
k k=0 0 1 2 n
sobre estas cuestiones insistiremos, y mucho, en el captulo 11.

(versi
on preliminar 26 de septiembre de 2010)
3.1. Subconjuntos. Coeficientes bin
omicos 113

Si reemplazamos x por x/y en la f


ormula del binomio,
! "n n ! " k
! "n n ! "

x n x y+x n
1+ = = = xk y k ,
y k yk y k
k=0 k=0

obtenemos, tras multiplicar por y n , la siguiente generalizaci


on:
n ! "

n n
(x + y) = xk y nk
k
k=0

que en principio, por el argumento utilizado, sera v olo para y = 0. Pero como para
alida s
n n
y = 0 dice simplemente que x = x , concluimos que es valida para todo y.
Es inmediato obtener, a partir del teorema del binomio, unas cuantas identidades in-
teresantes. Por ejemplo, si en la u
ltima expresion tomamos x = y = 1, recuperamos la ya
conocida
n ! "
n n
2 = .
k
k=0

Pero si tomamos x = 1 e y = 1, llegamos a la (algo mas inesperada11 ) identidad siguiente:


n ! "
n
k
0= (1)
k
k=0

que nos dice que la suma de todos los coecientes bin


omicos de ndice superior n, alterna-
dos en signo, es 0. Usaremos esto, por ejemplo, en la demostracion del principio de inclu-
sion/exclusi
on (vease la subseccion 3.1.4).
Nuestro siguiente objetivo es evaluar la suma

n ! "
n
k .
k
k=0

El truco, que utilizaremos profusamente en el captulo 11, consiste en derivar con respecto
a x la f
ormula del binomio. As se obtiene que
n ! "

n ! "
n1 n k1 n
n(1 + x) = kx ; y, evaluando en x = 1, que k = n 2n1
k k
k=1 k=0

Usaremos esta argucia muchas veces en el captulo 11, y muy en particular, en el contexto
probabilstico para calcular medias de variables aleatorias que toman valores en los enteros no
negativos (vease la seccion 12.1). Pero como eso queda todava lejos, adelantamos un ejemplo
combinatorio.
11
Note el lector que, si n fuera impar, la identidad sera consecuencia de la simetra los coecientes bin
omicos,
que se iran cancelando por parejas. En el caso de n par ya no es as, pues hay un n umero impar de sumandos.

(versi
on preliminar 26 de septiembre de 2010)
114 Captulo 3. Las estructuras ba
sicas de la Combinatoria

Ejemplo 3.1.2 Queremos corroborar la intuici on que nos dice que el tama
no medio de
los subconjuntos que se pueden extraer del conjunto {1, . . . , n} es n/2.
Llamemos a la coleccion de todos los subconjuntos de {1, . . . , n}. Sabemos que || = 2n .
El tama
no medio al que nos referimos es la media aritmetica de los tama nos de todos los
subconjuntos, es decir,
1
|| ,
2n

donde || signica el tama


no de cada subconjunto . La suma consta de 2n sumandos. Vamos
a calcularla agrupando los subconjuntos que tengan el mismo tama no, que sera un cierto
par
ametro k entre 0 y n. El c
alculo, pese a la aparatosa notaci
on, es sencillo y directo:
 
1 1 1 1
n n n
subconjuntos
|| = || = k = k #
2n 2n 2n 2n tales que || = k
k=0 k=0 k=0
||=k ||=k

1 !
n
n
"
1   n
= n k = n n 2n1 = ,
2 k 2 2
k=0

como nos sugera la intuici


on (vease un argumento alternativo en el ejercicio 3.1.10).

El binomio de Newton (versi


on general)
Reescribamos el teorema del binomio, que es valido para cualquier
n N (ademas de para todo x R), de la siguiente manera:
n ! "
n k
n
n n! k n (n1) (nk + 1) k
(1+x) = x = x = x.
k k!(nk)! k!
k=0 k=0 k=0

Notese que el numerador del coeciente de xk tiene k factores. Hemos


escrito que la suma se extiende hasta , aunque en realidad sabemos
que es un polinomio (los coecientes se anulan si k > n). El teorema
general del binomio de Newton12 arma que la expresi on anterior es
tambien cierta sustituyendo n por un real cualquiera:
Figura 3.2: Newton Teorema 3.1 (binomio de Newton) Para todo R, si |x| < 1,


( 1)( 2) ( k + 1)
(1 + x) = xk .
k!
k=0

12
Sir Isaac Newton (1642-1727) es, quiz as, el cientco m
as famoso de todos los tiempos (solo Einstein
rivaliza con el en fama y gloria): el padre de la ley de la gravitaci on y el inventor del C alculo diferencial e
integral (al tiempo que Leibniz). En sus Philophiae naturalis principia mathematica, o simplemente Principia,
de 1687, que son considerados como el m as importante libro cientco jam as escrito, estableci
o los principios
basicos de la Mec anica, la Din
amica de Fluidos, el movimiento ondulatorio, dedujo las leyes de Kepler del
movimiento de planetas y cometas. . . En un arranque de humildad (lo que por cierto no era muy frecuente
en el), Newton dijo una vez que si el haba visto un poco m as lejos era porque estaba subido a hombros de
gigantes, en reconocimiento al trabajo anterior de otros cientcos. Pues oiga, no: para gigante, Newton.

(versi
on preliminar 26 de septiembre de 2010)
3.1. Subconjuntos. Coeficientes bin
omicos 115

Cuidado!, la expresi
on es la misma, pero mientras que en el caso en el que sea un
entero positivo la suma es nita (un polinomio), en el caso general tendremos una serie de
potencias innita. Por esto hemos sido cuidadosos de incluir, en el enunciado del teorema,
los valores de x para los que la serie converge con seguridad. El lector podr a encontrar la
demostracion de este resultado, junto con diversas aplicaciones, en la subseccion 11.3.4.

El multinomio de Newton
Vamos ahora a escribir el binomio de Newton de una manera alternativa:
n ! "
n n k nk n! a b
(x + y) = x y = x y ,
k a! b!
k=0 a,b0, a+b=n

que sale de observar simplemente que, para cada k, los exponentes de x e y suman siempre n.
A la vista de esta expresion, quiz
as el lector podra aventurar que la f
ormula del trinomio
debera ser
n! ! n "
n a b c
(x + y + z) = x y z = xa y b z c .
a! b! c! a, b, c
a,b,c0, a+b+c=n a,b,c0

A la derecha hemos utilizado una nueva notaci on,


! " n!
n a! b! c! si a + b + c = n;
=
a, b, c 0 en caso contrario.

que permite escribir la suma triple de manera mas sencilla: se suman en todos los a, b, c 0,
pero los terminos son nulos a menos que a+b+c = n. A este n umero se le conoce, por razones
obvias, como un coeficientes multin omico. El caso general del multinomio de Newton sera

! "
n
(x1 + x2 + + xk ) = n
x1 a1 x2 a2 xk ak ,
a1 , a2 , . . . , ak
a1 ,...,ak 0

donde, de nuevo,
! "
n
n!
a1 a2 !ak ! si a1 + a2 + + ak = n;
=
a1 , a2 , . . . , ak 0 en caso contrario.

Las expresiones anteriores son correctas: el lector puede animarse a probar la u ltima
expresion general por inducci on en k, partiendo de la f
ormula del binomio habitual, que es
el caso k = 2 (vease el ejercicio 3.1.19).
Pero quiz
as el lector proteste por la s
ubita irrupci
on de estos n
umeros, que han aparecido
como cados del
n cielo. Tenga paciencia, pues de la misma manera en que los coecientes
omicos k aparecan en el desarrollo del binomio por razones combinatorias, tambien
bin
estos coecientes multinomicos tienen su razon de ser combinatoria. En la subsecci on 3.1.6
volveremos a ellos.

(versi
on preliminar 26 de septiembre de 2010)
116 Captulo 3. Las estructuras ba
sicas de la Combinatoria

3.1.3. Algunas aplicaciones combinatorias de los coeficientes bin


omicos
Desde hace unas p aginas, los coecientes binomicos se pasean, pavoneandose. Es hora
ya de ponerlos a trabajar. En esta subsecci on y en las dos siguientes vamos a analizar unas
cuantas cuestiones combinatorias en cuya respuesta intervienen, de una manera u otra, los
coecientes binomicos.
Las primeras aplicaciones tienen que ver con contar el n umero de soluciones de la
ecuacion diofantica
x1 + x2 + + xk = n.
Aqu, los datos son n y k. Y utilizamos el adjetivo diof anticas 13 porque las soluciones de la
ecuaci on anterior han de ser numeros enteros no negativos. Es decir, una soluci
on es una lista
(x1 , . . . , xn ) de n
umeros enteros no negativos. En las aplicaciones habituales, ademas, los xj
suelen tener condiciones adicionales, como ser todos mayores o iguales que 1 o similares.
El enunciado anterior es pura abstracci on que recoge los ingredientes fundamentales de
diversos problemas combinatorios, algunos de los cuales pasamos a enunciar.
Cuesti
on 1. Composiciones del entero n de longitud k.
Como vimos en la subseccion 2.2.3, una composici on de n es una manera de escribir n
como suma (ordenada) de n umeros naturales. La composici on tendr
a longitud k si hay exac-
tamente k sumandos. As que, si llamamos x1 , . . . , xk a estos sumandos, contar el numero de
estas composiciones es lo mismo que calcular el n umero de soluciones de
 
x1 + x2 + + xk = n
x1 1, . . . , xk 1
Cuesti
on 2. Distribuciones de n bolas identicas en k cajas numeradas.
Es la primera vez que aparece en este texto el lenguaje de las distribuciones de bolas en
cajas, que, como iremos viendo, es extremadamente u til para representar m ultiples cuestiones.
Como comprobar a el lector, en unos casos las bolas seran identicas (indistinguibles), y en
otros numeradas (distinguibles). Lo mismo ocurrir a con las cajas. De nuevo, todo esto es una
abstraccion que describe una gran variedad de problemas combinatorios. En la secci on 3.4
resumiremos los distintos casos que nos iremos encontrando a lo largo de estas paginas.
En el que nos ocupa, como las bolas son identicas, lo u nico relevante es decidir cu antas
bolas van en cada caja. As que, si llamamos xj al n umero de bolas que va en cada caja j,
contar el numero de distribuciones (biyecci
on al canto) es lo mismo que contar el n umero de
soluciones de
   
x1 + x2 + + xk = n x1 + x2 + + xk = n
o quizas de
x1 0, . . . , xk 0 x1 1, . . . , xk 1
si es que permitimos cajas vacas (primer caso), o si no permitimos que queden cajas vacas
(segundo caso). Por supuesto, el lector puede imaginar otras restricciones sobre las distribu-
ciones de bolas que se traducen, de manera inmediata, en condiciones sobre los xj .
13
Estudiaremos este tipo de ecuaciones con detalle en el captulo 4, en especial en la subsecci
on 4.1.4. Por
ahora no nos interesar
a c
omo resolverlas, sino s
olo saber cu
antas soluciones distintas tienen.

(versi
on preliminar 26 de septiembre de 2010)
3.1. Subconjuntos. Coeficientes bin
omicos 117

Cuesti no k extrados de {1, . . . , n}.


on 3. Multiconjuntos de tama
Claro, no podan faltar!, se dir
a el lector: si en las listas distinguamos entre aquellas en
las que se permite repetici on de las que no, por que no hacer lo mismo con los conjuntos?
En un subconjunto, de manera natural, la repetici on de smbolos esta prohibida. Y aunque
suene algo forzado, deniremos un multiconjunto de tama no k extrado de {1, . . . , n} como
una coleccion de k smbolos escogidos de {1, . . . , n} donde se permite que aparezca varias
veces cada smbolo.
Antes de caer en el desanimo por la vertiginosa proliferaci on de problemas con y sin
repeticion, con y sin orden, con y sin. . . observe el lector (o medite un rato hasta convencerse)
que, para describir un multiconjunto, lo u nico relevante es decidir cu
antas veces aparece cada
smbolo. Es decir, podemos representar un multiconjunto general de la siguiente manera:

{1, x1 .veces
. . , 1, 2, x2 .veces
. . , 2, . . . , n, xn.veces
. . , n} , {1x1 , 2x2 , . . . , nxn } .

Los xj son enteros no negativos, y su suma ha de valer k (que es el tama no total del multi-
conjunto). As que el n
umero de multiconjuntos coincide con el n umero de soluciones de
 
x1 + x2 + + xn = k
# soluciones de
x1 0 , . . . , xn 0
El mismo tipo de problema, salvo que los papeles de n y k estan cambiados con respecto a
los anteriores.
Una vez convencidos de que vale la pena dar soluci on a la cuestion sobre soluciones de
ecuaciones diofanticas, pues de esa manera daramos soluci on, de una tacada, a estas tres
cuestiones, nos ponemos con ello.
Pero empezamos el an alisis recurriendo al lenguaje de las composiciones. Revise el lector
el argumento que utilizamos en la subseccion 2.2.3, y que entonces nos permitio deducir que
umero total de composiciones de n era 2n1 : una composici
el n on se obtiene colocando los n
unos en la y decidiendo, en cada hueco entre ellos (hay n 1) si se para (y se suma todo
lo que se haya ido acumulando) o se sigue adelante. Es decir, es lo mismo que una lista de
longitud n 1 formada con dos smbolos. Si ahora la composici on ha de tener k sumandos,
querra decir que en la lista anterior ha de aparecer exactamente k 1 veces el separador
que representa el para y suma (por que k 1?). De manera que nos basta con escoger en
que k 1 huecos (de los n 1 posibles) van estos separadores. Las biyecciones implcitas en
este argumento nos permiten deducir que
   
composiciones de lon- formas de elegir k 1 posiciones (para los separadores)
# =#
gitud k del n
umero n de entre n 1 (los huecos a nuestra disposicion)
  ! "
subconjuntos distintos de tama no k 1 n1
=# = .
extrados del conjunto {1, . . . , n 1} k1
Y de forma inmediata, vista la traducci
on a ecuaciones diofanticas, que
  ! "
x1 + x2 + + xk = n n1
# soluciones de =
x1 1, . . . , xk 1 k1

(versi
on preliminar 26 de septiembre de 2010)
118 Captulo 3. Las estructuras ba
sicas de la Combinatoria

Sigamos adelante: en las cuestiones combinatorias descritas al principio apareca tambien


el problema de contar el numero de soluciones de
 
x1 + + xk = n
.
xi 0
Por ejemplo, al contar las distribuciones de n bolas identicas en k cajas numeradas, si es que
permitimos cajas vacas.
Vamos a transformar este problema en uno del tipo anterior (con restricciones sobre las
variables del tipo 1) con una sencilla biyecci on. A cada lista (x1 , . . . , xk ) soluci
on del
problema anterior le asociaremos una lista (y1 , . . . , yk ) con la receta de que cada yj es el
correspondiente xj mas 1. Como cada yj = xj + 1, es claro que son n umeros 1. Pero ahora
su suma vale lo que vala la suma de los xj mas el numero de unos a nadidos, es decir, n + k.
Esta biyeccion nos permite concluir que
    ! "
x1 + + xk = n y1 + + yk = n + k n+k1
# sols. de = # sols. de =
xi 0 yi 1 k1
Quizas el lector quiera reescribir este argumento en terminos de cajas en bolas (quitando una
bola de cada caja si es que todas tienen al menos una; o, en sentido contrario, a nadiendo
una bola a cada caja en una distribuci on general para obtener una con cajas no vacas). Por
cierto que el numero de k-multiconjuntos consmbolos  {1, . . . , n} de la cuestion 3 resulta ser,
leyendo adecuadamente la formula anterior, n+k1 n1 .
Visto el exito conseguido, nos animamos a plantear una versi on m as general del problema
diof
antico, como es calcular el n umero de soluciones de
 
x1 + x2 + + xk = n
.
x1 p1 , . . . , xk pk
Los datos aqu son n, k y unos enteros no negativos p1 , . . . , pk . Resolvemos la cuestion con un
truco como el de arriba, transform andola en una que ya sabemos contar, como por ejemplo
aquella en el que las restricciones son del tipo 0. Para ello, empleamos el cambio (biyeccion)
siguiente:
yj = xj pj para cada j = 1, . . . , k.
Notese que los yj son enteros mayores o iguales que 0 (pues los xj pj ) que suman

k
k
k
k
k
yj = (xj pj ) = xj pj = n pj .
j=1 j=1 j=1 j=1 j=1

ahora, simplemente mirando la f ormula de arriba, concluimos que:


    
x1 + + xk = n y1 + + yk = n kj=1 pj
# sols de = # sols de
x1 p1 , . . . , xk pk y1 0, . . . , yk 0


k
n+k1 pj
=
j=1
k1

(versi
on preliminar 26 de septiembre de 2010)
3.1. Subconjuntos. Coeficientes bin
omicos 119

De nuevo animamos al lector a que reinterprete  este argumento en terminos de quitar o


nadir bolas en cajas. Observe el lector que si j pj > n no hay soluciones, pero de esto ya
a
da cuenta el convenio habitual de los coecientes binomicos. Para recordar esta aparatosa
f
ormula, puede ser u
til, casi como regla mnemotecnica, que el coeciente binomico tiene
como ndice superior el valor total de la suma, n, mas el n
umero de sumandos, k,
menos 1 y menos lo que sumen las restricciones (los pj );
y como ndice inferior, el n
umero de sumandos menos 1.
La f
ormula anterior contiene, como casos particulares, los dos resultados obtenidos antes:
! "
n+k1
si p1 = p2 = pk = 0, entonces la respuesta es ;
k1
! "
n1
y si p1 = p2 = = pk = 1, entonces es simplemente .
k1
El lector ambicioso estara ya esperando la siguiente generalizaci on: dadas dos listas de
enteros no negativos (p1 , . . . , pk ) y (q1 , . . . , qk ), contar el n
umero de soluciones de
 
x1 + x2 + + xk = n
.
p1 x1 q1 , . . . pk xk qk
Ahora hay restricciones sobre los xj por arriba y por debajo. En terminos de distribuciones
de bolas en cajas, se tratara de calcular el numero de formas de distribuir n bolas identicas
en k cajas numeradas de manera que en la caja 1 vayan entre p1 y q1 bolas; en la caja 2 entre
p2 y q2 bolas, etc. Pero a pesar de que el problema tiene un aspecto semejante a los anteriores,
aqu no es posible obtener una f ormula sencilla en terminos de los par ametros involucrados,
pues la soluci on pasa por aplicar el siempre engorroso principio de inclusion/exclusi on. Lo
ilustramos a continuaci on con un ejemplo.
Pero antes, avisamos al lector de que se podran plantear restricciones mas generales
que estas: por ejemplo, exigir que x1 fuera par, que x2 estuviera entre 3 y 15, que x3 fuera
m ultiplo de 5, etc. En la secci
on 13.1 volveremos sobre esto, ya con el lenguaje de las funciones
generatrices.
Ejemplo 3.1.3 El n umero de soluciones de la ecuaci antica x1 + x2 + x3 = 50, donde
on diof
0 x1 10, 5 x2 35 y 0 x3 20.
Iniciamos el an
alisis, para facilitar los calculos, poniendo las cotas inferiores a cero:
y1 = x1 0 , y2 = x2 5 0 , y3 = x3 0 .
Con esta transformacion, el problema pasa a ser el de contar el n
umero de soluciones de
.
y1 + y2 + y3 = 50 0 5 0 = 45
.
0 y1 10 , 0 y2 30 , 0 y3 20
Ahora pasaremos al complementario y aplicaremos el principio de inclusi
on/exclusi
on. De-
nimos primero el conjunto grande:
   ! " ! "
y1 + y2 + y3 = 45 45 + 3 1 47
X = soluciones de = |X | = = .
yi 0 31 2

(versi
on preliminar 26 de septiembre de 2010)
120 Captulo 3. Las estructuras ba
sicas de la Combinatoria

Hay tres prohibiciones:


.. ! " ! "
soluciones y1 + y2 + y3 = 45 45 + 3 11 1 36
A= |A| = = ,
de y1 11 , y2 0 , y3 0 3 1 2
.. ! " ! "
soluciones y1 + y2 + y3 = 45 45 + 3 31 1 16
B= |B| = = ,
de y1 0 , y2 31 , y3 0 31 2
.. ! " ! "
soluciones y1 + y2 + y3 = 45 45 + 3 21 1 26
C= |C| = = .
de y1 0 , y2 0 , y3 21 31 2

El numero de soluciones v alidas sera |X | |A B C|, as que tendremos que calcular el


tama no de las intersecciones de dos y tres conjuntos. Por ejemplo,
   ! " ! "
soluciones y1 + y2 + y3 = 45 45 + 3 42 1 5
AB = |A B| = = .
de y1 11 , y2 31 , y3 0 31 2
 
De la misma manera se obtendra que |A C| = 15 2 . Pero al calcular |B C| obtendr
amos
un coeciente bin omico con ndice superior negativo. Es decir, B C = . En consecuencia,
la intersecci
on tres a tres sera tambien vaca y el resultado nal sera
! " %! " ! " ! "& %! " ! "&
47 36 16 26 5 15
# soluciones = + + + + = 121.
2 2 2 2 2 2

3.1.4. Los coeficientes bin


omicos y el principio de inclusi
on y exclusi
on
El principio de inclusi
on/exclusi
on, que presentamos en la seccion 2.3, permite calcular
el tama on de una coleccion nita de conjuntos {A1 , A2 . . . , An }:
no de la uni

n
|A1 A2 An | = (1)j+1 j ,
j=1

donde los j son las sumas de los tama


nos de todas las posibles intersecciones de j conjuntos:

1 = |A1 | + |A2 | + + |An |


2 = |A1 A2 | + |A1 A3 | + + |An1 An |
..
.
n = |A1 A2 An |.

Ahora sabemos cuantos sumandos aparecen en el c alculo de cada j . Por ejemplo, 1 consta
de
 n n sumandos (las
 nposibles formas de escoger 1 elemento de un conjunto de n, esto es,
1 ); 2 consta de 2 sumandos
  (las posibles formas de escoger 2 elementos de entre n), etc.
En general, j tendr a nj terminos. Conocer este dato sera muy u til porque, como veremos
mas adelante (veanse los ejemplos 3.1.4 y 3.1.5), muchas veces todas las intersecciones de j
conjuntos, para cada valor de j, son del mismo tama no; y esta simetra nos permitir
a obtener
f
ormulas mas o menos sencillas.

(versi
on preliminar 26 de septiembre de 2010)
3.1. Subconjuntos. Coeficientes bin
omicos 121

A. Demostraci
on del principio de inclusi
on/exclusi
on
Vamos a utilizar un argumento de doble conteo. Llamamos A = nj=1 Aj y denotamos los
elementos de A por 1 , 2 , . . . 1 2 3 4
Construimos una tabla en cuyas colum- A1 1 1 1 1
nas situamos los elementos j de A. Etique- A2 1 1 1 0
tando las las aparecen primero los conjuntos A 3 1 1 0 1
.. .. .. .. ..
A1 , . . . , An , luego las intersecciones dos a dos, . . . . .
A1 A2 , A1 A3 , . . . An1 An ; despues, las in- An 1 0 0 1
tersecciones tres a tres, cuatro a cuatro. . . as, A1 A2 1 0 1 0
A1 A3 1 1 0 1
hasta llegar a la interseccion de todos los Aj .
.. .. .. .. ..
Los registros de la matriz van a ser 0, 1 y . . . . .
An1 An 1 1
1. Consideremos la columna etiquetada por 0 0
A1 A2 A3 1 1 0 0
un cierto elemento j : si j no pertenece al .. .. .. .. ..
conjunto que etiquete la la, pondremos un 0. . . . . .
En el caso de pertenencia al conjunto, distin- A n2 A n1 A n 1 0 0 1
.. .. .. .. ..
guiremos si se trata de una interseccion de un . . . . .
numero impar de conjuntos (en cuyo caso pon- .
..
.
..
.
..
.
..
.
..
dremos un +1) o de una intersecci on de un n+1
A1 An (1) 0 0 0
numero par (escribiremos un 1). Por ejem-
plo, pondramos un 1 en las casillas correspondientes si j estuviera en A3 , en A2 A5 A6 ,
o en A2 A3 A7 A8 A9 , mientras que pondramos un 1 si perteneciera, por ejemplo, a
A1 A3 , a A2 A3 A5 An , etc. La tabla tendra un aspecto parecido al que se muestra a la
derecha. Ahora sumaremos las entradas de la matriz, primero por las y luego por columnas.
La suma por las nos va a dar la suma alternada en signos del principio de inclu-
sion/exclusi on (hemos dise nado la matriz expresamente para esto). La la etiquetada con
A1 contiene |A1 | unos, la de A2 , |A2 | unos, etc. Cada la etiquetada con Ai Aj contiene
|Ai Aj | signos 1. Y as sucesivamente. En total, la suma por las nos da

m
() |Ai | |Ai Aj | + .
i=1 i<j

La suma por columnas requiere un an alisis mas cuidadoso. Fijemos un A, que es-
a en, digamos, k de los Aj , para cierto 1 k n. En su columna tendremos exactamente
tar
k unos en las las etiquetadas por los conjuntos A1 , . . . , An . Pero si esta en k de los Aj , es-
   
a en exactamente k2 de las intersecciones dos a dos: ah encontraremos k2 signos 1.
tar
 
Tambien estara en k3 de las tres a tres, etc. El u ltimo signo no nulo estar a en las las de las
intersecciones k a k: sera un (1)k+1 , justo en la la etiquetada por la intersecci on de todos
los Aj en los que este ; mas all a, todo ceros. En total, la suma de la columna de valdr a
! " ! " ! " ! " k ! " k ! "
k k k k k k
+ + (1)k+1 = (1)j+1 =1 (1)j .
1 2 3 k j j
j=1 j=0

Pero la suma (completa y alternada en signo) de coecientes bin omicos es 0 (vease la p


agi-
na 113). As que al sumar las entradas de la columna del elemento obtenemos exactamente 1.

(versi
on preliminar 26 de septiembre de 2010)
122 Captulo 3. Las estructuras ba
sicas de la Combinatoria

Si ahora tomamos un elemento distinto, cambiara su valor de k (el n


umero de subcon-
juntos a los que pertenezca), pero el argumento funciona igualmente. De manera que cada
columna de la matriz suma 1. Y como hay |A| = |A1 An | columnas, resulta que la
suma () vale |A|, lo que concluye la demostracion. 
El lector podra encontrar un par de generalizaciones del principio del inclusi
on/exclusi
on
en los ejercicios 3.1.25 y 3.1.26.

B. Las desigualdades de Bonferroni


La f
ormula del principio de inclusi
on/exclusi
on,
 n  n
 
 Aj = |Ai | |Ai Aj | + |Ai Aj | + + (1)n+1 |A1 An | .
  
j=1
i=1  1i<jn
  
1i<jn
   n
1 2 3

exige calcular los valores de los sucesivos j , lo que en general es una tarea muy engorrosa.
Notese que hay un total de 2n sumandos, 2n intersecciones por calcular.
Nos gustara saber el error que se cometera si, por ejemplo, nos limitaramos a calcular
los primeros j . Por ejemplo, el lector podr
a comprobar (vease el ejercicio 3.1.21), que

n
|A1 An | |Aj | = 1 .
j=1

As que si nos quedamos simplemente con el primer termino (las sumas de los tama nos
individuales), acotamos la suma completa por arriba. En el mismo ejercicio se pide comprobar
que |A1 An | 1 2 . Bueno, no va mal. Pero, en estas estimaciones, en cuanto nos
equivocamos? El siguiente resultado responde a esta pregunta:
Lema 3.2 Para cada 2 t n,
 n
t1   n 
 j+1   
 (1) j
j+1
(1) j  =  (1)j+1 j  t .
j=1 j=1 j=t

As que el error cometido al truncar la serie de principio de inclusi


on/exclusi
on esta controlado
por el tama no del primer termino despreciado.
Bueno!, dira el lector, no es tan raro: da la impresi on de que los n umeros j , que son
todos no negativos, son cada vez m as pequenos. Por ejemplo, es claro que los |Aj | son mas
grandes que los |Ai Aj |. Pero
 cuidado!, de los primeros sumamos n, mientras que de los
segundos sumamos mas, n2 . El lema anterior sera inmediato si efectivamente se cumpliera
que 1 2 3 (vease el ejercicio 3.1.22). Pero este no es el caso. En general, los
terminos j del principio de inclusi on/exclusi on no tienen por que ser decrecientes (vease
un sencillo ejemplo en el ejercicio 3.1.23). As que la demostraci on del lema 3.2 es mas sutil
de lo que pudiera parecer a primera vista, y requiere una cuidadosa estimaci on del valor de
sumas alternadas (pero incompletas) de coecientes bin omicos. El lector podra encontrar las
sugerencias oportunas para completar esta prueba en el ejercicio 3.1.24.

(versi
on preliminar 26 de septiembre de 2010)
3.1. Subconjuntos. Coeficientes bin
omicos 123

Del lema anterior obtenemos inmediatamente toda una cadena de desigualdades, las lla-
madas desigualdades de Bonferroni. Partimos de la ya conocida

|A1 An | 1

que nos dice que |A1 An | 1 0. Ahora, el caso t = 2 del lema reza as (n
otese como
nos libramos del valor absoluto en el segundo paso):
 
|A1 An |1  2 = 1 |A1 An | 2 = |A1 An | 1 2 ,

que es la segunda desigualdad de la cadena. Ahora el caso t = 3 nos da


 
|A1 An | (1 2 ) 3 = |A1 An | 1 + 2 3

= |A1 An | 1 2 + 3 ,

que es la tercera desigualdad. Y as, sucesivamente. As que cada vez que anadimos un j (con
su signo), nos acercamos cada vez m as al valor real, y estas aproximaciones se van alternando:
una por exceso, la siguiente por defecto. S olo al nal, al sumar todos los j con sus signos
correspondientes, recuperamos el valor exacto de |A1 An |. Recordemos, ademas, que
sabemos acotar el error que se comete en cada una de ellas. Por ejemplo, en la u ltima que
hemos escrito el error estara acotado por 4 , el primer termino despreciado.

C. Algunas aplicaciones
Hay dos aplicaciones especialmente interesantes del principio de inclusi
on/exclusi
on, como
son la de obtener una f
ormula para el n umero de aplicaciones sobreyectivas y la de calcular el
numero de los llamados desbarajustes, un tipo especial de permutaciones. Los dos ejemplos
siguientes contienen los analisis respectivos.
Ejemplo 3.1.4 Contemos cu antas aplicaciones sobreyectivas podemos dar entre los
conjuntos X = {1, . . . , n} e Y = {1, . . . , k}.
Recuerdese, del ejemplo 2.2.5, que podemos identicar aplicaciones de X Y con n-listas
formadas con los smbolos {1, . . . , k}. Las aplicaciones sobreyectivas son las que no se saltan
ningun elemento de Y. M as formalmente, aquellas para las que, para todo y Y, existe al
menos un x X tal que f (x) = y. Alternativamente, son las n-listas en las que aparecen
todos los k smbolos. En el argumento que sigue iremos alternando estos dos puntos de vista.
Vamos a pasar al complementario: las aplicaciones que no sean sobreyectivas, o bien se
saltar
an el elemento 1, o bien el 2, etc., as hasta el k. As que, si denimos los conjuntos
Aj = {aplicaciones X Y que se saltan el elemento j} , para cada j = 1, . . . , k ,
el numero de aplicaciones sobreyectivas resulta ser kn |A1 A2 Ak |.
Calculemos, en primer lugar, el tama no de cada uno de los Aj . Una aplicaci on que
este en Aj no toma el valor j como imagen. Y en terminos de listas, eso supone construir
n-listas en las que utilicemos cualquiera de los smbolos de Y menos el smbolo j. As que
|Aj | = (k 1)n , para cada j = 1, . . . , k.

(versi
on preliminar 26 de septiembre de 2010)
124 Captulo 3. Las estructuras ba
sicas de la Combinatoria

Sucede algo analogo con las intersecciones: si una aplicacion esta en Ai Aj , entonces no
tomara como imagen ni al smbolo i ni al j. Es decir, la lista correspondiente se formar
a con
cualesquiera de los otros k 2 smbolos. Por tanto,
|Ai Aj | = (k 2)n , para cada i = j.
El mismo argumento sirve para las intersecciones tres a tres, cuatro a cuatro, etc. Como el
n
umero de sumandos en cada suma de la expresion del principio de inclusi
on/exclusion viene
omico, concluimos que, si |X | = n e |Y| = k,
dado por un coeciente bin
/ 0
# aplicaciones sobreyectivas X Y = kn |A1 A2 Ak |

%! " ! " ! " &


k1 ! "
k k k j k
=k n
(k 1)
n
(k 2) +
n
(k k) =
n
(1) (k j)n
1 2 k j
j=0

Pues vaya formulita!, clamar


a el lector, y con razon. Y eso que estabamos en uno de los casos
buenos de aplicaci
on del principio de inclusion/exclusion, en el que todas las intersecciones
del mismo tipo tienen el mismo tama no. Como regla de calculo, lo reconocemos, no resulta
muy util. Por eso, en la subseccion 3.3.1 retomaremos esta cuestion, y obtendremos una
manera alternativa de calcular el numero de aplicaciones sobreyectivas, apoy andonos en una
de las familias de n
umeros mas famosas de la Combinatoria: los n umeros de Stirling (de
segunda especie). El lector impaciente puede ya saltar hasta all, si lo desea.
Ejemplo 3.1.5 Desbarajustes.
Las permutaciones de {1, . . . , n} son, recordemos, las n-listas sin repeticion formadas con
ese conjunto de smbolos. Es decir, todas las n! posibles reordenaciones de los smbolos
{1, . . . , n}. O, alternativamente, las aplicaciones biyectivas de {1, . . . , n} en s mismo. En la
seccion 3.2 nos ocuparemos de estos objetos, de su estructura interna y de diversos problemas
combinatorios que aparecen al estudiarlos.
Aqu nos vamos a centrar en un tipo muy especial de permutaciones, a las que llamaremos
desbarajustes: son las n-listas en las que ning un smbolo esta en su posicion natural: es
decir, el 1 no esta en la posici on primera, el 2 no est a en la segunda, etc. En el lenguaje de
las aplicaciones, seran las biyecciones que no jan elemento alguno.
Nos interesa hallar una f ormula explcita para el n umero de desbarajustes, al que nos
referiremos como Dn . O mejor, para Dn /n!, que representa la proporci on que los desbarajustes
ocupan entre todas las permutaciones. Esto es, la probabilidad de que si escogemos una
permutaci on al azar, esta sea un desbarajuste.
En el planteamiento cl asico del problema14 , se han escrito n cartas y preparado los n
sobres con las direcciones correspondientes, cada uno al lado de su carta. Pero alguien los
ha descolocado, de manera que no queda m as remedio que introducir las cartas en los sobres
al azar. Hecho esto, cual sera la probabilidad de no acertar ninguna? Esta probabilidad,
observese, es justamente Dn /n!.
14
Una versi
on alternativa habla de hombres que dejan sus sombreros a la entrada de una esta, y luego los
recogen al azar, y luego. . . una versi
on algo anticuada, en todo caso.

(versi
on preliminar 26 de septiembre de 2010)
3.1. Subconjuntos. Coeficientes bin
omicos 125

Antes de empezar a analizar el problema, quizas el lector debera meditar un momento


sobre la cuestion y apelar a su intuici
on para, al menos, arriesgar una respuesta aproximada:
una probabilidad cercana a 0, cercana a 1? Que ocurre cuando el n umero de cartas y sobres
es muy grande? Parece difcil no acertar alguna, o no?
Argumentamos, como antes, pasando al complementario y usando el principio de inclu-
sion/exclusi
on. Una permutaci on no es un desbarajuste si al menos uno de los smbolos esta en
su posici
on natural. As que consideramos los siguientes conjuntos:
Aj = {permutaciones de {1, . . . , n} con el smbolo j en la posicion j,} para j = 1, . . . , n
(en el lenguaje de las aplicaciones, cada Aj contendra a las biyecciones que jan el corres-
pondiente elemento j). Como hay n! permutaciones en total,
Dn = n! |A1 An | .
El tama no de cualquiera de los conjuntos Aj es (n 1)!, porque en Aj estan las listas en
las que el smbolo j esta en la posici
on j, y para contarlas bastar a ordenar (permutar) los
n 1 smbolos restantes. Por otro lado, todas las intersecciones dos a dos tienen tama no
(n 2)!, pues en una interseccion dos a dos estan las listas con dos smbolos ya colocados en
sus correspondientes posiciones (solo hay que permutar los restantes). Y as con el resto de
los casos. Aplicando el principio de inclusion/exclusi on obtenemos que
%! " ! " ! " & n ! "
n n n n n
Dn = n! (n 1)! (n 2)! + + (1) (n n)! = (n j)!(1)j .
1 2 n j
j=0

Esto es,

n
(1)j Dn (1)j
n
Dn = n! , o bien = .
j! n! j!
j=0 j=0

La f ormula, como puede comprobar el lector, es bastante  mas sencilla que la del caso
de las aplicaciones sobreyectivas. Pero mas a un, la cantidad nj=0 (1)j /j!, que en principio
depende de n, es, a todos los efectos numericos y si n es grande, casi indistinguible15 de 1/e.
Atenci on!, porque la conclusi on es sorprendente: por un lado, la probabilidad Dn /n!
de obtener un desbarajuste es pr acticamente independiente de n (si n es sucientemente
grande). Pero m as a
un, es una probabilidad grande, mayor que un tercio. Quiz as mas de
lo que hubieramos apostado al principio.
Y que explicaci on16 tiene este extra no fen
omeno? Llamemos Bj a los complementarios
de los Aj en el conjunto de las permutaciones. Es decir, Bj contiene a las permutaciones de
{1, . . . , n} en las que el smbolo j no esta en la posici
on j. Observese que
(n 1)! 1
P rob(Bj ) = 1 P rob(Aj ) = 1 =1 .
n! n
15
Como ya comentamos en la subsecci on 2.4.2. Por ejemplo, las primeras cifras decimales de 1/e son
0.3678794412, mientras que al sumar hasta j = 10 obtenemos 0.3678794643. El lector interesado podr a en-
contrar un argumento preciso en el ejercicio 3.1.27.
16
La que aqu sugerimos requiere cierta familiaridad con conceptos de probabilidad. Quiz as el lector quiera
consultar antes el captulo 7. Veanse, por ejemplo, el ejercicio 7.3.7 y el ejemplo 7.5.12.

(versi
on preliminar 26 de septiembre de 2010)
126 Captulo 3. Las estructuras ba
sicas de la Combinatoria

La interseccion de todos los conjuntos Bj son, precisamente, los desbarajustes. Si los Bj


fueran independientes entre s, entonces tendramos que
!1 n " $ n $n ! " ! "
1 1 n 1
P rob Bj = P rob(Bj ) = 1 = 1 si n es grande.
n n e
j=1 j=1 j=1

No toca aqu precisar el signicado exacto de independientes, pues de eso nos ocuparemos
en el captulo 7. Pero, de manera intuitiva, quiere decir que, por ejemplo, el que el smbolo j
este fuera de su posici
on no inuye en que el smbolo k este fuera de su posicion. Es este el
caso? No, desde luego, si consideramos permutaciones de dos elementos {1, 2}, porque si el 1
esta fuera de su posicion, entonces el 2 ha de estar necesariamente descolocado. Si tenemos
tres smbolos, el que el smbolo 1 no este en su posicion inuye en que, por ejemplo, el 2 no
este en la segunda posicion, aunque algo menos. Pero cuando n se hace cada vez mas grande,
esta inuencia se va diluyendo. Es decir, los Bj son (aproximadamente) independientes, lo
que explica que la probabilidad de obtener un desbarajuste sea 1/e. El lector interesado
puede encontrar un argumento riguroso de esta armaci on en el ejercicio 3.1.28.
Como extension de este analisis sobre desbarajustes, en el ejercicio 3.1.29 se cuenta el
n
umero de permutaciones que jan 1, 2, etc. smbolos.
Como ya hemos comentado en alguna ocasion, y como esta comprobando repetidamente
el lector, un buen n umero de cuestiones combinatorias tienen que ver con listas con restric-
ciones. Habitualmente, estas restricciones impiden contar el n umero de listas con una simple
aplicacion de la regla del producto, y hace falta aplicar otro tipo de tecnicas.
Los dos ejemplos anteriores son una buena ilustraci on. En el de las aplicaciones sobreyec-
tivas, se trata de contar listas de longitud n formadas con los smbolos {1, . . . , k} en las que
aparecen todos los smbolos posibles. En los desbarajustes, se trata de n-listas sin repeticion
con los smbolos {1, . . . , n} (permutaciones) en las que ning un smbolo aparece en su posici on
natural. En ambos casos, se trata de un buen n umero (k en el primer caso, n en el segundo)
de condiciones simultaneas (interseccion de condiciones), que tras pasar al complementario,
se convierten en una uni on de condiciones (las complementarias de las originales). Ah es
donde entra en escena el principio de inclusi on/exclusi on.
Otro tipo de restricciones, muy frecuentes, son aquellas en las
no se pueden repetir smbolos en ciertas posiciones. Ya nos hemos
encontrado con alg un caso, como el del ejemplo del ejemplo 2.2.7.
Queramos entonces contar las 4-listas en las que podemos situar los
smbolos {1, . . . , n}, con la restriccion de que posiciones consecuti- Pos. 1 Pos. 2
vas deben llevar smbolos distintos y, ademas, no podemos colocar
el mismo smbolo en las posiciones primera y cuarta. A la derecha
exhibimos un par de representaciones gr acas del problema: arriba,
la lista con sus prohibiciones; abajo, una traducci on que utilizaremos Pos. 4 Pos. 3
mas adelante: cada posicion de la lista etiqueta un vertice y cada
prohibici on se corresponde con un arco o arista. Esto es lenguaje de grafos, que desarrolla-
remos en el captulo 9. S olo lo usamos aqu para representar de manera sencilla, sin mas
aparato te orico. Pero observe el lector como el esquema con vertices y arcos representa la
informaci on de manera m as clara que el dibujo de la lista con prohibiciones.

(versi
on preliminar 26 de septiembre de 2010)
3.1. Subconjuntos. Coeficientes bin
omicos 127

Ya obtuvimos la respuesta al comienzo de la seccion 2.3, separando en dos casos y apli-


cando la regla de la suma: hay n(n1)(n2 3n+3) listas distintas. Pero, dado que se trata de
unas cuantas restricciones simultaneas, deberamos ser capaces de abordarlo tambien usando
el principio de inclusion/exclusi on (tras pasar al complementario). Sea A el conjunto de las
listas de interes y X el conjunto de las 4-listas con los smbolos {1, . . . , n}, de las que hay n4 .
El complementario de A dentro de X se puede escribir como


A1 = {4-listas con 1a = 2 a }
4
A2 = {4-listas con 2 a = 3 a }
X \A= Ai , donde

A = {4-listas con 3 a = 4a }
i=1 3
A4 = {4-listas con 4a = 1a }
una uni
on de conjuntos (no disjuntos). El principio de inclusi
on/exclusi
on nos dice que

4
|A| = |X| |Aj | + |Ai Aj | |Ai Aj Ak | + |A1 A2 A3 A4 | .
j=1 i<j i<j<k

El primer c no de los conjuntos Aj , es sencillo:


alculo, el del tama
|A1 | = #{4-listas con smbolos {1, . . . , n} tales que 1 a = 2 a } = n3
|A2 | = #{4-listas con smbolos {1, . . . , n} tales que 2 a = 3 a } = n3
|A3 | = #{4-listas con smbolos {1, . . . , n} tales que 3 a = 4 a } = n3
|A4 | = #{4-listas con smbolos {1, . . . , n} tales que 4 a = 1 a } = n3
Cu al es el tama
no de las intersecciones dos a dos? El siguiente argumento graco nos conven-
ce de que, por ejemplo, A1 A3 y A1 A4 tiene el mismo tama no, n2 , aunque por razones
distintas:
|A1 A3 | = n2 |A1 A4 | = n2
n posibilidades
  

          
n posibilidades n posibilidades

n posibilidades

Compruebe el lector que el resto de las intersecciones dos a dos tienen tambien tama no n2 .
Una sencilla inspecci on muestra que las intersecciones tres a tres son tambien todas de igual
tamano; por ejemplo, |A1 A2 A3 | = n, porque que en la primera y segunda posiciones
aparezca el mismo smbolo, en la segunda y tercera tambien, y lo mismo en la tercera y cuarta,
hace que el mismo smbolo deba aparecer en las cuatro posiciones (y hay n posibilidades
para elegir este smbolo). Por supuesto, la interseccion de los cuatro conjuntos tiene tambien
tamano n, as que podemos concluir que
 4  !4 " ! " ! " ! " ! "
  4 4 2 4 4
|A| = |X|  Ai  = n
4 3
n + n n+ n = n(n 1)(n2 3n + 3) .
0 1 2 3 4
i=1

Mucho ruido, para tan pocas nueces, se dir


a el lector. Total, para obtener un resultado que ya
conocamos. Pero bueno, si al menos todas las intersecciones del mismo tipo tienen siempre
el mismo tamano. . .

(versi
on preliminar 26 de septiembre de 2010)
128 Captulo 3. Las estructuras ba
sicas de la Combinatoria

Veamos otro ejemplo, en el que el conjunto de restricciones es el


que se representa en los esquemas de la derecha. Argumentamos como
antes: el conjunto de listas prohibidas ser
a la uni
on de los conjuntos
A1 = {listas con 1a = 2 a }
Pos. 1 Pos. 2
A2 = {listas con 2 a = 3 a }
A3 = {listas con 3 a = 4a }
A4 = {listas con 1a = 3 a }
A5 = {listas con 1a = 4a } ; Pos. 4 Pos. 3

una restriccion m as que antes. Compruebe el lector que todos los Aj tienen tama no n3 , y
que todas las intersecciones dos a dos tienen tama no n2 .
5 Pero cuidado!, la simetra se rompe al llegar a las intersecciones tres a tres, de las que hay
3 = 10. La mayor parte de ellas tienen tama no n. Por ejemplo, la interseccion A1 A2 A3 ,
porque estar en A1 exige tener el mismo smbolo en las dos primeras posiciones; estar en A2
hace que la tercera lleve ese smbolo com un; y estar en A3 exige que ese smbolo aparezca
tambien en la cuarta posici on. Solo hay que decidir, pues, el smbolo com un a toda la lista.
Sin embargo, hay dos intersecciones que tienen tama 2
no n . Veamos, por ejemplo, el caso
|A1 A2 A4 |. Por estar en A1 y en A2 , las tres primeras posiciones han de llevar el mismo
smbolo; pero estar en A4 no a nade informacion, pues exige que la primera y tercera posiciones
lleven el mismo smbolo. As que hay que elegir un smbolo para las tres primeras posiciones,
y otro para la cuarta (n2 posibilidades). Lo mismo ocurre para la intersecci on A3 A4 A5 .
Note el lector que estos dos casos se corresponden con conguraciones en las que las aristas
correspondientes abarcan u nicamente tres vertices en triangulo (vease el dibujo).
Si el lector se esmera analizando todos los casos, comprobara que las intersecciones cuatro
a cuatro y la intersecci on cinco a cinco tienen todas el mismo tama no, n, as que
! "
5 4
# listas = |X | |A1 A2 A3 A4 A5 | = n [1 2 + 3 4 5 ]
0
! " ! " ! " %! " & ! " ! "
5 4 5 3 5 2 5 5 5
= n n + n 2 n 2n +2
n n.
0 1 2 3 4 5
Si simplicamos esta expresi on, obtenemos n(n1)(n2)2 . Pero espere!, eso mismo habramos
obtenido si nos hubieramos lanzado, de manera algo osada, a contar las listas directamente,
en plan regla del producto: n posibilidades para la primera posicion, n 1 para la segunda,
n 2 para la tercera (recuerdese la arista diagonal en la representaci on con grafos) y otra
vez n 2 (porque en las posiciones 1 y 3 van smbolos distintos) para la cuarta posici on.
O sea que a veces se puede aplicar la regla del producto, otras veces hay que argu-
mentar con el principio de inclusi on/exclusi
on, pero incluso en este caso a veces todas las
intersecciones tienen el mismo tama no y otra veces no, en funci
on de como se combinen las
restricciones. . . Y esto hay que hacerlo para listas con muchas posiciones y un buen n umero
de restricciones? No, oiga, no, protestara el lector: pongan algo de orden en estos calculos!
Y esto es justamente lo que haremos, ya con el lenguaje de los grafos, en la seccion 10.3.3,
cuando desarrollemos lo que daremos en llamar el polinomio crom atico de un grafo.

(versi
on preliminar 26 de septiembre de 2010)
3.1. Subconjuntos. Coeficientes bin
omicos 129

3.1.5. Una interpretaci


on gr
afica de los coeficientes bin
omicos
Vamos a considerar la red que aparece dibu- k=0
jada a la derecha de estas lneas, en la que cada  k=1
n=0  k=2
nodo se identica con unas coordenadas (n, k), n = 1  k=3
tal como se indica en la gura. Nuestro objetivo n = 2 R  k=4
es estudiar los posibles caminos desde (0, 0) has- n = 3 R  k=5
ta un cierto (n, k) tales que, en cada paso, desde n = 4 
n=5 R
cada nodo s olo se puede pasar a los nodos que
estan inmediatamente debajo. La longitud del
camino sera el n umero de pasos dados. Para ca-
da par de valores n y k, llamaremos Cam(n, k) derecha izquierda

al numero de caminos distintos que podemos trazar desde el nodo (0, 0) a un nodo cualquiera
de coordenadas (n, k). Distintos, por supuesto, signicar a que las sucesiones de pasos de que
constan se diferencian en alguno de ellos. Para jar ideas, en la descripci on de los caminos
utilizaremos la nomenclatura de paso a la derecha y paso a la izquierda adoptando el
punto de vista de un caminante que circulara por la red (as que es la orientaci on contraria
a la del lector que lee estas paginas).
Esta formulaci on, que como veremos es muy rica y elegante, se de-
be al matematico h ungaro P olya17 , quien es tambien responsable de
las teoras que hay detras del estudio de la combinatoria con simetras
(vease el captulo 17) y del paseo aleatorio (vease el captulo 19, en el
que nos volveremos a encontrar con estas guras).
Para algunos de los valores posibles de los par ametros n y k es sen-
cillo calcular el correspondiente n umero Cam(n, k). Por ejemplo, para
cualquier n 0, Cam(n, 0) = 1, porque s olo hay un camino que lleve
del (0, 0) al (n, 0) (el que consiste en dar siempre pasos a la derecha).
De la misma manera, Cam(n, n) = 1 (dar s olo pasos a la izquierda).
Figura 3.3: Polya El objetivo es encontrar, si es que la hay, una f
ormula cerrada para
Cam(n, k) en terminos de n y k.
El lector, quizas inspirado por el aspecto de la gura18 , estara ya sospechando que estos
numeros guardan relaci on con los coecientes binomicos. Para comprobarlo, enunciemos una
serie de propiedades que verican estos n umeros, que nos resultar an sin duda familiares.
17
George Polya (1887-1985) es uno de los miembros m as destacados de la magnca escuela matem atica
hungara del siglo XX. Su actividad se desarroll o en diversos lugares, primero en su Budapest natal (hasta
1912), luego en G ottingen (1913) y Z urich, desde 1914 hasta 1940 (en 1924 estuvo en Inglaterra, trabajando
con Hardy y Littlewood; el libro Inequalities es uno de los frutos de esta colaboraci on). La siguiente etapa de
esta suerte de paseo aleatorio vital (una estupenda biografa suya se titula justamente The random walks of
George P olya, Gerard Alexanderson, MAA, 2000) fue la Universidad de Stanford en Estados Unidos, a donde
emigr o en 1940, y en la que permanecera hasta el nal de sus das. P olya trabaj
o en diversos campos de
las Matem aticas: Teora de N
umeros, Combinatoria, An alisis real y complejo, Probabilidad, etc.; algunas de
estas aportaciones las iremos recogiendo en estas p aginas. Pero, adem as de por esta actividad investigadora,
Polya es famoso por sus reexiones sobre la actividad matem atica y la did
actica de las matem aticas: libros
como How to solve it (1945), Mathematics and plausible reasoning (1954) o Mathematical Discovery (1962)
han sido autenticos exitos editoriales.
18
O mas simplemente, por el ttulo de esta subseccion.

(versi
on preliminar 26 de septiembre de 2010)
130 Captulo 3. Las estructuras ba
sicas de la Combinatoria

A. Traslaci
on
Esta primera propiedad ser autil en an
ali- (0, 0) (0, 0)

sis posteriores: observemos los esquemas de la (a, b)


derecha. Ni los caminos de (0, 0) a (n, k) ni
los que van de (a, b) a (n + a, k + b) pueden
(n, k)
salirse del area se
nalada, y como ambas zonas
son iguales, podremos deducir que: (n + a, k + b)




Cam(n, k) = # caminos (0, 0) (n, k) = # caminos (a, b) (a + n, b + k) .

B. Reflexi
on
Consideremos un camino de (0, 0) a (n, k). Si (0, 0) (0, 0)
lo reejamos con respecto al eje vertical que pasa
por el (0, 0), obtenemos un camino de (0, 0) a
(n, nk). Esta reexion es una biyeccion entre el
conjunto de caminos que unen (0, 0) con (n, k) y
el conjunto de los que conectan (0, 0) con (n, n (n, k) (n, n k)

k). De manera que Cam(n, k) = Cam(n, n k).

C. Recursi
on (0, 0)
La propiedad anterior nos recuerda, desde
luego, a las propiedades de simetra de los coe-
cientes binomicos. Cumpliran tambien la misma
regla de recurrencia? Clasiquemos los caminos
hasta (n, k) dependiendo del vertice inmediata-
mente superior por el que pasen. Esto es una (n1, k1) (n1, k)

particion de nuestro conjunto total de caminos: (n, k)
     
caminos caminos (0, 0) (n 1, k 1) caminos (0, 0) (n 1, k)
= .
(0, 0) (n, k) y luego izquierda y luego derecha

Ahora obtenemos los tama nos de los conjuntos calculando, simplemente, de cu


antas maneras
se puede llegar a los puntos (n 1, k 1) y (n 1, k), respectivamente:

Cam(n, k) = Cam(n 1, k 1) + Cam(n 1, k) .


 
Tenemos entonces dos familias de n umeros, Cam(n, k) y los coecientes binomicos nk , que
satisfacen la misma ecuacion de recurrencia y que tienen los mismos valores frontera. Esto
supone que Cam(n, k) coincide, para cada par de valores de los parametros n y k con el coe-
ciente binomico nk . As que, despues de todo, no estamos mas que ante otra interpretaci
on
combinatoria de los coecientes bin omicos.
En lo que sigue vamos a aprovechar esta nueva interpretaci
on de los coecientes binomicos
para obtener algunas expresiones interesantes.

(versi
on preliminar 26 de septiembre de 2010)
3.1. Subconjuntos. Coeficientes bin
omicos 131

D. Barrera horizontal
kl
Vamos a clasicar los caminos hasta (n, k) seg un  k
el nodo de la barrera horizontal de un nivel anterior 
n l por el que pasan (vease el dibujo). Los nodos nl

de la barrera tienen coordenadas (n l, k l + m), n


donde m = 0, 1, . . . , l. Esto da lugar a una partici
on 6
nodo (n, k)
del conjunto de caminos, pues todos los caminos hasta
(n, k) han de pasar necesariamente por uno (y s olo uno) de los nodos de la barrera:
  l 

caminos caminos consistentes en ir (0, 0) (n l, k l + m)
=
(0, 0) (n, k) y luego ir (n l, k l + m) (n, k)
m=0
 
A la izquierda tenemos nk caminos distintos. Del punto (0, 0) al punto (n l, k l + m) se
 nl 
puede ir de kl+m maneras distintas. Y hay tantos caminos desde (n l, k l + m) hasta
(n, k) como entre (0, 0) y (l, l m), como podra comprobar el lector si aplica cuidadosamente
la regla A de traslacion. Aplicando las reglas de la suma y el producto, concluimos que:
! " l ! "! "
n l nl
= ,
k m=0
lm kl+m

agina 110 (cambiese el ndice m por j = l m).


que es la formula de Vandermonde de la p

E. Barrera diagonal
Ahora, para un cierto nodo de la red, que por co- k1
modidad tomaremos de coordenadas (n + 1, k + 1), 
k
consideramos la barrera diagonal que incluye a los no-
dos de segundo ndice k (vease el dibujo). Es decir, los n+1
nodos de coordenadas (j, k), con j = k, . . . , n. Como 6
antes, pretendemos clasicar los caminos de (0, 0) a nodo (n+1, k+1)

(n + 1, k + 1) dependiendo de su paso por la barrera. Podramos, por ejemplo, escribir que


  n  
caminos caminos consistentes en ir (0, 0) (j, k)
=
(0, 0) (n, k) y luego ir (j, k) (n + 1, k + 1)
j=k

Pero esto no es una particion, pues hay caminos que estan en m as de uno de los conjuntos de
la derecha. Imagine el lector un camino que llegue a un nodo intermedio de la barrera y luego
baje un rato por ella. Para resolver esta dicultad, y contar una u nica vez cada camino, los
clasicamos dependiendo de cual sea el ultimo nodo de la barrera por el que se pase:
  n  
caminos caminos (0, 0) (n + 1, k + 1) tales que (j, k)
=
(0, 0) (n, k) es el u
ltimo nodo de la barrera por el que pasan
j=k

Ahora s que tenemos una verdadera partici


on, y bastar
a contar cu
antos elementos tiene cada
bloque de la partici
on.

(versi
on preliminar 26 de septiembre de 2010)
132 Captulo 3. Las estructuras ba
sicas de la Combinatoria

Pero si el nodo (j, k) es el u


ltimo de la barrera que se toca, entonces el recorrido, m as
all
a de ese punto, esta ya jado: paso a la izquierda y luego bajada hasta el nodo (n+1, k +1).
Concluimos as que
! " n ! " n ! "
n+1 j j
= =
k+1 k k
j=k j=0

Atenci
on!, esta u
ltima f
ormula es nueva y u
til. Ya sabemos sumar los coecientes binomi-
cos cuando variamos el ndice inferior. Aqu tenemos la suma analoga cuando variamos el
superior. Mostramos juntas ambas f ormulas, para que lector aprecie la diferencia: si k n,
n ! "
n ! "
! "
k k j n+1
=2 y = .
j k k+1
j=0 j=0

Ejemplo 3.1.6 Una f


ormula para los n
umeros de Catalan Cn .
ocil revisa el ejemplo 2.3.3, recordara que Cn cuenta, entre otras muchas cosas,
Si el lector d
umero de listas (x1 , . . . , x2n ), donde xj = 1 (hay n unos y n menos unos), y de manera
el n
que las sumas parciales, esto es, x1 , x1 + x2 , x1 + x2 + x3 , etc, sean siempre no negativas.
Traduzcamoslo a nuestro contexto: un +1 que- (1, 1)

rr
a decir un paso a la izquierda (recordemos, izquier- n+1
da para el habitante de la red), y un 1, un paso a 
la derecha. As que una lista (x1 , . . . , x2n ) formada
con +1 y 1 (la mitad de cada) es un camino en 2n+1
el que se dan n pasos a la izquierda y otros tantos (2n+1, n+1)
a la derecha. Empezamos en el punto (1, 1). De los
2n pasos, n han de ser hacia la izquierda; as que necesariamente acabamos en el punto de
coordenadas (2n + 1, n + 1). Adem as, en cada momento, al menos se han dado tantos pasos a
la izquierda como a la derecha, as que nunca podremos tocar la lnea vertical. Las listas que
interesan se corresponden, pues, con caminos como el que exhibimos en el dibujo anterior.
El n
umero total decaminos
 posibles desde (1, 1)
(1, 0). (1, 1)
hasta (2n+1, n+1) es 2n n ; pero s
olo queremos con- .......
tar aquellos que no tocan la lnea vertical. Aqu lle- .... n+1
..
19
ga la idea brillante : un argumento de reexi on. 
Vamos a evaluar el tama no del complementario,
los caminos que s tocan la vertical: supongamos 2n + 1
(2n + 1, n + 1)
que tenemos uno de ellos, como el que aparece en
el dibujo de la derecha, y consideremos la primera
vez que alcanza la barrera. Reejando este primer tramo, a cada camino que toca la lnea le
hacemos corresponder uno desde (1, 0) a (2n + 1, n + 1).
Pero al reves tambien, pues un camino de (1, 0) a (2n + 1, n + 1) esta obligados a cruzar la
lnea vertical. El lector podra comprobar que justo el considerar la primera vez que tocan
la barrera es lo que hace que sea una biyeccion entre los dos tipos de caminos. Ahora, de
19
Idea que, por consiguiente, no es original de los autores.

(versi
on preliminar 26 de septiembre de 2010)
3.1. Subconjuntos. Coeficientes bin
omicos 133

(1, 0) a (2n + 1, n + 1), con el argumento


 2n  de traslaci
on habitual, sabemos que hay tantos como
de (0, 0) a (2n, n + 1); esto es, n+1 caminos. As que, nalmente, deducimos que
! " ! "
2n 2n
Cn = para cada n 0.
n n+1
Dejamos que el lector se entretenga con las manipulaciones algebraicas que conducen a la
siguiente formula, que nos permite calcular los valores de la sucesion:
! "
1 2n
Cn = (Cn ) = (1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796 . . . )
n+1 n

3.1.6. Coeficientes multin


omicos
Los coecientes multinomicos
! "
n n!
=
a1 , a2 , . . . , ak a1 ! a2 ! . . . ak !
aparecieron fugazmente en la subseccion 3.1.2, al tratar, claro, el multinomio de Newton. En
la expresion de arriba est
a implcito el convenio segun el cual el coeciente multinomico es 0
si los enteros no negativos a1 , . . . , ak no suman exactamente n.
Pero si aparecieron all es justamente porque son respuesta a una cuesti on combinatoria
que pasamos a enunciar, en dos versiones. Se trata de contar
el numero de formas de distribuir n bolas numeradas en k cajas numeradas de forma
que haya a1 bolas en la primera caja, a2 en la segunda, etc., donde a1 + + ak = n;
umero de listas de longitud n formadas con los smbolos {1, . . . , k} con exactamente
o el n
a1 unos, a2 doses, etc. De nuevo, los numeros a1 , . . . , ak cumplen que a1 + + ak = n.
La biyeccion entre las dos cuestiones es in-
escribimos aqu a
mediata: distribuir las n bolas en k cajas con qu e caja va la bola 1 a cu
al la bola 2 a cu
al la bola n
las restricciones citadas exige decidir a que ca-
ja va cada bola. Es decir, formar una lista de w ? ^
n posiciones (una por bola), en las que indi-
1 2 n
camos a que caja va cada bola. Si queremos
que haya a1 bolas en la caja 1, a2 en la caja 2, etc., entonces en la lista han de aparecer
exactamente a1 unos, a2 doses, etc. Y si nos dan la lista con todas estas condiciones, la
reinterpretacion en terminos de distribuciones en cajas es obvia.
Ay!, las dichosas distribuciones de bolas en cajas, ese lenguaje tan del gusto de los que se
dedican a menesteres combinatorios. En la secci on 3.1.3 tuvimos un primer contacto con este
lenguaje, aunque entonces trat abamos distribuciones de bolas identicas en cajas numeradas.
Ahora, al considerar a las bolas como numeradas, esto es, distinguibles, no basta, como all,
con informar de cu antas bolas van en cada caja; hay que se nalar tambien cu ales son.
Si la cuestion se hubiera planteado sin restricciones sobre el n umero de bolas por caja
(o sobre el numero de veces que aparece cada smbolo en la lista), el analisis sera directo:

(versi
on preliminar 26 de septiembre de 2010)
134 Captulo 3. Las estructuras ba
sicas de la Combinatoria

bastara decidir a que caja va cada bola; o cual es el smbolo de cada posici
on de la lista. Lo
que, por la regla del producto, se puede hacer de kn maneras. Es otra manera de entender las
listas (en este caso, de longitud n y k smbolos) o las aplicaciones X Y si es que |X | = k
e |Y| = n (revise el lector el ejemplo 2.2.5 y cambie all los papeles de n y k).
Nuestro problema requiere un an alisis diferente. Vemos primero un ejemplo sencillo, que
nos da la pista para el argumento general. Digamos que hay que repartir n bolas numeradas
en 3 cajas numeradas, con a1 bolas en la primera caja, a2 en la segunda y a3 en la tercera,
donde a1 + a2 + a3 = n. Contamos cuantas distribuciones hay con el siguiente proceso:
1. Elegimos cu ales (recordemos que las bolas
 son distinguibles) son las a1 bolas que van
a la caja 1. Esto se puede hacer de an1 formas distintas.
2. Elegimos las bolas de la segunda caja de entre las n a1 bolas que quedan; tenemos
na1 
a2 maneras de hacerlo.
3. Las de caja 3 quedan ya determinadas (las restantes), as que no habr a que decidir nada
en este paso. Aunque tambien podramos argumentar como na1 a2  pasos
en los dos anteriores
a3 
y observar que las bolas de la caja 3 se pueden elegir de a3 = a3 = 1 forma.
La regla del producto nos dice entonces que el n umero de posibles distribuciones es
! "! "! "
n n a1 a3 n! (n a1 )! (n a1 a2 )! n!
= = .
a1 a2 a3 a1 !(n a1 )! a2 !(n a1 a2 )! a3 !0! a1 ! a2 ! a3 !

El lector podra comprobar que el mismo argumento se puede aplicar al caso general, para
obtener que el n
umero de distribuciones de n bolas distinguibles en k cajas numeradas con a1
bolas en la primera caja, a2 en la segunda, etc., donde a1 + a2 + + ak = n, viene dado por
el coeciente multinomico
! "
n n!
= .
a1 , a2 , . . . , ak a1 ! a2 ! . . . ak !
Note el lector que el caso k = 2 es algo especial, pues si a1 + a2 = n, entonces a2 = n a1 ,
as que ! " ! "
n n! n! n
= = = ,
a1 , a2 a1 ! a2 ! a1 ! (n a1 )! a1
y recuperamos el coeciente binomico habitual. Una cierta ambig uedad de notaci
on que
conamos en que no cause confusi on.
Ejemplo 3.1.7 Se pretende repartir los 25 empleados de una empresa en 4 grupos de trabajo:
el de relaci
on con los clientes debe constar de 4 personas; el de desarrollo de proyectos, de 6
personas; 7 personas iran al grupo de contabilidad, mientras que las 8 restantes trabajaran
en tareas de organizacion interna. De cuantas maneras se pueden estructurar estos grupos?
El objetivo es repartir 25 bolas numeradas (las personas) en 4 cajas numeradas (los grupos
de trabajo), con 4 en la primera, 6 en la segunda, 7 en la tercera y 8 en la cuarta. Respuesta:
! "
25 25!
= = 4417238826000 formas distintas
6, 4, 7, 8 4! 6! 7! 8!
casi cuatro billones y medio, una cantidad por cierto enorme.

(versi
on preliminar 26 de septiembre de 2010)
3.1. Subconjuntos. Coeficientes bin
omicos 135

Y por que aparecen estos n umeros en el multinomio de Newton,


! n
"
(x1 + x2 + + xk ) =
n
x1 a1 x2 a2 xk ak ?
a1 , a2 , . . . , ak
a1 ,...,ak 0

Tendramos que contar cuantas veces aparece cada termino xa11 xakk en el desarrollo de
(x1 + + xk )n . Si el lector se construye un esquema como el que apareca al principio de
la subseccion 3.1.2 dedicada al teorema del binomio, poniendo en columna los n factores
(x1 + + xk ), se convencera que para que aparezca xa11 xakk hay que escoger a1 veces
el x1 , a2 veces el x2 , etc. Lo que nos lleva al coeciente multinomico correspondiente.
Cerramos esta subseccion insistiendo en la interpretaci on en terminos de listas, no tanto
por el resultado, que ya es conocido, sino por una manera de argumentar que es u til en muchas
ocasiones. Queremos contar cuantas n-listas podemos formar con los smbolos {1, . . . , k} de
manera que haya a1 unos, a2 doses, etc., donde a1 + +ak = n. Ya sabemos que la respuesta
esta en el coeciente multinomico correspondiente.
Pero argumentemos de la siguiente manera: hagamos que los smbolos sean distingui-
bles. Como que distinguibles?, pero de que manera vamos a poder distinguir, por ejemplo,
dos unos entre s?, protestara el lector, alarmado ante este nuevo articio. Pues justamente
etiquetando de cierta manera cada smbolo. Para ello consideramos el nuevo conjunto de
smbolos siguiente:
11 , 12 , . . . , 1a1 , 21 , . . . , 2a2 , . . . , k1 , . . . , kak .
Hemos considerado tantos clones del smbolo 1 como nos indica el valor de a1 , tantos del
2 como indique a2 , etc. Ahora, en total hay n smbolos distinguibles, que podemos disponer
en una n-lista de n! maneras distintas. Pero, para contrarrestar la diferenciaci on cticia
y auxiliar que hemos introducido, por ejemplo, entre los unos, deberemos dividir por un
factor a1 ! (construya el lector explcitamente la aplicacion a1 ! a 1 que hay detr as de este
comentario). Lo mismo deberemos hacer con los doses, con los treses, etc. As llegamos, de
nuevo, al resultado ! "
n! n
= .
a1 ! a2 ! ak ! a1 , a2 , . . . , ak
No le extra nar
a al lector, a la vista de este argumento, que en algunos textos se utilice el
nombre de (n umero de) permutaciones con repetici on para describir esta cantidad.
Ejemplo 3.1.8 Cu
antas listas de longitud 8 formadas por 2 aes, 3 bes y 3 ces hay?
Las listas estan formadas por los smbolos a, a, b, b, b, c, c, c, pero por supuesto no todas las 8!
permutaciones posibles dan lugar a listas distintas. Aplicamos de nuevo el truco citado antes:
hacemos distinguibles los smbolos, a1 , a2 , b1 , b2 , b3 , c1 , c2 , c3 , y formamos las 8! permutaciones
posibles. Obtenemos as, por ejemplo, listas como
a1 a2 b1 b2 b3 c3 c2 c1 y a2 a1 b1 b2 b3 c3 c2 c1
que, al borrar los subndices de las aes, dan lugar a la misma, (a, a, b, b, b, c, c, c). Solucionamos
esta proliferaci
on espuria de listas dividiendo por los factoriales correspondientes:
! "
8! 8 87654
= = = 560 .
2! 3! 3! 3, 2, 3 223

(versi
on preliminar 26 de septiembre de 2010)
136 Captulo 3. Las estructuras ba
sicas de la Combinatoria

3.1
EJERCICIOS DE LA SECCION

3.1.1 Pruebese, por inducci


on, que
n ! "
n
= 2n .
j=0
j
Recuerde el lector el argumento combinatorio de la subsecci
on 3.1.1 y la prueba, va el teorema del
binomio, de la subsecci
on 3.1.2.
3.1.2 Queremos probar que el valor m aximo en cada fila del triangulo de Tartaglia es el central (o
centrales). Es decir, que ! " ! " ! "
n n n
max = = .
k=0,...,n k n/2 n/2
(a) Utilcese la propiedad de simetra de los coeficientes bin
omicos para deducir que basta calcular ese
maximo en el rango 0 k n/2.
 n  n
(b) Sup ongase, por ejemplo, que n es par. Compruebese que, siempre que k n/2, k1 < k .
(c) Completense los detalles del caso en que n sea impar.
3.1.3 Pruebese que, si k es un cierto n
umero fijo, entonces
! " ! " !   "
n1 n+k1 n + k2 1
tanto como como
k1 k1 k1
nk1
oticamente (recuerdese el smbolo de la subsecci
son asint on 2.4.1) como (k1)! cuando n .
3.1.4 (a) Tenemos 2n bolas rojas numeradas y otras 2n bolas blancas numeradas. De cu antas
formas distintas se puede escoger, de entre esas 4n bolas, un conjunto con n bolas rojas y n blancas?
(b) Tenemos 10 bolas rojas numeradas y 6 bolas blancas numeradas. De cu antas maneras puede
escogerse un conjunto de 9 bolas de forma que a lo sumo haya 4 bolas rojas?
(c) De cu antas maneras distintas se pueden distribuir 40 personas en 8 grupos de 5 personas?
(d) De cu antas maneras distintas se pueden distribuir 40 bolas identicas en 6 cajas numeradas, de
manera que entre las tres primeras cajas se distribuyan 25 bolas y que en cada una de las dos u
ltimas
cajas se sit
uen a lo sumo 6 bolas?
3.1.5 De Nuestro hombre en La Habana, de Graham Greene:
- No entiendo por que escogiste ese n umero.
- No te ocurre a ti que hay n umeros que se te quedan grabados para siempre en la memoria?
- S, pero este precisamente lo has olvidado.
- Lo recordare enseguida. Era algo as como 77539.
- Nada menos que cinco cifras!
- Podemos intentar todas las combinaciones de 77539.
- Sabes cu antas hay? Como unas seiscientas, m as o menos. Espero que no tengas prisa.
- Estoy seguro de todo menos del 7.
- S, pero que 7? Esto significa que hay que probar con seis mil configuraciones. No soy ma-
tem atico, sabes?
Podra el lector ayudar al personaje de esta novela y precisar sus c
alculos?
3.1.6 Consideremos las 22 consonantes {b, c, . . . , z} y una u nica vocal {a}. Queremos formar con
ellas palabras de 12 letras, de las cuales exactamente cinco sean consonantes (distintas), y en las que
no aparezcan consonantes seguidas. Cu antas distintas habr
a?

(versi
on preliminar 26 de septiembre de 2010)
3.1. Subconjuntos. Coeficientes bin
omicos 137

3.1.7 (a) Cu umeros entre 0 y 9999 tienen la suma de sus cifras igual a 7? (b) Y 7?
antos n
3.1.8 Para su uso en este ejercicio, describimos brevemente la baraja espanola: consta de 40 cartas,
que est
an agrupadas en cuatro palos (oros, copas, espadas y bastos). Cada palo cuenta con diez cartas:
as, dos, tres, cuatro, cinco, seis, siete, sota, caballo y rey.
(a) Cual es la probabilidad de que en un mazo bien barajado de cartas de una baraja espa nola las
dos primeros cartas no formen pareja (no sean, por ejemplo, dos ases, o dos sotas, o dos. . . )?
(b) En cu
antas manos distintas de 5 cartas de baraja espa
nola aparecen los 4 palos? (Nota: con-
sideremos que una mano de 5 cartas es un subconjunto de 5 cartas).
(c) Cuantas manos de cinco cartas de la baraja espa nola son exactamente un tro (por ejemplo, tres
sotas y las otras dos cartas que no sean sotas y que, ademas, sean distintas entre s)? Y exactamente
dobles parejas?
(d) Estamos jugando a la pocha20 y tenemos la siguiente partida:
sobre el mazo de cartas esta el 2 de espadas (espadas es, por tanto,
la pinta). El jugador A, que es mano (esto es, el primero en
jugar), tiene un 7 de espadas. Lo u nico que nos interesa saber es
que, con las reglas del juego, s olo hay en la baraja 5 cartas que
superen el valor de su carta (sota, caballo, rey, tres y as de espadas).
Cual es la probabilidad de que A pierda la jugada?
3.1.9 Si n bolas numeradas se distribuyen al azar en n cajas numeradas, cu
al es la probabilidad
(a) de que ninguna caja quede vaca?;
(b) y de que exactamente una caja quede vaca?
3.1.10 (a) El tama no medio de los subconjuntos de {1, . . . , n}, como vimos en el ejemplo 3.1.2,
es n/2. Obtengase una prueba alternativa de este resultado utilizando la siguiente observaci on: por
no k hay uno (el subconjunto B = {1, . . . , n} \ A) que tiene tama
cada subconjunto A de tama no n k.
(b) La longitud de una composici
on de un numero natural n es el n
umero de sumandos. Pruebese
que si un numero n tiene M composiciones de longitud k, entonces tambien tiene M composiciones
de longitud n k + 1. Ded umero n es n+1
uzcase que la longitud media de las composiciones del n 2 .

3.1.11 Se tienen dos listas de smbolos, (a1 , a2 , . . . , an ) y (b1 , b2 , . . . , bm ), todos distintos. Se quiere
formar una u nica lista con todos los n + m smbolos respetando el orden dado de las as y el orden
dado de las bs. Por ejemplo, si n = 2 y m = 3 la lista (b1 , a1 , b2 , a2 , b3 ) es v alida, pero no as la lista
(a1 , b3 , b2 , a2 , b1 )). De cu
antas maneras se puede hacer esto?
3.1.12 Se distribuyen n bolas identicas en m cajas numeradas. (a) De cu
antas formas distintas se
puede hacer esto de manera que cada caja reciba al menos una bola y a lo sumo dos? (b) Y si la
u
nica restricci
on es que haya a lo sumo dos en cada caja?
3.1.13 Consideremos el conjunto de smbolos X = {1, 2, 3, . . . , 50}. Diremos que un subconjunto A
de X est
a separado si la diferencia entre cualesquiera dos de sus elementos es al menos tres unida-
des. Por ejemplo, {10, 15, 17, 40} no est
a separado, mientras que {10, 15, 18, 40} s lo est
a. Cu
antos
subconjuntos separados distintos de cinco elementos se pueden formar con los elementos de X ?
3.1.14 Tenemos n cerillas, que usamos para representar las letras I y V : la I requiere una cerilla,
la V dos. Cu
antas palabras distintas de longitud k se pueden formar?
3.1.15 (a) Compruebese que el numero de listas
 de longitud
 n con ceros y unos, en las que hay
exactamente r unos, y sin unos consecutivos, es nr+1
r .
20
Concesi
on local al, sin duda, juego m
as popular entre los alumnos de los autores.

(versi
on preliminar 26 de septiembre de 2010)
138 Captulo 3. Las estructuras ba
sicas de la Combinatoria

antas formas distintas se puede extraer de {1, 2, . . . , n} un conjunto de r n


(b) De cu umeros, de forma
que no haya dos consecutivos?
3.1.16 Tenemos n posiciones, numeradas de 1 a n, marcadas sobre una circunferencia. Las vamos
a rellenar con r unos y n r ceros, pero no queremos que, en ese orden circular, aparezcan unos
consecutivos. De cu
antas maneras distintas lo podremos hacer?
3.1.17 En este ejercicio reunimos una serie de identidades que involucran coeficientes bin
omicos.
(a) Pruebese, algebraica y combinatoriamente, que
! " ! "
n n1
k =n .
k k1
(b) El apartado anterior es el caso l = 1 de la siguiente identidad (que tambien pedimos demostrar):
! "! " ! "! "
k n n nl
= .
l k l kl
(c) Pruebese mediante un argumento combinatorio que
! " ! "
2n n
=2 + n2 .
2 2
(d) Pruebese la siguiente generalizaci
on del apartado anterior:
! " ! " ! "
kn n k 2
=k + n .
2 2 2
(e) Verifquense las siguientes identidades:
n ! "2 ! " n ! "2 !
n1 "! " ! "
n 2n (2n)! 2n n n 2n
= ; 2 2 = ; = .
k=0 (n k)! k!
k n n k k+1 n+1
k=0 k=0

(f ) Pruebese (y comp
arese con la f
ormula de Vandermonde de la p
agina 110) la siguiente expresi
on:
! " nl
! "! "
n j nj 1
=
k kl l1
j=kl

EL caso l = 1 fue ya obtenido en la subsecci


on 3.1.5.
3.1.18 Pruebese, con la f
ormula de Stirling, la siguiente estimaci
on asint
otica para los n
umeros de
Catalan: ! "
1 2n 1 22n
Cn = cuando n .
n+1 n n3/2

3.1.19 (a) Pruebese, por inducci


on en n, el desarrollo del binomio:
n ! "
n k
(1 + x)n = x .
k
k=0

(b) Pruebese, por inducci


on en k, el desarrollo del multinomio:
! "
n n
(x1 + x2 + + xk ) = x1 a1 x2 a2 xk ak .
a1 , a2 , . . . , ak
a1 ,...,ak 0
! n "
(c) Deduzcase que = kn .
a 1 . . . ak
a1 ,...,ak 0

(versi
on preliminar 26 de septiembre de 2010)
3.1. Subconjuntos. Coeficientes bin
omicos 139

3.1.20 Sea S = {s1 , s1 , s2 , s2 , . . . , sm , sm } un multiconjunto que contiene dos copias de los distintos
smbolos s1 , s2 , . . . , sm . De cu
antas maneras distintas se puede formar una lista ordenada de los
elementos de S con la condici on de que los smbolos contiguos sean distintos?
3.1.21 Pruebese por inducci
on que
n
n

(a) |A1 An | |Aj | ; (b) |A1 An | |Aj | |Ai Aj | .
j=1 j=1 i<j

3.1.22 Consideremos una sucesi


on de numeros a1 a2 an > 0 y las siguientes sumas
alternadas en signo:
k
Sk = (1)j+1 aj para cada k = 1, . . . , n.
j=1

Compruebese, con un argumento gr afico, que S1 S3 S5 y que S2 S4 S6 Adem as,


cualquier suma Sk de ndice k impar es que todas las de ndices pares. Verifquese tambien que
 k 
 
|Sk Sl1 | =  (1)j+1 aj  al si k l.
j=l

3.1.23 Consideremos los conjuntos A = {1, 2}, B = {1, 3}, C = {1, 4}, D = {1, 5}, E = {1, 6}
y F = {1, 7}. Compruebese que, con la nomenclatura habitual del principio de inclusi
on/exclusi
on,
1 < 2 < 3 , mientras que 3 = 4 > 5 > 6 .
3.1.24 Desigualdad de Bonferroni. En este ejercicio vamos a proponer una demostraci on del
lema 3.2. Consideramos unos conjuntos A1 , . . . , An y llamamos A = nj=1 Aj . Llamemos tambien

t

St = (1)j+1 j , para cada t = 1, . . . , n.
j=1

Los n
umeros j son los habituales del principio de inclusi on, que nos dice que Sn = |A|. El
on/exlusi
lema que deseamos demostrar dice que |Sn St | t+1 para cada t = 1, . . . , n 1.
(a) Empezamos con una estimaci on para sumas incompletas y alternadas en signo de coeficientes
bin
omicos. Pruebese, por inducci
on (en k), que
t
! " ! "
k k1
(1)j+1 = (1)t1
j=0
j t

otese que si t k, entonces ambos miembros de la identidad anterior valen 0).


(n
(b) Necesitamos tambien comprobar que, si k t + 1
! " ! "
k1 k

t t+1

otese que si t k, entonces ambos coeficientes bin


(n omicos son nulos).

(versi
on preliminar 26 de septiembre de 2010)
140 Captulo 3. Las estructuras ba
sicas de la Combinatoria

(c) El argumento sigue las lneas de la demostraci


on del principio de inclusi on/exclusi
on de la subsec-
on 3.1.4. Observese que Sn St es la suma de las entradas de las filas de la matriz que all exhibimos
ci
desde las intersecciones t + 1 a t + 1 en adelante. Compruebese, utilizando el apartado (a), que
n   ! "
elementos de A en t k1
Sn St = # (1)
exactamente k de los Aj t
k=t+1

y ded
uzcase, empleando ahora el apartado (b), que
n  ! "
elementos de A en k
|Sn St | # .
exactamente k de los Aj t+1
k=t+1

(d) Compruebese finalmente, argumentando u nicamente sobre las filas de la matriz correspondientes a
las intersecciones t + 1 a t + 1, que el miembro de la derecha de la u on coincide con t+1 .
ltima expresi
3.1.25 Una generalizaci on del principio de inclusi on/exclusi on. Estamos de nuevo en la
situaci on del ejercicio anterior, con los conjuntos A1 , . . . , An y A = nj=1 . Tenemos la sucesi on
de n umeros 1 , 2 , . . . , n . Definimos 0 = A. Definimos la sucesi on de n umeros (Ej )nj=0 de la
siguiente manera: Ek cuenta el n umero de elementos de A que est
an en exactamente k de los conjuntos
A1 , . . . , An (observese que E0 = 0). Del u ltimo apartado del ejercicio anterior se deduce que
n ! "
k
j = Ek ,
j
k=1

on que nos da el valor de un j en funci


expresi on de los Ek . Compruebese que podemos invertir esta
expresi
on para expresar los Ek en funci
on de los j de la siguiente manera:
n
! "
jk j
Ek = (1) j .
k
j=k

Observese que el caso k = 0 es el principio de inclusi


on/exclusi
on habitual.
3.1.26 Una segunda generalizaci on del principio de inclusi on/exclusi
on. Supongamos que
tenemos una colecci
on de subconjuntos A1 , . . . , An de un conjunto , y una funci on p que a cada
elemento de le asocia un cierto n
umero positivo p(), su peso. Llamemos

Pi = p() , para cada i = 1, . . . , n,
Ai

al peso total (la suma) de los elementos de Ai . An


alogamente, llamemos

Pi,j = p() (i = j) , Pi,j,k = j = k) ,
p() (i = etc.
Ai Aj Ai Aj Ak

Consideremos, por u
ltimo,

P = p() y Q= p()
\i Ai

Pruebese que
n

Q=P Pi + Pi,j + + (1)n P1,...,n .
i=1 i<j

(versi
on preliminar 26 de septiembre de 2010)
3.1. Subconjuntos. Coeficientes bin
omicos 141

Nota: Si p() = 1 para todo , esto es el principio de inclusi


on/exclusi
on habitual.
3.1.27 Generalcese el resultado del ejercicio 3.1.22 sobre sumas alternadas en signo de terminos
decrecientes (o cons ultese directamente el teorema 11.1) para probar que, si Dn es el n
umero de
desbarajustes de {1, . . . , n},
   
1 D   (1)j (1)j 
n
 n  1
 =  .
e n!   j=0 j! j!  (n + 1)!
j=0

Ded
uzcase que, si n > 1, Dn es el entero m
as cercano a n!/e.
3.1.28 Llamamos Bj al conjunto de permutaciones de {1, . . . , n} en las que el smbolo j no est
a en
la posici
on j. Pruebese que
P rob(Bi Bj )
1
P rob(Bi ) P rob(Bj ) n

3.1.29 a) Sea Dn (k) el numero de permutaciones de {1, 2, . . . , n} que fijan exactamente k elementos.
umero de desbarajustes de {1, 2, . . . , n}. Pruebese que
As, Dn (0) coincide con Dn , el n
! " nk
n 1 (1)j
Dn (k) = Dnk = ,
k k! j=0 j!

donde conviene definir D0 = 1.


(b) El apartado anterior nos da la escala de cuan frecuentes son las permutaciones en funcion
del n
umero de smbolos que fijan. Recordemos que, si n es grande, el n umero de desbarajustes es
Dn (0) = Dn n!/e. Deduce, del resultado del apartado anterior, que

n! n! n! n!
Dn (1) , Dn (2) , Dn (3) , Dn (4) ...
e 2! e 3! e 4! e
Quiz
as el lector quiera comprobar la similitud con la situaci
on del ejemplo 2.3.2.
3.1.30 Pruebese la siguiente regla de recurrencia para un coeficiente multin
omico:
! " ! " ! " ! "
n n1 n1 n1
= + + , donde a + b + c = n.
a, b, c a 1, b, c a, b 1, c a, b, c 1

Explquese el significado combinatorio de esta identidad.

(versi
on preliminar 26 de septiembre de 2010)
142 Captulo 3. Las estructuras ba
sicas de la Combinatoria

3.2. Permutaciones
Las permutaciones de un conjunto X con n elementos, que ya presentamos en la subsec-
cion 2.2.1, son objetos combinatorios con una estructura lo sucientemente rica como para
merecer la atencion que les vamos a dispensar en las siguientes paginas. Como siempre, para
simplicar la notacion, el conjunto de referencia sera X = {1, 2, . . . , n}.
Una permutaci on del conjunto X = {1, . . . , n} es una lista de longitud n sin repetici
on
formada con los smbolos de X. O tambien, como vimos en ejemplo 2.2.5, una aplicaci on
biyectiva de X en X . Esto es, una (re)ordenaci on de los elementos de X. Como bien sabe-
mos, hay n! permutaciones distintas de X. Algunas de estas permutaciones, como veremos
mas adelante, tienen propiedades especiales y para ellas reservaremos nombres especcos
(desbarajustes, permutaciones cclicas, trasposiciones, involuciones, etc.).
Observe el lector las dos siguientes formas de representar una permutacion:
! "
1 2 3 4 ... n
(2, 7, 5, 1, . . . , 6) y .
2 7 5 1 ... 6
A la izquierda representamos la permutacion, simplemente, como una lista. La representacion
de la derecha es mas adecuada para la interpretaci on como aplicacion biyectiva: observese
como nos permite reconocer que la imagen del 1 es el 2, la del 2, el 7, etc. De ahora en
adelante, convendremos en que ambos esquemas representan a la misma permutacion; es
decir, identificaremos, por ejemplo, la lista (2, 7, 5, 1, . . . , 6) con la aplicaci
on biyectiva que
lleva el 1 en el 2, el 2 en el 7, el 3 en el 5, etc. Como en todo lo que sigue nos centraremos en
la interpretacion como aplicacion biyectiva, utilizaremos generalmente la segunda notaci on.

A. Composici
on de permutaciones
Consideremos las dos siguientes permutaciones del conjunto X = {1, 2, 3, 4, 5}:
! " ! "
1 2 3 4 5 1 2 3 4 5
f = (1, 3, 2, 5, 4) = g = (5, 2, 3, 1, 4) = .
1 3 2 5 4 5 2 3 1 4
La permutaci on g es una aplicacion biyectiva de X en X que lleva, por ejemplo, el elemento 1
en el 5; esto es, g(1) = 5. Tambien f es biyectiva de X en X, y por ejemplo lleva el 5 en
el 4, esto es, f (5) = 4. Lo que nos induce a pensar que sera posible aplicar primero g sobre
el elemento 1, y luego f , pero ahora sobre el 5, para acabar nalmente en el 4.
Vamos a formalizar esta nocion de aplicacion sucesiva de dos permutaciones. Partimos
de dos permutaciones del conjunto X = {1, . . . , n}, digamos f y g. La composici on de f
con g, que escribiremos como f g (observese el orden en que lo escribimos) se dene como
(f g)(x) = f (g(x)), para cada x X = {1, . . . , n};
es decir, la accion sucesiva de g primero y f despues. Observe el lector que es una buena
denicion: si x X, entonces g(x) es un elemento de X y por tanto f (g(x)) esta bien denido.
En otras palabras, la composici on de f con g es una aplicacion del conjunto X en s mismo.
Pero adem as, y esto es lo importante, la aplicacion (f g) que hemos denido antes resulta
ser una aplicaci on biyectiva de X en X. Esto es, una nueva permutaci on.

(versi
on preliminar 26 de septiembre de 2010)
3.2. Permutaciones 143

Para comprobarlo, basta demostrar que (f g) es una aplicaci


on inyectiva (pues los
conjuntos de llegada y partida son el mismo, X). Supongamos que tenemos dos elementos
de X, digamos a y b, tales que

(f g)(a) = (f g)(b) ; es decir, tales f (g(a)) = f (g(b)) .

Como f es una aplicacion biyectiva, se cumplir a que g(a) = g(b). Y como a su vez g es
biyectiva, deducimos nalmente que a y b deben ser iguales.
on sucesiva de g (primero) y f (despues), la composicion f g (perdone el
As que la acci
lector la insistencia: se dio cuenta en que orden las escribimos?; ah!, por si acaso), es una
aplicacion inyectiva de X en X y, por tanto, una aplicaci on biyectiva de X en s mismo.
Este tipo de estructura (un conjunto y una operaci on entre pares de elementos del con-
junto cuyo resultado es siempre un elemento del mismo conjunto) tiene un nombre especial
en Matematicas:
el conjunto de las permutaciones, dotado de la operaci
on de composici
on, tiene
una estructura de grupo.
Al conjunto de las permutaciones de {1, . . . , n}, entendido como grupo con la operaci
on de
composicion nos referiremos como el grupo sim etrico Sn . Decimos que Sn es un grupo
porque se verican las siguientes propiedades21 :
Si f, g Sn , entonces f g Sn (el conjunto Sn es cerrado para la operaci on de
composicion).
Se verica la propiedad asociativa: si f, g, h Sn , entonces (f g) h = f (g h).
La identidad id, es decir, la permutacion que deja jos todos los elementos, es el ele-
mento neutro de Sn :

id f = f id = f para cualquier f Sn .

on f Sn existe su elemento inverso, que denominaremos f 1 ,


Para cada permutaci
que verica que
f f 1 = f 1 f = id .
nico 22 .
Ademas, este elemento inverso de f es u
La primera propiedad ya la hemos comprobado, la segunda es sencilla de vericar y la tercera
es obvia. S olo la cuarta requiere un momento de reexi on y se deduce de la biyectividad de f .
El lector, que seguramente en mas de una ocasion habra escuchado todas estas propiedades
en forma de cantinela escolar, estara echando en falta una de ellas: propiedad conmutativa!,
es que se les ha olvidado? No, no es un olvido, porque en general la composicion de permu-
taciones no es conmutativa. Es decir, es relevante el orden en que escribamos la composicion
(ven por que vala la pena la insistencia?). Es decir, excepto en algunos casos especiales, no
sera la misma permutacion (f g) que (g f ). Veamos un ejemplo:
21
Estudiaremos la noci on general de grupo en el captulo 16.
22
Se atreve el lector a probar esto, usando simplemente las propiedades aqu citadas?

(versi
on preliminar 26 de septiembre de 2010)
144 Captulo 3. Las estructuras ba
sicas de la Combinatoria

Ejemplo 3.2.1 Sea X = {1, 2, 3, 4, 5} y consideremos las permutaciones


! " ! "
1 2 3 4 5 1 2 3 4 5
f= y g= .
1 3 5 4 2 2 1 3 5 4

Calculemos las permutaciones f 2 , g2 , (f g), (g f ) y f 1 .


Por f 2 entenderemos la composicion de f consigo misma, f f . Calculamos sucesivamente
f 2 (1) = f (f (1)) = f (1) = 1, f 2 (2) = f (f (2)) = f (3) = 5, etc., y lo mismo para g2 , para
concluir que
! " ! "
2 1 2 3 4 5 2 1 2 3 4 5
f = y g = .
1 5 2 4 3 1 2 3 4 5

on identidad. Si calculamos f g y g f , obtenemos


As que g2 coincide con la permutaci
! " ! "
1 2 3 4 5 1 2 3 4 5
f g = y gf = ,
3 1 5 2 4 2 3 4 5 1
lo que conrma que la composici on de permutaciones no tiene por que ser conmutativa. El
on f g exige evaluar las imagenes sucesivas (primero g y luego f ) de
calculo de la composici
cada elemento. Es comodo representar dicho c alculo de la siguiente manera: escribimos un
primer piso con los elementos de X en el orden natural, un segundo con el resultado de la
accion de g, y un tercero con los resultados de la accion de f (sobre los de la segunda la);
para, nalmente, olvidarnos de la la intermedia:

1 2 3 4 5 ! "
2 1 3 5 4 f g = 1 2 3 4 5 .
3 1 5 2 4
3 1 5 2 4

Por ultimo, hallar la inversa de f es lo mismo que calcular la permutaci on f 1 para la


que f f 1 1
= id. Por ejemplo, f (f (1)) debe coincidir con id(1) = 1. Si observamos que
f (1) = 1, concluimos que f 1 (1) = 1. De la misma forma, f (f 1 (2)) debe ser id(2) = 2.
Como f (5) = 2, tendremos que f 1 (2) = 5. Y as, sucesivamente, hasta llegar a que
! "
1 1 2 3 4 5
f = .
1 5 2 4 3
De nuevo, un peque no truco de representacion nos ayuda a organizar ecientemente este
calculo. Basta darle la vuelta a f (intercambiar sus dos las) para luego reordenar las
columnas con el criterio de que la primera la quede ordenada:
! " ! " ! "
1 2 3 4 5 1 3 5 4 2 reordenar columnas 1 1 2 3 4 5
f= f = .
1 3 5 4 2 1 2 3 4 5 1 5 2 4 3

Mas adelante (vease la subseccion 3.2.1) descubriremos otra manera efectiva de calcular
la inversa de una permutaci on. Recordamos de nuevo que, pese a que la composicion de
permutaciones no es en general conmutativa, en el caso del inverso no hay que tener cuidado
de denirlo por la izquierda o por la derecha: es u
nico.

(versi
on preliminar 26 de septiembre de 2010)
3.2. Permutaciones 145

B. Orden de una permutaci


on
Supongamos que f y g son dos permutaciones de X = {1, . . . , n}, esto es, dos elementos
de Sn . Su composicion f g sera tambien una permutaci
on de X, y por tanto tendr a un
inverso, que viene dado explcitamente por
(f g)1 = g1 f 1 .
Notese que se invierte el orden de accion de los inversos. La comprobaci
on requiere u
nicamente
utilizar la propiedad asociativa, que permite olvidar los parentesis:
 
(f g) g1 f 1 = f g g1 f 1 = f f 1 = id .
  
= id

Hemos acordado que, para k 1, f k signica la accion sucesiva (k veces) de la permutacion f .


al es, por ejemplo, el inverso de f 2 ? Con la observaci
Cu on anterior, resulta que
 2 1  2
f = (f f )1 = f 1 f 1 = f 1 .
A la composicion de la permutacion f 1 consigo misma nos referiremos como f 2 . Y si
componemos f 1 consigo misma k veces, tendremos una permutaci on que llamaremos f k .
on, diremos que f 0 = id. Con este convenio, tenemos un algebra de
Para completar la notaci
composiciones que resulta muy comoda: dados unos enteros s y t,
f s f t = f s+t .
Insistimos en que no es mas que notaci on, que simplica mucho las manipulaciones. Com-
pruebe el lector la validez de la expresion anterior escribiendo todas las f y f 1 que nos
indiquen los valores de s y t (seg
un sean positivos o negativos) y cancelando por parejas.
Ya estamos en condiciones de presentar el concepto de orden de una permutaci on. Consi-
deremos una permutacion f Sn y listemos las sucesivas composiciones de f consigo misma:
f, f 2 , f 3 , . . . , f n! , f n!+1 , . . .
Lo que sigue es una sencilla aplicaci
on del principio del palomar. Recordemos que en Sn
hay n! permutaciones distintas. De manera que, entre los primeros n! + 1 terminos de la lista,
los que hemos exhibido explcitamente mas arriba, necesariamente habr a (al menos) dos
an dos enteros s, t 1 (supongamos
permutaciones repetidas. Esto es, con seguridad existir
que s > t) tales que
fs = ft .
Componiendo con f t a los dos lados, obtenemos que f st = f 0 = id, donde st > 0. Lo que
quiere decir esto es que, dada una permutacion, existe (al menos) un entero no negativo k
tal que f k = id. Pues bien, el orden de la permutaci
on f es el menor entero positivo para el
que se cumple esta propiedad23 (vease tambien el ejercicio 3.2.1). Veremos en un momento
una manera ecaz de calcular el orden de una permutaci on.
23
Siguiendo con el argumento del principio del palomar, podemos comprobar que el orden de f es siempre
menor o igual que n!. Sabemos que existen enteros s y t, con 1 t < s n! + 1, tales que f s = f t . Pero claro,
s t n!, as que el orden de f ha de ser tambien n!. De hecho, el orden de f es siempre un divisor de n!
(vease el ejercicio 3.2.2).

(versi
on preliminar 26 de septiembre de 2010)
146 Captulo 3. Las estructuras ba
sicas de la Combinatoria

3.2.1. Permutaciones y ciclos


Existe un tipo de permutaciones particularmente importantes, porque podemos utilizarlas
como piezas basicas para construir cualquier otra: son los ciclos.
Un ciclo en Sn es una permutaci on que ja un cierto n umero de elementos de {1, . . . , n}
(o quiz
as ninguno, caso al que nos referiremos como permutaci on cclica), mientras que
mueve los restantes cclicamente. Se entiende facilmente en un ejemplo: la permutacion de
S5 dada por ! "
1 2 3 4 5
f=
1 4 2 3 5
ja los elementos 1 y 5, mientras que mueve los restantes de la siguiente manera:
f f f
2 4 3 2 ,
cerrando un ciclo. Para describir esta permutaci
on, utilizaremos el siguiente smbolo:
! "
1 2 3 4 5
f= = 5 (2 4 3) ,
1 4 2 3 5
que pretende resumir toda la informaci on relevante sobre la permutaci on: es de S5 , mueve
cclicamente los elementos 2, 4 y 3 (en el orden indicado) y ja los restantes (1 y 5).
La identidad, que ja todos los elementos de {1, . . . , 5}, podra venir descrita con el
smbolo 5 (1), o quiz
as con 5 (2), 5 (3), etc. Observese que podemos tambien escribir el
ciclo f como la composicion de las siguientes tres permutaciones:
f = 5 (1) 5 (2 4 3) 5 (5)
(n
otese que hemos compuesto dos veces con la identidad, lo que no cambia la permutacion).
Si el contexto estuviera claro (es decir, si sabemos en que Sn estamos trabajando), nos
podramos olvidar del subndice e incluso del smbolo . En este caso, escribiramos
f = (1) (2 4 3) (5) ,
la notacion que aparece habitualmente en otros textos. Observemos que el orden en que se
componen estos ciclos es irrelevante: podramos haber escrito, por ejemplo, f = (5)(1)(2 4 3).
M as a
un, mientras se respete el orden circular del ciclo, lo que pongamos como primer
elemento es tambien irrelevante: podramos haber escrito, por ejemplo, (4 3 2), o quizas (3 2 4).
Pero salvo por estas cuestiones de escritura, la descripcion es u
nica.
La longitud de un ciclo es el n umero de elementos
f f f
que mueve realmente su accion (3, en nuestro ejemplo).
2 4 3 2
Como permutaci on que es, un ciclo tendra un cierto or-
3 2 4 3
den. Cu al? En el ejemplo anterior, los elementos 1 y 5
4 3 2 4
quedan jos, y por tanto no es necesario considerarlos a
los efectos del calculo del orden. Observemos que los otros tres se mueven como se indica a
la derecha. Aj a!, la tercera aplicaci
on de f nos devuelve la conguraci on original. As que
f 3 = id y el orden del ciclo es 3; justo el numero de elementos que se mueven cclicamente
(su longitud).

(versi
on preliminar 26 de septiembre de 2010)
3.2. Permutaciones 147

Comprobemos que esto es un resultado general, analizando con mas detalle cual es la
estructura de un ciclo. Sea f un ciclo de longitud k en Sn . Fijara n k elementos y mo-
a cclicamente los restantes. Digamos que estos elementos son (a1 , . . . , ak ):
ver

f = n (a1 a2 . . . ak1 ak ) .

Esto quiere decir que, bajo la acci


on de f ,
f f f f f
a1 a2 ak1 ak a1 .

En otras palabras, a2 = f (a1 ), a3 = f (a2 ) = f 2 (a1 ) y as hasta ak = f k1 (a1 ), mientras


que f k (a1 ) = a1 . De manera que el ciclo se podra reescribir de la siguiente manera, algo
farragosa, pero util para nuestros argumentos:

f = n (a1 f (a1 ) . . . f k2 (a1 ) f k1 (a1 )) .

Nos interesa entender la permutacion f k . Pero f k ja el primer elemento, pues f k (a1 ) = a1 .


Y tambien el segundo:

f k (a2 ) = f k (f (a1 )) = f (f k (a1 )) = f (a1 ) = a2 .

Compruebe el lector que ocurre lo mismo para los restantes elementos del ciclo (quizas ar-
gumentando que, en realidad, el ciclo es el mismo sea cual sea el primer elemento de el que
escribamos, mientras que preservemos el orden). Como f ja los elementos que no estan en el
a f k . Deducimos as que f k es la permutaci
ciclo, tambien lo har on identidad. Como adem
as k
es el primer entero no negativo para el que sucede esto, el orden del ciclo f es justamente k,
su longitud como ciclo.

A. Descomposici
on en ciclos
No hemos introducido los ciclos por capricho. Resulta que cualquier permutaci on se puede
escribir como composicion de ellos (y de manera u nica!). Esta forma de escribirlos, esta
composicion (o m as bien, descomposicion), es especialmente informativa y u til, porque nos
dice cuales son los subconjuntos de {1, . . . , n} en los que la permutacion actua de forma
independiente.
Consideremos la siguiente permutacion f de un conjunto con 7 elementos:
! "
1 2 3 4 5 6 7
f=
3 5 1 2 6 4 7

f f
Observamos que los elementos {1, 3} se mueven cclicamente con f : 1 3 1. De la
f f f f f
misma forma, 2 5 6 4 2, mientras que 7 7. Pues bien, la permutaci
on f
se puede escribir como la composici
on de los siguientes ciclos:

f = 7 (1 3) 7 (2 5 6 4) 7 (7) .

(versi
on preliminar 26 de septiembre de 2010)
148 Captulo 3. Las estructuras ba
sicas de la Combinatoria

La comprobacion es sencilla, solo hay que obser-


1 2 3 4 5 6 7
var que los subconjuntos de elementos que mueve
cada ciclo son disjuntos dos a dos. La u ltima permu- 7 (2 5 6 4)
tacion es, simplemente, la identidad. La accion suce- 1 5 3 2 6 4 7
siva de las dos primeras se recoge a la derecha (en 7 (1 3)
negrita, los elementos que se mueven realmente en 3 5 1 2 6 4 7
cada permutaci on). Y el resultado es la permutaci
on
f de partida. Observemos que, de nuevo, el orden de presentacion de los ciclos no es relevante
(estas permutaciones s conmutan, pues mueven conjuntos de elementos disjuntos dos a dos);
y en que elemento empieza el ciclo, tampoco. Por ejemplo, f se podra escribir como

f = 5 (7) 5 (1 3) 5 (2 5 6 4) o como f = 5 (7) 5 (3 1) 5 (4 2 5 6) .

Hagamos el argumento en general, dise nando de paso un algoritmo para obtener la des-
composicion en ciclos de una permutaci on f Sn . Empezamos con un cierto elemento de
{1, . . . , n}, por ejemplo el 1, y escribimos la lista

1, f (1), f 2 (1), f 3 (1), f 4 (1), . . .

Esta lista es, en principio, tan larga como queramos, pero como solo hay n elementos en
{1, . . . , n}, el principio del palomar asegura que contendr
a dos n
umeros repetidos. Esto es,
existiran dos enteros positivos s > t para los que

f s (1) = f t(1) .

Lo que supone que f st(1) coincide con id(1) = 1. As que en la lista anterior, no solo hay
repeticiones, sino que ademas aparece alg un 1 (adem as del primero). El primer paso del
algoritmo consistira, entonces, en ir construyendo la lista anterior hasta encontrar el primer
(nuevo) 1; al terminar, habremos detectado el ciclo en el que est a encuadrado el elemento 1:

n (1, f 1 (1), f 2 (1) . . . ) .


Si este ciclo tuviera longitud n, ya habramos terminado: f sera una permutaci on cclica. En
caso contrario, si la longitud fuera < n (podra ser incluso 1, si es que f (1) = 1), quedara
trabajo por hacer. Por ser ordenados, buscaramos el primer elemento de {1, . . . , n} que no
hubiera sido ya incluido en el ciclo anterior y repetiramos con el el procedimiento. Notese que
ningun elemento de este nuevo ciclo puede pertenecer al ciclo anterior. El proceso continuara
hasta alcanzar a todos los elementos de {1, . . . , n}.
El resultado de este algoritmo es u nico, salvo por la ya mencionada cuesti
on de que el
orden de presentaci
on de los ciclos resultantes es irrelevante y de que podemos elegir, como
primer elemento de cada ciclo, el elemento del mismo que deseemos. Los ciclos que obtenemos,
recordemos, son disjuntos dos a dos.
Normalmente, los ciclos de orden 1 no se escriben, aunque esto puede dar lugar a ciertas
confusiones, a menos que el contexto este muy claro. Por ejemplo, f = (1 2) podra ser

(versi
on preliminar 26 de septiembre de 2010)
3.2. Permutaciones 149

interpretado como una lista, o quizas como un ciclo. Visto como una lista, sera la permutaci
on
de la izquierda; visto como ciclo, la de la derecha:
! " ! "
1 2 1 2
; .
1 2 2 1

on de S2 , porque podra tambien representar


Esto, cuando se trate realmente de una permutaci
una de, digamos, S4 : ! "
1 2 3 4
.
2 1 3 4
Por eso conviene insistir en escribir los ciclos de longitud 1, o bien utilizar la notaci
on sugerida,
4 (1 2), salvo que el contexto sea muy claro.
El lenguaje de los ciclos simplica bastantes c
alculos con permutaciones. Por ejemplo,
para calcular el inverso de una permutaci on dada, basta leer los ciclos de la permutacion
original al reves:

f = 9 (1 2 4) 9 (3 8 7) 9 (5) 9 (6 9)
f 1
= 9 (4 2 1) 9 (7 8 3) 9 (5) 9 (9 6)
Al n y al cabo, si el elemento 3 va al 8 a traves de f , el 8 ha de ir al 3 a traves de f 1 .
No es ya tan u
til, en general, para describir la composici
on de dos permutaciones, porque se
pueden mezclar los ciclos de una con los ciclos de la otra.

B. Orden de una permutaci


on y ciclos
Otra tarea que se simplica notablemente con el uso de los ciclos es la del c alculo del
orden de una permutacion. Ya vimos que si la permutaci
on es un ciclo de longitud k, entonces
el orden de la permutaci
on es tambien k. Y en el caso general? Veamos un ejemplo: sea la
permutacion de S5 dada por la composicion de ciclos

f = 5 (2 1) 5 (3 5 4) .

Si partimos del orden natural, (1, . . . , 5), cuando apliquemos f 2 , los elementos {1, 2} habran
vuelto a sus posiciones originales; no as los restantes. Con f 3 son {3, 4, 5} los que vuelven al
orden original; pero los dos primeros se han descolocado. Un momento de reexi on nos lleva a
convencernos de que sera necesario aplicar 6 veces f para recuperar la conguraci on original.
Si f tuviera dos ciclos de longitudes 2 y 4, un argumento an alogo nos dira que f 4 = id y
que, por tanto, su orden sera 4.
En general, si una permutaci on f se escribe como composicion de ciclos, cuyas longitudes
son l1 , . . . , lm (podra haber varios ciclos de cada una de las longitudes), su orden sera

orden(f ) = mn{k 1 : f k = id} = mcm(l1 , . . . , lm ) ,

donde mcm(l1 , . . . , lm ) representa al mnimo com


un m
ultiplo de los n
umeros l1 , . . . , lm .

(versi
on preliminar 26 de septiembre de 2010)
150 Captulo 3. Las estructuras ba
sicas de la Combinatoria

C. El n
umero de permutaciones con una determinada estructura de ciclos
Una cuestion combinatoria muy interesante es la de contar el n umero de permutaciones
cuya descomposici on en ciclos re
une una serie de propiedades dada. La estructura a la que
se reere el ttulo de este epgrafe puede ser muy diversa: que el n umero total de ciclos
este jo, que no haya determinado tipo de ciclos, que el n umero de ciclos de cada tipo posible
este determinado . . .
En la subsecci on 3.3.2 veremos, por ejemplo, como contar cuantas permutaciones de
{1, . . . , n} tienen un cierto n
umero, digamos k, de ciclos. Ya calculamos, en el ejemplo 3.1.5,
cuantos desbarajustes (permutaciones que no jan elemento alguno, es decir, sin ciclos de
orden 1) hay.
Pero ya podemos calcular, por ejemplo, cu antas permutaciones cclicas hay. Recordemos
que son las permutaciones que mueven cclicamente todos los elementos (observese que, como
no jan elemento alguno, son un caso particular de desbarajustes). El argumento es sencillo
y directo: para determinar el ciclo que incluye a todos los elementos basta ordenarlos (n!
maneras posibles). Pero hay que tener en cuenta que, dada una de estas ordenaciones, la
eleccion de que elemento va primero no es relevante. Como hay n posibles maneras de elegir
ese primer elemento, la respuesta nal es que
n!
#{permutaciones cclicas en Sn } = = (n 1)! .
n
Visto desde otro punto de vista, como tenemos la libertad de elegir cu al es el primer elemento
olo hay que ordenar los n 1 elementos restantes.
de la lista, s
Un argumento an alogo nos permite contar cu antas permutaciones son ciclos de orden k:
elegimos primero los k elementos
n del ciclo, para luego determinar el orden dentro del ciclo.
Esto se puede hacer de k (k 1)! maneras. Las trasposiciones, otro tipo de permutaciones
que tendr an un papel destacado en lo que sigue, son las permutaciones que intercambian dos
elementos y jan los restantes. Es decir, n las que son, simplemente, un ciclo de orden 2. La
observacion anterior nos dice que hay 2 trasposiciones distintas.
Un planteamiento m as general consistira en prescribir cuantos ciclos de cada posible
longitud deben tener las permutaciones que nos interesan. Esto es, dar una lista de enteros
no negativos (b1 , . . . , bn ) donde, para cada j = 1, . . . , n, el n
umero bj es el numero de ciclos
de longitud j. Observese que se tendra que

n
n
bj = #total de ciclos , y ademas que j bj = n ,
j=1 j=1

porque cada uno de los elementos de {1, . . . , n} esta en alg un ciclo. Por ejemplo, las permu-
taciones cclicas son las que tienen bn = 1 y bj = 0 para el resto.
La pregunta que nos interesa responder  es la siguiente: dada una lista de numeros no
negativos (b1 , b2 , . . . , bn ) tales que nj=1 j bj = n, cuantas permutaciones de Sn tienen b1
ciclos de longitud 1, b2 ciclos de longitud 2, etc.?
Argumentemos como sigue: empezamos escogiendo una ordenacion cualquiera de los ele-
mentos {1, . . . , n} (hay n! posibles). Ahora marcamos los ciclos en un orden determinado: los

(versi
on preliminar 26 de septiembre de 2010)
3.2. Permutaciones 151

b1 primeros elementos de la lista estan en los ciclos de orden 1, los 2b2 siguientes, en los de
orden 2, y as sucesivamente:
() () ( ) ( ) ( ) ( )
       
b1 b2 b3

Hemos construido as n! descomposiciones en ciclos con la estructura pedida. Pero entre ellas
habra, sin duda, descomposiciones repetidas. Por ejemplo, dentro de cada uno de los ciclos
que hemos marcado podemos rotar circularmente los elementos (elegir el que va primero)
sin cambiar de que ciclo se trata. Observese que cada porcion de tama
no j tiene j posibles
rotaciones. As que el n
umero total de rotaciones de los trozos que dan lugar a la misma
descomposicion en ciclos es
b1 veces b2 veces bn veces
1 1 2 2 n n = 1b1 2b2 nbn .
Pero adem as, y esta es ya la u
ltima cuestion que hay que considerar, podemos permutar, por
ejemplo, los ciclos de longitud 1 entre s (pero no con los dem as!); y, en general, los trozos
de longitud j entre ellos mismos (lo que se puede hacer de bj ! maneras). Reuniendo todas
estas observaciones, llegamos a la respuesta buscada:
 
permutaciones de Sn con b1 , . . . , bn ciclos n!
# = b1 b2
de longitudes 1, . . . , n, respectivamente 1 2 n n b1 !b2 ! bn !
b

El lector podra comprobar que con esta f ormula recuperamos los resultados para los casos
vistos anteriormente: permutaciones cclicas (bn = 1 y b1 = b2 = = bn1 = 0), ciclos de
orden k (bk = 1, b1 = n k y el resto de los bj = 0) o trasposiciones (b2 = 1, b1 = n 2 y
el resto de los bj = 0). N otese tambien que, si una permutacion es un desbarajuste (no ja
elemento alguno), entonces solo sabemos que b1 = 0, pero no tenemos informaci on sobre el
valor de los restantes bj . Por eso no se puede aplicar la f
ormula anterior y tuvimos que hacer
un analisis especco en el ejemplo 3.1.5.

3.2.2. Permutaciones pares e impares


Como ya se ha mencionado, una trasposicion de Sn es una permutaci on que intercambia
dos elementos de {1, . . . , n} y ja los restantes. Es decir, tiene un ciclo de longitud 2 y
otros n 2 ciclos de longitud 1. Por ejemplo,
n (a b) n (c) n (d) ,
si es que a y b son los elementos intercambiados. Este tipo de permutaciones, de estructura
por otra parte tan simple, tambien sirven para descomponer una permutacion cualquiera.
on f = 5 (1 2 5).
Ejemplo 3.2.2 Consideremos la permutaci
Esta permutaci on de S5 mueve cclicamente los elementos 1 2 5 1 (y ja los
restantes). Esto es, es de la forma (al menos para los elementos que no quedan jos)
! "
1 2 5
f=
2 5 1

(versi
on preliminar 26 de septiembre de 2010)
152 Captulo 3. Las estructuras ba
sicas de la Combinatoria

El mismo resultado se puede obtener aplicando sucesivamente las trasposiciones que inter-
cambian el 1 y el 2 y el 1 y el 5:
1 2 5
5 (1 2)
2 1 5
5 (1 5)
2 5 1
As que podramos escribir que el ciclo es la composicion sucesiva de estas dos trasposiciones:
5 (1 2 5) = 5 (1 5) 5 (1 2) .
Cuidado!, ahora los ciclos de cada trasposici on no son disjuntos, as que es importante
se
nalar el orden en que se aplican (pruebese a componer las trasposiciones al reves). El lector
podra comprobar tambien que esa misma permutacion f se puede escribir como
5 (1 2 5) = 5 (1 2) 5 (1 5) 5 (2 5) 5 (1 2) .
Es decir, la escritura en terminos de trasposiciones no es u
nica; y adem
as importa el orden
en que se aplican (porque no tienen por que ser disjuntas).
Es posible expresar un ciclo cualquiera como composici on de transposiciones? Si el ciclo
es de orden 1, entonces se puede escribir como composicion (dos veces) de la misma trasposi-
cion. Los ciclos de orden 2 ya son, ellos mismos, trasposiciones. Analicemos entonces el caso
de un ciclo de longitud 3, digamos f = n (a1 a2 a3 ). Notese que la accion
f (a1 ) = a2 , f (a2 ) = a3 y f (a3 ) = a1 .
se consigue tambien trasponiendo, sucesivamente, el primer elemento con los restantes (en el
orden en que aparecen en el ciclo), como se sugera en el ejemplo 3.2.2; esto es,
f = n (a1 a3 ) n (a1 a2 ) .
     
f3 f2

Notese el orden: primero trasponemos a1 con a2 (lo que llamamos f2 ) y luego a1 con a3 ,
a comprobar que, efectivamente, f = f3 f2 y obtener la descomposicion
con f3 . El lector podr
analoga en el caso de un ciclo ciclo de longitud 4,
f = n (a1 a2 a3 a4 ) = n (a1 a4 ) n (a1 a3 ) n (a1 a2 ) ;
y, en general, para un ciclo de cualquier longitud (vease el ejercicio 3.2.5):
f = n (a1 a2 . . . ak1 ak ) = n (a1 ak ) n (a1 ak1 ) n (a1 a3 ) n (a1 a2 ) ,
Y si partieramos de una permutaci on general? Podramos, por ejemplo, descomponerla
primero en ciclos, para luego proceder a descomponer cada uno de ellos en transposiciones
siguiendo la regla anterior. As que tambien es posible descomponer una permutaci on general
en trasposiciones. Aunque, como ya hemos visto, esta descomposicion no es u nica, y adem as
las distintas trasposiciones utilizadas en la descomposicion no ser
an, en general, disjuntas.

(versi
on preliminar 26 de septiembre de 2010)
3.2. Permutaciones 153

Entonces, para que consideramos este tipo de descomposiciones? Las piezas utilizadas
en la descomposici on son muy simples, siempre ciclos de orden 2, pero esto no parece sucien-
te. Y no lo sera si no fuera porque, ademas, y como comprobaremos en un momento, dada
una cierta permutaci on, sea cual sea la descomposicion en transposiciones que tomemos, el
n
umero de trasposiciones utilizadas tiene una paridad determinada. Esto es, o bien se emplea
siempre un n umero par de transposiciones, o bien un n umero impar.

Sea g Sn una permutaci on con j ciclos de cada longitud j. Tendra, en total, nj=1 j
ciclos. Sea una trasposici on que, digamos, intercambia los elementos a y b. Ahora nos
preguntamos por el n umero de ciclos que tiene la permutacion g. Distinguimos dos casos,
dependiendo de si a y b pertenecen al mismo ciclo de g o no (n otese que no actua sobre los
elementos que pertenezcan a ciclos en los que no esten ni a ni b):
Caso 1: si a y b pertenecen al mismo ciclo de g, entonces
g = n (a x2 . . . xr2 b xr . . . xl ) (resto de ciclos de g) .
(podemos suponer que a es el primer elemento de ese ciclo). En este caso, la accion sucesiva
de g y sobre los elementos del ciclo viene dada por
a x2 . . . xr2 b xr . . . xl
g
x2 x3 . . . b xr xr+1 . . . a

x2 x3 . . . a xr xr+1 . . . b
La conclusi
on es que se forman dos ciclos a partir del original:
g = n (a x2 . . . xr2 ) n (b xr . . . xl ) (resto de ciclos de g) .
Caso 2: Si a y b estan en ciclos distintos,
g = n (a a2 . . . al ) n (b b2 . . . bs ) (resto de ciclos de g) ,
entonces
a a2 . . . al b b2 . . . bs
g
a2 a3 . . . a b2 b3 . . . b

a2 a3 . . . b b2 b3 . . . a
Y ahora tenemos un u
nico ciclo a partir de los dos de partida:
g = n (a a2 . . . al b b2 . . . bs ) (resto de ciclos de g) .
En resumen, si es una trasposicion,
# ciclos de ( g) = # ciclos de g 1 .
Esta observaci
on es el ingrediente fundamental de la demostraci
on del siguiente resultado:
Teorema 3.3 Dada una permutaci on g Sn , si g se puede escribir como composici
on de s
y t trasposiciones, entonces, o bien s y t son pares, o bien s y t son impares.

(versi
on preliminar 26 de septiembre de 2010)
154 Captulo 3. Las estructuras ba
sicas de la Combinatoria

n. Escribimos primero g como composicion de s trasposiciones:


Demostracio

g = s s1 2 1 .

a n 1 ciclos (1 de orden 2 y el resto de orden 1). Como


Como 1 es una trasposicion, tendr
hemos visto, cada sucesiva trasposicion hace que el numero de ciclos aumente o disminuya
en una unidad. Digamos que, tras las s 1 trasposiciones, hemos tenido aumentos y
disminuciones. Observese que

s1 = + y # ciclos de g = (n 1) + .

Sumando estas dos expresiones y despejando s del resultado, llegamos a que

s = n + 2 # ciclos de g .

2t
Si ahora escribimos g como composicion de t trasposiciones, g = 2t1
22
21 y
procedemos de manera analoga, llegamos a que

# ciclos de g ,
t = n + 22

donde 2 es el n 2j . Restando ambas


umero de aumentos con las sucesivas trasposiciones
cantidades, obtenemos que s t = 2 (
2), que es un n
umero par. Por tanto, los n
umeros
s y t son, o bien ambos pares, o bien ambos impares. 
A la vista de este resultado, tiene sentido denir una permutaci
on par como aquella que
se escribe como composicion de un n umero par de trasposiciones; e impar si ese numero
de trasposiciones es impar. Es habitual denir el signo (o signatura) de una permutaci on
como 1 si la permutacion es par, y como 1 si es impar. Esto es,

signo(g) = (1)t ,

donde t es el n
umero de trasposiciones en una descomposicion (en trasposiciones) cualquiera
de g. El lector interesado podr a consultar algunas otras cuestiones relevantes sobre este
concepto de signatura de una permutaci on en los ejercicios 3.2.63.2.9. Terminamos con una
simpatica e ingeniosa aplicaci
on de esta noci
on.
Ejemplo 3.2.3 El puzzle 14-15 de Sam Loyd.
A nales del siglo XIX, Samuel Loyd24 dise no el siguiente pasatiempo, por 1 2 3 4
cuya resolucion ofreca una importante recompensa. Cubriendo 15 de las 5 6 7 8
16 casillas de un tablero 4 4 tenemos chas cuadradas rotuladas con los 9 10 11 12
umeros del 1 al 15, en la disposicion que se muestra en la gura. Observese
n
13 15 14
que los numeros 14 y 15 no estan en el orden natural. La casilla inferior
derecha esta libre. Las piezas solo se pueden mover si una casilla adyacente esta libre. Por
ejemplo, en el primer paso podramos bajar la pieza con el 12 o mover hacia la derecha la
pieza con el 14. El objetivo del juego es conseguir una conguraci on identica a la inicial, s
olo
que con las chas 14 y 15 intercambiadas entre s.
24
Aunque parece ser que no fue el quien realmente lo invent
o. En todo caso, fue quien lo populariz
o.

(versi
on preliminar 26 de septiembre de 2010)
3.2. Permutaciones 155

Es posible que el lector se haya entretenido en alguna ocasion jugando con este pasatiem-
po, o con otras versiones que de el a un se comercializan por ah. El pasatiempo de Loyd se
convirti o en todo un exito en su tiempo. Y es que, pese a su aparente sencillez, nadie era
capaz de conseguir recolocar las chas 14 y 15. Y no era por falta de habilidad, ni de empe no,
ni. . . es que, directamente no se puede, es imposible 25 .
Nuestro analisis comienza traduciendo la cuestion al lenguaje de las permutaciones, le-
yendo los smbolos que aparecen al recorrer las casillas del tablero: de izquierda a derecha los
smbolos de la primera la, luego (tambien de izquierda a derecha) los de la segunda la, etc.
As, cualquier conguraci
on del tablero se puede interpretar como una lista de 16 po-
siciones, en las que van los smbolos del 1 al 15, adem
as de un smbolo especial (la casilla
vaca), que nombraremos como . Esto es, una permutacion del conjunto {1, 2, . . . , 15, }. En
concreto, la conguraci on inicial es

ginicial = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 15, 14, ) .

Y el objetivo del juego es conseguir la conguraci


on (la permutacion) siguiente:

gnal = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, ) .

Observese que gnal se puede obtener a partir de ginicial trasponiendo directamente los smbo-
los 14 y 15. Una trasposici on es obviamente una permutaci on impar, y al componer una
permutaci on con una trasposici on cambiamos la signatura de la permutaci on de partida

(veanse los detalles en el ejercicio 3.2.7). Este es el primer ingrediente de nuestro argumento:
las permutaciones ginicial y gnal tienen distinta paridad.
Ah!, pero no hagamos trampas. Vease el tablero en su conguracion inicial: la trans-
posicion directa de los smbolos 14 y 15 no esta permitida. En realidad, los movimientos
permitidos, tanto en la primera jugada como en las posteriores, son transposiciones de la ca-
silla con el smbolo con otras casillas. Cada una de estas trasposiciones son permutaciones
impares. Pero si consiguieramos demostrar que cualquier secuencia de movimientos permi-
tidos que llevara la conguraci on inicial en la nal consta, necesariamente, de un numero
par de trasposiciones, entonces sabramos que es imposible resolver el puzzle. Porque esta
secuencia de un n umero par de trasposiciones nunca podra llevar una permutaci on par en
una impar.
El ingenioso argumento que nos convencer a de ello pasa por pintar de 1 2 3 4
blanco y negro las casillas del tablero, como si de uno de ajedrez se tratara 5 6 7 8
(vease la gura de la derecha). Observese que, al principio, est a visible
9 10 11 12
(no ocupada por cha alguna) una casilla negra. Cualquier movimiento
13 15 14
inicial har
a que quede visible una casilla blanca. Y luego, al hacer cualquier
movimiento, se vera una negra. Y as, sucesivamente. As que, si lo que pretendemos es acabar
con una casilla negra visible, sera necesario que el n umero de movimientos empleado sea
necesariamente un n umero par. Feliz observaci on que concluye el argumento.
25
Ah!, el imposible matematico. El argumento que aqu empleamos, tan habitual en otros contextos, es la
presencia de un invariante. El objeto de partida tiene una cierta caracterstica, en este caso el signo, y todas
las posibles transformaciones conservan esta caracterstica.

(versi
on preliminar 26 de septiembre de 2010)
156 Captulo 3. Las estructuras ba
sicas de la Combinatoria

3.2.3. La er
otica del poder y sus permutaciones

No se alarme el lector. Esta es la subseccion 3.2.3, en la p
agina 156 del captulo 3 de un
libro de Matem atica Discreta. La subseccion anterior hablaba de desbarajustes. Eso pase,
pero el poder, la er otica?, nos preguntar a el lector, no del todo sosegado. Bueno, no lo
negaremos: hablaremos algo de poder, y bastante menos de erotica26 .

Erase una pandilla de amigos, cinco: A, B, C, D y E. Las decisiones para elegir entre
dos pelculas, dos destinos de vacaciones, dos. . . se tomaban por mayora. Se hablaba, eso s,
se discuta, y luego se votaba. Con buen rollo. Pero B vena d andose cuenta de que al nal
la opinion de A prevaleca casi siempre que A y B, los lderes de la pandilla, discrepaban.
B observ o que en realidad E esperaba a ver lo que pensaba A y votaba siempre, siempre,
en ese mismo sentido. As que en realidad no eran cinco personas con 1 voto cada una, sino
cuatro personas: A con dos votos y B, C y D con 1. C y D, gente de mente independiente
(valga la aliteraci
on), votaban seg un sus propias opiniones. Para que A ganara, s olo necesitaba
convencer a C o a D, mientras que B necesitaba convencer a los dos. A tena ventaja, eso
estaba claro, pero cuanta? En esta subseccion vamos a presentar un marco general para
abordar estos an alisis con un enfoque combinatorio, contando alianzas.
Planteemos la cuestion en terminos mas generales: tenemos un conjunto de personas (un
consejo de administraci on de una empresa, un tribunal judicial, el Congreso o el Senado. . . )
que votan y toman decisiones por mayora. La mayora a la que nos referimos podra ser
absoluta (la mitad m as uno de los votos), de dos tercios, etc. Ademas, cada persona podra
tener distinto n umero de votos (por ejemplo, alguien en quien otros votantes hubieran dele-
gado el voto, un miembro de un consejo de administraci on de una empresa representando a
un grupo de accionistas o un presidente con poderes especiales). Incluso cabe la posibilidad
de que alguno de los votantes tuviera derecho de veto (como en el Consejo de Seguridad de
la ONU) o la posibilidad de deshacer empates (prerrogativa habitual de los presidentes de
tribunales). Digamos que son n votantes, y que el votante 1 dispone de v1 votos, el 2 tiene
v2 votos, etc.
Queremos medir, cuanticar, el poder que, en ese sistema, tiene un votante cualquiera.
Una posibilidad inmediata y tentadora es emplear como medida simplemente el n umero de
votos que tiene esa persona. O, mas bien, su proporcion de votos sobre el total. Pero es facil
convencerse de que este no suele ser un buen indicador. Imaginemos, por ejemplo, que hay
u
nicamente dos votantes, uno con 51 votos y otro con 49, y que las decisiones se toman
por mayora absoluta. El segundo votante, pese a tener una proporci on muy alta (casi la
mitad!) de votos, no tiene inuencia alguna en las decisiones. O, en el otro sentido, si hay tres
votantes, a, que cuenta con 50 votos, b con 49 y c con 1, aunque b cuenta con una proporci on
de votos mucho mayor que c, su poder decisorio es exactamente el mismo.
Este ejemplo, y el de los cinco amigos, nos dan una pista clara: el poder de un votante
depende de lo f
acil que tenga aliarse para ganar. Precisemos primero este u ltimo eslogan,
para luego matizar el sentido tecnico de facil.
Decimos que una coalicion (un subconjunto) de votantes es ganadora si re une los votos
sucientes como para ganar la votaci
on. Si los votantes que no est
an en una cierta coalici
on
26
Era, pero no lo propague, porque la er
otica vende.

(versi
on preliminar 26 de septiembre de 2010)
3.2. Permutaciones 157

pueden ganar, entonces diremos que esa coalicion es perdedora. Finalmente, si una coalicion
no es ni ganadora ni perdedora, entonces se dice que es bloqueadora. Un caso especial, al
que reservamos un nombre rotundo, es aquel en el que un unico votante forma, por s mismo,
una coalici
on ganadora: diremos que ese votante es un dictador. Veamos algunos ejemplos.
Ejemplo 3.2.4 Tenemos n personas, cada una con 1 voto, y las decisiones se toman por
mayora absoluta.
Una coalici on es ganadora si reune, al menos, a n/2 + 1 de los votantes. Observese que,
si n es par, cualquier coalici
on de n/2 personas es bloqueadora, mientras que no puede haber
coaliciones bloqueadoras si n es impar.
Supongamos que el n umero de votantes es par, n = 2k, que las decisiones se toman por
mayora absoluta, pero que, adem as, en caso de empate hay un votante (el presidente) que
decide. En este caso, cualquier coalicion de k personas entre las que se encuentre el presidente
es ganadora; y si no esta el presidente, es perdedora.
Ejemplo 3.2.5 Hay cuatro votantes, a, b, c y d. En un caso, disponen de 2, 1, 1 y 1 votos,
respectivamente (es el ejemplo de los amigos con el que abramos la subsecci
on). En el otro
tienen 10, 9, 6 y 4 votos, respectivamente.
La mayora absoluta exige, en el primer caso, 3 votos, y 15 en el segundo. En las dos siguientes
tablas exhibimos, para cada caso, las 24 1 = 15 posibles coaliciones (excluimos al ), junto
con los votos que suponen, y se nalamos, en negrita, las que son adem as ganadoras:
Caso 1 (mayora con 3 votos) Caso 2 (mayora con 15 votos)
{a} {b} {c} {d} {a, b} {a} {b} {c} {d} {a, b}
2 1 1 1 3 10 9 6 4 19
{a, c} {a, d} {b, c} {b, d} {c, d} {a, c} {a, d} {b, c} {b, d} {c, d}
3 3 2 2 2 16 14 15 13 10
{a, b, c} {a, b, d} {a, c, d} {b, c, d} {a, b, c, d} {a, b, c} {a, b, d} {a, c, d} {b, c, d} {a, b, c, d}
4 4 4 3 5 25 23 20 19 29

Observese el papel del votante d en ambos sistemas. En el caso 1, esta incluido en cinco
coaliciones ganadoras, aunque solo es realmente imprescindible (en el sentido de que su
retirada hara que la coalici
on dejara de ser ganadora) en la coalici on {a, d}. En el caso 2,
el votante d participa en cuatro coaliciones ganadoras, aunque en ninguna de ellas es im-
prescindible. Notese como, en este segundo caso, el votante c, que tiene un n umero de votos
muy similar a d (6 frente a 4) y que participa en seis coaliciones ganadoras, es, sin embargo,
imprescindible en cuatro de ellas ({a, c}, {b, c}, {a, c, d} y {b, c, d}).
Es hora ya de cuanticar, de medir el poder que un determinado votante tiene en un
sistema. Esto no es un mero entretenimiento. Si tuvieramos un tal procedimiento, un patr on
bien establecido, entonces, por ejemplo, podramos comparar entre dos sistemas de asignacion
de votos. Quizas recuerde el lector las discusiones en torno a los porcentajes de votos que deba
tener cada pas en el proceso de ampliacion de la Uni on Europea. Se deca, por ejemplo, que
Alemania tena tal poder de decisi on, y que, con la ampliacion y la consecuente redistribuci
on
de votos, pasaba a tener tal o cual inuencia. Cualquier discusi on de este tipo debe tener, en
su base, un procedimiento de medida de ese poder.

(versi
on preliminar 26 de septiembre de 2010)
158 Captulo 3. Las estructuras ba
sicas de la Combinatoria

Como ya hemos sugerido, el n umero de votos o la proporci on de votos frente al total no


son buenas medidas. En el ya citado ejemplo de a con 51 votos y b con 49, a pesar de que
las proporciones de votos son muy similares, a tiene todo el poder. Tampoco el n umero de
coaliciones ganadoras (o quizas la proporcion frente al total de coaliciones ganadoras) es un
ndice adecuado. Siguiendo con el ejemplo de a con 51 votos y b con 49, de las tres posibles
coaliciones, {a}, {b} y {a, b}, hay dos ganadoras, {a} y {a, b}, y b participa en la mitad de
ellas!, cuando, como hemos dicho, su poder decisorio es nulo.
La mayor parte de las medidas que se emplean en estos contextos tratan de recoger la
idea de que lo importante no es que un individuo este en un equipo ganador, sino que su
participacion sea decisiva para que el equipo sea ganador. M as concretamente, manejan la
siguiente nocion: decimos que un votante a es imprescindible en una coalici on S si S es
ganadora pero S \ {a} no lo es.
Uno de los ndices mas populares, el ndice de poder Shapley-Shubik27 tiene que ver
con permutaciones. Supongamos que tenemos un conjunto V con n votantes, cada uno con
un cierto numero de votos. Las reglas del sistema exigen reunir una cierta cantidad de votos
q para ganar. Ahora ordenamos los votantes de una cierta manera: (x1 , . . . , xn ). Decimos que
xi es pivote con respecto a esta ordenaci on si {x1 , . . . , xi1 } no es una coalici
on ganadora
(es decir, no reune los q votos exigidos), pero {x1 , . . . , xi } s lo es. Observese que, una vez
decidida la ordenacion de los votantes, hay un u nico pivote. El valor de nuestro ndice para el
votante a se dene como la proporcion de permutaciones en las que a es pivote. En f ormula,
1
ISS (a) = #{permutaciones en las que a es pivote} .
n!
Observese que 0 ISS (a) 1 para cada votante a. Un valor cercano a 0 querr a decir que el
votante a tiene poco poder en el sistema, mientras que un valor pr oximo a 1 signicar a que
su inuencia es muy grande. El poder total es 1, pues

ISS (v) = 1 ,
vV

y se distribuye entre todos los votantes.


Si, por ejemplo, tenemos los votantes a con 51 votos y b con 49, entonces a es pivote en
las dos permutaciones posibles, (a, b) y (b, a), y por tanto, ISS (a) = 1 e ISS (b) = 0.
Supongamos ahora que a tiene 50 votos, b tiene 49 y c solo 1. La mayora esta en 51 votos.
A continuaci on listamos las seis posibles permutaciones e identicamos, en negrita, el pivote
en cada una de ellas: (abc), (acb), (bac),(bca), (cab), (cba). As que ISS (a) = 46 , mientras que
ISS (b) = ISS (c) = 16 . Observese como, con esta medida, b y c tienen la misma inuencia en el
sistema, pese a que el n umero de votos de que dispone cada uno es muy diferente.
Dejamos que el lector se ejercite listando las 24 posibles permutaciones de los sistemas
con cuatro votantes del ejemplo 3.2.5. As podr a cuanticar la intuici
on de nuestro atribulado
amigo B acerca de como A, al contar siempre con el seguidismo de E, aumentaba enorme-
mente su inuencia en las decisiones. En concreto, A resulta tener un ndice de poder 1/2.
En el siguiente ejemplo analizamos, en general, el efecto de la formacion de alianzas.
27
Propuesto en 1954 por el matem atico Lloyd Shapley y el economista Martin Shubik, como aplicaci on a
estos contextos polticos de ideas que Shapley haba desarrollado en el marco de la Teora de Juegos.

(versi
on preliminar 26 de septiembre de 2010)
3.2. Permutaciones 159

Ejemplo 3.2.6 La uni on hace la fuerza. Tenemos n votantes, cada uno con 1 voto.
Queremos comparar los ndices de poder en esta situacion con la siguiente: cuando b de los
votantes se alan para votar siempre en la misma direcci
on.
Veamos la primera situacion. La mayora esta en q = n/2 + 1. Podemos argumentar sim-
plemente que, por simetra (el papel de cada votante es intercambiable), todos los votantes
han de tener el mismo poder, y que, por tanto,
1
ISS (v) = , para cada votante v.
n
De otra manera, cada votante es pivote en las listas en que ocupe justamente la posici on en
la que se sumen los n/2 + 1 votos necesarios. De estas listas hay (n 1)!, como corresponde
a ordenar el resto de los votantes en las demas posiciones. As obtenemos de nuevo que
ISS (v) = (n1)!
n! = n1 para cada votante v.
Que ocurre si b de los votantes forman una alianza? Ahora tenemos n b + 1 votantes,
uno con b votos y el resto con 1 voto. La mayora sigue estando en q = n/2 + 1. Analicemos
primero el caso b < q. En el siguiente esquema marcamos las posiciones de las permutaciones
(que son de longitud n + b 1) en las que el votante con b votos es pivote:

NO NO SI SI NO NO
   qb+1 q nb+1
qb
En las primeras q b posiciones, la coalicion no es pivote, porque al sumar sus b votos no
se consigue todava mayora. Mas alla de la posici
on q, la mayora ya se ha completado con
otros votantes. La proporcion de permutaciones de n b + 1 smbolos en las que uno de los
smbolos ocupa una posicion entre la q b + 1 y la q resulta ser, justamente, la proporci on
de estas posiciones reservadas frente al total. Esto es,
q (q b + 1) + 1 b
ISS (b) = = .
nb+1 nb+1
En el esquema inicial, la suma de los ndices de
poder de los b votantes es b/n. Pero al aliarse, el
conjunto tiene ndice b/(n b + 1). Supongamos,
por ejemplo, que hay 100 votantes inicialmente.
En el graco de la derecha comparamos el valor
de la suma de los ndices individuales y el ndice
de la alianza en funci on del tama no b de la alian-
za, donde b = 1, . . . , 50. Por ejemplo, si b = 12,
estos 12 votantes pasaran de tener una suma de
ndices 12/100, esto es, del 12 %, a 12/89, es decir
un 13, 48 %. Si la alianza fuera m as numerosa, por
ejemplo de 44 votantes, pasaramos de un 44 % a 44/57, esto es, un 77, 19 %.
El caso b q es especial, pues la alianza re une, por si sola, sucientes votos como para
imponer sus criterios. Es decir, es una alianza dictatorial. Y, como el lector sospechara, el
ndice de Shapley-Shubik de un dictador es 1.

(versi
on preliminar 26 de septiembre de 2010)
160 Captulo 3. Las estructuras ba
sicas de la Combinatoria

Quiz as el lector crtico pueda estar algo descontento con esta forma de medir el ndice de
poder, basada en permutaciones. Y quiz as le parecera mas natural un sistema que, a cada
votante a le asignara un ndice en funci on del numero de coaliciones ganadoras en las que a
fuera imprescindible (en lugar del n umero de permutaciones en las que a es pivote). Vamos,
una versi on con conjuntos, en lugar de con listas.
En realidad, el ndice de Shapley-Shubik tambien se pue-
x1 . . . xj1 a xj+1 xn
de escribir en terminos de coaliciones. Digamos que hay n
j
votantes y que a es pivote de una permutaci on como la que
aparece a la derecha. Esto quiere decir que {x1 , . . . , xj1 } no es coalicion ganadora, pero
{x1 , . . . , xj1 , a} s lo es. Pero observemos que, al permutar entre s los primeros j 1 ele-
mentos o los u ltimos n j, obtenemos una permutaci on distinta de la que a es pivote, que se
corresponde con la misma coalici on ganadora en la que a es imprescindible, {x1 , . . . , xj1 , a}.
Como hay (j 1)!(n j)! formas de permutar entre s los dos bloques de elementos,

1 / permutaciones en las 0 1 / permutaciones en las que 0


n
ISS (a) = # = #
n! que a es pivote n! a es pivote en posicion j
j=1
(j 1)! (n j)! / coaliciones ganadoras de j votantes 0
n
= # .
n! en las que a es imprescindible
j=1

De manera que podemos tambien calcular el ndice de Shapley-Shubik del votante a evaluando
el n
umero de coaliciones ganadoras en las que a es imprescindible, y luego haciendo la suma
ponderada anterior.
unmente utilizado es el llamado ndice de Banzhaf 28 , que directamente
Otro ndice com
cuenta el numero de coaliciones ganadoras en las que un votante es imprescindible:
IB (a) = #{coaliciones ganadoras en las que a es imprescindible} .
Es habitual considerar una versi
on normalizada de este ndice, dividiendo por la suma de los
ndices de Banzhaf de todos los votantes:
I (a) n
1 / coaliciones ganadoras de j votantes 0
I3B (a) = B =  # ,
IB (v) IB (v) en las que a es imprescindible
votantes v j=1 votantes v

que cumple que 0 I3B (a) 1 para cada votante a y que a I3B (a) = 1. Como queda claro en
la escritura de la derecha, es un ndice de estructura an
aloga al de Shapley-Shubik, cambiando
los factores de ponderacion (que ahora son jos).
En el sistema con tres votantes, a con 50 votos, b con 49 y c con 1, los ndices de Shapley-
Shubik son 4/6, 1/6 y 1/6, respectivamente, mientras que los ndices de Banzhaf son 3/5, 1/5
y 1/5. Animamos al lector a que calcule (y compare) los ndices de Banzhaf y de Shapley-
Shubik de los ejemplos propuestos en esta subsecci on.
28
Este ndice, introducido por el abogado estadounidense John F. Banzhaf III en 1965, cuantica un sistema
de asignacion de votos propuesto un par de decadas antes por el psiquiatra, genetista y matem atico Lionel
S. Penrose, Por cierto, son hijos de Lionel Penrose el matem atico Oliver Penrose, el conocidsimo fsico-
matem atico Sir Roger Penrose y Jonathan Penrose, gran maestro de ajedrez. Cielos!, de que se hablara a
la hora de la cena en la casa de los Penrose?

(versi
on preliminar 26 de septiembre de 2010)
3.2. Permutaciones 161

3.2
EJERCICIOS DE LA SECCION

3.2.1 Compruebese que f s = id si y s


olo si s es un m
ultiplo del orden de f .
on f Sn divide a n!.
3.2.2 Compruebese que el orden de una permutaci
3.2.3 Demuestrese que
(a) f 2 = id si y s
olo si f u
nicamente tiene ciclos de longitud 1 y/o 2;
3
(b) f = id si y s olo si f u
nicamente tiene ciclos de longitud 1 y/o 3.
3.2.4 Las permutaciones f de X que cumplen que f 2 = id se denominan involuciones del conjun-
to X. Calc umero de involuciones del conjunto X = {1, 2, . . . , n}.
ulese el n
on dada por f = n (a1 a2 . . . ak1 ak ) se puede escribir como
3.2.5 Compruebese que una permutaci

f = fk fk1 f3 f2 ,

donde, para j = 2, . . . , k, fj es la trasposici


on que intercambia a1 con aj .
3.2.6 Sea g Sn un ciclo de longitud k. Compruebese que g es una permutaci
on par si k es un
n
umero impar; y es una permutaci
on impar si k es par.
3.2.7 Pruebese que si g y h son permutaciones de Sn ,
(a) signo (g h) = signo (g) signo (h).
(b) signo (g 1 ) = signo (g).

3.2.8 Llamemos, para n 2, An al conjunto de permutaciones de Sn que son pares. Ded uzcase,
del ejercicio 3.2.7 que An es un (sub)grupo de permutaciones, conocido como el grupo alternado.
Compruebese que |An | = n!/2, es decir, que la mitad de las permutaciones son pares.
3.2.9 Pruebese que si g Sn es la composici
on de m ciclos disjuntos de longitudes l1 , l2 , . . . , lm ,

signo (g) = (1)t , donde t = (l1 1) + (l2 1) + + (lm 1) .

O, de otra manera, agrupando los ciclos por longitudes: si g tiene j ciclos de longitud j, j = 1, . . . , n,

signo(g) = (1)2 +4 +6 + .

3.2.10 Representaci on de permutaciones con matrices de ce- ! "


1 2 n
ros y unos. Supongamos que tenemos la permutaci on del conjunto .
a1 a2 an
X = {1, . . . , n} de la derecha. Formamos entonces una matriz n n
con filas y columnas etiquetadas con {1, . . . , n}. En la primera columna pondremos un 1 en la fila
que nos indique a1 (y as esta primera columna nos informa de la imagen del 1 con la permutaci on,
a1 ): en la segunda columna, pondremos el 1 en la posici on que nos indique a2 , etc. En el resto de las
posiciones situamos ceros.
Si, por ejemplo, X = {1, 2, 3}, la permutacion g que aparece debajo de estas lneas (a la izquierda)
se corresponde con la matriz de ceros y unos que aparece a su lado. Tambien exhibimos la versi on de
esta matriz en terminos de fichas colocadas sobre un tablero (una u nica ficha por fila y columna):

! " 1 2 3
1 2 3 1 1 0 0
g1 =
1 3 2 2 0 0 1
3 0 1 0

(versi
on preliminar 26 de septiembre de 2010)
162 Captulo 3. Las estructuras ba
sicas de la Combinatoria

Observese que este procedimiento establece una aplicaci on biyectiva entre el conjunto de las permu-
taciones de {1, . . . , n} y el de las matrices n n con ceros y unos con un u nico 1 por columna y un
nico 1 por fila (o el de los tableros n n tales que. . . ).
u
(a) Descrbanse las matrices asociadas a los desbarajustes y a las trasposiciones.
(b) Sean g1 y g2 dos permutaciones y sean M1 y M2 las matrices correspondientes. Compruebese que
on g1 g2 viene dada por el producto de matrices M1 M2 .
la matriz asociada a la composici
3.2.11 En este ejercicio describiremos un algoritmo gr afico para generar todas las 1 2 3 4
permutaciones cclicas (para cada valor de n). Se parte de una cuadrcula infinita, 1
2
con los cuadrados etiquetados con los enteros positivos, como la que mostramos a la 3
derecha. 4
El primer paso es colocar una ficha en el cuadrado 1 2 3 4 1 2 3 4
superior izquierdo. En el segundo se sit uan dos fichas 1 1
seg
un indica el dibujo. Y ahora interpretamos la zona 2 2
recuadrada como una permutaci on del conjunto {1, 2}: 3 3
el 1 va al 2, y el 2 al 1, as que es el ciclo 2 (1 2).
4 4

Para construir el paso n = 3, tomamos una cual- 1 2 3 4 1 2 3 4


quiera de las fichas y la sustituimos por otras dos, situa- 1 1
das una en la misma columna y en el cuadrado exterior n=3 2 2
al resaltado hasta el momento, y la otra en la misma fila 3 3
4 4
y en el cuadrado exterior correspondiente. Se entiende
bien en el dibujo de la derecha, en el que senalamos con un aspa la ficha que quitamos en cada caso.
La primera matriz representa a la permutaci on que lleva el 1 en 2, el 2 en 3 y el 3 en 1; esto es,
el ciclo 3 (1 2 3). La segunda representa al ciclo 3 (1 3 2). El procedimiento se repite, de manera
que en el paso k sustituimos una ficha de coordenadas (i, j) por fichas en las posiciones (i, k) y (k, j).

(a) Construyanse con este procedimiento las 3! = 6 permutaciones cclicas de {1, 2, 3, 4}.
(b) Convenzase el lector de que este procedimiento produce siempre matrices de permutaciones (esto
es, en el paso k, una matriz k k con una u nica ficha por fila y columna).
(c) Llamemos configuraci on factible a una disposici
on de fichas en el tablero construida con este
procedimiento. Pruebese que una configuracion es factible si y s
olo si la configuracion representa
a una permutaci on cclica.
(d) Compruebese que la equivalencia anterior nos permite recuperar el ya conocido resultado (vease
la p
agina 150) de que el n umero de permutaciones cclicas de {1, . . . , n} es (n 1)!.

3.2.12 Hay 100 votantes, cada uno con un voto. En caso de empate, el presidente decide. (a) Cu
al
es el poder de cada uno de los votantes? (b) Y si el presidente tiene derecho de veto?
3.2.13 El Consejo de Seguridad de la ONU consta de 15 miembros. Cada pas cuenta con 1 voto y
son necesarios 9 para aprobar las resoluciones importantes. Pero los 5 miembros permanentes (EEUU,
Reino Unido, Francia, Rusia y China) tienen derecho de veto. Calc ulense los ndices de poder de los
miembros del Consejo de Seguridad.
3.2.14 Tenemos un sistema con n votantes. Observese que el ndice de Shapley-Shubik se puede
escribir como
1 1
ISS (a) = ! ",
n n1
IIa
|I| 1
donde Ia es la colecci
on de coaliciones ganadoras en las que a es imprescindible.

(versi
on preliminar 26 de septiembre de 2010)
3.2. Permutaciones 163

on ganadora es minimal si la retirada de uno cualquiera de sus miembros


(a) Decimos que una coalici
on deje de ser ganadora. Compruebese que, si llamamos Ja a la colecci
hace que la coalici on de las
coaliciones ganadoras minimales del sistema que incluyen al votante a, entonces
1 1
ISS (a) ! ",
n n1
JJa
|J| 1

(b) Compruebese que, si J es la colecci


on de todas las coaliciones ganadoras minimales del sistema,
! "
1 n
! " 1 y deduzcase que |J | .
n n/2
JJ
|J|

(c) Una familia S de subconjuntos se dice que es familia de Sperner si ning un A S est
a contenido
un otro B S (sobre estas familias de Sperner hablaremos en el captulo 18). Compruebese que
en alg
la familia J de coaliciones ganadoras minimales del apartado anterior es de Sperner.
(d) Sea S la colecci
on de subconjuntos de tamano 3 del conjunto {1, 2, . . . , 7}. Observese que S es una
familia de Sperner. Compruebese que, sin embargo, no hay ninguna asignaci on de votos a {1, 2, . . . , 7}
para la que S sea el conjunto de coaliciones ganadoras minimales.

(versi
on preliminar 26 de septiembre de 2010)
164 Captulo 3. Las estructuras ba
sicas de la Combinatoria

3.3. Particiones y descomposiciones


Una cuestion muy habitual en Combinatoria consiste en contar de cu antas maneras se
puede partir o descomponer, en piezas sencillas, un cierto objeto conocido:

Podemos preguntarnos, por ejemplo, cu antas maneras hay de partir un conjunto en


subconjuntos suyos. La respuesta la encontraremos en la subseccion 3.3.1.
Tambien nos interesara saber cuantas permutaciones hay con un determinado n
umero
de ciclos (vease la subseccion 3.3.2).
Finalmente, nos ocuparemos tambien de contar de cu
antas maneras se puede escribir un
entero (positivo) como suma29 de enteros tambien positivos (vease la subsecci
on 3.3.3).

3.3.1. Particiones de conjuntos


Partir un conjunto en subconjuntos (disjuntos dos a dos), para luego aplicar la regla de la
suma, es una de las estrategias basicas de la Combinatoria, como ya vimos en la seccion 2.3.
La cuestion que aqu nos interesa es saber de cu
antas maneras distintas se puede partir un
conjunto dado.
Sea X un conjunto con n elementos, que supondremos, como hacemos habitualmente,
que son los n umeros {1, . . . , n}. Una partici on en k bloques no vacos de X sera una
coleccion de subconjuntos {A1 , A2 , . . . Ak } (los bloques) tales que

on de X :
1. los bloques, efectivamente, conforman una partici

X = A1 Ak y Ai Aj = para cada i = j.

2. Y los bloques son no vacos, esto es, Ai = para cada i = 1, . . . , k.

Es fundamental se nalar que, por un lado, el orden de los elementos dentro de cada bloque es
irrelevante (por eso hablamos de subconjuntos); y, por otro, que el orden de presentaci on de
los bloques tambien es irrelevante. Pese a que nombramos los bloques como A1 , . . . , Ak , no
debe suponer el lector que estemos dando un orden entre ellos.
Por ejemplo, si X fuera el conjunto {1, 2, 3}, tendramos una u
nica partici
on con un bloque
(el propio conjunto {1, 2, 3}), tres particiones con dos bloques,

{1, 2} {3}, {1, 3} {2}, {2, 3} {1} ;

on en tres bloques, {1} {2} {3}. Ya no hay m


y una partici as, pues queremos que los
bloques no sean vacos. Insistimos en que, por ejemplo, {1, 2} {3}, {3} {1, 2} o {3} {2, 1}
representan la misma particion.
29
Sin duda el lector conoce otra forma de descomponer un entero, la que consiste en escribir el entero como
producto de primos. Una cuesti on sumamente interesante, a la que dedicaremos una atenci on especial en la
subsecci
on 4.1.5. Pero dado que, como es bien sabido, la citada descomposici on es u
nica, entendera el lector
que no la tratemos en una seccion como esta, cuyo leit motiv es de cu
antas maneras se puede hacer?.

(versi
on preliminar 26 de septiembre de 2010)
3.3. Particiones y descomposiciones 165

umeros de Stirling de segunda especie30 S(n, k) de la siguiente


Denimos los n
manera:


S(n, k) = # particiones distintas del conjunto {1, . . . , n} en k bloques no vacos .

En un lenguaje alternativo, S(n, k) cuenta tambien el n


umero de posibles distribuciones de n
bolas numeradas (antes, los elementos del conjunto) en k cajas indistinguibles (los bloques
de la partici
on), de manera que ninguna caja quede vaca.
Una nueva familia aparece para poblar el h abitat combinatorio. Como hicimos con los
coecientes binomicos, trataremos de obtener una f ormula explcita para ellos o, al menos,
una regla de recurrencia que facilite su c
alculo.
Empezamos determinando el rango de valores de los par ametros n y k. Por un lado,
exigiremos que n 1 (si el conjunto ya es vaco, difcilmente vamos a poder partirlo en
bloques no vacos). Fijado n, si ocurriera que k > n, entonces no podramos construir ninguna
partici
on (nos faltaran smbolos para llenar los bloques), as que

S(n, k) = 0 si k > n.

De manera que el rango de interes es n 1 y, para cada n, 1 k n.


umero total de particiones de {1, . . . , n} en bloques no vacos se obtendr
El n a clasicando
las particiones seg
un el n
umero de bloques que contengan; por la regla de la suma, habr a


n
B(n) = S(n, k)
k=1

particiones distintas del conjunto {1, . . . , n} (o distribuciones de n bolas numeradas en cajas


identicas sin que queden cajas vacas). Los B(n) son conocidos como n umeros de Bell.
Por ejemplo, hemos visto que, para n = 3, S(3, 3) = 1, S(3, 2) = 3 y S(3, 1) = 1; y, en
a B(3) = 5 particiones distintas del conjunto {1, 2, 3}.
total, habr
Veamos algunos casos sencillos. Para empezar, lo que por analoga con el analisis de los
coecientes binomicos llamaremos valores frontera de los n
umeros de Stirling de segunda
especie: S(n, n) y S(n, 1).
Si tenemos n smbolos y pretendemos formar n bloques no vacos con ellos, s olo queda
la posibilidad de situar un smbolo por bloque. Es decir, S(n, n) = 1 para cada n 1.
Permtanos el lector describir esta particion, de manera algo informal pero ilustrativa, como
aquella en la que cada smbolo va por su cuenta.
Si de nuevo partimos de n smbolos, pero ahora s olo tenemos un bloque, la u
nica manera
de hacer la partici
on es colocar todos los smbolos en ese bloque. Esto es, S(n, 1) = 1 para
cada n 1. Esta particion es la de todos juntos.
Pues hasta aqu, todo igual al caso de los coecientes bin
omicos. Analicemos un par de
casos mas.
30
Hay, claro, n
umeros de Stirling de primera especie (vease la subsecci
on 3.3.2).

(versi
on preliminar 26 de septiembre de 2010)
166 Captulo 3. Las estructuras ba
sicas de la Combinatoria

Ejemplo 3.3.1 El valor de S(n, n 1), para n 2.


Por denici on, S(n, n 1) cuenta el numero de particiones de {1, . . . , n} en n 1 bloques
no vacos. Observemos que solo hay una conguraci on posible, la que corresponde a tener un
bloque con dos smbolos, y el resto de los smbolos, cada uno en un bloque distinto31 . Decidir
que conguracion de estas tenemos exige u
nicamente determinar que dos smbolos van juntos,
pues el resto de los smbolos se deben situar uno en cada uno de los dem as bloques. As que,
despues de todo, solo hay que elegir dos elementos, por lo que concluimos que
! "
n
S(n, n 1) = .
2
Ejemplo 3.3.2 El valor de S(n, 2), para n 2.
Ahora tenemos dos bloques, y bastar a decidir que elementos van en uno de los bloques (los
del otro quedan jados). Note el lector que no tiene sentido hablar de primer bloque y
segundo bloque, pues estos son indistinguibles. A un as, emplearemos el truco habitual de
asignar un orden auxiliar y cticio a los bloques, que luego compensaremos al nal. Digamos
entonces que los bloques son
Bloque 1 Bloque 2
En el primero, en principio, podemos situar cualquier subconjunto de {1, . . . , n}; y hay 2n
de ellos. Pero no podemos utilizar ni el (porque el bloque 1 sera vaco) ni todo {1, . . . , n}
(porque el bloque 2 quedara vaco). As que la respuesta sera 2n 2.
Ahora debemos compensar el orden espurio que hemos introducido. Digamos que A es
un subconjunto de {1, . . . , n}, una de las 2n 2 elecciones posibles que citabamos antes. En
el proceso que hemos hecho estamos distinguiendo entre

A {1, . . . , n} \ A y {1, . . . , n} \ A A

Estas dos conguraciones, vistas como particiones en bloques (esto es, sin orden entre los
bloques) son en realidad la misma. As que la respuesta correcta es
2n 2
S(n, 2) = = 2n1 1 .
2
Nos gusta, es mas sencillo argumentar cuando podemos referirnos a un bloque en concreto.
Arriba impusimos un orden cticio entre bloques, que luego supimos compensar, y que nos
permiti o hablar de bloque 1 y bloque 2. Un analisis alternativo, que emplearemos varias veces
mas adelante, es el siguiente. Vamos a referirnos al bloque que contiene a un elemento parti-
cular, por ejemplo el elemento n. No es primer bloque ni segundo bloque, sino simplemente
el bloque que contiene a n. Pero ahora que tenemos un bloque distinguido, el argumento
es sencillo: solo tenemos que decidir que elementos acompa nan a n en su bloque; o quizas
que es lo que va en el otro bloque. La respuesta es directa: hay 2n1 1 posibilidades, todos
los posibles subconjuntos (con n 1 smbolos!, que n ya esta colocado), excepto el vaco.
31
on del principio del palomar: como hay n smbolos y n 1 bloques, necesariamente uno de
Sencilla aplicaci
los bloques ha de llevar al menos dos smbolos. Y si queremos que todos los bloques sean no vacos, entonces
s
olo queda la posibilidad de que un bloque lleve dos smbolos, y el resto uno.

(versi
on preliminar 26 de septiembre de 2010)
3.3. Particiones y descomposiciones 167

Quizas el lector quiera intentar el analisis de casos mas complicados (3 bloques, o quizas
n2 o n3 bloques), como proponemos en el ejercicio 3.3.1. Observar a, por un lado, que cada
caso requiere un argumento combinatorio ad hoc, y que adem as el aspecto de las formulas que
se obtienen no permite albergar
  muchas esperanzas de llegar a una formula general sencilla.
Por ejemplo, S(n, 2) = n2 , mientras que S(n, n 1) = 2n1 1. Esta tal f ormula general
existe, aunque, como vera el lector, es bastante complicada. La obtendremos en el apartado B
de esta subseccion, aunque antes analizaremos un procedimiento de c alculo alternativo.

A. Regla de recurrencia para los n


umeros de Stirling de segunda especie
Queremos representar los valores de
S(n, k) en un triangulo como el que uti- k=1

liz
abamos para codicar los coecien-  k=2
tes binomicos. Las coordenadas de ca- n = 1 S(1, 1) k = 3
da casilla son (piso) n y (diagonal) k,
n=2 S(2, 1) S(2, 2) k = 4
que ahora recorren unos rangos lige-
ramente distintos al caso de los coe- n = 3 S(3, 1) S(3, 2) S(3, 3) k = 5
cientes bin omicos. Notese que, si co- n = 4 S(4, 1) S(4, 2) S(4, 3) S(4, 4) k = 6
nocieramos todos los valores de S(n, k)
n=5 S(5, 1) S(5, 2) S(5, 3) S(5, 4) S(5, 5) 
para un cierto piso n, el numero de Bell k=7
B(n) correspondiente se obtendra, sim- n = 6 S(6, 1) S(6, 2) S(6, 3) S(6, 4) S(6, 5) S(6, 6) 
plemente, sumandolos. Sabemos ya que n = 7 S(7, 1) S(7, 2) S(7, 3) S(7, 4) S(7, 5) S(7, 6) S(7, 7)
S(n, n) = S(n, 1) = 1 para todo n, .. .. .. .. .. .. ..
as que tenemos los valores de la fron- . . . . . . .
tera del triangulo.
Inspirados por los coecientes binomicos, querramos expresar S(n, k) (que estar a en una
casilla del piso n) en terminos de numeros de Stirling de primer ndice n 1 (casillas del piso
anterior). Esto exigira relacionar particiones de conjuntos con n smbolos con particiones de
conjuntos n 1 smbolos. Para ello, analizaremos que puede ocurrir con un bloque especial,
por ejemplo el que contiene al elemento n. Caben dos posibilidades excluyentes:
Caso 1 El bloque que contiene a n no contiene ning
un otro elemento. Una partici
on de estas
tendr
a el siguiente aspecto:
n
  
k 1 bloques

Insistimos en que en el esquema anterior no se est a suponiendo orden alguno entre bloques:
simplemente identicamos el bloque que contiene a n, que en este caso no contiene nada mas.
Pero ahora, como n va en un bloque (y por su cuenta), s olo queda construir una partici on
del conjunto {1, . . . , n 1} en k 1 bloques no vacos, para que en total tengamos k bloques.
Mas formalmente, hay una biyecci on entre el conjunto de las particiones de {1, . . . , n} en
k bloques en las que n va solo en un bloque y el conjunto de las particiones de {1, . . . , n 1}
en k 1 bloques no vacos. El diccionario, la biyecci on, es simplemente quitar el bloque {n}
o anadir el bloque {n}. De manera que hay S(n 1, k 1) particiones de este primer tipo.

(versi
on preliminar 26 de septiembre de 2010)
168 Captulo 3. Las estructuras ba
sicas de la Combinatoria

Caso 2: El bloque que contiene a n tiene, ademas, otros elementos. Podremos contar con la
misma receta? Veamos un ejemplo: sea X = {1, 2, 3, 4} y k = 2. Nos interesan las particiones
en las que que el bloque con el 4 contiene, ademas, otros elementos. Dos distintas seran
{1, 2} {3, 4} y {3} {1, 2, 4} .
Ahora no podemos hablar de quitar el bloque {4}, pero a un podramos intentar una regla
del tipo quitar el elemento 4. Pero no, no funciona, porque, por ejemplo,
&
{1, 2} {3, 4} {1, 2} {3}
dan lugar a la misma particion!
{3} {1, 2, 4} {1, 2} {3}
A
un as, no descartemos completamente el argumento. Pensemos en el proceso al reves,
a on con dos bloques {1, 2} {3}, podemos situar el 4 en cualquiera
nadir 4. Dada la partici
de ellos
{1, 2} {3} {1, 2, 4} {3} y {1, 2} {3, 4}
para dar lugar a una partici on de {1, 2, 3, 4} en dos bloques, con el 4 acompa nado.
Hagamos el argumento en general: tenemos las S(n 1, k) particiones del conjunto
{1, . . . , n 1} en k bloques. Para cada una de ellas, a nadimos el elemento n en alguno
de los bloques. Tendremos k posibilidades para colocarlo:


{. . . , n} { } { }

{ } {. . . , n} { }
{ } { } { } ..
  
.


k bloques { } { } {. . . , n}
Dejamos al lector meticuloso que se convenza de que, al recorrer todas las particiones de
{1, . . . , n 1} en k bloques vamos generando todas las particiones de {1, . . . , n} en k bloques
en las que n esta acompa nado, sin repetir ninguna. Como por cada partici on del primer tipo
obtenemos k del segundo, concluimos que hay k S(n 1, k) particiones en este Caso 2.
Ya tenemos la regla de recursi
on que busc
abamos:

S(n, k) = S(n 1, k 1) + k S(n 1, k)

que, junto a los valores frontera, codica toda la informacion sobre los n
umeros S(n, k).
Podremos as construir el an
alogo al tri
angulo de Pascal, en el que podemos leer, ademas,
sumando por las, los valores de los n
umeros de Bell B(n):
k=1
 k=2 B(n)

n=1 1  k=3 1
n=2 1 1  k=4 2
n=3 1 3 1  k=5 5
n=4 1 7 6 1  k=6 15
n=5 1 15 25 10 1  52
k=7
n=6 1 31 90 65 15 1  203
n=7 1 63 301 350 140 21 1 877

(versi
on preliminar 26 de septiembre de 2010)
3.3. Particiones y descomposiciones 169

Observe el lector como ahora ya no tenemos la simetra del


tri
angulo de los coecientes binomicos. La regla de recursion se S(n1, k1) S(n1, k)
k
acamente como aparece a la derecha, donde la e-
interpreta gr ~ =
cha de la izquierda, mas oscura, nos indica que hay que multipli- S(n, k)
car (por k) antes de sumar. Los n umeros de Bell B(n) tambien
verican una regla recursiva (vease el ejercicio 3.3.3).

B. Una f
ormula para los n
umeros de Stirling de segunda especie. Relaci
on con el
n
umero de aplicaciones sobreyectivas
Ya sabemos cuantas aplicaciones sobreyectivas hay entre un conjunto con n elemen-
tos y otro con k. Una f ormula complicada, que obtuvimos aplicando el principio de inclu-
sion/exclusion en el ejemplo 3.1.4. Vamos ahora a relacionar, con un argumento combinatorio,
ese numero de aplicaciones sobreyectivas con S(n, k). Esto nos dar a, por un lado, una formu-
la explcita para los S(n, k). Alternativamente, dado que sabemos calcular ecazmente los
numeros de Stirling, va la regla de recurrencia, hallaremos una buena manera de calcular
tambien el n umero de aplicaciones sobreyectivas entre dos conjuntos.
Sean dos conjuntos X e Y con tama nos respectivos n y k. Supongamos, como es habitual,
que X = {1, . . . , n} e Y = {1, . . . , k}. Observese primero que una aplicacion cualquiera de X
a Y dene una partici on del conjunto X : en cada bloque de la partici on estaran los elementos
de X que tengan imagen com un. Pero si adem as la aplicacion es sobreyectiva (es decir, todo
elemento y Y tiene un conjunto de preim agenes no vaco), entonces sabemos de cuantos
bloques consta la partici on: exactamente k, tantos como elementos tenga Y.
Precisemos esta idea, construyendo las aplicaciones sobreyecti-
X f - Y vas de X en Y con el siguiente procedimiento: primero partimos
el conjunto X en k bloques no vacos. Esto, como bien sabemos,
se puede hacer de S(n, k) maneras distintas. Ahora que tene-
mos X partido en k bloques no vacos, asignamos a cada uno de
estos bloques un elemento de Y. En terminos de la aplicaci on,
estaremos decidiendo cual es el elemento imagen com un a todos
los del bloque. Este u ltimo paso se puede hacer, por supuesto,
de k! maneras. El dibujo de la izquierda describe el proceso, en
el que primero construimos los bloques, y luego les asignamos imagen. Deducimos as que

#{aplicaciones sobreyectivas de X = {1, . . . , n} en Y = {1, . . . , k}} = k! S(n, k) .

Recuerdese que el valor de S(n, k) se puede obtener mediante la regla de recursion citada
antes. Y si ahora recuperamos el resultado del ejemplo 3.1.4, llegamos a la formula
! " ! "
1 (1)k
k1 k
j k k
S(n, k) = (1) (k j)n o bien S(n, k) = (1)m
mn
k! j k! m
j=0 m=1

on, de j a m = k j, y hemos utilizado la


(a la derecha hemos cambiado el ndice de sumaci
simetra de los coecientes binomicos).

(versi
on preliminar 26 de septiembre de 2010)
170 Captulo 3. Las estructuras ba
sicas de la Combinatoria

En terminos de bolas en cajas, S(n, k) cuenta el n umero de distribuciones de n bolas


numeradas en k cajas identicas (sin cajas vacas). Ahora vemos que k! S(n, k) cuenta el
n
umero de distribuciones de n bolas numeradas en k cajas numeradas (sin cajas vacas).
Calculemos, utilizando la f
ormula anterior, S(n, 2):
! " % ! " ! " &
(1)2
2
2 1 2 2 n 2n 2
S(n, 2) = (1)m n
m = + 2 = ,
2! m 2 1 2 2
m=1

como ya vimos en el ejemplo 3.3.2. Y si recordamos los calculos que hicimos para S(n, n) y
S(n, n 1), deducimos los valores de las siguientes dos imponentes sumas:
! "
(1)n
n
m n
S(n, n) = (1) mn = 1 ;
n! m=1 m
! " ! "
(1)n1
n1
n1 n
S(n, n 1) = (1)m mn = .
(n 1)! m 2
m=1

Animamos al lector (no, es broma) a que intente la prueba algebraicas de estas identidades.
Ejemplo 3.3.3 Una identidad para los n
umeros de Stirling de segunda especie.
Sabemos que, si |X | = n y |Y| = k, hay un total de kn aplicaciones X Y distintas. Una
manera alternativa de contar este n
umero de aplicaciones es la siguiente:
1. primero decidimos cu antos elementos de Y van a tener preimagen. Este n umero sera un
cierto j, con 1 j k. Ahora, para cada j,
 
2. decidimos que elementos de Y tienen preimagenes (lo podremos hacer de kj maneras);
3. y una vez que hemos decidido a que j elementos llega la aplicacion, s
olo resta construir
una aplicacion sobreyectiva a estos j elementos.
Aplicando las reglas de la suma y del producto, llegamos a que
k ! "
n k
k = j! S(n, j) .
j
j=1

Observese que la presencia de los coecientes binomicos permite poner, como lmite superior
de sumacion, n, mn(n, k), o incluso +.
Ahora observemos que, para n jo, podemos reescribir la identidad anterior como

n
n
k = k(k 1) (k j + 1) S(n, j) para todo k 1.
j=1

Arriba hemos escrito dos polinomios de grado n que coinciden en todos los enteros. Como
veremos con mas detalle en la seccion 4.6, esto supone que los polinomios han de ser el mismo:

n
n
x = x(x 1) (x j + 1) S(n, j) para todo x R.
j=1

(versi
on preliminar 26 de septiembre de 2010)
3.3. Particiones y descomposiciones 171

3.3.2. Descomposici
on de permutaciones en ciclos
En la subsecci on 3.2.1 vimos que una permutaci on se puede escribir, de manera u nica,

como producto de ciclos. Unica, con las salvedades habituales: el orden en el que presentamos
los ciclos, y el elemento que aparece primero dentro de cada ciclo.
En principio, el numero de ciclos que puede tener una permutaci on es cualquier n
umero
entre 1 (las permutaciones cclicas) y n (por ejemplo, la permutacion identidad). Y la pregunta
natural es: cu antas permutaciones tienen un n umero determinado de ciclos? Llamemos

z(n, k) = # {permutaciones de {1, . . . , n} que tienen exactamente k ciclos} .

A estos n
umeros se les suele llamar n umeros de Stirling (sin signo) de primera especie.
Por razones hist
oricas (vease la discusion de la p
agina 172), los n
umeros de Stirling de
primera especie s(n, k) se denen de forma ligeramente diferente: s(n, k) cumple que

(1)nk s(n, k) = z(n, k) = # {permutaciones de {1, . . . , n} con exactamente k ciclos} ,

de manera que pueden tomar tanto valores positivos como negativos. En lo que sigue, y por
simplicar, nos centraremos en la familia de n umeros s(n, k). Aunque todas las expresiones
que obtendremos tendr an sencilla traduccion a los n
umeros z(n, k) sin mas que eliminar los
posibles signos: z(n, k) = |s(n, k)|.
Comenzamos el analisis jando el rango de los par ametros n y k. En principio, tiene
sentido considerar n 1 y k 1. Pero como no puede haber permutaciones con m as ciclos
que elementos, diremos que, dado n 1,

s(n, k) = 0 si k > n.

As que podremos representar estos numeros de Stirling de primera especie en un tri


angulo
a la Tartaglia. Observese que, si k = n, la u
nica permutaci
on que tiene tantos ciclos como
elementos es la identidad. Por tanto,

s(n, n) = (1)nn 1 = 1 para cada n 1.

El otro caso extremo sera considerar k = 1. Como ya vimos en la p agina 150, hay (n 1)!
permutaciones de {1, . . . , n} que son, ellas mismas, un ciclo (las llamadas permutaciones
cclicas). As que
s(n, 1) = (1)n1 (n 1)! para cada n 1.

A. Regla de recurrencia para los n


umeros de Stirling de primera especie
Ya tenemos los valores frontera, y ahora buscaremos la regla de recurrencia. El argu-
mento es similar al que empleabamos para los n umeros S(n, k): clasicaremos en funci
on
del papel de un elemento especial, digamos n. Partimos de una descomposicion del conjunto
X = {1, . . . , n} en k ciclos. Tenemos, de nuevo, dos casos excluyentes.
Caso 1 Si n forma un ciclo por s mismo, entonces, al quitarlo, nos queda una permutaci
on
de {1, . . . , n 1} con exactamente k 1 ciclos.

(versi
on preliminar 26 de septiembre de 2010)
172 Captulo 3. Las estructuras ba
sicas de la Combinatoria

Caso 2 En caso contrario, n forma parte de un ciclo junto con otros elementos. Quitar n
y pasar a permutaciones de {1, . . . , n 1} no cambia el n
umero de ciclos. Pero observese lo
que ocurre en el siguiente ejemplo, en el que quitamos el 4:

4 (3, 2) 4 (1, 4) da lugar a


3 (3 2)3 (1)
4 (3, 2, 4) 4 (1) da lugar a
3 (3 2)3 (1)
Esto no funciona. Argumentamos entonces en sentido contrario. Partimos de una permu-
tacion del conjunto {1, . . . , n 1} con k ciclos, que tendr
a un aspecto semejante a

n1 (a11 , . . . , a1s ) n1 (a21 , . . . , a2t ) . . . n1 (ak1 , . . . , aku ) .


Queremos a nadir el elemento n sin que se formen nuevos ciclos. Sea cual sea la permutacion
considerada, tenemos n 1 lugares donde colocarlo (los n 1 huecos entre los aj ). As que,
por cada permutaci on de {1, . . . , n 1} con k ciclos, obtenemos n 1 permutaciones de
{1, . . . , n} con k ciclos en las que n este acompa nada.
Deducimos entonces que el n umero de permutaciones de X con k ciclos coincide con
   
permutaciones de {1, . . . , n 1} permutaciones de {1, . . . , n 1}
(n 1) # +# ,
con k ciclos con k 1 ciclos

lo que nos dara la relaci


on de recurrencia k=1
 k=2
z(n, k) = (n 1) z(n 1, k) + z(n 1, k 1) . n=1 1  k=3

n=2 1 1  k=4
O, en terminos de los s(n, k),  k=5
n=3 2 3 1
n=4 6 11 6 1  k=6
s(n, k) = (n 1) s(n 1, k) + s(n 1, k 1)
n=5 24 50 35 10 1 
Con esta regla y los valores frontera, podemos re- n = 6 120 274 225 85 15 1

llenar los valores del triangulo de los s(n, k). Los


valores de z(n, k) se leen, simplemente, quitan- s(n1, k1) s(n1, k)
angulo. Observese
do el signo en los valores del tri (1n)
~ =
que la suma por las en el tri angulo de los s(n, k)
s(n, k)
da ahora siempre 0. Y la suma por las en el
tri
angulo de los z(n, k)? Vease el ejercicio 3.3.6.

B. Relaci
on entre los n
umeros de Stirling de primera y segunda especie
Antes de que el lector se aventure en la lectura de este apartado, queremos advertirle de
que requiere cierta familiaridad con los conceptos de espacio vectorial y base.
Las familias de n umeros S(n, k) y s(n, k) no tenan, cuando surgieron como conceptos
matematicos, el sabor combinatorio que aqu les estamos dando. Stirling estaba interesado
en otras cuestiones, de tipo mas algebraico, y que por su interes pasamos a esbozar, dejando
para los ejercicios algunos detalles de su desarrollo.

(versi
on preliminar 26 de septiembre de 2010)
3.3. Particiones y descomposiciones 173

Las dos siguientes son las identidades clave:


n
n
() n
x = S(n, k) x(x 1) (x k + 1) ; () x(x 1) (x n + 1) = s(n, k)xk .
k=0 k=0

La de la izquierda ya la vimos en el ejemplo 3.3.3. Por comodidad, tomamos el lmite inferior


de sumaci on como 0. Para ello, es conveniente denir S(n, 0) = 0 para cada n 1, pero
S(0, 0) = 1. Dejamos la prueba de la identidad (), que involucra n umeros de Stirling
de primera especie, como ejercicio 3.3.8 para el lector. Aqu tambien es necesario denir
s(n, 0) = 0 para cada n 1, pero s(0, 0) = 1.
El espacio de los polinomios p(x) con coecientes reales es un espacio vectorial (de di-
mension innita, pero numerable). En el podemos considerar la base est
andar, dada por


B1 = xk k=0 = {1, x, x2 , x3 , . . . } ,

que es la que se usa habitualmente en la denici


on de polinomio como una combinaci
on lineal
de potencias de x.
Pero en realidad cualquier coleccion de polinomios en la que cada uno tenga uno de los
grados posibles valdra tambien como base (cerciorese el lector!). Por ejemplo, la base de los
factoriales decrecientes,


B2 = x(x 1) (x k + 1) k=0 = {1, x, x(x 1), x(x 1)(x 2), . . . }

(observese la especial interpretacion del caso k = 0).


Lo ilustramos con un ejemplo, que analizamos a mano: partimos del polinomio

p(x) = 1 + 2x + 3x3 ,

cuyos coecientes en la base B1 son, por supuesto, (1, 2, 0, 3, 0, 0, . . . ). Tras unas ciertas ma-
nipulaciones algebraicas, el lector podr
a llegar a que

p(x) = 1 + 2x + 3x3 = 1 + 5x + 9x(x 1) + 3x(x 1)(x 2) ,

que nos dice que los coecientes de p(x) en la base B2 son (1, 5, 9, 3, 0, 0, . . . ).
Si el polinomio esta escrito en la base B2 , pasarlo a la base B1 es relativamente sencillo:
basta multiplicar todos los factores e ir agrupando los terminos de igual grado. El otro camino
es algo mas laborioso.
Observe el lector que las identidades () y () constituyen, precisamente, un diccionario
para pasar de una base a la otra. La de la izquierda (en la que intervienen los S(n, k))
cambia de la base estandar B1 a la base B2 de los factoriales decrecientes, mientras que la de
la derecha (la de los s(n, k)) hace el cambio inverso. Aunque no sabemos bien que tena en
mente Stirling cuando decidi o bautizarlos como de primera y de segunda especie. El lector
hallar
a mas informacion y ocasion de aprender sobre este papel de los n umeros de Stirling
como coecientes del cambio de base en los polinomios en el ejercicio 3.3.9.

(versi
on preliminar 26 de septiembre de 2010)
174 Captulo 3. Las estructuras ba
sicas de la Combinatoria

3.3.3. Particiones de enteros


Ahora nos interesa contar de cu antas maneras se puede es- 5 = 1+1+1+1+1
cribir un cierto entero positivo n como suma de enteros positi- 5 = 1+1+1+2
5 = 1+2+2
vos, donde el orden de los sumandos es irrelevante. Cada una 5 = 1+1+3
de estas formas sera lo que llamaremos una partici on de n; y 5 = 2+3
cada uno de los sumandos, una parte. A la derecha exhibimos 5 = 1+4
las siete posibles particiones de 5. Observese que, por ejemplo, 5 = 5
5 = 2 + 3 y 5 = 3 + 2 representan la misma partici on. Por comodidad, se suelen escribir los
sumandos de menor a mayor:
4 #
11 = 2 + 2 + 2 + 2 + 3 = 24 3 ;
o incluso en la forma abreviada de la derecha, donde 24 recuerda que hay que sumar 4 doses.
Demosles nombres y smbolos a las cantidades de interes. Al n
umero total de particiones
de n lo nombraremos como p(n). Intervendr an tambien en nuestros analisis las particiones
de n que tienen exactamente k partes; el numero de ellas sera pk(n). Observese que

p(n) = pk (n)
k0

(aunque en realidad el sumatorio s olo va desde k = 1 a k = n). Por ejemplo, p1 (5) = 1,


p2 (5) = 2, p3 (5) = 2, p4 (5) = 1 y p5 (5) = 1, que en total da p(5) = 7. En general, cuando
queramos contar el n umero de particiones de n que cumplan una determinada propiedad,
escribiremos
p(n | la partici
on cumple cierta propiedad)
As, por ejemplo, los pk (n) que acabamos de introducir corresponden a
pk (n) = p(n | el n
umero de partes es exactamente k) .

Contar el n umero de particiones de un entero n con ciertas caractersticas suele ser un


asunto muy complicado. El lenguaje natural para tratar este tipo de cuestiones es el de las
funciones generatrices. As lo haremos en la seccion 13.2. Pero, hasta entonces, nos limitare-
mos a utilizar argumentos de tipo combinatorio.
El lector atento habr a advertido la seme- Particiones de 5 Composiciones de 5
janza entre las particiones de un entero n y lo 1 + 1 + 1 + 1 + 1 1 + 1 + 1 + 1 + 1

que en la subseccion 3.1.3 llam abamos compo- 2+1+1+1


siciones de n. La diferencia, vital como vere- 1+2+1+1
1 + 1 + 1 + 2
mos, es que, al contrario que con las compo-
1+1+2+1

1+1+1+2
siciones, para las particiones el orden de pre-
sentacion de los sumandos no es relevante. Pe- 1+2+2
1 + 2 + 2 2+1+2
ro aun as. . . Veanse a la derecha algunas par-
2+2+1
ticiones del entero 5. No muy alentador. No  
2+3
parece sencillo encontrar el diccionario entre 2 + 3
3+2
estas dos cuestiones, pues el n umero de com-
posiciones que corresponde a cada particion depende (y no queda claro de que manera) de la
partici
on en s.

(versi
on preliminar 26 de septiembre de 2010)
3.3. Particiones y descomposiciones 175

B. Diagramas de Ferrers y recursi


on
Los llamados diagramas de Ferrers32 son, como 9 = 1 + 3 + 5
veremos, una manera muy u til y visual de representar,
analizar y manipular las particiones de n. Se trata, sim-
plemente, de dibujar tantas las como sumandos tenga 9 = 1 + 2 + 3 + 3
la particion y en cada la colocar tantos smbolos (diga-

mos ) como nos diga el tama no del sumando en cuesti on
(los dibujaremos en orden decreciente de tama nos). A la
derecha mostramos los diagramas de Ferrers de sendas particiones. El primer resultado, que
sera la clave en los que vendr
an despues, es el siguiente:
Teorema 3.4 Dado n 1 y un entero 1 k n,
p(n | con no m
as de k partes) = p(n + k | con exactamente k partes).
La cantidad de la derecha es lo que hemos dado en llamar pk (n + k).
Demostracio n. Vamos a establecer una biyeccion entre los dos conjuntos de particiones.
Si tenemos una partici on de n + k con k partes, su diagrama de



Ferrers tendra k las (y n + k smbolos en total). Si borramos la


primera columna, obtenemos el diagrama de Ferrers de una parti-

k las
cion de n (hemos borrado k smbolos ) que tiene, a lo sumo, k



partes (el caso extremo sera aquel en el que no hubiera unos en la

partici
on, de forma que al eliminar la primera columna no haramos

desaparecer la alguna).
En el otro sentido, dada una particion de n con no m as de k partes, al a
nadir una primera
columna de k smbolos, obtenemos una partici on de n + k con exactamente k partes. 
Esta sencilla observacion nos permite establecer nuestra primera regla recursiva.
Teorema 3.5 (primera regla de recurrencia) Dados n 1 y 1 k n,

k
pk (n) = pj (n k) .
j=1

n. Del teorema 3.4 sabemos que


Demostracio
pk (n) = p(n | k partes) = p(n k | con no mas de k partes) .
Y si clasicamos las particiones de nk con no mas de k partes seg
un el n
umero de sumandos
de que consten, terminamos la demostracion:

k
k
pk (n) = p(n k | exactamente j partes) = pj (n k) .
j=1 j=1 
32
En honor del matem atico britanico Norman Macleod Ferrers (1829-1903), quien parece ser que fue el pri-
mero en utilizarlos para el an alisis de las particiones de un entero. Uno se puede imaginar a Ferrers trabajando
en la cafetera de la esquina, pintando diagramas, para luego alardear de sus conocimientos matem aticos ante
los colegas quienes, un momento despues, se dan la vuelta y se ponen a dibujar crucecitas al tun-t un.

(versi
on preliminar 26 de septiembre de 2010)
176 Captulo 3. Las estructuras ba
sicas de la Combinatoria

Note el lector que, pese a su aparatoso aspecto, la identidad anterior es una regla de
recurrencia que permite calcular el valor de pk (n) si conocemos ciertos valores del n
umero de
ametros mas bajos (particiones de n k y n
particiones con par umero de sumandos hasta k).
Para completar el analisis, necesitaremos los siguientes valores frontera:
k = 1 supone partir n en un u nico sumando. Solo hay una manera de hacerlo, claro,
luego p1 (n) = 1, para cada n.
El caso k = n exige partir n en n sumandos. De nuevo hay una u
nica manera de hacerlo,
sumar n unos. Luego pn (n) = 1.
Ahora ya podemos ir generando todos los valores de pk (n), disponiendolos como en la gura
(sumando por las obtenemos los correspondientes p(n)):
k=1 k=2 k=3 k=4 k=5 k=6 k=7 k=8 k=9 k=10 k=11 k=12 k=13 k=14

n=1 1 p(1) = 1

n=2 1 1 p(2) = 2

n=3 1 1 1 p(3) = 3

n=4 1 2 1 1 p(4) = 5

n=5 1 2 2 1 1 p(5) = 7

n=6 1 3 3 2 1 1 p(6) = 11

n=7 1 3 4 3 2 1 1 p(7) = 15

n=8 1 4 5 5 3 2 1 1 p(8) = 22

n=9 1 4 7 6 5 3 2 1 1 p(9) = 30

n = 10 1 5 8 9 7 5 3 2 1 1 p(10) = 42

n = 11 1 5 10 11 10 7 5 3 2 1 1 p(11) = 56

n = 12 1 6 12 15 13 11 7 5 3 2 1 1 p(12) = 77

n = 13 1 6 14 18 18 14 11 7 5 3 2 1 1 p(13) = 101

n = 14 1 7 16 23 23 20 15 11 7 5 3 2 1 1 p(14) = 135

El tablero anterior se ha ido generando columna k


con aplicaciones sucesivas de la regla de p1 (n k) p2 (n k) pk (n k) la n k
recurrencia, que interpretamos gr aca-
  
mente en el esquema de la derecha: pa-
ra calcular pk (n) (la n y columna k)
sumaremos los valores de las casillas
que esten en las primeras k columnas R pk (n) la n
de la la n k. Convendr a el lector
que el uso de esta regla de recurrencia no es muy comodo. Hay una manera alternativa, y
quiz
as mas sencilla, de escribirla. El siguiente ejemplo nos indica el camino.

(versi
on preliminar 26 de septiembre de 2010)
3.3. Particiones y descomposiciones 177

Ejemplo 3.3.4 Analicemos las p3 (10) = 8 particiones del entero 10 con tres partes.
A la derecha mostramos las 8 particiones posibles. En las cuatro 1+1+8 2+2+6
primeras, las que tienen unos, podemos quitar estos sumandos 1 1+2+7 2+3+5
a cada una de ellas para obtener particiones de 9 con u
nicamente 1+3+6 2+4+4
dos partes (una menos que la de partida). Para las cuatro de la 1 + 4 + 5 3+3+4
derecha, las que no tienen unos, podemos quitar, en cada una de ellas, un 1 a cada uno de los
sumandos, para obtener particiones del entero 10 3 = 7 que siguen teniendo tres partes.
El argumento del ejemplo anterior prueba que p3 (10) = p2 (9) + p3 (7). Un resultado que
podemos generalizar:
Teorema 3.6 (segunda regla de recurrencia) Dado n 1 y un entero k entre 1 y n,

pk (n) = pk1 (n 1) + pk (n k)

Demostracio n. Observemos primero la interpretacion columna k


graca de esta recurrencia (sobre la tabla de la p agina pk (n k) la n k
anterior); es la que aparece en la gura de la derecha. Si el
lector observa el esquema de la primera regla de recurren-
cia, notara que esta segunda regla se deduce directamente
de aquella, pues el valor de pk1 (n 1) es la suma de los
pj (n k) de ndices j menores que k. M as formalmente,
pk1 (n 1)

k
k1
?
pk (n) = pj (n k) = pk (n k) + pj (n k) j
pk (n) la n
j=1 j=1


k1
 
= pk (n k) + pj (n 1) (k 1) = pk (n k) + pk1 (n 1) ,
j=1

donde hemos utilizado, en dos ocasiones, la regla de recurrencia del teorema 3.5. Animamos
al lector a que se entretenga probando el resultado directamente a partir de los diagramas
de Ferrers, distinguiendo entre las particiones de n con k partes que contengan unos y las
que no los contengan.
Veamos una u ltima aplicaci on de estos diagramas de Ferrers. Partimos de la simple ob-
servacion de que si en el diagrama de una partici on de n intercambiamos las por columnas,
obtenemos de nuevo una partici on de n, porque no alteramos el n umero de smbolos (en
ocasiones, por cierto, la particion que obtenemos con este procedimiento puede coincidir con
la de partida, vease el ejercicio 3.3.10).
Hagamoslo, por ejemplo, para la parti-
cion de n = 18 codicada como [1 2 32 4 5],

que tiene seis partes y cuya parte mayor es
un 5. Si ahora intercambiamos las por co-

lumnas, obtenemos una partici on de 18 con
cinco partes y cuya parte mayor es 6. En concreto, la particion [1 2 4 5 6]. A la derecha repre-
sentamos los diagramas de Ferrers de ambas particiones.

(versi
on preliminar 26 de septiembre de 2010)
178 Captulo 3. Las estructuras ba
sicas de la Combinatoria

Si en una particion intercambiamos las por columnas, obtenemos su particion conju-


gada  . Las particiones y  tienen intercambiados los papeles del numero de partes y el
tamano de la parte mayor (como ocurra en el ejemplo de la particion de 18). De hecho, la
transformacion  es una biyeccion entre las particiones de n que tienen k partes y las
particiones de n cuyo mayor sumando es k, como se recoge en el siguiente resultado:
Teorema 3.7 Dados unos enteros positivos n y k,
p(n | su mayor parte es k) = p(n | k partes) = pk (n) .
Y, por tanto,
teorema 3.4
p(n | su mayor parte es k) = p(n | no m
as de k partes) = pk (n + k).

B. Estimaciones de tama
no
Ya tenemos un procedimiento ecaz para calcular los valores de pk (n), y por ende, los
de p(n). Ahora nos preguntamos por el tama no de uno cualquiera de estos n umeros, en
especial cuando n es muy grande. La estimacion asint
otica de estas cantidades es un problema
extremadamente sutil, sobre el que volveremos en la seccion 13.2, ya con el lenguaje de las
funciones generatrices, y al que aqu haremos una primera aproximaci on.
Como primer intento, volvemos a la comparaci on (vease el principio de la seccion) entre
particiones y composiciones de n. Fijados n y k, al menos hay tantas composiciones como
particiones (recordemos que en las composiciones cuenta el orden). Por ejemplo, para n = 3
y k = 2, hay una particion (1 + 2) y dos composiciones (1 + 2 y 2 + 1). En general,
! "
n1
pk (n) #{composiciones de n con k sumandos} = .
k1
Estimacion que podemos mejorar con un argumento m as no. N
otese que, por ejemplo,
a la partici
on 2 + 3 le corresponden tantas composiciones (dos) como permutaciones de los
sumandos, porque todos los sumandos son distintos. Precisemos esta idea. Observese que
cada particion de n con exactamente k partes se corresponde con una solucion de

x1 + x2 + + xk = n
()
1 x1 x2 xk
Escribimos ordenados (por ejemplo de menor a mayor) los k terminos para evitar, justamente,
escribir la misma particion varias veces. Quizas el lector recuerde ahora, algo esperanzado con
la posibilidad de ahorrarse nuevos c alculos, las tecnicas y resultados del an
alisis de ecuaciones
diof anticas que hicimos en la subseccion 3.1.3. Sentimos decepcionarle: el tipo de restricciones
sobre las variables que all tenamos (xj aj , donde los n umeros aj son fijos) no son como
las que afrontamos ahora, y el an alisis de la cuestion no sera tan simple como entonces. A un
as, sigamos adelante. Si ahora hacemos el cambio de variables
2i = xi + (i 1) ,
x para cada 1 i k ,
los n i mantienen el mismo orden que tenan los xi , pero son ahora todos distintos
umeros x
(los hemos separado).

(versi
on preliminar 26 de septiembre de 2010)
3.3. Particiones y descomposiciones 179

La suma de estos nuevos n


umeros vale

k
k
k
k
k1
k(k 1)
x
i = (xi + i 1) = xi + (i 1) = n + j =n+ .
2
i=1 i=1 i=1 i=1 j=0

As que pk (n), el n
umero de soluciones del problema (), es tambien el n
umero de soluciones de

21 + x
x 22 + + x
2k = n + k(k 1)/2
()
1x 21 < x 22 < < x
2k
Por ejemplo, del entero 6 hay tantas particiones con tres sumandos como soluciones tenga

x1 + x2 + x3 = 6
1 x1 x2 x3
Debajo de estas lneas, a la izquierda, mostramos tres de estas particiones. A su derecha
2i (al valor de x3 hay que sumarle 2, al de x2 le
escribimos su traduccion en terminos de las x
sumamos 1 y dejamos x1 tal como esta):
x1 x2 x3 21
x 22
x 23
x

6=1 + 1 + 4 9=1 + 2 + 6
6=1 + 2 + 3 9=1 + 3 + 5
6=2 + 2 + 2 9=2 + 3 + 4
2i son todos distintos, cada permutacion de una lista soluci
Pero ahora, como los x on (2 2k )
xi , . . . , x
genera una composicion distinta de n + k(k 1)/2 con tama no k. En el ejemplo, la partici on
de 9 dada por 1 + 2 + 6 da lugar a las 3! = 6 composiciones de 9 siguientes:
1 + 2 + 6, 1 + 6 + 2, 2 + 1 + 6, 2 + 6 + 1, 6 + 1 + 2, 6 + 2 + 1.
Pero por supuesto no estan todas (por ejemplo, la composicion de 9 dada por 3 + 3 + 3 no la
podemos obtener de esta manera), as que
! " ! "
n + k(k1) 1 1 n + k(k1) 1
k! pk (n) 2 = pk (n) 2 .
k1 k! k1
Dejamos que el lector compruebe, para lo que quiz
 as le sera u
til revisar el ejercicio 3.1.3, que
esta estimacion mejora la inicial, pk (n) n1
k1 , esencialmente en un factor 1/k! extra.
Para completar este primer analisis del tama no de pk (n), buscaremos ahora cotas por
debajo. Lo vamos a hacer con el argumento m as simple posible: dada una partici on de n,
podemos permutar sus k sumandos para obtener composiciones (aunque, por supuesto, no
todas ellas seran distintas). Por ejemplo, la particion 5 = 1 + 2 + 2, que tiene tres sumandos,
dara lugar, en principio, a 3! = 6 posibles ordenaciones de los sumandos de las que, en
realidad, s
olo hay tres composiciones distintas, 1 + 2 + 2, 2 + 1 + 2 y 2 + 2 + 1. No es una
estimacion muy precisa, pero va justo en el sentido que queremos:
! " ! "
n1 1 n1
k! pk (n) = pk (n) .
k1 k! k 1

(versi
on preliminar 26 de septiembre de 2010)
180 Captulo 3. Las estructuras ba
sicas de la Combinatoria

Ahora reunimos toda la informaci


on y concluimos que
! " ! "
1 n1 1 n + k(k1) 1
pk (n) 2 .
k! k 1 k! k1
Estas acotaciones, validas para todo n y para cada k = 1, . . . , n, aunque no sean muy precisas,
son sucientes para obtener, utilizando la formula de Stirling, que, para k jo,
nk1
pk (n) cuando n .
k! (k 1)!
Consulte el lector concienzudo el ejercicio 3.1.3.

C. Particiones con todos los sumandos distintos


De entre las m
ultiples particiones con restricciones que podemos considerar, unas espe-
cialmente relevantes son aquellas que tienen todas sus partes (sus sumandos) distintos. Los
primeros casos son sencillos de determinar:
n particiones con sumandos distintos n
umero
1 1 1
2 2 1
3 1+2, 3 2
4 1+3, 4 2
5 1+4, 2+3, 5 3
6 1+5, 2+4, 1+2+3, 6 4
7 1+6, 2+5, 3+4, 1+2+4, 7 5
8 1+7, 2+6, 3+5, 1+2+5, 1+3+4, 8 6
Observese que, para algunos valores de n (por ejemplo, 3, 4 y 6; pero no para 1, 2 o 5), la mitad
de estas particiones tienen un numero par de sumandos, y la otra mitad tiene un n umero
impar de partes. Consideremos entonces, para cada n 1, las dos siguientes cantidades:
ppar (n) = p(n | con un n
umero par de partes, todas distintas) ;
pimpar (n) = p(n | con un n
umero impar de partes, todas distintas) .
Nos interesa la diferencia de estos dos n
umeros, que es 0 en los casos vistos de n = 3, 4, 6,
y 1 en los demas casos enumerados. La respuesta es de lo mas sorprendente:
Teorema 3.8

(1)m , si n = m
2 (3m 1) para cierto entero m,
ppar (n) pimpar (n) =
0, en el resto de los casos.
Antes de proceder a la demostracion del teorema, y para insistir en el asombro que produce
su enunciado, se umeros m
nalemos que los n 2 (3m 1), cuyos primeros valores son
m=1 m=2 m=3 m=4 m=5 m=6 m=7
m (3m 1)/2 1 5 12 22 35 51 70
m (3m + 1)/2 2 7 15 26 40 57 77
son los llamados numeros pentagonales (al menos los de la primera la), de los que ya
hablamos en el ejercicio 1.2.3.

(versi
on preliminar 26 de septiembre de 2010)
3.3. Particiones y descomposiciones 181

n. Consideremos una partici 


Demostracio on de n con
=3
todas sus partes distintas. Llamaremos () al tama no
del menor sumando de la partici on. Empezando por el
mayor sumando, determinamos cuantas partes consecu-
tivas se diferencian de la anterior en exactamente 1. A   
ese n
umero lo llamaremos (). Observese, en el ejemplo =2
de la derecha, que = 3 porque las tres partes mayores dieren en una unidad, pero ya no la
cuarta. Vamos ahora a denir una regla, o m as bien dos, que cambian la paridad del n
umero
de sumandos que tiene una partici on de n con partes distintas.

Regla 1. Supongamos que la partici on cumple que () (). Construimos la partici


on

con la siguiente receta: quitamos el menor sumando de la particion y a
nadimos sus
smbolos a las partes mayores de la partici
on:


=3

  
=2

on de n cuyas partes siguen siendo todas distintas; pero que


Obtenemos as una partici
tiene un sumando menos que los que tuviera . Si, por ejemplo, tiene un numero par de
partes, tendr
a un n
umero impar de partes (y viceversa).

Regla 2. Supongamos que () > (). Quitamos ahora los u ltimos smbolos de las
mayores partes y los colocamos como un nuevo sumando (que sera el mas peque
no):

0
=2

-
  
=3

Observese que ahora tiene un sumando m


as que .
Podra parecer que la transformaci on (Regla 1 o Regla 2 en funcion de la estruc-
tura de la partici
on ) es una biyeccion entre las particiones de n con partes distintas y con
un n
umero par de sumandos y las que tienen n umero impar de sumandos.
Esto, por cierto, no es lo que armaba el teorema. Y es
que hay un par de casos en los que las reglas anteriores
no son aplicables. Veamos el primero en un ejemplo. Su-
pongamos que tenemos una partici on del entero 35 (que,
como el lector ya habra advertido, es un n umero penta-
gonal) con todas sus partes distintas y = , digamos
iguales a 5, como en el esquema de la derecha.

(versi
on preliminar 26 de septiembre de 2010)
182 Captulo 3. Las estructuras ba
sicas de la Combinatoria

Como = = 5, deberamos aplicar la primera regla. Pero no, la regla no est a denida en
este caso, pues no podemos quitar las 5 aspas del ultimo sumando y a nadrselos a los restantes
sumandos (nos faltara uno!). Esta situaci
on se presentara siempre que tengamos = = m
y haya un solapamiento como el que indica el dibujo anterior. Pero ese solapamiento se
produce porque hay exactamente m partes, que son m, m+1, . . . , 2m1. As que n deber a ser
de la forma

m1
m1
(m 1) m m
n= (m + j) = m2 + j = m2 + = (3m 1) ,
2 2
j=0 j=1

justamente un n umero pentagonal (35 es el numero pentagonal correspondiente a m = 5).


Consideremos ahora el entero 26 y una particion suya con todas los sumandos distintos y
> , como la que mostramos bajo estas lneas. Toca aplicar la Regla 2, y con ella obtenemos
la partici
on que aparece a la derecha.

Pero, cuidado!, la partici


on resultante no tiene todos los sumandos distintos, algo que
estamos exigiendo continuamente. As que, en este caso, no podemos aplicar la Regla 2.
De nuevo podemos determinar cu ando nos encontramos en esta situacion: siempre que
= # partes + 1 y que esas partes sean m + 1, . . . , 2m. Es decir, cuando n sea de la forma

m
m
n (m + 1) m
n= (m + j) = m2 + j = m2 + = (3m + 1) ,
2 2
j=1 j=1

que es la otra familia de n


umeros pentagonales.
Queda como ejercicio 3.3.11 para el lector la comprobacion de que si n es de la forma
m(3m 1)/2, entonces ppar (n) y pimpar (n) dieren en (1)m . En el resto de los casos, como
ya hemos comprobado, la transformaci on es una biyeccion entre el conjunto de las
particiones de n con un n umero par de sumandos distintos y el de las particiones de n con
un numero impar de sumandos distintos. 
Obtendremos una nueva demostraci on, quiz
as mas transparente, de este resultado cuando
revisemos todas estas cuestiones provistos ya del lenguaje de las funciones generatrices, en
la seccion 13.2. Veremos all (asombro ya desbocado) que este peculiar resultado resulta
ser de enorme utilidad para obtener un procedimiento ecaz para calcular el valor de p(n).
Y, puestos ya en este plan decididamente anticipativo, digamos tambien que las funciones
generatrices nos permitiran probar resultados como el siguiente (vease el teorema 13.1):

p(n | partes impares) = p(n | partes distintas) ,

nada f
acil de demostrar con diagrama de Ferrers. Dejemos, pues, las particiones en este punto,
hasta disponer de las herramientas necesarias para seguir con su tratamiento.

(versi
on preliminar 26 de septiembre de 2010)
3.3. Particiones y descomposiciones 183

3.3
EJERCICIOS DE LA SECCION

3.3.1 Compruebese que ! " ! "! "


n 1 n n2
S(n, n 2) = + .
3 2 2 2
Hallese una f aloga para S(n, n 3). Obtengase tambien una f
ormula an ormula para S(n, 3).
n
n ! "
3.3.2 Pruebese que S(n + 1, m + 1) = S(k, m).
k
k=m

3.3.3 El n umero de particiones de {1, . . . , n} en bloques no vacos:


umero de Bell B(n) cuenta el n
n

B(n) = S(n, k)
k=1

(vease una interpretacion alternativa en la subsecci


on 3.5.1). Compruebese que, si definimos B(0) = 1,
se verifica la siguiente relaci
on de recurrencia:
n ! " !n 1"
n1
n1
B(n) = B(n j) , esto es, B(n) = B(k) para cada n 1
j=1
j1 k
k=0

3.3.4 Consideremos ahora el n umero de particiones del conjunto {1, . . . , n} en bloques no vacos,
de manera que los bloques van numerados (el orden dentro de los bloques sigue siendo irrelevante). A
umero lo llamaremos n-esimo n
este n umero de Bell ordenado, B(n). 2 Compruebese que
n

2
B(n) = S(n, k) k! .
k=1

2
Pruebese que, si definimos B(0) = 1, estos n
umeros verifican la siguiente relaci
on de recurrencia:
n
n ! " !n"
n1
2
B(n) = 2 2
B(n j) para cada n 1, o, lo que es lo mismo, B(n) = 2
B(k) .
j=1
j k
k=0

3.3.5 Una cierta competici on consta de n equipos. Al final del torneo, los equipos quedan clasificados
en funci
on de los resultados de los partidos. Cu
antas posibles clasificaciones finales hay si se permite
que dos o mas equipos acaben empatados?
3.3.6 Pruebese que

(a) z(n, k) = |s(n, k)| = n! para cada n 1; (b) s(n, k) = 0 para cada n 2.
k1 k1 k1

3.3.7 Pruebese que


!
nk+1
n
" !
nk+1
n
"
(a) z(n + 1, k) = j! z(n j, k 1) ; (b) s(n + 1, k) = (1)j j! s(n j, k 1) .
j=0
j j=0
j

3.3.8 Pruebese, por inducci


on y utilizando la regla de recurrencia para los s(n, k), que

x(x 1) (x n + 1) = s(n, k) xk .
k0

(versi
on preliminar 26 de septiembre de 2010)
184 Captulo 3. Las estructuras ba
sicas de la Combinatoria

3.3.9 En este ejercicio discutimos la relaci


on entre los n
umeros de Stirling de primera y segunda
especie. Consideremos la base usual de los polinomios B1 = {1, x, x2 , x3 , x4 , x5 , . . . } y la base de los
factoriales decrecientes
B2 = {1, x, x(x 1), x(x 1)(x 2), x(x 1)(x 2)(x 3), x(x 1)(x 2)(x 3)(x 4), . . . }.
(a) Compruebese que los primeros elementos de B1 es escriben, en terminos de los de B2 , como sigue:
1 =1
x =x
x2 = x + x(x 1)
x3 = x + 3x(x 1) + x(x 1)(x 2)
x4 = x + 7x(x 1) + 6x(x 1)(x 2) + x(x 1)(x 2)(x 3)
N
otese la presencia de los S(n, k) en los terminos de la derecha. Verifquese, en sentido contrario, que
1=1
x=x
x(x 1) = x + x2
x(x 1)(x 2) = 2x 3x2 + x3
x(x 1)(x 2)(x 3) = 6x + 11x2 6x3 + x4
Observese que los coeficientes que aparecen son ahora los numeros s(n, k).
(b) El paso de una base a otra se puede codificar matricialmente. Sea S la matriz (infinita) cuyas
filas y columnas se indexan de 0 en adelante, y que en la fila n (n 0) y en la columna k (k 0)
tiene como registro el numero de Stirling de segunda especie S(n, k). Sea s la matriz an
aloga para los
numeros de Stirling de primera especie, s(n, k). Recuerdese que hemos definido s(0, 0) = 1 = S(0, 0).
Supongamos que el polinomio p(x) tiene coeficientes (k ) en la base usual y coeficientes (k ) en
la base de los factoriales decrecientes. Esto es,

p(x) = k xk = k x(x 1) (x k + 1)
k k

Compruebese que, si denotamos por el producto de matrices habitual,


(0 , 1 , . . . ) S = (0 , 1 , . . . ) y que (0 , 1 , . . . ) s = (0 , 1 , . . . ) ,
(c) Compruebese que S s = s S = I, donde I es la matriz identidad (infinita).
(d) Sean f y g son dos funciones definidas en N. Compruebese que
n
n

f (n) = s(n, k) g(k) g(n) = S(n, k) f (k) .
k=1 k=1

3.3.10 Si una partici on coincide con su conjugada, se dice, por supuesto, que es autoconjugada.
(a) Compruebese que, para los valores de n = 1, . . . , 16, hay el siguiente n
umero de particiones auto-
conjugadas: 1, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 4, 5.
(b) Pruebese que p(n|autoconjugadas) = p(n|con partes distintas e impares).
on del teorema 3.8 probando que si n = m(3m 1)/2, entonces
3.3.11 Completese la demostraci
ppar (n) pimpar (n) = (1)m .

(versi
on preliminar 26 de septiembre de 2010)
3.4. Distribuciones de bolas en cajas 185

3.4. Distribuciones de bolas en cajas


Una gran cantidad de cuestiones combinatorias pueden ser descritas y codicadas en
terminos de distribuciones de bolas en cajas. As que conviene tener a mano un vademecum
que incluya los principales casos, clasicados en funci on de si las bolas y las cajas son distin-
guibles o no (incluyendo, adem as, las restricciones mas habituales sobre la distribucion).
Las bolas seran los objetos que distribuiremos en las cajas, y supondremos que dentro de
las cajas el orden no es relevante. En los ejercicios de esta seccion hemos incluido, adem as,
algunas preguntas sobre distribuciones de bolas en tubos (cajas en cuyo interior el orden
sera tambien importante).
En todo lo que sigue, los parametros n y k seran enteros positivos. Usaremos los terminos
identicas y no numeradas cuando los objetos de interes (quizas las bolas, quizas las cajas)
sean indistinguibles. Cuando sean distinguibles, tambien utilizaremos los terminos numera-
das y distintas. Por ejemplo, cuando digamos que n cajas estan numeradas, querremos
signicar que les hemos asignado n umeros distintos de 1 a n.

A. Bolas id
enticas, cajas numeradas
Tenemos n bolas identicas, que queremos distribuir en k cajas numeradas. Veanse, en el
dibujo, las n bolas, dispuestas a ser introducidas en las cajas.

-
C1 C2 Ck C1 C2 Ck
A la derecha ya se ha hecho esa distribucion. Observese que, para determinar una de
estas distribuciones, basta decidir cu
antas bolas van en la caja 1, cu
antas en la 2, etc., puesto
que, como las bolas son indistinguibles, no tiene sentido preguntarse por que bolas van en
cada caja. As que una distribuci on de estas se puede codicar como una lista de n umeros
(x1 , . . . , xk ) cuya suma vale
x1 + + xk = n .
En principio, la unica restriccion sobre los xj es que sean enteros no negativos.
Esta cuestion sobre el n
umero de soluciones de ciertas ecuaciones diofanticas ya la anali-
zamos con detalle en la subseccion 3.1.3, en la que el lector encontrar a los argumentos que
justican las respuestas de este apartado. Los casos mas relevantes son:
si no permitimos que queden cajas vacas (esto es, si exigimos que xj 1). Observe-
se que si n < k, no hay ninguna distribuci on posible. Pero si n k, el numero de
distribuciones posibles es
! "
n1
para n k 1.
k1
En el caso general, en que permitimos que alguna caja pudiera quedar vaca, las res-
tricciones son xj 0. Entonces k puede tomar cualquier valor y la respuesta es
! "
n+k1
n 1 , k 1.
k1

(versi
on preliminar 26 de septiembre de 2010)
186 Captulo 3. Las estructuras ba
sicas de la Combinatoria

Otro tipo de restricciones para los xj (cotas por arriba y por debajo) fueron estudiadas en
la subseccion 3.1.3, y remitimos a ella al lector que pudiera estar interesado (vease tambien
el ejercicio 3.4.1).

B. Bolas y cajas numeradas


Consideremos ahora n bolas numeradas y k cajas numeradas. La cuestion que nos interesa
nuevamente es determinar de cuantas maneras se pueden distribuir las bolas en las cajas,
pero ahora s que podemos (y debemos) distinguir que bolas van en cada caja:

n
- 4
n 1
1 2 3 4 2 3 7
C1 C2 Ck C1 C2 Ck

Este es tambien una cuestion que ya hemos tratado ampliamente. Teniendo en cuenta
los ingredientes del problema, la mejor manera de codicar una distribuci on de estas es
mediante una lista de n posiciones, en cada una de las cuales puede ir, en principio, un
elemento cualquiera del conjunto {1, . . . , k}. En la posici
on j informamos de a que caja (un
numero entre 1 y k) ha ido la bola j.
En otros terminos, que tambien hemos considerado, son las aplicaciones de un conjunto
con n elementos en uno con k elementos. Los casos mas relevantes son:
si pueden quedar cajas vacas (esto es, si la lista es sin restricciones, o si queremos
contar todas las posibles aplicaciones), entonces k puede tomar cualquier valor y la
respuesta es
kn .
Si no permitimos cajas vacas (es decir, si en la lista deben aparecer todos los smbolos
de {1, . . . , k}, o bien si queremos contar las aplicaciones sobreyectivas), entonces n ha
de ser k y la respuesta es
k! S(n, k) ,
donde los S(n, k) son los n umeros de Stirling de segunda especie, a los que dedicamos la
subseccion 3.3.1 (all podr
a encontrar el lector f
ormulas explcitas para ellos, as como
la regla de recursi
on que permite calcularlos).
Supongamos ahora que nos interesa contar el n umero de distribuciones de n bolas
numeradas en cajas numeradas, de manera que ninguna de estas quede vaca, pero
cuando no jamos a priori el n umero de cajas. La respuesta es, entonces,

n
k! S(n, k) ,
k=1

una cantidad que recibe el nombre de n-esimo n umero de Bell ordenado, y que deno-

tamos por B(n). De estos n
umeros ya hablamos en el ejercicio 3.3.4.
Si exigimos que las bolas vayan en cajas distintas (lo que solo es posible si n k),
entonces la respuesta es
k(k 1) (k n + 1) .

(versi
on preliminar 26 de septiembre de 2010)
3.4. Distribuciones de bolas en cajas 187

Recordamos tambien que si tenemos una informaci on mucho m


as detallada, como es la de que
on de las n bolas en k cajas vayan aj bolas en la caja j, donde a1 + +ak = n,
en la distribuci
entonces la respuesta es (vease la subseccion 3.1.6) el coeciente multinomico
! "
n
.
a1 , . . . , ak

C. Bolas numeradas, cajas id


enticas
Tenemos n bolas numeradas, que quere- 3 7 6
mos distribuir en k cajas identicas. Estamos 8 9 -
5 6 7 2 8
partiendo un conjunto de n elementos en k 1 2 3 4 9
1 4 5
bloques. Junto a estas lneas exhibimos una
on de estas para n = 9 y k = 5. Dibujamos los bloques como montones desperdi-
distribuci
gados para insistir en la idea de que no est
an ordenados (no hay bloque 1, bloque 2, etc.).
Parece razonable suponer que los bloques sean no vacos33 . Entonces n ha de ser k y
la respuesta es, simplemente,
S(n, k) .
Si s
olo jamos n, el n
umero de bolas (numeradas), pero no el n umero de bloques, entonces
umero total de particiones del conjunto {1, . . . , n}, que conocemos como
la respuesta es el n
el n-esimo n
umero de Bell B(n):

n
B(n) = S(n, j) .
j=1

D. Bolas y cajas id
enticas
Tenemos n bolas y k cajas. Ahora no po-
demos distinguir entre las bolas ni entre las -
cajas. Vease en el dibujo una distribuci
on para
n = 9 y k = 6. Estas distribuciones se corres-
ponden con las particiones del entero n (revsese la subseccion 3.3.3). De nuevo suponemos
que las cajas no son vacas (vease den nuevo la nota al pie). Entonces, necesariamente n debe
ser k y la respuesta es el n umero de particiones de n con exactamente k partes,
pk (n) .
Si, como antes, no jamos el n
umero de cajas (el numero de partes de la particion), entonces
la respuesta es el n
umero total de particiones del entero n:

n
p(n) = pj (n) .
j=1

Conviene recordar que para estos n umeros pk (n) y p(n) no disponemos de unas f
ormulas
explcitas, aunque s reglas de recurrencia (recuerdese la subseccion 3.3.3).
33
Reexione, sin embargo, el lector sobre lo que ocurrira si permitieramos bloques vacos, que valores podra
tomar k y cual sera la respuesta en ese caso.

(versi
on preliminar 26 de septiembre de 2010)
188 Captulo 3. Las estructuras ba
sicas de la Combinatoria

3.4
EJERCICIOS DE LA SECCION

3.4.1 Clasifquense las distribuciones de n bolas identicas en k cajas numeradas en funci


on del
n
umero de cajas que vayan realmente llenas para recuperar la formula de Vandermonde (veanse, por
ejemplo, las p
aginas 110 y 131).
umero de formas de poner n bolas numeradas en k tubos numerados. El di
3.4.2 Sea f (n, k) el n ame-
tro del tubo es s
olo un poco mayor que el di
ametro de las bolas, de forma que podemos distinguir el
orden de las bolas dentro de cada tubo. Permitimos que algunos tubos queden vacos (as que k puede
tomar cualquier valor). Compruebese que

f (n, k) = k(k + 1) (k + n 1)

(a) por inducci


on en n, el numero de bolas;
(b) con un argumento combinatorio: una distribuci on de estas es una lista de n + k 1 posiciones en
las que situamos n smbolos distintos (las bolas), as como k 1 separadores identicos (que marcan
donde empieza cada tubo);
(c) suponiendo, por un momento, que las bolas son indistinguibles (de manera que los tubos se con-
vierten en cajas), para luego volver a la situaci
on original.
3.4.3 Queremos contar ahora las formas de distribuir n bolas numeradas en k tubos numerados, pero
donde no permitimos que queden tubos vacos (as que n k). Compruebese que la respuesta es ahora
! " ! "
n n1
k! f (n k, k) o, en otros terminos, n! .
k k1

3.4.4 Sea g(n, k) el n


umero de formas de distribuir n bolas numeradas en k tubos identicos, donde
no permitimos que queden tubos vacos (as que n k). Compruebese que
! "
n! n 1
g(n, k) = .
k! k 1

Ded
uzcase que, si permitimos tubos vacos, la respuesta es
mn(n,k)
! "
n! n 1
.
j=1
j! j 1

3.4.5 Compruebese, finalmente, que si las bolas no est an numeradas (da igual si los tubos lo est
an
o no), los tubos son, simplemente, cajas (y se aplican los resultados correspondientes).

(versi
on preliminar 26 de septiembre de 2010)
7. N ETWORK F LOW I

max-flow and min-cut problems


Ford-Fulkerson algorithm
max-flow min-cut theorem
capacity-scaling algorithm
shortest augmenting paths
blocking-flow algorithm
unit-capacity simple networks
Lecture slides by Kevin Wayne
Copyright 2005 Pearson-Addison Wesley
http://www.cs.princeton.edu/~wayne/kleinberg-tardos

Last updated on Apr 21, 2013 7:35 PM


7. N ETWORK F LOW I

max-flow and min-cut problems


Ford-Fulkerson algorithm
max-flow min-cut theorem
capacity-scaling algorithm
shortest augmenting paths
blocking-flow algorithm
unit-capacity simple networks
SECTION 7.1
Flow network

Abstraction for material flowing through the edges.


Digraph G = (V, E) with source s V and sink t V.
Nonnegative integer capacity c(e) for each e E. no parallel edges
no edge enters s
no edge leaves t

capacity

4 15 15 10
10

s 5 8 10 t

15
4 6 15 10

16
3
Minimum cut problem

Def. A st-cut (cut) is a partition (A, B) of the vertices with s A and t B.

Def. Its capacity is the sum of the capacities of the edges from A to B.

cap( A, B) = c(e)
e out of A

10

s 5 t

15

capacity = 10 + 5 + 15 = 30
4
Minimum cut problem

Def. A st-cut (cut) is a partition (A, B) of the vertices with s A and t B.

Def. Its capacity is the sum of the capacities of the edges from A to B.

cap( A, B) = c(e)
e out of A

10

s 8 t

don't count edges


from B to A

16
capacity = 10 + 8 + 16 = 34
5
Minimum cut problem

Def. A st-cut (cut) is a partition (A, B) of the vertices with s A and t B.

Def. Its capacity is the sum of the capacities of the edges from A to B.

cap( A, B) = c(e)
e out of A

Min-cut problem. Find a cut of minimum capacity.


10

s 8 t

10

capacity = 10 + 8 + 10 = 28
6
Maximum flow problem

Def. An st-flow (flow) f is a function that satisfies:


For each e E : 0 f (e) c(e) [capacity]
For each v V {s, t} : f (e) = f (e)
e in to v e out of v
[flow conservation]


flow capacity

inflow at v = 5 + 5 + 0 = 10
5/9 outflow at v = 10 + 0 = 10

5 5
10 0/4 /1 0 / 15 /
10
/ 5
10

s 5/5 5/8 v 10 / 10 t

10
/ 0 0 / 15 10
15 0/4 /6 /
10

10 / 16
7
Maximum flow problem

Def. An st-flow (flow) f is a function that satisfies:


For each e E : 0 f (e) c(e) [capacity]
For each v V {s, t} : f (e) = f (e)
e in to v e out of v
[flow conservation]

Def. The value of aflow f is:v(val(


f ) f=) = f (e) .
e out of s


5/9

5 5
10 0/4 /1 0 / 15 /
10
/ 5
10

s 5/5 5/8 10 / 10 t

10
/ 0 0 / 15 10
15 0/4 /6 /
10

value = 5 + 10 + 10 = 25
10 / 16
8
Maximum flow problem

Def. An st-flow (flow) f is a function that satisfies:


For each e E : 0 f (e) c(e) [capacity]
For each v V {s, t} : f (e) = f (e)
e in to v e out of v
[flow conservation]

Def. The value of aflow f is:v(val(


f ) f=) = f (e) .
e out of s

Max-flow problem. Find a flow of maximum value.


8/9

2 8
10 0/4 /1 0 / 15 /
10
/ 5
10

s 5/5 8/8 10 / 10 t

13
/ 3 0 / 15 10
15 0/4 /6 /
10

value = 8 + 10 + 10 = 28
13 / 16
9
7. N ETWORK F LOW I

max-flow and min-cut problems


Ford-Fulkerson algorithm
max-flow min-cut theorem
capacity-scaling algorithm
shortest augmenting paths
blocking-flow algorithm
unit-capacity simple networks
SECTION 7.1
Towards a max-flow algorithm

Greedy algorithm.
Start with f (e) = 0 for all edge e E.
Find an st path P where each edge has f (e) < c(e).
Augment flow along path P.
Repeat until you get stuck.

flow capacity

network G 0/4

0
0 /
10 0/2 /8 0/6 10
/
0 value of flow

s 0 / 10 0/9 0 / 10 t 0

11
Towards a max-flow algorithm

Greedy algorithm.
Start with f (e) = 0 for all edge e E.
Find an st path P where each edge has f (e) < c(e).
Augment flow along path P.
Repeat until you get stuck.

network G 0/4

8
0
0 /
8 10 0/2 /8 0/6 10
/
0

8
s 0 / 10 0/9
0 / 10 t 0 +8=8

12
Towards a max-flow algorithm

Greedy algorithm.
Start with f (e) = 0 for all edge e E.
Find an st path P where each edge has f (e) < c(e).
Augment flow along path P.
Repeat until you get stuck.

network G 0/4

0
0 2
0/2 8 0/6 /
10 / 1 /8 10
8

2 2
s 0 / 10
0/9
8 / 10 t 8 + 2 = 10

13
Towards a max-flow algorithm

Greedy algorithm.
Start with f (e) = 0 for all edge e E.
Find an st path P where each edge has f (e) < c(e).
Augment flow along path P.
Repeat until you get stuck.

network G 0/4

6
0
10 2/2 8
/8 6
0/6 /
/ 10
10

6 8
s 0 / 10
2/9
10 / 10 t 10 + 6 = 16

14
Towards a max-flow algorithm

Greedy algorithm.
Start with f (e) = 0 for all edge e E.
Find an st path P where each edge has f (e) < c(e).
Augment flow along path P.
Repeat until you get stuck.

ending flow value = 16

network G 0/4

6
10 2/2 8
/8 6/6 /
/ 10
10

s 6 / 10 8/9 10 / 10 t 16

15
Towards a max-flow algorithm

Greedy algorithm.
Start with f (e) = 0 for all edge e E.
Find an st path P where each edge has f (e) < c(e).
Augment flow along path P.
Repeat until you get stuck.

but max-flow value = 19

network G 3/4

9
10 0/2 7
/8 6/6 /
/ 10
10

s 9 / 10 9/9 10 / 10 t 19

16
Residual graph

Original edge: e = (u, v) E. original graph G


Flow f (e). u 6 / 17 v
Capacity c(e).
flow capacity

Residual edge.
"Undo" flow sent.
e = (u, v) and eR = (v, u). residual graph Gf residual
Residual capacity: capacity

u 11 v
c(e) f (e) if e E 6
c f (e) =
f (e) if e R E

Residual graph: Gf = (V, Ef ).


Residual edges with positive residual capacity. where flow on a reverse edge

negates flow on a forward edge


Ef = {e : f (e) < c(e)} {eR : f (e) > 0}.
Key property: f ' is a flow in Gf iff f + f ' is a flow in G.
17
Augmenting path

Def. An augmenting path is a simple st path P in the residual graph Gf .

Def. The bottleneck capacity of an augmenting P is the minimum


residual capacity of any edge in P.

Key property. Let f be a flow and let P be an augmenting path in Gf .


Then f ' is a flow and val( f ' ) = val( f ) + bottleneck(Gf, P).

AUGMENT (f, c, P)
________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

b bottleneck capacity of path P.


FOREACH edge e P
IF (e E ) f (e) f (e) + b.
ELSE f (eR) f (eR) b.
RETURN f.
________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

18
Ford-Fulkerson algorithm

Ford-Fulkerson augmenting path algorithm.


Start with f (e) = 0 for all edge e E.
Find an augmenting path P in the residual graph Gf .
Augment flow along path P.
Repeat until you get stuck.

FORD-FULKERSON (G, s, t, c)
_________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

FOREACH edge e E : f (e) 0.


Gf residual graph.
WHILE (there exists an augmenting path P in Gf )
f AUGMENT (f, c, P).
Update Gf.
RETURN f.
}
_________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

19
Ford-Fulkerson algorithm demo

network G flow capacity

0/4

0
0 /
10 0/2 /8 0/6 10
/
0 value of flow

s 0 / 10 0/9 0 / 10 t 0

residual graph Gf
4
residual capacity

8 10
2 6
10

s 10 9 10 t

20
Ford-Fulkerson algorithm demo

network G

0/4

8
0
0 /
8 10 0/2 /8 0/6 10
/
0

8
s 0 / 10 0/9
0 / 10 t 0 +8=8

residual graph Gf
4

8 10
2 6
10

s 10 9 10 t

21
Ford-Fulkerson algorithm demo

network G

0/4

0
0 2
0/2 8 0/6 /
10 / 1 /8 10
8

2 2
s 0 / 10
0/9
8 / 10 t 8 + 2 = 10

residual graph Gf
4

8 10
2 8 6
2

s 10 9 2 t

8 22
Ford-Fulkerson algorithm demo

network G

0/4

6

0
10 2/2 8
/8 6
0/6 /
/ 10
10

6 8
s
0 / 10
2/9 10 / 10 t 10 + 6 = 16

residual graph Gf
4

8 10
2 6
10

s 10 7 10 t

2 23
Ford-Fulkerson algorithm demo

network G
2

0/4

8

6
10 0
2/2 8
/8 6/6 /
/ 10
10

8
s
6 / 10 8/9 10 / 10 t 16 + 2 = 18

residual graph Gf
4

8 4
2 6
10

s 4 1 10 t

6 8 24
Ford-Fulkerson algorithm demo

network G
3

2/4

9
7
8
10 0/2

8
/8 6/6 /
/ 10
10

9 9
s
8 / 10
8/9 10 / 10 t 18 + 1 = 19

2
residual graph Gf
2

8 2
2 6
10

s 2 1 10 t

8 8 25
Ford-Fulkerson algorithm demo

network G

3/4

9
10 0/2 7
/8 6/6 /
/ 10 max flow
min cut
10

s 9 / 10 9/9 10 / 10 t 19

3
residual graph Gf
1

nodes reachable from s 7 1


2 6
10
1

s 1 9 10 t

9 26
7. N ETWORK F LOW I

max-flow and min-cut problems


Ford-Fulkerson algorithm
max-flow min-cut theorem
capacity-scaling algorithm
shortest augmenting paths
blocking-flow algorithm
unit-capacity simple networks
SECTION 7.2
Relationship between flows and cuts

Flow value lemma. Let f be any flow and let (A, B) be any cut. Then, the net
flow across (A, B) equals the value of f.

f (e) f (e) = v( f )
e out of A e in to A

net flow across cut = 5 + 10 + 10 = 25

5/9

5 5
10 0/4 /1 0 / 15 /
10
/ 5
10

s 5/5 5/8 10 / 10 t value of flow = 25

10
/ 0 0 / 15 10
15 0/4 /6 /
10

10 / 16
28
Relationship between flows and cuts

Flow value lemma. Let f be any flow and let (A, B) be any cut. Then, the net
flow across (A, B) equals the value of f.

f (e) f (e) = v( f )
e out of A e in to A

net flow across cut = 10 + 5 + 10 = 25

5/9

5 5
10 0/4 /1 0 / 15 /
10
/ 5
10

s 5/5 5/8 10 / 10 t value of flow = 25

10
/ 0 0 / 15 10
15 0/4 /6 /
10

10 / 16
29
Relationship between flows and cuts

Flow value lemma. Let f be any flow and let (A, B) be any cut. Then, the net
flow across (A, B) equals the value of f.

f (e) f (e) = v( f )
e out of A e in to A

net flow across cut = (10 + 10 + 5 + 10 + 0 + 0) (5 + 5 + 0 + 0) = 25

5/9

edges from B to A
5 5
10 0/4 /1 0 / 15 /
10
/ 5
10

s 5/5 5/8 10 / 10 t value of flow = 25

10
/ 0 0 / 15 10
15 0/4 /6 /
10

10 / 16
30
Relationship between flows and cuts

Flow value lemma. Let f be any flow and let (A, B) be any cut. Then, the net
flow across (A, B) equals the value of f.

f (e) f (e) = v( f )
e out of A e in to A

Pf. v( f ) = f (e)
v( f ) = of ssf (e)
ee out
out of
e out of s

by flow conservation, all terms



=
f (e) f (e)
except v = s are 0 = vv
A
of vv
ee out
A out of
f (e) f (e)
to vv
ee in
in to

v A e out of v e in to v

= f (e) f (e).
= ee out
out of
to AAf (e).
of AAf (e) ee in
in to
e out of A e in to A

31
Relationship between flows and cuts

Weak duality. Let f be any flow and (A, B) be any cut. Then, v( f ) cap(A, B).

Pf. v(
v( ff )) =
=
ff (e)
(e)

ff (e)
(e)
v(
v( ff )) =
= e out f (e)
of Af (e) e in to Aff (e)
(e)
ee out
out of
of A
A ee in
in to
to A
A
e out of A e in to A


f (e)
f (e)
flow-value
e out of Aff (e)
(e)
ee out of A
lemma e out
out of
of A
A


c(e)
c(e)


e out c(e)
c(e)
of A
ee out
out of
of A
A
e out of A
= cap(A,
cap(A, B)
=
=
= cap(A, B)
cap(A, B)
B)

8/9

2 8
/1 /
10 0/4 5 0 / 15 10
/ 10
10

s 5/5 7/8 9 / 10 t s 5 t

12
/ 2
15 0/4 /6 0 / 15 10 15
/
10

12 / 16

value of flow = 27 capacity of cut = 30 32


Max-flow min-cut theorem

Augmenting path theorem. A flow f is a max-flow iff no augmenting paths.


Max-flow min-cut theorem. Value of the max-flow = capacity of min-cut.

Pf. The following three conditions are equivalent for any flow f :
i. There exists a cut (A, B) such that cap(A, B) = val(f ).
ii. f is a max-flow.
iii. There is no augmenting path with respect to f.

[i ii ]
Suppose that (A, B) is a cut such that cap(A, B) = val(f ).
Then, for any flow f ', val(f ') cap(A, B) = val(f ).
Thus, f is a max-flow.
weak duality by assumption

33
Max-flow min-cut theorem

Augmenting path theorem. A flow f is a max-flow iff no augmenting paths.


Max-flow min-cut theorem. Value of the max-flow = capacity of min-cut.

Pf. The following three conditions are equivalent for any flow f :
i. There exists a cut (A, B) such that cap(A, B) = val(f ).
ii. f is a max-flow.
iii. There is no augmenting path with respect to f.

[ ii iii ] We prove contrapositive: ~iii ~ii.


Suppose that there is an augmenting path with respect to f.
Can improve flow f by sending flow along this path.
Thus, f is not a max-flow.

34
Max-flow min-cut theorem

[ iii i]
Let f be a flow with no augmenting paths.
Let A be set of nodes reachable from s in residual graph Gf.
By definition of cut A, s A.
By definition of flow f, t A. edge e = (v, w) with v B, w A
must have f(e) = 0
original network G
v( f ) = f (e) f (e)
v( f ) = e outof Af (e) e into Af (e) A B
v( f ) = e outof Af (e) e into Af (e)
flow-value
= e outof Ac(e) e in to A
= e outof Ac(e) t
lemma = e outof Ac(e)
= cap(A,
e out of A B)
= cap(A, B)
= cap(A, B)
s

edge e = (v, w) with v A, w B


must have f(e) = c(e)

35
7. N ETWORK F LOW I

max-flow and min-cut problems


Ford-Fulkerson algorithm
max-flow min-cut theorem
capacity-scaling algorithm
shortest augmenting paths
blocking-flow algorithm
unit-capacity simple networks
SECTION 7.3
Running time

Assumption. Capacities are integers between 1 and C.

Integrality invariant. Throughout the algorithm, the flow values f (e)


and the residual capacities cf (e) are integers.

Theorem. The algorithm terminates in at most val (f *) n C iterations.


Pf. Each augmentation increases the value by at least 1.

Corollary. The running time of Ford-Fulkerson is O(m n C).


Corollary. If C = 1, the running time of Ford-Fulkerson is O(m n).

Integrality theorem. Then exists a max-flow f * for which every


flow value f *(e) is an integer.
Pf. Since algorithm terminates, theorem follows from invariant.

37
Bad case for Ford-Fulkerson

Q. Is generic Ford-Fulkerson algorithm poly-time in input size?


m, n, and log C

A. No. If max capacity is C, then algorithm can take C iterations.


svwt
swvt each augmenting path
sends only 1 unit of flow
svwt (# augmenting paths = 2C)

swvt

svwt v C t

swvt
C 1 C

s C w

38
Choosing good augmenting paths

Use care when selecting augmenting paths.


Some choices lead to exponential algorithms.
Clever choices lead to polynomial algorithms.
If capacities are irrational, algorithm not guaranteed to terminate!

Goal. Choose augmenting paths so that:


Can find augmenting paths efficiently.
Few iterations.

39
Choosing good augmenting paths

Choose augmenting paths with:


Max bottleneck capacity.
Sufficiently large bottleneck capacity.
Fewest number of edges.

Theoretical Improvements in Algorithmic Efficiency


for Network Flow Problems

JACK EDMONDS

University of Waterloo, Waterloo, Ontario, Canada


AND

RICHARD M. K A R P

University of California, Berkeley, California

ABSTRACT. This paper presents new algorithms for t h e m a x i m u m flow problem, the Hitchcock
t r a n s p o r t a t i o n problem, and t h e general m i n i m u m - c o s t flow problem. U p p e r bounds on the
numbers of steps in these algorithms are derived, and are shown to compale favorably with
upper bounds on t h e numbers of steps required by earlier algorithms.
First, the paper states the m a x i m u m flow problem, gives the F o r d - F u l k e r s o n labeling method
for its solution, and points out t h a t an improper choice of flow a u g m e n t i n g p a t h s can lead to

Edmonds-Karp 1972 (USA)


severe c o m p u t a t i o n a l difficulties. T h e n rules of choice t h a t avoid these difficulties are given.
We show t h a t , if each flow a u g m e n t a t i o n is made along an a u g m e n t i n g p a t h h a v i n g a minimum Dinic 1970 (Soviet Union)
n u m b e r of arcs, t h e n a m a x i m u m flow in an n-node network will be o b t a i n e d a f t e r no more t h a n
~(n a - n) a u g m e n t a t i o n s ; and t h e n we show t h a t if each flow change is chosen to produce a
m a x i m u m increase in the flow value then, provided the capacities are integral, a m a x i m u m flow
will be d e t e r m i n e d within at most 1 + logM/(M--1) if(t, S) a u g m e n t a t i o n s , wheref*(t, s) is the
value of the maximum flow and M is the m a x i m u m n u m b e r of arcs across a cut.
Next a new algorithm is given for the m i n i m u m - c o s t flow problem, in which all s h o r t e s t - p a t h
c o m p u t a t i o n s are performed on networks with all weights nonnegative. In particular, this
a l g o r i t h m solves the n X n assigmnent problem in O(n3) steps. Following t h a t we explore a
" s c a l i n g " technique for solving a minimum-cost flow problem by t r e a t i n g a sequence of derived
problems w i t h "scaled d o w n " capacities. It is shown t h a t , using this technique, the solution of
a I i i t c h c o c k t r a n s p o r t a t i o n problem w i t h m sources and n sinks, m ~ n, and m a x i m u m flow B,
requires at most (n + 2) log2 (B/n) flow a u g m e n t a t i o n s . Similar results are also given for the
general minimum-cost flow problem. 40
An a b s t r a c t s t a t i n g the main results of the present paper was presented at the Calgary
I n t e r n a t i o n a l Conference on C o m b i n a t o r i a l Structures and T h e i r Applications, J u n e 1969.
In a paper b y l)inic (1970) a result closely related to the main result of Section 1.2 is obtained.
Capacity-scaling algorithm

Intuition. Choose augmenting path with highest bottleneck capacity:


it increases flow by max possible amount in given iteration.
Don't worry about finding exact highest bottleneck path.
Maintain scaling parameter .
Let Gf () be the subgraph of the residual graph consisting only of
arcs with capacity .

s s

0
0

10
10

11
11

2
2

0
0

12
12

17
17

2
2

t t

Gf Gf (), = 100 41
Capacity-scaling algorithm

CAPACITY-SCALING(G, s, t, c)
__________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

FOREACH edge e E : f (e) 0.


largest power of 2 C.

WHILE ( 1)
Gf () -residual graph.
WHILE (there exists an augmenting path P in Gf ())
f AUGMENT (f, c, P).
Update Gf ().
/ 2.

RETURN f.
__________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

42
Capacity-scaling algorithm: proof of correctness

Assumption. All edge capacities are integers between 1 and C.

Integrality invariant. All flow and residual capacity values are integral.

Theorem. If capacity-scaling algorithm terminates, then f is a max-flow.


Pf.
By integrality invariant, when = 1 Gf () = Gf .
Upon termination of = 1 phase, there are no augmenting paths.

43
Capacity-scaling algorithm: analysis of running time

Lemma 1. The outer while loop repeats 1 + log2 C times.


Pf. Initially C / 2 < C; decreases by a factor of 2 in each iteration.

Lemma 2. Let f be the flow at the end of a -scaling phase. Then,


the value of the max-flow val( f ) + m . proof on next slide

Lemma 3. There are at most 2m augmentations per scaling phase.


Pf.
Let f be the flow at the end of the previous scaling phase.
LEMMA 2 val( f *) val( f ) + 2 m .
Each augmentation in a -phase increases val( f ) by at least .

Theorem. The scaling max-flow algorithm finds a max flow in O(m log C)
augmentations. It can be implemented to run in O(m2 log C) time.
Pf. Follows from LEMMA 1 and LEMMA 3.

44
Capacity-scaling algorithm: analysis of running time

Lemma 2. Let f be the flow at the end of a -scaling phase. Then,


the value of the max-flow val( f ) + m .
Pf.
We show there exists a cut (A, B) such that cap(A, B) val( f ) + m .
Choose A to be the set of nodes reachable from s in Gf ().
By definition of cut A, s A.
By definition of flow f, t A. edge e = (v, w) with v B, w A
must have f(e)
original network

val(
v( ff )) = f (e) f (e) A B
v( f ) = e outof A f (e) e in to A f (e)
v( f ) =
e out
of A f (e) e in
(c(e) ) to A f (e)

v( f ) = e outof A f (e) e in to A f (e)
of A(c(e) ) e in t
e out
e out of A e in to A
to A
e outof A(c(e) ) e in to A
= c(e)
e outof A(c(e) ) e in to A
= e outof Ac(e) e outof Ae intoeAinto A
e out of A
= e outof Ac(e) e outof A e into A

= cap(A, B)
c(e) -
m of A e into A s
e outof A e out
cap(A,
e out of A
B) - m
e out of A e in to A
cap(A, B) - m
cap(A, B) - m
edge e = (v, w) with v A, w B
must have f(e) c(e)
45
7. N ETWORK F LOW I

max-flow and min-cut problems


Ford-Fulkerson algorithm
max-flow min-cut theorem
capacity-scaling algorithm
shortest augmenting paths
blocking-flow algorithm
unit-capacity simple networks
SECTION 17.2
Shortest augmenting path

Q. Which augmenting path?


A. The one with the fewest number of edges.

can find via BFS

SHORTEST-AUGMENTING-PATH(G, s, t, c)
_________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

FOREACH e E : f (e) 0.
Gf residual graph.
WHILE (there exists an augmenting path in Gf )
P BREADTH-FIRST-SEARCH (Gf, s, t).
f AUGMENT (f, c, P).
Update Gf.
RETURN f.
_________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

47
Shortest augmenting path: overview of analysis

L1. Throughout the algorithm, length of the shortest path never decreases.

L2. After at most m shortest path augmentations, the length of the shortest
augmenting path strictly increases.

Theorem. The shortest augmenting path algorithm runs in O(m2 n) time.


Pf.
O(m + n) time to find shortest augmenting path via BFS.
O(m) augmentations for paths of length k.
If there is an augmenting path, there is a simple one.
1 k < n
O(m n) augmentations.

48
Shortest augmenting path: analysis

Def. Given a digraph G = (V, E) with source s, its level graph is defined by:
(v) = number of edges in shortest path from s to v.
LG = (V, EG) is the subgraph of G that contains only those edges (v,w) E
with (w) = (v) + 1.

graph G

s t

level graph LG

s t

= 0 = 1 = 2 = 3
49
Shortest augmenting path: analysis

Def. Given a digraph G = (V, E) with source s, its level graph is defined by:
(v) = number of edges in shortest path from s to v.
LG = (V, EG) is the subgraph of G that contains only those edges (v,w) E
with (w) = (v) + 1.

Property. Can compute level graph in O(m + n) time.


Pf. Run BFS; delete back and side edges.

Key property. P is a shortest sv path in G iff P is an sv path LG.

level graph LG

s t

= 0 = 1 = 2 = 3
50
Shortest augmenting path: analysis

L1. Throughout the algorithm, length of the shortest path never decreases.
Let f and f ' be flow before and after a shortest path augmentation.
Let L and L' be level graphs of Gf and Gf ' .
Only back edges added to Gf '
(any path with a back edge is longer than previous length)

level graph L

s t

= 0 = 1 = 2 = 3

level graph L'

s t
51
Shortest augmenting path: analysis

L2. After at most m shortest path augmentations, the length of the shortest
augmenting path strictly increases.
The bottleneck edge(s) is deleted from L after each augmentation.
No new edge added to L until length of shortest path strictly increases.

level graph L

s t

= 0 = 1 = 2 = 3

level graph L'

s t
52
Shortest augmenting path: review of analysis

L1. Throughout the algorithm, length of the shortest path never decreases.

L2. After at most m shortest path augmentations, the length of the shortest
augmenting path strictly increases.

Theorem. The shortest augmenting path algorithm runs in O(m2 n) time.


Pf.
O(m + n) time to find shortest augmenting path via BFS.
O(m) augmentations for paths of exactly k edges.
O(m n) augmentations.

53
Shortest augmenting path: improving the running time

Note. (m n) augmentations necessary on some networks.


Try to decrease time per augmentation instead.
Simple idea O(m n2 )

[Dinic 1970]
Dynamic trees O(m n log n) [Sleator-Tarjan 1983]
JOURNAL OF COMPUTER AND SYSTEM SCIENCES 26, 362-391 (1983)

A Data Structure for Dynamic Trees

DANIEL D. SLEATOR AND ROBERT ENDRE TARJAN

Bell Laboratories, Murray Hill, New Jersey 07974

Received May 8, 1982; revised October 18, 1982

A data structure is proposed to maintain a collection of vertex-disjoint trees under a


sequence of two kinds of operations: a link operation that combines two trees into one by
adding an edge, and a cut operation that divides one tree into two by deleting an edge. Each
operation requires O(log n) time. Using this data structure, new fast algorithms are obtained
for the following problems:

(1) Computing nearest common ancestors.


(2) Solving various network flow problems including finding maximum flows, blocking
flows, and acyclic flows.
(3) Computing certain kinds of constrained minimum spanning trees.
(4) Implementing the network simplex algorithm for minimum-cost flows.

The most significant application is (2); an O(mn log n)-time algorithm is obtained to find a
maximum flow in a network of n vertices and m edges, beating by a factor of log n the fastest
algorithm previously known for sparse graphs.

1. INTR~DIJCTI~N 54

In this paper we consider the following problem: We are given a collection of


7. N ETWORK F LOW I

max-flow and min-cut problems


Ford-Fulkerson algorithm
max-flow min-cut theorem
capacity-scaling algorithm
shortest augmenting paths
blocking-flow algorithm
unit-capacity simple networks
SECTION 18.1
Blocking-flow algorithm

Two types of augmentations.


Normal: length of shortest path does not change.
Special: length of shortest path strictly increases.
Phase of normal augmentations.
Explicitly maintain level graph LG.
Start at s, advance along an edge in LG until reach t or get stuck.
If reach t, augment and and update LG.
If get stuck, delete node from LG and go to previous node.

s t
level graph LG
56
Blocking-flow algorithm

Two types of augmentations.


Normal: length of shortest path does not change.
Special: length of shortest path strictly increases.
Phase of normal augmentations.
Explicitly maintain level graph LG.
Start at s, advance along an edge in LG until reach t or get stuck.
If reach t, augment and and update LG.
If get stuck, delete node from LG and go to previous node.

advance

s t
level graph LG
57
Blocking-flow algorithm

Two types of augmentations.


Normal: length of shortest path does not change.
Special: length of shortest path strictly increases.
Phase of normal augmentations.
Explicitly maintain level graph LG.
Start at s, advance along an edge in LG until reach t or get stuck.
If reach t, augment and and update LG.
If get stuck, delete node from LG and go to previous node.

augment

s t
level graph LG
58
Blocking-flow algorithm

Two types of augmentations.


Normal: length of shortest path does not change.
Special: length of shortest path strictly increases.
Phase of normal augmentations.
Explicitly maintain level graph LG.
Start at s, advance along an edge in LG until reach t or get stuck.
If reach t, augment and and update LG.
If get stuck, delete node from LG and go to previous node.

advance

s t
level graph LG
59
Blocking-flow algorithm

Two types of augmentations.


Normal: length of shortest path does not change.
Special: length of shortest path strictly increases.
Phase of normal augmentations.
Explicitly maintain level graph LG.
Start at s, advance along an edge in LG until reach t or get stuck.
If reach t, augment and and update LG.
If get stuck, delete node from LG and go to previous node.

retreat

s t
level graph LG
60
Blocking-flow algorithm

Two types of augmentations.


Normal: length of shortest path does not change.
Special: length of shortest path strictly increases.
Phase of normal augmentations.
Explicitly maintain level graph LG.
Start at s, advance along an edge in LG until reach t or get stuck.
If reach t, augment and and update LG.
If get stuck, delete node from LG and go to previous node.

advance

s t
level graph LG
61
Blocking-flow algorithm

Two types of augmentations.


Normal: length of shortest path does not change.
Special: length of shortest path strictly increases.
Phase of normal augmentations.
Explicitly maintain level graph LG.
Start at s, advance along an edge in LG until reach t or get stuck.
If reach t, augment and and update LG.
If get stuck, delete node from LG and go to previous node.

augment

s t
level graph LG
62
Blocking-flow algorithm

Two types of augmentations.


Normal: length of shortest path does not change.
Special: length of shortest path strictly increases.
Phase of normal augmentations.
Explicitly maintain level graph LG.
Start at s, advance along an edge in LG until reach t or get stuck.
If reach t, augment and and update LG.
If get stuck, delete node from LG and go to previous node.

advance

s t
level graph LG
63
Blocking-flow algorithm

Two types of augmentations.


Normal: length of shortest path does not change.
Special: length of shortest path strictly increases.
Phase of normal augmentations.
Explicitly maintain level graph LG.
Start at s, advance along an edge in LG until reach t or get stuck.
If reach t, augment and and update LG.
If get stuck, delete node from LG and go to previous node.

retreat

s t
level graph LG
64
Blocking-flow algorithm

Two types of augmentations.


Normal: length of shortest path does not change.
Special: length of shortest path strictly increases.
Phase of normal augmentations.
Explicitly maintain level graph LG.
Start at s, advance along an edge in LG until reach t or get stuck.
If reach t, augment and and update LG.
If get stuck, delete node from LG and go to previous node.

retreat

s t
level graph LG
65
Blocking-flow algorithm

Two types of augmentations.


Normal: length of shortest path does not change.
Special: length of shortest path strictly increases.
Phase of normal augmentations.
Explicitly maintain level graph LG.
Start at s, advance along an edge in LG until reach t or get stuck.
If reach t, augment and and update LG.
If get stuck, delete node from LG and go to previous node.

end of phase

s t
level graph LG
66
Blocking-flow algorithm

INITIALIZE(G, s, t, f, c) ADVANCE(v)
_______________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________ ________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

LG level-graph of Gf. IF (v = t)
P . AUGMENT(P).
GOTO ADVANCE(s). Remove saturated edges from LG.
P .
_______________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

GOTO ADVANCE(s).

RETREAT(v) IF (there exists edge (v, w) LG)


_______________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

IF (v = s) STOP. Add edge (v, w) to P.


ELSE GOTO ADVANCE(w).
Delete v (and all incident edges) from LG.
Remove last edge (u, v) from P. ELSE GOTO RETREAT(v).
GOTO ADVANCE(u).
________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

_______________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

67
Blocking-flow algorithm: analysis

Lemma. A phase can be implemented in O(m n) time.


Pf.
Initialization happens once per phase. O(m) using BFS

At most m augmentations per phase. O(mn) per phase

(because an augmentation deletes at least one edge from LG)


At most n retreats per phase. O(m + n) per phase

(because a retreat deletes one node from LG)


At most m n advances per phase. O(mn) per phase
(because at most n advances before retreat or augmentation)

Theorem. [Dinic 1970] The blocking-flow algorithm runs in O(mn2) time.


Pf.
By lemma, O(mn) time per phase.
At most n phases (as in shortest augment path analysis).

68
Choosing good augmenting paths: summary

Assumption. Integer capacities between 1 and C.

method # augmentations running time

augmenting path nC O(m n C)

fattest augmenting path m log (mC) O(m2 log n log (mC))

capacity scaling m log C O(m2 log C)

improved capacity scaling m log C O(m n log C)

shortest augmenting path mn O(m2 n)

improved shortest augmenting path mn O(m n2 )

dynamic trees mn O(m n log n )

69
Maximum flow algorithms: theory

year method worst case discovered by

1951 simplex O(m3 C) Dantzig

1955 augmenting path O(m2 C) Ford-Fulkerson

1970 shortest augmenting path O(m3) Dinic, Edmonds-Karp

1970 fattest augmenting path O(m2 log m log( m C )) Dinic, Edmonds-Karp

1977 blocking flow O(m 5/2) Cherkasky

1978 blocking flow O(m 7/3) Galil

1983 dynamic trees O(m2 log m) Sleator-Tarjan

1985 capacity scaling O(m2 log C) Gabow

1997 length function O(m3/2 log m log C) Goldberg-Rao

2012 compact network O(m2 / log m) Orlin

? ? O(m) ?

max-flow algorithms for sparse digraphs with m edges, integer capacities between 1 and C

70
Maximum flow algorithms: practice

Push-relabel algorithm (SECTION 7.4). [Goldberg-Tarjan 1988]


Increases flow one edge at a time instead of one augmenting path at a time.

A New Approach to the Maximum-Flow Problem

ANDREW V. GOLDBERG
Massachusetts Institute of Technology, Cambridge, Massachusetts

AND
ROBERT E. TARJAN
Princeton University, Princeton, New Jersey, and AT&T Bell Laboratories, Murray Hill, New Jersey

Abstract. All previously known efftcient maximum-flow algorithms work by finding augmenting paths,
either one path at a time (as in the original Ford and Fulkerson algorithm) or all shortest-length
augmenting paths at once (using the layered network approach of Dinic). An alternative method based
on the preflow concept of Karzanov is introduced. A preflow is like a flow, except that the total amount
flowing into a vertex is allowed to exceed the total amount flowing out. The method maintains a preflow
in the original network and pushes local flow excess toward the sink along what are estimated to be
shortest paths. The algorithm and its analysis are simple and intuitive, yet the algorithm runs as fast as
any other known method on dense.graphs, achieving an O(n)) time bound on an n-vertex graph. By
incorporating the dynamic tree data structure of Sleator and Tarjan, we obtain a version of the algorithm
running in O(nm log(n/m)) time on an n-vertex, m-edge graph. This is as fast as any known method
for any graph density and faster on graphs of moderate density. The algorithm also admits efticient
distributed and parallel implementations. A parallel implementation running in O(nlog n) time using
n processors and O(m) space is obtained. This time bound matches that of the Shiloach-Vishkin
algorithm, which also uses n processors but requires O(n) space.

Categories and Subject Descriptors: F.2.2 [Analysis of Algorithms and Problem Complexity]: Non-
numerical Algorithms and Problems; G.2.2 [Discrete Mathematics]: Graph Theory-graph algorithms; 71
network problems
General Terms: Algorithms, Design, Theory, Verification
Maximum flow algorithms: practice

Warning. Worst-case running time is generally not useful for predicting or


comparing max-flow algorithm performance in practice.

Best in practice. Push-relabel method with gap relabeling: O(m 3/2).

On I m p l e m e n t i n g P u s h - R e l a b e l M e t h o d
for the M a x i m u m Flow P r o b l e m
EUROPEAN
JOURNAL
OF OPERATIONAL
Boris V. Cherkassky 1 and Andrew V. Goldberg 2 RESEARCH
ELSEVIER European Journal of Operational Research 97 (1997) 509-542
1 Central Institute for Economics and Mathematics,
Krasikova St. 32, 117418, Moscow, Russia
cher@eemi.msk.su
2 Computer Science Department, Stanford University Theory and Methodology
Stanford, CA 94305, USA
goldberg~cs. stanford, edu Computational investigations of maximum flow algorithms
Ravindra K . A h u j a a, M u r a l i K o d i a l a m b, A j a y K . M i s h r a c, J a m e s B . O r l i n d,.

A b s t r a c t . We study efficient implementations of the push-relabel method a Department t~'lndustrial and Management Engineering. Indian Institute of Technology. Kanpur, 208 016, India
for the maximum flow problem. The resulting codes are faster than the b AT& T Bell Laboratories, Holmdel, NJ 07733, USA
c KA'F-ZGraduate School of Business, University of Pittsburgh, Pittsburgh, PA 15260, USA
previous codes, and much faster on some problem families. The speedup d Sloun School of Management, Massachusetts Institute of Technology. Cambridge. MA 02139. USA
is due to the combination of heuristics used in our implementations. We
also exhibit a family of problems for which the running time of all known Received 30 August 1995; accepted 27 June 1996
methods seem to have a roughly quadratic growth rate.
Abstract

1 Introduction The maximum flow algorithm is distinguished by the long line of successive contributions researchers have made in
obtaining algorithms with incrementally better worst-case complexity. Some, but not all, of these theoretical improvements
The rnaximum flow problem is a classical combinatorial problem that comes up have produced improvements in practice. The purpose of this paper is to test some of the major algorithmic ideas developed
in a wide variety of applications. In this paper we study implementations of the in the recent years and to assess their utility on the empirical front. However, our study differs from previous studies in
several ways. Whereas previous studies focus primarily on CPU time analysis, our analysis goes further and provides 72
push-rdabel [13, 17] method for the problem.
detailed insight into algorithmic behavior. It not only observes how algorithms behave but also tries to explain why
The basic methods for the maximum flow problem include the network sim- algorithms behave that way. We have limited our study to the best previous maximum flow algorithms and some of the
plex method of Dantzig [6, 7], the augmenting path method of Ford and F~lker- recent algorithms that are likely to be efficient in practice. Our study encompasses ten maximum flow algorithms and five
Maximum flow algorithms: practice

Computer vision. Different algorithms work better for some dense


problems that arise in applications to computer vision.

In IEEE Transactions on PAMI, Vol. 26, No. 9, pp. 1124-1137, Sept. 2004 p.1

An Experimental Comparison of VERMA, BATRA: MAXFLOW REVISITED 1

Min-Cut/Max-Flow Algorithms for


Energy Minimization in Vision MaxFlow Revisited:
Yuri Boykov and Vladimir Kolmogorov
An Empirical Comparison of Maxflow
Algorithms for Dense Vision Problems
Abstract

After [15, 31, 19, 8, 25, 5] minimum cut/maximum flow algorithms on graphs emerged as Tanmay Verma IIIT-Delhi
an increasingly useful tool for exact or approximate energy minimization in low-level vision. tanmay08054@iiitd.ac.in Delhi, India
The combinatorial optimization literature provides many min-cut/max-flow algorithms with
Dhruv Batra TTI-Chicago
dbatra@ttic.edu Chicago, USA
different polynomial time complexity. Their practical efficiency, however, has to date been

studied mainly outside the scope of computer vision. The goal of this paper is to provide an

experimental comparison of the efficiency of min-cut/max flow algorithms for applications

in vision. We compare the running times of several standard algorithms, as well as a


Abstract

new algorithm that we have recently developed. The algorithms we study include both Algorithms for finding the maximum amount of flow possible in a network (or max-
Goldberg-Tarjan style push-relabel methods and algorithms based on Ford-Fulkerson flow) play a central role in computer vision problems. We present an empirical compari-
son of different max-flow algorithms on modern problems. Our problem instances arise
style augmenting paths. We benchmark these algorithms on a number of typical graphs
from energy minimization problems in Object Category Segmentation, Image Deconvo-
in the contexts of image restoration, stereo, and segmentation. In many cases our new lution, Super Resolution, Texture Restoration, Character Completion and 3D Segmen-
algorithm works several times faster than any of the other methods making near real-time tation. We compare 14 different implementations and find that the most popularly used
implementation of Kolmogorov [5] is no longer the fastest algorithm available, especially
performance possible. An implementation of our max-flow/min-cut algorithm is available
for dense graphs.
upon request for research purposes.

Index Terms Energy minimization, graph algorithms, minimum cut, maximum

flow, image restoration, segmentation, stereo, multi-camera scene reconstruction. 1 Introduction



Yuri Boykov is with the Computer Science Department at the University of Western Ontario, Canada,
yuri@csd.uwo.ca. Vladimir Kolmogorov is with Microsoft Research, Cambridge, England, vnk@microsoft.com. Over the past two decades, algorithms for finding the maximum amount of flow possible in
This work was mainly done while the authors were with Siemens Corp. Research, Princeton, NJ.
a network (or max-flow) have become the workhorses of modern computer vision and ma- 73
chine learning from optimal (or provably-approximate) inference in sophisticated discrete
models [6, 11, 27, 30, 32] to enabling real-time image processing [38, 39].
7. N ETWORK F LOW I

max-flow and min-cut problems


Ford-Fulkerson algorithm
max-flow min-cut theorem
capacity-scaling algorithm
shortest augmenting paths
blocking-flow algorithm
unit-capacity simple networks
Bipartite matching

Q. Which max-flow algorithm to use for bipartite matching?


Generic augmenting path: O( m | f * | ) = O(m n).
Capacity scaling: O(m2 log U) = O(m2).
Shortest augmenting path: O(m n2).
Q. Suggests "more clever" algorithms are not as good as we first thought?
A. No, just need more clever analysis!

Next. We prove that shortest augmenting path algorithm can be


implemented inJ. CoMavx.
SIAM O(m n1/2) time.
Vol. 4, No. 4, December 1975

NETWORK FLOW AND TESTING GRAPH CONNECTIVITY*


SHIMON EVEN" AND R. ENDRE TARJAN:I:
Abstract. An algorithm of Dinic for finding the maximum flow in a network is described. It is
then shown that if the vertex capacities are all equal to one, the algorithm requires at most O(IV[ 1/2 IEI)
time, and if the edge capacities are all equal to one, the algorithm requires at most O(I VI 2/3. IEI) time.
Also, these bounds are tight for Dinics algorithm.
These results are used to test the vertex connectivity of a graph in O(IVI 1/z. IEI 2) time and the
edge connectivity in O(I V[ 5/3. IEI) time.

Key words. Dinics algorithm, maximum flow, connectivity, vertex connectivity, edge connec- 75
tivity
flow. Let be a
Unit-capacity simple networks

Def. A network is a unit-capacity simple network if:


Every edge capacity is 1.
Every node (other than s or t) has either (i) at most one entering edge
or (ii) at most one leaving edge.

Property. Let G be a simple unit-capacity network and let f be a 0-1 flow,


then Gf is a unit-capacity simple network.

Ex. Bipartite matching.


1

1 1

76
Unit-capacity simple networks

Shortest augmenting path algorithm.


Normal augmentation: length of shortest path does not change.
Special augmentation: length of shortest path strictly increases.
Theorem. [Even-Tarjan 1975] In unit-capacity simple networks, the shortest
augmenting path algorithm computes a maximum flow in O(m n1/2) time.
Pf.
L1. Each phase of normal augmentations takes O(m) time.
L2. After at most n1/2 phases, | f | | f *| n1/2.
L3. After at most n1/2 additional augmentations, flow is optimal.

77
Unit-capacity simple networks

Phase of normal augmentations.


Explicitly maintain level graph LG.
Start at s, advance along an edge in LG until reach t or get stuck.
If reach t, augment and and update LG. delete all edges in augmenting path from L G

If get stuck, delete node from LG and go to previous node.

advance

level graph LG

78
Unit-capacity simple networks

Phase of normal augmentations.


Explicitly maintain level graph LG.
Start at s, advance along an edge in LG until reach t or get stuck.
If reach t, augment and and update LG. delete all edges in augmenting path from L G

If get stuck, delete node from LG and go to previous node.

augment

level graph LG

79
Unit-capacity simple networks

Phase of normal augmentations.


Explicitly maintain level graph LG.
Start at s, advance along an edge in LG until reach t or get stuck.
If reach t, augment and and update LG. delete all edges in augmenting path from L G

If get stuck, delete node from LG and go to previous node.

advance

level graph LG

80
Unit-capacity simple networks

Phase of normal augmentations.


Explicitly maintain level graph LG.
Start at s, advance along an edge in LG until reach t or get stuck.
If reach t, augment and and update LG. delete all edges in augmenting path from L G

If get stuck, delete node from LG and go to previous node.

retreat

level graph LG

81
Unit-capacity simple networks

Phase of normal augmentations.


Explicitly maintain level graph LG.
Start at s, advance along an edge in LG until reach t or get stuck.
If reach t, augment and and update LG. delete all edges in augmenting path from L G

If get stuck, delete node from LG and go to previous node.

advance

level graph LG

82
Unit-capacity simple networks

Phase of normal augmentations.


Explicitly maintain level graph LG.
Start at s, advance along an edge in LG until reach t or get stuck.
If reach t, augment and and update LG. delete all edges in augmenting path from L G

If get stuck, delete node from LG and go to previous node.

augment

level graph LG

83
Unit-capacity simple networks

Phase of normal augmentations.


Explicitly maintain level graph LG.
Start at s, advance along an edge in LG until reach t or get stuck.
If reach t, augment and and update LG. delete all edges in augmenting path from L G

If get stuck, delete node from LG and go to previous node.

end of phase

level graph LG

84
Unit-capacity simple networks: analysis

Phase of normal augmentations.


Explicitly maintain level graph LG.
Start at s, advance along an edge in LG until reach t or get stuck.
If reach t, augment and and update LG.
If get stuck, delete node from LG and go to previous node.
LEMMA 1. A phase of normal augmentations takes O(m) time.
Pf.
O(m) to create level graph LG.
O(1) per edge since each edge traversed and deleted at most once.
O(1) per node since each node deleted at most once.

85
Unit-capacity simple networks: analysis

LEMMA 2. After at most n1/2 phases, | f | | f *| n1/2.


After n1/2 phases, length of shortest augmenting path is > n1/2.
Level graph has more than n1/2 levels.
Let 1 h n1/2 be layer with min number of nodes: | Vh | n1/2.

level graph LG for flow f

V0 V1 Vh Vn1/2
86
Unit-capacity simple networks: analysis

LEMMA 2. After at most n1/2 phases, | f | | f *| n1/2.


After n1/2 phases, length of shortest augmenting path is > n1/2.
Level graph has more than n1/2 levels.
Let 1 h n1/2 be layer with min number of nodes: | Vh | n1/2.
Let A = {v : (v) < h} {v : (v) = h and v has 1 outgoing residual edge}.
capf (A, B) | Vh | n1/2 | f | | f *| n1/2.
residual graph Gf residual edges

V0 V1 Vh Vn1/2
87

También podría gustarte