Псевдолес (Hvyf;klyv)

Перейти к навигации Перейти к поиску
1-лес (максимальный псевдолес), образованный тремя 1-деревьями

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

Названия взяты по аналогии с общеизвестными деревьями и лесами (дерево — это связный граф без циклов, лес — объединение несвязных деревьев). Габов и Тарьян[2] приписывают изучение псевдолесов книге 1963 Данцига по линейному программированию, в которой псевдолеса появляются в решении некоторых задач транспортных потоков[3]. Псевдолеса также образуют теоретические графовые модели функций и появляются в некоторых алгоритмических задачах. Псевдолеса являются разреженными графами – они имеют очень малое число рёбер по отношению к числу вершин, и их структура матроидов позволяет некоторые другие семейства редких графов разложить на объединение лесов и псевдолесов. Название "псевдолес" пришло из статьи Пикарда и Керанна[4].

Определения и структура

[править | править код]

Мы определяем неориентированный граф как множество вершин и рёбер, таких, что каждое ребро содержит две вершины (возможно, совпадающие) в качестве конечных точек. То есть разрешаются кратные рёбра (рёбра с теми же конечными вершинами) и петли (рёбра, конечные вершины которых совпадают) [1]. Подграф графа — это граф, образованный подмножеством вершин и рёбер, такой, что любое ребро в этом подмножестве имеет конечные вершины в подмножестве вершин. Связная компонента неориентированного графа — это подграф, состоящий из вершин и рёбер, которые можно достичь, следуя по рёбрам, исходя из одной стартовой вершины. Граф связан, если любую вершину или ребро можно достичь, следуя из любой другой вершины или ребра. Цикл в неориентированном графе — это связный подграф, в котором любая вершина инцидентна в точности двум рёбрам или является петлёй.

21 граф с одним циклом и максимум шестью вершинами

Псевдолес — это неориентированный граф, в котором каждая связная компонента содержит максимум один цикл [5]. Эквивалентно, это неориентированный граф, в котором у каждой связной компоненты рёбер не больше, чем вершин [6]. Компоненты, не имеющие циклов — это просто деревья, а компоненты, имеющие единственный цикл, называются 1-деревьями или одноцикловыми графами. То есть 1-дерево — это связный граф, содержащий в точности один цикл. Псевдолес с единственной связной компонентой (обычно называемый псевдодеревом, хотя некоторые авторы определяют псевдодерево как 1-дерево) является либо деревом, либо 1-деревом. В общем случае псевдолес может содержать несколько связных компонент, все из которых являются деревьями или 1-деревьями.

Если удалить из 1-дерева одно из рёбер цикла, в результате получаем дерево. В обратную сторону, если добавить в дерево новое ребро, соединяющее любые две вершины, получим 1-дерево. Путь в дереве, соединяющий две конечные точки добавляемой дуги, вместе с самой добавляемой дугой, образует единственный цикл 1-дерева. Если добавить в 1-дерево ребро, соединяющее одну из вершин дерева с вновь образуемой вершиной, в результате опять получим 1-дерево с ещё одной вершиной. Другой метод построения 1-деревьев начинается с единичного цикла, и к 1-дереву последовательно добавляются вершины произвольное число раз. Рёбра любого 1-дерева можно разделить единственным образом на два подграфа, один из которых — цикл, а второй — лес, при этом каждое дерево леса содержит в точности одну вершину цикла [7]

Изучаются также несколько более узкие типы псевдолесов.

1-лес, называемый иногда максимальным псевдолесом, — это лес, к которому нельзя добавить ребро без образования графа с более чем одним циклом. Если псевдолес содержит дерево в качестве одной из компоненты, он не может быть 1-лесом, поскольку можно добавить к этой компоненте ребро с образованием цикла в этой компоненте или добавить ребро, которое присоединит дерево к другой компоненте. Таким образом, 1-леса — это в точности псевдолеса, в которых любая компонента является 1-деревом.
Остовный псевдолес неориентированного графа G — это остовный подграф, являющийся псевдолесом, т. е. псевдолес графа G, содержащий все вершины графа G. Такие псевдолеса не обязаны иметь какие-либо рёбра, поскольку, например, пустой подграф (т. е. содержащий все вершины графа G и не имеющий каких-либо рёбер) является псевдолесом (и его компонентами являются деревья, каждое из которых состоит из единственной вершины).
Максимальные псевдолеса графа G — это подграфы графа G, являющиеся псевдолесами, которые не содержатся в никаком большем псевдолесе, содержащемся в G. Максимальный псевдолес графа G всегда является остовным псевдодеревом, но обратное неверно. Если G не имеет связных компонент, являющихся деревьями, то его максимальные псевдолеса являются 1-лесами, но в случае, когда граф G содержит дерево в качестве компоненты, его максимальные псевдолеса не будут 1-лесами. Говоря точнее, в любом графе G его максимальные псевдолеса состоят из всех лесов графа G вместе с одним или более 1-деревом, покрывающим оставшиеся вершины графа G.

