Сочетания

Сочетания из nn объектов по kk — все возможные варианты выбора kk различных элементов из набора nn объектов без учёта порядка.

Например, сочетания из 55 объектов {a,b,c,d,e}\{a, b, c, d, e\} по 33 это

abc,abd,abe,acd,ace,ade,bcd,bce,bde,cdeabc,\quad abd,\quad abe,\quad acd,\quad ace,\quad ade,\quad bcd,\quad bce,\quad bde,\quad cde

Биномиальный коэффициент

Количество сочетаний из nn по kk ещё называется биномиальным коэффициентом и обозначается

(nk)   ⁣=def   ⁣n!(nk)!k!\binom{n}{k} \defeq \frac{n!}{(n-k)! \cdot k!}

В нашем примере

(53)=5!(53)!3!=543321=10\binom{5}{3} = \frac{5!}{(5-3)! \cdot 3!} = \frac{5 \cdot 4 \cdot 3}{3 \cdot 2 \cdot 1} = 10

Треугольник Паскаля

Давайте нарисуем треугольную сетку. Самое верхнее число будет 11. Будем заполнять треугольник по рядам: в каждую ячейку будем вписывать сумму чисел, находящихся над этой ячейкой. Пустые ячейки будем считать нулями. Получится какой-то такой треугольник

111121133114641151010511615201561172135352171 \begin{array}{r c c c c c c} & & & & & & & 1 \\ & & & & & & 1 && 1 \\ & & & & & 1 && 2 && 1 \\ & & & & 1 && 3 && 3 && 1 \\ & & & 1 && 4 && 6 && 4 && 1 \\ & & 1 && 5 && 10 && 10 && 5 && 1 \\ & 1 && 6 && 15 && 20 && 15 && 6 && 1 \\ 1 && 7 && 21 && 35 && 35 && 21 && 7 && 1 \\ \end{array}

У этой простой конструкции удивительно много свойств, с которыми мы будем сталкиваться постоянно. Первый шаг в изучении серьезного инструментария мы сделаем посмотрев на одну из старейших задач алгебры — возведение двучлена в степень.

Давайте раскроем скобки в выражении

(x+y)n(x+y)^n

Посмотрим на малые значения nn:

(x+y)0=1x0y0(x+y)1=1x1y0+1x0y1(x+y)2=1x2y0+2x1y1+1x0y2(x+y)3=1x3y0+3x2y1+3x1y2+1x0y3(x+y)4=1x4y0+4x3y1+6x2y2+4x1y3+1x0y4\aligned{ (x + y)^0 &= 1 \cdot x^0y^0 \\ (x + y)^1 &= 1 \cdot x^1y^0 + 1 \cdot x^0y^1 \\ (x + y)^2 &= 1 \cdot x^2y^0 + 2 \cdot x^1y^1 + 1 \cdot x^0y^2 \\ (x + y)^3 &= 1 \cdot x^3y^0 + 3 \cdot x^2y^1 + 3 \cdot x^1y^2 + 1 \cdot x^0y^3 \\ (x + y)^4 &= 1 \cdot x^4y^0 + 4 \cdot x^3y^1 + 6 \cdot x^2y^2 + 4 \cdot x^1y^3 + 1 \cdot x^0y^4 }

Как мы видим, коэффициенты совпадают с числами в треугольнике Паскаля.

Бином Ньютона

(x+y)n=k=0n(nk)xkynkпри nN0(x+y)^n = \sum\limits_{k=0}^n \binom{n}{k} \, x^k \, y^{n-k} \quad\text{при}~ n \in \NN_0

Доказательство бинома Ньютона.

Мы раскрываем скобки в выражении

(x+y)n=(x+y)(x+y)(x+y)(x+y)(x+y)^n = (x+y) \, (x+y) \, (x+y) \, \dotsm \, (x+y)

После раскрытия скобок, то есть после перемножения nn одинаковых двучленов, мы получаем сумму различных произведений xx и yy. При этом суммарная степень у каждого члене суммы получается nn.

Давайте разберемся, как появляется конкретный член xkynkx^k \, y^{n-k}. Чтобы получился такой член, нам нужно ровно kk раз выбрать xx и, соответственно, nkn-k раз выбрать yy из наших nn скобок.

Коэффициент перед этим членом xkynkx^k \, y^{n-k} – это количество всех возможных способов выбрать, из каких именно kk скобок мы возьмем xx (а из оставшихся nkn-k скобок автоматически будет взято yy). Этот коэффициент по определению является биномиальным коэффициентом (nk)\binom{n}{k}.

А поскольку kk у нас меняется в пределах от 00 (во всех скобках выбрали yy) до nn (во всех скобках выбрали xx), получается, что

(x+y)n=k=0n(nk)xkynk(x+y)^n = \sum\limits_{k=0}^n \binom{n}{k} \, x^k \, y^{n-k}

Вещественное обобщение

Формулу из определения биномиальных коэффициентов можно обобщить и на случай нецелых nn

