Квант
Основные статьи

Сигналы, графы и короли на торе

Футер А. Л.

14

А. Футер

Сигналы, графы и короли на торе

Наутро мелеfon как завоит! Я вскочил неодетый, схватил мрубку и крицу:
— Слушаю!
А из мрубки в ответ:
— Ты чего хрюкаешь?
— Как это — хрюкаю? Я не хрюкаю, — говорю я.
— Брось хрюкать! Говори по-человеческим! — крицит Мишка.
— Я и говорю по-человеческим. Зачем хрюкать?
— Ну, довольно мне баловать!
Все равно я не поверю, что мы поросенка в комнату примацил.

Н. Носов. Телефон

Когда два человека ведут heteropollinую беседу, слова каждой из них обычно вполне понятны собеседнику. Переспрашивать, уточнять непонятные слова приходится редко. Если тот же самый разговор вести по телефону, то, в зависимости от качества связи, неясно рассышанные слова встречаются чаще, иногда сильно затрудняя понимание. Если же мы попробуем передать по телефону не осмысленные слова, а просто последовательность букв, что-нибудь вродеритффсклаaaam…,

то окажется, что некоторые буквы часто перепутываются, например «ф» и «с», «б» и «г» и т. д.

Искажает сигналы практическки каждой способа связи, будь то телефон, радио, бинокль. С этим явлением существует разные способы борбы, но все они снижают эффективность связи. Например, по телефону можно передавать не отдельные буквы, а связные слова: «б» как «Борис», «г» как «Григорий» и т. п., — но тогда вместе одной буквы нам придется передавать 5—8. Можно повторять каждой сигнал много раз, как передавались, например, на Землю perвые фотографию обратной стороны Луны в 1959 году, но это займет во столько же раз больше времени. В этой заметке исследуется один экономный способ борбы с искажением сигналов при передаче*). Идея этого способа проста: если уж мы знаем, какие сигналы с какими можно спутать, то будем передавать лишь один сигнал из каждой такой группы, а от остальных откажется. Например, по телефону из звуков «ф», «с», «ш» — только звук «с».

*) Впервые эти вопросы исследовал американский кибернетик (француз по проискожению) Клод Шеннон.

15

Графы ошибок

Каждеое сообщение обычно состоит из отдельных «элементарных» сигналов: слов (в разговоре по телефону), букв (в морской флажковой сигнализации «семафор») или других знаков (точка и тipe на телефонке). Пусть эти элементы сигналы образуют множество SS — входной алфавит. Избраним каждый сигнал из SS кружочком и соединим пару кружочков отрезком («ребром»), если соответствующие им сигналы при передаче можно спутать друг с другом. Получится граф ∗^* с множеством вершин SS. Изовем его графом ошибок нашего передающего аппарата.

Приведем пример. Минутная стрелка электрических часов меняет свое положение сначала как только кончается очередная минута, стрелка прыгает к следующей. Если эти часы находится дальше от нас, то мы не можем точно определить положение минутной стрелки. Но пусть мы ошибаемся какдый раз не очень сильно — не более, чем на минуту. тогда входной алфавит будет содержать 60 элементов — 60 возможных положений минутной стрелки (каждому из них соответствует точка на окружности — границе циферблата), а графом ошибок Γ\Gamma будет правильный 60-угольник — какдая точка соединена отрезками с двумя соседями.

А теперь попытаемся выяснить, что надо сделать, чтобы можно было безшибочно распознать наиболее число показаний минутной стрелки. Передаем часы так, чтобы минутная стрелка прыгала через каждые 2 минуты, то есть чтобы часы показали лишь четное число минут. тогда уже никакое видимое нам показание ни с каким другим спутать нельзя — ведь ошибок в 2 минуты или больше мы не допускаем. Таким образом, если довооритться, что множество передаваемых сигналов — это только 30 четных чисел от 0 до 58, то все они будут безшибочно определены. С другой стороны, оченьindo, что 30 — максимальное значение: если в графе Γ\Gamma взять 31 вершину или больше, то какне-нибуд две из них обязательно будут соединены (доказите!).

