Мультимножество

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис

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

Идея мультимножества неявно используется со времён древности (Кнут приводит в пример Бхаскару II из XII века, изучавшего перестановки мультимножеств), но введение понятия и фиксацию термина относят к де Брёйну (1970-е годы)[1]. Используется в основном в приложениях (информатике, искусственном интеллекте, теории принятия решений), в применении к теории сетей Петри мультимножество называется комплектом[2]. В различных приложениях используют разную нотацию.

Формально, мультимножество на множестве [math]\displaystyle{ A }[/math] определяется как упорядоченная пара [math]\displaystyle{ (A, m) }[/math], где [math]\displaystyle{ m \colon A \to \mathbb{N} }[/math] — это функция, сопоставляющая каждому элементу множества [math]\displaystyle{ A }[/math] некоторое натуральное число, называемое кратностью этого элемента.

Один из самых простых примеров — мультимножество простых множителей целого числа. Так, например, разложение числа 120 на простые множители имеет вид: [math]\displaystyle{ 120 = 2^3 3^1 5^1 }[/math], поэтому его мультимножество простых делителей — [math]\displaystyle{ \{2, 2, 2, 3, 5\} }[/math].

Другой пример — мультимножество корней алгебраического уравнения. Например, уравнение [math]\displaystyle{ x^3 - 5x^2 + 8x - 4 = 0 }[/math] имеет корни [math]\displaystyle{ \{1, 2, 2\} }[/math].

Число различных мультимножеств мощности [math]\displaystyle{ k }[/math], состоящих из элементов, выбранных из множества мощности [math]\displaystyle{ n }[/math], может быть вычислено по следующей формуле, как биномиальный коэффициент:

[math]\displaystyle{ {n+k-1 \choose k} }[/math].

Примечания

  1. Дональд Кнут. Искусство программирования, том 2. Получисленные алгоритмы = The Art of Computer Programming, vol.2. Seminumerical Algorithms. — 3-е изд. — М.: Вильямс, 2007. — С. 832. — ISBN 0-201-89684-2.
  2. Джеймс Питерсон. Обзор теории комплектов // Теория сетей Петри и моделирование систем = Petri Net Theory and The Modelling of Systems. — М.: Мир, 1984. — С. 231—235. — 264 с. — 8400 экз.

Литература