—1.8—

В прошлой лекции (—1.6—) была доказана теорема Кёнига. Тогда мы её сформулировали в терминах двудольных графов, сейчас давайте её переведём на язык таблиц.

Теорема [Kőnig revisited]. На клеточной доске отмечены некоторые клетки. Минимальное число линий (горизонтальных или вертикальных), которыми можно эти клетки накрыть, равно максимальному числу ладей 1 , которых можно в эти клетки поставить без того, чтобы они били друг друга.

В любом конечном двудольном графе размер максимального паросочетания равен размеру минимального вершинного покрытия.

Доказательство. Перевод такой: строки = вершины левой доли графа; столбцы = вершины правой доли графа; отмеченные клетки = рёбра графа; покрытие доски линиями = вершинное покрытие графа; расстановка ладей = паросочетание в графе. \(\square\)

Применим теорему Кёнига, чтобы доказать очередной аналог леммы Холла, на этой раз матричный. Напомню, что перманентом квадратной матрицы \(A = (a_{ij})_{i,j=1}^n\) называется число, считающееся как определитель по формуле полного разложения, но с плюсами перед всеми слагаемыми: \[ \text{per } A = \sum_{(\sigma_1,\ldots,\sigma_n) \in S_n} a_{1 \sigma_1} \cdot \ldots \cdot a_{n \sigma_n}, \] где суммирование ведётся по перестановкам индексов \(1,\ldots,n\)

Теорема [Frobenius, 1917]. Перманент матрицы \(n\times n\), состоящей из неотрицательных чисел, равен нулю в том и только том случае, когда выполнено следующее условие: для некоторого числа \(k\) найдутся \(k\) строк и \(n-k+1\) столбцов в матрице, такие что любой элемент, лежащий на пересечении этих строк и столбцов, равен нулю.

Разумеется, конкретное значение перманента здесь не по существу. Смысл теоремы только лишь в том, что она устанавливает некий паттерн на расположение нулевых и ненулевых элементов в матрице.

Доказательство. Как и все холловские теоремы, утверждение очевидно в одну сторону. Действительно, если есть нулевая подматрица размера \(k \times (n-k+1)\), то каждое слагаемое в пермутанте есть произведение чисел, (по крайней мере) одно из которых равно нулю (так как обязано “задеть” нулевую подматрицу).

Докажем обратное. Пусть нулевой \((k \times (n-k+1))\)-подматрицы на нашлось. Чтобы найти положительное слагаемое у пермутанта, нам нужно фактически расставить \(n\) ладей на положительные элементы матрицы. Теорема Кёнига даёт нам критерий того, что \(n\) ладей расставить удастся: это условие равносильно тому, что все положительные элементы матрицы нельзя накрыть менее чем \(n\) линиями. Предположим противное – пусть положительные элементы матрицы можно накрыть \((n-1)\) линиями. Тогда ненакрытая подматрица и есть нулевая \((k \times (n-k+1))\)-подматрица, а таковой быть не должно. \(\square\)

—1.9—

Следующий наш шаг будет в сторону обобщения теоремы Кёнига на случай взвешенных графов. Мы будем его формулировать сразу в матричных терминах.

Идея следующей теоремы такая. Давайте в шахматной формулировке теоремы Кёнига допустим “дробный” выбор линий. В оригинальной формулировке если некая клетка отмечена, то мы её обязаны накрыть либо горизонталью, либо вертикалью. В новой, линейно релаксированной формулировке мы разрешим накрыть отмеченную клетку “смесью”, скажем, из 80% горизонтали и 20% вертикали. Тем самым, каждой горизонтали и вертикали мы назначим процентный вес, с которым мы её берём в наш набор линий. Релаксация заключается в том, что раньше вес каждой линии был строго ноль/единица, а теперь ему разрешено быть любым числом из отрезка \([0,1]\). Пойдём далее и разрешим клеткам таблицы быть отмеченным с разным весом, то есть “отмеченность” клетки измеряется вещественным числом от нуля до единицы. Тогда условие накрытости таково: сумма весов двух линий, накрывающих клетку, должна быть не менее веса самой клетки. Оказывается, что аналог теоремы Кёнига все ещё верен!