В этом примере мы построили множество MM вершин графа, обладающее следующим свойством: любые две вершины из MM не соединены ребром. Такое множество MM называется независящим множеством (н. м.). В нашем примере независящим любые наборы четырех минутной стрелки, например: {2, 8, 34, 52, 56}, — или набор показаний, делящийся на 5: {0, 5, 10, …, 55}.

Если MM вершин неокоторого графа GG содержит наиболее число вершин среди всех его MM, то оно называется наиболее числом независящим множеством (н. н. м.), а число α(G)\alpha(G) вершин в нем — числом независящим (ч. н.) графа GG.

В рассмотрении выше графе Γ\Gamma много различных MM, а H,N,MH, N, M. — всего два (совокупность четырех чисел от 0 до 58 и совокупность четырех чисел от 1 до 59), и α(Γ)=30\alpha(\Gamma) = 30.

Если графе GG является графом ошибок неокоторого передающего аппарата AA, то α(G)\alpha(G) — это наиболее число различных сигналов, которые можно передать через этот аппарат без перепутывания. Поэтому α(G)\alpha(G) называют еще пропускной способностью аппарата AA.

16

Квадрат алфавита

С каждым передающим аппаратом AA мы связывали входной алфавит SS, граф ошибок GG и число независимости графа GG (пропускная способность аппарата AA) α(G)\alpha(G). А как бы, если аппарат AA задан раз и навсегда, а его пропускная способность для нас неодостаточная? Скажем, если AA — телефон передавать по телефонную буквы? Выход известен — это азбука Морзе: надо передавать через AA пачки из нескольких знаков (точек — тipe) и считать каждую такую пачку одним сигналом.

Сначала попробуем передавать через тот же аппарат AA по два последовательных сигналов из SS. Посмотрим, сколько сильно возрастает элементы любого алфавита будем называть буквами).

Попробуем определить пропускную способность аппарата A2A^2. Для этого прежде всего надо построить граф ошибок, обозначаемый через G2G^2. Посмотрим, при каких условиях сигнал (v1;v2)(v_1; v_2) можно спутать с сигналом (w1;w2)(w_1; w_2). Очевидно, для этого должно выполняться одно из следующих трех условий:

a) v1=w1v_1 = w_1, v2∼w2v_2 \sim w_2;
b) v1∼w1v_1 \sim w_1, v2=w2v_2 = w_2;
c) v1∼w1v_1 \sim w_1, v2∼w2v_2 \sim w_2.

Таким образом, вершины (v1;v2)(v_1; v_2) и (w1;w2)(w_1; w_2) графа G2G^2 соединены ребром, если в графе GG есть ребра v1−w1v_1 - w_1 (или v1=w1v_1 = w_1) и v2−w2v_2 - w_2 (или v2=w2v_2 = w_2). Например, если графе GG содержит всего две вершины, соединенные ребром, то G2G^2 — это квадрат с диагоналями (рис. 2).

Заддача 3. Построить граф G2G^2 для каждого из графов GG, изображенных на рисунке 3.

Таким образом, можно считать, что G2G^2 — это «слоенный» граф: каждый его вертикальный или горизонтальный слой совпадает с GG, а каждому ребру a−ba - b графа GG соответствует квадрат с диагоналями в графе G2G^2.

Попробуем найти какое-нибудь независимое множество в графе G2G^2.

Пусть в графе GG множество MM независимо. Это означает, что элементы из MM при передаче аппаратом AA друг с другом не путаются. Тогда при передаче пар букв из MM ни одна из этих букв не исказится, поэтому в алфавите S2S^2 не путаются друг с другом элементы вида (a;b)(a; b), где a∈Ma \in M, b∈Mb \in M. Множество пар (a;b)(a; b), где a∈Ma \in M, b∈Mb \in M, обозначается символом M2M^2. Легко видеть, что если pp — число элементов в MM, то число элементов в множество M2M^2 равно p2p^2. Таким образом, пропускная способность аппарата A2A^2 является как минимум квадратом пропускной способности аппарата AA, то есть на языке графов

α(G2)⩾(α(G))2.\alpha(G^2) \geqslant (\alpha(G))^2.

Заметим, однако, что такое увеличение пропускной способности дается не даром — вдвое падает скорость передачи сигналов.

На самом деле буквы по телефонную передаются несколько иначе. В принципе для всех 33 буквы алфавита необходимо наборы из 6 знаков (пятизнаковых не хватит), но по телефонную передаать не только точ

