Cómo encontrar [matemática] f (n, m, k) = [/ matemática] [matemática] | T | _ {max} [/ matemática] [matemática], [/ matemática] si [matemática] S = \ {1 , 2,3, …, n \} [/ math] y [math] T [/ math] es un conjunto de subconjuntos con cardinalidad [math] m [/ math] del conjunto [math] S [/ math] y el la intersección de dos elementos del conjunto [matemática] T [/ matemática] es como máximo [matemática] k [/ matemática]

Asumiré [matemáticas] n \ ge m \ ge k [/ matemáticas]. Tenga en cuenta que hay un total de [math] \ dbinom nm [/ math] subconjuntos de [math] S [/ math] que son de tamaño [math] m [/ math]. Algunos casos especiales primero.


Si [math] k = m [/ math] entonces claramente podemos tomar todos los subconjuntos. Entonces [matemáticas] f (n, m, m) = \ dbinom nm [/ matemáticas].

Tenga en cuenta que, entre dos subconjuntos, si hay como máximo elementos comunes [math] k [/ math], entonces hay al menos [math] m + mk [/ math] elementos distintos. Esta cantidad no puede exceder el número total de elementos [matemática] n [/ matemática], entonces

[matemáticas] 2m-k \ le n ~ \ implica ~ k \ ge 2m-n \ etiqueta * {} [/ matemáticas]

es decir, si [math] k <2m-n [/ math], no podemos tomar más de un subconjunto. Entonces [matemáticas] f (n, m, k) = 1 [/ matemáticas] para [matemáticas] k <2m-n [/ matemáticas].


Ahora suponemos que [math] 2m-n \ le k <m [/ math]. Suponga que [math] \ mathcal F [/ math] es una familia de subconjuntos de [math] m [/ math] de [math] S [/ math] que satisface nuestras restricciones. Aquí viene el hecho clave:

Tome todos los subconjuntos de tamaño [math] k + 1 [/ math] de cada uno de los conjuntos en [math] \ mathcal F [/ math]. Todos estos subconjuntos deben ser distintos entre sí.

De hecho, hay [math] | \ mathcal F | \ dbinom {m} {k + 1} [/ math] tales subconjuntos. No hay dos subconjuntos que pertenezcan al mismo conjunto, ya que no hay elementos repetidos. Y dos subconjuntos que pertenecen a conjuntos diferentes no pueden ser iguales porque eso nos daría una intersección de tamaño [matemática] k + 1 [/ matemática] que no es buena.

Entonces tenemos un límite. Dado que hay [math] \ dbinom {n} {k + 1} [/ math] subconjuntos de tamaño [math] k + 1 [/ math] en total, debemos tener

[matemática] | \ matemática F | \ dbinom {m} {k + 1} \ le \ dbinom {n} {k + 1} ~ \ implica ~ | \ matemática F | \ le \ left \ lfloor \ dfrac {\ dbinom {n} {k + 1}} {\ dbinom {m} {k + 1}} \ right \ rfloor \ tag * {} [/ math]

y así [matemáticas] f (n, m, k) [/ matemáticas] puede ser como máximo [matemáticas] \ left \ lfloor \ dfrac {\ dbinom {n} {k + 1}} {\ dbinom {m} {k +1}} \ right \ rfloor [/ math].

Podemos encontrar una construcción para este límite superior. Comience con [math] m [/ math] de los subconjuntos [math] \ dbinom {n} {k + 1} [/ math]. Incrementar elementos uno por uno. En cada paso, repita los conjuntos [math] m [/ math] y agregue el elemento más pequeño aún no agregado que no formaría un subconjunto de tamaño [math] k + 1 [/ math] ya presente en algún conjunto. Como no nos quedamos sin elementos factibles para agregar por nuestro límite, este algoritmo funciona.


En resumen

[matemáticas] f (n, m, k) = \ left \ {\ begin {array} {center} 1 & \ mbox {if $ k <2m-n $} \\ \ dbinom {n} {m} & \ mbox {if $ k = m $} \\ \ left \ lfloor \ dfrac {\ dbinom {n} {k + 1}} {\ dbinom {m} {k + 1}} \ right \ rfloor & \ mbox {de lo contrario } \ end {array} \ right. \ tag * {} [/ math]