Теорема [Egerváry, 1931]. Пусть дана квадратная матрица \(A = (a_{ij})_{i,j=1}^n\), заполненная неотрицательными числами. Рассматриваются всевозможные наборы неотрицательных чисел \(\lambda = (\lambda_1, \ldots, \lambda_n), \mu = (\mu_1, \ldots, \mu_n)\) такие, что \(\lambda_i + \mu_j \ge a_{ij} \ \forall i, j\). Тогда выполнено равенство \[ \min_{\lambda, \mu} \sum_{k=1}^n (\lambda_k + \mu_k) = \max_{\sigma \in S_n} \sum_{i=1}^n a_{i\sigma_i}, \] где левый минимум берётся по всевозможным наборам \(\lambda, \mu\), удовлетворяющим вышеуказанным условиям, а правый максимум берётся по всем перестановкам \((\sigma_1,\ldots,\sigma_n)\) индексов \((1,\ldots,n)\).

Замечание. В условии теоремы Эгервари я потребовал неотрицательность весов линий \(\lambda_i, \mu_j\). Это согласуется с нашей интерпретацией “дробных долей” линий, но на самом деле это неважно, мы можем опустить это требование, и ничего не изменится. Действительно, пусть у нас есть какие-то наборы чисел \(\lambda, \mu\), удовлетворяющие “неравенствам накрытия” \(\lambda_i + \mu_j \ge a_{ij} \ \forall i, j\). Предположим, какой-то из весов отрицателен. Выберем отрицательный вес наибольшей абсолютной величины, пусть это, например, \(\lambda_1 < 0\). Тогда из неравенств накрытий следует \(\mu_j \ge |\lambda_1| \ge 0\). Увеличим каждое \(\lambda_i\) на \(|\lambda_1|\), и уменьшим каждое \(\mu_j\) на \(|\lambda_1|\). Неравенства накрытия останутся выполнены, сумма \(\sum_{k=1}^n (\lambda_k + \mu_k)\) не изменится, но зато все веса теперь неотрицательны. Поэтому теорема Эгервари с требованием неотрицательности \(\lambda_i, \mu_j\) эвкивалентна теореме Эгервари без этого требования.

Доказательство теоремы Эгервари. Как всегда, в одну сторону утверждение очевидно. Если неравенства \(\lambda_i + \mu_j \ge a_{ij}\) выполнены, то \(\sum_{k=1}^n (\lambda_k + \mu_k) \ge \sum_{i=1}^n a_{i\sigma_i}\) для любой перестановки \(\sigma\). Нам нужно доказать обратное утверждение.

Вдумчивый читатель заметит, что доказательство, которое я приведу, по сути мимикрирует приведённое ранее доказательство теоремы Кёнига.

Как и в тот раз, мы начнём с “минимального покрытия линиями”. Иными словами, рассмотрим такой набор \(\lambda, \mu\), который, во-первых, удовлетворяет всем неравенствам \(\lambda_i + \mu_j \ge a_{ij}\), а во-вторых, минимален из всех наборов, удовлетворяющим этим неравенствам. Минимальность понимается в смысле минимума суммы \(\sum_{k=1}^n (\lambda_k + \mu_k)\). Почему этот минимум достигается? Этот вопрос нужно уяснить отдельно. В типичной математической задаче это бы следовало из компактности множества всех допустимых \((\lambda, \mu) \in \mathbb{R}^{2n}\), и мы бы сказали тогда, что непрерывная функция \(\sum_{k=1}^n (\lambda_k + \mu_k)\) достигает минимума на компакте. Однако компактности у нас нету, допустимое множество неограниченно. Давайте искусственно ограничим его! Мы ищем минимум, поэтому бессмысленно присваивать линиям слишком уж большие веса. Пусть \(M\) – какое-нибудь большое число, например сумма всех элементов матрицы. Имеет ли смысл включать в рассмотрение \(\lambda_i > M\)? Не имеет, потому что можно будет немножко уменьшить \(\lambda_i\), сохранив условия накрытости. Итак, мы минимизируем непрерывную функцию \(\sum_{k=1}^n (\lambda_k + \mu_k)\) на множестве, заданном неравенствами \(0 \le \lambda_i \le M\) (по всем \(i\)), \(0 \le \mu_j \le M\) (по всем \(j\)), \(\lambda_i + \mu_j \ge a_{ij}\) (по всем \(i,j\)). Это подмножество \(\mathbb{R}^{2n}\) замкнуто и ограниченно, следовательно компактно, а значит минимум достигается.