17

Королі на торе

Усложним немного граф G5G_5 рисунка 3: склеим точки 0 и nn. Получится nn-угольник 012 … (n−1)(n-1). Обозначим этот граф через PnP_n. Его квадрат Pn2P_n^2 получится из квадрата отрезка, если склеить попарно две горизонтальные и две вертикальные его стороны. Но квадрат отрезка — настоящий квадрат, а если еще склеить его противоположные стороны, то получится тор! А точнее, сетка на торе, содержащая n2n^2 квадратиков 1×11 \times 1 с диагоналями (рис. 4).

Если вершины этих квадратиков отложить с клетками горизонтой доски размером n×nn \times n, то соседние в шахматном смысле поля доски оказываются соединенными отрезками сетки, или, что то же самое, ребрами графа Pn2P_n^2, а задача M415M415 о максимальном числе несоседних королей на торе превращится в задачу определения числа независяности графа Pn2P_n^2. Ее решение приведено в этом номере журнала (см. с. 37).

Если вы хотите яснее представить себе структуру н. н. м. графа Pn2P_n^2, решите следующие задачи.

Задча 4. Пусть множество MM — н. н. м. графа Pn2P_n^2 (или, что то же самое, горизонтой доски n×nn \times n). Доказите, что

a) если n=2sn=2s, то M12M_1^2, где M1M_1 — некоторое н. н. м. PnP_n, является н. н. м., и α(P2s2)=s2\alpha(P_2s^2) = s^2;

18

  1. если n=4s+1n=4s+1, то на каждой вертикали и на каждой горизонтали доски расположетсяровно s=[n4]s=\left[\frac{n}{4}\right] точек (королей) из MM (здесь [a][a] — целая часть числа aa);
    в) если n=4s+3n=4s+3, то на каждой вертикали и на каждой горизонтали горизонтали доски расположется либо ss, либо s+1s+1 точек из MM.

Задача 5. Будем изобразить граф P22P_2^2 (тор) квадратом, помня, что противоположные стороны его склеены. Наозем циклический свойством графа Pn2P_n^2 отображение «паралельный перенос», при котором элемент (0; 0) переходит в (s;t)(s; t).

Докажите, что любое н. н. MM графа P22P_2^2 можно привести к виду, изобразенную на рисунке 5, если разрешить циклическое сdvизом графа доски и симметричное отношение диагонали, вертикали и горизонтали квадрата.

Примечние. Симметрию относительно диагонали (0; 0) (n−1;n−1)(n-1; n-1) квадрата можно записать формулой (x;y)→(y;x)(x; y) \rightarrow (y; x). Циклический сdvиз может быть запись так: (x,y)→(x+s;y+t)(x, y) \rightarrow (x+s; y+t), но в этой формуле будет одна неточность. Хотелось бы отложить числа nn и 00, h+1h+1 и 11 и т. д. Для этого применяются значки ≡\equiv и (modn)(mod n). Говорят, что aa сравним с bb по modulo nn и пишут a≡ba \equiv b (modn)(mod n), если aa и bb при делении на nn дают равные остатки. Обозначим через aa (modn)(mod n) остаток от деления aa на nn. Тогда можно сказаать, что элемент (x;y)(x; y) переходит при циклическом сdvизе графа в элемент ((x+s)(modn);(y+t)(modn))((x+s) (mod n); (y+t) (mod n)), а при отложении относительно, скажем, прямой x=ax=a — в элемент (2a−x)(modn);y)(2a-x) (mod n); y).

Рис. 6.

Все, что известно

Попробуем dalleше условия наш передающий аппарат; построим аппарат AkA^k, где kk — некоторое натуральное число. Это значит, что с помощью аппарата AA мы будем передавать пачки из kk букв, каждой из которых береется из начального входного алфавита SS.