Ориентированные псевдолеса

[править | править код]

Версии этих определений используются также для ориентированных графов. Подобно неориентированным графам ориентированные графы состоят из вершин и рёбер, но каждое ребро имеет направление (ориентированное ребро обычно называется дугой). Ориентированный псевдолес — это ориентированный граф, в которой каждая вершина имеет максимум одну исходящую дугу. То есть граф имеет степень исхода, не превосходящую единицы. Ориентированный 1-лес, часто называемый функциональным графом (см ниже), а иногда — максимальным ориентированным псевдолесом, — это ориентированный граф, в котором каждая вершина имеет исходящую степень в точности равную единице [8]. Если D — ориентированный псевдолес, неориентированный граф, образованный удалением направлений из рёбер графа D, является неориентированным псевдолесом.

Число рёбер

[править | править код]

Любой псевдолес на множестве из n вершин имеет максимум n рёбер, а любой максимальный псевдолес на множестве из n вершин имеет в точности n вершин. В обратную сторону, если граф G имеет свойство, что для любого подмножества S вершин графа число рёбер в порождённом подграфе графа S не превосходит числа вершин графа S, то G является псевдолесом. 1-деревья могут быть определены как связные графы с одинаковым числом вершин и рёбер [2].

Для семейств графов, если семейство графов имеет свойство, что любой подграф графа в семействе входит в то же семейство и каждый граф в семействе имеет не больше рёбер, чем вершин, то семейство содержит только псевдолеса. Например, любой подграф трекла (граф, нарисованный таким образом, что любая пара рёбер имеет одну точку пересечения) является также треклом, так что гипотезу Конвея, что любой трекл имеет не больше рёбер, чем вершин, можно переформулировать, что каждый трекл является псевдолесом. Точнее, если гипотеза верна, то треклы — это в точности псевдолеса без циклов с четырьмя вершинами и максимум одним циклом с нечётным числом вершин [9][10].

Стрейну и Теран [11] обобщили свойства разреженности в определении псевдолесов — он определяют граф как (k,l)-разреженный, если любой непустой подграф с n вершинами имеет максимум kn − l рёбер, и (k,l)-плотным, если он (k,l)-разрежен и имеет в точности kn − l рёбер. Таким образом, псевдолеса — это (1, 0)-разреженные графы, а максимальные псевдолеса — это (1, 0)-плотные графы. Некоторые другие важные семейства графов можно определить для других значений k и l, и если l ≤ k, (k,l)-разреженные графы можно описать как графы, образованные объединением l лесов без общих рёбер и k − l псевдолесов [12].

Почти любой достаточно редкий случайный граф является псевдолесом [13]. То есть, если c является константой (0 < c < 1/2) и Pc(n) — вероятность, что выбранный случайно среди графов с n вершинами и cn рёбрами граф является псевдолесом, то Pc(n) стремится к единице в пределе при росте n. Однако для c > 1/2 почти любой случайный граф с cn рёбрами имеет большую компоненту, не являющуюся одноцикловой.

Перечисление

[править | править код]

Граф является простым, если в нём нет петель и кратных рёбер. Число простых 1-деревьев с n помеченными вершинами равно[14]

Значения для n вплоть до 18 можно найти в последовательности A057500 Энциклопедии целочисленных последовательностей.

Число максимальных ориентированных псевдолесов с n вершинами, в которых разрешены петли, равно nn, поскольку для любой вершины имеется n возможных конечных вершин исходящих дуг. Андрэ Жуайяль[англ.] использовал этот факт для биективного доказательства [15] формулы Кэли, что число неориентированных деревьев на n вершинах равно nn − 2, путём нахождения биекции между максимальными ориентированными псевдолесами и неориентированными деревьями с двумя различными вершинами[16]. Если допускаются петли, число максимальных ориентированных псевдолесов равно (n − 1)n.