(rk)   ⁣=def   ⁣{rkk!=j=1kr+1jjk00k<0\binom{r}{k} \defeq \cases{ \displaystyle \frac{r^{\underline{k}}}{k!} = \prod\limits_{j=1}^k \frac{r+1-j}{j} & k \ge 0 \\ 0 & k < 0 }

При этом, для определенности, при k<0k < 0 полагаем (rk)=0\binom{r}{k} = 0.

Различные свойства и формулы применимы при разных условиях на переменные. Далее я буду писать переменные nn и kk, подразумевая, что они целые, а rr у меня будет действительной переменной.

Какие-то простые тождества можно доказать прямо по этому определению, аккуратно раскрывая нисходящую степень. Сложные тождества (например, свёртка Вандермонда) для доказательства будут требовать других техник, например разложение функций в ряды Тейлора или бесконечные биномиальные свёртки.

Биномиальная теорема. Давайте рассмотрим функцию (x+y)r(x+y)^r при x,y,rCx, y, r \in \CC и получим обобщение бинома Ньютона, называемое в народе биномиальной теоремой. В процессе я покажу всю технику, необходимую для конструирования строгих доказательств.

Для начала разложим в ряд Маклорена функцию (1+z)r(1+z)^r для zCz \in \CC. Для этого нужно получить общую формулу для kk-ой производной этой функции.

dkdzk((1+z)r)=rk(1+z)rk\frac{d^k}{dz^k} \bigl( (1+z)^r \bigr) = r^{\underline{k}} \cdot (1+z)^{r-k}

Тогда ряд Маклорена для (1+z)r(1+z)^r выражается следующим образом

(1+z)r=k=0rkk!zk=k=0(rk)zk(1+z)^r = \sum\limits_{k=0}^\oo \frac{r^{\underline{k}}}{k!} \cdot z^k = \sum\limits_{k=0}^\oo \binom{r}{k} \, z^k

Коэффициенты этого ряда равны биномиальному коэффициенту. Ряд сходится в окрестности 00, а радиус сходимости RR можно найти с помощью признака Даламбера

R=limk(rk+1)/(rk)=limkrkk+1=1R = \lim\limits_{k \to \oo} \left| \binom{r}{k+1} \middle/ \binom{r}{k} \right| = \lim\limits_{k \to \oo} \left| \frac{r-k}{k+1} \right| = 1

То есть внутри круга z<1|z| < 1 ряд сходится к некоторой аналитической функции, которая по теореме единственности аналитических функций совпадает с нашей функцией (1+z)r(1+z)^r.

(1+z)r=k=0(rk)zkпри z   ⁣   ⁣C и z<1(1+z)^r = \sum\limits_{k=0}^\oo \binom{r}{k} \, z^k \quad\text{при}~ z \;\! \in \;\! \CC ~\text{и}~ |z| < 1

Сделаем замену z=x/yz = x/y. Тогда мы получим функцию (1+x/y)r(1 + x/y)^r, и, чтобы превратить её в желаемую функцию (x+y)r(x+y)^r, надо её ещё умножить на yry^r. Итак, запишем с использованием найденного разложения.

(x+y)r=yr(1+x/y)r=yrk=0(rk)(xy)k=k=0(rk)xkyrk(x+y)^r = y^r \cdot (1 + x/y)^r = y^r \cdot \sum\limits_{k=0}^\oo \binom{r}{k} \cdot \left( \frac{x}{y} \right)^k = \sum\limits_{k=0}^\oo \binom{r}{k} \, x^k \, y^{r-k}

Исходный ряд сходится при z<1|z| < 1, значит полученный ряд будет сходиться при x/y<1|x/y| < 1, то есть при x<y|x| < |y|. Можно поменять местами xx и yy, то есть сделать замену z=y/xz = y/x, и тогда мы получим аналогичный ряд. Итого

(x+y)r=k=0(rk)xkyrkпри x,y   ⁣   ⁣C и x<y(x+y)r=k=0(rk)xrkykпри x,y   ⁣   ⁣C и y<x(x+y)^r = \sum\limits_{k=0}^\oo \binom{r}{k} \, x^k \, y^{r-k} \quad\text{при}~ x, y \;\! \in \;\! \CC ~\text{и}~ |x| < |y| \qquad (x+y)^r = \sum\limits_{k=0}^\oo \binom{r}{k} \, x^{r-k} \, y^k \quad\text{при}~ x, y \;\! \in \;\! \CC ~\text{и}~ |y| < |x|

Свойства биномиальных коэффициентов

Симметрия. Из определения получаем, что биномиальные коэффициенты симметричны в том смысле, что

(nk)=(nnk)\binom{n}{k} = \binom{n}{n-k}

Вынесение и внесение. Опять же, из определения можно вынести по одному члену и получить формулу

(rk)=rk(r1k1)\binom{r}{k} = \frac{r}{k} \cdot \binom{r-1}{k-1}

Используя это свойство, можно получить два очень полезных факта, которые используются повсеместно

k(rk)=r(r1k1)и1r(rk)=1k(r1k1)k \cdot \binom{r}{k} = r \cdot \binom{r-1}{k-1} \quad\text{и}\quad \frac{1}{r} \cdot \binom{r}{k} = \frac{1}{k} \cdot \binom{r-1}{k-1}

Применяя поочередно свойства внесения-вынесения и симметрии, можно получить еще одну формулу

r(r1k)=(rk)(rk)r \cdot \binom{r-1}{k} = (r-k) \cdot \binom{r}{k}

Формула сложения. Используя несколько предыдущих свойств получаем одно из самых важных тождеств

(rk)=(r1k)+(r1k1)\binom{r}{k} = \binom{r-1}{k} + \binom{r-1}{k-1}

Получившаяся формула является рекуррентным соотношением для биномиальных коэффициентов, то есть с её помощью мы можем вычислять биномиальные коэффициенты методами динамического программирования.

Также эта формула показывает связь биномиальных коэффициентов с числами в треугольнике Паскаля. Элемент под номером kk в строке nn равен сумме его «родителей» под номерами kk и k1k-1 из строки n1n-1.

Формула суммирования по обеим индексам. Из формулы сложения можно рекуррентно вывести ещё одну полезную формулу, если раскладывать биномиальные коэффициенты так, чтобы убывал нижний индекс.

(r+n+1n)=k=0n(r+kk)=(r0)+(r+11)+(r+22)++(r+n1n1)+(r+nn)\binom{r+n+1}{n} = \sum\limits_{k=0}^n \binom{r+k}{k} = \binom{r}{0} + \binom{r+1}{1} + \binom{r+2}{2} + \dotsb + \binom{r+n-1}{n-1} + \binom{r+n}{n}

Формула суммирования по верхнему индексу. Предыдущая формула выражает один биномиальный коэффициент в виде суммы других, верхний и нижний индексы которых остаются «равноудалёнными». Если раскладывать по-другому, чтобы нижний индекс сохранялся, то мы получим другую, не менее полезную формулу.

(n+1m+1)=k=0n(km)=(0m)+(1m)+(2m)++(n1m)+(nm)\binom{n+1}{m + 1} = \sum\limits_{k=0}^n \binom{k}{m} = \binom{0}{m} + \binom{1}{m} + \binom{2}{m} + \dotsb + \binom{n-1}{m} + \binom{n}{m}

Формула верхнего обращения. Она описывает связь между положительными отрицательными верхними индексами. Эта формула следует из определения, в котором каждый член числителя взяли с противоположным знаком и умножили весь числитель на 1-1.

(rk)=(1)k(kr1k)\binom{r}{k}=(-1)^k \cdot \binom{k-r-1}{k}

Простым следствием этой формулы является формула суммирования

k=0n(1)k(rk)=k=0n(kr1k)=(r+nn)=(1)n(r1n)\sum\limits_{k=0}^n (-1)^k \binom{r}{k} = \sum\limits_{k=0}^n \binom{k-r-1}{k} = \binom{-r+n}{n} = (-1)^n \binom{r-1}{n}

Ещё одну важную формулу можно получить, если взять целое r=nr = n и заменить k=nmk = n - m

(nm)=(1)nm(m1nm)где n0\binom{n}{m} = (-1)^{n-m} \binom{-m-1}{n-m} \quad\text{где}~ n \ge 0

Из определения биномиальных коэффициентов можно получить довольно много важных тождеств, если выдёргивать из факториалов и нисходящих степеней разное количество членов. Давайте остановимся на особо важной формуле, которая позволяет нам менять местами нижние переменные в произведении биномиальных коэффициентов

(rm)(mk)=(rk)(rkmk)\binom{r}{m} \cdot \binom{m}{k} = \binom{r}{k} \cdot \binom{r-k}{m-k}

Обратите внимание, что формула внесения-вынесения является частным случаем этой формулы при k=1k=1.

Некоторые полезные тождества

Давайте научимся работать с суммами биномиальных коэффициентов. Я приведу несколько примеров и подробно разберу их решения. Этими примерами будут являться полезные тождества, которые нам ещё не раз встретятся.

Для вашего удобства я буду сначала формулировать задачу, а потом приводить полное решение.

Двойное произведение.

kk(nk)(mk)=(nm1n1)mдля n0\sum\limits_k k \, \binom{n}{k} \, \binom{m}{k} = \binom{n-m-1}{n-1} \cdot m \quad\text{для}~ n \ge 0

С помощью формулы внесения-вынесения избавляемся от множителя kk под суммой

kk(nk)(mk)=k(nk)(m1k1)m=mk(nk)(m1k1)\sum\limits_k k \, \binom{n}{k} \, \binom{m}{k} = \sum\limits_k \binom{n}{k} \, \binom{m-1}{k-1} \, m = m \cdot \sum\limits_k \binom{n}{k} \, \binom{m-1}{k-1}

Частичные суммы биномиального ряда. Давайте возьмём ряд, который возникал в биномиальной теореме, и обрежем его до mZm \in \ZZ. Из этого мы можем получить ещё одну интересную формулу

k=0m(m+rk)xkymk=k=0m(rk)(x)k(x+y)mk\sum\limits_{k=0}^m \binom{m+r}{k} \, x^k \, y^{m-k} = \sum\limits_{k=0}^m \binom{-r}{k} \, (-x)^k \, (x+y)^{m-k}

Доказать эту формулу можно просто по индукции по mm.

При m<0m < 0 обе части равны 00, а при m=1m = 1 обе части равны 11.

Обозначим левую часть формулы за SmS_m. Тогда, применив формулу сложения, получаем

Sm=k=0m(m+rk)xkymk=k=0m(m1+rk)xkymk+k=0m(m1+rk1)xkymk==k=0m1(m1+rk)xkymk+(m1+rm)xm+k=0m(m1+rk1)xkymk==ySm1+(m1+rm)xm+xSm1=(x+y)Sm1+(rm)(x)m\align{ S_m & = \sum\limits_{k=0}^m \binom{m+r}{k} \, x^k \, y^{m-k} = \sum\limits_{k=0}^m \binom{m-1+r}{k} \, x^k \, y^{m-k} + \sum\limits_{k=0}^m \binom{m-1+r}{k-1} \, x^k \, y^{m-k} = \\ &= \sum\limits_{k=0}^{m-1} \binom{m-1+r}{k} \, x^k \, y^{m-k} + \binom{m-1+r}{m} \, x^m + \sum\limits_{k=0}^m \binom{m-1+r}{k-1} \, x^k \, y^{m-k} = \\ &= y \cdot S_{m-1} + \binom{m-1+r}{m} \, x^m + x \cdot S_{m-1} = (x+y) \cdot S_{m-1} + \binom{-r}{m} \, (-x)^m }

Получившейся рекурренте удовлетворяет правая часть исходной формулы, а значит по предположению индукции левая и правая часть равны.

Может показаться, что это тождество на практике бесполезно, ведь мы выразили одну сумму через другую, причём обе суммы в аналитическом виде не выражаются. Но иногда вычислить одну сумму гораздо проще другой.

Например, если положить x=1x=-1 и y=1y=1, то можно получить интересный аналог формулы нижнего суммирования

k=0m(m+rk)(1)k=(rm)для mNN0\sum\limits_{k=0}^m \binom{m+r}{k} \, (-1)^k = \binom{-r}{m} \quad\text{для}~ m \in NN_0

А если положить x=y=1x=y=1 и r=m+1r=m+1, то мы получим формулу

k=0m(2m+1k)=k=0m(m+kk)2mk\sum\limits_{k=0}^m \binom{2m+1}{k} = \sum\limits_{k=0}^m \binom{m+k}{k} \, 2^{m-k}

В левой части находится сумма левой половины биномиальных коэффициентов с верхним числом 2m+12m+1, а эти коэффициенты равны своим двойникам в правой половине, поскольку треугольник Паскаля симметричен. Значит, левая часть — это просто 1/222m+1=22m1/2 \cdot 2^{2m+1} = 2^{2m}. И мы получаем совершенно неожиданную формулу

k=0m12k(m+kk)=2m\sum\limits_{k=0}^m \frac{1}{2^k} \binom{m+k}{k} = 2^m

Свёртка Вандермонда

Одним из самых мощных и элегантных тождеств в комбинаторной алгебре является свёртка Вандермонда — тождество, связывающее сумму произведений биномиальных коэффициентов с одним биномиальным коэффициентом большего порядка.

Свёртка Вандермонда

Для любых r,sCr, s \in \CC и целых n,mZn, m \in \ZZ

k(rm+k)(snk)=(r+sm+n)\sum\limits_k \binom{r}{m+k} \binom{s}{n-k} = \binom{r+s}{m+n}

Для начала стоит немного упростить сумму. Давайте произведем замену kk на kmk-m и nn на nmn-m. Тогда тождество свёртки Вандермонда преобразуется в

k(rk)(snk)=(r+sn)\sum\limits_k \binom{r}{k} \binom{s}{n-k} = \binom{r+s}{n}

Теперь нам достаточно доказать это тождество, в котором фигурируют только три переменные вместо четырёх.

Давайте запишем биномиальную теорему для (1+x)r(1+x)s(1+x)^r \cdot (1+x)^s

(1+x)r(1+x)r=(k=0(rk)xk)(m=0(sm)xm)=n=0(k(rk)(snk))xn(1+x)^r \cdot (1+x)^r = \left( \sum\limits_{k=0}^\oo \binom{r}{k} \, x^k \right) \cdot \left( \sum\limits_{m=0}^\oo \binom{s}{m} \, x^m \right) = \sum\limits_{n=0}^\oo \left( \sum\limits_k \binom{r}{k} \binom{s}{n-k} \right) \cdot x^n

С другой стороны, (1+x)r(1+x)s=(1+x)r+s(1+x)^r \cdot (1+x)^s = (1+x)^{r+s}, и

(1+x)r+s=n=0(r+sn)xn(1+x)^{r+s} = \sum\limits_{n=0}^\oo \binom{r+s}{n} \, x^n

Коэффициенты при xnx^n в обоих частях должны совпадать, а значит

k(rk)(snk)=(r+sn)\sum\limits_k \binom{r}{k} \binom{s}{n-k} = \binom{r+s}{n}

Отдельно приведу чисто комбинаторное доказательство для случая, когда r,sN0r, s \in \NN_0.

Предположим, у нас есть два непересекающихся конечных множества: множество мужчин MM, M=r|M| = r, и множество женщин WW, W=s|W| = s. Сколько существует способов выбрать группу из nn человек?

С одной стороны, это просто (r+sn)\binom{r + s}{n} — выбираем из объединения. С другой — мы можем выбрать kk мужчин и nkn - k женщин, где kk пробегает все допустимые значения. Число таких групп — (rk)(snk)\binom{r}{k} \binom{s}{n - k}. Суммируя по kk, получаем левую часть.

Свёртку Вандермонда можно применять для нахождения значений самых диких сумм с биномиальными коэффициентами.

Ниже я приведу несколько важных тождеств с суммами, которые можно легко вывести с помощью свёртки Вандермонда.

Парная нижняя восходящая сумма

k(lm+k)(sn+k)=(l+slm+n)для lN0 и sC и n,mZ\sum\limits_k \binom{l}{m+k} \binom{s}{n+k} = \binom{l+s}{l-m+n} \quad\text{для}~ l \in \NN_0 ~\text{и}~ s \in \CC ~\text{и}~ n, m \in \ZZ

Для доказательства этого тождества достаточно заменить первый биномиальный коэффициент на (llmk)\binom{l}{l-m-k} и применить свёртку Вандермонда

k(lm+k)(sn+k)=k(llmk)(sn+k)=(l+slm+n)\sum\limits_k \binom{l}{m+k} \binom{s}{n+k} = \sum\limits_k \binom{l}{l-m-k} \binom{s}{n+k} = \binom{l+s}{l-m+n}
0

Докажите, что

k(1)k(lm+k)(s+kn)=(1)l+m(smnl)для lN0 и sC и n,mZ\sum\limits_k (-1)^k \, \binom{l}{m+k} \binom{s+k}{n} = (-1)^{l+m} \, \binom{s-m}{n-l} \quad\text{для}~ l \in \N_0 ~\text{и}~ s \in \CC ~\text{и}~ n, m \in \ZZ

Мультиномиальные коэффициенты

Рассматривая разложение (x+y)n(x+y)^n мы получали в качестве коэффициентов при члене xkynkx^k \, y^{n-k} биномиальный коэффициент (nk)\binom{n}{k}. Давайте рассмотрим степень не биноме, а полинома с mm переменными (x1+x2++xm)n(x_1 + x_2 + \dotsb + x_m)^n. Какие коэффициенты мы получим?

(x1+x2++xm)n=k1,k2,,km0k1+k2++km=n(nk1 k2  km)x1k1x2k2xmkm(x_1 + x_2 + \dotsb + x_m)^n = \sum\limits_{\substack{k_1, k_2, \dotsc, k_m \;\! \ge \;\! 0 \\ k_1 + k_2 + \dotsb + k_m = n}} \binom{n}{k_1 ~ k_2 ~ \cdots ~ k_m} \, x_1^{k_1} \, x_2^{k_2} \, \dotsm \, x_m^{k_m}

Мы получим мультиномиальные коэффициенты, которые, по аналогии с биномиальными, выражают количество способов выбрать из nn предметов ровно k1k_1 предмет типа 11, k2k_2 предметов типа 22, ..., kmk_m предметов типа mm.

Мультиномиальные коэффициенты

Для n=k1+k2++kmn = k_1 + k_2 + \dotsc + k_m мультиномиальный коэффициент порядка mm

(nk1 k2  km)   ⁣=def   ⁣n!k1!k2!km!\binom{n}{k_1 ~ k_2 ~ \cdots ~ k_m} \defeq \frac{n!}{k_1! \, k_2! \, \dotsm \, k_m!}

Мультиномиальные коэффициенты можно выразить через биномиальные

(nk1 k2 k3  km)=(nk1)(nk1k2)(nk1k2k3)(nk1k2km1km)\binom{n}{k_1 ~ k_2 ~ k_3 ~ \cdots ~ k_m} = \binom{n}{k_1} \cdot \binom{n-k_1}{k_2} \cdot \binom{n-k_1-k_2}{k_3} \dotsm \binom{n-k_1-k_2-\dotsb-k_{m-1}}{k_m}

Давайте посмотрим на симметричную сумму

k(1)k(a+ba+k)(b+ab+k)=(a+b)!a!b!=(a+ba b)\sum\limits_k (-1)^k \, \binom{a+b}{a+k} \binom{b+a}{b+k} = \frac{(a+b)!}{a! \, b!} = \binom{a+b}{a ~ b}

Увеличим количество переменных до трёх. Новая сумма

k(1)k(a+ba+k)(b+cb+a)(c+ac+k)=(a+b+c)!a!b!c!=(a+b+ca b c)\sum\limits_k (-1)^k \, \binom{a+b}{a+k} \binom{b+c}{b+a} \binom{c+a}{c+k} = \frac{(a+b+c)!}{a! \, b! \, c!} = \binom{a+b+c}{a ~ b ~ c}

Далее, для четырёх переменных удобно записать сумму по парам не получится, и придётся суммировать по нескольким индексам

i,j,k(1)i+j+k(a+bb+i)(a+cc+j)(b+cc+k)(a+ddij)(b+dd+ik)(c+dd+j+k)=(a+b+c+da  b  c  d)\sum\limits_{i, \- j, \- k} (-1)^{i+j+k} \, \binom{a+b}{b+i} \binom{a+c}{c+j} \binom{b+c}{c+k} \binom{a+d}{d-i-j} \binom{b+d}{d+i-k} \binom{c+d}{d+j+k} = \binom{a+b+c+d}{a ~~ b ~~ c ~~ d}

Обобщением на случай nn переменных выступает очень страшная формула Дайсона. Фриман Дайсон в 1962 году высказал предположение об верности этой формулы, и вскоре эта формула была доказана несколькими исследователями.

Сумма Дайсона для мультиномиальных коэффициентов

Для nn переменных a1,a2,,anN0a_1, a_2, \dotsc, a_n \in \NN_0

ki,j01i<j<n(1)1   ⁣   ⁣i<j<nki,j1   ⁣   ⁣i<j<n(ai+ajaj+ki,j)(1   ⁣   ⁣j<n(aj+anan+i=1j1ki,ji=j+1nkj,i))\sum\limits_{\substack{k_{i, \- j} \;\! \ge \;\! 0 \\ 1 \;\! \le \;\! i < j < n}} (-1)^{\sum\limits_{1 \;\! \le \;\! i < j < n} k_{i, \- j}} \, \prod\limits_{1 \;\! \le \;\! i < j < n} \binom{a_i + a_j}{a_j + k_{i, \- j}} \cdot \left( \prod\limits_{1 \;\! \le \;\! j < n} \bigbinom{a_j + a_n}{a_n + \sum\limits_{i=1}^{j-1} k_{i, \- j} - \sum\limits_{i=j+1}^n k_{j, \- i} } \right)

Суммирование производится по всем (n12)\binom{n-1}{2} индексным переменным ki,jk_{i, \- j} для 1i<j<n1 \le i < j < n.

Биномиальные последовательности

Давайте вспомним бином Ньютона

(x+y)n=k=0n(nk)xkynk(x+y)^n = \sum\limits_{k=0}^n \binom{n}{k} \, x^k \, y^{n-k}

Эта формула описывает, как ведут себя обычные степени xnx^n при сложении аргументов. Но что, если мы рассмотрим другие последовательности многочленов? Оказывается, существует целый класс последовательностей многочленов, которые ведут себя почти как степени — они удовлетворяют аналогичному биномиальному тождеству, но с заменой xkx^k на другие многочлены. Такие последовательности называются биномиальными.

Биномиальные последовательности многочленов

Последовательность многочленов p0(x),p1(x),p2(x),p_0(x), \- p_1(x), \- p_2(x), \- \dotsc называется биномиальной, если

  1. нормировка — p0(x)=1p_0(x) = 1

  2. degpn(x)=n\deg p_n(x) = n и старший коэффициент многочлена pn(x)p_n(x) равен [xn]pn(x)=1[x^n] p_n(x) = 1

  3. для всех nN0n \in \NN_0 выполняется биномиальное тождество

    pn(x+y)=k=0n(nk)pk(x)pnk(y)p_n (x+y) = \sum\limits_{k=0}^n \binom{n}{k} \cdot p_k(x) \cdot p_{n-k}(y)

Обычные многочлены pn(x)=xnp_n(x) = x^n действительно образуют биномиальную последовательность. Первые два свойства, очевидно, выполняются, а третье — это в точности бином Ньютона.

Настоящая магия начинается, когда мы обнаруживаем, что существуют и другие последовательности с таким свойством. Например нисходящие степени xnx^{\underline{n}}, восходящие степени xnx^{\overline{n}}, многочлены Абеля An(x)=x(xan)n1A_n(x) = x \, (x - an)^{n-1}.

Все эти последовательности удовлетворяют тому же биномиальному тождеству, что и обычные степени. Это означает, что структура бинома Ньютона — не уникальное свойство степеней, а более общий феномен, который проявляется во многих математических объектах.

Зачем вся эта прелесть нужна?

Биномиальные последовательности возникают в самых разных областях математики: в комбинаторике они описывают различные структуры на множествах; в теории вероятностей связаны с определёнными распределениями; в алгебре представляют естественные базисы в пространствах многочленов; в теории операторов соответствуют специальным дифференциальным операторам.

Изучение биномиальных последовательностей привело к созданию целого раздела математики — теневого исчисления (umbral calculus), который предоставляет мощные методы для работы с биномиальными и подобными последовательностями, а так же открывает возможность работать со сложными задачами, для решения которых стандартных методов было недостаточно.

Биномиальное тождество кажется слишком громоздким — для каждой последовательности многочленов нужно проверять его отдельно, вычисляя сложные суммы. Как ни странно, существует единый способ охарактеризовать все биномиальные последовательности сразу.

Давайте вместо работы с отдельными многочленами pn(x)p_n (x) перейдём к их экспоненциальной производящей функции

P(x,t)=n=0pn(x)tnn!P(x, t) = \sum\limits_{n=0}^\oo p_n(x) \cdot \frac{t^n}{n!}

Давайте умножим биномиальное тождество на tn/n!t^n/n! и просуммируем по всем nn

n=0pn(x+y)tnn!=n=0k=0n(nk)pk(x)pnk(y)tnn!\sum\limits_{n=0}^\oo p_n(x+y) \cdot \frac{t^n}{n!} = \sum\limits_{n=0}^\oo \sum\limits_{k=0}^n \binom{n}{k} \cdot p_k(x) \cdot p_{n-k}(y) \cdot \frac{t^n}{n!}

Правая часть — это просто P(x+y,t)P(x+y, t). А левая часть после перестановки суммирования превращается в произведение

(k=0pk(x)tkk!)(m=0pm(y)tmm!)=P(x,t)P(y,t)\left( \sum\limits_{k=0}^\oo p_k(x) \cdot \frac{t^k}{k!} \right) \cdot \left( \sum\limits_{m=0}^\oo p_m(y) \cdot \frac{t^m}{m!} \right) = P(x, t) \cdot P(y, t)

Таким образом, биномиальное тождество эквивалентно функциональному уравнению для экспоненциальных производящих функций

P(x+y,t)=P(x,t)P(y,t)P(x+y, t) = P(x, t) \cdot P(y, t)

А это уравнение уже легко решается. При фиксированном tt и естественных условиях регулярности решение этого функционального уравнения имеет вид

P(x,t)=exc(t)P(x, t) = e^{x \, c(t)}

где c(t)=c0+c1t+c2t2+c(t) = c_0 + c_1 \, t + c_2 \, t^2 + \dotsb — какой-то формальный степенной ряд по tt.

Чтобы p0(x)=1p_0 (x) = 1 для всех xx, нужно, чтобы свободный член ряда c(t)c(t) был равен 00. Также, чтобы старший коэффициент многочлена pn(x)p_n(x) был равен 11, нужно, чтобы c1=0c_1 = 0. Получается, что

c(t)=t+c2t2+c3t3+c(t) = t + c_2 \, t^2 + c_3 \, t^3 + \dotsb

Итак, мы получили мощную теорему, описывающую все биномиальные последоательности многочленов.

Теорема о виде производящей функции биномиальной последовательности

Последовательность многочленов p0(x),p1(x),p2(x),p_0(x), \- p_1(x), \- p_2(x), \- \dotsc является биномиальной тогда и только тогда, когда её экспоненциальная производящая функция равна экспоненте, то есть

n=0pn(x)tnn!=exc(t)\sum\limits_{n=0}^\oo p_n(x) \cdot \frac{t^n}{n!} = e^{x \, c(t)}

где c(t)=t+c2t2+c3t3+c(t) = t + c_2 \, t^2 + c_3 \, t^3 + \dotsb — формальный степенной ряд по tt.

Этот фундаментальный результат, восходящий к работам Джона Блиссара и Эдуарда Лукаса в XIX веке, показывает, что каждая биномиальная последовательность полностью определяется своей тенью — формальным степенным рядом c(t)c(t). Именно эта характеристика позволила систематически изучать все биномиальные последовательности одновременно и заложила основы современного теневого исчисления.

Теперь давайте применим эту теорему и получим полезные формулы для разных биномиальных последовательностей.

Обычные степени. pn(x)=xnp_n(x) = x^n.

n=0xntnn!=extи здесь c(t)=t\sum\limits_{n=0}^\oo x^n \cdot \frac{t^n}{n!} = e^{xt} \quad\text{и здесь}~ c(t) = t

Нисходящие степени. pn(x)=xnp_n(x) = x^{\underline{n}}.

n=0xntnn!=(1+t)x=exln(1+t)и здесь c(t)=ln(1+t)\sum\limits_{n=0}^\oo x^{\underline{n}} \cdot \frac{t^n}{n!} = (1+t)^x = e^{x \cdot \ln (1+t)} \quad\text{и здесь}~ c(t) = \ln (1+t)

Восходящие степени. pn(x)=xnp_n(x) = x^{\overline{n}}.

n=0xntnn!=(1t)x=exln(1+t)и здесь c(t)=ln(1t)\sum\limits_{n=0}^\oo x^{\overline{n}} \cdot \frac{t^n}{n!} = (1-t)^{-x} = e^{-x \cdot \ln (1+t)} \quad\text{и здесь}~ c(t) = - \ln (1-t)

Многочлены Абеля. pn(x)=x(xan)n1p_n(x) = x \, (x-an)^{n-1}.

n=0x(xan)n1tnn!=exW(at)/aи здесь c(t)=W(at)a\sum\limits_{n=0}^\oo x \, (x-an)^{n-1} \cdot \frac{t^n}{n!} = e^{x \cdot W(at)/a} \quad\text{и здесь}~ c(t) = \frac{W(at)}{a}

Далее, записывая биномиальное тождество для каждых последовательностей, получаем аналоги бинома Ньютона.

Альфредо Капелли в 1887 году открыл тождество для восходящих степеней в рамках работ по комбинаторике и символьным методам.

(x+y)n=k=0n(nk)xkynk(x+y)^{\overline{n}} = \sum\limits_{k=0}^n \binom{n}{k} \, x^{\overline{k}} \, y^{\overline{n-k}}

С нисходящими степенями всё гораздо проще, ведь они естественно возникают в исчислении конечных разностей, поэтому они появлялись в трудах Якова Бернулли, Исаака Ньютона и других математиков.

(x+y)n=k=0n(nk)xkynk(x+y)^{\underline{n}} = \sum\limits_{k=0}^n \binom{n}{k} \, x^{\underline{k}} \, y^{\underline{n-k}}

Нильс Хенрик Абель в 1826 году открыл биномиальное тождество для многочленов Абеля при работе над доказательством неразрешимости уравнений в радикалах

(x+y)n=k=0n(nk)x(xak)k1(y+ak)nk(x+y)^n = \sum\limits_{k=0}^n \binom{n}{k} \, x \, (x-ak)^{k-1} \, (y+ak)^{n-k}

Тождество Абеля является обобщением бинома Ньютона. Его можно использовать для решения самых разных комбинаторных задач.

Пусть An(x)=x(x+n)n1A_n(x) = x \, (x+n)^{n-1} — многочлен Абеля при a=1a = -1. Запишем для него биномиальное тождество.

An(x+y)=k=0n(nk)Ak(x)Ank(y)A_n(x+y) = \sum\limits_{k=0}^n \binom{n}{k} \cdot A_k(x) \cdot A_{n-k}(y)

Продифференцируем его по xx и по yy

An(x+y)=k=0n(nk)Ak(x)Ank(y)A_n''(x+y) = \sum\limits_{k=0}^n \binom{n}{k} \cdot A_k'(x) \cdot A_{n-k}'(y)

Производная многочлена Абеля равна Am(x)=m(x+1)(x+m)m2A_m'(x) = m \, (x+1) \, (x+m)^{m-2}.
И вторая производная при n2n \ge 2 равна An(x)=n(n1)(x+2)(x+n)n3A_n''(x) = n \, (n-1) \, (x+2) \, (x+n)^{n-3}.

Подставим x=0x=0 и y=0y=0 в дважды продифференцированное биномиальное тождество. Также сразу подставим значения Am(0)=mm1A_m'(0) = m^{m-1} и An(0)=2(n1)nn2A_n''(0) = 2 \, (n-1) \, n^{n-2}

2(n1)nn2=k=1n1(nk)kk1(nk)nk12 \, (n-1) \, n^{n-2} = \sum\limits_{k=1}^{n-1} \binom{n}{k} \cdot k^{k-1} \cdot (n-k)^{n-k-1}

Заменив nkn-k на mm и переписав сумму, получаем формулу

2(n1)nn2=k,m1k+m=n(nk)kk1mm12 \, (n-1) \, n^{n-2} = \sum\limits_{\substack{k, m \;\! \ge \;\! 1 \\ k + m = n}} \binom{n}{k} \cdot k^{k-1} \cdot m^{m-1}

Полученное тождество имеет комбинаторный смысл в контексте деревьев. Посмотрите внимательно на формулу. В левой части написано количество ориентированных рёбер во всех деревьях на nn помеченных вершинах. В правой части написано количество способов построить два подвешенных дерева, соединённых ориентированным ребром между корнями. Каждому ориентированному ребру соответствует разбиение на два подвешенных дерева. Вот мы и построили биекцию между двумя величинами.

Поделив обе части на 2(n1)2 \, (n-1) можно получить формулу для количества свободных деревьев.

nn2=12(n1)k,m1k+m=n(nk)kk1mm1n^{n-2} = \frac{1}{2 \, (n-1)} \sum\limits_{\substack{k, m \;\! \ge \;\! 1 \\ k + m = n}} \binom{n}{k} \cdot k^{k-1} \cdot m^{m-1}

Для биномиальной последовательности верно мультиномиальное тождество

pn(x1+x2++xk)=m1+m2++mk=n(nm1 m2  mk)pm1(x1)pm2(x2)pmk(xk)p_n (x_1 + x_2 + \dotsc + x_k) = \sum\limits_{m_1 + m_2 + \dotsc + m_k = n} \binom{n}{m_1 ~ m_2 ~ \cdots ~ m_k} \cdot p_{m_1}(x_1) \, p_{m_2}(x_2) \dotsm \, p_{m_k}(x_k)

Фибономиальные коэффициенты

Эдуард Люка, исследуя свойства разных комбинаторных объектов, обнаружил ещё один аналог биномиальных коэффициентов, достаточно специфичный, но не менее интересный.

Вместо обычных чисел в произведении он рассматривал числа Фибоначчи.

Фибономиальные коэффициенты

Фибономиальный коэффициент — число

(nk) ⁣ ⁣F   ⁣=def   ⁣FnFn1Fn2Fnk+2Fnk+1FkFk1Fk2F2F1=j=1kFnk+jFj\fbinom{n}{k} \defeq \frac{F_{n} \, F_{n-1} \, F_{n-2} \, \dotsm \, F_{n-k+2} \, F_{n-k+1}}{F_k \, F_{k-1} \, F_{k-2} \, \dotsm \, F_2 \, F_1} = \prod\limits_{j=1}^k \frac{F_{n-k+j}}{F_j}

Из определения можно получить аналог формулы сложения для биномиальных коэффициентов. Эта формула служит основной рекуррентной формулой фибономиальных коэффициентов.

(nk) ⁣ ⁣F=Fk1(n1k) ⁣ ⁣F+Fnk+1(n1k1) ⁣ ⁣F\fbinom{n}{k} = F_{k-1} \cdot \fbinom{n-1}{k} + F_{n-k+1} \cdot \fbinom{n-1}{k-1}