Следующий шаг из доказательства теоремы Кёнига переводится на язык теоремы Эгервари так: найдём такую перестановку \(\sigma\), что \(\lambda_i + \mu_{\sigma_i} = a_{i \sigma_i}\) для всех \(i\). Это завершит доказательство. Здесь нас спасёт теорема Фробениуса. Назовём неотрицательную разность \(\lambda_i + \mu_j - a_{ij}\) дефектом выполнения неравенства \(\lambda_i + \mu_j \ge a_{ij}\). Составим отдельную матрицу \(D = (d_{ij})_{i,j=1}^n\), в которой \(d_{ij} = 0\), если соответствующий дефект \(\lambda_i + \mu_j - a_{ij}\) строго положительный, и \(d_{ij} = 1\), если соответствующий дефект нулевой. Я утверждаю, что для матрицы \(D\) выполняются предпосылки теоремы Фробениуса. Действительно, предположим, что в матрице \(D\) есть нулевая \((k \times (n-k+1))\)-подматрица \(O\). Пусть индексы её строк образуют множество \(I\), а индексы её столбцов – множество \(J\), причём \(|I| + |J| = n+1\). Пользуясь этой подматрицей \(O\), мы отрегулируем наборы \(\lambda, \mu\), так что значение \(\sum_{k=1}^n (\lambda_k + \mu_k)\) уменьшится. Это будет противоречием.

Элементы выбранной подматрицы \(O\) отвечают положительным дефектам в матрице \(A\), пусть \(\varepsilon > 0\) – наименьший из этих дефектов. Увеличим на \(\varepsilon\) все \(\lambda_i, i \notin I\), а затем уменьшим на \(\varepsilon\) все \(\mu_j, j \in J\). Что изменилось? Во-первых, неравенства накрытия по-прежнему верны, потому что уменьшились только лишь дефекты, отвечающие подматрице \(O\), уменьшились они лишь на \(\varepsilon\), но при этом все они были не меньше \(\varepsilon\). Значит, все дефекты остались неотрицательными, и неравенства накрытия выполнены. Во-вторых, сумма \(\sum_{k=1}^n (\lambda_k + \mu_k)\) увеличилась на \(\varepsilon(n-|I|)\), а затем уменьшилась на \(\varepsilon|J|\). Итого она уменьшилась на \(\varepsilon(|J| + |I| - n) = \varepsilon > 0\). В-третьих, какие-то из чисел \(\mu_j\) могли, вообще говоря, стать отрицательными, но тогда мы вспомним замечание выше, и отрегулируем веса так, что они станут неотрицательными. Суммируя сказанное, мы нашли новый допустимый набор весов с суммой \(\sum_{k=1}^n (\lambda_k + \mu_k)\) меньше, чем минимальная. Это противоречие позволяет нам наконец применить теорему Фробениуса, которая влечёт существование перестановки \(\sigma\), такой что дефекты \(\lambda_i + \mu_{\sigma_i} - a_{i \sigma_i}\) нулевые. Это именно то, что мы стремились получить. \(\square\)

—1.10—

На очереди у нас теорема Биркгофа–фон Неймана, ещё один матричный аналог леммы Холла. Воспринимать её можно как релаксацию той простой матричной задачи, которую мы рассмотрели в —1.3—. Давайте вспомним её. Дано было то, что в каждой строке \((n\times n)\)-матрицы \(A\) ровно \(r\) единиц, и в каждом столбце ровно \(r\) единиц. Из этого следовало, что можно выбрать в ней \(n\) клеток с единицами, по одной из каждой строки и каждого столбца. Если удалить эти единицы из матрицы, то получится матрица с суммами \(r-1\) по строкам/столбцам, и процесс можно продолжить. Тем самым окажется, что матрица \(A\) представляется в виде суммы \(r\) так называемых перестановочных матриц, т.е. матриц, содержащих по одной единице в каждой строке и каждом столбце 2 . Будем обозначать через (P_\sigma) перестановочную матрицу с единицами в позициях \((i,\sigma_i)\).

Один шаг остаётся до известнейшей теоремы линейного программирования. Пусть квадратная матрица $n \times n$ из произвольных неотрицательных чисел имеет одну и ту же сумму по всем строкам и всем столбцам. Тогда похожее рассуждение позволит её разложить в сумму перестановочных матриц с некоторыми коэффициентами. Обычно эта теорема формулируется в следующих терминах. Матрица называется дважды стохастической 3 , если сумма элементов в любой строке равна 1, и сумма элементов в любом столбце равна 1. Выпуклой комбинацией матриц 4 называется линейная комбинация с неотрицательными коэффициентами, сумма которых равна 1.