Графы функций

[править | править код]
Функция на множестве {0,1,2,3,4,5,6,7,8} на себя и соответствующий функциональный граф

Ориентированные псевдолеса и отображения в себя в некотором смысле математически эквивалентны. Любое отображение ƒ на множестве X на себя (то есть эндоморфизм на X) можно интерпретировать как определение ориентированного псевдолеса, который имеет дугу из x в y, когда ƒ(x) = y. Полученный ориентированный псевдолес максимален и может включать петли, если для некоторых x ƒ(x) = x. Исключение петель приводит к немаксимальным псевдолесам. В обратном направлении любой максимальный ориентированный псевдолес определяет отображение ƒ, для которой ƒ(x) равно конечной вершине дуги, исходящей из x, и любой немаксимальный ориентированный псевдолес можно сделать максимальным путём добавления петель и конвертирования в функцию тем же способом. По этой причине максимальные ориентированные псевдолеса иногда называются функциональными графами[2]. Представление функции в виде функционального графа даёт удобный язык описания свойств, которые непросто описать с точки зрения теории функций. Такая техника особенно полезна для задач, использующих итерированные функции, которые соответствуют путям в теории графов.

Поиск циклов, задача прослеживания путей в функциональном графе для нахождения в нём цикла, имеет приложения в криптографии и вычислительной теории чисел[англ.] как часть ро-алгоритма Полларда для факторизации целых чисел и как метод нахождения конфликтов в криптографических хеш-функциях. В этих приложениях предполагается, что ƒ случайна. Флажоле[англ.] и Одлыжко[англ.][17] изучали свойства функциональных графов, полученных из случайных отображений. В частности, из одного из вариантов парадокса дней рождения следует, что в случайном функциональном графе с n вершинами путь, начинающийся со случайно выбранной вершины, обычно зацикливается после O(√n) шагов. Конягин и др. осуществили анализ и вычислительные статистические исследования[18].

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

Другое раннее приложение функциональных графов — в цепочках[20], используемых для изучения систем троек Штейнера[21][22][23]. Цепочка системы троек является функциональным графом, содержащим по вершине для каждой возможной тройки символов. Каждая тройка pqr отображается функцией ƒ в stu, где pqs, prt и qru — тройки, принадлежащие системе троек и содержат пары pq, pr и qr соответственно. Было показано, что цепочки являются мощным инвариантом системы троек, хотя их вычисление громоздко.

Бициклический матроид

[править | править код]

Матроид — это математическая структура, в которой некоторые множества элементов определяются как независимые, в том смысле, что независимые множества удовлетворяют свойствам, которые моделируют свойства линейной независимости в векторном пространстве. Одним из стандартных примеров матроидов является графовый матроид[англ.], в котором независимые множества — это множества рёбер в лесах графа. Матроидная структура лесов важна для алгоритмов вычисления минимального остовного дерева графа. Аналогичным образом можно определить матроиды для псевдолесов.

Для любого графа G = (V,E), мы можем определить матроид на рёбрах графа G, в котором множество рёбер независимо тогда и только тогда, когда это множество образует псевдолес. Это матроид известен как бициклический матроид[англ.] графа G [24][25]. Минимальные зависимые множества для этого матроида — это минимальные связные подграфы графа G, имеющие более одного цикла, и эти подграфы иногда называются бициклами. Существует три возможных типа бициклов — тета граф имеет две вершины, соединённых тремя путями, не имеющими внутренних общих точек, «восьмёрка» состоит из двух циклов, имеющих одну общую вершину, и «наручники» образованы двумя не имеющими общих вершин циклами, соединёнными путём [26]. Граф является псевдолесом тогда и только тогда, когда он не содержит бицикла в качестве подграфа[11].

Запрещённые миноры

[править | править код]
«Бабочка» (слева) и алмаз (справа), запрещённые миноры псевдолесов

