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

Материал из testwiki
Перейти к навигации Перейти к поиску

Биномиа́льный коэффицие́нт — коэффициент перед членом разложения бинома Ньютона (1+x)n по степеням x. Коэффициент при xk обозначается (nk) или Cnk и читается «биномиальный коэффициент из n по k» (или «число сочетаний из n по k»):

(1+x)n=(n0)+(n1)x+(n2)x2+…+(nn)xn=∑k=0n(nk)xk

для натуральных степеней n.

Биномиальные коэффициенты могут быть также определены для произвольных действительных показателей n. В случае произвольного действительного числа n биномиальные коэффициенты определяются как коэффициенты разложения выражения (1+x)n в бесконечный степенной ряд:

(1+x)n=∑k=0∞(nk)xk,

где в случае неотрицательных целых n все коэффициенты (nk) при k>n обращаются в нуль и поэтому данное разложение является конечной суммой.

В комбинаторике биномиальный коэффициент (nk) для неотрицательных целых чисел n и k интерпретируется как количество сочетаний из n по k, то есть как количество всех (нестрогих) подмножеств (выборок) размера k в n-элементном множестве.

Биномиальные коэффициенты часто возникают в задачах комбинаторики и теории вероятностей. Обобщением биномиальных коэффициентов являются мультиномиальные коэффициенты.

Явные формулы

Вычисляя коэффициенты в разложении (1+x)n в степенной ряд, можно получить явные формулы для биномиальных коэффициентов (nk).

Для всех действительных чисел n и целых чисел k:

(nk)={n(n−1)(n−2)⋅…⋅(n−k+1)k!,k⩾00,k<0,

где k! обозначает факториал числа k.

Для неотрицательных целых n и k также справедливы формулы:

(nk)={n!k!(n−k)!,0⩽k⩽n0,k>n.

Для целых отрицательных показателей коэффициенты разложения бинома (1+x)−n равны:

(−nk)={(−1)k⋅(n+k−1)!k!(n−1)!,k⩾00,k<0.

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

Visualisation of binomial expansion up to the 4th power
Визуализация биномиального коэффициента до 4 степени

Шаблон:Main

Тождество:

(nk)=(n−1k−1)+(n−1k)

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

n=0:1n=1:11n=2:121n=3:1331n=4:14641⋮⋮⋮⋮⋮.

Треугольная таблица, предложенная Паскалем в «Трактате об арифметическом треугольнике» (1654), отличается от той, что выписана здесь, поворотом на 45°. Таблицы для изображения биномиальных коэффициентов были известны и ранее (Тарталье, Омару Хайяму, аль-Караджи, Яну Хуэю).

Если в каждой строке треугольника Паскаля все числа разделить на 2n (это сумма всех чисел в строке), то все строки при стремлении n к бесконечности примут вид функции нормального распределения.

Свойства

Производящие функции

Для фиксированного значения n производящей функцией последовательности биномиальных коэффициентов (n0),(n1),(n2),… является:

∑k=0∞(nk)xk=(1+x)n.

Для фиксированного значения k производящая функция последовательности коэффициентов (0k),(1k),(2k),… равна:

∑n(nk)yn=yk(1−y)k+1.

Двумерной производящей функцией биномиальных коэффициентов (nk) для целых n,k является:

∑n,k(nk)xkyn=11−y−xy, или ∑n=0∞∑k=0n(nk)xkyn=11−y−xy.

Делимость

Из теоремы Люка следует, что:

  • коэффициент (nk) нечётен ⟺ в двоичной записи числа k единицы не стоят в тех разрядах, где в числе n стоят нули;
  • коэффициент (nk) некратен простому числу p ⟺ в p-ичной записи числа k все разряды не превосходят соответствующих разрядов числа n;
  • в последовательности биномиальных коэффициентов (n0),(n1),…,(nn):
    • все числа не кратны заданному простому p ⟺ число n представимо в виде mpk−1, где натуральное число m<p;
    • все числа, кроме первого и последнего, кратны заданному простому p ⟺ n=pk;
    • количество нечётных чисел равно степени двойки, показатель которой равен количеству единиц в двоичной записи числа n;
    • чётных и нечётных чисел не может быть поровну;
    • количество чисел, не кратных простому p, равно (a1+1)⋯(am+1), где числа a1,…,am — разряды p-ичной записи числа n; а число m=⌊logpn⌋+1, где ⌊⋅⌋ — функция «пол», — это длина данной записи.

Основные тождества

Шаблон:Дополнить раздел

  • (nk)=(n−1k−1)+(n−1k).
  • (nk)=(−1)k(−n+k−1k).
  • (nk)=(nn−k) (правило симметрии).
  • (nk)=nk(n−1k−1) (вынесение за скобки).
  • (nm)(mn−k)=(nk)(kn−m) (замена индексов).
  • (n−k)(nk)=n(n−1k).

Бином Ньютона и следствия

  • (n0)+(n1)+…+(nn)=2n, где n∈ℕ.
  • ∑i+j=m(nj)(ni)(−1)j={(nm/2)(−1)m/2,если m≡0(mod2),0,если m≡1(mod2).
  • ∑j=kn(nj)(−1)j=(−1)k(n−1k−1).
  • (n0)−(n1)+…+(−1)n(nn)=0, где n∈ℕ.
  • Более сильное тождество: (n0)+(n2)+…+(n2⌊n/2⌋)=2n−1, где n∈ℕ.
  • ∑k=−aa(−1)k(2ak+a)3=(3a)!(a!)3,

а более общем виде

∑k=−aa(−1)k(a+ba+k)(b+cb+k)(c+ac+k)=(a+b+c)!a!b!c!.

Свёртка Вандермонда и следствия

Шаблон:Дополнить раздел Свёртка Вандермонда:

∑k(rm+k)(sn−k)=(r+sm+n),

где m,n∈ℤ, а r,s∈ℝ. Это тождество получается вычислением коэффициента при xm+n в разложении (1+x)r(1+x)s с учётом тождества (1+x)r+s=(1+x)r(1+x)s. Сумма берётся по всем целым k, для которых (rm+k)(sn−k)≠0. Для произвольных действительных r, s число ненулевых слагаемых в сумме будет конечно.

Следствие свёртки Вандермонда:

(n0)(aa)−(n1)(a+1a)+…+(−1)n(nn)(a+na)=(−1)n(an).

Более общее тождество:

∑i=0p(−1)i(pi)∏m=1n(i+smsm)=0, если ∑m=1nsm<p.

Ещё одним следствием свёртки является следующее тождество: (n0)2+(n1)2+…+(nn)2=(2nn).

Другие тождества

  • 4n∑k=1nk2(2nn+k)=22n, где n — натуральное число.
  • ∑k=1n(−1)k−1k(nk)=∑k=1n1k=Hn — n-е гармоническое число.
  • Мультисекция ряда (1+x)n даёт тождество, выражающее сумму биномиальных коэффициентов с произвольным шагом s и смещением t (0⩽t<s) в виде конечной суммы из s слагаемых:
(nt)+(nt+s)+(nt+2s)+…=1s∑j=0s−1(2cos⁡πjs)ncos⁡π(n−2t)js.

Также имеют место равенства:

(n3)=n(n−1)(n−2)2−∑i=2n−1(n−i)(n−i+1)==n(n−1)(n−2)−∑i=2n−1(n−i)(2n−i+1)==3(n3)−2(n3);
(n4)=n(n−1)(n−2)(n−3)2−∑i=3n−1(n−i)(n(n−1)−∑i0=1i−2i0)==n(n−1)(n−2)(n−3)−∑i=3n−1(n−i)(2n(n−1)−∑i0=1i−2i0)==24(n4)−23(n4);
(n5)=n(n−1)(n−2)(n−3)(n−4)2−−∑i=4n−1(n−i)(n(n−1)(n−2)−∑i0=1i−3∑i1=1i0i1)==n(n−1)(n−2)(n−3)(n−4)−−∑i=4n−1(n−i)(2n(n−1)(n−2)−∑i0=1i−3∑i1=1i0i1)==120(n5)−119(n5).

Откуда следует:

(n3)=∑i=2n−1(n−i)(2n−i+1)2=∑i=2n−1(n−i)(2An1−(i−11))2;
(n4)=∑i=3n−1(n−i)(2n(n−1)−∑i0=1i−2i0)23=∑i=3n−1(n−i)(2An2−(i−12))23;
(n5)=∑i=4n−1(n−i)(2n(n−1)(n−2)−∑i0=1i−3∑i1=1i0i1)119==∑i=4n−1(n−i)(2An3−(i−13))119;
(nk)=∑i=k−1n−1(n−i)(2Ank−2−(i−1k−2))k!−1,

где Ank — количество размещений из n по k.

Матричные соотношения

Если взять квадратную матрицу, отсчитав N элементов по катетам треугольника Паскаля и повернув матрицу на любой из четырёх углов, то детерминант этих четырёх матриц равен ±1 при любом N, причём детерминант матрицы с вершиной треугольника в верхнем левом углу равен 1.

В матрице [(i+ji)] числа на диагонали i+j=Const повторяют числа строк треугольника Паскаля (i,j=0,1,…). Её можно разложить в произведение двух строго диагональных матриц: нижнетреугольной и получаемой из неё транспонированием:

[(i+ji)]=UUT,

где U=[(ij)]. Обратная матрица к U имеет вид:

U−1=[(−1)i+j(ij)].

Таким образом, можно разложить обратную матрицу к [(i+ji)] в произведение двух строго диагональных матриц: первая матрица — верхнетреугольная, а вторая получается из первой путём транспонирования, что позволяет дать явное выражение для обратных элементов:

[(i+ji)]m,n−1=∑k=0p(−1)m+n(km)(kn), где i, j, m, n=0…p.

Элементы обратной матрицы меняются при изменении её размера и, в отличие от матрицы [(i+ji)], недостаточно приписать новую строку и столбец. Столбец j матрицы [(i+ji)] есть многочлен степени j по аргументу i, следовательно, первые p столбцов образуют полный базис в пространстве векторов длины p+1, чьи координаты могут быть интерполированы многочленом равной или меньшей степени p−1. Нижняя строка матрицы [(i+ji)]m,n−1 ортогональна любому такому вектору.

[(i+ji)]p,n−1=∑k=0p(−1)p+n(kp)(kn)=(−1)p+n(pn)
∑n=0p(−1)p+n(pn)Pa(n)=0 при a<p, где Pa(n) многочлен степени a.

Если произвольный вектор длины p+1 можно интерполировать многочленом степени i<p, то скалярное произведение со строками i+1,i+2,…,p (нумерация с 0) матрицы [(i+ji)]m,n−1 равно нулю. Используя тождество выше и равенство единицы скалярного произведения нижней строки матрицы [(i+ji)]m,n−1 на последний столбец матрицы [(i+ji)], получаем:

∑n=0p(−1)p+n(pn)np=p!.

Для показателя большего p можно задать рекуррентную формулу:

∑n=0p(−1)p+n(pn)np+a=p!P2a(p)=fa(p),

где многочлен

P2a+2(p)=∑x=1pxP2a(x);a⩾0;P0(p)=1.

Для доказательства сперва устанавливается тождество:

fa(p+1)=∑x=0a(p+1)x+1fa−x(p).

Если требуется найти формулу не для всех показателей степени, то:

P2a(p)=p2a(p+aa)Qa−1(p);a>0.

Старший коэффициент Qa−1(p) равен 1, потребуется a-1 значений, чтобы найти другие коэффициенты:

Qa−1(p)=p(p+1)Ta−3(p) для a≡1(mod2);a⩾3.

Асимптотика и оценки

Непосредственно из формулы Стирлинга следует, что для α∈(0;1) верно Cnαn∼12πα(1−α)n(1α)αn(11−α)(1−α)n=(1αα(1−α)(1−α)+o(1))n.

Целозначные полиномы

Шаблон:Main Биномиальные коэффициенты (x0)=1,(x1)=x,(x2)=x22−x2, … являются целозначными полиномами от x, то есть принимают целые значения при целых значениях x, — это нетрудно понять, например, по треугольнику Паскаля. Более того, они образуют базис целозначных полиномов, в котором все целозначные полиномы выражаются как линейные комбинации с целыми коэффициентами.[1]

В то же время стандартный базис 1,x,x2, … не позволяет выразить все целочисленные полиномы, если использовать только целые коэффициенты, так как уже (x2)=x22−x2 имеет дробные коэффициенты при степенях x.

Этот результат обобщается на полиномы многих переменных. А именно, если полином R(x1,…,xm) степени k имеет вещественные коэффициенты и принимает целые значения при целых значениях переменных, то

R(x1,…,xm)=P((x11),…,(x1k),…,(xm1),…,(xmk)),

где P — полином с целыми коэффициентами.[2]

Алгоритмы вычисления

Биномиальные коэффициенты можно вычислить с помощью рекуррентной формулы (nk)=(n−1k)+(n−1k−1), если на каждом шаге n хранить значения (nk) при k=0,1,…,n‾. Этот алгоритм особенно эффективен, если нужно получить все значения (nk) при фиксированном n. Алгоритм требует O(n) памяти (O(n2) при вычислении всей таблицы биномиальных коэффициентов) и O(n2) времени (в предположении, что каждое число занимает единицу памяти и операции с числами выполняются за единицу времени), где O — «o» большое.

При фиксированном значении k биномиальные коэффициенты могут быть вычислены по рекуррентной формуле (nk)=nn−k⋅(n−1k) с начальным значением (kk)=1. Для вычисления значения (nk) этот метод требует O(1) памяти и O(n) времени.

Если требуется вычислить коэффициенты (nk) при фиксированном значении n, можно воспользоваться формулой (nk)=n−k+1k⋅(nk−1) при начальном условии (n0)=1. При каждом шаге итерации числитель уменьшается на 1 (начальное значение равно n), а знаменатель соответственно увеличивается на 1 (начальное значение — 1). Для вычисления значения (nk) этот метод требует O(1) памяти и O(k) времени.

Примечания

Шаблон:Примечания

Литература