Теорема [Birkhoff–von Neumann, 1946]. Любая дважды стохастическая матрица может быть представлена как выпуклая комбинация перестановочных матриц.

Доказательство. Фактически все идеи уже были озвучены. Доказывать будем чуточку более общее утверждение: если квадратная матрица \(n \times n\) из произвольных неотрицательных чисел имеет одну и ту же сумму по всем строкам и всем столбцам, то она раскладывается в сумму перестановочных матриц с неотрицательными коэффициентами. Доказательство проводится индукцией по числу ненулевых элементов в матрице. Если таких элементов меньше \(n\), то матрица уже нулевая, и доказывать нечего. Пусть ненулевые элементы есть. Все позиции ненулевых элементов назовём отмеченными. Мы хотим расставить \(n\) не бьющих друг друга ладей в отмеченные клетки матрицы. Для этого можно воспользоваться чуть ли не любой из нам известных теорем – попробуйте сделать это через лемму Холла напрямую, или же через теорему Кёнига или Фробениуса. Рассуждение через лемму Холла напрямую фактически было уже приведено в —1.3— (идея: подсчитать сумму элементов в подматрице двумя способами), поэтому я не останавливаюсь на этом подробней. После того как ладьи мы поставили в какие-то положительные числа \(a_{1\sigma_1},\ldots,a_{n\sigma_n}\), рассмотрим минимальное из них \(\alpha_\sigma = \min\limits_{i} a_{i\sigma_i}\), и вычтем из нашей матрицы \(A\) матрицу \(\alpha_\sigma P_\sigma\). В полученной матрице \(A-\alpha_\sigma P_\sigma\) сумы по строкам и по столбцам равны, нулей уже больше чем в \(A\), и мы можем применить предположение индукции. \(\square\)

В качестве приложения докажем знаменитую теорему Шура.

Теорема [Schur, 1923]. Пусть дана симметричная 5 матрица \(A = (a_{ij})_{i,j=1}^n\), и пусть \(\lambda_1, \ldots, \lambda_n\) – её собственные числа. Тогда вектор-диагональ \((a_{11}, \ldots, a_{nn})\) может быть представлен в виде выпуклой комбинации векторов–перестановок собственных чисел, т.е. \(\lambda_{\sigma_1}, \ldots, \lambda_{\sigma_n}\), \(\sigma \in S_n\).

Доказательство. Приведём \(A\) к диагональному виду. Тогда \(A = UDU^T\), где \(D\) – диагональная матрица с диагональными элементами \(\lambda_1, \ldots, \lambda_n\), а \(U = (u_{ij})_{i,j=1}^n\) – ортогональная матрица. Тогда \[ a_{kk} = \sum_{i=1}^n u_{ki}^2 \lambda_i. \] Пусть \(O = (u_{ij}^2)_{i,j=1}^n\). Такого вида матрицы называются ортостохастическими. В частности, она дважды стохастическая. При этом мы знаем, что \(a = O \lambda\), где мы ввели вектор-столбцы \(a = (a_{11}, \ldots, a_{nn})^T\), \(\lambda = (\lambda_1, \ldots, \lambda_n)^T\). По теореме Биркгофа–фон Неймана, мы можем записать \(O\) в виде выпуклой комбинации \(O = \sum\limits_{\sigma}\alpha_\sigma P_\sigma\). Тогда \[ a = \sum_{\sigma} \alpha_\sigma P_\sigma \lambda, \] что и требовалось. \(\square\)

Обращение теоремы Шура (любую выпуклую комбинацию перестановок собственных чисел можно реализовать как диагональ симметричной матрицы с этими собственными числами) верно и носит название теоремы Хорна. Есть нетрудное доказательство по индукции, но концептуальное доказательство (чуть более простого унитарного случая) использует симплектическую геометрию (теорему Атии–Гиллемина–Штернберга о выпуклости образа отображения моментов).

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

  2. Название можно объяснить так, если угодно: умножение произвольной матрицы на перестановочную справа эквивалентно перестановке столбцов; умножение произвольной матрицы на перестановочную слева эквивалентно перестановке строк.

  3. Название мотивируется теорией марковских цепей, где (единожды) стохастической матрицей называется матрица с суммами по строкам, равными 1.

  4. Или, более общо, элементов любого векторного пространства.

  5. Аналогичная теорема верна и для унитарных матриц, доказательство такое же.