Образование минора псевдолеса путём стягивания некоторых рёбер и удаления некоторых других рёбер образует новый псевдолес. Таким образом, семейство псевдолесов замкнуто по минорам, а из теоремы Робертсона — Сеймура тогда следует, что псевдолеса можно описать в терминах конечного набора запрещённых миноров, аналогично теореме Вагнера описания планарных графов как графов, не имеющих ни полного графа K5, ни полного двудольного графа K3,3 в качестве миноров. Как обсуждалось ранее, любой граф, не являющийся псевдолесом, содержит в качестве подграфа «наручники», «восьмёрку» или «тета». Любые «наручники» и «восьмёрки» могут быть стянуты к «бабочке» («восьмёрка» с пятью вершинами), а любой граф «тета» может быть стянут к «алмазу» («тета»-граф с четырьмя вершинами) [27], так что любой граф, не являющийся псевдолесом, содержит либо «бабочку», либо «алмаз» в качестве минора, и только эти графы являются минимальными графами, не принадлежащими семейству псевдолесов. Если запретить только «алмаз», но не «бабочку», получим более широкое семейство графов, состоящее из «кактусов» и разрозненного объединения набора «кактусов» [28].

Если рассматривать мультиграфы с петлями, имеется только один запрещённый минор, вершина с двумя петлями.

Раннее алгоритмическое применение псевдолесов использовало алгоритм сетевого симплекса и его приложение к обобщённой задаче о потоках в сетях для моделирования преобразований продуктов из одного типа в другой[3][29]. В этих задачах задаётся транспортная сеть, в которой вершины моделируют каждый продукт, а рёбра моделируют допустимость преобразования из одного продукта в другой. Каждое ребро маркируется пропускной способностью (количество продукта, которое может быть преобразовано за единицу времени), потоком (скоростью преобразования между продуктами) и ценой (сколько теряем при преобразовании на единицу товара). Задачей является в определении, сколько каждого продукт нужно преобразовать на каждой дуге транспортной сети с целью минимизировать цену или максимизировать доход, не нарушая ограничения и не позволяя любому типу продукта остаться неиспользованным. Этот тип задач можно сформулировать как задачу линейного программирования и решить с помощью симплекс-метода. Промежуточные решения, получаемые из этого алгоритма, как и конечное оптимальное решение, имеют специальные структуры — каждая дуга транспортной сети или не используется, или использует максимальное значение пропускной способности, за исключением подмножества дуг, образующих остовный псевдолес транспортной сети, и на этом подмножестве дуг поток может принимать значение от нуля до максимальной пропускной способности. В этом приложении одноцикловые графы иногда называются также дополненными деревьями, а максимальные псевдолеса — дополненными лесами[29].

Задача о минимальном остовном псевдолесе использует нахождение остовного псевдолеса минимального веса в большем графе G с весами. Вследствие матроидной структуры псевдолесов максимальные псевдолеса с минимальным весом могут быть найдены с помощью жадных алгоритмов подобно задаче нахождения минимального остовного дерева. Однако Габов и Тарьян нашли для этого случая более эффективный подход с линейным временем[2].

Псевдодревесность графа G определяется по аналогии с древесностью как минимальное число псевдолесов, на которые можно разделить рёбра. Эквивалентно, это минимальное число k, такое, что граф G является (k, 0)-разреженным, или минимальное число k, такое что рёбрам графа G можно задать направления, так что полученный ориентированный граф будет иметь степень исхода, не превосходящую k. Вследствие матроидной структуры псевдолесов псевдодревесность можно вычислить за полиномиальное время [30]

Случайный двудольный граф c n вершинами на каждой его доле с cn рёбрами, выбранными случайно и независимо для каждой пары n2 возможных пар вершин с большой вероятностью является псевдолесом при постоянном c строго меньшем единицы. Этот факт играет ключевую роль в анализе хеширования кукушки[31], структуре данных для поиска пар ключ-значение путём просмотра одной из двух хеш-таблиц на месте, определяемом ключом, — можно сформировать «парный граф», вершины которого соответствуют положению расположению в хеш-таблицах, а рёбра связывают два местоположения, в которых один из ключей можно найти. Парное хеширование находит все ключи тогда и только тогда, когда парный граф является псевдолесом[32].

Псевдолеса играют также ключевую роль в параллельных алгоритмах раскраски графов и связанных задач[33][34].

Примечания

