Формула включения-исключения — различия между версиями
м (rollbackEdits.php mass rollback) |
|||
(не показано 16 промежуточных версий 7 участников) | |||
Строка 18: | Строка 18: | ||
{{Теорема | {{Теорема | ||
− | |statement=Пусть <tex dpi = "140"> A = \bigcup \limits_{i=1}^{n}A_i </tex> , тогда по формуле включения-исключения: <center> <tex dpi = "140"> | A | = \sum \limits_{I \in 2^N} (-1)^{|I|+1} \left| \bigcap \limits_{ j \in I} A_j \right| </tex> </center> | + | |statement=Пусть <tex dpi = "140"> A = \bigcup \limits_{i=1}^{n}A_i </tex> , тогда по формуле включения-исключения: <center> <tex dpi = "140"> | A | = \sum \limits_{I \in 2^N -1} (-1)^{|I|+1} \left| \bigcap \limits_{ j \in I} A_j \right| </tex> </center> |
− | Причем <tex dpi = "140"> N = \{ 1,2, \ldots ,n \} </tex>. Здесь за <tex dpi = "140"> 2^N </tex> обозначим множество всех непустых подмножеств <tex dpi = "140"> N </tex>. | + | Причем <tex dpi = "140"> N = \{ 1,2, \ldots ,n \} </tex>. Здесь за <tex dpi = "140"> 2^N - 1 </tex> обозначим множество всех непустых подмножеств <tex dpi = "140"> N </tex>. |
Строка 29: | Строка 29: | ||
Рассмотрим некоторый элемент <tex dpi = "140"> x \in \bigcup \limits_{i=1}^{n}A_i </tex>. Пусть <tex dpi = "140"> x \in \bigcap \limits_{j=1}^{t}A_{i_j} </tex>. Тогда найдем число вхождений элемента <tex dpi = "140"> x </tex> в правую часть формулы. | Рассмотрим некоторый элемент <tex dpi = "140"> x \in \bigcup \limits_{i=1}^{n}A_i </tex>. Пусть <tex dpi = "140"> x \in \bigcap \limits_{j=1}^{t}A_{i_j} </tex>. Тогда найдем число вхождений элемента <tex dpi = "140"> x </tex> в правую часть формулы. | ||
− | <tex dpi = "140">k = (-1) ^ {t + 1} {t \choose t} + (-1) ^ {t} {t \choose {t - 1}} + \ldots + (-1)^2 {t \choose 1 | + | <tex dpi = "140">k = (-1) ^ {t + 1} {t \choose t} + (-1) ^ {t} {t \choose {t - 1}} + \ldots + (-1)^2 {t \choose 1} = -\sum \limits_{j = 1}^{t} (-1)^j {t \choose j} </tex><tex dpi = "140"> = {t \choose 0} - \sum \limits_{j = 0 |
+ | }^{t} (-1)^j {t \choose j} </tex> | ||
Докажем, что <tex dpi = "140"> \sum \limits_{j = 0}^{t} (-1)^j {t \choose j} = 0</tex> | Докажем, что <tex dpi = "140"> \sum \limits_{j = 0}^{t} (-1)^j {t \choose j} = 0</tex> | ||
Строка 87: | Строка 88: | ||
|definition='''Беспорядок''' (англ. ''Derangement'') — это перестановка чисел от <tex>1</tex> до <tex>n</tex>, в которой ни один элемент не стоит на своём месте. | |definition='''Беспорядок''' (англ. ''Derangement'') — это перестановка чисел от <tex>1</tex> до <tex>n</tex>, в которой ни один элемент не стоит на своём месте. | ||
}} | }} | ||
+ | |||
+ | === Явная формула с использованием принципа включения-исключения === | ||
{{Теорема | {{Теорема | ||
|id=идентификатор (необязательно), пример: th1. | |id=идентификатор (необязательно), пример: th1. | ||
|statement= Количество беспорядков порядка <tex>n</tex> равно субфакториалу <ref>[http://ru.wikipedia.org/wiki/%D0%A1%D1%83%D0%B1%D1%84%D0%B0%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D0%B0%D0%BB Википедия {{---}} Субфакториал]</ref> числа <tex>n</tex> (обозначение: <tex>!n</tex>) и вычисляется по формуле: | |statement= Количество беспорядков порядка <tex>n</tex> равно субфакториалу <ref>[http://ru.wikipedia.org/wiki/%D0%A1%D1%83%D0%B1%D1%84%D0%B0%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D0%B0%D0%BB Википедия {{---}} Субфакториал]</ref> числа <tex>n</tex> (обозначение: <tex>!n</tex>) и вычисляется по формуле: | ||
− | <tex dpi = " | + | <tex dpi = "150"> !n = n! - \frac{n!}{1!} + \frac{n!}{2!} - \frac{n!}{3!} + ... + \frac{n!}{n!}(-1)^{n}= \sum_{k=0}^n\frac{n!}{k!}(-1)^{k} </tex> |
|proof= | |proof= | ||
Воспользуемся принципом включения-исключения: обозначим за <tex dpi = "130">A_i</tex> — количество перестановок из <tex dpi = "130">n</tex> элементов, в каждой из которых <tex dpi = "130">i</tex>-ый элемент стоит на своём месте. Тогда по формуле включения-исключения имеем: | Воспользуемся принципом включения-исключения: обозначим за <tex dpi = "130">A_i</tex> — количество перестановок из <tex dpi = "130">n</tex> элементов, в каждой из которых <tex dpi = "130">i</tex>-ый элемент стоит на своём месте. Тогда по формуле включения-исключения имеем: | ||
Строка 114: | Строка 117: | ||
}} | }} | ||
− | == | + | === Рекурретное соотношение для нахождения количества беспорядков === |
{{Утверждение | {{Утверждение | ||
Строка 128: | Строка 131: | ||
где <tex dpi = "140"> d(1)=0 </tex>, а <tex dpi = "140"> d(2)=1 </tex> | где <tex dpi = "140"> d(1)=0 </tex>, а <tex dpi = "140"> d(2)=1 </tex> | ||
|proof = | |proof = | ||
− | 1) | + | 1) Докажем второе соотношение: |
Так как <tex dpi = "140"> d(n)=!n </tex>, то можно переписать эту формулу, как <tex dpi = "140"> !n=n!(n-1)+(-1)^{n} </tex> | Так как <tex dpi = "140"> d(n)=!n </tex>, то можно переписать эту формулу, как <tex dpi = "140"> !n=n!(n-1)+(-1)^{n} </tex> | ||
+ | |||
По формуле субфакториала <tex dpi = "140"> !n=n!(\sum \limits_{k = 0}^{n-1} \frac {(-1)^{k}}{k!} + \frac {(-1)^{n}}{n!})=n!\sum \limits_{k = 0}^{n-1} \frac {(-1)^{k}}{k!}+(-1)^{n}=n \times !(n-1)+(-1)^{n}</tex> | По формуле субфакториала <tex dpi = "140"> !n=n!(\sum \limits_{k = 0}^{n-1} \frac {(-1)^{k}}{k!} + \frac {(-1)^{n}}{n!})=n!\sum \limits_{k = 0}^{n-1} \frac {(-1)^{k}}{k!}+(-1)^{n}=n \times !(n-1)+(-1)^{n}</tex> | ||
− | 2) Теперь, | + | 2) Докажем первое соотношение: |
+ | |||
+ | У нас есть <tex> n </tex> чисел и столько же мест. Мы должны найти количество способов разместить эти числа так, что ни одно из чисел не оказалось на месте с таким же номером. | ||
+ | |||
+ | Предположим, что первое число оказалось на месте с номером <tex> i </tex>. Это можно сделать <tex> n-1 </tex> способами, так как первое число может оказаться на любом месте, кроме первого. Теперь есть 2 варианта, зависящие от того, окажется ли число с номером <tex> i </tex> на первом месте или нет. | ||
+ | |||
+ | * Число <tex> i </tex> на первом месте. Остается <tex> n-2 </tex> мест и <tex> n-2 </tex> чисел. То есть количество беспорядков от <tex> n-2 </tex> | ||
+ | * Число <tex> i </tex> не может оказаться на первом месте. Это эквивалентно решению задачи с <tex> n-1 </tex> местами и <tex> n-1 </tex> числами (первое число уже заняло место, а остальные еще нет): у каждого числа будет одно запрещенное место (у числа с номером <tex> i </tex> запрещенным будет первое место). Получается количество беспорядков от <tex> n-1 </tex>. | ||
+ | |||
+ | Эти 2 случая не пересекаются и поэтому суммируются. В первом случае число <tex> i </tex> занимает первое место, затем идет распределение остальных чисел, не зависящее от первого и <tex> i </tex>-го чисел. Во втором же случае число с номером <tex> i </tex> попасть на первое место не может, а значит займет какое-то другое место, и распределение остальных чисел уже будет другое. | ||
− | + | В итоге получается необходимая формула. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
}} | }} | ||
+ | |||
+ | == Задача о перестановках == | ||
+ | |||
+ | Сколько есть перестановок чисел от <tex> 0 </tex> до <tex> 9 </tex> таких, что первый элемент больше <tex> 1 </tex>, а последний меньше <tex> 8 </tex>? | ||
+ | |||
+ | Посчитаем количество "плохих" перестановок, то есть таких, у которых первый элемент <tex> \leqslant 1 </tex> (множество таких перестановок обозначим <tex> X </tex>) и/или последний <tex> \leqslant 8 </tex> (множество таких перестановок обозначим <tex> Y </tex>). | ||
+ | |||
+ | Тогда количество "плохих" перестановок по формуле включений-исключений равно: | ||
+ | |||
+ | <tex> |X|+|Y|-|X \cap Y| </tex> | ||
+ | |||
+ | Проведя несложные комбинаторные вычисления, получим: | ||
+ | |||
+ | <tex> 2 \times 9!+2 \times 9! - 2 \times 2 \times 8! </tex> | ||
+ | |||
+ | Отнимая это число от общего числа перестановок <tex> 10! </tex>, получим ответ. | ||
+ | |||
+ | == Задача о нахождении числа взаимно простых четвёрок == | ||
+ | |||
+ | Дано <tex> n </tex> чисел: <tex> a_1, a_2,..., a_n </tex>. Необходимо посчитать количество способов выбрать из них четыре числа так, что они будут взаимно простыми, то есть их НОД равен единице. | ||
+ | |||
+ | Посчитаем число "плохих" четвёрок, то есть таких, в которых все числа делятся на число <tex> d > 1 </tex>. | ||
+ | |||
+ | Воспользуемся формулой включений-исключений, суммируя количество четвёрок, делящихся на <tex> d </tex> (но, возможно, делящихся и на больший делитель). | ||
+ | |||
+ | <tex> answer=\sum \limits_{d>1} (-1)^{deg(d)-1} \times f(d) </tex>, | ||
+ | |||
+ | где <tex> deg(d) </tex> — это количество простых в факторизации числа <tex> d </tex>, <tex> f(d) </tex> — количество четвёрок, делящихся на <tex> d </tex>. | ||
+ | |||
+ | Чтобы посчитать функцию <tex> f(d) </tex>, надо просто посчитать количество чисел, кратных <tex> d </tex>, и с помощью биномиальных коэффициентов посчитать число способов выбрать из них четвёрку. | ||
+ | |||
+ | Таким образом, с помощью формулы включений-исключений мы суммируем количество четвёрок, делящихся на простые числа, затем отнимаем число четвёрок, делящихся на произведение двух простых, прибавляем четвёрки, делящиеся на три простых, и т.д. | ||
+ | |||
== См. также == | == См. также == | ||
* [[Производящая функция]] | * [[Производящая функция]] |
Текущая версия на 19:33, 4 сентября 2022
Содержание
Формула включения-исключения
Определение: |
Формула включения-исключения (англ. Inclusion-exclusion principle) — комбинаторная формула, выражающая мощность объединения конечных множеств через мощности всех множеств и мощности всех их возможных пересечений. |
Для случая из двух множеств
формула включения-исключения имеет следующий вид:
В силу того, что в сумме
элементы пересечения учтены дважды, то уменьшаем текущее значение суммы на мощность пересечения, чтобы каждый элемент был подсчитан ровно один раз. Для наглядности воспользуемся диаграммой Эйлера—Венна для двух множеств, приведенной на рисунке справа.Для случая с большим количеством рассматриваемых множеств
процесс нахождения количества элементов объединения состоит в поочередном включений ошибочно исключенного и исключений ошибочно включенного. Отсюда и происходит название формулы.Сформулируем и докажем теорему для нахождения мощности объединения произвольного количества множеств.
Теорема: |
Пусть , тогда по формуле включения-исключения: |
Доказательство: |
Приведем два разноплановых доказательства теоремы. I. Комбинаторное доказательство теоремы. Рассмотрим некоторый элемент . Пусть . Тогда найдем число вхождений элемента в правую часть формулы.
Докажем, что В силу того, что , имеем , то равенство доказано.Таким образом, , то есть каждый элемент подсчитан в правой части формулы ровно один раз, то теорема доказана.II. Доказательство теоремы по индукции. Пусть — это количество множеств, мощность пересечения которых мы ищем. Для случая равенство обращается в тривиальное ( — истинно). Для случая справедливость теоремы пояснена выше. Таким образом, — база индукции.Предположим, что для равенство верно. Докажем, что равенство истинно для
Равенство справедливо, потому что все наборы можно разбить на две группы :
Как видно из равенства, первое и третье слагаемое "отвечают" за вторую группу, а второе слагаемое за первую группу. Значит, равенство истинно и Таким образом, для . мы доказали, что равенство верно. Значит, индукционный переход верен, то есть теорема доказана. |
Беспорядки
Определение: |
Беспорядок (англ. Derangement) — это перестановка чисел от | до , в которой ни один элемент не стоит на своём месте.
Явная формула с использованием принципа включения-исключения
Теорема: |
Количество беспорядков порядка [1] числа (обозначение: ) и вычисляется по формуле:
равно субфакториалу |
Доказательство: |
Воспользуемся принципом включения-исключения: обозначим за — количество перестановок из элементов, в каждой из которых -ый элемент стоит на своём месте. Тогда по формуле включения-исключения имеем:, где универсум — множество из всех перестановок порядка . — количество перестановок, в каждой из которых -ый элемент стоит не на своём -ом месте. Таким образом — количество всех перестановок, в каждой из которых -ый элемент ,то есть количество искомых беспорядков., так как -ая позиция занята числом . — количество способов выбрать одну -ую позицию Рассмотрим , где . Так как некоторые позиций заняты соответствующими числами, то количество способов расставить остальные чисел равно . То есть Количество всех способов выбрать позиций равно . Таким образом получаем, что:
Подставляя соответствующие значения мощностей множеств в формулу включения-исключения, получаем: Раскрывая по общеизвестной формуле, получим требуемое выражение, то есть количество беспорядков порядка . |
Рекурретное соотношение для нахождения количества беспорядков
Утверждение: |
Количество беспорядков удовлетворяет рекурсивным соотношениям:
и где , , а |
1) Докажем второе соотношение: Так как , то можно переписать эту формулу, какПо формуле субфакториала 2) Докажем первое соотношение: У нас есть чисел и столько же мест. Мы должны найти количество способов разместить эти числа так, что ни одно из чисел не оказалось на месте с таким же номером.Предположим, что первое число оказалось на месте с номером . Это можно сделать способами, так как первое число может оказаться на любом месте, кроме первого. Теперь есть 2 варианта, зависящие от того, окажется ли число с номером на первом месте или нет.
Эти 2 случая не пересекаются и поэтому суммируются. В первом случае число В итоге получается необходимая формула. занимает первое место, затем идет распределение остальных чисел, не зависящее от первого и -го чисел. Во втором же случае число с номером попасть на первое место не может, а значит займет какое-то другое место, и распределение остальных чисел уже будет другое. |
Задача о перестановках
Сколько есть перестановок чисел от
до таких, что первый элемент больше , а последний меньше ?Посчитаем количество "плохих" перестановок, то есть таких, у которых первый элемент
(множество таких перестановок обозначим ) и/или последний (множество таких перестановок обозначим ).Тогда количество "плохих" перестановок по формуле включений-исключений равно:
Проведя несложные комбинаторные вычисления, получим:
Отнимая это число от общего числа перестановок
, получим ответ.Задача о нахождении числа взаимно простых четвёрок
Дано
чисел: . Необходимо посчитать количество способов выбрать из них четыре числа так, что они будут взаимно простыми, то есть их НОД равен единице.Посчитаем число "плохих" четвёрок, то есть таких, в которых все числа делятся на число
.Воспользуемся формулой включений-исключений, суммируя количество четвёрок, делящихся на
(но, возможно, делящихся и на больший делитель).,
где
— это количество простых в факторизации числа , — количество четвёрок, делящихся на .Чтобы посчитать функцию
, надо просто посчитать количество чисел, кратных , и с помощью биномиальных коэффициентов посчитать число способов выбрать из них четвёрку.Таким образом, с помощью формулы включений-исключений мы суммируем количество четвёрок, делящихся на простые числа, затем отнимаем число четвёрок, делящихся на произведение двух простых, прибавляем четвёрки, делящиеся на три простых, и т.д.
См. также
Примечания
Источники информации
- Википедия — Беспорядок
- Wikipedia — Derangement
- Виленкин Н.Я., Виленкин А.Н., Виленкин П.А. Комбинаторика, Изд. 4-е, исправленное - МЦНМО, 2013 ISBN 978-5-4439-0052-0
- Р. Стенли, Перечислительная комбинаторика. — М.: Мир, 1990. — С. 107-108.