По аналогии с двухбуквенными сигналами несложно построить граф GkG^k ошибок аппарата AkA^k. Его множество вершин — это алфавит SkS^k, состоящий из всевозможных наборов букв длины kk: (v1;v2;...;vk)(v_1; v_2; ...; v_k), где все viv_i берутся из алфавита SS. Несложно построить и ребра в графе GkG^k, то есть понять, какие сигналы (v1;v2;...;vk)(v_1; v_2; ...; v_k) и (w1;w2;...,wk)(w_1; w_2; ..., w_k) могут перепутаться. Для этого должны перепутаться между собой буквы каждой из координат, то есть для каждой ii (1≤i≤k)(1 \leq i \leq k) должны выполнять одно из двух условий: либо vi=wiv_i = w_i, либо vi∼wiv_i \sim w_i (если vi=wiv_i = w_i для каждой ii, то данные наборы совпадают).

Определять точное значение пропускной способности аппарата AkA^k в общем случае довольно сложно, но можно оценить ее снизу.

Задача 6. Докажите, что α(Gk)⩾(α(G))k\alpha(G^k) \geqslant (\alpha(G))^k.

А дальней… Дажке в одном из самых простых случая, когда граф ошибок — это nn-угольник PnP_n, об α(Pnk)\alpha(P_n^k) известно мало. Все, что известно из литературы, сейчас и будет расссказано.

Торическая шахматную доску размером n×nn \times n называют еще двумерным мором. Аналогично kk-ю степени nn-угольника (граф PnkP_n^k) можно назвать kk-мерным мором со стороны nn. Вер-

19

Рис. 7.

шины графа PnkP^k_n можно отложить с набором из kk целых чисел: (x1;x2;… ;xk)(x_1; x_2; \dots; x_k), где каждое число xix_i изменяется от 0 до n−1n-1.

Задание 7. Определите число вершин в графе PnkP^k_n.

Согласно определению, два набора (x1;x2;… ;xk)(x_1; x_2; \dots; x_k) и (y1;y2;… ;yk)(y_1; y_2; \dots; y_k) смежны в графе PnkP^k_n, если в nn-угольнике каждой пара координат xi,yix_i, y_i — соседи, то есть для каждой значения ii-тоя координаты различаются не более, чем на единицу: ∣xi−yi∣≡hi|x_i - y_i| \equiv h_i (mod nn) ∈{0,1}\in \{0, 1\} для всех ii от 1 до kk (например, на рисунке 6 для случая k=3,n=5k=3, n=5 отмечены соседи набора (0; 1; 2)).

Задание 8. Определите число соседей каждой вершины kk-мерного tora.

Задание 9. Докажите, что

α(Pnk)≤[(n2)k].\alpha(P^k_n) \leq \left[ \left( \frac{n}{2} \right)^k \right].

Задание 10. Определите α(Pnk)\alpha(P^k_n), если nn-четное.

Для нечетных nn справедлива оценка

(n−12)k≤α(Pnk)≤[(n2)k],\left( \frac{n-1}{2} \right)^k \leq \alpha(P^k_n) \leq \left[ \left( \frac{n}{2} \right)^k \right],

а иногда известно и точное значение α(Pnk)\alpha(P^k_n).

Теорема. Если n−1n-1 делится на 2k2^k, то

α(Pnk)=n−12k⋅nk−1.\alpha(P^k_n) = \frac{n-1}{2^k} \cdot n^{k-1}.

Полное доказательство этой теоремы довольно длино, поэтому показем лишь, как определить независящее множество с таким числом элементов. По каждому набору (x1;x2;… ;xk−1)(x_1; x_2; \dots; x_{k-1}) первый k−1k-1 координат получим r=n−12kr = \frac{n-1}{2^k} значений kk-тоя координаты:

xk≡2l+r(2k−1x1+2k−2x2+⋯+21xk−1)(modn).x_k \equiv 2l + r(2^{k-1}x_1 + 2^{k-2}x_2 + \dots + 2^1x_{k-1}) \pmod n.

Здесь ll — любое целое число от 0 до r−1r-1.

Если для случая k=2k=2 вы изобразите множество вершин, координаты которых заданы последней формулой, то получится ответ задан. М415 при n−1n-1, делящем на 4.

Эти результаты позволяют построить таблицу значений α(Pnk)\alpha(P^k_n) (рис. 7).

В ней часть чисел получена теоретически, а остальные — при помощи вычислительной машины. Вы видите, что с ростом kk и nn должна незаполненных мест становится все-всеоме.

Может быть, кто-то из вас заполнит пропуски в этой таблице и решит задачу об определении пропускной способности передачи аппаратов?