[править | править код]
  1. 1 2 Неориентированные графы, рассматриваемые здесь, являются мультиграфами или псевдографами, а не простыми графами.
  2. 1 2 3 4 Gabow, Tarjan, 1988.
  3. 1 2 Dantzig, 1963.
  4. Picard, Queyranne, 1982.
  5. Это определение, например, использует Габов и Вестерман (Gabow, Westermann (1992)).
  6. Это определение используют Габов и Тарьян (Gabow, Tarjan (1988)).
  7. См., например, доказательство леммы 4 в статье Алвареза, Блеса и Серна (Àlvarez et al (2002)).
  8. Круска, Рудольф и Снир (Kruskal et al (1990)) вместо этого используют обратное определение, в котором каждая вершина имеет входящую степень единица. Результирующие графы, которые они называют одноцикловыми, являются транспонированными графами графов, рассматриваемых в данной статье
  9. Woodall, 1969.
  10. Lovász et al, 1997.
  11. 1 2 Streinu, Theran, 2009.
  12. Whiteley, 1988.
  13. Болобаш (Bollobás (1985)). См., в частности, следствие 24, на стр.120, о границе числа вершин, принадлежащих одноцикловым компонентам в случайном графе, и следствие 19, стр.113, о границе числа различных помеченных одноцикловых графов.
  14. Riddell (1951); см. A057500 в энциклопедии целочисленных последовательностей.
  15. О методе биективного доказательства можно почитать в статье Вершика (Вершик (1986))
  16. Aigner, Ziegler, 1998.
  17. Flajolet, Odlyzko, 1990.
  18. Konyagin et al, 2016.
  19. Martin, Odlyzko, Wolfram, 1984.
  20. В английском варианте — trains
  21. White, 1913.
  22. Colbourn, Colbourn, Rosenbaum, 1982.
  23. Stinson, 1983.
  24. Simoes-Pereira, 1972.
  25. Matthews, 1977.
  26. Glossary of Signed and Gain Graphs and Allied Areas. Дата обращения: 23 октября 2016. Архивировано 3 марта 2016 года.
  27. Для этой терминологии см. list of small graphs Архивная копия от 22 июля 2012 на Wayback Machine с сайта Information System on Graph Class Inclusions Архивная копия от 5 февраля 2019 на Wayback Machine. Однако, бабочка может относиться к другому семейству графов, связанные с гиперкубами.
  28. El-Mallah, Colbourn, 1988.
  29. 1 2 Ahuja, Magnanti, Orlin, 1993.
  30. Gabow, Westermann (1992). См. также быстрые схемы аппроксимации Ковалика (Kowalik (2006)).
  31. . Вообще говоря, термин неудачный, но в русскоязычной литературе прижился (как прямой перевод cuckoo hashing). Видимо, термин возник из-за парности «ку-ку». Следовало бы метод назвать парным или двухступенчатым хешированием.
  32. Kutzelnigg, 2006.
  33. Goldberg, Plotkin, Shannon, 1988.
  34. Kruskal et al, 1990.

Литература

[править | править код]
  • Ravindra K. Ahuja, Thomas L. Magnanti, James B. Orlin. Network Flows: Theory, Algorithms and Applications. — Prentice Hall, 1993. — ISBN 0-13-617549-X.
  • Martin Aigner, Günter M. Ziegler. Proofs from THE BOOK. — Springer-Verlag, 1998. — С. 141–146.
  • Carme Àlvarez, Maria Blesa, Maria Serna. Proc. 14th ACM Symposium on Parallel Algorithms and Architectures. — 2002. — С. 183–197. — doi:10.1145/564870.564903.
  • Béla Bollobás. Random Graphs. — Academic Press, 1985.
  • Marlene J. Colbourn, Charles J. Colbourn, Wilf L. Rosenbaum. Trains: an invariant for Steiner triple systems // Ars Combinatoria[англ.]. — 1982. — Т. 13. — С. 149–162.
  • G. B. Dantzig. Linear Programming and Extensions. — Princeton University Press, 1963.
  • Ehab El-Mallah, Charles J. Colbourn. The complexity of some edge deletion problems // IEEE Transactions on Circuits and Systems. — 1988. — Т. 35, вып. 3. — С. 354–362. — doi:10.1109/31.1748.
  • P. Flajolet, A. Odlyzko. Advances in Cryptology – EUROCRYPT '89: Workshop on the Theory and Application of Cryptographic Techniques. — Springer-Verlag, 1990. — Т. 434. — С. 329–354.
  • H. N. Gabow, R. E. Tarjan. A linear-time algorithm for finding a minimum spanning pseudoforest // Information Processing Letters. — 1988. — Т. 27, вып. 5. — С. 259–263. — doi:10.1016/0020-0190(88)90089-0..
  • H. N. Gabow, H. H. Westermann. Forests, frames, and games: Algorithms for matroid sums and applications // Algorithmica. — 1992. — Т. 7, вып. 1. — С. 465–497. — doi:10.1007/BF01758774.
  • A. V. Goldberg, S. A. Plotkin, G. E. Shannon. Parallel symmetry-breaking in sparse graphs // SIAM Journal on Discrete Mathematics. — 1988. — Т. 1, вып. 4. — С. 434–446. — doi:10.1137/0401044.
  • Sergei Konyagin, Florian Luca, Bernard Mans, Luke Mathieson, Igor E. Shparlinski. Functional Graphs of Polynomials over Finite Fields // Journal of Combinatorial Theory. — 2016. — Т. 116.
  • Ł. Kowalik. Proceedings of the International Symposium on Algorithms and Computation / Tetsuo Asano. — Springer-Verlag, 2006. — Т. 4288. — С. 557–566. — (Lecture Notes in Computer Science). — doi:10.1007/11940128.
  • Clyde P. Kruskal, Larry Rudolph, Marc Snir. Efficient parallel algorithms for graph problems // Algorithmica. — 1990. — Т. 5, вып. 1. — С. 43–64. — doi:10.1007/BF01840376.
  • Jean-Claude Picard, Maurice Queyranne. A network flow solution to some nonlinear 0–1 programming problems, with applications to graph theory // Networks. — 1982. — Т. 12. — С. 141–159. — doi:10.1002/net.3230120206.
  • Reinhard Kutzelnigg. Fourth Colloquium on Mathematics and Computer Science. — 2006. — Т. AG. — С. 403–406. — (Discrete Mathematics and Theoretical Computer Science). (недоступная ссылка)
  • L. Lovász, J. Pach, M. Szegedy. On Conway's thrackle conjecture // Discrete and Computational Geometry. — 1997. — Т. 18, вып. 4. — С. 369–376. — doi:10.1007/PL00009322.
  • O. Martin, A. M. Odlyzko, S. Wolfram. Algebraic properties of cellular automata // Communications in Mathematical Physics. — 1984. — Т. 93, вып. 2. — С. 219–258. — doi:10.1007/BF01223745. — Bibcode1984CMaPh..93..219M.
  • L. R. Matthews. Bicircular matroids // The Quarterly Journal of Mathematics. Oxford. Second Series. — 1977. — Т. 28, вып. 110. — С. 213–227. — doi:10.1093/qmath/28.2.213.
  • R. J. Riddell. Contributions to the Theory of Condensation. — Ann Arbor: University of Michigan, 1951. — (Ph.D. thesis)..
  • J. M. S. Simoes-Pereira. On subgraphs as matroid cells // Mathematische Zeitschrift. — 1972. — Т. 127, вып. 4. — С. 315–322. — doi:10.1007/BF01111390..
  • D. R. Stinson. A comparison of two invariants for Steiner triple systems: fragments and trains // Ars Combinatoria. — 1983. — Т. 16. — С. 69–76..
  • I. Streinu, L. Theran. Sparsity-certifying Graph Decompositions // Graphs and Combinatorics. — 2009. — Т. 25, вып. 2. — С. 219. — doi:10.1007/s00373-008-0834-4.
  • H. S. White. Triple-systems as transformations, and their paths among triads // Transactions of the American Mathematical Society. — American Mathematical Society, 1913. — Т. 14, вып. 1. — С. 6–13. — doi:10.2307/1988765. — JSTOR 1988765.
  • W. Whiteley. The union of matroids and the rigidity of frameworks // SIAM Journal on Discrete Mathematics. — 1988. — Т. 1, вып. 2. — С. 237–255. — doi:10.1137/0401025.
  • D. R. Woodall. Combinatorial Mathematics and Its Applications / D. J. A. Welsh. — Academic Press, 1969. — С. 335–348..
  • А. М. Вершик. Биективное доказательство тождества Якоби и перестройки диаграмм Юнга // Зап. научн. сем. ЛОМИ. — 1986. — Т. 155. — С. 3–6.