Книга
Книга
ВВЕДЕНИЕ
Удивительно трудными могут оказаться некоторые вопросы о конечных алгебраических структурах, даже с одной бинарной операцией и всего с несколькими элементами. В [4] Линдон поставил вопрос: всякая ли конечная алгебра (в смысле Г. Биркгофа) обладает конечным множеством тождеств, из которых выводимы все остальные? В той же работе он показал, что для всех двуэлементных алгебр ответ положительный. Затем, однако, он доказал [5], что в общем случае ответ отрицательный, указав конкретный семиэлементный группоид. Позднее четырехэлементный группоид, тождества которого не имеют конечного базиса, описал В. В. Вишин [И]).
Этот же вопрос о конечном базисе рассматривался в связи с группами. В 1937 г. было доказано (Б. Нейман [7]), что тождества любой абелевой группы имеют конечный базис. Такой же результат для нильпотентных групп был получен Линдоном [6] и обобщен Хигманом [3]. Самый, вероятно, значительный результат на сегодняшний день — это положительное решение вопроса для всех конечных групп, данное Оутс и Пауэллом в их весьма «теоретикогрупповой» статье [8]. Интересный вопрос о том, существует ли группа, не имеющая конечного базиса тождеств, все еще открыт).
Цель настоящей статьи — получить положительный ответ на вопрос о конечной базируемое™ тождеств для всех коммутативных полугрупп и всех равномерно периодических полугрупп,
удовлетворяющих какому-либо «соотношению перестановочности». С другой стороны, мы указываем шестиэлементную полугруппу, тождества которой не имеют конечного базиса. Приводимые доказательства по идее чрезвычайно элементарны и основаны большей частью на пошаговом анализе выводов в определенной эквацио- нальной системе.
Эти результаты составляют часть докторской диссертации автора (Калифорнийский университет, Беркли, 1966).
ПРЕДВАРИТЕЛЬНЫЕ ПОНЯТИЯ
Эквациональные теории полугрупп и связываемая с ними структура вывода могут трактоваться как подтеории теорий первого порядка с равенством, наделенные дедуктивной структурой исчислений первого порядка. С другой стороны, их легко определить и независимо, причем многими эквивалентными между собой способами. В целях большей самостоятельности изложения мы выбираем один из таких способов.
Под полугруппой S понимается множество So вместе с бинарной ассоциативной операцией на So, которая обозначается конкатенацией. С полугруппой S связываются описываемые ниже язык и дедуктивная структура.
Язык. 1) Множество переменных — это {w,x, у, 2» йуь хь ...}.
Множество термов — это наименьшее множество, содержащее все переменные и такое, что если s и t— термы, то st— терм. Множество подтермов переменной и — это {и}. Подтермы терма t— это сам терм и всевозможные подтермы термов Si и s^ где $iS2 есть t. Отсутствие вхождения иногда обозначается словами «пустой терм».
Множество всех тождеств — это множество (s = /|s и t— термы}.
Правила вывода. Пусть г, s, t, и — термы. Разрешаются следующие шаги вывода.
вывести s = t из г = и, если s = t— это результат подстановки некоторого терма на место всех вхождений некоторой переменной в г = и.
вывести s = s из пустого множества.
вывести s = t из t = s.
вывести rs = us из г = и.
вывести sr = su из г = и.
вывести s = ^ из s = г и г = ^.
Пусть Е— некоторое множество тождеств. Конечная последовательность тождеств вь е2,...,еп называется выводом тождества еп из Е, если каждое et либо является элементом множества Е, либо выведено из предшествующих тождеств данной последовательности по одному из указанных правил вьщода. Тождество е — Т№
рема в Е, или е, выводимом из Е, если существует вывод е из Е. В этом случае мы пишем Е Н е.'
Мы предполагаем, что с понятиями, используемыми в последующих определениях и обозначениях, читатель знаком (см., например, [1]). Для удобства читателя ниже приведен список обозначений, которые будут использоваться в дальнейшем.
и — переменные.
t— термы.
— система тождеств.
s^t — означает: s— подтерм терма t. Для собственного подтерма используется <.
var(s) — множество всех переменных, встречающихся в s. осс (и, s) —число вхождений и в s.
— полугруппа.
Л g> h — функции назначений — естественные продолжения отображений переменных на элементы полугруппы до отображений термов на элементы этой полугруппы1).
= t верно в 3, или 3— модель для s = I, если для всех f, " соответствующих 3, f (s) = f (/); 3 есть модель системы тождеств Е, если она является моделью тождества в для всех е^Е.
/(3) — система тождеств полугруппы 3 — множество всех тождеств, верных в 3, т. е. эквациональная теория системы 3.
Zn(S) — система всех тождеств в 3 с не более чем п переменными.
FSp/E — относительно свободная полугруппа с р образующими, определенная системой Е, т. е. полугруппа, элементы которой суть классы смежности термов для эквивалентности s = Et <-> Е |— s = 1, с естественной операцией. Рассматриваемые термы содержат переменные лишь из заданного множества мощности р.
ЦЕ)— замыкание системы Е — множество всех теорем в Е. Заметим, что HFSJE) — ЦЕ).
Е конечно базируема, если существует конечная система £0, такая, что ЦЕ0) = ЦЕ). Если Е конечно базируема, то существует конечная система Е0^Е, такая, что с(£о) = ЦЕ).
S имеет конечный базис тождеств, если /(3) конечно базируема. CFS^-FS^. .
Дадим теперь один критерий выводимости, полезный при установлении свойств ЦЕ) по данному Е.
Теорема 1. Е Н s = t тогда и только тогда, когда существует последовательность тождеств MiSiNi=MitiNi, i = 1,... ,п, такая,что:
9 Другими словами, такая f определяется набором значений переменных в S, скажем Vi = а^ и2 = а2, ..., й сопоставляет каждому терму его значение при Ui = ab v2 a2j ... . — Прим, перев.
St» ti — непустые термы; М^ Nt—(возможно пустые) термы;
для каждого i Si = ti или ti = st есть результат подстановки в какое-нибудь тождество из Е (или же Si есть ti);
M1S1N1 есть s;'
MntnNn есть t;
MitiNi есть М^х8^хЫ1л.у i = 1,.. *, n — 1.
Доказательство. Назовем такую последовательность Т-последовательностью для тождества s = t. Теорема легко доказывается в обе стороны с помощью индуктивного теоретико-доказательственного рассуждения. Индукция ведется в одну сторону по длине данного вывода, в другую — по длине данной /-последовательности.
ПОЛУГРУППЫ БЕЗ КОНЕЧНОГО БАЗИСА ТОЖДЕСТВ
Используя теорему 1, нетрудно построить систему Е (полугрупповых) тождеств, нс являющуюся конечно базируемой, а из этого, переходя к FSJE, — полугруппу, нс имеющую конечного базиса тождеств.
Теорема 2. Пусть Е = (xyzw = xzyw» yxky = xyxh~2yx> к = = 2, 3, ...}. Тогда Е не конечно базируема.
Доказательство. Предположим, что EogE— конечный базис. Пусть п превосходит все показатели из £0. Если yxnWy есть MiSiNt, где Si — результат подстановки в левую или правую часть тождества из Е0) то ti должно быть Si. Таким образом, MiSiNi есть MitiN^ и с помощью Eq он может быть переведен только в себя. Теорема доказана.
Лишнее на первый взгляд тождество xyzw = xzyw мы включили в Е, чтобы впоследствии сослаться на FSJE, как на пример «пермутативной» полугруппы без конечного базиса тождеств. .
Поиски конечной полугруппы без конечного базиса тождеств можно вести как в направлении от полугрупп к тождествам, так и от тождеств к полугруппам. Первый подход оказался бесплодным, потому что по заданной таблично полугруппе трудно получить удобную характеристику системы ее тождеств, не говоря уже об утомительной проверке ассоциативности. В соответствии с этим мы построили некоторое множество тождеств М с бесконечным числом переменных; искомый пример после этого задастся как гомоморфный образ полугруппы FS2/M. При этом, как часто бывает, возникают более общие, хотя и менее наглядные рассмотрения, к изложению которых мы сейчас переходим.
Говорят, что t— изотерм относительно Е, если его класс смежности [/]е, или просто [/], определенный системой Е на CFSto» есть
{/}. Заметим, что если t— изотерм относительно Е, то таковы же все его подтермы.
Система Е замкнута относительно вычеркивания, если из E\-s = t следует, что var(s) = var(/) и что при вычеркивании всех вхождений любой переменной получающееся тождество, если оно яс «пусто», выводимо из Е. Например, система всех тождеств любой полугруппы с единичным элементом, нс определимым алгебраически (т. е. не являющимся постоянным значением при любых значениях переменных, некоторого терма), замкнута относительно вычеркивания.
Е специальна, если хугух и хгуху— изотермы и из Е не выводимо ни одно из тождеств ххг = гхх, хуху = хуух и хуху = ухух1).
В дальнейшем, до конца этого раздела, Е предполагается специальной и замкнутой относительно вычеркивания. Таким образом, xyzxy и все его подтермы также являются изотермами относительно Е.
Определения. Переменная о бесповторна в t, если осс (и, /)= 1 и t линеен, если все его переменные бесповторны в t. Терм t ^-ограничен, если осс(и,/)^2 для всех и. Система Е— упрощенная, если всякий раз, когда s == / еЕ и sj 2-ограничены, бесповторные в s или в t переменные не встречаются на концах s и 1. Если / есть ViV2...vn, то его обращение tR— это терм onvn-i • • • у Г, end (0 — это переменная, стоящая на правом конце t.
Докажем теперь четыре леммы, устанавливающие некоторые свойства специальных систем, замкнутых относительно вычеркивания.
Лемма 3. Если Е Н Во = t (oB = f), But 2-ограничены и о ^5, то t есть Си(иС), где и^С.
Доказательство. Несомненно, occ(v,/)= 1. Предположим, что в t справа от и встречается уь При вычеркивании всех переменных, кроме о и Ui, в левой части остается либо Vi^, либо OiOiO. Из того, что 010 и OiOOi — изотермы, а тождество ViViu = ooiox из Е нс выводимо, вытекает требуемое.
Лемма 4. Если Е имеет конечный базис, то Е имеет упрощенный конечный базис. "
Доказательство. Пусть Е0^Е — конечный базис для Е. Пусть s = t^E0, s и t 2-ограничены и s имеет вид Во, где о ^.В В силу предыдущей леммы t имеет вид Со с о ^ С, так что в Ео мы можем заменить Во = Со на В = С. Аналогично рассуждаем для трех оставшихся возможных положений о. Конечное число таких
*) Последнее тождество добавлено при переводе. Без него теряет силу утверждение последней фразы следующего абзаца. — Прим. пере®.'
замен приведет к конечному упрощенному базису для Е. Лемма доказана.
Лемма 5. Пусть Е\— s = t, s и t ^-ограничены, s имеет вид ВиС ^Сх)Ву где С линеен и v^.B,C. Тогда t есть DvC (CvD).
Доказательство. Пусть С есть Ui,...,vn, где все Ui различны. Терм t должен иметь вид DvD'. Вычеркивая переменные из var(C) и применяя лемму 3, имеем var (D') Е Var (С). Вычеркивая все переменные из var (/)'), имеем var(С)^ var(В'), так что var^D^ = {иь и2, • • •, Уп}. Для каждых двух целых /, /, 1 ^ i<j^n, вычеркнем из ВоС = DaD' все переменные, кроме и, Ui, Vj. Левая часть перейдет в один из термов t)UiUj, ViVViVj, VjVViVj, ViVjWiVj или VjVjVUiUj, каждый из которых — изотерм относительно Е. Этим установлены не только линейность D', но и тот факт, что в D' все ид идут в том же порядке, что и в С, так что D' есть С. Лемма доказана.
В рассматриваемые системы Е мы хотим теперь включать определенные тождества, содержащие термы вместе с их обращениями, так что возможности применения подстановки при их выводе минимальны. Будем говорить, что / обладает свойством Qn, если он имеет вид vBvBR, где и ^.В и В — линейный терм с п переменными.
Лемма 6. Пусть Eq^E — упрощенная система, содержащая менее п переменных, и пусть Ео Ь s = t. Если s обладает свойством Qn, то / тоже обладает этим свойством, причем end(s) = end(/).
Доказательство. Нам надо лишь показать, что i-й «шаг» в ^-последовательности для s = 1, т. е. переход от MiSiNi к MJiNi, i=\,...,rn, сохраняет Qn и последнюю переменную. Предположим, что st = it является результатом подстановки о в тождество s' = ^< е Eq. Поскольку Eq упрощенная, переменные на концах s<, а значит и St, не бесповторные.
Если Mi не пусто, то Si может иметь лишь вид
^ “ • Х)пХ)Х)п ... иь
и в этом случае ti есть Si по лемме 5.
Если Mi пусто, то, чтобы не кончаться бесповторной переменной, терм Si должен содержать п различных переменных. Таким образом, подстановка о не должна просто сводиться к переименованию переменных; учитывая еще, что s имеет вид v'Bv'BR, получаем, что хотя бы одна из переменных, вместо которых делается подстановка, скажем переменная и, бесповторна в s'. Предположим, что уже выполнена подстановка на место всех переменных, кроме одной, последней, бесповторной переменной и, и что Mi и Ni уже приписаны, так что получилось s — t. Итак, осс(у,s) = осс(у, ?) = 1.
Случай I. Терм s есть ВиС, где В и С линейны или пусты. Вы-
черкивая все переменные, кроме двух, одна из них и, мы видим, что Z должен быть 2-ограничен, и согласно лемме 5 t есть s.
Случай II. Терм s имеет вид
wxx ... Хрух ... yqzx ... zrwzr ... zxx)xp ... хг.
Хотелось бы установить, что t также 2-ограничен, чтобы можно было применить лемму 5. Заметим, что переменная yq, так же как и и, бесповторна в s. Опуская все переменные, кроме ш, yq, находим, что осс (ку, ?) = 2. Для каждого I в отдельности, опуская все переменные, кроме Хг, yq, показываем, что осс(Хг, ?) = 2. Опуская все переменные, кроме w, yq, Zt, получаем осс(2;, ?) = 2. Таким образом, по лемме 5 терм t должен иметь вид
wxx ... ХрУх ... yqBwCvXp ... х1э
причем фактически мы доказали, что 5 и С линейны и var(B) = = var(C)= {2i,..., zn}. Наконец, если бы С не совпадал с BR, то нашлись бы такие i и /, что, оставляя только Zt и 2j, мы получили бы ZtZjZjZt = Zt^jZtZj, что невозможно, так как система Е специальна.
Случай III. Терм s имеет вид
wxx ... Xp*OZx ... zrwzr ... zxyq ... yxXp ... xx или
WX)ZX ... zrwzr ... zxyq ... Ух*
Этот случай не отличается от случая II, если поменять ролями У и yq.
Случай IV. Переменная и встречается в s с краю. Вычеркивая переменные, легко убедиться, что терм t также должен быть 2-ог- раниченным, что противоречит упрощенности Ео.
И1ак, в каждом из случаев I—III, которые только и возможны, сохраняются как свойство Qn, так и правая переменная. Лемма доказана.
Определим теперь квазизеркальное тождество как любое из тождеств
WXx ... xnwxn . . . Хх = wxn . . . XxWXx ... хп, п = 1, 2, ...
Теорема 7. Если система Е специальна, замкнута относительно вычеркивания и содержит все квазизеркальные тождества, то Е не конечно базируема.
Доказательство. Будь Е конечно базируема, существовал бы конечный упрощенный базис Ео е Е, содержащий меньше, чем скажем, п переменных. В силу леммы 6 п-ое квазизеркальное тождество не было бы выводимо из Во- Теорема доказана.
Построим теперь шестиэлементную полугруппу Z, тождества которой удовлетворяют условиям теоремы 7. Полугруппа Z— это полугруппа относительно матричного умножения, образованная следующими вещественными матрицами второго порядка:
/О 0\ /1 0\ /О 1\ /О 0\ /1 0\ /О 0\
КО ОГ V0 1/’ V0 0/’ VI or Vo or VO 1/01a b ab ba
01 a b ab ba
0
0
0
0
0
0
0
1
а
ь
ab
Ьа
0
а
0
ab
0
а
0
ь
Ьа
0
b
0
0
ab
а
0
ab
0
0
Ьа
0
b
0
Ьа
Теорема 8. Тождества полугруппы Z не конечно базируемы.
Доказательство. /(Z) замкнута относительно вычеркивания, поскольку 1—неалгебраический единичный элемент.
Теперь покажем, что /(Z) специальна.
Пусть хухух = t е /(Z). Придавая переменным у и х значения f(y)= °, f(2) — 6, легко получаем, что уху — изотерм относительно /(Z). Поэтому t должен быть одним из термов уххху, уххух, хухху или хухух. «Назначая» f(x) = f (2) = а и Цу)=Ь, отвергаем первые три возможности.
Пусть ххуху = t г HZ). Опускаем переменную у и видим, что осс(х,/)=2. Опускаем переменную х и, полагая f (2) = aj(у) =ba, видим, что в t все переменные у должны стоять справа от х. Но в t справа от х не может быть больше двух у-ов, иначе t имел бы подтерм уу, что невозможно, как показывает назначение f(x) = a, Цу^ = Ь, f(x) — ba. Это же назначение в действительности показывает, что t— это сам ххуху.
Пусть 1 (Z) Н ххх = ххх. Противоречие получается, если положить f(x) = ab, f(x) = а. '
Пусть /(Z)H хуху = хуух. Противоречие получаем, полагая f(x) = а, Пу)= Ь.
Пусть /(Z)H хуху = ухух ’). Противоречие получаем, полагая f(x)= a, f(y) — b.
Дадим, наконец, полное индуктивное доказательство (хотя нетрудно провести и неформальйую проверку) верности в Z всех ква- зизеркальных тождеств.
Будем называть п-тождеством квазизеркального типа (п-т. к. т.) любое тождество вида
У0У! . . . ипУ0и„ . . . У, = У0У„, . . ., У1У0У1 . . . У„,
а п-тождеством зеркального типа (п-т. з. т.)— любое тождество вида
У, ... У„У„ ... У, = У„ ... V1V1 . .. У„.
Докажем индукцией по п, что в Z верны все п-т. к. т. и п-т. з. т.
Для п = 1 это утверждение верно тривиальным образом. Предположим, что оно верно для п = к, и рассмотрим какое-либо (k + 1)-т. з. т., скажем s = t. Если f — произвольная функция назначений, полагающая хотя бы одну переменную из s = t равной 1, то f(s) = f(Z) по предположению индукции. В противном случае либо f (s) — /(/) = 0, либо f (у) = ab для всех встречающихся у или же f(v)—ba для всех встречающихся у, и тогда f(s) = f(t) = ab или, соответственно, f (s) = f (/) = ba. Итак, в Z верны все п-т. з. т.
Теперь рассмотрим какое-нибудь (k + 1) -т. к. т., скажем s = t. Если одной из его переменных придано значение 1, то f(s) = f(O либо по предположению индукции, либо в силу уже доказанного результата для (^ + 1)-т. з. т. Если же это не так, рассмотрим два случая.
к 4-1 четно. Здесь для f имеются в точности те же возможности, что и выше.
к + 1 нечетно. Помимо рассмотренных, есть еще только два способа получить ненулевое f(s) или f(t). Либо
f b при I нечетном, /(«<)=•
■I а при i четном,
либо
( а при I нечетном,
к b при i четном.
В этих случаях f (s) = f (0 = ab или f (s) = f (/) = ba соответственно. Теорема доказана.
Используя Z, а также теорему 7, нетрудно показать, что свойство конечной базируемости тождеств, даже в классе полугрупп, не сохраняется при образовании прямых произведений, гомоморфных образов или же при переходе к подалгебрам. Еще одно, несколько более неожиданное явление несохранения может иметь место, как
*) Этот абзац добавлен при переводе. См. сноску на стр. 9. — Прим, перев.
мы сейчас покажем, при присоединении к полугруппе единичного элемента. '
Определим на CFS^ следующее отношение *: s*t, если s есть t или ни s, ни t не есть подтерм в xyzyx, ххуху, хуху или ххх. Ясно, что * — это конгруенция с числом классов на 1 большим, чем число различных подтермов приведенных выше четырех термов. Заметим, что Н = CFSJ* удовлетворяет тождеству Х1Х2^з^4^6 = = УхУъУъУьУъУь и поэтому ее тождества конечно базируемы. С другой стороны, если Н\— полугруппа, образованная присоединением к Н единичного элемента, то, как легко проверить, ЦН^ удовлетворяет условиям теоремы 7 и не конечно базируема.
Припомните теперь замечание во введении, что вопрос о существовании группы без конечного базиса тождеств все еще открыт1). Заметив особенности системы квазизеркальных тождеств по отношению к конечным базисам, можно предложить в качестве одного из подходов к этой теоретико-групповой задаче изучить FG^IJ— относительно свободную группу с о) образующими, определенную какой-нибудь системой J, подобной /.
КОММУТАТИВНЫЕ ПОЛУГРУППЫ
В этом разделе наша цель — показать, что тождества всякой коммутативной полугруппы конечно базируемы, и получить оценки числа переменных, небходимых для любого конечного базиса.
Полугруппа S называется равномерно периодической (р.п.), если существуют такие целые т, к > 0, что хт = хт^к ^ Ц8). Если то— наименьшее среди таких т и для этого т0 число ко — наименьшее из таких к, то мы говорим, что S есть (m0, &0)-р. п. полугруппа.
В этом разделе мы будем предполагать, что S коммутативна, а Е Н е будет означать, что £ U {с} Н е, где с — закон коммутативности. Заметьте, что либо /(S) тривиальна в том смысле, что для всех s = t е/(S) и всех и справедливо осс(у, s)= осс(у,/), либо S равномерно периодическая. В первом случае тождества S тривиальным образом имеют конечный базис, поэтому мы будем предполагать в дальнейшем, что S(m0, й0)-р. п.
Терм t называется приведенным, коммутативным, или, когда нс возникает неясностей, просто приведенным, если он имеет вид и?‘ • • • упп’ где все Ui Различны и ^i < ^о + к0. Тождество s = / приведенное, если s и t приведенные. Мы сейчас покажем, что в приведенных тождествах для показателей возможно лишь конечное число различных «ситуаций».
Термом с показателем 0 будем называть пустой терм. Пусть 0 ^ р, q < ^о + ко. Множество В = (иь..., ип} будет называться
p-блоком приведенного терма s, если каждая переменная Ui е 8 имеет в s показатель р. Множество 5 назовем (p,q)-блоком приведенного тождества s = t, если В есть /7-блок для s и 9-блок для t. причем из чисел р, q хотя бы одно отлично от 0. Длина блока В — это число п. -
Рассмотрим, например, тождество х^х|х|х^х| = х^х|х^. Считая, что оно приведенное, т. е. что 6</По + &о, мы видим, что {xi,x5}, {xj, {х5} —это (2,6)-блоки, а {х6} — (0,4)-блок.
Если для конкретных р и q тождество е вообще имеет какой- нибудь (p,q)-блок, то оно имеет и (единственный) максимальный блок, содержащий все остальные (p^q)-блоки для е. Чтобы избежать употребления двойных индексов, предположим, что все пары (/7,9) занумерованы, так что можно говорить о 1-блоке, 2-блоке,..., r-блоке в е, где г = (/п0 + ^о)2 — 1.
Пусть е — произвольное приведенное тождество, и пусть 1 ^ к ^ г. Пусть Хк ^е) будет длиной максимального 6-блока тождества еэ если такой существует, и 0 — в противном случае.
Теорема 9. Каждая коммутативная полугруппа имеет конечный базис тождеств.
Доказательство. Пусть это не так. Тогда должна существовать последовательность еь е^»»^ такая, что для любого i > 0 ei е 1 (S), но неверно (еь ..., е^ Н ^г+ь Каждому е^ сопоставим «блок-вектор» Xw» где Х^ = Хь Vet\ 1 ^ к ^ г. Индукцией по г легко показать, что при частичном упорядочении, индуцированном естественным порядком на каждой из координат, бесконечное множество r-мерных векторов с целыми неотрицательными координатами обязательно содержит бесконечную возрастающую последовательность. Но если Х^ ^ Х^\ 1 ^ к ^г, то мы можем, подставляя в блоках, где неравенство строгое, вместо любой переменной линейный терм из новых переменных, получить из ет некоторое тождество е'тЭ для которого Хк(е^ = Хк^е^ К. к^.г х\ Затем простым переименованием переменных мы можем вывести ен из е'т) что противоречит исходному предположению о тождествах еь Теорема доказана.
Рассмотрим, например, тождества
е: х^у^ = х^.
и'
е': х^у^2? = х^у^е
Здесь имеются (2,4)-блок и (3,0)-блок, длины которых при переходе от е к е' возрастают, и е Н е\
*) Предполагается, что т достаточно велико, так что Х^<Х^ лишь ддя jex 6? ддя которых Х^ ^ О. — Прим. перво»
Перейдем к получению оценки числа переменных, необходимых для конечного базиса, в случае когда S имеет лишь конечное число простых элементов.
Элемент a^S называется простым, если для всех b, с е S имеем а =# Ьс. Заметьте, что, как вытекает из этого определения, если в S есть единичный элемент или она идемпотентна, то в ней вообще нет простых элементов. Если S конечно порожденная, то в ней простых элементов лишь конечное число. Символ [ ] будет обозначать, как обычно, целую часть.
Лемма 10. Пусть e^Id(S), пусть е не выводимо из U-i^S), и пусть е имеет блок длины п + 1 > 1. Тогда S содержит по крайней мере — + 1 различных простых элементов.
Доказательство. Предположим, что е эквивалентно тождеств'.
(0]02 • •• fn+i^G = (yjy2 ... о„+1)9Я,
где данные переменные t^ не входят ни в G, ни в Н, а р и q не равны одновременно 0. Вычеркивая из е: s = t переменную ип+ь получим новое тождество е': s' = t'. Разумеется, е' Н е и в е' переменных всего лишь d—\, поэтому по условию леммы e'^S неверно. Значит, существует конкретная функция назначений f, которая приписывает термам s' и t' разные значения ^s'^ и /(f) из S. Каждый элемент /(^i), I = 1, •.., п, должен быть простым в S, ибо если бы выполнялось, скажем, f(vn)= be, то мы могли бы определить новую функцию назначений g следующим образом:
g(oj = b
g^n^ = C
g (у) = / (у) для остальных переменных.
Тогда было бы f(s') = g(s) и f(t') = g(f). Ho eel(S), так что g(s) = g(t) в противоречии с f(s') #= f(H-
Мы показали, что все /(у^) простые; но, возможно, не все они различны. Однако среди этих Ци^ каждый простой элемент S должен встречаться менее то раз. Если бы для некоторого элемента а это было не так, мы могли бы определить h следующим образом:
A(On+i) = oS
h (у)•= / (у) для остальных переменных.
То же рассуждение, что и для g, снова приводит к противоречию. Следовательно, согласно «принципу ящиков», среди этих п простых должно быть |—I + 1 различных простых. Демид доказднд.
Теорема 11. Пусть число простых элементов в S конечно и равно р. Тогда /(S) имеет конечный базис с не более чем (pmg + 2) ((/«о + ЬоУ— 1) переменными.
Доказательство. Тождество с d переменными должно иметь блок длины по крайней мере q = dlr, где г = (т0 + й0)2—1— число типов блоков. Далее если оно не выводимо из Zd-i(S), то, согласно лемме 12, [‘^ "J + 1 ^ Р» или q ^.ршд^Х. Таким образом, (d/r) ^ рт0 4- 2 и
d < (pm0 + 2) ((/n0 + £0)2 — 1).
Теорема доказана.
Во второй части разд. 4 мы получаем еще одну оценку числа переменных, необходимых для конечного базиса 7(5), в терминах числа образующих системы S. Попутно мы получим также значительную информацию о решетке эквациональных классов коммутативных полугрупп.
Лемма 12. Пусть N,D >. 0. Тогда xN = xN+D верно в S тогда и только тогда, когда N ^ пг0 и k0\D.
Доказательство. Предположим, что П = т0-^-риП = ckg. Тогда требуемое утверждение легко доказать индукцией по с. Если, наоборот, в S верно xN = xN+D, то N ^ m0, поскольку /и0 выбиралось минимальным. Пусть
N — mQ = q1k0 + ri, О^г^^,
D = q2k0 + г2,0 < г2 < к0.
„Умножай" обе части тождества xN = xN+D на xk»~r', получим ^ТИо+С^Ч-1) &0 ^ТПо+^Ч-1) ^о+^2^о+Г2
и, таким образом, xmi = xm°+r2 выводимо как тождество системы S. Возможность г2 =И= 0 противоречит минимальному выбору k0. Итак, й0|В. Лемма доказана.--
Лемма 13. Пусть ееЦ8у Если в е есть ^цублок, то kg\p — q.
Доказательство. Пусть х— переменная этого блока; вместо всех остальных переменных подставим у. Тогда в S верно х*Рув = х^у0, а значит, хт>^в = х^0 и х2?+в = х2?+с. По лемме 14, разности показателей в последних двух тождествах должны делиться на й0, т. е. й0| (р — q^ + (B — С) и й0| X'lp — 2q) + (В — С). Таким образом, й0|р— q. Лемма доказана.
Из леммы 13 видно, что оценка в теореме 11 улучшаема, поскольку для «непустых» типов блоков возможны не все г различ* дьи пар ^p^q), а только пары с й0|р — q.'
Лемма 14. Предположим, что существует d > О, такое, что в S выполнено тождество с (О, d)-блоком, и пусть d0— наименьшее такое d. Тогда d0|d, и S удовлетворяет тождеству хтй = хт»уй.
Доказательство. Пусть у — переменная из (0, d)-блoкa такого тождества. Подставляя в него х вместо всех остальных переменных, получаем xB = xcyd. Пусть В^С. (Случай В < С рассматривается так же). Мы знаем, что для некоторого неотрицательного с имеем В — С = ск0, так что в S выполнены хв^ск» = = хв~схс/ и xB = xByd. Далее, В должно быть больше mQ, скажем, B = qk0-V г, Q^r<kQ. Умножая в xB = xByd обе части на хкй*г, получаем верное в S тождество xm°+((7+1)^ = xm^^+^^yd, а из него х^о = х^^. В частности, выполнено xm» = xm»yd\ Пусть d = qd0-Vr) O^.r<do. В S верны тождества xm = х^^^о+г и xmo = xm°yr, откуда г = 0. Итак, d0|d. Лемма доказана.
Сейчас мы увидим, какую роль играет число образующих в S. Для терма t будем обозначать через |/| мощность множества var (/).
Лемма 15. Пусть S имеет конечное множество образующих мощности N и пусть KL-PQ^I(S)—приведенное тождество) с | К | ^ m^N.
Если \ax^L) A var (PQ) = 0, то К = PQ ^ Ц5).
Если мощность var (К) A var (Р) больше или равна m0N, причем ) var(LQ) A var(КР) = 0, то К = Р ^Ц5).
Если существует d0 из леммы 14, то К = Кх)^^Ц8) при любой переменной и.
Доказательство. Пусть f — произвольная функция назначений; ЦК) представимо в виде произведения образующих, которое содержит (после «собирания» образующих) некоторую из них, скажем а, с показателем не менее ш0.
Выберем функцию назначения g так, что g(w) = f(w) для w s var (PQ) U var (К) и g(<w) = ak» для остальных переменных.
t го=§ те=g№=g^g w=№g (L)=
= Ва^а^ = Bam> = f (K).
Поскольку f произвольна, К = PQ e/(S).
Выберем g так, что g(w) = f(w') для w e var(/<) П var(P) и g(w) = ake для остальных переменных. Аналогично а) легко про-
верить, что f (/С) = ^Р\, таким образом, К. = Р г I (S).
f(Kud») = f№f(od») = Ba^<x)^ = Ba^ = f(/С).
Лемма доказана.
Теорема 16. Если S имеет конечное множество из N образующих, то 1(8) имеет конечный базис, содержащий не более 2NmQ + 1 переменных.
Доказательство. Пусть s = t ^ I (8)—приведенное тождество. Мы будем считать, что задан порядок переменных, при котором в s и t сначала идут их общие переменные (в одинаковом порядке). Разобьем s и t на куски так, что данное тождество можно будет записать в виде
-GA ... GkG = HxH2 ... НкН,
где первое вхождение переменной, нс входящей в обе части, попадает в Gk, и | Gt | = | Hi | = Nm0 для i = 1,..., к — 1. Если возможно, пусть \Gk\ и \Нк\ = NmQ. (G и Н могут быть пусты; возможно, | G/? | <Х А/т0 или \Нк\<. Nm0.) Рассмотрим тождества ес Gi = = Ht(i < к) и ек: Gk_xGkG = Нк_хНкН. (При к = 1 в ек Gk_x и Нк_х считаем пустыми). Повторными применениями леммы 17b получаем, что ег и ек верны в S.
Если к = \, то по лемме 15b в S выполнено тождество eV Gkvi0==z Hkv2°> где в зависимости от |GJ и | Нк | мы допускаем и случай, когда эти уг фактически отсутствуют. Тождество ек выводимо из ек, поскольку по лемме 14 все переменные в G и в Н должны иметь показатель, кратный d0, так что G и Н выразимы в виде Bd\
Если к>\, мы „подразбиваем“ ек, представляя его в виде KL = PQ, где var (К) = var (Р) и var (L) Q var (Q) = 0. Заметим, что Af^o^l К К 2Afm0. Лемма 15 снова дает, что в S выполнено ек: Kvd» = Ри^» с тем же замечанием, что для ек. Тождество ек выводимо из е". Поскольку var(К) = var(Р), число переменных, входящих в е' или ек, не превосходит 2Nm^ + 1. Склеивая теперь ер •••» ек_х и, в зависимости от рассматриваемого случая, ек или ек, мы можем вывести исходное s = t. Теорема доказана.
Разумеется, можно себе представить, что существует равномерная граница Ь, такая, что всякая коммутативная полугруппа имеет конечный базис тождеств с менее чем b переменным. Чтобы показать, что дело обстоит не так, мы доказываем следующее утверждение.
Теорема 17. Для всякого целого п>\ можно построить коммутативную полугруппу Sn, такую, что I(5п) не имеет базиса с менее чем п различными переменными.
Доказательство. Полугруппа Sn имеет две образующие а и Ь, для которых ап = апЛЛ и ab = Ьа = Ь2 = Ь. Таким образом, все элементы Sn представимы как а, а2)..., а™, Ь. Скажем, что тождество обладает свойством Lk, если одна из его частей имеет вид У1... и^ где уг- различны, а другая часть содержит хотя бы одну переменную более одного раза. Непосредственно проверяются следующие утверждения: 1), 2), 3).
В тождестве полугруппы Sn переменная входит в одну из частей только тогда, когда она входит и в другую.
Тождество, обладающее свойством Lk для к < п, не верно в Sn.
Тождество еп: хх х2... хп = хх х2... х2п верно в Sn и обладает свойством Ln.
еп не выводимо из Zn_i(Sn).
Докажем 4). Пусть такой вывод существует. Применяя теорему 1, мы видим, что если MiSiNi линеен и Si = ti есть результат подстановки в г=и е 1п-\ (Sn), то г линеен. В силу 2) и также линеен и должен содержать те же переменные, что и г. Таким образом, MitiNi линеен, и вывод ен существовать не может. Теорема доказана.
ПЕРМУТАТИВНЫЕ ПОЛУГРУППЫ
Наиболее естественное обобщение закона коммутативности — это, пожалуй, вводимые ниже «тождества перестановочности». Если предположить еще и равномерную периодичность, то, как мы сумеем доказать, «пермутативные» полугруппы имеют конечный базис тождеств.
Пусть л — подстановка натуральных чисел, сдвигающая лишь конечное множество Мл. Пусть тл = шах Мл, кл = min Л1Л и d^ = тп — кк. Пусть п ^ т^ а Сл — представление л в виде произведения циклов без общих элементов. Введем в рассмотрение тождество
ЛСЛ: Л4Х2 • • • ^п = ^л (1)^л (2) • • • ^л (п)* .
например, 4(1,3) обозначает тождество ххх2хгх4 = хгх2Х1Х4. Для всякого d > 0 определим следующую подстановку л +
( к,если k^.d,
1Л + ^Н^)—— d^-Vd, если k>d.
Другими словами, л + ^ — это перенос л на d. Если, например, л задана как (245) (31), то dn = 4 и л + d^ задается каю (689) (75). Легко проверить, что {^Сл, nCG\ V- пСло о, м-aCn, м-дСп+д для всех d > О Назовем S пермутативной, если она удовлетворяет какому- нибудь тождеству вида
Xj ... Хп = Ха (1) . . . Ха (П),
где о — произвольная подстановка натуральных чисел. Ясно, что S пермутативна в том и только в том случае, если она удовлетворяет некоторому ПСЛ.
Если, кроме того, Мл состоит ровно из трех чисел, мы говорим, что S трициклична, а если Мл имеет вид (6,6 + 1}, то S называем почти коммутативной. Сейчас мы покажем с помощью цепочки лемм, связывающих эти понятия, что всякая пермутативная полугруппа является почти коммутативной. В действительности мы установим, что если операция умножения в пермутативной полугруппе отображает на S, то S удовлетворяет тождеству xyzw = = xzyw. Заключительный шаг будет состоять в доказательстве конечной базируемости тождеств всякой почти коммутативной равномерно периодической полугруппы.
Лемма 18. Если S пермутативна, то S трициклична.
Доказательство. Пусть в S верно сСп. Если а = л + ^л, а п = п -V dn, то в S должны быть верны также ЙС дСя-1 пС0, nCa~i и nCv где т = л о до л"1 о а-1. Но заметьте, что ^0^ = = {тл} = {&а}, а Мт = (л-1 (тл), тл, o-4mn)V В действительности т задается в виде (тл, стЧтп\ л^^п))- Лемма доказана.
Лемма 19. Если S трициклична, то S почти коммутативна.
Доказательство. Можно считать, что числа, образующие цикл, соответствующий данному тождеству Т, стоят в цикле в их естественном порядке.
Случай I. Т есть п(р,р + Х,р + 2). Рассмотрим сначала случай п = 3, р = 1, т. е. предположим, что в S верно тождество xix2x3 = = х2х3хь Заменяя х2 на х2х3, а х3 на х4, получим (1) XiX2x3x4 = = x2x3x4xi. В том же тождестве 3(123) заменим теперь х4 на х2х3, х2 на х4, х3 на Хь получим x2x3x4xi = x4xix2x3. Сочетая это с (1), получаем в S xix2x3x4 = x4xix2x3, или 4(1432). Теперь, исходя из з(123), мы легко доказываем, что в S верны 4(123) и отсюда 4[(123) (1432)], а это и есть 4(34). Ясно, что в действительности это рассуждение применимо и в общем случае и что
«Цр, р+ 1, р + 2) Н„+1(р + 2, р + 3).
Случай II. Т есть n(p, q, q + 1), где р + 1 < q. Из Т вытекает
»+1[(р+ 1, 9+ 1, 9 + 2) (р, 9 + 1, 9 + 2)(р, 9, 9+ ОХ
Х(р+1, 9+1. 9 + 2)1,
а это есть п-ц (9 + 1,9,9 + 2), из чего следует n+i (9,9 + 1,9 + 2), и все свелось к случаю I.'
Случай III. Т есть п^р, q^ где р + 1 < q. Из Т вытекает
n+i[(r, Р, q) (г, р, q+l) (г, р, q + 1)];
а это есть n+i (р, q, q + 1), и мы возвратились к случаю II.
Лемма доказана.
Лемма 20. Если S почти коммутативная и равномерно периодическая, то тождества S конечно базируемы.
Доказательство. Пусть S (т0, £0)-р.п. и почти коммутативна. Тогда каждое ее тождество Si = s2 эквивалентно1) тождеству «нормального вида» AyByCyDy = A2B2C2D2, в котором:
нет показателей, больших т0 + &0;
At — это первые m букв терма s^ (х^ считается за q букв);
Dt — это последние п букв терма St (с вычеркнутым Лг);
Вг — терм в приведенной коммутативной форме, содержащей только переменные из Ау, Л2, Dy или D2;
Ct — терм в приведенной коммутативной форме, не содержащий переменных, встречающихся в Ль Л2, Dy или Ь2.
С точностью до обозначения переменных существует лишь конечное число таких шестерок AyByDyA2B2D2. Предположим теперь, что тождества S не конечно базируемы. Тогда найдется последовательность еу, е2,... «нормальных» тождеств из /(S), такая, что ни одно вг не выводимо из предшествующих тождеств этой последовательности. Следовательно, должна найтись подпоследовательность fi,f2, обладающая тем же самым свойством, в которой «ABD- шестерки» у всех тождеств одни и те же (с точностью до переименования переменных). Но рассуждение с помощью (р, q) -блоков в применении к Ct, совершенно такое же, как использованное в теореме 9 для коммутативных полугрупп, оказывается и здесь достаточным для приведения к противоречию. Лемма доказана.
Комбинируя приведенные выше леммы, имеем еще один положительный результат.
Теорема 21. Всякая равномерно периодическая пермутатив- ная полугруппа имеет конечный базис тождеств.
Заметьте, что условие равномерной периодичности здесь существенно, поскольку FSJE из теоремы 2 — это пример пермутатив- ной не р. п. полугруппы, тождества которой не конечно базируемы.
Следствие 22. Все трехэлементные полугруппы имеют конечный базис тождеств.
В силу системы из двух тождеств {^о = X^-Vk»t Х1 .,, xmyzwx ... wn = = хх ... xmzywx ... wn\. -— Прим. перев.
Доказательство. Все кипы неизоморфных и неантиизо- морфных полугрупп с тремя, четырьмя и пятью элементами перечислены [2, 10]. Из восемнадцати типов трехэлементных полугрупп семнадцать, как легко проверить, пермутативны, удовлетворяя (по крайней мере) тождеству xyzw = xzyw. Один остающийся тип1) удовлетворяет тождеству хух = ху и, как можно показать, имеет конечный базис тождеств.
СПИСОК ЛИТЕРАТУРЫ2)
Cohn Р. М., Universal Algebra, Harper & Row, New York, 1965. (Русский перевод: Кон П. Универсальная алгебра, «Мир», М., 1968.)
Forsythe G. Е., SWAG computes 126 distinct semigroups of order 4, Proc. Amer. Math. Soc., 6 (1955), 443—447.
Higman G., Some remarks on varieties of groups, Quarterly J. of Math. Oxford Ser., 10 (1959), 165—178.
Lyndon R. C., Identities in two-valued calculi, Trans. Amer. Math. Soc., 71 (1951), 457—465. (Русский перевод: Линдон P. К., Тождества в двузначных исчислениях, Киб. сб. 1, М., ИЛ, 1960, 234—245).
Lyndon R. С., Identities in finite algebras, Proc. Amer. Math. Soc., 5 (1954), 8—9. (Русский перевод: Линдон. P. К., Тождества в конечных алгебрах, Кибернетический сборник, вып. 1, ИЛ, М., 1960, стр. 246—248.)
Lyndon R. С., Two notes on nilpotent groups, Proc. Amer. Math. Soc., 3 (1952), 579—583.
Neumann В. H., Identical relations in groups, Math. Ann., 114 (1937), 506—525.
Oates S., Powell M. B., Identical relations in finite groups, Journal of Algebra, 1 (1964), No. 1, 11—39.
Scott D., Equationally complete extensions of finite algebras, Nederl. Ahad. Wetensch. Proc., Ser. A, 59 (1956), 35—38.
Selfridge J. L., On finite semigroups, Ph. D. dissertation, University of California, Los Angeles, June 1958.
Вишин В. В., Тождественные преобразования в четырехзначной логике, Докл. АН СССР, 150 (1963), № 4, 719—721.
12. Мурский В. Л., Существование в трехзначной логике замкнутого класса с конечным базисом, не имеющего конечной полной системы тождеств Докл АН СССР, 163 (1965), № 4, 815—818.
13. Ольшанский А. Ю., О проблеме конечного базиса тождеств в группах, Изв. АН СССР, 34 (1970), № 2, 376-384.
14. Адян С. И., Бесконечные неприводимые системы групповых тождеств, Изв. АН СССР, 34 (1970), № 4, 715—734.
15. Vaughan-Lee М. R., Uncountably many varieties of groups, Bull. London Math. Soc., 2 (1970), 3, 280—286.
*) Речь идет о полугруппе с элементами, скажем, 0,1,2 и умножением Ох в 0, 1х в х, 2х в 2. — Прим, перев.
.2) Работы, добавленные при переводе, отмечены звездочкой. — Прим, ред.
Веса многочленов и кодовыеконструкции °
Дж. Л. Месси, Д. Дж. Кастелло, И. Юстесен
ВВЕДЕНИЕ
В этой статье будет показано, что многочлены (х — су, / = 0,1,2,..., где с — любой ненулевой элемент GF(q), обладают тем фундаментальным свойством (которое мы называем свойством сохранения веса), что любая линейная комбинация этих многочленов с коэффицентами из GF(q) имеет хэммиговский вес, нс меньший чем вес входящего в нее многочлена минимальной степени. Оно доказано отдельно в разд. II. А для случая, когда GF(q) имеет характеристику р = 2, так как это самый простой случай и так как он имеет наиболее интересные применения. Такие применения (1) к кодам Рида — Маллера, (2) к новому классу двоичных циклических кодов с кратными корнями, (3) к двум новым классам двоичных сверточных кодов, полученных из двоичных циклических кодов, и (4) к двум новым классам двоичных сверточных кодов, полученным из кодов Рида — Соломона, содержатся в разд. II. Б, II. В, II. Г и П.Д соответственно.
В разд. III. А мы приведем новый класс констациклических кодов над полями GF(q) с характеристикой р, большей чем 2, которые являются кодами с достижимыми максимальными расстояниями и имеют простой алгебраический алгоритм декодирования. Затем этот класс кодов используется в разд. III. Б в качестве основы для доказательства по индукции свойства сохранения веса для произвольного конечного поля GF(q). Наконец, в разд. III. В будет приведено новое р-ичное обобщение кодов Рида — Маллера и будет дан новый класс констациклических подкодов этих р-ич- ных кодов, имеющих то же самое минимальное расстояние, что и порождающие коды.
ДВОИЧНЫЙ СЛУЧАЙ
Свойство сохранения веса в полях характеристики 2
Пусть с — ненулевой элемент конечного поля GF(q), где q = 2Г для некоторого целого г. Так как многочлены (х-|-с)\ /=0, 1,2,... содержат в точности по одному многочлену каждой степени, то они
*) Massey J. L, Costello D. J., Jr., Justesen J., Polynomial weights and code constructions, IEEE Transactions on Information Theory, IT-19, № 1, (1973), WHUO,
образуют базис векторного пространства всех многочленов над GF(2T), и, следовательно, каждый многочлен Р(х^ над GF(2r) может быть единственным образом выражен в виде линейной комбинации этих многочленов. После этого обозначим через №[Р(х)] хэм- минговский вес многочлена Р^. т. е. число его ненулевых коэффициентов. Следующая теорема связывает И/[Р(х)] с разложением Р^х) в указанном выше базисе.
Теорема 1.1. Пусть I — какое-либо конечное непустое множество неотрицательных целых чисел, среди которых минимальным является целое число tmin, и пусть
Р^=^ ЬАх-нУ,
I е /
где с и каждое Ьг — ненулевые элементы поля GF^TY Тогда
№[P(x)]>№[(x4-c)Zml4(1)
Доказательство. Проведем индукцию по наибольшему целому imax из /. Простая проверка показывает, что (1) справедливо для fmax < 22. Предположим теперь, что (1) имеет место для tmax < 2П, и покажем, что (1) справедливо для imax < 2n+1.
" Разобьем / на множества /о и Л, где /о содержит те и только те i из /, для которых i < 2П. Тогда
2 М* + с/ = (я + с)2П 2 ЬДхЛ-сУ-^,
что после обозначения через Р\(х) суммы в правой части, которая представляет собой многочлен степени, меньшей чем 2П, принимает ВИДпп
2 Ь^х-НУ-х1 Р,(х) + с2 Р^х).(2)
ielx•
Аналогично обозначим через Ро(х) многочлен степени, меньшей чем 2П, который задается равенством
PoW= 2 ьлх-Vcy.
Тогда из (2) и определений /о и Л получаем .
Р W = [Ро W + с^Р, (х)] + хгПРх (х)..(3)
Предположим сначала, что Ро(х) = О. Тогда из (3) имеем Ц7[Р(х)] = 2W[PX (х)]. Так как Pi(x) имеет степень, меньшую чем 2П, то, согласно индукции, получаем
Г [Pl W] > Г [(х + c)Zm>n "2"].(4)
Кроме того,
W [(X + с/™'"] = ^ [ (х + с)2" (X + c/mln-2"] =
= W [(х2" + с2") (х + c)<m,n~2 ] = 2U7 [(х + с)<т1п~2"], Так что с помощью (4) получаем W [Р (х)] = 21)7 [Р, (х)] ^ ^ 117 [(х + с)1т|п], что и следовало доказать. Предположим теперь, что Ро(х)У=О. Тогда из (3) теперь имеем
Г[Р(х)]>117[Р0(х)],(5)
так как любой ненулевой член в Ро(х), сокращенный при добавлении с1 Px^xY должен вновь появиться как ненулевой член в х2 Pi (х). Поскольку Ро(х) имеет степень, меньшую чем 2П, то, согласно индукции, И7[Р0(х)] ^ И7[(х + с)Zmin ], что совместно с (5) дает (1), и теорема доказана.
Отметим, что в частном случае r= 1 теорема 1.1 эквивалентна тому, что двоичная матрица 2” X 2”, у которой (i + 1)-я строка является последовательностью коэффициентов в (х+1)\ т. е. (г+1)-й строкой треугольника Паскаля, приведенного по модулю 2, обладает тем свойством, что любая сум^а ее строк имеет хэммингов- ский вес, по меньшей мере равный весу самой верхней строки, которая входит в сумму. При п = 3 эта матрица имеет вид
"10000000"
11000000
10100000
111 1 0 0 0 0
10001000
110 0 110 0
10 10 10 10
11111111_.
Эти матрицы имеют определенное значение в теории переключательных схем; в этой теории Препарата [1] указал некоторые другие интересные свойства этих матриц, в частности то, что они совпадают с обратными себе.
Б. Двоичные коды Рида — Маллера
Мы часто будем использовать следующий результат.
Лемма 1. Пусть с — ненулевой элемент конечного поля GF(q) с характеристикой р, и пусть i — неотрицательное целое число в р-ичной записи [im-i,..., ir io]- Тогда m—1
W[(x + с)1] = П^+П»(6а)
(66)(66)или для частного случая, когда р = 2, Г[(хЧ- l)z] = 2W <£),
(66)
(66)
где w(i) обозначает число единиц в двоичной записи I.
Доказательство. Чтобы доказать эту лемму, заметим вначале, что ^[(х + ср] представляет собой просто число целых чисел к, 0 ^ к ^ /, таких, при которых биномиальный коэффициент ^) не равен нулю по модулю р. Но, согласно теореме Лукаса [2, стр. 121],
m—1
G^nU)™^’(7)
/=0'
где ij и kj символы в р-ичных записях i и к соответственно и где по определению биномиальный коэффициент, у которого нижнее число превышает верхнее, равен нулю. Теперь из (7) следует, что имеется в точности iз + 1 возможностей выбрать к^ а именно 0,1,2,..., ij, так, чтобы соответствующий биномиальный коэффициент в (7) был отличен от нуля по модулю р. Таким образом, отсюда следует (6а), и лемма доказана.
Сейчас мы можем использовать теорему 1.1 для простого вывода двоичных кодов Рида — Маллера. Пусть ш и и — какие-либо два положительных целых числа, такие, что и ^ т. Рассмотрим двоичную матрицу G с п = 2т столбцами, строки которой содержат последовательность коэффициентов в (х + 1) ^ для всех /, таких, что i < п и wl^ ^ м. Число таких i, т. е. число строк в G, в точности равно
Например, при т = 3 и и = 2 имеем
г 1 1 1 1 1 1 1 1 -
10 10 10 10°- 11001100 •
- 1 1 1 1 О О О О -
■ Возьмем теперь G в качестве порождающей матрицы двоичного (т, й)-кода с проверками на четность. Из теоремы 1.1 следует, что каждое ненулевое кодовое слово, т. е. каждая сумма одной или большего числа строк матрицы G, имеет хэмминговский вес, по меньшей мере равный 2й, так как наш выбор G гарантирует, что такая сумма соответствует сумме многочленов (х+1)\ для которой ^(/шщ)>ц, и, следовательно, согласно лемме 1,
^[(х + 1)<mIn] ^ 2й. Более того, некоторые строки G имеют хэм- минговский вес, в точности равный 2й, так что минимальное расстояние кода равно d = 2U. Этот код в точности является кодом Рида — Маллера u-го порядка длины п = 2W, и на самом деле строки, которые мы выбрали для G, являются теми же самыми, которые были выбраны Ридом [3] (с точностью до тривиальной инверсии каждой строки).
Вычисление к и d для двоичных кодов Рида — Маллера, которое приведено здесь, является существенным упрощением известных ранее методов.
Новый класс двоичных циклических кодов с кратными корнями
При 2 ^ и ^ m рассмотрим двоичный многочлен
gW = (Hl)‘,(8)
где
Z = 2m—2m-“+* +L(9)
Двоичная запись I имеет вид
\im-\, А» го] = [1 1 ... 1 00 ... О 1],(10)
где серия из нулей имеет длину m — и. Заметим, что 2m-1 < Z < 2го; это влечет за собой то, что g^x)— делитель xn + 1 при п = 2т (так как в этом случае х” -f- 1 = (х 4- 1)п), но не при меньших п. Следовательно, g^x) порождает двоичный циклический (и,/г)-код с n = 2т и п— k = i, который, согласно (9), дает к = 2m_u+I — 1. Строки порождающей матрицы G для этого циклического кода могут быть выбраны в виде g(x)(x-|-lp для / = 0,1,..., к — 1 или эквивалентно в виде (x-f-lp для i ^ / < п. Но из (10) следует, что w(j) ^ w(i) для i ^ / < п = 2т, так как двоичная запись / должна иметь и — 1 символов 1 и в первых позициях и по меньшей мере один символ 1 среди своих последних пг— u + 1 позиций. Таким образом, строки G являются подмножеством строк G, как было в разд. II. Б. Следовательно, циклический код, порождаемый g(x), является подкодом двоичного кода Рида — Маллера u-го порядка, имеющим то же самое минимальное расстояние, что и порождающий его код, так как 1И£(Х)] = 2“ = d. (В дальнейшем циклический код, у которого неприводимые делители и, следовательно, корни g (х) имеют кратность, большую чем единица, будем называть циклическим кодом с кратными корнями.) Тем самым мы доказали следующую теорему.
Теорема 2. При 2 ^ и ^ m двоичный циклический (n = 2т, ^ = 2т-“+* — \)-код с кратными корнями, порождаемый g(x) = = (*±l)n-h. является подкодом двоичного кода Рида — Маллера
u-го порядка, имеющим такое же минимальное расстояние d = 2U, что и порождающий его код.
Хотя циклические коды с кратными корнями из теоремы 2 в общем случае хуже сравнимых с ними кодов Боуза—Чоудхури—Хок- вингема (БЧХ-кодов), они имеют два интересных свойства, которые могут обусловить их использование в некоторых практических ситуациях.
5п-И5п-И5а5аРис. 1. а —схема, формирующая синдром для двоичного циклического кода с кратными корнями из теоремы 2; б — декодер./—сумматор по модулю 2; 2—единичная задержка; 3—п единичных задержек.Рис. 1. а —схема, формирующая синдром для двоичного циклического кода с кратными корнями из теоремы 2; б — декодер./—сумматор по модулю 2; 2—единичная задержка; 3—п единичных задержек.
5п-И
5п-И
5а
5а
Рис. 1. а —схема, формирующая синдром для двоичного циклического кода с кратными корнями из теоремы 2; б — декодер.
/—сумматор по модулю 2; 2—единичная задержка; 3—п единичных задержек.
Рис. 1. а —схема, формирующая синдром для двоичного циклического кода с кратными корнями из теоремы 2; б — декодер.
/—сумматор по модулю 2; 2—единичная задержка; 3—п единичных задержек.
Первое свойство состоит в том, что для кодов с кратными корнями очень легко можно построить схемы вычисления синдрома и декодирования. Эти схемы используют логические элементы, соответствующие множителю (%+ 1) в таких комбинациях, которые сами по себе приводят к реализациям на интегральных цепях. Рассмотрим схему, изображенную на рис. \,а. Легко проверить, что если многочлен Р^ = Рп-\Хп~х + ... + Рхх + Ро записан в этой схеме (коэффициенты при высших степенях расположены сначала), то содержимое '
S (х) = So + SjX + . .. + S^fc-^"-6-1, когда Р) — единственный ненулевой коэффициент, будет
Р, (х + 1) i mod (х n~ft);
следовательно, в силу линейности реакций на произвольный многочлен Р(х) будет
.s (х) = Р (х + 1) mod (хп~*)
(здесь и в дальнейшем через P(x)modQ(x) обозначается остаток от деления многочлена Р(х) на многочлен Q(x)). В частности, когда Р(х) = f(x) + е(х), где f(х) = n(x)gf(x) = п(х) (х + l)n-fe — кодовое слово кода с кратными корнями, а е(х) = е0 + eix + • • • ... + en-ixn-1 — ошибка в канале, имеем
п—\
s(x) = e(x+ 1) mod (xn-k) = 5 £/(х + 1/mod (xn~^),(11)
/=о 1
откуда видно, что s(x) зависит лишь от ошибок и, таким образом, является истинным синдромом. Предположим теперь, что реализована логическая функция F, которая производит при декодировании оценку en-i первого ошибочного символа en-i по синдрому s(x). После дальнейших / сдвигов логической схемы, изображенной на рис. 1,а, содержимым регистра синдрома будет
п—1
„я (х)“ = 2 ен (х + I)7 mod (xra"ft) ./=о 1
(где считается, что е_п = еи-п^ так что та же самая функция F в дальнейшем будет производить соответствующую оценку ёп-г-\ значения еп-г-ь Таким образом, подобно методу, впервые предложенному Меггит [4] для циклических кодов, весь декодер для кода с кратными корнями может быть выполнен так, как показано на рис. 1,6. Соединение, изображенное точками в этом декодере, производится, если требуется устранить влияние правильно декодированных ошибочных символов на синдром так, чтобы его содержимое было нулевым после успешного декодирования полного блока.
Второе свойство состоит в следующем: так как коды с кратными корнями являются подкодами кодов Рида — Маллсра, имеющими то же самое минимальное расстояние, что и порождающие их коды, мажоритарный алгоритм декодирования Рида [3] может быть использован в качестве простой реализации декодирующей функции F (рис. 1,6). Например, для (8,3)-кода с кратными корнями и с d = 22 = 4 легко проверить, что s3, s4 и $о + $з + $4 образуют множество трех проверок на четность, ортогональных относительно еи_х = е7 [5], так, что F можно реализовать на основе следующего правила декодирования: ё = 0, если ни одна проверка или только одна из этих проверок имеет значение 1; ё= 1, если все три проверки имеют значение 1; и обнаружение двух или более ошибок объявляется, если две из этих проверок имеют значение 1.
Г. Построение двоичных сверточных кодов по двоичным циклическим кодам
Теперь мы покажем, что теорема 1.1 даст ключ к использованию известных циклических кодов для построения сверточных кодов
с большим свободным расстоянием. Для того чтобы облегчить рассмотрение, вначале мы представим теорему 1.1 в следующих двух эквивалентных формах.
Теорема 1.2. Для любого многочлена Q(x) над GF(2ry любого ненулевого элемента с из GFIS1^ и любого неотрицательного целого N имеет место неравенство
W [Q (х) (х + ^1 > W [(х + сУЧ • W [Q (с)].(12)
Доказательство. Представим сначала Q(х) в виде
Q (х) = 2 bi (х + сУi=0
и заметим, что Q(c) = b0. Если Ьо = 0, то H7[Q(c)] = 0 и (12) тривиально выполняется. Если Ьо =# 0, то H7[Q(c)] = 1, и, полагая Р(х) в теореме 1.1 равным (x + c)JVQ(x), получаем inun = N, так что (12) снова справедливо.
Теорема 1.3. Для любого многочлена Р(х') над GF^T^, любого ненулевого элемента с из GP(2r) и любых неотрицательных целых чисел п и N
W [Р (х) (х" + с)"] > Г [(х + с)"] 117 [Р (х) mod (х" + с)].(13)
Доказательство. Полагая Р(х) = Qt (xn) + xQ2(x") + ... ... + x"-1Q„(x"),-
получаем
п
117 [Р (х) (х" + С)"] = 2 г [Qi (х") (х" + с)"].(14)
г=1
Теперь, отождествляя хп в правой части (14) с х в теореме 1.2, будем иметь
п
г [Р (X) (х" 4- С)"] > 2 w [Q, (с)] • 117 [(х 4- с)"] =
1=1
аГ п*
= w [(X + с)"] • 2 im (6)1 = г [(х + е)Н • 117 2 xi-iQt (с) , i=iLz=i_
и условие (13) теперь легко получается, если заметить, что последняя сумма точно равна многочлену P(x)mod(xn + с). Теорема доказана.
Для того чтобы описать сверточные коды со скоростью R = 1/у» воспользуемся обозначениями, использованными Месси [6]. Последовательность io, /ь ^2, • • • информационных битов описывается с помощью ее D-преобразования
Z(D) = io + i1D + Z2D2+ ...
и сверточный код определяется многочленом
G (D) = Gt W + DG2 (£>”) + ... + D^G, W. (15)
(Составляющие многочлены Gj(D) теперь обычно называются «многочленами, порождающими код» для сверточного кода [5].) Если М — максимальная степень многочленов, порождающих код, то М называется памятью кода, а пА=(М + 1)и — ограничительной длиной. Закодированной последовательностью является после* довательность t0,tb t2,..., для которой D-преобразование задается равенством
T(D) = /(DV)G(D),
которое, конечно, является многочленом всегда, когда /(D)—многочлен.
Свободное расстояние dfTee сверточного кода определяется как минимум веса U7[T(D)], взятый по всем /(D) #=0. Говорят, что код является катастрофическим, или имеет катастрофическое распространение ошибки, если величина /(D), нс являющаяся многочленом, может привести к многочлену Тф) [7,8]. Известным необходимым и достаточным условием [7] того, что код с К = 1/v некатастрофический, является условие
НОД[С,(Д), G^D\ .... GO(D)] = 1, (17)
где НОД обозначает наибольший общий делитель и где предполагается (без существенной потери общности), что по меньшей мере один из многочленов, порождающих код, имеет ненулевой постоянный член. Было убедительно показано, что dfree представляет собой основной параметр вероятности ошибки при декодировании по методу максимального правдоподобия (Витерби) сверточных кодов [9] и при декодировании по методу «почти» максимального правдоподобия, подобном последовательному декодированию [10].
Используем теперь теорему 1.3 для построения двоичных сверточных кодов с большим dfree на основе двоичных циклических кодов. Далее здесь мы будем всегдй*обозначать через g(x) порождающий многочлен циклического кода, через dg— минимальное расстояние такого кода, через Цх) = (хп + l)/g(x) — дуальный многочлен, через dh— минимальное расстояние дуального кода и через п— длину как того, так и другого кода.
Теорема 3. Если g^ порождает циклический код над GF(2r) нечетной длины п, то для любого положительного целого m 2г-ич- ный сверточный код с R = 1/и, и = 2/п, определяемый с помощью G(D) = g(D), является некатастрофическим и имеет йц*^ ^ min ^dg, 2dh).
Доказательство. Так как п нечетное, то g(x) не имеет кратных корней. Но оо
G (О) = g(D) = S D^Gj(D2m) = 3 D’^G^D"^,(18)
где О)ф) обозначает многочлен, полученный из О^ф при замене каждого коэффициента на его корень квадратный; корень квадратный существует и является однозначным для каждого элемента GF(2r). Из (18) получаем, что любой неприводимый многочлен, который делит каждый многочлен, порождающий код, приводит к неприводимому делителю g(x) с кратностью по меньшей мере 2. Следовательно, НОД {Gt(О), G2(Z)),,,., GV(D)} = 1, так что сверточный код является некатастрофическим.
Для любого многочлена 1ф)=/= 0 имеем
F(£>) = /(D2m)G(D) = Z (Dm)g(^(19)
где снова коэффициенты 7(D) являются корнями квадратными коэффициентов 7(D). Из (19) теперь следует, что
F(D) = P(D)g(Z))2<+1A(/))2/,(20)
где i ^ 0, / ^ 0, a Рф)— ненулевой многочлен, который не делится ни на g(D), ни на Иф).
Предположим сначала, что i ^ /. Тогда из (20)
Тф^ — Рф^ф^-’^ф^ 1)2/,
что по теореме 1.3 приводит к
W\Т (£>)] > IT [(D + 1)2/] • W [Р ф) g ф)2u-,w mod (О" + 1)].
Первый сомножитель в правой части по меньшей мере равен 1; далее, Pф)gф)2(i-^ mod(Dn + 1) является ненулевым кодовым словом циклического кода, порождаемого g^x) и, таким образом, имеет хэмминговский вес, по меньшей мере равный dg, так что
WU\D^>dg.(21)
Предположим теперь, что I < /. Из (20) имеем
Т ф) = Р ф) h ф)2 ^^ фп + 1)2I+1,
что по теореме 1.3 приводит к
W [Г (D)] > [(D 4-1)2,+11 • W [Р ф) h (О)2 (,-Z)-1 mod фР + 1)].
Первый сомножитель в правой части по меньшей мере равен 2; аргумент второго сомножителя представляет собой ненулевое кодо-
Некоторые двоичные сверточные коды, полученные с помощью конструкции,приведенной в теореме 3
Использованный циклический код
R
пА
^free
КВ (7,4)-код dg = 3, dh = 4
ч2
4
>3
7»
4
>3
КВ (7,3)-код, dg = 4, dh~3
7г
6
>4
74
8
>4
БЧХ (15,8)-код, dg = 4, dh = 5
72
8
>4
74
8
>4
КВ (17,8)-код, dg = 6, dh = 5
72
10
>6
74
12
>6
БЧХ (15,5)-код, dg = 7, dh = 4
7=
12
>1
74
12
>1
КВ (23,12)-код dg = 7, dh = &
72
12
>1
74
12
>1
КВ (23,11)-код, dg = 8, dh = 7
72
14
>8
74
16
>8
БЧХ (31,10-код, dg=ll, dh = 6
72
22
>11
74
24
>11
КВ (47,24)-код dg = И, dh = 12
72
24
>11
74
24
>11
КВ (47,23)-код, dg = 12, dh = 11
72
26
>12
74
28
>12
БЧХ (63,30)-код dg = 13, dh > 8
72
34
>13
74
36
>13
БЧХ (63,24)-код dg = 15, dh ^ 8
72
74
40
40
>15
>15
КВ (79,40)-код, dg = 15, dh = 16
72
74
40
40
>15
>15
КВ (79,39)-код, dg=16, dA=15
72
74
42
44
>16
>16
КВ (89,44)-код, dg = 18, dh = 17
72
74
46
48
>18
>18
КВ (103,52)-код, dg=\9, dh = ^
72
74
52
52
>19
>19
КВ (103,51)-код, ^ = 20, <ZA = 19
7г
74
54
56
>20
>20
вое слово циклического кода, порожденного h^x\ и, таким образом, имеет хэмминговский вес, по крайней мере равный dh, так что
W\T^>2hh.(22)
Теперь утверждение теоремы следует из (21) и (22).
Необходимо заметить, что нижняя граница для dtree, задаваемая теоремой 3, не зависит от m и, следовательно, от скорости R сверточного кода, полученного из циклического кода. Поэтому граница будет наиболее точной при m = 1, т. е. при R = */2, так как действительное dtiee может лишь увеличиваться с увеличением пг. Наилучшие сверточные коды получаются при выборе циклического кода так, чтобы dg « 2d/,. В таблице 1 перечислены несколько двоичных (г = 1) сверточных кодов, полученных с помощью теоремы 3 как для R = V2, так и для R = ‘/4, и в ней указан тот циклический код, который использован при построении.
Следующая теорема указывает до некоторой степени менее очевидный способ построения сверточных кодов по циклическим кодам.
Теорема 4. Если g(x) порождает циклический код над GF(2r>) нечетной длины п, то для любого положительного целого пг сверточный 2г-ичный код со скоростью R = 1/v, и = 4m, определяемый с помощью G(D) = g(D)2 + Dh^Dy, является некатастрофическим и имеет dtiee ^ min {dg 4- dh, 3dg, 3dh}.
Доказательство. Отметим снова, что так как п нечетное, то g(x) не имеет кратных корней. Более того, согласно нашему выбору 6(D), в силу (15) получаем
2m2m
g (D)2 = 2 D2 u-° G2/_, (D4m) = 2 D2 u^G2!_x ОТ4,
где 6,(D) обозначает многочлен, полученный из 6,(D) при замене каждого коэффициента на его корень четвертой степени; корень четвертой степени существует и однозначен для каждого элемента GF ^2ГУ Следовательно, общий делитель для Gx (D), 63(D) • • .,6e-i(D) означал бы, что g(x) имеет некоторые корни кратности, большей 1. Отсюда получаем, что НОД {61(D), 63(D),..,, • • ■, Gy-x (D)} = 1 и, следовательно, НОД {б! (D), 62(D),..., ..., 6e(D)} = 1, так что сверточный код является некатастрофическим.
Для любого многочлена /(D) ^ 0 можно написать
Т (D) = 1 ^D4^ G (D) = / (о"1)4 [g (D)2 + Dh (D)2],
где коэффициенты в 7(D)—корни четвертой степени от коэффициентов в /(D). Теперь можно записать это в виде
Т (D) = Р (D) g (D)41 h (D)4' [g (D)2 + Dh (D)2I,
где P(D) — ненулевой многочлен, который не делится ни на g(D), ни на Л(^); отсюда следует, что
W [Г (D)] = W\^P (D) g (D)iW h (Z))4'] + Г [p (D) g (Df h (Z))4/+2J. (23)
Предположим вначале, что t > j ^ 0. Применяя теорему 1.3 ко второму члену правой части (23), получим
Г [? (D) g ^4и-п-2 фп + 1)4/+2] >
>rf(D+ 1)4/+2]. W\P^ g^^""1 mod (Z)n+ 1)].
Первый сомножитель правой части по меньшей мере равен 2, а второй сомножитель по меньшей мере равен dg, так как его аргументом является ненулевое кодовое слово циклического кода, порождаемого g^x). Поэтому второе выражение в правой части (23) по меньшей мере равно 2dg. Подобные же рассуждения показывают, что первое выражение по меньшей мере равно dg, так что
WVT<D^>3dg.(24)
Используя те же рассуждения, что и выше, при / > f ^ 0 имеем
WVTU^>3dh.- (25)
Наконец, предположим, что i = j^0. Применяя теорему 1.3 к первому члену правой части (23), получаем
Г[Р(Ди^)2^"+1)4']>
> Г [(D + I)4'] • W [Р (О) g (Df mod (Dn + 1)] > dg.
Подобные рассуждения показывают, что второй член правой части (23) ограничен снизу величиной d^ так что будем иметь
WVT(D^>dg + dh.(26)
Утверждение теоремы теперь следует из (24), (25) и (26)*.
Отметим вновь, что нижняя граница для ^гее, которая приведена в теореме 4, не зависит от m и, следовательно, от скорости R сверточного кода, полученного из циклического кода. Поэтому граница будет наиболее точной при m = 1, т. е. для R = х^. Наилучшие сверточные коды получаются при выборе циклического кода так, что dg ^ йн. В таблице 2 приведено несколько двоичных (т. е. с г — 1) сверточных кодов, полученных с помощью теоремы 4 для R = ^4, и указан тот циклический код, который использован при построении. Сравнение таблиц 1 и 2 показывает, что коды с R = 741 полученные с помощью теоремы 4, часто оказываются лучше кодов с R = 74, полученных с помощью теоремы 3 (или по крайней мере граница снизу для dtree будет больше).
Таблица 2
Некоторые двоичные сверточные коды, полученные с помощью конструкции,приведенной в теореме 4
Использованный циклический кодИспользованный циклический кодкв (7,3)-код, ^ = 4, 4 = 3КВ (17,8)-код, dg = 6, dk = 5КВ (23,11)-код, dg = ^ dH = 7 КВ (41,20)-код, dg =10, dn = ^ КВ (47,23)-код, dg= 12, dk= 11 БЧХ (63,30)-код, 4=13, dh>S КВ (79,39)-код, '4=16, 4=15 КВ (89,44)-код, dg= 18, dh = 17КВ (103,51)-код, dg = 20) dn = \$кв (7,3)-код, ^ = 4, 4 = 3КВ (17,8)-код, dg = 6, dk = 5КВ (23,11)-код, dg = ^ dH = 7 КВ (41,20)-код, dg =10, dn = ^ КВ (47,23)-код, dg= 12, dk= 11 БЧХ (63,30)-код, 4=13, dh>S КВ (79,39)-код, '4=16, 4=15 КВ (89,44)-код, dg= 18, dh = 17КВ (103,51)-код, dg = 20) dn = \$R. пА^freeЧа12>7ч420>117»28> 15Ча44> 19Ча52>23Ча68>21Ча84>31Ча92>35Ча108>39R. пА^freeЧа12>7ч420>117»28> 15Ча44> 19Ча52>23Ча68>21Ча84>31Ча92>35Ча108>39
Использованный циклический код
Использованный циклический код
кв (7,3)-код, ^ = 4, 4 = 3
КВ (17,8)-код, dg = 6, dk = 5
КВ (23,11)-код, dg = ^ dH = 7 КВ (41,20)-код, dg =10, dn = ^ КВ (47,23)-код, dg= 12, dk= 11 БЧХ (63,30)-код, 4=13, dh>S КВ (79,39)-код, '4=16, 4=15 КВ (89,44)-код, dg= 18, dh = 17
КВ (103,51)-код, dg = 20) dn = \$
кв (7,3)-код, ^ = 4, 4 = 3
КВ (17,8)-код, dg = 6, dk = 5
КВ (23,11)-код, dg = ^ dH = 7 КВ (41,20)-код, dg =10, dn = ^ КВ (47,23)-код, dg= 12, dk= 11 БЧХ (63,30)-код, 4=13, dh>S КВ (79,39)-код, '4=16, 4=15 КВ (89,44)-код, dg= 18, dh = 17
КВ (103,51)-код, dg = 20) dn = \$
R
. пА
^free
Ча
12
>7
ч4
20
>11
7»
28
> 15
Ча
44
> 19
Ча
52
>23
Ча
68
>21
Ча
84
>31
Ча
92
>35
Ча
108
>39
R
. пА
^free
Ча
12
>7
ч4
20
>11
7»
28
> 15
Ча
44
> 19
Ча
52
>23
Ча
68
>21
Ча
84
>31
Ча
92
>35
Ча
108
>39
Для того чтобы понять, насколько хороши сверточные коды, полученные с помощью указанных выше конструкций, код из таблицы 1 с па = 40 и R = ХЬ был сравнен с «дополнительным» кодом Бола — Джелинека [11] с пА = 40 и R = 7г, а также с быстро просматриваемым кодом Месси — Кастелло с па = 40 и R = 7г [10] при использовании алгоритма Фано [12] последовательного декодирования в моделированных двоичных симметричных каналах и каналах с аддитивным белым гауссовским шумом. В результате обширного моделирования в случае, когда вычислительная скорость /?сотр в канале была близка к кодовой скорости 7г, было установлено, что код таблицы 1 был несколько хуже с точки зрения вероятности необнаруживаемой ошибки по отношению к коду Бола — Джелинека, но был значительно лучше кода Месси — Кастелло. По вероятности стирания код таблицы 1 был хуже кода Месси — Кастелло, но лучше кода Бола--Джелинека. При этом представляется разумным считать, что коды, полученные с помощью теорем 3 и 4, будут конкурентноспособными по отношению к лучшим известным кодам, построенным на основании других конструкций. .
Очевидно, что общий характер теоремы 1.3 допускает построение многих новых классов сверточных кодов путем смешивания g(x) и h(x) из нескольких кодов и т. д. Мы предоставляем сделать такие обобщения читателю. Следует также заметить, что в двоичном (г = 1) частном случае при R = 7г теорема 1.3 была независимо доказана Рудольфом и Микзо [13] с помощью совершенно других рассужденцщ
Д. Построение двоичных сверточных кодов с помощью кодов Рида — Соломона
Выбирая g^ в теореме 3 (или в теореме 4) так, чтобы они были порождающими многочленами 2г-ичного кода Рида — Соломона (PC) [2, стр. 318], мы можем построить некоторые удивительно хорошие двоичные сверточные коды с очень большими ограничительными длинами. Для того чтобы получить двоичные коды, каждый символ PC-кода представляется в виде двоичной г-после- довательности так, что 2г-ичный сверточный код ^R = V2) с одним информационным символом и двумя кодовыми символами в подблоке преобразуется в двоичный код ^R = V2) с г информационными битами и 2г кодовыми битами в подблоке. Ограничительная длина пАъ двоичного кода равна умноженной на г ограничительной длине пА 2г-ичного кода.
Для PC (п = 2Г — 1, й)-кода dg = п — k + 1 dh = к + 1. Таким образом, наилучшая граница для dfree в теореме 3 получается при выборе ^ = L^/3 J, где L • J обозначает целую часть внутреннего выражения. При таком выборе получаем
^free ^ L (2^ + 4)/3 J и
( г (п — ^+1), п— к нечетное, ^л6 I г (п —- А + 2), п — к четное, так что
Мпаь^Мг.(27)
Неравенство (27) при г= 10 показывает, что свободное расстояние этих двоичных кодов все еще остается по меньшей мере в пределах 10% от ограничительной длины при пАь « 7000.
Еще лучшие коды могут быть получены с помощью добавления одного проверочного символа к r-последовательности, которая используется для представления символов GF^.TY В этом случае двоичный код все еще имеет лишь г информационных битов на подблок, но длина подблока увеличивается до 2 (г + 1), и поэтому скорость двоичного кода снижается до
Я-Т7ТГ=<28>
эта величина стремится к V2 с ростом г. Так как имеются по меньшей мере два ненулевых бита в каждом ненулевом символе GE(2r) в этом новом представлении двоичного кода, имеем
dfree>2L(2n + 4)/3J,а такжеf (г + 1) (^ — ^ + 1), п — к нечетное,^ I (г + 1) (« — £ + 2), п — k четное,
4ееК^2/(г+1). (29)
Неравенство (29) при г = 19 и, следовательно, при R, довольно близком к 72, показывает, что свободное расстояние этих двоичных кодов все еще находится в пределах по меньшей мере 10% ограничительной длины при пАь ~ 6 700 000.
Наиболее сильная из известных нижних границ для dfree для двоичных сверточных кодов была получена Нейманом [14], но существует улучшенная нижняя граница, принадлежащая Кастелло [15] для сверточных кодов, меняющихся со временем. При R = 7г эти нижние границы для dt^lnA дают 0,22 и 0,40 соответственно для больших пА. Нижняя граница для dtrednAb для второго класса кодов, рассмотренных в этом параграфе, остается выше этих величин при nAb ^ 900 и nAb*C 100 соответственно.
НЕДВОИЧНЫЙ СЛУЧАЙ
В дальнейшем будем обозначать через р простое число, большее чем 2, через с ненулевой элемент GF(pr), через п длину рг-ичного блокового кода, через к число информационных символов и через d минимальное расстояние рассматриваемого кода.
Новый класс рт-ичных констациклических кодов с кратными корнями, имеющих алгебраический алгоритм декодирования
Следуя терминологии Берлекэмпа [2, стр. 310], будем говорить, что многочлен g(x) над GF(pr) степени п — k, который делит хп— ср, порождает констациклический (м, ^)-код, все кодовые слова которого делятся на g\x^ и имеют степень, меньшую чем п. Код является циклическим тогда и только тогда, когда с= 1, и негациклическим [2, стр. 220] тогда и только тогда, когда с = — 1. Следующая теорема дает новый класс констациклических кодов с кратными корнями и в ее доказательстве будет развит алгебраический алгоритм декодирования этих кодов. Циклические коды в этом классе ранее были получены Ассмусом и Мэттсоном [16] и Берманом [17].
Теорема 5. Многочлен g (х) = (х — с) p~h при 1 ^ к < р порождает рг-ичный констациклический (п = р,кукод с d = n—k-^i (т.е. код с достижимым максимальным расстоянием [2, стр. 317]).
Доказательство. Заметим вначале, что (х — с)р=хр—-ср, так что g^ является делителем хр —- ср и поэтому порождает констациклический код длины п = р. Более того, по лемме 1 ^Ъ?(х)] = р — k-\-l = n — к-^Х, так что d п — к + 1.
Пусть Цх)—кодовое слово этого констациклического кода, и пусть е(х) = е0 + е\Х + .., + ер-хХР~х обозначает ошибку в канале.
То же доказательство, что и при выводе формулы (11), теперь показывает, что после того как f(x)4-e(x) будет, записано в схеме, представленной на рис. 2, с членами более высокого порядка вначале, результирующий синдром будет задаваться равенством
s (х) = е (х + с) mod ^хр~к\(30а)
или, что эквивалентно,
р-1
$ (я) = 2 (я + сУ mod (хр~к\(306)
/=о
Рис. 2. Схема, формирующая синдром для рг-ичных констациклических кодов с кратными корнями из теоремы 5.Рис. 2. Схема, формирующая синдром для рг-ичных констациклических кодов с кратными корнями из теоремы 5.1 — сумматор GF (рт), 2 — константный мультипликатор.1 — сумматор GF (рт), 2 — константный мультипликатор.
Рис. 2. Схема, формирующая синдром для рг-ичных констациклических кодов с кратными корнями из теоремы 5.
Рис. 2. Схема, формирующая синдром для рг-ичных констациклических кодов с кратными корнями из теоремы 5.
1 — сумматор GF (рт), 2 — константный мультипликатор.
1 — сумматор GF (рт), 2 — константный мультипликатор.
Из (306) видно, что синдром s(х) = $0 + s^ + ... + sp_k_xxp~k~x может быть выражен в виде
С^^у,С^^у,O^Z < р— А,O^Z < р— А,(31а)(31а)
С^^у,
С^^у,
O^Z < р— А,
O^Z < р— А,
(31а)
(31а)
или, что эквивалентно,
(316)(316)st — (<0 * ^е (с)> 0 ^ I < р — к.
(316)
(316)
где через д’е(с) обозначена t-я формальная производная е(х) в точке х = с.
Определим теперь модифицированные символы синдрома
So, Si, . ^., Sp-6-i как следующие линейные комбинации;
^-УВЬ/О^,(32)
So= so>(33)
где |* | обозначает число Стирлинга второго рода [19]. Из (31а) и (32) получаем
ip-1.,
Si = 25cm(/0 mp/, i<i<p-k, •/=1 m=0\ 1 /
так что можно записать
S; = 5 5 <с^, 0 < I < р — к.(34)
/=о 1
где следует понимать, что 0° — 1.
Предположим, что ошибка е(х) имеет вес t, так что ее можно записать в виде
е (х) = 2 Y, (x/c)li,
Z=1
где Yj ф 0 является «модифицированным» значением j-й ошибки (оно связано с истинным значением ошибки е^ соотношением e^ = Yic"*li^. Если определить Х5 = Ц как локатор j-й ошибки, то равенство (34) можно теперь переписать в виде
t
S^^ViX1,, 0<i<p — k,(35)
7=1
Но (35) как раз представляет собой обычное синдромное соотношение для БЧХ-кода с конструктивным расстоянием [2, стр. 282] р — k + 1, которое означает, что d ^ р — к + 1.
Отсюда получаем, что d = р — к + \, что доказывает теорему.
Более того, из (35) следует, что значения ошибок и их локаторы для констациклических кодов из теоремы 5 могут быть определены с помощью любой процедуры декодирования для БЧХ-ко- дов, такой, как, например, итеративный алгоритм Берлекэмпа [2, стр. 227—229]. В частности, когда р— мерсеновское простое число, т. е. когда р = 2т—1 для некоторого целого т, так что операции GF(p) просто являются арифметикой «дополнения единицы», процедура декодирования для р-ичных кодов легко реализуется, в особенности когда с = 1 (циклические коды) или когда с = — 1 (не- гациклические коды), и формирователь синдрома на рис. 2 очень прост. Эти коды могут найти практическое применение в каскадных схемах кодирования [19].
Далее отметим, что параметры п, к и d констациклических кодов из теоремы 5 совпадают с параметрами удлиненных [2, стр. 338] р-ичных кодов Рида — Соломона, а при с=1 как раз являются перестановками этих кодов. Интересное отличие состоит в том, что коды с кратными корнями позволяют использовать числа 0,1,...,
... ,р — 1 в качестве локаторов ошибок, в то время как в РС-кодах локаторы ошибок берутся в виде 0 и степеней а0, а,..., ар-2 примитивного элемента а поля GF(p). Использование аддитивной группы поля GF(p) вместо мультипликативной группы в качестве локаторов ошибок приводит как к естественному включению нулевой позиции, так и к уменьшению числа умножений, которые требуются для декодирования с помощью итеративного алгоритма.
Б. Свойство сохранения веса (х — су над GF(pr)
Отмстим еще раз, что многочлены (х — ср, i = 0,1,2,..., образуют базис векторного пространства всех многочленов над GF(pry Теперь мы хотим показать, что свойство сохранения веса, сформулированное в теореме 1.1 для р = 2, имеет место в общем случае. Мы считаем более удобным доказать вначале р-ичный аналог теоремы 1.2 и после этого вывести р-ичный аналог теоремы 1.1.
Теорема 6.2. Для любого многочлена Q(x) над GF^pry любого ненулевого с из GF(pr) и любого неотрицательного целого N имеет место соотношение
W [Q (х) (х - с)"] > W [(х - сУЧ • W [Q [с)]. (36)
Доказательство. В дальнейшем мы часто будем использовать тот факт, что для любого I и для любого многочлена Р^х) справедливо 117 [^(х)]^ №[Р(х)то(1(х* — с)].
Покажем вначале, что (36) справедливо для N < р. Если Q(c) = O, то (36) тривиально справедливо. Если Q(c)=#O, то Q(x) не делится на (х — с), так что Q (х) (х — с)N mod (х? — ср) является ненулевым кодовым словом констациклического кода, порождаемого g(x) = (х — c)N, и поэтому по теореме 5 имеет хэмминговский вес, по меньшей мере равный ^+ 1. Таким образом,
117 [Q (х) (х — сН > 117 [Q (х) (х — c)N mod (хр — ср)] >
>N+ 1 = Г[(х — с)"],
где последнее неравенство следует из леммы I. Поэтому (36) справедливо для N < р.
Предположим теперь, что (36) справедливо для N < Кр\ 1 ^ К < р и проведем индукцию по К, которая также содержит в себе индукцию по I, так как (К + ^Р1 = Р^> когда К = р — 1. Уже было показано, что (36) справедливо для / = 0, так что был установлен базис индукции. Остается показать, что (36) справедливо для N < (К + I)pi или, что эквивалентно, для N = Кр1 + L при всех целых Lt таких, что 0 ^ L < р1.
Начнем с того замечания, что
W [Q (х) (х — с)"] = W [Q (х) (X - c\L (х — C)^Z1 = = rfQ(x)(x-c)4xpZ-c₽yj. (37) Теперь, записывая pz-l
Р (х) = Q (х) (х — с)£ = s XJP, (хр ),(38)
/=0'
из (37) получаем pZ~l,
H7[Qto(x-c)"] = 2 117[Р/(х)(х —ср)к], (39) где просто была произведена замена хр‘ на х из формулы (38). Так как К < р, то (36) справедливо для каждого слагаемого в правой части (39), и по лемме 1 получаем pz-i , ttZ[Q(x)(x-C)w]>(7(+1) 2 r[Pz(cp)L /-о4
что с помощью (38) можно записать виде
117[Q(х)(х — с)"] >(К + 1) Г [Q(х)(х — с^mod(xpZ — cp‘)L (40)
Теперь также имеем
Q (х) (х — c)L mod (xpl — cpl^ = Q (x) (x — c)L mod (x — cyl = = [Q (x) mod (x — c)p “L] (x — of. (41)
Ho L<pl, так что (36) можно применить к правой части (41), чтобы получить
U7 [Q (х) (х — с)1 mod (xpi — </)] > W [(x — c)4 • W [Q (c)]J здесь было использовано то, что Q(x)mod(x— c)L, вычисленное при х = с, в точности равно Q(c). Из (40), (41) и (42) получаем
W [Q (х) (х - с)"] >^ + 1) F [(х - c)q • W [Q (с)],
что с помощью леммы 1 и того, что L < Кр1 и N = Кр' + L, можно, наконец, записать в виде
Г [Q (х) (х — с)"] > Г [(х — с)"] • 117 [Q (с)], что совпадает с (36); теорема доказана.
Теперь мы приведем как тривиальное следствие теоремы 6.2 следующую теорему.
Теорема 6.1. Пусть I является каким-либо непустым конечным множеством неотрицательных целых чисел, среди которых наименьшим является tmin, и пусть
р^ = 2 ь^х—сУ,lei
где с и каждое bt являются ненулевыми элементами GF(pr). Тогда Г[Р(х)]>Г[(х — c/minL(43)
Эта теорема следует из теоремы 6.2, если заметить, что
P(x) = Q(x)(x —c/mln, где Q (с) = 6imin 0.
Теорема 6.1 представляет собой требуемый р-ичный аналог теоремы 1.1. Несмотря на то что в дальнейшем мы не используем этого, для полноты мы сформулируем сейчас р-ичный аналог теоремы 1.3, который следует из теоремы 6.2 в точности так же, как теорема 1.3 следует из теоремы 1.1.
Теорема 6.3. Для любого многочлена Р(х) над GF(pr), любого ненулевого элемента с поля GF(pr) и любых неотрицательных целых п и N справедливо
117 ^Р (х) (хп — с)^] > Г [(х — сУЧ • W [Р (х) mod (хп — с)].
Новый класс р-ичных кодов Рида — Маллера
Поступая аналогично тому, как в разд. II. Б, обозначим через m произвольное целое положительное число и рассмотрим матрицу G с п = рт столбцами, строки которой представляют собой последовательности коэффициентов многочленов (х — су при всех i < п, таких, что W^x — cyX^d, где d—некоторое целое, которое выбирается так, что равенство имеет место для по меньшей мере одного такого L При заданных п и d значения к, соответствующие целым I, могут быть найдены с помощью леммы 1. Для простоты обычно можно брать с = 1 или с = — 1, но это не является необходимым. Из теоремы 6.1 сразу же следует, что G — порождающая матрица р-ичного ^п = рт, 6)-кода с минимальным расстоянием d. Будем называть эти коды р-ичными кодами Рида — Маллера в силу их сходства с двоичными кодами Рида — Маллера, описанными так, как в разд. II. Б. Краткий перечень этих кодов приведен в табл. 3.
Коды в табл. 3 в большинстве случаев имеют те же самые параметры п, к и d, что и обобщенные р-ичные коды Рида — Маллера, описанные Казами и др. [20] (которые далее мы будем называть КЛП-кодами), всегда, когда более редкие КЛП-коды существуют;
Таблица 3
Краткий перечень р-ичных кодов Рида — Маллера из нового класса,приведенного в разд. III. В
ррппккddРРппккdd339999927272727272727272799999272727272727272727864386432623201726232017107411074123, 46923468912182723, 469234689121827555555252525252525252525252525255555252525252525252525252525254324322422201715131110864312422201715131110864312345234568910121516202523452345689101215162025
р
р
п
п
к
к
d
d
Р
Р
п
п
к
к
d
d
3
3
9
9
9
9
9
27
27
27
27
27
27
27
27
27
9
9
9
9
9
27
27
27
27
27
27
27
27
27
8
6
4
3
8
6
4
3
26
23
20
17
26
23
20
17
10
7
4
1
10
7
4
1
2
3
, 4
6
9
2
3
4
6
8
9
12
18
27
2
3
, 4
6
9
2
3
4
6
8
9
12
18
27
5
5
5
5
5
5
25
25
25
25
25
25
25
25
25
25
25
25
25
5
5
5
5
25
25
25
25
25
25
25
25
25
25
25
25
25
4
3
2
4
3
2
24
22
20
17
15
13
11
10
8
6
4
3
1
24
22
20
17
15
13
11
10
8
6
4
3
1
2
3
4
5
2
3
4
5
6
8
9
10
12
15
16
20
25
2
3
4
5
2
3
4
5
6
8
9
10
12
15
16
20
25
т. е. коды табл. 3 в общем имеют при том же самом к увеличенные на единицу параметры п и d по сравнению с соответствующими величинами для КЛП-кодов. Однако 5-ичный (25,15)-код из табл. 3 имеет d = 6, в то время как d равно лишь 4 у 5-ичного (24, 15) КЛП-кода, так что р-ичные коды Рида — Маллера, представленные здесь, нс являются просто перестановками (более редких) КЛП- кодов.
Отметим также, что можно получить констацикличсские подкоды с кратными корнями р-ичных кодов Рида — Маллера, определенных здесь, которые аналогичны циклическим кодам из разд. II. В. Порождающий многочлен констациклического кода выбирается в виде g(x) = (х— с)п-\ где к = р1^-^ — 1. Эти кон- стациклические подкоды имеют то же самое минимальное расстояние d = 2pu-1, что и порождающие их р-ичные коды Рида —Маллера. Констациклический код является циклическим тогда и только тогда, когда' с = 1, и является негациклическим тогда и только тогда, когда с = —1.
ЗАКЛЮЧИТЕЛЬНЫЕ ЗАМЕЧАНИЯ
Выше было показано, что свойства сохранения веса многочленов (х — су допускают их использование при построении как блоковых, так и сверточных кодов. Эта общность до некоторой степени
удивительна и представляется возможным утверждать, что в этой статье были обнаружены нс все следствия свойства сохранения веса.
Нам хочется отмстить, что получение вторым автором этой статьи двоичных кодов из теоремы 3 с R = V2 было отправным пунктом для проведенного здесь исследования. Двоичные сверточные коды из теоремы 3 для m = 2г’ и из теоремы 4 для m = 1 ранее были отмечены в устном сообщении первых двух авторов этой статьи [21]. В первоначальном варианте этой статьи результаты были получены лишь для простых полей GF(p), а не для GF(pr), как представлено здесь. Наиболее значительным следствием этого обобщения было последующее обнаружение Юстессном сверточных кодов большой ограничительной длины, представленных в разд. II. Д.
Авторы признательны доктору Г. Д. Форни за проявленный им интерес к нашему исследованию и за предложенное им простое доказательство леммы 1. (Другое доказательство леммы 1 можно найти у Бермана [17].)
СПИСОК ЛИТЕРАТУРЫ
Preparata F. Р., State-logic relations for autonomous sequential networks, IEEE Trans. Electron. Comput., EC-13, 542—548, Oct., 1964.
Berlekamp E. R., Algebraic Coding Theory, New York, Me Graw-Hill, 1968. (Русский перевод: Берлекэмп Э., Алгебраическая теория кодирования, «Мир», М, 1974.)
Reed I. S., A class of multiple-error-correcting codes and the decoding scheme, IRE Trans. Inform. Theory, PGIT-4, 38—49, Sept. 1954..
Meggitt J. E., Error correcting codes and their implementation for data transmission systems, IRE Trans. Inform. Theory, IT-7, 234—244, Oct. 1961.
Massey J. L., Threshold Decoding, Cambridge, Mass., M. I. T. Press, 1963.
Massey J. L., Majority decoding of convolutional codes, Res. Lab. Electron. Mass. Inst. Technol., Cambridge, Quart. Prog. Rep., 64, 183—188, Jan. 15, 1962.
Massey J. L., Sain M. K., Inverses of linear sequential circuits, IEEE Trans. Comput., C-17, 330—337, Apr. 1968.
Forney Q. D., Jr., Convolutional codes I: Algebraic structure, IEEE Trans. Inform. Theory, IT-16, 720—738, Nov. 1970.
Viterbi A. J., Convolutional codes and their performance in communication systems, IEEE Trans. Commun. Technol., COM-19, 751—772, Oct. 1971.
Massey J. L., Costello D. J., Jr., Nonsystematic convolutional codes for sequential decoding in space applications, IEEE Trans. Commun. Technol., COM-19, 806—813, Oct. 1971.
Bahl L. R., Jelinek F., Rate V2 convolutional codes with complementary generators, IEEE Trans. Inform. Theory, IT-17, 718—727, Nov. 1971.
Fano R. M., A heuristic discussion of probabilistic decoding, IEEE Trans. Inform. Theory, IT-9, 64—74, Apr. 1963.
Rudolph L. D., Miczo A., Some results on the distance properties of convolutional codes, Syracuse Univ., Syracuse, N. Y., Final Rep. NSF Grant GK-4737, Oct. 1970.
Neumann В., Distance properties of convolutional codes, S. M. thesis, Dep. Elec. Eng., Mass. Inst. Technol., Cambridge, Aug. 1968.
Costello D. J., Jr., Construction of convolutional codes for sequential decoding, Dep. Elec. Eng., Univ. Notre Dame, Notre Dame, Ind., Tech. Rep. EE-692, Aug. 1969.
Assmus E. F., Jr., Mattson H. F., Jr., New 5-designs, J. Combinatorial Theory, 6, 122—151, 1969.
Берман С. Д., К теории групповых кодов, Кибернетика, 3, № 1, 31—39, 1967.
Riordan J., An Introduction to Combinatorial Analysis, New York, Wiley, 33, 1958.
Forney G. D., Jr., Concatenated Codes, Cambridge, Mass., M. I. T. Press, 1966.
Kasami T., Lin S., Peterson W. W., New generalizations of the Reed-Muller codes, IEEE Trans. Inform. Theory, IT-14, 189—198, Jan. 1968.
Costello D. J., Massey J. L., Constructing good convolutional codes from cyclic block codes, presented at IEEE Int. Symp. Information Theory, Asilomar, Calif., Jan. 1972,
Новые конструкции сверточных кодови класс асимптотически хороших кодов,меняющихся со временем °
Йёрн Юстесен
ВВЕДЕНИЕ
Эча статья содержит ряд уточнений и обобщений результатов, относящихся к связи между циклическими кодами и сверточными кодами, полученных ранее Месси и др. [1].
В разд. 2 выведена нижняя граница для свободного расстояния некоторых сверточных кодов, полученных из циклических кодов. Эта граница дастся в терминах минимального расстояния циклического кода и корней порождающего многочлена.
В разд. 3 посторены сверточные коды, аналогичные блоковым кодам Рида — Соломона, а в разд. 4 показано, что, если ограничить эти коды, рассматривая их над подполями, то получаются хорошие сверточные коды, тесно связанные с блоковыми БЧХ-кодами.
Наконец, с помощью метода, очень похожего на тот, который использовался ранее Юстсссном [2] для получения асимптотически хороших блоковых кодов из кодов Рида — Соломона, построены асимптотически хорошие периодически меняющиеся со временем сверточные коды на основе сверточных кодов из разд. 3.
НИЖНЯЯ ГРАНИЦА ДЛЯ СВОБОДНОГО РАССТОЯНИЯНЕКОТОРЫХ СВЕРТОЧНЫХ КОДОВ
Мы широко будем использовать следующую теорему, которая была доказана Месси и др. [1].
Теорема 1. Для любого многочлена Р(х) над GF^pry любого ненулевого элемента с из GF(pr) и любых неотрицательных целых чисел п и N справедливо неравенство
W [Р (х) (х” — сЛ > Г [(х — сУЧ W [Р (х) mod (хп — с)].
Здесь №[Р(х)] обозначает хэмминговский вес многочлена Р(х), а через P(x)modQ(x) обозначается остаток при делении Р(х) на многочлен Q(x).
Мы опишем некоторый класс фиксированных несистематических сверточных кодов со скоростью x/v, используя следующие обозначения, обобщающие обозначения Месси [3].
9 Justesen J., New convolutional code constructions and a class of asymptotically good time-varying codes, IEEE Trans. Inform. Theory, IT-19, № 2, 220—₽ 225, (March, 1973).
Информационная последовательность с нулями, помещенными на проверочных позициях, имеет ^-преобразование
/ (D) = ^цО+цП2 + ... + Z2_1OX-1 + i^ + ... = £ О1"'!, W. i=x
В этой работе сверточный код определяется с помощью одного- единственного порождающего многочлена G(x), и £)-преобразова- ние закодированной последовательности может быть записано в виде Тф) = ЦО)Офу*
Определим ограничительную длину кода как пА = степень (G) + 1. Таким образом, ограничительная длина равна числу кодовых символов, на которые влияет один информационный символ.
В общем случае фиксированный сверточный код со скоростью x/v определяется порождающей матрицей вида [4]
' Оц(О) 012(Д) ... G1V(P) '
g — 02i (О) G22(D) ... G2v (Z))
G^W Gx2(Z)) ... G^D),
Рассматриваемый здесь подкласс имеет порождающие матрицы
GJD)G2(Z))...Gv(O)'
DG^D)G^D)...G^D)
t DG^„y^^D^DG^-xis (D)...Gv_x+1 (O)j
Этот класс сверточных кодов достаточно широк для того, Чтобы допустить доказательство нижней границы Гильберта для минимального расстояния с помощью следующих стандартных рассуждений [5].
Рассмотрим усеченную кодовую последовательность Тт длины тч, начинающуюся ненулевым символом, и последовательность mz информационных символов Дп, также имеющую ненулевой символ, на первой позиции. (Напомним, что минимальное расстояние по определению равно минимальному весу среди весов всевозможных таких Тт.) Тогда легко заметить, что существует ровно один код в классе с ограничительной длиной пА^т^ который производит кодовую последовательность, первые mv символов которой дают Тт в качестве реакции на информационную последовательность, первые тх символов которой равны 1т. Следовательно, по меньшей мере один код над GF(q) с ограничительной длиной, меньшей чем /nv, имеет минимальное расстояние dG. удовлетворяющее
/ /77V \.
(1)
Сверточный код называется катастрофическим [6], если функция /(/)), не являющаяся многочленом, может привести к многочлену т^ [4].
Свободное расстояние dfree сверточного кода равно минимуму ^[^(^)], взятому по всем /(Z))#=0. Для некатастрофических кодов dfree может быть взята как минимум №|T(Z))] по всем многочленам /(/))#= 0. Очевидно, что граница Гильберта (1) является нижней границей как для свободного расстояния, так и для минимального расстояния.
Мы изучим сверточные коды, порождаемые порождающими многочленами g(x) циклических кодов. Будем обозначать через Л(х) = (хп— ^IsW порождающий многочлен циклического дуального кода; через dg минимальное расстояние исходного циклического кода; через dh минимальное расстояние дуального кода и через п длину обоих этих циклических кодов.
В [1] получен следующий результат.
Теорема 2. Если g(x) порождает циклический код над GF(2r) нечетной длины п, то для любого положительного целого m 2г-ичный сверточный код со скоростью R = 1/у и с у = 2m, определяемый с помощью G(D) = g(D), является некатастрофическим и имеет dtTee ^ min ^dg, 2dhY
В разд. 3 будет дано обобщение этой теоремы на поля нечетной характеристики.
В силу того, что дуальные коды многих хороших циклических кодов, например БЧХ-кодов, имеют малые минимальные расстояния, желательно получить границу для свободного расстояния, которая зависит только от dg. Следующее определение будет полезно при выводе такой границы.
Определение. Пусть р— простое число, п— целое число, взаимнопростое с р, и у— целое число, которое является делителем п. Отношение.
а = р тогда и только тогда, когда av = 0v представляет собой отношение эквивалентности среди корней п-й степени из единицы в GF(prs). Будем говорить, что у эквивалентных корней п-й степени из единицы образуют у-класс или что они у-эквивалентны.
Если р является первообразным корнем п-й степени из единицы, то у = Pn/V и a является корнем п-й степени из единицы; у-класс, который содержит а, представляет собой {a, ay, ay2, ... ..., ayv-1}.
Определение сверточного кода, введенного в этом разделе, делает возможным получение естественным образом сверточных кодов со скоростью х/у, х ^ 1, из циклических кодов.
Теорема 3. Если g*(x) порождает циклический код над GF(pr) с длиной п, простой по отношению к р, v является произвольным положительным целым делителем п и g^ имеет самое большее v — х ^-эквивалентных корней, то сверточный код со скоростью R = xh над GF(pr), порождаемый G ^ = g (х), является некатастрофическим и имеет свободное расстояние dfYee ^ dg.
Доказательство будет основано на следующей лемме.
Лемма 1. Если х или более ^-эквивалентных корней п-й степени из единицы являются корнями многочлена вида
к
Р(^=^ х^РЛх^,
-/=1
то все элементы ^-класса являются корнями Р (х).
Доказательство. Пусть а — корень Р(х), т. е.
Рх (а^ + аР2 W + • • • +(«v) = 0.(2)
Составляющие многочлены Pj (xv) принимают те же самые значения на всех v-эквивалентных значениях х, и, следовательно, можно интерпретировать (2) как уравнение
Pv + zP, + z^ + ... + г^Рч = 0.(3)
Если какое-либо Pj не равно нулю, то (3) имеет самое большее х—1 решений относительно z. Многочлен, который имеет х или более v-эквивалентных корней, может делить Р(х) только тогда, когда Pj^a,^ = 0 для всех /. Но в этом случае все элементы v-класса являются корнями многочлена Р(х).
Доказательство теоремы 3. Чтобы показать, что сверточный код, порождаемый g*(x), является некатастрофическим, мы должны доказать, что информационная последовательность, не представляющая собой многочлен, не может дать многочлен на выходе.
Заметим, что наименьший общий делитель для Q,(Z)V) является многочленом от Dv; обозначим его через Q(P^. Таким образом,
/ (D) = [1/Q (Dv)] 5 D^Rj (D^ = R U^JQ (Z)v).
/=i
Можно предположить, что любые общие делители для R(D) и Q(SV), которые являются многочленами от £>v, были сокращены, но они могут иметь другие общие делители. Для того чтобы выход
Тф) = Gф)1ф) представлял собой многочлен, все делители QФ^) должны быть делителями либо Оф), либо Кф). Но если Р — корень для Qф^)1 то все элементы v-класса, содержащего р, являются корнями. Однако мы предположили, что самое большее v — х этих элементов являются корнями для Оф), и, следовательно, по меньшей мере х элементов должны быть корнями для Яф), чтобы функция 1ф), не являющаяся многочленом, приводила к многочлену Тф). Здесь можно использовать лемму 1, чтобы показать, что это возможно только тогда, когда все элементы v-класса являются корнями для Яф), что противоречит предположению, что Яф) и ()ф^) не имеют многочленов от D^ в качестве общих делителей.
Для того чтобы ограничить свободное расстояние сверточного кода, заметим вначале, что так как v является делителем п, то фп —- 1){— многочлен от D\
Следовательно, 1ф)/фп—1у— многочлен того же самого вида, что и 1ф) при любом 1, таком, что фп — 1)* является делителем 1ф).
Так как мы предположили, что g(x) имеет самое большее v — х v-эквивалентных корней и так как все корни n-й степени из единицы являются корнями хп + 1 = g^x)h^x), то отсюда следует, что по меньшей мере х элементов каждого v-класса являются корнями кф. Поэтому лемма 1 показывает, что кф) является делителем Iф) только тогда, когда (Z)n--1) является делителем 1ф). Повторяя это рассуждение, получим, что 1ф) = = фп — [^рф), где кф) не является делителем рф). Следовательно, с помощью теоремы 1 получаем
W [Тф)]>№[ф- 1)^] Г [р ф) gф) mod фп - 1)] > dg.
Это завершает доказательство теоремы 3.
Условие, налагаемое на корни многочлена gф, может показаться довольно ограничительным, но, как установлено в разд. 3 и 4, оно выполняется в некоторых интересных случаях.
Двоичные коды, полученные с помощью теоремы 3, не включают коды со скоростью Уг- Наиболее интересными двоичными кодами будут коды со скоростями 7з И 2/3.
СВЕРТОЧНЫЕ КОДЫ, У КОТОРЫХ dfree = пА
Так как ^[О^)]^ пА, то для любого сверточного кода имеем dfree <nA. Коды, для которых dfree = пА, можно рассматривать как аналоги блоковых кодов с достижимым максимальным расстоянием [7, стр. 317]. Коды Рида — Соломона [7, стр. 318] являются классом циклических кодов с достижимым максимальным расстоянием, которые существуют над любым конечным полем GF(q).
Пусть n = q — 1—длина кода Рида — Соломона над GF^q), и пусть v — делитель п. Порождающий многочлен кода Рида — Соломона со скоростью kin = x/v может быть взят в виде
g(x) = (x— 1)(х — а)(х — а2) ... (х — а"^”1),
где а—примитивный элемент из GF(q). Из v-класса, содержащего а8, 0 s < nh, элементы
а5 as+n/v as+2n/v , , , as+(n/v) (V—х—1)
являются корнями многочлена g(x). Таким образом, g*(x) имеет ровно v — х корней из каждого v-класса, и, следовательно, условие теоремы 3 выполняется.
Теорема 4. Если g*(x)—порождающий многочлен кода Рида— Соломона со скоростью kln = uh над GF(q), то q-ичный сверточный код со скоростью x/v, порождаемый G^=g\xy является некатастрофическим и имеет diTee = па = п — k-y L
Коды со скоростью V2, полученные в [1] с помощью применения теоремы 2 к кодам Рида — Соломона над GF(2T>) со скоростями 7з, также имеют dtT^ = пА. но они обладают ограничительными длинами, приближенно на 50% большими, чем коды теоремы 4 для скоростей, близких к 7г- Доказательство теоремы 2 в [1] основывается существенным образом на соотношении между v и характеристикой поля, и мы могли бы обобщить эту теорему очевидным образом на коды со скоростью \jp для полей с характеристикой р. Мы предпочитаем доказать менее очевидное, но более сильное обобщение теоремы 2.
Теорема 5. Если g(x) порождает циклический код нечетной длины п над GF(q), q — рг и р— нечетное простое число, то задаваемый с помощью G(D) = g(D) сверточный код со скоростью Ч^ является некатастрофическим и имеет d^^ min{dg, 2dn}.
Доказательство. Обозначим через Р^ многочлен, корни которого равны корням Р^ со знаком минус. Таким образом, Р(х)=+Р(—х) и Г[Р(х)] = Г[Р(х)]. Любой многочлен Q(x2) может быть разложен в произведение вида Р(х)Р(х), так как все корни появляются .парами ±]/г2- В частности, х2п — 1 = = (хп — 1) (xn + 1), и если а — корень хп — 1, то —а — корень хп + 1. При нечетном п как а, так и —а не могут одновременно быть корнями хп — 1, и, следовательно, они одновременно не могут быть корнями многочлена g(x).
Теперь имеем G (D)= Gi(D2) +DG2(D2y таким образом, если а — общий корень многочленов Охф2) и G2(D2y порождающих код, то —а также является общим корнем. Отсюда получаем, что HOD{Gi, G2} = 1, следовательно, код — некатастрофический [6].
Для любого многочлена 1 (D) =# 0 можно записать
т (О) = 1 (D^ g^ = IY (D) Л (D) g (D) =
= Р(О)§(ОУ+'§(ОУН(ОУЯ(ОУ,(4)
где P(D) не делится ни на какой из многочленов g(DY g(D\ h(D\ Нф\
Предположим, что i^j. Тогда (4) приводит к
T(D) = P (Z>) g (dY~w g (DY (О2п - 1/,
так как (D"—l) = Dn + 1. Ни один из корней g(x) не является корнем (х"—1), так что А(х) не может быть делителем g(xY-i. Применяя теорему 1, находим
Г [Г (D)] > W \(D — 1/] W [Р (D) g (DY"/+1 g (DY4 mod (O2" — 1)] >
> W [P (D) g (dY"w g (D)14 mod (Dn -1)] > dg.(5)
Предположим теперь, что i < j. Тогда из (4) имеем
Т (D) = Р (D) h (Оу-х~х Я (dY~‘ (Оп — 1) (D2n — 1/.
Применяя снова теорему 1, получим
Г[Г(Р)]>
>W\(D — 1)'] Г [Р (D) h (dY~1-x Я (dY~x (Dn — 1) mod (D2n — 1)].
Здесь заметим, что ft(x)(xrt—1) является порождающим многочленом циклического кода длины 2п с минимальным расстоянием 2dA, так как h (х) — делитель х"+1 и 11^[Р(х)] = W [Р (х)]. Следовательно,
W\T^\><ldh.(6)
Теперь утверждение теоремы следует из (5) и (6).
Теорема 5 не применима к порождающим многочленам кодов Рида — Соломона в их обычной форме, так как эти коды имеют четные длины при нечетной характеристике поля. Однако р-ичные циклические коды с достижимым максимальным расстоянием, порождаемые g(x) = (x— Ip* [8], [9], [1], могут быть использованы в теореме 5 для того, чтобы получить хорошие р-ичные сверточные коды.
то мы должны рассмотреть здесь дополнительное условие, накладываемое теоремой 3. Таким образом, по (примитивному или непримитивному) БЧХ-коду с достаточно большой скоростью R ^ yh можно построить сверточный код со скоростью х/у со свободным расстоянием, ограниченным снизу минимальным расстоянием БЧХ-кода, но с более короткой ограничительной длиной пА ~ «n^X-Ry
Следующая теорема показывает, что, когда сверточные коды образуются из некоторых непримитивных БЧХ-кодов, условие теоремы 3 может быть проверено без детального просмотра корней порождающего многочлена.
Теорема 6. Пусть п = ру является делителем q^-1 — 1 и р — простое число, которое не является делителем никакого числа вида qT — 1 при г < р — 1. Если g(x) —порождающий многочлен q-ичного циклического кода длины п, самое большее у — х корней ч-й степени из единицы в GF(qv~x) являются кцрнями g(x) и самое большее у — х неприводимых многочленов степени р — 1 являются делителями g(x), то сверточный код, определяемый G(x) = g(x), является некатастрофическим и имеет свободное расстояние d'free dg.
Доказательство. Оно следует из предположений, что неприводимыми делителями хп — 1 [7, § 4.4] являются у многочленов степени р —1, (х — 1) и один или большее число минимальных многочленов корней у-й степени из единицы а^, а2ц, ..., а^Ч где а является первообразным корнем п-й степени из единицы в GF(qvi-xY
Для того чтобы два корня одного и того же неприводимого многочлена были у-эквивалентными, должно быть
atql = а/+Ч / < р — 1, что означает, что
■ HQ1— l) = /pmodn, f<p—1, и так как р — делитель п, то
/<р—1. (7)
Так как р не является делителем ^q1 — 1), то (7) удовлетворяется только тогда, когда t кратно р. Таким образом, можно заключить, что, в то время как все корни минимальных многочленов корней у-й степени из единицы принадлежат у-классу, содержащему 1, корни каждого неприводимого делителя степени р — 1 включают ровно один элемент из каждого из остающихся у-классов. Следовательно, условие теоремы 3 удовлетворяется, если самое большее у — х неприводимых делителей степени р — 1 являются делителями
многочлена g(x) и самое большее у —х корней у-й степени из единицы являются корнями многочлена g(x).
Применим теорему 6 в следующих двух примерах.
Пример 1. Так как 65 = 5 -13 является делителем 212 — I и 13 не является делителем никакого меньшего числа вида 2Г—1, то х65+ I имеет 5 неприводимых делителей степени 12 и другими делителями являются х+1 и минимальный многочлен а13. Мы получаем сверточные коды, приведенные в табл. 1. Интересно отметить [11], что код со скоростью Vs может быть улучшен с помощью использования минимального многочлена а13 вместо х+1. Этот порождающий многочлен будет содержать ровно 4 элемента каждого у-класса.
Таблица 1
Сверточные коды, полученные из циклических кодов длины 65.Порождающий многочлен является произведениемминимальных многочленов az, где a —- первообразный корень65-й степени из единицы, а i принимает значения,-
указанные в столбце «корни для g(x)».
X/V
Корни ДЛЯ g (X)
^free
пА
Vs
0, 1
>6
14
Vs
0, 1, 3
> 10
26
Vs
0, 1, 3, 5
> 14
38
Vs
0, 1, 3, 5, 7
>22
50
Vs
1, 3, 5, 7, 13
>25
53
Пример 2. Число 20 = 4-5 является делителем З4—1 и 5 не является делителем никакого меньшего числа вида 3r — 1. Неприводимые делители многочлена х20 — 1 представляют собой 4 многочлена степени 4, х+ 1, х — 1 и минимальный многочлен а5.
С помощью порождающего многочлена, имеющего корни a a2, a4, a5, a10, получаем троичный код со скоростью V4, У которого ПА = 16 И б/free > И
К сожалению, применимость теоремы 6 довольно ограничена, но она проливает некоторый свет на связь между делителями п и максимальной степенью порождающих многочленов, которые удовлетворяют условию теоремы 3. В общем случае эта связь является более сложной, но наилучшие порождающие многочлены могут быть легко определены с помощью последовательного вычисления корней минимальных многочленов.
В табл. 2 приведен ряд двоичных и троичных кодов. Величины dtTednA ДЛЯ длинных двоичных кодов из этой таблицы сравнимы с асимптотическими значениями границы Гильберта и более сильной нижней границей для свободного расстояния в несистематиче-
ских кодах, полученной Нейманом [12]. Двоичный код со скоростью 2/з, у которого пА = 102, имеет dfIeelnA = 0,22, в то время как значение неймановской границы всего лишь равно 0,12. Код со скоростью 7з, У которого пА = 517, имеет dttednA = 0,22, в то время как значения гильбертовской и неймановской границ равны 0,17 и 0,34.
Таблица 2
Сверточные коды над GF (q), полученные из циклических кодов длины п. Порождающий многочлен является произведением минимальных многочленов с^, где а — первообразный корень n-й степени из единицы, a i принимает значения, указанные в столбце «корни для g (я)»
q
п
X/v
Корни ДЛЯ g (X)
^free
пА
2
129
7з
0, 1, 3
> 10
30
2
129
7з
0, 1, 3, 5, 7, 9, 11
>26
86
2
255
7з
— 1, —3, 0, 1, 3, 5, 7, 9
> 16
58
2
255
7з
-17, -15, ..., -1, 0, 1, ..., 17
>38
130
2
023
7з
—9, —7, ..., — 1, 0, 1,7, 9
>22
102
2
023
7з
—31, -29,0, ..., 77, 79
>116
517
3
242
72
-11, -10, ..., 010,И
>26
82
3
244
74
0, 1, 2, 4, 5
> 14
42
3
244
74
0, 1, 2, 4, ..., 13, 14
>32
102
3
244
74
0, 1, 2, . .. 17, 19, 20
>44
144
5. АСИМПТОТИЧЕСКИ ХОРОШИЕ ПЕРИОДИЧЕСКИЕ СВЕРТОЧНЫЕ КОДЫ
В этом разделе мы построим для любого R» 0 < R < 1, последовательность сверточных кодов со скоростями Rn^ R при растущем па» такую, что свободные расстояния и ограничительные длины будут удовлетворять условию
ЫпЦ^Х).(8)
П^->оо1
Для того чтобы упростить доказательство, рассмотрим лишь двоичные коды..
Пусть gi (х) — порождающий многочлен сверточного кода со скоростью Rm = xh над GF^), полученного с помощью теоремы 4. Запишем ^-преобразование кодовой последовательности:
7’1(Д) = /0 + ЛД + 4Д2+ ... +tuDa+ ....
Методом, подобным тому, который использован при построении в [2], определим сверточный код, меняющийся со временем и имею-
щий скорость x/2v, с помощью кодовой последовательности
T^ = t^tQD^txD^^xD^-V ... ^tuD^^a4uD^x-V .... (9)
где а — примитивный элемент из GF(2m).
Иначе мы могли бы определить этот сверточный код с помощью двух многочленов, порождающих код, фиксированного многочлена gi(x) и изменяющегося со временем многочлена, но мы предпочли более простое определение непосредственно в терминах кодовой последовательности (9).
Выразим элементы ОР^т^ как двоичные m-компонентные векторы и будем интерпретировать код, определяемый (9), как изменяющийся со временем двоичный сверточный код. Период кода равен 2/n(2m — 1), так как а2 “1 = 1.
При доказательстве теоремы 3 было сделано замечание, что кодовая последовательность Тхф^ могла быть записана в виде
Тх (Д) = 51(Д)Р(Р)(Д"-1)\
где g\ффф^ не делится на (Dn—1). Нам потребуются, кроме веса, некоторые другие сведения относительно Тхф), поэтому приведем несколько этапов доказательства теоремы 1 [1].
Для того чтобы построить границу для хэмминговского веса многочлена вида ^(х) • (xn + l)w, запишем
^Но^НвдМ-Ь • •• + xn~1qn_1 (х").
Тогда
П —1
117 Vq М (X" + I)"[ = 5 Г Vqt (хп) (Хп 4-1)4t=0
и теорема легко доказывается, если заметить, что для каждого слагаемого
Г lqt (xrt) (х" 4- 1)^1 > W fa (1)] W [(х + 1)4
Однако вес каждого из этих слагаемых равен весу символов, которые умножаются на а’, когда составляется последовательность (9), и поэтому
W ф) g (D) mod фп - 1)] > dg представляет собой нижнюю границу для числа ненулевых символов в Тх ф), которые умножаются на различные степени а, когда составляется Тф).
Теперь мы в состоянии использовать лемму, выведенную в [2].
Лемма 2. Пусть о^ф^^О при L-*oo. Тогда для любого у, О < у < 1, и любого б, 0 < б < 1, общий хэмминговский вес W различных ML = [у ~ °2(^-)][2L6 — 1] ненулевых двоичных L-последовательностей удовлетворяет неравенству
^>^н"Ч^-охф№-х>
Здесь Н-х обозначает функцию, обратную к двоичной энтропии и 01 (£)-> О при L оо. Применим лемму 2 при L = 2m, 6 = 72 и у = = 1 — Rm. Будем иметь
rffree > 2m (1 - Rm) VH"1 (V2) - 0. (2m)] (2m - 1).
Теперь пл = 2т(2т—1)(1— R^ и, следовательно,
lim inf </{гее/пл ^ Я-1 (*/2)(Ю)
Пд->оо
ДЛЯ любой скорости R <_ 72.
Так же, как и в [2], получим коды с большими скоростями с помощью отбрасывания последних s двоичных символов каждого произведения tuau, при этом обозначим через [/uauL получающийся (m — s)-компонентный вектор. Видоизменим кодовую последовательность, взяв ее в виде
т/.t», [^L, <i. ML, .... f„, U«BL, ....(11)
Имеются по меньшей мере (2т— 1) (1 —/?m)2~s различных ненулевых векторов вида {/и, [<««“]«}, и мы можем вновь применить лемму 2, положив L = 2m — s, 6 = (m— s)/(2m— s) и у=1—Rm. Общий вес ненулевых векторов удовлетворяет неравенству
W > 241 - Rm) (2m - s) ^Н"1 (-^т) - О, (т)] (2т-$ - 1).
Отметим, что скорость этого двоичного кода равна RnA = = Rmml(2m — s), но наилучшая граница получена для Rm, близких к 1, так что RnA « m/(2m— s). Ограничительная длина равна
пД = (2т —s)(2m — \)(Х — Rm).
Таким образом,
Umini diIee[nA>H-41-R).(12)
Пд->оо
Объединим (10) и (12) для того, чтобы получить следующую теорему. . .
Теорема 7. Двоичные периодические сверточные коды, определяемые посредством (9) и (11), имеют свободные расстояния и ограничительные длины, удовлетворяющие неравенству
liminf diree(nA>
ПД^°9
н-'т, О <r<42,
^"*(1-^), 'А^Ж!.
Граница теоремы 7 нанесена на рис. 1 вместе с соответствующей границей для блоковых кодов, полученной в [2]. Для скоростей, больших чем 72, граница, полученная в теореме 7, равна нижней границе Гильберта для блоковых кодов. С помощью каскадирования сверточных кодов из теоремы 4 с хорошими фиксированными блоковыми кодами, имеющими скорости, меньшие чем 7г, можно получить класс сверточных кодов, свободные расстояния ко-
Рис. 1. Сравнение границы для div^nA для сверточных кодов, построенных в разд. 5 (кривая С), и границы, полученной ранее для класса блоковых кодов (кривая В).
торых ограничены снизу границей Гильберта для всех скоростей 0</?< 1 [10], [13].
Автору хотелось бы поблагодарить профессора Дж. Л. Месси и рецензентов за некоторые полезные предложения.
СПИСОК ЛИТЕРАТУРЫ
Massey J. L, Costello D. J., Justesen J., Polynomial weights and code constructions, IEEE Trans. Inform. Theory, IT-19, (Jan. 1973) 101—НО. (Русский перевод: Месси Дж. Л., Кастелло Д. Дж., Юстесен Й., Веса многочленов и кодовые конструкции. Кибернетический сборник вып. 11 «Мир», М., 1970, стр. 24—27).
Justesen J., A class of constructive asymptotically good algebraic codes, IEEE Trans. Inform. Theory, IT-18, (Sept. 1972) 652—656. (Русский перевод: Юстен- сен Й., Класс конструктивных асимптотически хороших конструктивных кодов, Кибернетический сборник, вып. 10. «?4ир», М., 1973, стр 39—50.)
Massey J. L, Majority decoding of convolutional codes, Res. Lab. Electron Quart. Prog. Rep. 64, Massachusetts Inst. Technol. Cambridge, (Jan. 15, 1962) 183—188.
Forney G. D., Jr., Convolutional codes I: Algebraic structures, IEEE Tran§. Inform. Theory, IT-Щ (Nqv. 1970), 720—738,
Massey J. L, Some algebraic and distance properties of convolutional codes, in H. B. Mann, Error Correcting Codes, New York, Wiley, 1968.
Massey J. L., Sain M. K., Inverses of linear sequential circuits, IEEE Trans. Compute C-П, (Apr. 1968) 330—337.
Berlekamp E. R., Algebraic Coding Theory, New York, McGraw-Hill, 1968. (Русский перевод: Берлекэпм Э., Алгебраическая теория кодирования, «Мир», М„ 1971.)*
Assmus Е. F., Mattson Н. F., Jr., New 5-designs, J. Comp. Theory, 6 (1969), 122—151.
Берман С. Д., К теории групповых кодов, Кибернетика, 3, № 1 (1967), 31—39.
Forney G. D., Jr., Concatenated Codes, Cambridge, Mass., M. I. T. Press, 1966. (Русский перевод: Форни Д., Каскадные коды, «Мир», М., 1970.)
И. Chen С. L., Computer results on the minimum distance of some binary cyclic codes, IEEE Trans. Inform. Theory (Corresp.), IT-16, (May 1970), 359—360.
Neumann B., Distance properties of convolutional codes, M. S. thesis, Massachusetts Inst. Technol., Cambridge, (Aug. 1968).
Зяблов В. В., Оценка сложности построения двоичных линейных каскадных кодов, Проблемы передачи информации, 7, вып. 1 (1971), 5—13.
Широковещательные каналы °
Т. М. Ковер
ВВЕДЕНИЕ
В этой работе делается попытка развить некоторые интуитивные представления по проблеме одновременной передачи информации от одного источника к нескольким приемникам. Примерами одновременной передачи информации служат радиовещание, телепередачи от передатчика к многочисленным приемникам в данном районе, лекции для группы слушателей с различной подготовкой.
Будет найдено, что предлагаемая нами модель применима также к случаю, когда рассматриваются составные каналы, в которых передатчик не знает истинные характеристики канала, но хочет вести передачу информации приемнику с некоторой заранее заданной скоростью.
Общий широковещательный канал с к приемниками изображен на рис. 1. Подробнее его описание приведено в разд. 3. Основная проблема состоит в отыскании множества одновременно достижимых скоростей передачи (7?ь R2) .Rk).
Предположим, что передающие каналы от передатчика к приемникам имеют соответственно пропускные способности Сь С2, ... ..., Ск бит в сек. Первое предложение, которое можно выдвинуть, использует максиминный подход: вести передачу со скоростью Сщш = min {Сь Сг, .СкУ Даже эта скромная цель достижима лишь тогда, когда каналы в некотором смысле совместны (общее выражение дается в разд. 9). Если каналы совместны, то каждый приемник принимает без ошибок со скоростью R = Cmin бит/сек. В этом случае скорость передачи лимитирована наихудшим каналом. В другом крайнем случае информацию можно было бы передавать со скоростью R = СтаХ) со скоростями Ri = 0, i = 1, 2, ... ..., к — 1 (во всех каналах кроме наилучшего) и скоростью Rh = = CmaX в наилучшем канале.
Следующая идея состоит в разделении времени. Разделим время так, чтобы на интервалах М, Хг, ..., fa Аг ^ 0, hfa = 1, передача велась со скоростями Сь С2, ..., Ск соответственно. Предполагая совместимость каналов и предполагая, что Ci ^ С2 ^ ... ^
t) Cover Т. М., Broadcast channels, IEEE Transactions on Information Theory, IT-18, № 1, (1972), 2-14,
^ Ch, находим выражение для скорости передачи информации по i-му каналу:
Я, = S Х.С., 1= 1, 2к.
Насколько нам известно, в литературе не обсуждались никакие другие схемы передачи и не была сформулирована задача передачи по широковещательным каналам.
*2Rk*2RkВ этой работе будет пбказано, что можно превысить даже это семейство скоростей. В частности, будет показано, что при небольшом уменьшений скорости в наихудшем канале можно получить
*2
Rk
*2
Rk
С1
с2
?
ск
Рис. 1. Широковещательный канал; R — скорость, С — пропускная способность.
большее приращение скорости передачи для лучших каналов. Эвристическое понимание, которое возникает после нашего рассмотрения, состоит в том, что не следует одновременно передавать по нескольким каналам со скоростью, равной скорости наихудшего канала, и не следует пытаться передавать информацию методом разделения времени или уплотнения по времени, а скорее следует распределить высокоскоростную информацию среди низкоскоростных сообщений.
Будут приведены примеры хороших методов кодирования для множества двоичных симметричных каналов и для множества гауссовских каналов. Рассмотрен экстремальный случай ортогональных каналов, в котором несущественно, что можно пытаться передать два сообщения сразу двум различным людям, а также рассмотрен другой экстремальный случай несовместных каналов, в котором передача информации одному приемнику делает невозможной передачу информации другому.
ДВА ДВОИЧНЫХ СИММЕТРИЧНЫХ КАНАЛА
Прежде чем перейти к точным формулировкам для широковещательного канала (разд. 3), рассмотрим эвристически случай двух двоичных симметричных каналов. Необходимые определения можно найти у Эша [1] и в разд. 3.
Пусть X = {1, 2} — входной алфавит, а У] = {1,2} и У2 = = {1,2}—выходные алфавиты приемников 1 и 2. Пусть матрицы
Рис. 2. Два двоичных симметричных канала.
переходных вероятностей каналов имеют вид (рис. 2)
Это значит, что канал 1 бесшумный, а канал 2 является двоичным симметричным каналом (ДСК) с вероятностью ошибки р. Соответствующие пропускные способности каналов равны С! = 1 бит
Рис. 3. Некоторые достижимые скорости для ДСК; / — минимаксные скорости, 2 — скорости при разделении времени.
на одну посылку и С2 = С(р) = 1 —• Н(р) ) бит на одну посылку.
Максиминный подход дает скорости передачи (Ri, R2) = = (С2, С2) (рис. 3). (Максиминные точки по небрежности названы минимаксными точками на рисунках. Хотя в общем случае это не
Рис. 4. Пространство кодовых слов для ДСК: / — кодовое слово, 2 — облако вспомогательных кодовых слов, 3 — сфера, в которой с большой вероятностью находится принятое у.Рис. 4. Пространство кодовых слов для ДСК: / — кодовое слово, 2 — облако вспомогательных кодовых слов, 3 — сфера, в которой с большой вероятностью находится принятое у.одно и то же, во всех примерах, изображенных на рисунках, минимакс и максимин означают одно и то же). Эти скорости на самом деле могут быть одновременно достигнуты с помощью использования стандартного (2ntC2~e\ гц Хп)-кода для канала Р2 (см. Вольфо- виц [2]).
Рис. 4. Пространство кодовых слов для ДСК: / — кодовое слово, 2 — облако вспомогательных кодовых слов, 3 — сфера, в которой с большой вероятностью находится принятое у.
Рис. 4. Пространство кодовых слов для ДСК: / — кодовое слово, 2 — облако вспомогательных кодовых слов, 3 — сфера, в которой с большой вероятностью находится принятое у.
В другом крайнем случае можно передавать со скоростью R\ = = 1 при нулевой вероятности ошибки на приемнике 1 и возникающей при этом скоростью /?2 = О для канала 2. Затем, передавая долю времени X со скоростями (С2, С2) и долю времени 1 — X со скоростями (1,0), получим множество скоростей, изображенных на рис. 3 прямой линией. Будем называть эту линию нижней границей для множества достижимых скоростей, полученной с помощью разделения времени.
Теперь посмотрим, как сделать лучше. Из доказательства методом случайного кодирования известно, что хороший ^n^~E\ п, X J-код можно создать, выбирая случайно подмножество S с 2 nic^ элементами из множества 2П двоичных п-по-
следовательностей Хп = {1, 2}п и используя метод декодирования, который сопоставляет принятый вектор у = (уь у2, ..., уп) элементу S, находящемуся в пределах хэмминговского расстояния п^р + е) от у.
Выберем код такого типа для канала, который в некотором смысле является более шумным; а именно — для последовательного соединения ДСК с параметром р и ДСК с параметром а, что дает в результате ДСК с параметром ар+ар, где а = 1-—а. Таким образом, в этом множестве будет лишь 2п(С1ар^йр^ кодовых слов, но можно будет допустить больший шум порядка п^ар + ар).
Используем теперь эту возможность путем размещения некоторой добавочной передаваемой информации, предназначенной лишь для безошибочного приемника Уь
Поставим в соответствие каждому кодовому слову х из S G £Хп = (1,2}п множество всех кодовых слов, находящихся на рас*
стоянии Хэмминга [ап], что изображено с помощью облаков из точек на рис. 4.
Эта кодовая конструкция позволяет передать произвольное целое число г е (1, 2, ..., 2"(С(о^+ар)~Е)) к обоим приемникам 1 и 2 и произвольное целое число
se{l, 2CL""1}
приемнику 1. (См. разд. 3 для более подробного ознакомления.) Сообщение (г, s) посылается следующим образом. Целое число г определяет облако, а целое число $ определяет точку хе{1,2}п в облаке. Затем эта ^-последовательность х передается. Бесшумный канал имеет на выходе у\ = х и, таким образом, декодирует верно как г, так и s. Так как в облаке находятся
^[ап] 2пН^
точек, скорость передачи для канала 1 равна
Rx = ^ log 2пН (а,2"(с <ар+йр)-Е) = С (ар + ар) + И (а) — е. (2)
Канал 2 воспринимает центр облака так, как если бы он был передан по добавочному ДСК с параметром а (из-за выбора s). Однако, поскольку центры облаков были выбраны так, чтобы быть различимыми в ДСК с параметром ар + ар, это означает, что г правильно декодируется приемником У2. Таким образом,
Т?2 = С (ар + ар) — 8.(3)
Проведенное рассуждение позволяет предположить, что (7?ь ^2) достижимы совместно; это доказано в приложении. Заставляя а меняться между 0 и 1, получаем новое достижимое множество скоростей, изображенное на рис. 5. Мы вполне уверены, что на рис. 5 получена оптимальная область достижимых скоростей.
Полученная кривая охватывает кривую разделения времени. Заметим также, что наклон равен нулю около минимаксной точки. Таким образом, бесконечно малое уменьшение скорости в худшем канале дает инфинитезимально бесконечное увеличение скорости в лучшем канале. Следовательно, по крайней мере в случае двух ДСК, наложение информации лучше, чем разделение времени.
Этот пример естественно приводит к гипотезе относительно области пропускной способности для частного класса широковещательных каналов, в котором один канал является ухудшенным вариантом другого.
Определение. Пусть Р и Q— матрицы переходных вероятностей канала порядка |Х|Xi ^iI и |Х|Х|У2| соответственно. Будем говорить, что Q является ухудшенным вариантом Р, если существует стохастическая матрица М, такая, что Р = QM. Шен-
нон [6] показал, что пропускная способность канала Q не больше, чем пропускная способность канала Р.
Гипотеза 1. Пусть S — произвольная матрица порядка |Х|Х Х|Х| переходных вероятностей канала, соответствующая плотности распределения для канала p(x|s), и пусть p(s) — произвольное распределение^вероятности на X. Пусть p(s) приводит к совместному распределению р (у\, у% s, х) = р (s) р (х| s) р (уь у21 х) на (УьУг,^, х). Пусть Р2— ухудшенный вариант Р\. Тогда множество достижимых пар (/?ь R2) для широковещательного канала
Рис. 5. Множество достижимых скоростей для ДСК; 1 — минимакс, 2 — наложение информаций, 3 — разделение времени.
(X, р(уь у2|х), У1ХУ2) задается парами (/(S; У2) + ЦХ; У1 |S), /(S; У2)) для всех каналов S и всех распределений вероятностей p(s).
Пример двух ДСК из этого раздела является частным случаем этой гипотезы. Код, который достигает скорости (/?ь R2)f строится аналогичным образом. Во время написания этой статьи Бергмане из Станфорда достиг некоторых успехов в доказательстве этой гипотезы. Фактически рассмотрения Бергманса позволили мне изменить первоначальную слишком сильную гипотезу, в которой фигурировал более широкий класс каналов, упомянутых в [6]. У меня нет больше никаких оснований верить в более сильную гипотезу.
ОПРЕДЕЛЕНИЯ И ОБОЗНАЧЕНИЯ
Определим широковещательный канал без памяти с двумя приемниками, который мы будем обозначать (X, р(у^ у2|х), У! X X У2) или р(уьу2|х), как три конечных множества X, Уь У2 и совокупность распределений вероятностей р(-,-|х) на У1 X У2, одно распределение для каждого х г X. Интерпретация определения
состоит в том, что х — вход канала, а у\ и у^— соответственно входы приемников 1 и 2, как показано на рис. 6. Задача состоит в одновременной передаче информации приемникам 1 и 2 с возможно большей эффективностью.
В этой работе нам нужны лишь одномерные распределения
Pi(f/ilx)= 2 РкУ\,У2\х^
уге¥7
Рг(У2\х)= S р(Ух,у2\х\(4)
Ух^У\
которые мы ввели в примерах в виде матриц Рх и Р2 порядка № X l^il и 1^1X1 ^21 соответственно. Возможная зависимость
Рис. 6. Кодер и декодер для широковещательного канала.
■ рх (e) = Pr ^, ^=Нг, «О) р2 (е) = Рг {(г, $2)^(r, s2)}.
или независимость У1 и У2 при заданных X не существенна при условии, что декодирование в обоих приемниках должно выполняться независимо.
Назовем n-м расширением для широковещательного канала широковещательный канал
(Хп, p(yv,y2\x),Y"XY^,(5)
где р(уь у21 *) = Пр(Р1/. У1Д х{) для хеХ", у, е У", у2еУ?.
Назовем ((Mb М2, Л112), и)-кодом для широковещательного канала три множества целых чисел
/?={1,2М12),S, = {1, 2Af,},S2={1, 2, .... М2\,
функцию, задающую кодирование,
х: RXSxXS2->Xn
И две функции, задающие декодирование,
gf. Y^RXSf, ^(yJHMi),g2- ^2 —* R X S2; §2 (У2) = V> s2).
Множество {я (г, sb s2) | (г, sb s2)e R X Si X S2} называется множеством кодовых слов. Как показано на рис. 6, целые числа Si и s2 произвольно выбираются передатчиком для посылки приемникам 1 и 2 соответственно. Целое число г также выбирается передатчиком и предназначено для приема как тем, так и другим приемником. Таким образом, г является «общей» частью сообщения, a $i и s2 дают «независимые» части сообщения.
Скажем, что i-й приемник совершает ошибку, если gi^yt)^ ^(rtSi). Пусть передается сообщение (г, sbs2); обозначим через
М^5ь32)==Рг{£г(у,)=?Чг, SZ)},1=1,2,(6)
вероятности ошибок для этих двух каналов; отметим здесь, что уь у2— единственные случайные величины в написанном выше выражении.
Обозначим (среднеарифметическую) вероятность ошибки при декодировании (г, $i), усредненную по всем значениям s2, через
Ai (г, «О = 777 2 Х*(r’ Sb s^*(7)
s2=l
Аналогично для канала 2 определим
мх
^2 (Г, «г) = 4; S Л2 ^’ 51 ’ s^-W
Si=l
Наконец, определим общие среднеарифметические вероятности ошибок кода для каналов 1 и 2 как
Pl (е)= AfiAfj2 2 ^’s^ = "м S ^* (r* S| ’ s^*(9)
Г, SiГ, Si, s.
Р2 (^) = Л^Л^ 2 ^2^’ S^ ~ ТЙ" ^J ^2 ^’ 51 ’ S^’^^
Г, Soг, slf s?
где
^ = ^2^2.(11)
Черта над pt(e) сохраняется в качестве напоминания о том, что эта вероятность ошибки вычислена при некотором частном распределении, а именно при равномерном распределении на кодовых словах.
Для нас также будут представлять интерес максимальные вероятности ошибок
Az = maxPr{gHyJ=^(r, ^(г,^^ Z= 1,2»(12)
г, Su $2
соответствующие наихудшему кодовому слову для каждого канала. Заметим, что М ^ pi(e').
Определим скорость (Rx, Ra, Rn) для ((All, М2, М12), п)-кода следующим образом:
Л, = 7^^^, Л2 = -^logM2Лf12, Л12 = 1 log Mt2, (13)
где все скорости выражены в битах на одну посылку. Таким образом, Ri — полная скорость передачи информации к приемнику I, i = 1, 2, a Ria — часть информации, общей для обоих приемников.
Замечание. Когда Xi и pi(e') будут относиться к n-му расширению широковещательного канала, мы часто будем обозначать это как Х^"1, р^ (е). '
Определение. Скорости (ЛьЛг, Лю) называются достижимыми в широковещательном канале, если для любого е > 0 и для всех достаточно больших п существует ЦМх, М2, М12), п)-код с
МХМ12>2^\ M2M12>2nR\ Ml2^2nR", (14)
такой, что р^ (е) < в, р^ (в) < в.
Замечание. Заметим, что общее число М = MxM2Mt2 кодовых слов для кода, удовлетворяющего (14), должно быть больше, чем 2"№+R2-R,,).
Определение. Областью пропускных способностей 91* для широковещательного канала называется множество всех достижимых скоростей (ЛьЛг, Лю)-
Целью настоящей работы является определение 91* для возможно более широкого класса каналов.
Замечание. Иногда через 91* мы будем также обозначать множество достижимых пар (ЛьЛ2)- Однако при нашем настоящем понимании проблемы представляется, что рассмотрение только (Ль Л2) и исключение из рассмотрения Л12 приведут к загруб- лению и неясности исследования.
Замечание. Обобщение определения широковещательного канала при двух приемниках на случай к приемников является громоздким в смысле обозначений, но довольно очевидным, если иметь в виду следующее замечание. Множества целых чисел Л, §ь S2 следует заменить 2й— 1 множествами /(6), 9е {0, 1}\ 9 ф О, и считать, что целое число 1(6), выбранное из множества 7(6) = = {1,2, ..., М(0)}, требуется правильно принять (с помощью соответствующего выбора кода) каждым приемником /, для которого 0j = 1, 0 = (0|, 02, ..., Од). Тогда, например, скорость передачи цо
n-му расширению широковещательного канала к i-му приемнику задается в виде
^ = |log П W)=l 2 logAi(e). (15) е е {0, 1}*0е{О, I}6
ez-iе,=1
В широковещательном канале с двумя приемниками соответствующие множества в новых обозначениях будут /? = /(!, 1), Si = 7(1,0), S2 = 7(0,1).
В разд. 4 рассматривается наилучшая ситуация с двумя каналами, а в разделе 5 — наихудшая ситуация.
ОРТОГОНАЛЬНЫЕ КАНАЛЫ
В этом разделе будет исследован широковещательный канал, в котором эффективная передача к одному из приемников никоим образом не влияет на передачу к другому приемнику. Примером такой ситуации служит обычный кинофильм, который можно одно
временно демонстрировать слепому и
(16)(16)Рис. 7. Ортогональные каналы.Рис. 7. Ортогональные каналы.глухому.
(16)
(16)
Рис. 7. Ортогональные каналы.
Рис. 7. Ортогональные каналы.
0 10 1Рассмотрим широковещательный канал с Х = (1,2,3,4), У1 = {1,2), У2 = {1, 2} и с
0 1
0 1
изображенный на рис. 7. Так же, как
раньше,
{Pk)ij = Pr |z/6 = /l х = 1\, 6 = 1,2;
/=1,2; /=1,2,3,4.
Легко найти, что Ci = С2 = 1 бит на посылку. Очевидно, что с точки зрения приемника У] входы х = 1 и х = 2 приводят оба к z/i = 1 с вероятностью 1 и поэтому могут быть объединены. Анализируя подобным образом дальше, находим, что У] может определить лишь хе {1,2} по отношению к хе {3,4}, в то время как У2 может определить лишь х е {1,3} по отношению к х е{ 2, 4}.
В этом примере С] = 1 и С2 = 1, и это достигается соответственно при Рг{х= 1} + Рг{х = 2} = '/г и Рг{х = 1} + Рг{х = 3} = ='/2. Решая эти уравнения совместно, находим, что (7(А|У]), 7(^1 У2))= (1,1) можно достичь на Рг{х = /} = */4, 7=1, 2, 3, 4. Само по себе этим не гарантируется возможность достижения
(Сь С2). Однако для этого канала существует теорема кодирования. Пусть ui^{l,2}, и2е{1,2} обозначают биты сообщения, которые требуется передать к У и У2 соответственно.
Установим соответствие пар и входным символам
(^2) = (1, 1)->1, 0^, ^2) = (1, 2) ~>2 («ь^) = (2, 1)->3, (ubu2) = (2, 2)—>4(17)
и пошлем соответствующий входной символ х. Тогда ух = щ и у2 = = и2 и пропускные способности Ci и С2 достигаются одновременно. В силу того, что их и и2 можно выбрать независимо, можно также достичь Л12 = 1 с помощью этой схемы. На рис. 8 изображено множество достижимых скоростей. Теорема о верхней границе
Рис. 8. Достижимые скорости для ортогональных каналов; 1 — скорости (Ль ^2) = (L 1), достижимые При любых 0<Л18<1.Рис. 8. Достижимые скорости для ортогональных каналов; 1 — скорости (Ль ^2) = (L 1), достижимые При любых 0<Л18<1.(разд. 8) устанавливает, что эта область является оптимальной.
Рис. 8. Достижимые скорости для ортогональных каналов; 1 — скорости (Ль ^2) = (L 1), достижимые При любых 0<Л18<1.
Рис. 8. Достижимые скорости для ортогональных каналов; 1 — скорости (Ль ^2) = (L 1), достижимые При любых 0<Л18<1.
То, что каналы бесшумные, не существенно. Широковещательный канал остается ортогональным в том смысле, что (Ль Л2) = (Сь С2) можно достичь, даже если определить новые каналы
"г2 г^
(18)(18)Ч г2г2 г2^2Г2_
(18)
(18)
В этом случае Ci = 1—Н^гх) и С, “ 1 — Н^га). Кроме того, Ci и С2 можно одновременно достичь на последовательностях (2"(С|-е), и. Мп)), (2гс(С,-е,> п, Я^О-кодов со словами из {0, 1}", таких, что Х^ -* О, Х^ -*0 при п —* оо, если выбирать Xj G (1, 2} или х, е (3, 4} в соответствии со значением t-ro бита кодового слова, выбранного для посылки из первого кода, и если выбирать х<е{1,3} или х,- е (2, 3} в соответствии со значением i-ro бита кодового слова, выбранного из второго кода. Здесь также можно достичь любое Rx2 из интервала 0 -CRx2 ^ min{Ci, Сг}. Ничего большего ожидать нельзя, и каждый канал работает в присутствии другого не хуже, чем если бы он работал один.
НЕСОВМЕСТНЫЕ ШИРОКОВЕЩАТЕЛЬНЫЕ КАНАЛЫ
В поисках наихудшего случая несовместимости одновременной передачи обратимся к следующему практическому примеру ка-
нала, который по очевидным соображениям назовем каналом с переключением разговора.
Пример 1. Переключение разговора. Пусть
Х = Х1и^2.
ииГ1=Г1и (ФП,г2=г2и{ф2)
и
и
Yx Ф1
(19)
как показано на рис. 9.
■ Каждый приемник имеет индикатор, который включается, когда посылающий передает сообщение другому приемнику. Идея состоит в том, что, когда посылающий хочет передавать сообщение к У], он использует х@Хь что приводит к 1/2 = ф2, показывая приемнику 2, что посылающий передает сообщение к У]. Аналогично для передачи к У2 посылающий использует х е Х2, что приводит к ух = <рь Это соответствует, например, ситуации, когда докладчик, свободно владеющий испанским и голландским языками, должен одновременно беседовать с двумя слушателями, один из которых понимает только голландский, а другой только испанский.
Пусть канал 1 имеет пропускную способность С^, а канал 2 имеет пропускную способность С^. Используя известный резуль-
тат для суммы каналов (см. Шеннон [3]), находим, что
Ct = log(l + 2с‘<0))
С2 = log(l + 2с,(0)).
Проведем неформальное обсуждение этого примера. Конечно, №>^2) = (CiO) достигается и ^R\SR^ = ^>C^ также достигается, и, следовательно, при разделении времени достигается любая пара
Рис. 9. Канал с переключением разговора.
скоростей (/?ь R2) = (ХС1ДС2), O^X^l. Добавочная информация содержится, однако, в ср, и можно использовать подходящее кодирование с помощью моментов начала передач к У1 и У2 для того, чтобы передать дополнительную информацию по обоим каналам. Если канал 1 использует долю времени а, то приемник У1 получает aC(i0) битов на посылку. Однако дополнительно Н (а) бит на посылку достигается, если выбирать канал для передачи независимо каждый раз, подбрасывая монету со смещением а. Другими словами, модуляция кнопкой переключения разговора при условии, что имеется ограничение на долю времени а, делает возможной безошибочную передачу одного из ^^^ добавочных сообщений двум приемникам У1 и У2.
Таким образом, можно достичь всех скоростей (7?ь R2) вида №, ^ = (аС^ + Н (а), аС^ + Н (а)), если выбирать подмножество п моментов, отведенных для использования канала 1, одним из 2пН(“> возможных способов. Эту границу нельзя достичь до тех пор, пока скорость передачи информации R^, общая двум кана-
лам, не будет удовлетворять условию /?12 ^ Н(а). Результаты суммируются на рис. 10.
Простым следствием из разд. 8 является то, что рис. 10 соответствует области пропускных способностей для этого канала, и поэтому эта схема кодирования оптимальна для канала с переключением разговора.
Рис. 10. Достижимые скорости для каналов с переключением • разговора; I - (#i R1) = («С? + Н (а), аС2 + Н (а)), Я12 > Н (а), 2 — наивное разделение времени.
Следующий пример иллюстрирует наихудший случай, который имеет место при одновременных передачах.
Пример 2. Случай несовместности. Пусть
и пусть
(20)
как показано на рис. 11. Таким образом, если X хочет передавать к У1 по каналу без шума х е (1, 2} —► Уь он должен передать чистый шум к У2, т. е. Pr{z/2 = 1 |х е {1, 2}} = */2. Аналогичное утверждение справедливо, когда X передает к У2.
В разд. 8 будет найдена верхняя граница для области пропускных способностей путем отыскания множества всех. достижимых пар (/(Х|У1), /(Х|У2)). Предвосхищая эти результаты, произведем вычисления для этого примера. Пусть Pr{x = i} = pt, i = 1,2, 3,4.
Определим а = pi + рз> а = Рз + Pi- Тогда Н(¥\) = Н^рх -ha/2) и Я(У1|Х) = а, откуда /(Х|У1) = Н(р\ + а/2)—а. Аналогично ЦХ\¥^ = 1кХ\¥^ = Н(р4 + а/2)- а.
Рис. 11. Несовместные щироковеща- тельные каналы.Рис. 11. Несовместные щироковеща- тельные каналы.Сначала, фиксируя a, а и производя максимизацию по 0 ^ р\ ^ ^а, 0^Р4^«> найдем максимальные значения
Рис. 11. Несовместные щироковеща- тельные каналы.
Рис. 11. Несовместные щироковеща- тельные каналы.
/№ У,)=1—a = a, /(Х|У2)=1—a = a,(21)
которые достигаются при рх = = Р2 = а/2 и рз = р4 = a/2. Это представляет собой верхнюю границу для достижимых пар и(х\¥хуцх\¥^.
Можно также проверить, что для любого а е [0, 1] существуют Рь Р2, Рз, Pi, на которых достигается любая пара (/(Х|У1),
разд. 8 будет показано, что эта областьразд. 8 будет показано, что эта область/(Х|У2)), меньшая (a, 1 — а). Таким образом, получаем множество / достижимых пар (/(Х| У,), ЦХ\¥2')'), изображенное на рис. 12.
разд. 8 будет показано, что эта область
разд. 8 будет показано, что эта область
одновременно дости- является верхней границей областиодновременно дости- является верхней границей областиВ
одновременно дости- является верхней границей области
одновременно дости- является верхней границей области
жимых пар (/(Х| У1), /(Х| У2)) пропускных способностей. Одако мы можем тривиально достичь любую пару скоростей (/?ь ^2), лежащую на верхней границе области 91, с помощью простого разделения времени между двумя бесшумными каналами х е {1, 2} —► У1 и х е {3, 4}—► ~> У2. Если каналом х е е{1, 2} используется доля времени а, то без всякого добавочного кодирования можно достичь скоростей /?i = а и /?2 = a = 1 — a.
Таким образом, верхняя граница может быть достигнута на тривиальных процедурах кодирования, и поэтому рис. 12 изображает область пропускных способностей.
Таким образом, здесь приведен пример, в котором два канала
столь несовместны, что нельзя придумать ничего лучшего, чем разделение времени, т. е. использовать один канал эффективно в течение доли времени и другой канал — в оставшееся время.
К счастью для тех, кто любит получать что-либо из ничего, это скорее исключение, а не правило.
УЗКИЙ КАНАЛ
Рассмотрим широковещательный канал, в котором оба канала имеют одну и ту же структуру, т. е.
Р1(У11 ^ = р^уг\х), Ухе/, Мух, у^е¥х = ¥г = ¥,
как показано на рис. 13. Будем называть его узким каналом.
Рис. 13, Узкий канал.Рис. 13, Узкий канал.
Рис. 13, Узкий канал.
Рис. 13, Узкий канал.
ос raос ra
ос ra
ос ra
Отметим здесь, что любой код для приемника ?! также является
кодом с той же вероятностью ошибки для приемника У2. Таким образом, У1 и У2 воспринимают правильно переданную последова
тельность х с малой вероятностью ошибки.
Обозначим пропускную способность канала Р через Сх = С2 = С бит на посылку. Теперь, так как оба приемника получают одну и ту же информацию односи- тельно X, то как приемник 1, так и 2 способны правильно воспринять Г, Sy и $2
тогда И ТОЛЬКО тогда, когда рис 14 Достижимые скорости для узкого (Rx> R\2) являются ДО-канала.
стижимыми скоростями. На
ходя число посылок за единицу времени, которые необходимы, чтобы передать (г, sbs2) верно, получим следующее предложение (см. замечание после формулы (14)).
Предложение. Скорости (/?ь/?2, Я12) достижимы в широковещательном узком канале с пропускной способностью С (см. рис. 14) тогда и только тогда, когда
Rx-¥R2 — R\^C. O^Ry^C, O^R^C, 0</?12<С. (22)
В качестве важного применения изложенного предположим, что требуется передать случайный процесс U = {UnMi = 1, 2,. ...} к
приемнику 1 и случайный процесс V = {Vn:^ = 1, 2, ...} к приемнику 2 по узкому каналу Р со сколь угодно малой вероятностью ошибки (см. рис. 15).
Пусть U = {[/п} и V = {Vn} образуют совместно эргодический процесс со значениями в конечных алфавитах. Понятие «совместно эргодический» означает, что процесс Zn=^Un, Vn) эргодический. Напомним, что энтропия эргодического процесса {Zn} определяется равенством
Н^ = Игл n”xH(Zx> Z2, Zn\ (23)
П > ОО
Рис. 15. Передача двух случайных процессов по одному и тому же каналу.Рис. 15. Передача двух случайных процессов по одному и тому же каналу.
Рис. 15. Передача двух случайных процессов по одному и тому же каналу.
Рис. 15. Передача двух случайных процессов по одному и тому же каналу.
Утверждение, Асимптотически безошибочная передача \иь и2,..., ип^\иъи2,..., 0п\и {Vb V2,..., V„]->{Vb v2)... ...,Vn\ по узкому каналу с пропускной способностью С может быть произведена тогда и только тогда, когда
(24)(24)H^U, У) <С.
(24)
(24)
Доказательство. Хорошо известным способом кодирования является нумерация 2nWu*v^ е-типичных последовательностей и передача номера в действительности появившейся последовательности (2Ь г2, ..., 2П) по каналу. Если Hf.U, V) + е < С, то этот номер будет передан с вероятностью ошибки е/2 для достаточно больших п. Так как вероятность того, что случайная последовательность (2ь 22, ..., 2П) будет типичной, может быть сделана ^ 1 — е/2 для достаточно больших п, то полная вероятность ошибки может быть сделана меньшей е. Обращение доказывается с помощью обычных рассуждений для случая одного-единственного канала.
Обобщение этого результата на произвольные широковещательные каналы неизвестно.
Сравним теперь ортогональный канал с узким каналом. В ортогональном канале из разд. 4 достигается ^RXiR^ = W О ПРИ лю* бой общей скорости 0^/?i2^1. Таким образом, абсолютно независимые сообщения (7?ц = 0) или полностью зависимые сообщения (/?ц = 1) можно посылать одновременно приемником 1 и 2.
В другом крайнем случае — узкий канал с пропускной способностью С = 1 — можно одновременно достичь Ri = 1, R2 = 1. Однако здесь можно заметить, что достижение (/?ь /?г) = (1, 1) означает, что /?12 = 1. Таким образом, сообщения, передаваемые к 1 и 2, должны быть полностью зависимыми и на самом деле идентичными.
ГАУССОВСКИЕ КАНАЛЫ
Рассмотрим дискретный по времени гауссовский широковещательный канал с двумя приемниками, изображенный на рис. 16.
Пусть 21= (2ц, Z12, ... _ М х ..., 2щ, .последова- ^n^N^N^) тельность независимых оди
наково распределенных (н. о. р.) нормальных случайных величин (с. в.) с нулевыми средними значения- Хп ми и дисперсиями ^l,ипycть ^2 = (^21, ^22, •••, Z2n, • ..) —
н. о. р. нормальные с. в. со средними значениями, равными нулю, и дисперсиями М2. Пусть NX<N2. При ьй
канал.канал.передаче посылается дей- Рис. 16. Гауссовский широковещательный
канал.
канал.
ствительное число х< и при-
нимается yb = Xt + zu и
y2i = Хг + z2b В нашем рассмотрении несущественно, являются ли 2н и z2i коррелированными или нет (хотя при наличии обратной связи это может оказаться существенным). Предположим, что
существует ограничение на передаваемую мощность, которое для любого п задается неравенством
(25)
для любого сигнала х = (хь х2, ... ,х„) с длиной блока п.
Хорошо известно, что отдельные пропускные способности равны Ci ='/2 log(l + S/Х]) и С2 = V2 log(l + S/N2) бит на посылку, где все логарифмы взяты по основанию 2.
При разделении времени достигается любая выпуклая комбинация (С2, С2) и (Ci,0), как показано на рис. 17.
Рассмотрим теперь, как можно улучшить эту характеристику. Пусть сигнал s2 (предназначенный для приемника с высоким уровнем шума У2) представляет собой последовательность н. о. р. (нормальных) с. в. /V(0, aS). При передаче к этой последовательности прибавляется последовательность $ь которую можир
Рис. 17. Скорости при разделении времени в гауссовском широковещательном канале.Рис. 17. Скорости при разделении времени в гауссовском широковещательном канале.Рис. 18. Разложение сигнала.Рис. 18. Разложение сигнала.
Рис. 17. Скорости при разделении времени в гауссовском широковещательном канале.
Рис. 17. Скорости при разделении времени в гауссовском широковещательном канале.
Рис. 18. Разложение сигнала.
Рис. 18. Разложение сигнала.
рассматривать как последовательность н. о. р. с. в. ^(0, aS). Здесь O^a^l и a = 1— а. Таким образом, последовательность s = $i + $2 будет последовательностью н. о. р. с. в. ;V(0, S). При
нимаемые последовательности У1 = Si + S2 + 2\ И Jf2 = 81 + + $2 + ^2 изображены на рис. 18.
Рассмотрим теперь Si и z2 в качестве шума для приемника 2. Заметим, что s^ + z^ являются н. о. р. с. в. 2V(0, aS + + N2y Следовательно, сообщения можно посылать со скоростями, меньшими чем
'К приемнику У2 с вероятностью ошибки, близкой к нулю, при достаточно большой длине блока п. Это значит, что существует последовательность (2"(С2(а)-е), п)-кодов со средней мощностью ограничений aS и вероятностью ошибки р^Це)—>0.
Теперь так как N\ < Na, то приемник У1 также может верно определить переданную последовательность $2 со сколь угодно малой вероятностью ошибки, декодируя s2 при заданном уь приемник У1 затем вычитает s2 из уь получая у\ = у2 — s2 = si + Z]. В этом месте канал 1 можно рассматривать как гауссовский канал с мощностью на входе, ограниченной aS, и аддитивным гауссовским шумом с нулевым средним и дисперсией Nv Пропускная способность этого канала равна */2 log[l + (aS/MJ = Ci (а) бит на посылку, и она достигается, грубо говоря, при выборе г^1*01 независимых «-последовательностей н. о. р. с. в. N(0, aS) в качестве множества
возможных кодовых последовательностей 8ь Таким образом, приемник У1 верно принимает как sb так и s2.
Эти неформальные рассуждения показывают, что одновременно возможно е-достижение скоростей
*i“|log(l + /?2 = ylog(l 4для любого О^а*i“|log(l + /?2 = ylog(l 4для любого О^аaS +W2aS +W2aS +W2aS +W2(26)(26)■С 1. Эти пары скоростей изображены на рис. 19,■С 1. Эти пары скоростей изображены на рис. 19,
*i“|log(l + /?2 = ylog(l 4
для любого О^а
*i“|log(l + /?2 = ylog(l 4
для любого О^а
aS +W2
aS +W2
aS +W2
aS +W2
(26)
(26)
■С 1. Эти пары скоростей изображены на рис. 19,
■С 1. Эти пары скоростей изображены на рис. 19,
Рис. 19. Множество достижимых скоростей в гауссовском широковещательном канале; / — минимакс, 2 — суперпозиция, 3 — разделение времени.Рис. 19. Множество достижимых скоростей в гауссовском широковещательном канале; / — минимакс, 2 — суперпозиция, 3 — разделение времени.
Рис. 19. Множество достижимых скоростей в гауссовском широковещательном канале; / — минимакс, 2 — суперпозиция, 3 — разделение времени.
Рис. 19. Множество достижимых скоростей в гауссовском широковещательном канале; / — минимакс, 2 — суперпозиция, 3 — разделение времени.
и они охватывают скорости, получающиеся при разделении времени.
Резюмируя рассмотрения, выберем множество 2п(С2<“,-8> случайных «-последовательностей н. о. р. с. в. У (0, aS) и множество 2'1(С‘<“)-8) случайных «-последовательностей н. о. р. с. в. jV(O,aS). После
этого 2"(C'<a,+C2(a,-E, «-последовательностей строятся с помощью сложения пар последовательностей, в которых первая последовательность выбирается из первого множества, а вторая последовательность — из второго множества, и эти пары выбираются всеми возможными способами. Сообщение
(г, st), ге(1,22n(C2(a,~e,}I s^tl, 22"(^,a,-E))
передается путем выбора ^-последовательности, соответствующей сумме г-й последовательности из первого множества и 8Гй последовательности из второго множества. Приемник 1 должен декодировать верно (г, si), а приемник 2 должен декодировать верно г, и, таким образом, одновременно достигаются скорости
(27)(27)7?1 = CY (а) + С2 (а) — 2е,
(27)
(27)
7^2== С2 (а) с,
что утверждалось в (26).
Исчерпывающее рассмотрение гауссовского канала увело бы нас в сторону. Непосредственное простое доказательство достижимости скоростей (27) было получено, но мы не будем приводить его здесь.
Закончим этот раздел одним замечанием. Если Ny = 0, так ^то канал 1 идеальный, то имеем Ci = оо и С2 = V2 log(l + S/N3).
Составной канал или максиминное приближение подразумевают передачу со скоростями (7?b R2) = (С2, С2). Однако сколь угодно малое уменьшение в скорости для канала 2, соответствующее 0 < < а С 1 в (26), приводит к (R^ R2") = (оо, С2 — е) как к паре достижимых скоростей. Хотя эта пара скоростей не мажорирует (С2, С2), она представляется более предпочтительной.
ВЕРХНЯЯ ГРАНИЦА ДЛЯ ДОСТИЖИМЫХ СКОРОСТЕЙ (Rb R2)
Предположим, что р(х) (распределение вероятностей на X) порождает пару взаимных информаций (Z(X| У^, /(Х|У2)), где
/=1, 2. (28)
Принимая во внимание свойства понятия взаимной информации, естественно предположить, что скорости Rx = I(X\Yx)) R2-=HX\Y2) одновременно достижимы. Оказывается, что это не так. (Контрпример можно получить при подробном рассмотрении примера двух ДСК из разд. 2 при Рг {х = 1} = 7г и /(Х| У^ = 1, ЦХ\ У2) = = С2.) Однако множество совместно достижимых пар взаимных информаций с соответствующей модификацией, при которой принимается во внимание возможность разделения времени и отбрасывания информации, все-таки дает верхнюю границу 9? для области пропускных способностей 91*. Эта верхняя граница в действительности достигается на ортогональном канале, канале с переключением разговора и на несовместных каналах.
Таким образом, мы подошли к тому, чтобы определить 91 и установить 9? в качестве верхней границы. Пусть
1=^ЦХ\У^ /(^|У2))|р(х)>0, Sp(x) = l} (29)
обозначает множество всех пар (7(Х|У1), /(Х|У2)), порождаемых р(х) при вариации р(-) в симплексе возможных распределений вероятностей на X. Определим / как выпуклую, оболочку /. Таким образом, I можно интерпретировать как среднюю совместную взаимную информацию, достижимую с помощью вариации р(*) во времени. Пусть
^ = №ь R2)eE2\Rx^Ib R2^I2)
для некоторых (7Ь /2)е/).(30)
Таким образом, 9? интуитивно соответствует совместной взаимной информации, достижимой из 7 при отбрасывании информации. Эти множества изображены на рис. 20. Покажем теперь, ^то 91* § ^
Лемма 1. При заданном произвольном ((А4Ь М2, М12), п\коде для п-го расширения широковещательного канала, состоящем из слов х (г, sb s2) еХп, re R, steSx, s2e S2, \ R\ = MX2, | 3, | = Мъ |S2| = A12, M = M12M1M2, пусть (r, sb s2) будет случайной величиной, принимающей значения на множестве RXStX S2. Пусть (jh, У^ ^ У? X ^2 — соответствующие случайные выходные п-после- довательности, принимаемые приемниками 1 и 2 при передаче x(r, sb s2) по каналу. Если рх^ = ^ \(^х» s1)#=(r1, sj} и р2(е)=
1(Х\Уг)и1(Х\Уг)иа imfyа imfyаа
1(Х\Уг)и
1(Х\Уг)и
а imfy
а imfy
а
а
Рис. 20. Верхняя граница Я для области пропускных способностей.
= Pr((/sb s2) ^ (гь ^г)!—вероятности ошибок при приеме этого кода, то •)
Н (X IУ0 < 1 4- log м2 4- Рх (е) log М12М„(31)
Н (X | У2) < 1 + log Mj + р2 (е) log М12М2.(32)
Доказательство. Пусть правила декодирования, соответствующие нашему коду, будут
g^"-RXSx,(33)
g2: Y^RXS2,
которые мы запишем в виде
gk М = (gki ^Ук\ gki (Ук^,& = 1, 2.
Таким образом, при заданном случайном сообщении (г, sb s2) и последовательности у^еУ^ приемник к будет совершать ошибку тогда и только тогда, когда
g\ (Si) #= (г, sO, к=\,
'.^(^^(Г, S2), к = 2.(34)
Таким образом,
Р\ (е) = Pr \gt (yi) ¥= (г, s,)),p2(e) = Pr (g2(y2) ^ (г, s2)).
’) Здесь Н (X |У/) —условная энтропия, Н^Х\¥д = — 2 5 Pt (^. У) X X log Pt (х | у). — Прим. ped..
Заметим, что
Н (Х\ух)^Н (рх(е\ух), \-рх(е\ух)Н
+ (1 — Pi (^ lyD) log М2 + pi (е |у,) log (М — М2),(36)
где были использованы неравенство
Н (аь а2, ..., am)< log m(37)
и основное композиционное соотношение (см. Эш [1, стр. 8]). Конечно, считаются заданными события gx (yi) = (г, Si) и gi(yi)¥= ^(r, Si). Взяв математическое ожидание по У" и используя выпуклость Н(р, 1 — р) по р, получаем
н (X | У,) < н (Р1 (е), 1 - Pl (е)) + (1 - р. (е)) log М2 +
+ P1(*)Iog(M-.M2).(38)
Наконец, так как Н (р, 1—р)^1 и М = МХ2МХМ2, имеем
Н (X | У,)< 1 + log М2 + pi (е) log (М - М2)/Мг <
< 1 + log Л12 + Р1 (^logM^Afp(39)
Соответствующие рассмотрения для H(X\Y2) завершают доказательство.
Нам понадобится следующая лемма (см. Эш [1, стр. 81]).
Лемма 2. Пусть Хх, ..., Хп — последовательность случайных величин на входе широковещательного (дискретного) канала (без памяти), а УцУы, У21 Y2n— соответствующие прини
маемые случайные величины на выходе каналов 1 и 2 соответственно. Тогда
1(ХхХ„1УМ, .... УыХ^ЦХЛУи), к=\Л,(40)
1=1
где равенство имеет место, тогда и только тогда, когда Yku Y^, Y^n независимы.
Доказательство. Имеем
Н(УИ, Yk2YkrJXb .... Хп) = — SPft(*. Уб)1о?Рд(Уб |х), но в силу того, что канал к является каналом без памяти, Рк(Ук\х) представляется в виде произведения Пр*(р^ |хг), давая
H(Yfex, ...Лкп\ХхХп) =
= ^1Рк(х, Ук)21Ь§рк(ум\х1)="51 H(YM\Xt).
X. yki=li=l
Используя теперь известное неравенство, получаем
H(YkxУ^^^НСУ»),
где равенство имеет место тогда и только тогда, когда Y kl независимы при i = 1, 2, ..., п. Так как I(X |У^) = H{Yk)—H(Yk |Х), то лемма доказана.
Теперь мы хотим показать, что р^^, /^(е) не могут одновременно стремиться к нулю для скоростей (/?ь R^^3L Это дает нам 91 в качестве верхней границы области пропускных способностей широковещательного канала.
Пусть /?i = (l/n)logMiMi2 и R2 = (IM)log M2Mi2 — скорости передачи в битах на посылку для приемников /1 и У2 соответственно. (Напомним, что /?i2 = logAli2 является скоростью передачи информации, общей для обоих каналов.) Доказательство очень напоминает то, которое было использовано Шенноном [4] для двухпутевого канала.
Теорема. Для любой последовательности [(2tt/\ 2nR\ 2nRx2Y п\- кодов при (Rx, R^^^ имеем
(^Че), р^^^\ ^-^(О, 0) п^оо.
Таким образом, 91 является верхней границей области пропускных способностей широковещательного канала.
Доказательство. При заданном произвольном [(Afi, М2, Mi2), п]-коде для n-го расширения широковещательного канала выберем кодовое слово x^r, sb s2) случайным образом в соответствии с равномерным распределением Pr (г, sb s2} = 1/Af, (г, Si, s2)e R X Si X S2, где M = | Z? | |Si||S2|. Если кодовые слова x^r, Si, s2) e Xn не являются различными, то для доказательства теоремы нужно лишь незначительно изменить приведенные ниже рассуждения. Поэтому, рассматривая случай, когда x(j, si, s2) различны, получаем //(X)=logM и ЦХ\У1) = log М — //(Х| Kj) при условии заданного равномерного распределения на кодовых словах. Как и в разд. 3, пусть р^Це) и р^ (е) обозначают вероятности ошибок для кода при этом распределении. Согласно лемме 2,
п
HXWxX^HXdYxiV(41)
Таким образом,
1 кХ | га = log М - Н (X IУ0 < 5 I ^ I Уи). ■ (42) <=1
Наконец, так как неравенство (31) в лемме 1 справедливо для любого распределения на кодовых словах, то, используя (31) и
(42), получаем
logM —1 — logM2 —p<">(e)logM12M,< SW IУн), (43) что дает основное неравенство
(!/«) +(1/п) 5/№|Уи)
=i 1о§ ^12^1 <’(44а)
Аналогично находим, что
(1/п) + (1/п) 5 / № | У2г)
R2 = -logMV2M2<—У-.(446)
Подводя итоги, получаем, что любой код для n-го расширения широковещательного канала должен иметь скорости (7?ь Т?2),
Рис. 21 Недостижимая пара скоростей (Ri, R2); заштрихованная область: {(7ь 72) | 7) < R2 или 12 < Т^г}*
удовлетворяющие (44а) и (446), где
iW=4 2 Xilr’ s- s2)> ^^ 2-(45)
r. Sb s,
Предположим теперь, что (RY, R2)^%i, Ri^O, R2"^0, как изображено на рис. 21. Покажем, что ^п)(е), /=1, 2, не могут быть одновременно малы. В силу выпуклости 34 и того, что / s 34, получаем пп\
I^^^I^h). ^7(А|У2а е341=1/=1/
для всех р(х\ Следовательно, как показано на рис. 21, либо п
l^^^l^X^id-d),(46а)
либо
п
1^ЦХ\У^<Кг(Д-^,(466)
<=1
где 6 > 0 — любое неотрицательное действительное число, такое, что (1 — d)^, 7?2)^SR.
Но (44) при i=l, 2 означает, что
№)"21цх\уи')
р^ (е) > 1 _ >м .(47)
Второй член правой части в (47) стремится к нулю с ростом п, а третий должен быть меньше, чем (1—д), либо при /=1, либо при i = 2, либо в обоих случаях. Поэтому
lim шах 1р^ (е), р^ (е)} ^ д > 0,(48)
П->ОО
и, следовательно, р\пЧе) и р^Це) не могут одновременно быть близкими к нулю. Точно так же из того, что вероятность ошибки для наихудшего кодового слова в каждом канале подчиняется неравенству Х^^р^^е^ Z=l, 2, можно заключить, что если (Ль Л2)^^, то не существует последовательности ((2n/?1, 2nRS 2nRu\ л)-кодов для широковещательного канала, такой, что (х\п^ А^-^О, 0).
СОСТАВНЫЕ КАНАЛЫ
Пусть Pp(z/]x), Р е 93, представляет собой возможно бесконеч* ную совокупность переходных вероятностей для канала. Индекс р выбирается природой, и последовательность п посылок хь х2, ... ..., хп передается приемнику по дискретному каналу без памяти Р^у\хУ Индекс р неизвестен посылающему, но может (без потери общности) предполагаться известным приемнику. (Простая передача Vn заранее указанных символов среди п посылок позволит приемнику определить р со сколь угодно малой вероятностью ошибки при конечном 93, и это не повлияет на величину достижимой скорости Л.) Вольфовиц [2] и Блекуэлл и др. [5] определили пропускную способность С составного канала как
С = Cmax min ===: Slip inf Та ^Х | У).(49)
Эта скорость С достигается при конечном 93 с помощью использования кода для канала р*, такого, что
С = тах1^ЦХ | У).(50)
Максимальная скорость С достигается тогда независимо от значения индекса 0.
(51)(52)(51)(52)Рассмотрим теперь линию связи, в которой неизвестно, будет ли эта линия бесшумным двоичным симметричным каналом или двоичным симметричным каналом с параметром р. Это значит, что описание канала Рр(у|х), 0 = 1, 2, задается в виде
(51)
(52)
(51)
(52)
Для этого составного канала находим, что
С=1-Щр\
Рис. 22. Множество достижимых скоростей для составного канала; / — минимаксная скорость, 2 — другие допустимые скорости.Рис. 22. Множество достижимых скоростей для составного канала; / — минимаксная скорость, 2 — другие допустимые скорости.С точки зрения настоящей работы мы определили множество 81* всех достижимых пар скоростей (/?ь /?2) для обоих заданных каналов (см. рис. 22). Это дает полный спектр достижимых скоростей при различных случайных выборах, осуществляемых природой.
Рис. 22. Множество достижимых скоростей для составного канала; / — минимаксная скорость, 2 — другие допустимые скорости.
Рис. 22. Множество достижимых скоростей для составного канала; / — минимаксная скорость, 2 — другие допустимые скорости.
Таким образом, например, если известно, что
Рг (0=1}=Л1 = 1 — Рг(0 = 2},
(53) то можно найти максимальную ожидаемую скорость
R (nJ = max ^n.xRx + л2Т?2).
(Яь /?2)еЭ1*
Интерпретация ее состоит вИнтерпретация ее состоит в(54) том, что при использовании нало
Интерпретация ее состоит в
Интерпретация ее состоит в
женных кодов из разд. 2 можно достичь средних скоростей
R (nJ = max [С (ар + ар) + л^ (а)],(55)
0<а<1
соответствующих точкам на границе 81*. Эти средние скорости строго больше, чем средние скорости, достижимые при разделении времени (кроме случая вырожденного распределения Л1 == О или 1). Наконец, часть сообщения со скоростью С (ар + ар) будет уверенно принята независимо от того, какой канал был выбран природой.
Эти рассмотрения предполагают, что задачи, связанные с составными каналами, могут быть исследованы также с точки зрения широковещательных каналов, если интерпретировать распределение вероятностей по параметру 0 как распределение вероятности по номеру приемника, выбираемого в задаче широковещательного канала со многими приемниками. При этом рассмотри
ние области пропускных способностей 9?* даст все достижимые распределения вероятностей на скоростях для составного канала. После этого можно выбрать самое лучшее распределение.
ЗАКЛЮЧЕНИЕ
Пусть, как и ранее, областью пропускных способностей 91* будет множество всех совместно достижимых скоростей (/?i, Rs)
Рис. 23. Границы для области пропускных способностей 91*.Рис. 23. Границы для области пропускных способностей 91*.для заданного широковещательного канала с двумя приемниками. Теперь нам известно следующее. Имеется некоторая теоретически определенная область 91, порождаемая (/(Х|У1) ^(X|У2)) и приведенная в разд. 8, которая дает верхнюю границу для 91*. Кроме того, с помощью простого разделения времени строится внутренняя граница, скажем, 910 Для
Рис. 23. Границы для области пропускных способностей 91*.
Рис. 23. Границы для области пропускных способностей 91*.
91*, как изображено на рис. 23.
Иногда эти границы совпадают,
как это имело место в случае несовместных каналов. При этом 91 = 9t0 = 91*. В других примерах,
таких, как ортогональные каналы, в которых границы не совпадают, простыми рассуждениями было показано, что верхняя граница может быть достигнута и, следовательно, что 91 = 91*. Во многих промежуточных случаях (например, в случае двух ДСК в разд. 2) у нас имеются разумные основания считать, что наши специальные коды достигают границы 91*, хотя доказательства обращений кажутся трудными.
Рассмотрение этой задачи стало целесообразным из-за того, что почти всегда с помощью соответствующим образом выбранного способа кодирования можно достичь скоростей 91*, строго больших тех, которые достигаются при простом разделении времени.
Главное соображение, к которому приводят эти исследования, состоит в том, что высокие совместные скорости передачи лучше всего достигаются при наложении высокоскоростной и низкоскоростной информаций, а не при использовании разделения времени. Рассказы, содержащие целый ряд уровней символизма, служат одним из примеров способа передачи, который допускает множество различных уровней восприятия со стороны различных людей.
Мне хочется поблагодарить Д. Сагаловича и К. Кейлерса за многочисленные полезные обсуждения этой статьи. Д. Сагалович помог также улучшить доказательство верхней границы, а К. Кей- лерс оказал помощь при составлении некоторых примеров. Я также получил пользу от обсуждений с П. Бергмансом и А. Д. Вайнером.
ПРИЛОЖЕНИЕ
Здесь мы докажем главный результат из разд. 2. Пусть С(р) = = 1-Я(р).
Теорема. В широковещательном канале из разд. 2 с ДСК, параметры которых рх = 0 и р2 = р, соответственно достигаются скорости (/?ь R2) = (С (ар + ар) + //(а), С(ар+ар)) при любом 0<а<1.
Доказательство. Пусть MX2 = 2nRn и Мх = 2n(Rl^Rl2)— целые числа, и пусть R2 = RX2, M2 = 2nRu. Рассмотрим следующий случайный код. Пусть x(r^ г е R = {1, 2, ..., М^Гбудут п-после- довательностями н. о. р. в множестве Хп = {0, 1}п, где х(г) выбираются в соответствии с равномерным распределением на Хп. Пусть при а < 7г величина ап будет целым числом, и пусть z(s), s^S = {l, 2, ..., MJ представляет собой нумерацию всех п-по- следовательностей г^ {0, 1}п, таких, что
п
5 2г = ап.
Всего имеется
^ап = 2п^н ^+0 ^1п п^п^
таких последовательностей. Положим *(r, s) = х(г) ф z(s), где сложение векторов производится покомпонентно по модулю 2. Без потери общности положим р < */2-
Правило декодирования gv. Y"—> RXS для n-го расширения для приемника 1 состоит в выборе значений feR, seS, таких, что ух=х(г, §\ Будем говорить, что произошла ошибка, если имеется более чем одно значение пары (h s), для которой это справедливо. (Так как канал 1 бесшумный, то событие, состоящее в том, что такая пара (f, S) не существует, не имеет места).
По правилу декодирования g2: Y"-*R для канала 2 решение выносится в пользу значения reR, такого, что d(y2, *(f))^ ^ п (ар + ар) + пе при заданном е > 0, где d— хэмминговское расстояние. Ошибка в канале 2 будет происходить, если имеются более чем одно или если нет ни одного такого значения reR.
Выберем теперь сообщение (г, s) с вероятностью l/AfiAfi2 и найдем математическое ожидание суммы вероятностей ошибок E(pi (в) + pz(e)} (см. (9), (10)), где математическое ожидание берется по случайному коду, определенному выше.
В силу того, что канал 1 является идеальным (т. е. yx=x(r, s)), ошибка при декодировании в канале 1 возникает, только если сам
(случайный) код приписывает некоторый другой номер (г', s') той «-последовательности, которая имеет номер (г, s).
В силу симметрии процесса построения кода можно рассматривать лишь передачу х(1, 1). Таким образом,
Е^ (е) = Рг {х (г, s) = x(l, 1) для некоторой пары (г, s)#=(l, 1)},
(57)
где вероятность определена на кодах при случайном выборе.
Теперь х(1, 1) = х(1, s) означает, что z(l) = z(s), что невозможно при любом s^ 1 в силу построения z(s). Таким образом, единственной возможностью ошибки является условие х(1, 1) = = х (г, s), г =7^1, seS. Но г =^ 1 означает, что х(г, з) и х(1, 1) являются независимыми равномерно распределенными «-последовательностями в (0, 1)". Таким образом, при r^ 1 имеем
Рг[х(1, 1) = х(г, з)} = 2~".(58)
Используя это вместе с границей для объединения событий, получаем
Ер^еХ 2 Рг(х(1, l) = x(r, з)Х
(Г. S)^(l. 1)
< М1М122~" = 2"" ^-^ ->0, Rt< 1.(59)
Таким образом, Е [pi(e)) -*0 при п-»оо, если ^<1, ив этом случае из конструкции следует, что
Я1 — Rto = (log М^]п = H<a} — 0 [(In «)/«].(60)
Рассмотрим теперь канал 2. Пусть e = (eu е3е„)—двоичный «-вектор н. о. р. бернуллиевых с. в. с параметром р. Таким образом, можно записать у2 = х(г, з)фе и
у2 = х(г)фг(з)фе.(61)
Ошибка при декодировании может произойти в одном из двух случаев. Ех: верное значение г=1 не удовлетворяет неравенству
d(y2, х(1)Х«(ар + ар) + «е,(62)
и Е^. существует номер r#= 1, г г R, такой, что
d кУъ * (г)) ^ " (ар + ар) + «в.
Таким образом, 5{р?(е)ХРг (Е,} + Рг(Е3),(63)
где вероятности учитывают случайность выбора кода и случайность выбора (г, s). Из (61) имеем
Pr {fj = Pr (d (у.,, х (1)) > п (ар + ар + е)) =
п
= Рг= Рг(64)(64)■^ 2z(s)i®ei > ар + ар + е
= Рг
= Рг
(64)
(64)
/=1
Найдем математическое ожидание (по е и s)
пп
^2z(s)z®ezZ== n" S Рг l^^1’ ^ — О, о) или (0, 1)} 1=1i=i
п
= 7 2= “Р + “Р-(65)
После некоторых вычислений имеем также
var7 Sz(s);®e^ V"-var7 Sz(s);®e^ V"-(66)(66)
var7 Sz(s);®e^ V"-
var7 Sz(s);®e^ V"-
(66)
(66)
Это означает, что d(y, *(г))-»ар + ар по вероятности, и, следовательно, Рг {£,}-► 0 при га->оо.
Осталось оценить Рг{£2). Запишем
Pr (£3) < Pr (d (х (г), у^ < п (ар + ар + в),
для некоторого г^1 | передано *(1)}^
<2"^Pr[d(*(2), р2)< «(ар + ар + в)}.(67)
Но
d(x(2), у2) = ^(*(2)е*(1)фг(5)ев),(68)
где да/ обозначает число единиц в двоичной п-последовательности, а *(2) и *(1) являются независимыми бернуллиевыми «-последовательностями с параметром 1/2. Таким образом, для любого е > 0 имеем
Рг (jE } '^ 2п^и2П^ (^Р+^Р)+О f(In п)/п]+е,)2“-л(69)
где 2"(/w+ap,+0 Kin^MJ-i-8'» обозначает число точек
n(ap4-ap+8z)2 с'/=0
В декодирующей сфере вокруг уг. Следовательно, если
R12 < 1 — Н (ар + ар) — е',^
то Pr^l^O при п~>оо. Используя (60) и (70), йолучаем, что если
#2 = #12 < 1 — Н (ар + ар\(71)
Rv<H(aWR2=X-H(ap + apHH(a), то
Е ^р (е) + р№ (б)] = Е ^ (в)} + Е {р™ (е)} - 0.(72)
Так как наилучший код ведет себя лучше, чем средний, то существует последовательность [(2^, 2nR\ 2nRu\ nJ-кодов, n=l, 2, ..., со скоростями
Ri = С (ар + ар) + Н (а) — е,
R2 = С (ар + ар) — е,(73)
такая, что
р)" (е) + рМ (е)0,(74)
и, таким образом, р^ (е) —>• 0, р*^ (е)-*0.
Вычислив предел (R^ R^ при s->-0, мы завершим доказательство теоремы.
СПИСОК ЛИТЕРАТУРЫ
Ash R. В., Information Theory, New York, Interscience, 1965.
Wolfowitz J., Coding Theorems of Information Theory, 2nd ed., Berlin, Springer, and Englewood Cliffs, N. J., Prentice Hall, 1964.
Shannon С. E., A mathematical theory of communication, Bell. Syst. Tech. J., 27 (1948), 379—423 (pt. 1), 623—656 (pt. 2); Urbana, Ill.; Univ. Illinois Press, 1949. 4
Shannon С. E., Two-way communication channels, in Proc. 4th Berkeley Symp. Probability and Statistics, I, Berkeley Calif., Univ. California Press, 1961, 611— 644.4)
Blackwell D., Breiman L, Thomasian A., The capacity of a class of channels, Ann. Math. Statist.^ (1959), 1229—1241.
Shannon С. E., A note on a partial ordering for communication channels, Inform. Contr., 1 (1958), 390—397. 9
Верхняя граница числа К дляпоследовательностных машинбез потери информации порядка АГ°
Яхико Камбаяси и Сузо Ядзима
ВВЕДЕНИЕ
Последовательностная машина называется машиной без потери информации порядка к, если к — наименьшее целое число, такое, что начальное состояние и первые к выходов однозначно определяют начальный вход. Необходимое и достаточное условие, при котором последовательностная машина является машиной без потери информации порядка к, дано Ивеном [1]. Используя его результат, можно показать, что для машин с п состояниями й^ ^(V2)n(n—1)+L однако машина, для которой эта оценка достигается, не была получена. В настоящей статье будет показано, что для любого п существует последовательностная машина с п состояниями, для которой верхняя граница достигается.
Последовательностная машина типа Мили может быть определена как система, состоящая из S, X, У, 6 и X, т. е. М = = (S, X, У, 6, X), где S = {si, s2, ..., sn} — конечное множество состояний, X = (xi, х2, ..., хр} — конечное множество входных символов, У = {yi, у2, ..., yq^ — конечное множество .выходных символов, 6 — функция переходов и X — функция выходов, удовлетворяющие следующим равенствам:
slt+ 1) = 6(s(0,(1)
^(0 = ^(s(0, х^,(2)
где s(0, ^(0 и у^— состояние, вход и выход в момент времени / (/ принимает целочисленные значения).
Определение 1 (Хаффмэн [2]). Последовательностная машина называется машиной без потери информации порядка к, если к — наименьшее целое число, такое, что начальное состояние и первые к выходов однозначно определяют начальный вход, т. е.
X^t— ^ = §^^1— 1), у (t — &), s (t — k)).(3)
Если последовательное соединение машин М и М' соответствует линии задержки длительности к, то М' называется квази- обратной для М с задержкой к. Для любой машины М без по-
*) Yahiko Kambayashi and Shuzo Yajima, The upper bound of К in /(-lossless sequential machines, Information and Control, 19, № 5 (1971), 432—438.
тери информации порядка к существует квазиобратная машина М' с задержкой h^k — 1. Квазиобратная машина с задержкой О называется обратной машиной.
Последовательностная машина называется машиной без потери информации, если каждый раз входная последовательность определяется начальным состоянием, заключительным состоянием и выходной последовательностью. Очевидно, что машина без потери информации порядка к является машиной без потери информации. Однако известно (Хаффмэн [2]), что существуют последовательностные машины без потери информации, не имеющие ква- зиобратных последовательностных машин. .
ВЕРХНЯЯ И НИЖНЯЯ ГРАНИЦЫ ЧИСЛА кДЛЯ МАШИН БЕЗ ПОТЕРИ ИНФОРМАЦИИ ПОРЯДКА к
В этом разделе обсуждаются верхняя и нижняя границы числа к для машин с п состояниями без потери информации порядка к.
Определение 2. Граф пар GO(A1) последовательностной машины М состоит из следующих частей:
Вершина для каждой неупорядоченной пары (S{, Sj) = = (Sj, sb).
Если d(Si, x) = sh, 6(Sj, x') = sn, K(sit x) = у и Х^, x') = y, где x и x' могут и совпадать, то существует дуга из вершины (Si, sj в вершину (sh, s^.
Обозначим через G(A4) множество вершин ($i, Sj) графа G0(A4), таких, что существуют sh е S и х, xz е X, х =# х', для которых Si = б (s^, X) , Si = б (sh, х), Sj = б (sh) х'), X ^sh, х) = X ^sh, х').
Теорема 3 (Ивен [1]). Последовательностная машина М является машиной без потери информации тогда и только тогда, когда граф G^M), полученный из G0(M) отбрасыванием всех вершин, недостижимых ни из какой вершины множества G(M), не содержит вершин-пар одинаковых состояний, т. е. вершин вида (Si, Si). '
Теорема 4 (Ивен [1]). Последовательностная машина М является машиной без потери информации порядка к тогда и толькб тогда, когда выполняются следующие условия*.
1) М является машиной без потери информации.
2) Граф G^M) не содержит контуров, и путь наибольшей длины в нем содержит к — 1 вершин.
Так как для любой последовательностной машины М с п состояниями граф Go(M) содержит Qj^n^n— 1) вершин1), то справедливо
Авторы имеют в виду, что граф 60(Л1) для машины без потери информа* Ции содержит не более (1/2)п(п— 1) вершин. — Прим, персе.
Следствие 5. Если последовательностная машина с п состояниями является машиной без потери информации порядка k, то к удовлетворяет неравенству
\<,к«\1^п^п— 1)+ 1.\<,к«\1^п^п— 1)+ 1.(4)(4)
\<,к«\1^п^п— 1)+ 1.
\<,к«\1^п^п— 1)+ 1.
(4)
(4)
Путем построения соответствующих машин можно показать, что эти границы являются строгими.
Теорема 6. Для любого п существует последовательностная машина с п состояниями без потери информации порядка Ql^n^n— 1) + 1 с 3 входными и 6 выходными символами1).
Таблица 1
Вход
0'
1
2
1
2,
0
з,
1
2,
4
2
3,
0
4,
1
3,
4
/
1+1,
6
/ + 2,
i
/+1,
4
[n/2]- I
[п/2]
6
[п/2]‘ + 1
, i
[п/2],
4
п/2
+ 1,0
1,
3
2,
3
[п/2] + 1
п/2
+ 2, 0
[п/2] + 2, 2
[п/2] + 2, 4
/
/+1.
6
/+1.
2
/+1,
4
м — 2
п -
-1,
6
п — 1,
2
п — 1,
4
п — 1
1
п,
0
п,
2
п.
4
п
1,
1
1,
2
1,
5
Текущие состояния
Следующие Выход состояния
Доказательство. Покажем, что машина М, определенная с помощью табл. 1, является машиной без потери информации порядка ^1^)п^п— 1)+ 1. В табл, через [х] обозначена целая часть числа х. Для простоты s< обозначается как i. Очевидно, что мно-
Теорема справедлива при п ^ 3 При п = 1, 2 легко могут быть построены таблицы соответствующих машин с 2 входными и выходными символами,— Прим, перев.
жество С(Л1) состоит из единственной вершины (1, 2). Так как нет пары состояний (/, /) (/¥=/), удовлетворяющей условиям
Зх, х'^Х, 6(i, х) = 6 (/, хх), ХЦ, x) = X(j, xz),
то ни из одной вершины (i, /) (i =# /) не проходит дуга в вершину- пару одинаковых состояний. Таким образом, М является машиной без потери информации. Остальные части доказательства следующие:
В С0(Л1) существует путь, начинающийся в вершине (1,2) и содержащий все вершины.
В Go(M) нет контуров.
Распределим дуги графа пар Go(-M) по следующим типам. [Тип I] Дуги, соответствующие выходам 0 и 4, т. е.
6(t„ х) = к,
X (Zb х) = Л Qt, х') — 0 (или 4).
Этот тип дуг соединяет вершины следующим образом:
(Z./)-*(<+1,/+1),<i<j<n).
Число дуг этого типа равно
(п—1)(п —2)
2•
[Тип II] Дуги, соответствующие выходу 1, т. е.
x) = Z2, 6(/bx,) = /2,
Цц, x) = X(/b х')= L
Этот тип дуг соединяет вершины следующим образом:
[П-а] (Z, п)->(1, Z + 2)0<Ю’
[П-b] (Z, h-^U + 2,/ + 2)(*</<Щ).
Число дуг типа [П-а] равно
[Тип III] Дуги, соответствующие выходу 2, т. е. 6(Zbx) = Z2, d(/b x') = j2, A(Zb х) = Л(/ь x') = 2.
Этот тип дуг соединяет вершины следующим образом:
[Ш-а] (Z, n)-(l, Z+1)^ty<i<n)j
[III-b] (Z,j)^(Z+1./+1)([y<z<j<n).
Число дуг типа [Ш-а] равно
L 2 J ь
Любая дуга графа принадлежит одному из вышеуказанных типов. Покажем, что дуги типов I, П-а и Ш-а образуют путь, содержащий все вершины (i, /) (i = /), т. е.
РЦ-4-п) <ТипРЦ-4-п) <Тип
РЦ-4-п) <Тип
РЦ-4-п) <Тип
(1, 2)->-(2, 3)-> ... -
>^п— 1, и)
(Тип I)
(п — 1, п)-*(1, п)
(Тип Ш-а)
(1, «)->(!. 3)
(Тип П-а)
(1, 3)-*(2, 4)-> ... ->
► (п — 2, п)
(Тип 1)
(га —2, п)->(1, п— 1)
(Тип Ш-а)
(1, п— 1)->(2, и)
(Тип I)
(2, п)-(1, 4)
(Тип П-а)
(1, 4)->(2, 5)-> ... ->(п —3, и)(Тип I)
Такой путь при п = 8 показан на рис. 1. Так как общее число дуг этих типов равно
^У^+[у -1 + [i±J-] -i=|«(«-u-i,
то все вершины содержатся на этом пути. Остальные дуги — типа П-b и Ш-b. Так как любая дуга типа П-b соединяет вершины, которые соединены двумя дугами типа I, и любая дуга типа Ш-Ь соединяет вершины, которые соединены дугой типа I, то граф пар не имеет контуров. Таким образом, М является машиной без потери информации порядка ^^^(п — 1) + 1, ч. т. д.
Покажем, что любая последовательностная машина с п состояниями. без потери информации порядка к, для которой достигается верхняя граница числа к, является минимальной.
Допустим, что существует последовательностная машина с п состояниями без потери информации порядка к, для которой достигается верхняя граница числа к и которая не является мини-
малиной. Тогда мы можем получить эквивалентную последовательностную машину с п' состояниями (д'<п). Так как обе машины осуществляют один и тот же оператор, то обе являются машинами без потери информации порядка Ql^n^n — 1) + 1.
Таким образом, существует последовательностная машина с nf состояниями без потери информации порядка Ql^n^n — 1) + 1, что противоречит условию (4). Что касается нижней границы, то очевидно, что для любых положительных целых чисел п, р и
Рис. I. Граф пар для последовательностной машины с 8 состояниями без по-тери информации порядка 29.
9 (9^/0 существует минимальная последовательностная машина с п состояниями без потери информации порядка 1 с р входными и 9 выходными символами. Следующая машина является одним из примеров.
Пусть {Вь В2, ..., Вр} — разбиение множества У. Функцию переходов определим следующим образом:
хе X, sl+i = 6(sh х), s! = 6(sn, х\
Функцию выходов определим таким образом, что существуют только одно состояние st и два входа Xj и х^ удовлетворяющие условиям
Х^ч, х^еВь K(slt х^еВр
а во всех остальных случаях X(s, x^eBh.
Можно сделать вывод, что для любого п существует минимальная последовательностная машина с п состояниями, удовлетворяющая границам (4).
Авторы выражают благодарность профессору К. Маэда и профессору Т. Кийоно из университета Киото за поддержку данного исследования.
СПИСОК ЛИТЕРАТУРЫ
Even S., On information lossless automata of finite order, IEEE Trans. Electronic Computers, EC-14, № 4 (1965), 561—569.
Huffman D. A., Canonical forms for information-lossless finite-state logical machines, IRE Trans. Circuit Theory, CT-6, Spec, suppl., (1959), 41—59.
Kambayashi Y., Yajima S., Finite memory sequential machines and information lossless sequential machines, Report A-6, Data processing center, Kyoto University, Kyoto, Japan, 1971,
Синтаксис и семантика с точки зрениятеории категорий0
Д. Б. Бенсон
ВВЕДЕНИЕ
Томпсон [15] предложил некоторое понятие семантики для формальных языков, порождаемых полутуэвскими системами, в котором вывод интерпретируется функцией. Такие же семантические понятия для контекстно-свободных языков и, в частности, при построении компиляторов использовались Кнутом [8]. Эти семантические понятия тесно связаны с семантикой исчислений (см. [1]). В теории моделей для логических исчислений интерпретации осуществляются в системах отношений и некоторые совокупности интерпретаций играют особо важную роль.
В языках программирования и в теории формальных языков семантика — это некоторая операция или функция над определенными множествами. Например, переработка информации или обращение к подпрограмме и ее выполнение являются такими операциями. Понятие истинности не является при этом основным, однако классы интерпретаций все же полезны.
Хотц [7] (см. также [13]) предложил использовать теорию категорий для изучения структуры выводов, налагаемой на формальный язык системой подстановок, порождающей этот язык. Категорный подход привлекателен своей ясностью. Структура выводов, называемая здесь синтаксисом, является определенным типом категории, порождаемой полутуэвской системой. Богатство синтаксиса с точки зрения выводимости зависит от цели исследования, как видно из следующего абзаца. Область семантики — это категория множеств и функций. Интерпретации синтаксиса являются кофункторами из синтаксиса в область семантики, строящимися с помощью сопоставления функций каждой продукции полутуэвской системы. Автор заметил здесь явную связь с «теориями» Лоувера (см. [13]).
Более подробно, объектами синтаксиса являются цепочки букв некоторого фиксированного алфавита и, если угодно, только те цепочки, которые выводимы из аксиомы полутуэвской системы. Морфизмы — это выводы одной цепочки из другой. Если выводы чисто синтаксические, или свободные, то считается, чтр между
9 Benson D. В., Syntax and semantics: a categorical view, Information an4 Control, 17 (1970), 145—160.
ними делаются несущественные различия. Можно сказать, что структура выводов слишком богата. Хотц [7] и Гриффитс [6] исследовали этот вопрос, рассматривая некоторое отношение между свободными выводами, называемое подобием. Доказано, что это отношение является отношением эквивалентности при более общих условиях, чем понадобятся нам. Действительно, оно является конгруэнтностью для операции композиции морфизмов. Классы эквивалентности Хотц также называет выводами. Семантическая теория показывает, что это вполне удобно, так как можно поставить в соответствие конгруэнтностям выводов классы интерпретации, подобно тому как делается в алгебраической логике. Показано, что отношение подобия соответствует классу всех интерпретаций.
Можно изучить даже более бедные системы выводов, ставя в соответствие меньшим классам интерпретаций большие классы эквивалентности. В качестве применения этой теории в данной статье исследуются три различных понятия контекстных систем. Каждая разновидность определяется в литературе без семантики. Эти разновидности мы получим, рассматривая сужающиеся подклассы интерпретаций.
ОБОЗНАЧЕНИЯ И ТЕРМИНОЛОГИЯ
Категория — это совокупность объектов и совокупность морфизмов. Морфизмы с областью определения а и образом b обозначаются а-^Ь или снабжаются меткой, например, х:а-*Ь. Множество морфизмов с областью определения а и образом b обозначается («,&). Для каждого объекта а в (а, а) имеется по крайней мере один морфизм — тождество на а. Если х^^а, Ь), у^(Ь,с), то произведение ух содержится в (а, с). Произведение морфизмов ассоциативно. Функтор из одной категории в другую — это пара функций: функция объектов отображает объекты в объекты, а функция морфизмов отображает морфизмы в морфизмы, сохраняя тождества и произведения морфизмов. Точные определения можно найти у Маклейна и Биркгоффа [9], Митчелла [10], Фрейда [4] или Кона [1]:
Строчными греческими буквами обозначаются цепочки в алфавите Л. Исключениями является 0, обозначающая пустое множество, а также е, обозначающая принадлежность классу. Пустая цепочка обозначается через X. Множество всех цепочек обозначается через Л*, множество всех непустых цепочек через Л+= == Л* — {X}; N = {0, 1, 2 ...} — множество натуральных чисел.
Полутуэвская система, как она рассматривается в этой статье,—это упорядоченная тройка объектов G =(Л, Р, 6), где Л— алфавит, Р — множество продукций, т. е. конечное бинарное отношение на Л+, а а — аксиома G, о ^ Л+. Члены множества Р за»
писываются в виде а->р, что согласуется с общепринятой терминологией и с нашим намерением рассматривать их как морфизмы некоторой категории.
Определение вывода, приведенное ниже, отличается от общепринятого и эквивалентно определению Гриффитса [6]. Решающим фактом является то, что так определенные выводы несут достаточную информацию, чтобы полностью и однозначно восстановить операции подстановки. Кроме того, используемая здесь особая форма выводов обладает теми преимуществами с алгебраической точки зрения, что подвывод является выводом, естественная композиция выводов снова представляет собой вывод и, если 0—>ф— вывод, то это же можно сказать и о его распространении с помощью р и v— pOv—> цфу. Более того, выводы длины 0 естественным образом ставятся во взаимно однозначное соответствие цепочкам, образуя категорию тождеств, а продукции естественным образом совпадают с некоторыми выводами длины 1. Читатель, удовлетворенный приведенным выше описанием и не заинтересованный в подробностях, может пропустить дальнейшую часть этого раздела.
Выводом из 0 в ф называется упорядоченная тройка конечных последовательностей. Первый ее член является доказательством [12], т. е. последовательностью цепочек, получающихся друг из друга с помощью подстановок. В литературе по теории формальных языков обычно называют выводом одну эту последовательность. Второй член тройки является последовательностью продукций, применявшихся при переходе от одной цепочки к другой. Третий член является последовательностью левых и правых контекстов, в которых применялись эти продукции.
Определение 2.1. Выводом из.0 в ф называется упорядоченная тройка объектов
((0О, ..., 0„), (г0, . . ., Г„_]), (Ио — Vo, ...» Ц„_1 — vn_,)) для некоторого neN, такая, что 0О = 0, 0п = ф и для всех Кп имеем 0z = p.zazv(, 0г+1 = ргрг^, где rt=ai->^sP,
Определение 2.2. Если
^i = ((0oО»),(го, г„_!), (цо — v0, ..., Цп-1 —V„_]))
— вывод из 0 в -ф, а
х2~ ((Фо, •••> Фт)» (?0, •••» Ят—1)> («0— Ро> Лт-1“ Pm—1)
— вывод из ф в £, то произведением х, и х2, которое мы обозна* чаем х2хь называется вывод (d, г, с) из 0 в |, такой, что
d = (0o, ..., 0„, -ф,ф„), г = (г0г„_ь 90, ..., <7т-1)>
£ = (Но Vq, . .., Цп—1^л—b Л0 ро, ..., Лт—1 Рт—1)«
Определение 2.3. Вывод x2 = (d, г, с) из |i0v в p,Tpv называется (ц, v)-pacnpocTpaHeHneM вывода X! = ((0О, .0J, q, (л0 — р0, ..., л^— pn-i)) из 0 в ф тогда и только тогда, когда d = (p0ov, ..., p0rtv), r = q, с = (р,л0 — pov, .№_t —prt_!v).
Определение 2.4. Вывод длины О ((0),(),()) называется 0-тождественным выводом.
Определение 2.5. Вывод длины 1 ((а, Р), (а -> Р), (X — X)) называется (а —> Р) -выводом.
. 3. СИНТАКСИС
Будут определены три категории, называемые синтаксическими. Каждая из них описывает структуру свободных выводов, G-индуцируемую в Л+. Основная категория, F, является G-индуцируемой алгеброй отношений, рассматриваемой как категория. Объектами F являются все цепочки из Л+, а множество морфизмов (0, ф)— это множество выводов из 0 в ф. F — категория, поскольку (i) композиция выводов, которая ассоциативна, совпадает с произведением морфизмов и (и) для каждого объекта 0 0-тождественный вывод является в категории тождеством для 0 по отношению к операции композиции выводов.
Для всякой продукции из Р а-*р (а —> Р) -вывод длины один является и морфизмом с областью определения а, и образом р, и применением продукции а—► р. Мы намеренно не будем различать такой, морфизм и продукцию а—► р, так что продукции будут рассматриваться как морфизмы категории F.
Для всякого морфизма категории F х:0—>ф и всякой пары объектов ц, v существует единственный морфизм категории F |10v->цфv, являющийся (ц, v)-распространением х. Распространение х преобразует 0 в ф, а ц и v остаются неизменными в ходе вывода.
Морфизмы называют выводами, если хотят подчеркнуть лингвистическую структуру. Категория F представляет лингвистический интерес, поскольку позволяет определить следующую подкатегорию.
Синтаксис А — это полная подкатегория категории F, такая, что (0, ф) является множеством морфизмов А в том и только в том случае, если (о, 0) в F непусто. Объекты А восстанавливаются по тождествам, попавшим в А, и являются цепочками из Л*, выводимыми из аксиомы о.
Если разбить алфавит Л на непересекающиеся алфавиты / и £, внутренний и внешний соответственно, то внешний синтаксис Е можно определить как полную подкатегорию синтаксиса А, такую, что (0. ф) является множеством морфизмов синтаксиса Е в том и только том случае, если имеется со е £+, такая, что (ф, со) не-
пусто в А. Цепочки из Е+, являющиеся одновременно объектами синтаксиса Е, образуют язык грамматики G в обычном смысле. Термин «внешний» используется, чтобы избежать путаницы с термином «терминальный» из теории категорий. В дальнейшем внешний синтаксис рассматриваться не будет.
Следующие утверждения получаются сразу же. Если G моно- генна, то А упорядочена. Грамматика G без зацикливания тогда и только тогда, когда для каждого объекта 0 из А (9, 9) состоит из одного тождества. Если . Р — бинарное отношение на (Л+ —Е+)Х^+, то всякий морфизм для А, образом которого является член Е+, является эпиморфизмом. В общем случае А не имеет терминальных объектов.
СЕМАНТИКА И ИНТЕРПРЕТАЦИИ
В качестве области семантики берется некоторая фиксированная категория множеств и функций S, в которой имеются прямые произведения. Взятие прямого произведения рассматривается как ассоциативная операция. При этом распространение функции определяется следующим образом: если W, X, Y и Z — множества, a f: X~*Y — некоторая функция из X в У, то Л W X X X z -^W X ¥ X X является распространением f, сохраняющим W и Z, тогда и только тогда, когда t действует на Y как f и действует как тождественная функция на W и Z, т. е. t является распространением Д если следующие три диаграммы коммутативны (не отмеченные буквами стрелки обозначают проекции).
WxXx zi-w v Ух
WxXx Z^WX YxZ
W
Wx Xx Z-X W x YxZ
Интерпретация синтаксиса А — это кофунктор /: A->S, переводящий цепочки в произведения, а выводы — в функции. Это будет легче представить, если рассматривать интерпретации для основной категории F, а затем ограничить их на подкатегорию А.
Определение 4.1. Кофунктор /: F—>8 является интерпретацией тогда и только тогда, когда выполнены п. (i) и (И).
(i) Функция объектов кофунктора / удовлетворяет условиям Ца")#=0 для всякого аг А и Цаа) = I (а) Xдля аеЛ+,
аг А.*
(и) Функция морфизмов кофунктора / обладает тем свойством, что для всякого вывода 0-*ф из F и всякой пары р, ve^* интерпретацией (р, v)-распространения вывода 0->ф (p0v->pt|)v) является функция
/(p0v — pipv): /(p'i|)v)->/(p0v), представляющая собой распространение функции /(0—►ф): Ц^)~* ->/(0), сохраняющее /(р) и /(v)..
Для того чтобы задать некоторую интерпретацию, достаточно задать функцию, ставящую в соответствие буквам алфавита множества, и функцию /, ставящую в соответствие продукциям функции, причем, если а-^реР, то /(а->Р): /(Р)->I(а). Если /(а) является произведением к множеств, a /(Р)—произведением п множеств, то /(а—>Р) представляет собой набор из к п-арных функций. Если кофунктор /: F —> S является интерпретацией, то ограничение кофунктора / на А, /: А—>8, называется интерпретацией. Образ интерпретации называется семантикой интерпретации. В общем случае семантика не является подкатегорией категории S.
Если (de£+, а о—>(0— вывод в А, где о—аксиома, то со называется предложением. Интерпретациями предложения являются функции из /(со) в /(о). Значениями предложения со называются образы интерпретаций предложения со. Предложение со является неоднозначным в обычном синтаксическом смысле, если у него имеется несколько интерпретаций, задаваемых /. Обратное утверждение неверно.
В качестве примера рассмотрим синтаксис для сложения натуральных чисел. Алфавит необычен, поскольку нужно избежать смешения синтаксических и семантических объектов. В качестве алфавита рассматривается {$, #, @}, в качестве продукций
а аксиомой является $. Знак ф должен обозначать цифру 1, @ — знак сложения, а $ — синтаксический класс, выражение. Привычные символы, имеющие такие значения, сохраняются для обозначения соответствующих семантических объектов. Интерпретации
алфавита задается следующим образом: /($) = N, множеству всех натуральных чисел; /(#)={!}, множеству, единственным членом которого является натуральное число 1; /(@) = Л, по определению,— тождество для операции прямого произведения. Можно обойтись без употребления Л, но это облегчает изложение примера. Интерпретация правил задается следующим образом:
обычное сложение натуральных чисел,
вложение единицы в множество натуральных чисел.
Имеется два различных дерева вывода #@#@# из $, но каждый из этих выводов имеет интерпретацию f: {1} X {0 X {1} такую, что f(l, 1, 1) = 3. Используя нашу терминологию, интерпретацией предложения # @#@# является f: {1}Х {1} X {1} -^N, а значением предложения # @ #@#—образ f — {3}; в этом случае семантика интерпретации является подкатегорией категории S. Этот пример свидетельствует о сходстве наших формулировок с формулировками для автоматов на деревьях (см. [14]).
КОНГРУЭНТНОСТИ
Пусть ~ — отношение эквивалентности, определенное на каждом множестве морфизмов (6, ф). Если два морфизма не имеют одинаковых областей определения и одинаковых образов, то они неэквивалентны. Предположим, что эквивалентность ~ обладает тем свойством, что для всех т], 0, ф, со, ^^(г],0), х,уЕ(0,ф), 2Е(ф, со) из х ~ у следует xw ~ yw и zx ~ zy. Тогда ~ называется конгруэнтностью. Классы эквивалентности, на которые каждое множество (0, ф) разбивается конгруэнтностью ~, являются морфизмами категории частных А/~ ([10]).
Пусть Ф— класс интерпретаций синтаксиса А. Для всякой конгруэнтности ~ определим 8(~) как класс всех таких 1^Ф, что для х ~ у справедливо /(х) = / (у). Для всякого подкласса В е Ф можно определить подобие по модулю 8, ~ (8), следующим образом: х ~ у(8) тогда и только тогда, когда х и у имеют одну и ту же область определения и один и тот же образ и для всех /е 8 справедливо /(х) = /(у). Соответствия
>S(~)
S —> ~ (S)
образуют соответствие Галуа (см. [1]) между отношениями конгруэнтности и классами интерпретаций, что отражено в следующем утверждении.
Теорема 5.1. Пусть ~ь ~2— конгруэнтности на A, Si и Зг — подклассы Ф. Тогда
из ~! г —2 следует 2 (—J э 2 (—2),
из 2! с S2 следует — 2J э — (22),
(В (-,)),
b1Sb(~b,).
В интуитивном смысле два вывода конгруэнтны, если они обладают одинаковой структурой и, следовательно, определяют один и тот же набор возможных значений для выводимого предложения. Соответствие Галуа дает семантическое определение структуры. Структурное описание вывода — это класс эквивалентности, которому он принадлежит, а, согласно соответствию Галуа, он определяется специальным подклассом интерпретаций, которые признаются допустимыми, исходя из некоторых внешних критериев.
Неинтерпретированное понятие структурного описания происходит от конгруэнтности, определенной Гриффитсом [6] и названной им отношением подобия. Пусть в дальнейшем ~ обозначает отношение подобия. В этом разделе мы покажем, что ~ = ~ (ф), т. е. два вывода подобны тогда и только тогда, когда они одинаково интерпретируются при любой возможной интерпретации. Этот результат можно рассматривать как еще один довод в пользу изучения Х-категорий Дж. Хотца. Свободные Х-категории являются категориями частных основных синтаксисов по модулю подобия. Если 2(«) образует собственный подкласс Ф для некоторой конгруэнтности ^, то соответствующая категория частных является несвободной Х-категорией.
Вначале требуется определить неинтерпретированное, или синтаксическое подобие. Подобие — это наименьшее отношение конгруэнтности на А, такое, что если
х: 0->ф, у*- 0'->ф'
— выводы синтаксиса А с распространениями
х0: 00'->ф0', Хр 0ф'->фф', г/0: 00'->0ф', ух: фО'-^фф',
а и = z/iXo, и = х^о» то и подобно и^и и).
Для того чтобы обосновать это определение, приведем краткое описание рассуждений Гриффитса. Вывод может быть заменен другим с помощью перестановки двух применений продукций, если эти применения не взаимодействуют. Из того что написано выше видно, что ххуо и уохх можно заменять друг на друга. Вывод может быть L-заменен, если его можно заменить выводом, который действует раньше на некоторое начало исходной цепочки. Так, xi?/o может быть L-заменен. В каждом классе подобия имеется ровно один канонический вывод. В случае контекстно-свободных систем
канонические выводы изоморфны левосторонним выводам [5], а классы подобия [0->ф] изоморфны деревьям выводов гр из 6.
Для того чтобы доказать, что из и ~ v следует и ~ и(Ф) будет полезен следующий факт из теории категорий.
Теорема 5.2. Если в двойной треугольной призме
коммутативны все квадраты и все треугольники, за исключением, быть может, квадрата с вершинами Ль ^2, Дз, Д4, а {Д4—>Д6, Д4—>Д8}—произведение, то и оставшийся квадрат коммутативен.
Доказательство. Обозначим через /ij морфизм At-*Aj. Тогда
fsefis.” /бб/збЛз = /4б/з4/13 = W12 = /45/24/12-
Аналогично hsf\7 = /43/34/13 = /43/2 4/12. Так как {/45,M — произведение, то морфизмы /5б/15 и /78/17 единственным образом проходят через него и, следовательно, /34/13 = /24/12.
Теорема 5.3.. Из и ~ v следует и ~ и (Ф).
Доказательство. Предположим, что и ~ v. Если и = = ухх0, a v = Х1у0, где х0, Хх, у0, ух— описанные выше распространения х и у, то /(и) = /(х0)/(У1), /(и) = /(у0)/(Х1) и /(х0), /(Xi) являются распространениями /(х), а /(z/o), /(#1)—распространениями Цу). Получаем двойную треугольную призму, где /(фг|/) = = АХ, /(бгр') = Д2, Ц^ = А3, /(00')=Д4, 1^ = А5, 1^ = А6, /(гр') = А7> /(0') = Д8. Все треугольники и квадраты в ней коммутативны согласно свойствам распространений и приведенному выше факту из теории категорий. В частности, Ци) = Ци). Поскольку отношение," задающее подобие, является подмножеством ~ (Ф), то из определения подобия как наименьшей конгруэнтности следует, что ~ ^ ~ (Ф).
Для того чтобы доказать, что из и ~ и(Ф) следует и ~ v, требуется построить интерпретацию Q, которая дает возможность восстановить вывод с точностью до подобия. Поскольку Q е Ф, то желаемый результат получается, если показать, что из Q(u) можно получить канонический вывод, подобный и. Интерпретацию Q
можно представить себе как наилучшую гёделевскую нумерацию выводов, которая может быть получена как интерпретация. Гёде- левская нумерация проводится в следующей обобщенной арифметике G(A,PX над алфавитом А и множеством продукций Р.
A^G(A,P).
Если а е А, г е Р и g е О (Л, Р), то (а, г, g)e G(A, Р).
(Ш) Конечные последовательности членов О(Л,Р) являются членами О(Л,Р).
Нужные нам проекции из б(Л,Р) обозначаются следующим образом:
Если g = (а, г, ^eG^, Р), то pog = a, pxg = r, p^g=g\
Определим интерпретацию Q на буквах алфавита так: для а^А имеем Q(a) = {a} U {(a,r,g) \r ^ Р &g ^ О(Л,Р)}. Интерпретация Q определяется на продукции г = а—>р, где ос = аХ).. ,аих как Q(r): Q(P)-*Q(a), так что для всякого g^Q(p) имеем Q(r) (g) = ((^ь г, gy ..., (^, г, gy Затем Q распространяется на А, как было описано в разд. 4.
Если и — вывод из 6 в ф, то можно определить гёделев номер вывода и, Gd^uy следующим образом: Gd^= Q^^y Если дан гёделев номер Gd(u) = (g-b ... ,gmy то область определения вывода и можно восстановить в виде ab...,am, где at = gt, если gt не является упорядоченной тройкой, и at = pogi, если gt — тройка. Восстановление образа вывода и из Gd(u) происходит в процессе восстановления канонического вывода, подобного и.
Теорема 5.4. Выводы и и и подобны тогда и только тогдау когда совпадают их гёделевы номера.
Доказательство. Из и ~ и следует Q(u)==Q(u), а значит, Gd(u)=Gd(u). Предположим, что Gd(u)=Gd(u). Достаточно дополнительно предположить, что и — канонический вывод. Применение следующей процедуры позволяет восстановить и по Gd^ за конечное число шагов.
Предположим, что Gd^ = (gb..., gmy gt^ G (Л, Ру Для наибольшего i, такого, что gx^-^gt все являются буквами, а значит, не тройками, никакая продукция не применялась к начальному отрезку у = gx... gt. Если i = m, то построение закончено. Если i Ф tn, то рассмотрим g^x = ка^гЛ% гДе ^^А, r^Pt g# ^ ^G^A.Py Если г = ос —* р, длина ос равна к, а совпадает с конкатенацией pogt-x-x, • • •, pogt-x-k, каждая из pxgt-x-x,.. •, Pxgt-x-k совпадает с Г) a g' = psgt-x-x = ... = P^gt-vki то в этом месте в каноническом выводе и применяется продукция г = а—>р. Следующая конечная последовательность, к которой применяется процесс редукции, получается, если заменить в (gb ..., gm^ подпоследовательность (^нь • • • ? £w) последовательностью g\
Если при описанной выше проверке применимости продукции г = а-* Р для некоторого /, 1 ^ / ^ к, а,=# PogH-ь или r ^ Pxgw. или g' = p2gi+j, то следует отложить рассмотрение г, так как рань* ше применяется какая-то другая продукция, применение которой перекрывается с проверяемым применением на gw. Здесь нужно начать проверку на (i + /)-м месте. Вывод и подобен некоторому каноническому выводу, например, х. Отсюда Q^ = Q(x) и Gd^u) = = Gd^ = Gd^. Так как и канонический, то, согласно описанной выше конструкции, он совпадает с х. Итак, и ~ и.
Из теорем 5.3 и 5.4 получаем теорему 5.5.
Теорема 5.5. Для выводов uuv из ku~v тогда и только тогда, когда и ~ и(ф).
Отметим в качестве следствия, что если Q — класс интерпретаций и Q е Й, то ~ (Q) = ~ и 8 (~ (Q)) = Ф. Конгруэнтность равенства на А имеет Ф в качестве соответствующего класса интерпретаций, так что ~(8( = )) = ~.
КОНТЕКСТНЫЕ СИСТЕМЫ
Имеется по крайней мере три различных понятия структурного описания предложений, порождаемых контекстной грамматикой. Первое носит чисто синтаксический характер, и в этом случае вместо допустимости подстановки с помощью контекстно-свободной продукции только в фиксированном (и локальном) контексте требуется только, чтобы длины левых частей продукций не превышали длин соответствующих правых частей. В этом смысле полу- туэвская продукция является контекстной типа 1 в том случае, когда длина а не превышает длины р. Хорошо известно, что это условие слабо эквивалентно более строгому условию на продукции. Однако соответствующие структурные описания не обладают той силой, которая интуитивно кажется необходимой. Пусть Р— множество контекстных продукций типа 1 и (Л,Р, s) порождает синтаксис С. Класс интерпретаций синтаксиса С обозначается через Ф и структурные описания выводов в С являются морфизмами в С/~. При чисто синтаксическом подходе никакой дополнительной структуры не налагается. Синтаксис С называется контекстным синтаксисом типа 1.
Второе и третье понятия возникают при рассмотрении контекстных продукций как контекстно-свободных продукций, применяемых только в определенном локальном контексте. Такие продукции часто записываются в виде а-*$/^_6, где а — внутренняя буква, Р^Л+, а у, беЛ*; у и 6 являются левым и правым контекстом, соответственно, ограничивающими применимость я—>р. Такие продукции можно рассматривать как полутуэвские, а соответствующий синтаксис будет контекстным типа 2 иди 3 в зависимости qt
подкласса интерпретаций. Тип 3 соответствует такому подходу, когда структурным описанием является построенное по выводу дерево. Если взять более широкий класс интерпретаций, то получатся структурные описания Куно ([11]), называемые здесь описаниями типа 2.
Контекстная продукция а -> р/у-б — это полутуэвская продукция уаб —*урб, для которой допустимы' интерпретации, /, функциями, постоянными на /(у) и /(6) в произведении /(уаб) = = H^XIW X Ц6). Тип 2 от типа 3 отличается действием функции на /(а). Если структурные описания должны быть деревьями выводов, то интерпретация уаб — урб должна зависеть только от интерпретации а —►р. То есть функция /(уаб->урб): /(урб)—► —►/(уаб) должна быть постоянной на /(у) и /(6) и действовать как некоторая функция f: /(Р)->/(#) на прообразе /(уаб). Для типа 2 соответствующая функция может иметь в качестве аргумента любой элемент из /(уРб) — f: /(уРб)->/(а).
Формально говоря, контекстный синтаксис типа 2 — это такой контекстный синтаксис С типа 1, что каждой продукции х,хе е(уаб,уР6) полутуэвской системы, порождающей С, соответствует ее контекст у_б. Это обстоятельство обозначается так: х = = а —* р/у_S. Заметим, что множество (уаб,урб) может содержать и больше одной продукции; такие кратные продукции различаются по своему контексту. Кроме того, класс допустимых интерпретаций В — это наибольший подкласс класса Ф, такой, что для всякой продукции х = а—* р/у-б и для всякой /еВ будут коммутативными следующие диаграммы, где непомеченные буквами стрелки являются проекциями.
1(7)
Контекстный синтаксис типа 3 — это контекстный синтаксис С типа 2, для которого классом допустимых интерпретаций Q является наибольший подкласс класса В, такой, что для всякой /^Q
и всякой продукции х = а-* р/у-6 из полутуэвской системы, порождающей С, имеется функция
f(x, I): Ц^Цау
£2 и функции f(x, I) обладают такими свойствами:
Коммутативна диаграмма
W)^ т(уа§)
где проекции не отмечены буквами.
(и) Если х = а —* р/у_6 и у = а-*р/л_р— продукции, то для всякого /ей имеем f(x, I): Ц$)->Ца) = ЦуДУ 1(a).
Последнее свойство соответствует тому, что а -* р/у_б и а->р/л-р рассматриваются как одна и та же контекстно-свободная продукция а—*р, ограниченная контекстом у_б или л-р. Без этого свойства нельзя построить по выводу дерево. Структурным описанием вывода х в С является класс эквивалентности [%Ь по ~ (U). Каждому такому классу эквивалентности соответствует единственным образом дерево вывода в соответствующем контекстно-свободном синтаксисе, как показывают следующие рассуждения.
Предположим, что Р— это множество продукций, порождающее вместе со своими контекстами контекстный синтаксис С типа 3 с классом интерпретаций Q. Тогда R = {а-> р | а —* р/у_б е Р)—- множество контекстно-свободных продукций, порождающее контекстно-свободный синтаксис D, деревья выводов которого образуют D/~. Функцию F: P-+R, где F(a-* р/у-б) = а-* р, можно продолжить до освобождающего от контекста функтора F: С—► D. Для всякой I; С —* S из Q определим If. D-*S следующим образом.
(i) Для всякого объекта 6 имеем Л(0) = /(6).
(и) Для морфизмов определим h по индукции, начиная с продукции из R: при a->^^R полагаем JI(a-*^) = f(xj) для всякого х = а-* Р/у-б е Р, такого, что F(х) = а-> р.
Диаграмма
коммутативна для любого /ей. Более того, {Zj|/eQ} совпадает со всем классом интерпретаций синтаксиса D, Фэ, поскольку любую Ке Фо можно продолжить до некоторой /ей.
Из описанного выше соответствия контекстно-свободной системы контекстному синтаксису С типа 3 можно заметить, что дерево вывода х из С является классом подобия F(xY [F(x)].
Теорема 6.1. Коммутативна диаграмма
С—^*D
j I
С/Л -^*D/^
где F: С —* D — освобождающий от контекста функтор для С, С/й — категория частных синтаксиса С по модулю ~ (й), D/~ — категория частных синтаксиса D по модулю подобия, a G: С/Й -> —*D/~—структурное описание или функтор деревьев вывода, тождественный на объектах, а на морфизмах G ([%]□) = ^(х)].
Доказательство. G определен корректно, так как для всяких х, у е (0, ф); если х~у(й), то для всякой /ей имеем ЦЦ^хЦ = Цх^ = Цу^ = ЦЦ^уЦ, а значит, F^x^F^yY Коммутативность диаграммы вытекает непосредственно из определения G.
Теорема 6.2. G точен, т. е. инъективен на морфизмах.
Доказательство. Предположим, что G([x]D) = G([y]D) или, что эквивалентно, F^^F^yY Поскольку для всех Л е Фэ K(F(x))= K(F(y)) и поскольку всякая /ей является продолжением некоторой /Се Фо, то в этом случае для всех / ей /(х) = = ЦуY так что х ~ y^Y
Из доказанных выше утверждений получаем.
Теорема 6.3. Если х,уе(0,т|)) являются выводами синтаксиса С, то х и у подобны по модулю й в том и только том случае, если они имеют одинаковые деревья. То есть х~у(й) тогда и только тогда, когда F^ ~ F^yY '
Куно [11] определяет деревья с добавленными четверками целых чисел в вершинах для структурного описания контекстных выводов. Соответствующее этому неинтерпретированное отношение конгруэнтности назовем нс-подобием. Нс-подобие, —, определяется как наименьшая конгруэнтность на С, такая что
из х ~ у следует х^^ и
если х = а -> p/y_p,v и у = с -* б/vn-p — продукции, порождающие С и имеющие распространения
х0 : Y^pvncp -* Yppvncp, %i : yapvnSp -> урр^лбр,
Уй *. y^pvncp -> yapvndp, ух : yPpvncp ~> yppvndp, то ухх^ ~ хху^ .
Два нс-подобных вывода можно заменять друг другом, хотя применения продукций могут пересекаться, если пересечение происходит по контекстам, а не по соответствующим контекстно-свободным продукциям. Не удивительно, что нс-подобие совпадает с подобием по модулю В, где В класс интерпретаций типа 2.
Теорема 6.4. ^=^ (В).
Доказательство. По существу доказательство такое же, как для теоремы 5,5, следует только заметить, что интерпретация Q с помощью гёделевской нумерации не входит в В. Для доказательства строится аналогичная гёделевская нумерация Q', удовлетворяющая условиям, налагаемым на интерпретации типа 2. На буквах Q' определяется точно так же, как Q; для а^А Q'(d) = = {a} U {(а, г, g)\r ^P&g^ G(A,PyV Ha продукциях дело обстоит иначе. Пусть г = а-* р/у_б— продукция, причем длина у равна I, длина р равна т, а длина 6 равна п. Тогда Q'(r)— это такая функция из Q'(yp6) в Q^Y^fi), чт0 Для ^eQz(Y₽6), g = = (5i,...,^ 6h...,6m, dh...,dn), Q'^ (g) = (gi,...,g/, (a,r,g), dX)..., dn^ •.
Понятия типа 2 легко обобщить на случай продукций вида а~*р/у-6, где а, ре Д+, у, 6еД*, и на случай матричных продукций вида
ао, аь ..., an-i ~* Ро, Рь • • •, Pn-i/yo — Yi — .. • yn-i — yn, которые сводятся в случае п = 1 к первым.
СПИСОК ЛИТЕРАТУРЫ
Cohn Р. М., Universal Algebra, Harper and Row, New York, 1965. (Русский перевод: Кон П. М., Универсальная алгебра, «Мир», М., 1968.)
Davis М., Computability and Unsolvability, McGraw-Hill, New York, 1958.
Eilenberg S., Wright J. B., Automata in general algebras, Information and Control., 11 (1967), 452—470.
Freyd P., Abelian Categories, Harper and Row, New York, 1964.
Ginsburg S., The Mathematical Theory of Context-Free Languages, McGraw- Hill, New York, 1966. (Русский перевод: Гинзбург С., Математическая теория контекстно-свободных языков, «Мир», М., 1969.)
Griffiths Т. V., Some remarks on derivations in general rewriting systems, Information and Control, 12 (1968), 27—54.
Hotz G., Eindeutigkeit und Mehrdeutigkeit formaler Sprachen, EIK, 2 (1966) 235—247. *•’
Knuth D. E., Semantics of context-free languages, Math. Systems Theory, 2 (1968), 127—146.
MacLane S., Birkhoff G., Algebra, Macmillan, New York, 1967.
Mitchell B., Theory of Categories, Academic Press, Inc., New York, 1965.
Kuno S., A context-sensitive recognition procedure, in Math. Linguistics and Auto. Translation Rpt. NSF-18, Aiken Comp. Lab., Harvard, Cambridge, Mass. 1967.■
Nelson R. J., Introduction to Automata, John Wiley and Sons, Inc., New York, 1968.
Schnorr С. P., Transformational classes of grammars, Information and Control, 14 (1969), 252—277.
Thatcher J. W., Characterizing derivation trees of context-free grammars through a generalization of finite automata theory, /. Comp. System Sci., 1 (1967), 317—323.
Thompson F. B., English for the computer, AFIPS Conf. Proc.t 29 (1966), 349— 356, FJCC, Spartan Books, Washington, D. C.
Использование списков в изучениипроблем теории автоматов0
Дж. Хартманне, Ф. Д. Льюис ,
> 1. ВВЕДЕНИЕ
Хорошо известно, что многие проблемы в теории автоматов) и формальных языков алгоритмически неразрешимы и, следовательно, могут быть классифицированы по степеням неразрешимости. В этой работе мы покажем, во-первых, как можно естественным образом построить множества машин Тьюринга, которые являются полными множествами в любом заданном уровне арифметической степени неразрешимости. Конструкция этих множеств прямо соответствует кванторным последовательностям в арифметической иерархии. Во-вторых, описывается метод представления трудных проблем как более простых проблем.над списками машин Тьюринга.
Например, проблема определения, допускает ли машина Тьюринга кофинитное множество, эквивалентна проблеме определения, будет ли рекурсивный список машин Тьюринга содержать такую машину, которая допускает любую входную последовательность. Проблема определения, будет ли машина Тьюринга допускать каждую входную последовательность, в свою очередь эквивалентна проблеме определения, будет ли каждая машина Тьюринга из рекурсивного списка допускать некоторую входную последовательность. При более подробном рассмотрении можно заметить, что проблема кофинитности также эквивалентна проблеме определения, будет ли рекурсивный список машин Тьюринга содержать только конечное множество машин, которые не допускают никакую входную последовательность.
Эти примеры основываются на некоторых общих результатах, которые указывают, как увеличивается трудность распознавания свойства Р, когда мы задаем «количественный» вопрос о множестве машин со свойством Р из рекурсивного списка машин. Используя наши специальные множества, мы установим несколько таких результатов. Эти результаты вносят ясность в различие между степенями неразрешимости проблем о списках и дают некото-
Hartmanis J., Lewis F. D., The use of lists in the study of undecidable problems in automata theory, Journal of Computer and System Sciences, 5, № 1 (1971), 54—66.
рый обзор таких проблем. Более того, эти результаты дают простые методы для определения минимальной степени неразрешимости нескольких хорошо известных проблем и возможность естественным образом строить проблемы с высокой степенью неразрешимости.
ПРЕДВАРИТЕЛЬНЫЕ ОПРЕДЕЛЕНИЯИ ОТНОСИТЕЛЬНЫЕ МНОЖЕСТВА
Мы предполагаем, что читатель знаком с понятиями машины Тьюринга, рекурсивными и рекурсивно перечислимыми множествами (р.п.), как определено в [2, 5, 11], а также с неразрешимыми проблемами и их классификацией по относительной трудности [6,9].
В этой части мы введем некоторые понятия и дадим обзор определений, которые потребуются далее, о сводимости и арифметической иерархии. Читатель, не знакомый с этими определениями, должен обратиться к работам, указанным выше. Пусть Мо, MbM2l... — допустимая [10] нумерация машин Тьюринга или частично рекурсивных функций, и пусть Wo, W\, W2,... — множества, допустимые соответствующими машинами. Мы пишем T(i, х,/)=1 тогда столько тогда, когда i-я машина останавливается после / шагов, если на вход ее поступает последовательность х. (Это аналогично Т-предикату Клини.) Наконец, строчкой, состоящей из буквы 6 и названия множества последовательностей, будем обозначать множество индексов (индексное множество) машин Тьюринга, допускающих эти последовательности. Например, ^Пустое обозначает множество индексов машин, не допускающих никаких последовательностей.
Множество Л одно-односводимо к множеству В (обозначение А ^ 1В) тогда и только тогда, когда существует взаимно однозначная рекурсивная функция g, такая, что для всех х
x^A^g^x^B.
Множество А одно-одноэквивалентно множеству В (обозначение А = \В) тогда и только тогда, когда А ^ ^В и В ^ И. Эти определения были введены Постом [8].
Наметим теперь в общих чертах классификацию проблем, неразрешимых средствами арифметической или клиниевской иерархии [4].
Мы говорим, что предикат 3 является рекурсивным, если 3 рекурсивно разрешим. Говорят, что 3— арифметический предикат тогда и только тогда, когда 3 получен из некоторого рекурсивного предиката навешиванием кванторов.
Множество А называется арифметическим множеством тогда и только тогда, когда существует арифметический предикат 3, такой, что
Л = {х|3(х)}.
Арифметический предикат S всегда может быть записан в префиксной нормальной форме как рекурсивный предикат R с некоторым префиксом кванторов [5, стр. 167; 11, стр. 308]. Этот квантор- ный префикс может быть представлен в виде чередующихся кванторов, и тогда предикаты помещаются в иерархии согласно числу чередования кванторов существования и общности в префиксе.
Предикат S — это Ъп-предикат тогда и только тогда, когда его префикс начинается с квантора существования 3 и содержит п чередующихся кванторов.‘
Предикат S — это Пп-предикат тогда и только тогда, когда его префикс начинается с квантора общности V и содержит п чередующихся кванторов.
Например, S (х) = 3u\ft)3wR кц, и, w. х)— это 23-предикат при условии, что R (u, vt w, х)—рекурсивный предикат.
Множество Л—это 5П ^пУ-множество тогда и только тогда, когда существует 2п(Пп)-предикат S, такой, что
Л=(х| S(x)}.
Для краткости будем писать Л е 5П или Л е Пп.
Множество Л ^-полно тогда и только тогда, когда Л е2п и каждое 2п-множество одно-односводимо к Л. Аналогичным образом определяется TVn-полное множество.
Определим следующим образом несколько хорошо известных индексных множеств машин Тьюринга, которые будут использоваться ниже:
ЪПустое = {Z| Mt не допускает никаких последова
тельностей}
= V | уху^\Т Ц» х, /) #= 1]} это Неполное множество.
^Конечное = {Z| M-t допускает конечное множество входных последовательностей}
= {/) ЭхЧу^Цу > x^T^i, у, 0 =# 1]} это 23-полное множество.
ВУниверсальное = {i| Mt допускает все входные последовательности}
' =UI УхЗНПО X, 0=1]}
это П2-полное множество.
ВКофинитное = {i| Mt допускает все входные последовательности, кроме конечного числа их)
= ]i| 3x4y3t [у > х^Т (Z, у, 0 = 1]}
это 23-полное множество,
При конструировании полных множеств более высокой степени встречаются большие трудности, и многие примеры, скажем пример 25-полного множества, громоздки для описания. Более того, такие примеры имеют специфический вид и доказательство того, что они являются полными множествами данной степени, могут быть достаточно трудными.
Для преодоления этих и других трудностей мы вводим понятие полных относительных множеств арифметической иерархии. Это понятие естественно вытекает из понятий машин Тьюринга и чередующихся кванторов и будет использоваться позднее для доказательства результатов о списках машин.
Определение.м-м допускаемым множеством (обозначение Дп) называется множество
{z| Vx^Xg ... Чхп_х3хп [Mf допускает последовательность
Xi * х2 * ••• 4^4^ хп]},
если п четно и
{/| Зх^х,... Чхп_х3хп YMt допускает входную последовательность ^i 4k^24k ••• 4k^n])>
если п нечетно (здесь xz не содержит символа #).
Определение, п-м отклоняемым множеством (обозначение Rn) называется множество
{i’| 3xzVx2 ... Vxn [Afz не допускает входную последовательность
Xi 4N • • • 4k яп]}, если п четно и
{z| Vxj3x2 ... Vxn [Mz не допускает входную последовательность
*1# ••• 4^]},
если п нечетно (как и прежде, xt не содержит символа #).
Например, множество Дз содержит все индексы машин Тьюринга, для которых существует (бинарная) последовательность х, такая, что для каждой (бинарной) последовательности у существует последовательность 2, такая, что машина допускает входную последовательность х^-у^г. Очевидно, что Дп = R^ Rn = Ап и /^ = ^Пустое.
Поместим теперь таким образом определенные относительные множества в арифметическую иерархию и покажем, что они полны в соответствующей им степени неразрешимости.
Теорема (О полноте).
Если п нечетно, то множество Дп является Ут-полным, а множество Rn является Ш^-полным.
Если п четно, то множество Ап является Пп-полным, а множество Rn является ^п-нолным.
Доказательство. Будет доказана только часть (Ь) для Ап, так как доказательства остальных частей аналогичны.
Во-первых, справедливо включение Ап е Пп, так как отношение ieAn можно представить как
Vx^ ... ЗхЛЗПГ(/, ^# ... #х„, 0=1}.
Далее рассмотрим произвольное множество В е Пп. Это множество можно представить как
В = [2] Vx!3x2 ... 3xn7?(xb ..., х„, 2)}
для некоторого рекурсивного предиката R.
Рассмотрим машину Тьюринга Mg^, которая допускает входную последовательность вида Xi # • • • # хп тогда и только тогда, когда значение предиката R(xx,..., хп, 2) есть истина. Далее
2G В^^хх3х^ ... 3xnR^xx, ..., хп, z)
О v^3x2 ... Зх„ [%! # ... #x„el^ (г)] ^giz)eA„.
Функция g является рекурсивной (по тезису Черча) и взаимно однозначной, так как новая машина Mgw строится для каждого значения 2. Поэтому В ^ хАп и множество Ап является Пп-полным.
Этот результат показывает, что мы можем определить расположение наших относительных множеств на каждой степени арифметической иерархии, и поэтому они являются эквивалентными тем относительным множествам, которые используются в теории рекурсивных функций. (Это множества q/n) и ф<п), описанные в [11].) Отсюда следуют все хорошо известные результаты, такие, например, как теорема о иерархии для Ап и Rn. Также верными являются стандартные отношения сводимости Ап^1Ап+ь Rn^CiRn+ь Ап ^ \Rn-H и Rn ^ Лп+ь Относительные множества можно использовать для определения минимальной степени неразрешимости проблем теории автоматов.
Например, легко показать, что" ^Универсальное— это хорошо известное П2-полное множество — эквивалентно множеству As. Для этого достаточно свести множество ^Универсальное к множеству Д2 с помощью взаимно однозначной рекурсивной функции g, которая определяется так:
Mg^ допускает входную последовательность х^у тогда и только тогда, когда Г (Z, х, у)=1.
Сведение множества Л2 к множеству ^Универсальное достигается с помощью функции f: .
М^ ^ допускает последовательность х тогда и только тогда, когда 3y3tT (I, х # у, 0=1-
(Другие применения относительных множеств появятся в следующих разделах.)
списки.
Вопросы о списках часто встречаются в теории автоматов, и многие проблемы, первоначально имеющие другую формулировку, могут быть лучше поняты, если они представлены как проблемы о списках.
В этом разделе мы установим несколько результатов, которые для некоторого свойства Р характеризуют степень неразрешимости рекурсивно инвариантных проблем о списках машин в терминах множества, ассоциированного с Р и структурой проблемы.
Определение. Список — это рекурсивно перечислимое множество. (Как прежде, №г употребляется для обозначения множества, допускаемого машиной М^
Определение. Свойство Р называется рекурсивно инвариантным тогда и только тогда, когда оно сохраняется рекурсивным изоморфизмом или рекурсивной взаимно однозначной функцией на. (То есть, если множество А обладает свойством Р и g — взаимно однозначная рекурсивная функция на, то 8^(Л) также обладает свойством Р.)
Отметим, что обычные количественные свойства «множество А пусто», «множество А конечно», «множество А бесконечно» и «множество А конфинитно» рекурсивно инвариантны.
В дальнейшем большинство рассматриваемых списков будут состоять из индексов машин Тьюринга. Вопросы, которые мы будем рассматривать относительно списков, — это вопросы о пересечении списка и некоторого, хорошо известного семейства машин (или индексного множества семейства).
Следующая лемма показывает, что в рекурсивно инвариантных свойствах пересечения множеств со списком можно заменить любое полное множество соответствующим ему относительным множеством. "
Лемма. Если Р— рекурсивно инвариантное свойство иВ^ в vAn, то
Доказательство, (а) Пусть соотношение В ^ \Ап установлено при помощи взаимно однозначной рекурсивной функции
g; определим функцию f, такую, что W^ = gk^t). (Она легко может быть получена из функции g.) Смысл функций f и g иллюстрируется на рис. 1.
Так как функция g взаимно однозначна и функция на, она сохраняет рекурсивно инвариантные свойства (по теореме Майхилла [7]). Таким образом,
и поэтомуи поэтомуР (В л Г J = р kg кВ Л W^ = PkAnV\ Wf (()),
и поэтому
и поэтому
ieZ)^P(Bnrt)=l
^Р(Л„ЛИЫ = 1 ^fki^C.
Рис. 1.Рис. 1.
Рис. 1.
Рис. 1.
Следовательно, соотношение D ^ 1С устанавливается с помощью функции f.
(b) Соотношение С ^ iD можно доказать аналогично.
Эта лемма верна также и для множеств, эквивалентных множеству Rn» и доказывается таким же образом.
Следующий результат показывает, как увеличивается трудность проблемы, когда мы задаем вопрос о выполнимости этой проблемы на списке машин Тьюринга. В силу предыдущей леммы можно формулировать вопросы относительно множеств Ап и Rn, а затем переносить результаты на любые эквивалентные проблемы.
Две приводимые ниже теоремы демонстрируют два метода доказательства: Первый из них является методом сведения, базирующемся на построении машины, в то время как второй является более изящным доказательством, основанным на результате Крей- зела, Шёнфилда и Вана. Здесь даются оба типа доказательств для демонстрации обоих методов.'
Т ео р е м а. Если множество А является Яп-нолным, то множество
является 'О.и^х-полным.
Доказательство. В силу предыдущей леммы вместо множества Л можно использовать множество Лп. Поэтому пусть 5 = (1|ЛПГ|^= ^i).
Множество В является Пп+1-множеством, так как /E=B^nnrz = U^Vx[xe=I^^
OVx\x^Wt или хе АД
фф Vx[V/[F(/, х, /) #= 1] или хе АД
^^x^t\T (/, х, 0 #= 1 или хе АД.
Так как Ane^n, то 8еПп+1, и поэтому В<Мл+ь
Отметим, что
Ап ^ VI 3Xj , . . 3xn [Xj 4b Х2 ^b • • • 4N Хп ^ ^]} и
Л-н = W ^тВхх ... Зхп\т # х2 # ... ^хпе WJ}.
Для любой машины Тьюринга Mt построим список индексов машин Wg^™^^ кь .. Д следующим образом: машина М^ допускает лишь входные последовательности вида хх #х2# ... =Й=хЛ. Если машина Мкт получает на входе последовательность хх 41= 4|=х241= ... хП) она ставит выражение т41= в начале этой последовательности и перерабатывает последовательность m4l=x14t=.
... 4|=хп так же, как ее перерабатывала бы машина М1е
Индексы кт машин и их список Wg^ легко определяется в терминах машины Mi.
Интуитивно ясно, что если (еА^, то все индексы кт являются элементами множества Ап. Более формально:
ie X^OVmSxj ... Зхп \т 4|= х, 4|= ... фх^^]
^МтЗхх ... Эх^х,# ... **,5^]
^т \ктеАД
^AnV\WgW = Wg^
Следовательно, Лп+1 ^ В.
Аналогичная теорема может быть доказана и для множества Rn G Sn.
Теперь множества более высокой степени можно естественным образом строить из множеств относительно низких степеней. Для любого Sn-полного множества А множество списков машин Тьюринга (в действительности их индексов), которые содержат только элементы множества А, является Пп+1-полным. Приведем несколько примеров (следствий) к доказанной выше теореме:
Множество списков (индексов) машин Тьюринга, которые допускают конечное множество входных последовательностей
(t| WtV\9 Конечное = Wl\,
является Пз-полным.
Множество списков машин Тьюринга, которые допускают кофинитные множества входных последовательностей
{/| Wt Л ^Кофинитное = Wt\,
является П4-П0ЛНЫМ.
Доказанная выше теорема нс может быть обобщена на Пп-пол- ныс множества. Оказывается, что множество списков, которые содержат только элементы из Пп-полного множества Д, вновь является Пп-полным множеством. Этот факт устанавливается из анализа структуры множества
B = {tWzn^=rj,
если /?„еП„:
ieB^WtnRn = Wt
^x[x^Wt^>x^Rn]
^VxV/fr (t, x, t) ф 1 или xe^„]
Так как отношение Хе/?„ является Пп-предикатом, то последний предикат в приведенной эквивалентности является Пп-предикатом.
Другое свойство списков позволяет порождать множества арифметической иерархии, лежащие на два уровня выше первоначального множества. Это достигается при решении такой проблемы: если некоторый список содержит бесконечное число элементов из некоторого множества, верно ли, что все элементы списка являются элементами этого множества.
Теорема. Если множество А является Пп-иолным, то множество {1'|Д Г) Wt — бесконечно^ является Пп+2-нолным.
Доказательство. Как и прежде, пусть В = {£]Л П Wt — бесконечно^
5еПп+2, так как
isB^A(\Wt бесконечно
О ЧхЗу \у > х Д у eWt Д у е Д]
^Чх3у31 \у > х A Т (I, у, О = 1 А У е Д]
•Ф> V33 \у е А А (рекурсивный предикат)].
В силу того, что у е А есть Пп-предикат, выполнено соотношение В е= Пп+2*
Для доказательства этой части используется лемма Крей- зела, Шёнфилда и Вана [6], касающаяся квантора Ux, который
обозначает «существует бесконечно много х». Этот результат говорит о том, что любой Пгп-предикат можно представить в виде
UХ\ ее. UXnR (Xj, • • • , Хп, ^),’
где R — некоторый рекурсивный предикат, а любой Пгп+гпредикат можно представить в виде
Uxx ... UxnMxnArXR<xxх„+ь у).
Пусть теперь С — любое Пп+2-множество; тогда из приведенных выше рассуждений следует, что его можно представить в виде xeC^UHS(x, у)
для некоторого Пп-предиката S. Так как множество А— это Пп- множество, то существует рекурсивная, взаимно однозначная функция Д такая, что
3(х, у^Цх, у)еА
Положим MgW(y) = f(х,у), и пусть множество W^ будет областью определения машины Mg^). Тогда
xeC^UyS^x, у)■
^Uy\^x, у)е Л] О Wh (X) Л А бесконечно ^А(х)еВ.
Таким образом, из С ^ ХВ следует, что множество В является Пп+2-П0ЛНЫМ.
С помощью этого результата можно строить множества, уровень которых в арифметической иерархии на два больше, чем уровень первоначального множества.
Приведем несколько непосредственно получающихся примеров.
Множество списков машин Тьюринга, в которых бесконечное число машин не допускает никакую входную последовательность:"
\i 1^; П ^Пустое бесконечно)
является Пз-полным множеством.
Множество списков машин Тьюринга, в которых бесконечное число машин допускает любые входные последовательности
(Л Wt П Универсальное бесконечно), является Пополним множеством...
Множество списков машин Тьюринга, в которых бесконечное число машин допускает кофинитное множество входных последовательностей
U\ Wif\ 9Кофинитное бесконечно}, является, как и предполагалось, Пз-полным множеством.
Отметим, что когда эта процедура применяется к 2п-полным множествам, то новое множество получается уже только уровня Пп+ь Это доказывается, как и прежде, с помощью представления предиката для нового множества. Предположив, что А е Sn, и просмотрев часть (а) предыдущего доказательства, мы получим выражение
V33[ye А Д
Так как А е2п, то это, очевидно, Пп+гпредикат, и следовательно, может быть получено повышение только на единицу
Существует много естественных свойств списков (такие же, как два вышеупомянутых), и эти свойства можно задать множествами, как, например:
№(А гг)=1}.
где Р(А, W{) является отношением вида: «в списке Wt имеется элемент из множества Л» или «в списке Wt имеется конечное число элементов из множества Л». Некоторые из таких общих отношений собраны в приведенной ниже таблице. Доказательства для них получаются простым применением методов, используемых в предыдущих доказательствах.
Таблица
Р(Л, W^
Л —Зд-полно
А—Неполно
ЛАИ^ф
Неполно
Пп+гполно
Л П Т^^ф
Sn-полно
Sn+1-ПОЛНО
ЛА^ = ^;
Пп+гполно
Пп-полно
Л A W^Wt
S^+i-полно
2/гполно
Л А ^ конечно
Sm+1-ПОЛНО
2п+2"п°ЛН0
ЛА^ бесконечно
Пл+1-полно
Пм+2-полно
ЛА Wi конечно
Sn+2-ПОЛНО
Sn+1-ПОЛНО
ЛА^; бесконечно.
Пм+2-ПОЛНО
Пл+1 -полно
4. ДАЛЬНЕЙШИЕ ПРИМЕНЕНИЯ
Свойства списков, которые отмечены в приведенной выше таблице, упрощают технику нахождения нижних границ множества в степени неразрешимости. Например, вместо предварительно применимого сложного аппарата, как в [11], все, что теперь требуется
для того, чтобы показать, что множество ^Кофинитное является 2з-полным множеством, это простое сведение множе--” {i| Wt П ^Пустое конечно}.
Приведем две теоремы, иллюстрирующие эту технику.
Теорема. Множество ^Конечное = {] Wt конечно^ является ^2-полным множеством.
Доказательство, (а) Запишем отношение ^Конечное в префиксной нормальной форме.
I е ^Конечное ФФ Зх^у \у > х=^>у ф. IF/]
ФФ ЗхЧу^у^х V уф IFJ
ФФ ЗхМу \у < х V VZT (г, у, 0=Ф 1]
ФФ 3VV [рекурсивный предикат].
Таким образом, множество ^Конечное является Ег-множеством и поэтому по теореме о полноте ^Конечное ^ \R2.
(b) Покажем теперь, что R2 ^ ^Конечное. Рассмотрим множество В = {г|№гПЛ1 конечно}, которое, как следует из таблицы свойств списков, является Зг-полным, и поэтому В = XR2. (Л1 является дополнением к множеству вПустое). Сведение множества В к множеству ^Конечное происходит следующим образом: по машине Тьюринга Mt строится другая машина М^, такая, что всякий раз, когда машина М^ допускает входную последовательность, в которой только конечное число элементов не является индексами для пустого множества, то М№ допускает конечное множество входных последовательностей. Более формально, пусть
^={^0, ^1, •“}
рассмотрим машину
останавливается, если 3ak е Wt и Зх
MgW (^) =MgW (^) =[УИ^ (х) останавливается], не останавливается в противном случае.
MgW (^) =
MgW (^) =
Поэтому всякий раз, когда ак является индексом для пустого множества (или когда конечно и не существует индекса ак), тогда Mg(3^k) не останавливается. Однако, когда индекс ак существует и является элементом множества Ль тогда Mg^k) останавливается. Таким образом,
1г B^W^Ax конечно
ФФЗ конечное к, для которого М^^^к) останавливается ^g (/) е ^Конечное.
Следовательно, так как множество Ах содержит все индексы для непустых множеств, если №<ПЛ1— конечно, то все, кроме конеч*
ного числа элементов множества Wt, являются индексами для пустого множества. Поэтому машина Mg^ не останавливается для всех, кроме конечного числа входных последовательностей.
Теорема. Множество ^Кофинитное является ^з-полным множеством.
Доказательство, (а) Во-первых, рассмотрим префиксную нормальную форму
1^ ^Кофинитное^Зх^у \у > х^у е W^\ ^ЗхМу [у< х V У^ №Д ^3x\/yVy^xV 31(1(1, у, 0=1)1 O3VB [рекурсивны?! предикат],
и поэтому ^Кофинитное е 23 и ^Кофинитное ^ Из-
(Ь) Следующая часть — сведение множества В = {t| Wt П ^Пустое конечно} (которое является 23-полным) к множеству ^Кофинитное.
Рассмотрим любую машину Тьюринга Мг, пусть Wt — = {ас, «ь ...} употребляется в обычном своем значении; определим машину Mg^ следующим образом:
мг (n№=!мг (n№=!останавливается, если Эх [Ма^(х) останавливается]^ не останавливается в противном случае.
мг (n№=!
мг (n№=!
Если ак— индекс пустого множества, то Mg^(k^ не останавливается, и если только конечное число элементов аг- находятся в множестве (Шустое, то М^) не останавливается для конечного числа входных последовательностей. Или более формально:
I е В^ Wi П (Шустов конечно
^Wak — ^ Для конечного набора значений к ^к ^W g ^ для конечного набора значений к N^§(^ G ^Кофинитное.
Таким образом, Вх^ ^Кофинитное и ^Кофинитное является 53- полным множеством.
Все приведенные выше доказательства достаточно прямые, и в них используется одна и та же конструкция. При правильном выборе множества В это более продуктивный способ доказательства по сравнению с доказательствами такого типа.
Методика, развитая в этой работе, имеет различные применения в теории автоматов. Мы закончим обсуждение иллюстрацией того, как такой подход можно использовать при решении проблем о рекурсивно перечислимых списках контекстно-свободных (к. с.) грамматик. Проблемы такого типа изучались недавно Кудиа [1].
1/25 Зак. 210
С помощью развитой в [3] методики можно легко показать, что
Множество неоднозначных контекстно-свободных грамматик является Si-полным.
Множество контекстно-свободных грамматик, которые порождают регулярные языки (или кофинитные множества), является 22-полным.
Из этого немедленно следует, что множество всех рекурсивно перечислимых списков, которые содержат к. с. грамматики, порождающие нерегулярные множества, является 23-полным.
Множество рекурсивно перечислимых списков к. с. грамматик, в которых каждый список содержит бесконечно много грамматик, порождающих регулярные множества, является П3-полным. С другой стороны, множество списков к. с. грамматик, в которых каждый список содержит бесконечно много грамматик, порождающих нерегулярные множества, является П4-полным.
Множество рекурсивно перечислимых списков к. с. грамматик, которые содержат только конечное число неопределенных грамматик, является 22-полным, с другой стороны, множество списков к. с. грамматик, которое содержит бесконечно много неопределен* ных грамматик, является П3-полным.
Большинство результатов о тьюринговой эквивалентности неразрешимых проблем, о списках контекстно-свободных грамматик выпадают из рассмотрений такого типа, и существующие различия легко объясняются видом последовательности кванторов, описывающих рассматриваемые множества.
СПИСОК ЛИТЕРАТУРЫ
Cudia D. F., The degree hierarchy of undecidable problems of formal grammars, in 2nd Ann. ACM. Symp. on Theory of Comput, pp. 10—21, ACM, New York, 1970.
Davis M., Computability and Unsolvability, McGraw-Hill, New York, 1958.
Hartmanis J., Context free languages and Turing machine computations, Proc. Symp. Appl. Math., 19 (1967), 42—51.
Kleene S. C., Recursive predicates and quantifiers, Trans. Amer. Math. Soc., 53 (1943), 41—73.
Kleene S. C., Introduction to Metamathematics, Van Nostrand, Princeton, N. J., 1952. (Русский перевод: Клини С. К., Введение в метаматематику, М., ИЛ, 1957.)
Kreisel G., Shoenfield J. R., Wang H., Number theoretic concepts and recursive well-orderings, Arch. Math. Logik Grundlagenforsh, 5 (1960), 42—64.
Myhill J., Creative sets, Z. Math. Logik Grundlagen Math., 1 (1955), 97—108.
Post E. L, Recursively enumerable sets of positive integers and their decision problems, Bull. Amer. Math. Soc., 50 (1944), 284—316.
Rogers H., Jr., Computing degrees of unsolvability, Math. Ann., 138 (1959), 125—140.
Rogers H., Jr., Godel numbering of partial recursive functions, J. Symbolic Logic, 23 (1958), 331—341.
Rogers H., Jr., Theory of Recursive Functions and Effective Computability, McGraw-Hill, New York, 1967. (Русский перевод: Роджерс X., Теория рекурсивных функций и эффективная вычислимость, М., «Мир», 1972.)
Обзор теории сложности вычислений °
Дж. Хартманне и Дою. Э. Хопкрофт
ВВЕДЕНИЕ
Очевидно, что жизнеспособная теория вычислений должна реалистически рассматривать количественные аспекты вычислений и содержать общую теорию, в которой изучаются свойства возможных мер трудности вычисления функций. Такая теория должна идти дальше классификации функций как вычислимых и невычислимых или элементарных и примитивно рекурсивных и т. д. Она должна рассматривать меры сложности вычислений, которые определены для всевозможных вычислений и которые приписывают сложность каждому заканчивающемуся вычислению. Более того, эта теория должна в конечном счете отражать некоторые аспекты реальных вычислений, чтобы оправдать себя соответствующим вкладом в общее развитие науки о вычислительных процессах. В течение последнего десятилетия в развитии такой теории^ касающейся сложности вычислений, был сделан значительный прогресс. Мы убеждены, что в настоящее время эта теория является существенной частью теории вычислений и что в будущем онг1 станет важной теорией, которая глубоко проникнет в теоретические работы в области науки о вычислительных процессах.
Цель этой статьи — дать представление о развитии теории сложности вычислений за последнее время, изложив ее главные понятия, результаты и методы. Статья касается прежде всего изучения мер сложности вычислений, определенных для всех вычислимых частичных функций. Мы не пытались ни дать исчерпывающий обзор всей области, ни представить материал в исторической последовательности. Скорее, мы сосредоточили внимание на демонстрации тех результатов и методов, которые нам кажутся важными, и мы хотим представить их с такой точки зрения, с которой их легче всего понять. Эта статья содержит некоторым образом то, что, как мы полагаем, должен знать о сложности вычислений каждый, кто работает в области науки о вычислительных процессах (или по крайней мере в области теории вычислений). С другой стороны, тот кто хочет заниматься дальнейшими исследованиями в этой области, должен прочесть значительно больше. В частности, он должен изучить результаты о специфических мерах сложности
f) Hartmanis J., Hopcroft J. E., An overview of the theory of computational complexity, J. Assoc. Comp. Mach., 18 (1971), № 3, 444—475.
и отношениях между мерами, которые мотивировали основы общего подхода и которые остаются источником идей и контрпримеров.
Следует подчеркнуть, что этот обзор не включает очень интересные недавние результаты, в которых устанавливаются верхние и нижние границы сложности вычисления отдельных функций. Это важная область исследований по сложности вычислений, имеющая, по-видимому, и серьезное практическое значение. В то же время мы убеждены, что эта область очень быстро развивается и сейчас еще преждевременно пытаться дать полный обзор.
Во втором разделе статьи дается мотивировка определения мер сложности вычислений и приводится несколько примеров. Затем выводятся некоторые основные свойства, которые выполняются для всех мер сложности. Показывается, например, что для каждой меры сложности существуют сколь угодно сложные функции, принимающие только значения 0, 1, и что не существует рекурсивного отношения между величиной функции и ее сложностью. С другой стороны, показано, что любые две меры сложности рекурсивно ограничивают друг друга. В разд. 3 мы даем новое доказательство довольно неожиданного результата, согласно которому для любой меры сложности существуют функции, вычисление которых можно сколь угодно сильно ускорить, беря все более и более эффективные алгоритмы. Позднее будет показано, что это верно не для всякой рекурсивной функции. Наше доказательство основано на прямой диагональной процедуре и не опирается на теорему о рекурсии, которая использовалась в первоначальном доказательстве. Добиться этого можно, заметив, что теорема об ускорении не зависит от меры сложности (т. е. если она выполняется для какой-нибудь меры, то выполняется и для всех мер), и затем доказывая ее непосредственно для очень понятной меры сложности — емкости ленты при вычислении на машине Тьюринга. Для этой меры сложности трудность доказательства значительно уменьшается по сравнению с первоначальными трудностями. Теорема об ускорении имеет странное следствие: какие бы две универсальные машины мы ни взяли (неважно, насколько более быстрой и мощной является одна из них), существуют такие функции, которые нельзя вычислить быстрее на более мощной машине. Эго следует из того, что для любого алгоритма, который мы используем для вычисления такой функции на более мощной машине, существует другой алгоритм, настолько быстрый, что даже на медленной машине он выполняется быстрее, чем первый алгоритм на быстрой машине.
Таким образом, существуют функции, которые не имеют наилучших программ, и так как мы не можем классифицировать функции по их минимальным программам, то мы обращаемся к изучению классов функций, сложность вычислений которых ограничена
некоторой рекурсивной функцией. Мы покажем, во-первых, что для любого класса сложности, сложность которого ограничена рекурсивной функцией f, можно эффективно построить строго больший класс, сложность которого задается рекурсивной функцией от сложности функции f (т. е. от времени вычисления f). Следующий результат, теорема о пробелах, утверждает, что это наилучший возможный результат, который мы можем получить, так как в ней показано, что существуют сколь угодно широкие пробелы между классами сложности. Именно, для каждой рекурсивной функции г существует возрастающая рекурсивная функция t, такая, что класс всех функций, вычислимых с границей сложности t, совпадает с классом функций, вычислимых с границей сложности го/).
Таким образом, мы не всегда можем получить более широкие классы сложности, применяя рекурсивную функцию к старой границе сложности. Этот результат имеет еще такое интересное следствие. Когда мы рассматриваем универсальную вычислительную машину, то не важно, как сильно мы увеличиваем скорость вычисления и как много новых операций добавляем; все равно существует бесконечно много рекурсивных границ сложности, для которых старая и новая машины будут вычислять в точности те же самые функции. То есть в пределах бесконечного числа границ сложности нельзя получить никакого преимущества новой машины над старой, увеличивая скорость и вычислительную мощь машины. За обсуждением этого результата следует другой удивительный результат, который показывает, что аксиомы сложности допускают меры сложности с классами сложности, которые могут не быть рекурсивно перечислимыми. К счастью, для широких классов сложности эта ситуация не может иметь места. Показано, что для любой меры все достаточно широкие классы сложности являются рекурсивно перечислимыми.41
В разд. 5 мы более детально рассматриваем процедуру построения новых классов сложности посредством диагонального процесса. Мы предлагаем новый подход, который позволяет разбить «цену диагонализации» любого класса сложности на «цену моделирования» и «цену параллельных вычислений». Из этой общей формулировки мы можем извлечь результаты о классах сложности для специальных мер, если мы знаем, насколько трудно при данной мере моделировать вычисления и выполнять их параллельно. Это иллюстрируется на трех довольно несхожих результатах для классов сложности вычислений на машинах Тьюринга с ограничением на емкость ленты, а также для вычислений на одноленточных и многоленточных машинах Тьюринга с ограничением на время вычисления. В каждом случае различия в структуре
результата прослеживаются на различиях в трудности моделирования и параллелизации вычислений для трех различных мер сложности.
В разд. 6 мы рассматриваем проблему «именования» классов сложности. Во-первых, мы доказываем теорему об объединении, которая утверждает, что объединение любой рекурсивно перечислимой последовательности возрастающих классов сложности снова является классом сложности. Отсюда следует, что многие изучавшиеся ранее подклассы рекурсивных функций естественным образом подходят под многие меры сложности. Например, существует рекурсивная граница L(n) емкости ленты, такая, что класс функций, вычислимых на машинах Тьюринга, у которых длина ленты ограничена функцией L(n), состоит точно из примитивно рекурсивных функций. Второй главный результат этой части — теорема об именовании — несколько ослабляет остроту теоремы о пробелах, показывая, что для любой меры существует (измеримое) множестве^функций, которые именуют все классы сложности, нс оставляя сколь угодно широкие пробелы вверх. К сожалению, оказывается, что именование классов сложности может иметь сколь угодно широкие пробелы вниз.
Теорема об именовании является довольно техническим результатом, а се доказательство — все еще весьма трудно. Читатель, возможно, захочет пропустить это доказательство и перейти к следующей части.
Мы заканчиваем этот обзор некоторыми рассуждениями (в разд. 7) об объеме алгоритмов (машин) для того, чтобы извлечь понятие о сложности описания алгоритма. Сначала мы даем формальное определение меры объема, а затем показываем, что между любыми двумя такими мерами существует рекурсивное отношение. Главный результат этой час#и показывает, что в любом рекурсивно перечислимом списке алгоритмов имеются сколь угодно неэффективные описания. Этот результат используется затем при рассмотрении экономности формализмов, представляющих различные алгоритмы. Например, показано, что если мы используем примитивно рекурсивные схемы для представления примитивно рекурсивных функций, то в некоторых случаях это описание примитивно рекурсивных функций очень неэффективно. Даже среди кратчайших программ, построенных из таких схем, мы можем найти программы, которые можно сократить в любое желаемое число раз, переходя к схемам общей рекурсии. Это означает, что, хотя для вычисления примитивно рекурсивных функций нам нс нужны условные операторы и операторы перехода, их использование позволяет значительно сократить длину наших программ, и тем самым оно выявляет их важность для языков программирования.
В последней части очень кратко излагается история исследований, описанных в этой статье, и делается попытка указать тех,
кому принадлежат первоначальные работы. Мы включили также короткий рекомендательный список литературы для дальнейшего чтения.
МЕРЫ СЛОЖНОСТИ ВЫЧИСЛЕНИЙ
Теория сложности вычислений касается измерения трудности вычислений. Чтобы перейти к этому, мы должны обсудить, что понимается под мерой сложности вычислений.
В этой статье мы рассматриваем меры сложности вычислений, которые определены для всевозможных вычислений, т. е. для всех частично рекурсивных функций, отображающих натуральные числа в натуральные числа. Следовательно, чтобы определить некоторую меру сложности, нам нужен эффективный способ задания всевозможных вычислений или алгоритмов (для вычисления частично рекурсивных функций), а мера сложности тогда будет показывать, сколько «шагов» требуется любому из этих алгоритмов, чтобы по данному значению аргумента вычислить соответствующее значение функции.
Например, нашим списком алгоритмов или вычислительных устройств мог бы быты перечень всех одноленточных машин Тьюринга (которые, как мы знаем, в состоянии вычислить любую частично рекурсивную функцию), а мерой сложности для данной машины Mt (или алгоритма), работающей на аргументе п, могло бы быть число операций, которое она выполнит, прежде чем остановится.
Другая мера сложности получается, когда мы рассматриваем рекурсивный перечень всех программ, написанных на Алголе, и опять определяем сложность i-й программы на аргументе п числом команд, которые выполняются до того, как программа заканчивает работу.
Следует заметить, что эти меры сложности ассоциируются с алгоритмами, а нс прямо с теми функциями, которые вычисляются алгоритмами. Основанием для этого служит то, что при вычислениях мы обычно имеем дело с алгоритмами, определяющими функции, и для каждой вычислимой функции существует бесконечно много алгоритмов, которые се вычисляют. Кроме того, как будет позднее показано, существуют функции, у которых нет «наилучшего» алгоритма, поэтому мы нс можем говорить о сложности функции как о сложности наилучшего вычисляющего алгоритм а>
■ Из предыдущих примеров мы видим, что мера сложности состоит из рекурсивного списка алгоритмов, вычисляющих все частично рекурсивные функции, каждому из которых приписана
сигнализирующая функция1), дающая количество «средств», использованных данным алгоритмом на данном аргументе. Приписывание сигнализирующих функций, кроме того, удовлетворяет некоторым условиям. Если наш список алгоритмов обозначить через фь ф2, фз, ...» а соответствующие сигнализирующие функции — через Фь Фг, Фз, ..., то мы замечаем, что в наших примерах выполняются следующие два условия:
алгоритм фДп) определен тогда и только тогда, когда Фг(п) определена;
для каждого данного числа шагов пт и каждого алгоритма фг, работающего на аргументе п, мы можем рекурсивно определить, заканчивается ли вычисление фДп) через m шагов, т. е. выполняется ли равенство Фг(^) = пг.
Другими словами, если /-я машина Тьюринга останавливается на входе п, то число шагов, которые она делает до остановки, вполне определено. С другой стороны, если /-я машина не останавливается на входе п, то мы не можем определить, насколько сложным является вычисление, так как мера не определена. Что мы можем сделать для любых I и п, так это определить, остановится ли i-машина на входе п через m шагов. Очевидно, что этого можно добиться в нашем первом примере, просто проделывая m шагов i-ro вычисления на входе п и замечая, заканчивается ли вычисление на последнем шаге.
На меру сложности можно наложить дополнительные условия, чтобы более полно охватить некоторые специфические аспекты трудности вычисления, но установленные нами условия являются настолько естественными и основными для любого понятия сложности вычисления, что теперь общепринято, что они должны выполняться для любой меры сложности вычисления. Удивительный факт состоит в том, что они достаточны для доказательства многих интересных результатов о всех мерах сложности, для которых они выполняются. В остальной части статьи это будет некоторым образом проиллюстрировано, хотя мы рассмотрим и ряд специфических мер, чтобы расширить наши представления и проиллюстрировать некоторые специальные результаты.
В то же время следует также отметить, что многие специалисты в области применения вычислительных машин, возможно, гораздо более заинтересованы в результатах о специфических мерах сложности для специфических проблем. Тем не менее обрисованный выше подход достаточен, чтобы начать развивать общую теорию.
Теперь мы уточним понятие меры сложности вычисления. На протяжении всей статьи мы называем рекурсивной функцией всюду определенную вычислимую функцию, а слово «алгоритм» ис-
!) Этот термин употребляется в литературе на русском языке, в подлиннике — функция счета шагов (step-counting function), — Прим. nepeet
пользуем для алгоритмической процедуры даже и тогда, когда она заканчивается не для всех значений аргументов.
Определение. Мерой сложности вычисления^ Ф называется допустимая нумерация) частично рекурсивных функций Фьф2, фз, •••, которым сопоставлены частично рекурсивные сигнализирующие функции Фь Ф2, Ф2, • • •, такие, что
фг(п) определена тогда и только тогда, когда ФДя) определена.'
( 0, если Фг (п) т,
M(f, п, т) = ,‘
I 1, если Ф; (п) = т
есть рекурсивная функция.
Мы уже видели, что число тактов работы машины Тьюринга можно использовать в качестве сигнализирующей функции, чтобы получить меру сложности вычисления. Подобным же образом для определения меры можно использовать число ячеек ленты, прочитанных машиной Тьюринга (если мы условимся считать, что это число не определено, когда машина не останавливается). Фактически большинство других естественных мер сложности, с которыми приходится иметь дело, действительно удовлетворяют этому определению. Если дано некоторое множество сигнализирующих функций, то можно применить произвольную рекурсивную функцию f(n)^ п (или произвольную рекурсивную неограниченную монотонную функцию) к каждой сигнализирующей функции, чтобы получить новое множество сигнализирующих функций. Тем не менее будет показано, что определение мер сложности вычисления является достаточно ограничительным, чтобы исключить из множества сигнализирующих функций те функции, которые не имеют реального смысла меры сложности вычисления. Здесь поучительно рассмотреть несколько примеров, которые не являются мерами сложности.
Число рекурсий, используемых для определения функции в схеме примитивной рекурсии, нельзя использовать в качестве сигнализирующих функций, так как этими схемами невозможно задать все частично рекурсивные функции, и, таким образом, мы нс имеем допустимой нумерации всех алгоритмов.
Функции {Фг}, определенные равенством Фг(м) = 0 для любых I и п, не удовлетворяют условию (1).
Употребителен еще термин «сигнализирующий оператор». — Прим, перев.
Функции {Фг}, определенные соотношением
( 0, если ф; (п) определена, ф/ (я) = 1■
[не определена в остальных случаях,
не удовлетворяют условию (2), так как фг(га) определена для каждых i и п тогда и только тогда, когда M(i, п, 0) = 1, и, таким образом, М (i, п, tn) не может быть рекурсивной (иначе мы могли бы решать проблему остановки).
Из определения меры сложности вычисления получается много результатов. Первый результат состоит в том, что для любой меры существуют сколь угодно сложные рекурсивные функции. Чтобы установить этот результат, мы покажем, что для любой рекурсивной функции f существует рекурсивная функция ф, обладающая тем свойством, что любой возможный способ вычисления ф требует более чем f(n) шагов для бесконечно многих п. Чтобы построить ф, мы просто должны формализовать процедуру (диагональный процесс), которая с ростом п бесконечно часто обращается к каждому номеру t и полагает
ф (га) ^ фг (га), если Ф, (га) < f (га).
Замечание. Мы говорим, что i есть номер функции ф, если фДга) = ф(га) для всех п.
Теорема 1. Пусть Ф — мера сложности вычислений и f— любая рекурсивная функция. Тогда существует рекурсивная функция ф, такая, что для любого номера i функции ф справедливо Ф{(п) > f (га) для бесконечно многих п.
Доказательство. Пусть г (га)—рекурсивная функция, обладающая тем свойством, что для всех I, 1 = 1,2,3,.., существует бесконечно много га, таких, что r^n)= i. Определим
( Фг („)(«)+ b если ф, („) («X f (П),
7(0 в противном случае.
Так как f и г — рекурсивные функции, то (по второму условию, наложенному на меры сложности) мы можем вычислить, выполняется ли неравенство
ф, (л) (л) < f (л).
поэтому ф(га)—рекурсивная функция. Кроме того, если / есть номер ф, то для бесконечно многих га, таких, что г(га) = /, мы имеем ФДга)>^(га), что и требовалось доказать.
Используя несколько более сложный диагональный процесс, мы теперь получим более сильный результат, который утверждает, ЧТО для любой рекурсивной f существуют рекурсивные функции,
сложность которых превышает f почти всюду1). Чтобы установить этот результат, мы просто формализуем утверждение: «если сложность Фг(п) f-й функции меньше, чем f(n^ для бесконечно многих п, то ф не является f-й функцией».
Теорема 2. Пусть Ф — мера сложности. Тогда для любой рекурсивной функции f существует рекурсивная функция ф, такая» что для любого номера i функции ф
Ф; (n) > f (п) для почти всех п.
Доказательство. Пусть f — произвольная рекурсивная функция. Чтобы построить функцию ф, такую, что для любого номера / функции ф было Фj(n)> f(n) для почти всех щ мы поступаем следующим образом: для каждого п мы рассматриваем первую функцию с наименьшим номером I, такую, что ФтХп^^Цп), и делаем ф(п) отличным от фДп) при условии, что это нс было сделано раньше. Более точно, пусть s (я)—наименьшее целое положительное число, меньшее чем п» такое, что
№ (") < f (").
и ни для какого m < п не выполняется
Ф» w И) < / ("О, Ф» w М * Ф (т)-
Если такого числа не существует, то s^n) не определено. Пусть
( 0, если ф5 („)(«)= 1, Ф (п) = { .
( I в противном случае.
Ясно, что ф(п) — рекурсивная функция. Предположим, что ФДл) ^ f (я) для бесконечно многих п и ф; = ф. Рано или поздно для некоторого значения п, скажем п^ число / будет тем наименьшим числом к, для которого Фк(п0) ^ f (fz0), и для m < п0 не выполняется неравенство Фк^т)^!^ с условием фь(т) =/= ф(т). Тогда по определению ф имеем ф(я0) #= фДп0)— противоречие. Следовательно, для каждого номера I функции ф имеем Фг^п)> > f (п) для почти всех п.
Следствие. Для всех мер существуют сколь угодно сложные функции, принимающие только два значения 0 и 1.
Из теоремы 2 мы видим, что существуют сколь угодно сложные ограниченные функции. Отсюда мы немедленно заключаем, что нс может быть рекурсивного отношения между функциями и их сложностями, так как из такого отношения получалось бы ограничение на сложность любой ограниченной функции.
!) Выражения «почти всюду» и «для почти всех» означают: для всех, за исключением, быть может, конечного числа. — Прим, перев.
Т е о р е м а^З. Пусть Ф — мера сложности вычислений.
Тогда не существует рекурсивной функции к, такой, что для каждого i
Цп, Ф1(«))>Ф<(«)
почти всюду (п. в.)
Существует рекурсивная функция h, такая, что для каждого i
к^щФ^У^ф^п) п. в.
Доказательство. Предположим, что такая функция к существует. Тогда сложность любой двузначной функции фДп) должна удовлетворять условию
Ф; (я) ^ к (п, 0) + к (п, 1) п. в., что противоречит предыдущему следствию.
Чтобы показать, что существует желаемая функция h, положим
( ^iW, если ф^п) = пг, HU, п, т) = {
I 1 в противном случае.
Функция Н рекурсивная, так как мы можем определить, выполняется ли Фг^п^т (если да, то фД/г) определена и мы можем вычислить это значение, в противном случае функция принимает значение 1). Функция h определяется так:
Л (я, т) = max Н (i, п, т\i^n
Ясно, что если фДп) определено и i п, то
К (п, ФДп))>ф£ (п),
что и завершает доказательство.
Вторая часть этого результата утверждает, что мы можем рекурсивно ограничить величину любой функции с помощью ее сложности. Отсюда мы заключаем, что «ужасно» быстро растущие вычислимые функции будут и «ужасно» сложными.
Хотя нс существует рекурсивного отношения между величиной функции и се сложностью, существует рекурсивное отношение между сложностями одного и того же алгоритма для любых двух мер. Другими словами, функцию, которую «легко» вычислять при одной мере, «легко» вычислять и при всех других.
Теорема 4. Пусть Ф и Ф — меры сложности. Тогда существует рекурсивная функция г, такая, что для любого i
г (п, Ф£ (я)) > Ф£ (п) и г (п, Ф/ (я)) > Ф, (п) для почти всех п.
Доказательство. Пусть
г^п, m) = max ^iW, Ф/(/г)\i^n и ФД/г) = т или Ф^п^пг^.
Очевидно, что
г (м, ФДм)) > ФДм) и г (п, Ф^ (п)) > Ф^ (п)
для почти всех п. Функция г рекурсивна, так как существует эффективная процедура для определения, равно ли ФД/г) или ФДп) числу т. Если хотя бы одно из этих значений равно т, то оба должны быть определены. Следовательно, можно эффективно вычислить максимум.
Утверждение о том, что две меры связаны рекурсивным отношением, с практической точки зрения значит не слишком много, так как это отношение может быть сколь угодно грубым. Кроме того, рекурсивное отношение, даваемое теоремой 4, может не быть точной границей потому, что данное отношение зависит от нумерации. Так, если мы сравниваем число шагов одноленточной машины Тьюринга с числом использованных ею ячеек ленты, то функция г из теоремы 4 будет зависеть от порядка, в котором мы нумеруем машины Тьюринга. Однако в качестве следствия этой теоремы мы отметим, что сложность любого класса функций, которая рекурсивно ограничена при одной мере (например, полиномами, примитивно рекурсивными функциями и т. д.), будет рекурсивно ограничена при любой другой мере сложности.
Прежде чем перейти к изучению более впечатляющих результатов, мы докажем одну промежуточную лемму, которая показывает, что при любой мере, когда мы комбинируем вычисления, сложность нового вычисления рекурсивно ограничена сложностями составляющих вычислений. Эта лемма часто используется при изучении сложности вычислений.
Лемма 1 (лемма о комбинировании). Пусть Ф — произвольная мера и с(ij)— рекурсивная функция, такая, что если фг (/г) и ^з^ определены, то определено и фС(г, л knY Тогда существует рекурсивная функция h, такая, что
фс а. П (") < А Vi, фг W» ф/ («)) «• в.
Доказательство. Определим
.. . А f Фси.п^. если ф((^) = т и Ф, (и)=/, ри, ], п, пг, 1) = \,'
I 1 в остальных случаях.
Эта функция рекурсивна, и мы получаем желаемую функцию h, полагая
h (п, tn, V)= max p(z, j, п, m, I).
Очевидно, что для n^i, j мы имеем
h (п, Ф, (га), Ф, (га)) > Фс «, п (п);
таким образом, это неравенство выполняется почти всюду, что и требовалось показать.
ТЕОРЕМА ОБ УСКОРЕНИИ И ЕЕ ПРИЛОЖЕНИЯ
Теперь мы дадим новое доказательство (без использования теоремы о рекурсии1) довольно удивительного результата о существовании функций, нс имеющих наилучших алгоритмов. На самом деле мы покажем, что для любой рекурсивной функции г(п) существует рекурсивная функция ф(п), такая, что для каждого номера i функции ф найдется номер j этой функции, для которого ФДя) ^ ^ г ^Ф^п^, если п достаточно велико.
Например, если мы выберем г ^п^ = 2й, то существует рекурсивная функция ф, такая, что если фг = ф, то для некоторого другого номера / функции ф мы имеем•
ФДп)<ЛоеФДп) п. в.
Болес того, этот процесс можно повторить, и мы заключаем, что существует номер А функции ф, такой, что
Ф/г(Аг) ^ log logФ^ (az) п. в., и это логарифмическое ускорение можно итерировать любое число раз.
Вместо того чтобы прямо доказывать самый общий случай, мы вначале установим этот результат для одной специфической и понятной меры с помощью прямых диагональных рассуждений, а затем для получения общей теоремы используем тот факт, что все меры связаны рекурсивным отношением. Мера сложности, которую мы используем, основана на емкости ленты, используемой одноленточной машиной Тьюринга. Машины модифицированы таким образом, что они никогда не зацикливаются на конечном куске ленты, и, таким образом, эта мера удовлетворяет двум условиям нашего определения. Кроме того, мы модифицируем машины так, чтобы Li(n) (число ячеек ленты, использованных i-й машиной Тьюринга на входе az) было больше, чем длина описания i-й машины. Наконец, мы используем такую нумерацию этих машин Тьюринга, что i-я машина имеет нс больше i различных символов ленты. Преимущество выбора емкости ленты в качестве меры сложности свя-
9 Пусть фь ф2, фз, • •• • — вычислимая главная нумерация. Тогда для каждой рекурсивной функции f(i, п) существует t0, такое, что f (Zo, п^ — ф.^ (п) для всех п. Эквивалентное этому утверждение называется теоремой о неподвижной точке. — Прим, перев.
зано с тем, что ленту можно использовать повторно несколько раз для различных вычислений, которые мы будем выполнять в ходе нужного нам вычисления функции ф.
Мы говорим, что рекурсивная функция f (п) является емкостной сигнализирующей функцией, если существует одноленточная машина Тьюринга, которая использует точно ^п^ ячеек ленты для вычисления при аргументе п, п = 1,2, ... .
Основная идея следующего ниже доказательства очень проста. Мы строим функцию ф, которую «малые» машины быстро вычислять не могут, проводя диагональный процесс, в котором сила условий убывает с ростом номера машины. Более точно, для подходящим образом выбранной функции h мы формализуем следующую процедуру построения ф: «если t-я машина вычисляет фг(п), используя менее h^n — i) ячеек ленты, то ф не совпадает с фг», затем мы показываем, что этот диагональный процесс достаточно прост, чтобы для любого А мы могли с помощью достаточно большой машины вычислить ф, используя h^n — k) ячеек ленты.
Лемма 2. Пусть г^п")— произвольная рекурсивная функция. Тогда существует рекурсивная функция ф(п), такая, что для каждого I, для которого фг(я) = ф(я), существует j, удовлетворяющее условиям'
ф/(п) = ф(п) и Ь^п^г^Ь^п^ для достаточно больших п.
Доказательство. Не теряя общности, мы можем предполагать, что г^п)—строго возрастающая емкостная сигнализирующая функция. (В противном случае заменим т^ на Цп^, где f^n")— строго возрастающая емкостная сигнализирующая функция и r(n)>r(n) ' для всех п.) Определим Цп), полагая й(1)= 1 и для п > 1
Н^ = гЦг (п— 1))+ 1.
Тогда для всех п > 1
h (п) > г^Цп— 1)) и, очевидно, h является емкостной сигнализирующей функцией, так как г (А) и г (^)+1 — емкостные сигнализирующие, а следовательно, по индукции такова и h^nY
Определим функцию ф(п) таким образом, что
фг(п)=ф(п) влечет за собой то, что Li (n)> h(n— Г) п. в.
для каждого к существует номер /, такой, что
ф/(Аг) = ф(гг) и L^n^^h^n — kY
Это гарантирует, что для данного номера I функции ф существует номер / функции ф, такой, что
Lf (п) > г^ЬДп^ п. в.
Чтобы получить это, выберем / так, чтобы Li^^h^n — i— 1).
Тогда
Li (п) ^ h (п — i) > г (h (п — i — i))^ г ^Lt (п)).
Построение ^(п). Положим
н)_J Ф1 ^^ + 11 если XiXMl),
0 в противном случае.
Если Lx^<hk\\ то вычеркиваем первую машину из списка машин Тьюринга. Для п = 2, 3, 4, ... полагаем
фХ)+ h
где i < п наименьший, еще не вычеркнутый
Ф («) =
номер, такой, что Ц (п) < h\(n— i), и вычеркиваем номер ц
0,
если такого i не существует.
Очевидно, что если /-я машина вычисляет ф, то L^n^^h^n— /) п. в.,
так как для достаточно большого п0 каждое / < I, которое рано или поздно вычеркивается, будет уже вычеркнуто, и, следовательно, если
Lt (п) <h(n — /)
для какого-нибудь п > п0, то
Ф W = Фг to + 1 и, следовательно,
Ф/ W=#^W.
Более того, для каждого к существует машина Тьюринга /, которая вычисляет ф, используя
Л у (м) ^ А (п — А)
ячеек ленты. Пусть ik> к таково, что при любом фиксированном i^ik неравенство
Иг Vn — О < h (п— А)
выполняется для всех п > L (Такое ik найдется, если с самого начала взять быстро растущую г, например f^^^11.) Пусть о — значение аргумента ф, при котором вычеркивается последний из тех номеров i < i^ которые вычеркиваются в ходе построения. Машина / работает следующим образом. Если п ^ у, то она просто печатает значение ф(п), которое хранится в ее конечной внутренней памяти. Для п > v машина / следующим образом вычисляет наименьшее невычеркнутое I:
/ отмеривает h(n — к^ ячеек ленты;
/ запасает во внутренней памяти значения номеров, вычеркнутых для аргументов п<.и;-
для и < m ^ п машина / моделирует каждую машину /, к ^1 ^п, определяет, какая машина вычеркивается при каждом из значений m < п, и затем находит наименьшее невычеркнутое /, такое, что
Li (л) < А(м —0> и записывает.
Ф (™) = Фг W+ 1.
Если такого I не существует, то ср(п) полагается равным нулю. Это моделирование можно осуществить, используя hQi — ^ ячеек ленты, так как машина / моделирует только те машины, номера которых не меньше к, и моделируют машину i только до тех пор, пока она использует менее h(n — i) ячеек ленты. Так как машина I имеет не больше i символов ленты, моделирование требует не больше
th Vn — i) < h^n — &) ячеек ленты.
Теперь мы рассмотрим произвольные меры и покажем, что для всех мер справедлива теорема об ускорении.
Теорема 5 (теорема об ускорении). Пусть Ф — мера сложности и г^ — рекурсивная функция. Существует рекурсивная функция <р(п), такая, что для каждого I, такого, что ^(п} — ф(^), существует ], для которого„
Ф/(^) = ф(^) м Ф^^г^кг^п.в.
Доказательство. Не теряя общности, мы предполагаем, что г^—монотонно возрастающая функция. Так как все меры связаны рекурсивным отношением, существует строго монотонная неограниченная рекурсивная функция R, такая, что
Ll (п) < R (Фг (я)) и Фу (/г) < R (Lf (п)) п. в.
при условии, что Фг(п) и Lj (п) растут быстрее п. Положим r^n^R^r^R^).
Выберем по лемме 2 функцию $ так, что для каждого I, такого, что Фг = ср, существует-номер / функции ф со свойством
Lt (ti) ^ г (LДп?>) п. в.
Тогда
R (г (Ф/ (n))) < R (г (R (L/ (и)))) < Ц ^ < R (Ф; (п)) п. в.
Но из
Я (г (Ф/ («))Х Я (Ф, V^ П. В.
и строгой монотонности функции R следует /■(Ф/НКФ^п) п. в., что и нужно было показать.
В следующем разделе мы покажем, что нс для всякой рекурсивной функции можно ускорить ее вычисление, доказав, что для любой меры существует возрастающая рекурсивная функция А, такая, что для каждой достаточно большой временной сигнализирующей функции Фг существует функция f, имеющая сложность Фъ вычисление которой нельзя ускорить в h раз. То есть f вычислима за Фг шагов, но не вычислима за Ф^ шагов, если
Л оф, (я) < Фг (п) п. в.
Таким образом, для любой меры многие функции имеют й-наи- лучшис программы.
Следует также заметить, что ускорение нс эффективно в том смысле, что величина и в конструкции леммы 2 определяется неэффективно. Отсюда сразу возникает вопрос, существует ли другая конструкция и другая функция f, для которой ускорение эффективно. Если требуется небольшое ускорение, скажем линейное ускорение при вычислениях на машинах Тьюринга с ограничением на емкость, то эффективная процедура существует. (Что значит «небольшое» — это, конечно, зависит от меры, и оно должно быть меньше, чем только что упоминавшееся А.) Однако большие ускорения нс могут быть эффективными. Так как эффективность ускорения не зависит от меры, мы рассмотрим емкостную сигнализирующую функцию для одноленточных машин Тьюринга и покажем, что для этой меры большие ускорения неэффективны. В наброске доказательства снова будет использован тот факт, что мы можем повторно использовать ленту много раз для различных вычислений. Пусть ф — некоторая функция и и,/2, f3,...— список программ, вычисляющих ф и обладающих тем свойством, что если Ф/ = ф, то существует 6, такое, что г (Ф/^ (я)) < Ф/(п) п.в. Здесь г — достаточно большая функция, и перед нами стоит проблема, можем ли мы предполагать, что этот список рекурсивно перечислим 1).
Рассмотрим алгоритм, который для входа п отмечает две ячейки ленты, перечисляет столько номеров из списка ц, l^ is,..., сколько поместится на половине куска ленты, заключенного между отмеченными ячейками, и затем моделирует (некоторым подходя-
9 Отрицательное решение этой проблемы еще не доказывает «неэффективности ускорения», которую естественно понимать так: не существует частично рекурсивной функции р, такой, что если ф, = ф, то рЦ^ определено и фР(,) есть r-ускорение для функции ф (т. е. г ^Фр^)^) < ФДя) п. в.). Это утверждение доказано Блюмом [1]. — Прим, перев.
щим способом) последовательно каждый алгоритм ф^, ф^, ... до тех пор, пока моделирование нс попытается выйти за пределы отмеченной части ленты. Если ни один из алгоритмов еще не вычислил ф(п), то отмечаются две более удаленные друг от друга ячейки и процесс повторяется. Таким образом, каждый алгоритм ф^ из списка может быть промоделирован для достаточно большого п, и так как для моделирования ф^ нашим алгоритмом требуется емкость ленты, нс более чем в постоянное число раз большая, чем емкость, использованная самим ф^, то мы можем заключить, что этому алгоритму требуется приблизительно такая же емкость (почти всюду), как и любому из алгоритмов нашего списка. Следовательно, в этом списке нет программы, которая использовала бы значительно меньшую емкость, и поэтому для построенной нами программы мы не имеем r-ускорения. Таким образом, мы не можем рекурсивно перечислять какой-нибудь список алгоритмов, вычисляющих функцию f, который для любого алгоритма, вычисляющего f, содержит его г-ускорснис.
Так как теорема об ускорении применима ко всем мерам сложности, то ее можно применять для ускорения программ вычислительных машин. Однако такие программы обычно используются для вычисления значений функции для некоторого конечного множества значений аргумента, а не для всевозможных значений. Уменьшение асимптотического времени работы программы почти всюду — это не совсем то, в чем заинтересован вычислитель-практик. Однако теорема говорит о том, что мы нс можем классифицировать функции по сложности их вычисления, так как некоторые функции нс имеют внутренней минимальной сложности. То, что мы будем делать вместо этого, — это определять классы сложности и изучать их в разд. 4.
Прежде чем перейти к изучению классов сложности, мы обсудим одно приложение теоремы об ускорении. Рассмотрим две вычислительные машины, каждая из которых может вычислять все частично рекурсивные функции. Предположим, что одна из вычислительных машин имеет очень богатое множество операций и, скажем, может выполнять (10!10!)! операций в секунду. Предположим, что вторая машина имеет всего несколько операций первой машины и может выполнять только по одной операции за каждые сто лет. Мы можем теперь использовать эти вычислительные машины и их программы, чтобы определить две меры сложности вычислений, основанные на их времени работы, измеряемой в секундах. Кроме того, мы знаем из теоремы 4, что времена работы этих двух машин связаны рекурсивной функцией к. Очевидно, что h будет на самом деле очень большой функцией. Тем нс менее теорема об ускорении утверждает, что если мы возьмем функции, которые имеют r-ускорснис при г > /г, то мы нс сможем получить прсиму-
щества в скорости вычисления, используя более быструю машину для вычисления этих функций, так как для каждой программы быстрой машины существует другая программа для медленной машины, вычисляющая ту же функцию быстрее (для больших значений аргумента). Отметим, что это заключение выполняется только для достаточно больших значений п и что не существует эффективного способа нахождения программы для медленной машины; однако мы знаем, что она существует.
Позднее мы получим связанный с этим результат, теорему о пробелах, которая утверждает, что можно указать сколь угодно большую рекурсивную функцию, такую, что множество функций, время вычисления которых ограничено этой функцией, одно и то же для обеих машин. В этом случае, как будет видно, доказательство не основано на том, что медленная машина использует лучшие программы.
КЛАССЫ СЛОЖНОСТИ
Во втором разделе этой статьи мы постулировали два свойства, которыми должна обладать любая мера сложности вычислений, а затем мы получили несколько результатов о мерах сложности, используя только эти постулаты. Мы видели, что для любой меры существуют сколь угодно сложно вычислимые функции, что не существует рекурсивного отношения между величиной функции и сложностью ее вычисления, что любые две меры сложности связаны рекурсивным отношением (они рекурсивно ограничивают друг друга) и, наконец, что существуют функции, вычисления которых могут быть как угодно «ускорены».
Мы теперь обращаемся к изучению классов функций, сложность вычисления которых ограничена рекурсивными функциями. Более точно, для любой меры сложности Ф и рекурсивной функции фг мы определяем класс сложности
с^ = {ф/ IQ/^XcpJn) П. в.}.
Таким образом, Сф или Сф состоит из всех вычислимых функций, сложность которых ограничена функцией фг почти всюду.
Рассмотрим первой проблему, состоящую в построении для данного Сф. нового класса сложности, который содержит некоторую новую функцию, не содержащуюся в Сф..
Построение нового класса будет достигнуто с помощью диагонального процесса, охватывающего всюду определенные функции, которые вычисляются за фг(^) шагов. Следует отметить, что в нашей диагонализации мы будем рассматривать каждый номер бесконечно часто, так как функция ф, находится в Сф. лишь при уело-
вии, что ФДя)^Фг(я) для достаточно больших п. Таким образом, даже если мы найдем, что ФДм)>фг(п) для некоторого п, мы все же должны проверять позднее, не выполнилось ли обратное неравенство и не должны ли мы сделать ф ф^.
Чтобы это сделать, выбираем, во-первых, рекурсивную функцию г, такую, что для каждого i, г (я) = i для бесконечно многих п. Затем определяем
f Фг («)(»)+1. если Фг („)(«)<фг(п), Ф {П) = 1 .
( 1 в противном случае.
Если фу е Сф , то для достаточно большого п имеем r(n) = j и Фу (п) ^ фг (п), откуда следует, что Ф=#Фу по построению. (Заметим, что из фу е Сф. не обязательно следует, что Фу^ф; п. в. Отсюда следует только, что существует номер к функции фу, т. е. Фу = Ф^, такой, что Ф^^ф^ п. в. Не теряя общности, мы будем предполагать везде в этой статье, что в таких ситуациях мы уже выбрали подходящий номер.) Таким образом, ф не принадлежит Сф.. С другой стороны, в силу леммы о комбинировании мы знаем, что для некоторой рекурсивной h и номера к функции ф
Фй (n)^h{n, Фг(п^п), Ф,(п)) п. в.
Таким образом, мы получили следующий результат.
Теорема 6. Для любой меры Ф существует рекурсивная функция Н, такая, что для каждой всюду определенной фг существует функция fi
Эту формулу можно упростить, устранив первый аргумент из Н^п, Фг(п)), если Фг(п)^п. Но в общем случае мы не можем это сделать, так как если одна из наших мер есть число ячеек рабочей ленты, использованных машиной Тьюринга со входом, и Фг(п) — константа (в действительности такая машина — это конечный автомат), то //(Фг(п)) была бы константой и не могла бы ограничивать, скажем, число шагов обычной машины Тьюринга, которое растет по крайней мере линейно с ростом аргумента.
Следствие. Для любой меры Ф существует рекурсивная функция к, такая, что для любой всюду определенной ^г(п), такой, что Фг(я)^ п, существует такая fi(n), что
h^^^ U fi^^hoO.*
Слегка модифицировав предыдущее доказательство (заменив Н возрастающей /?), мы можем получить новый класс сложности, собственно содержащий в себе старый класс.
Следствие. Для любой меры Ф существует рекурсивная функция R, такая, что для любой всюду определенной фг
Сф^ CZ Ср ^П1 ф^ (П)у
Как и раньше, если мы рассматриваем достаточно «трудную» рекурсивную функцию фг, т. е. ФДп)^п, то мы можем выбросить п из предыдущего соотношения и получить C^t cz СрОфГ
Предыдущие результаты показывают, что для любой меры сложности мы можем получить новые классы сложности эффективно по сигнализирующей для любой рекурсивной фг-, т. е.
Сф cz СроФ^.
Доказательство этого результата было совсем простым и мы видели, что сигнализирующая Ф; вошла в это выражение потому, что мы должны были вычислить фг, чтобы ограничить число шагов моделирования фг(п)(^). Если бы мы могли величину сигнализирующей Фг рекурсивно ограничить величиной функции фг, мы могли бы получать новые классы сложности эффективно по фг- вместо Фг. С другой стороны, мы знаем, что сложность функции нельзя рекурсивно ограничить ее величиной, и это вызывает подозрение, что не существует рекурсивной функции q, такой, что СФ/ с С^оф^ для всех достаточно больших фг. Следующий результат подтверждает это подозрение, устанавливая, что предыдущий результат является самым сильным результатом об эффективной равномерности, который мы можем получить, когда рассматриваем все всюду определенные функции.
На теорему о пробелах, которую мы докажем далее, можно смотреть как на утверждение о том, что для любой меры сложности сигнализирующие функции редко разбросаны среди рекурсивных функций. Причина этого состоит в том, что второе условие для мер сложности позволяет нам решать, выполняется ли ФДп^^т для всех п, m и L Это условие настолько сильное, что, используя его, мы можем построить для каждой рекурсивной функции г рекурсивную функцию t, такую, что ни одна сигнализирующая функция не попадает бесконечно часто между t и г о t, гарантируя таким образом, что все, что можно вычислить с границей г ot, можно также вычислить и с границей L
Теорема 7 (теорема о пробелах). Для любой меры сложности Ф и для любой рекурсивной функции г, r^^n существует рекурсивная монотонно возрастающая функция t, такая, что
Ct :== С rot.
Доказательство. Пусть фь ф2, Фз, ... — нумерация сигнализирующих функций меры сложности Ф. Мы определяем же-
лаемую t индуктивно: пусть
40 = 1,
Ц« + 1) = 4«) + тп, где
mrt = min(m| для каждого i^n, либо
Ф;(п + 1)>го(/(п) + т), либо Ф^п-^ 1)^(л) + ^)-
Последний предикат рекурсивен, так что мы можем проверять его для т= 1,2, 3, ... . Чтобы убедиться, что эта процедура найдет желаемое mn, заметим, что существует лишь конечное число значений Фг(^+1), i^ я, и, таким образом, существует т, такое, что
Ф^п-^ 1)<Ф) + т
для всех тех i, 1 ^ i ^ п, для которых Фгк.^ + 1) определено; если Фг(п+ 1) нс определено, то, очевидно,
Ф£(n+ X^^ro^t^ + ^ Для всех т.
Таким образом, желаемое т существует, и мы заключаем, что t^—рекурсивная функция.
Чтобы получить, что Ct a Grot, мы должны найти Ф;, такую, что Ф}(п) ^ г о Цп) п.в., и нс верно, что ФД^^Ця) п. в. Это невозможно по построению I, так как Ф^п") ^ г о t(n) п.в. влечет Ф,(п) tW П. В..
Таким образом,
Ct = Grot* '
Теорема о пробелах показывает, что существуют сколь угодно широкие «пробелы» между рекурсивными функциями, в которых не содержится (с точностью до конечного числа значений) ни одной сигнализирующей функции. Классы сложности, определенные функциями, ограничивающими такой пробел, совпадают. Отсюда также следует, что мы нс можем иметь рекурсивного способа увеличивать каждую достаточно большую всюду определенную функцию фг до гофг, чтобы получить границу сложности для некоторого вычисления, не лежащего в Сф/.
В то же время стоит напомнить, что существует рекурсивный способ увеличения сигнализирующей Ф^ любой рекурсивной функции фг, дающий границу для вычисления, которое нс принадлежит Сф., т. с. Сф; cz Сщ^ф^у Мы используем теперь этот результат, чтобы показать, для каких подклассов рекурсивных функций мы можем рекурсивно увеличивать границу сложности, чтобы получать новые вычисления.
Отметим сначала, что емкостная и временная сигнализирующие машины Тьюринга являются границами для вычислений самих
себя. Более точно, существует рекурсивная функция о, такая, что для каждой емкостной сигнализирующей L^ мы имеем
= И
Функция a(i) по машине Mt дает новую машину, которая проверяет, сколько ленты использует М^ и затем записывает число ячеек ленты в качестве выхода в подходящей (скажем, двоичной) форме. При подходящих соглашениях о записи выхода то же самое верно для временных сигнализирующих многоленточных машин Тьюринга. Это наводит на мысль о том, что меры, у которых сигнализирующие служат границами сложности, собственных вычислений, заслуживают специального внимания.
Определение. Мера сложности вычислений Ф называется собственной, если существует рекурсивная функция а, такая, что для всех i
= и
Это приводит нас к следующему результату. .
Следствие. Для любой собственной меры Ф существует рекурсивная функция R, такая, что для всех i
Сф. CZ Сд ^г, Ф^ ЫУу
Доказательство. Так как Фг- служит границей вычисления Фг, то мы можем заменить фг на Фг во втором следствии теоремы 6.
Предыдущий результат легко можно обобщить на все меры, если заметить, что для любой меры величина сигнализир} ющей рекурсивно ограничивает сложность своего собственного вычисления.
Лемма 3. Для любой меры Ф существуют две рекурсивные функции о и г, такие, что для всех i имеем ФДя) = фацД^) и г(П,Фг(п))^ Ф0^(п) П. в.
Доказательство. Тот факт, что для всех i, m и п мы можем решить, выполняется ли ^Q^^ = m, позволяет нам дать доказательство, очень похожее на доказательство леммы о комбинировании1). Мы полагаем
ГФа(0(га), если ^aWW = m, р п, т) =\-
r v(1 в противном случае.
9 Существование функции о вытекает из определения меры сложности вычислений. — Прим. ред.
и затем определяем
г (n, m) = max р (i, п, т\
Очевидно, что г является требуемой ограничивающей функцией. Объединяя этот результат с теоремой 6, мы получаем следующую теорему.
Теорема 8. Для любой меры Ф существует рекурсивная функция h, такая, что для всех i
Сф. ^ Си (л, ф^ (п)).
Доказательство. Достаточно заметить, что результат леммы 3, подставленный в результат второго следствия теоремы 6, дает желаемое отношение.
Возвращаясь к последнему результату, мы видим, что сигнализирующие можно рекурсивно увеличивать, чтобы получать границы для новых вычислений. Этот результат связан прежде всего с тем фактом, что мы можем перечислять сигнализирующие Фг и определять, выполняется ли фДп) = т. Сейчас мы обобщим это наблюдение.
Определение. Множество функций {yj, которое можно рекурсивно перечислить и для которого можно при любых i, т, п решить, выполняется ли ^Дп^=т, называется измеримым множеством функций.
Заметим, что сигнализирующие любой меры сложности образуют измеримое множество и, кроме того, свойство быть измеримым множеством нс зависит от меры сложности.
Приведенное выше определение позволяет нам установить более общий результат.
Теорема 9. Пусть {yj — измеримое множество функций. Тогда для любой меры сложности Ф существует рекурсивная функция г, такая, что
C^l cz С г (п, Ч^у
Доказательство. Заметим, что для любого измеримого множества существуют рекурсивные о и й, такие, что
Фа«) = ¥< и Фо(п(«)<ММа(1)(«)) П.В.,
и затем используем второе следствие теоремы 6.
Теперь мы рассмотрим проблему перечисления всех функций, принадлежащих классу сложности.
Мы говорим, что класс сложности С? рекурсивно перечислим, если существует рекурсивно перечислимое множество номеров, которое содержит номер каждой функции из С? и состоит только из
номеров функций из С?. Заметим, что мы отнюдь не настаиваем на том, чтобы алгоритмы, которые появляются при этом пересчете, сами работали в пределах границы /, мы требуем только, чтобы они были именами (номерами) функций, для которых существует некоторый алгоритм, работающий в пределах t (почти всюду).
Оказывается, что три специфические меры сложности, обсуждавшиеся в этой статье, имеют рекурсивно перечислимые классы сложности. Мы покажем, что это имеет место для любых мер сложности, если классы сложности (их границы) достаточно велики. С другой стороны, мы покажем также, что существуют меры сложности, для которых классы сложности нс могут быть рекурсивно перечислимыми. Это довольно удивительно, так как отсюда следует, что нс существует эффективного способа описания того, какие функции лежат в этих классах. Это означает, что такие меры сложности являются весьма патологическими и что на меры сложности надо налагать дополнительные ограничения, чтобы устранить такие случаи.
Отмстим сначала, что для любого рекурсивно перечислимого множества рекурсивных функций мы можем ограничить (п. в.) их сигнализирующие.
Лемма 4. Пусть Ф — любая мера и А—рекурсивно перечислимое множество всюду определенных функций. Тогда существует рекурсивная функция t, такая, что A ^Ct.•
Доказательство. Пусть ц, 1^ is,... — рекурсивный пересчет А, тогда определим
t {п) = шах [Ф^ (я) | j < п^.
Очевидно, что Цп) рекурсивна и что для каждого j имеем Ф^п)^ ^t(n) п. в. Таким образом, А Ct.
В следующем результате мы используем множество функций с конечной основой:
^={ф/|фД^) всюду определена и qpf(n) = O п. в.}.
Легко видеть, что ^ рекурсивно перечислимо, и, следовательно, йля любой меры Ф существует рекурсивная t, такая, что ^ s С?. Теперь мы покажем, что все классы сложности, которые содержат Ct, являются рекурсивно перечислимыми.
Теорема 10. Пусть Ф — мера сложности и t такова, что ^ г С?. Тогда для каждой рекурсивной ^j(n)^ Цп) класс сложности С^ рекурсивно перечислим.
Доказательство. Пусть cpjW^ t(n"). Рассмотрим рекурсивно перечислимое множество функций
1Фа«,р,») l*= 1, 2, 3, ... и р, w = 0, 1, 2, 3, ...),
гдеФа Ц, р, ку) (^) =гдеФа Ц, р, ку) (^) =Фг (и),ОФг (и),Оесли для каждого к ^ р Фг (&) ^ w и для каждого к, р < к^ п, Ф/^Хф/W»
где
Фа Ц, р, ку) (^) =
где
Фа Ц, р, ку) (^) =
Фг (и),
О
Фг (и),
О
в остальных случаях.в остальных случаях.Таким образом, Фсщ.р,^ равна фг, если сложность Фг (п) ^ фу (л)
в остальных случаях.
в остальных случаях.
для всех п > р, а для п^р имеем ФД/г)^^, в остальных случаях ФаС.р^)— функция с конечной основой. Если
Фг (^Хф/ (я) п- в.,
то для некоторых р и w
Фа (f, р, w) " Фг»
и, таким образом, каждое фг из С^ появится в нашем пересчете. Кроме того, так как все функции с конечной основой принадлежат С^р то мы можем заключить, что имеем только функции из С^. Таким образом, а (г, р, ш) даст желаемый пересчет.
Следующий результат показывает, что существуют меры сложности, для которых «малые» классы сложности могут нс быть рекурсивно перечислимыми.
Теорема 11. Существует мера сложности Ф и рекурсивная /, такие, что С? не является рекурсивно перечислимым. *
Доказательство. Пусть ф., ф/? ...—рекурсивный пересчет константных функций, такой, что Фгу(я) = Л Определим меру Ф следующим образом: для всех k^ip / = 1, 2, ..., пусть Фк (Я) Л !), И ПУСТЬ
^ (и) =^ (и) =О, если МД}") не останавливается за к шагов, п в остальных случаях.
^ (и) =
^ (и) =
Таким образом, Со состоит из всех тех константных функций ф^(^) = д для которых /-я машина Тьюринга М^ нс останавливается на входе /. Следовательно, если ф^, ф^, ... —пересчет Со, то ф^(1), Ф^2(1), Ф^3(0» •••—пересчет множества {/IMy (/) не останавливается}. Получили противоречие, так как известно (и можно легко показать), что это множество нс рекурсивно перечислимо.
Интересно отмстить, что это доказательство существенно опирается на тот факт, что для этой меры конечное изменение функции фг может вызвать бесконечное изменение се сложности Фг*.
!) Для тех п, для которых фДд) определено. — Прим, реб.
Если это не имеет места, то все классы сложности рекурсивно перечислимы. Следующий результат использует это наблюдение.
Следствие. Пусть Ф — мера, обладающая тем свойством, что если (^t = фу п. в., то ф, s Cf тогда и только тогда, когда (pz е С^. Тогда все классы сложности С® рекурсивно перечислимы.•
Доказательство этого результата подобно доказательству теоремы 10.
МОДЕЛИРОВАНИЕ И ПАРАЛЛЕЛИЗМ
В этом разделе мы более детально рассмотрим диагональный процесс над классами сложности и выразим сложность этого процесса в терминах сложности «моделирования» и сложности «параллельного» выполнения двух вычислений. Этот подход позволит нам глубже проникнуть внутрь этого процесса и легко получить некоторые результаты о специфических мерах сложности.
В предыдущей части мы рассматривали следующий диагональный процесс, который работает для любых I, при условии, что фг — всюду определенная функция, давая функцию, не принадлежащую Сф :
Ф^нЛ"^Ф^нЛ"^фг w («) + 1, если Фг w (п) < ф, (п),
Ф^нЛ"^
Ф^нЛ"^
1 в противном случае,
где г(п)—любая вычислимая функция, обладающая тем свойством, что для каждого i существует бесконечно много п, таких, что r^ = I. Теперь мы слегка изменим этот процесс, чтобы получить результаты, полученные ранее для специфических мер.
Вместо проверки того, что вычисление фг(п)(м) использует не более фг(п) шагов (т. е. верно ли, что ФГ(п)(л) < фДя)), мы строим машину (находим алгоритм), которая вычисляет фГ(п)(^), и затем накладываем ограничение на то, как долго этой машине разрешается моделировать фГ(П)(^). Таким образом, в первом диагональном процессе мы ограничивали число шагов моделируемого вычисления фГ(п)(^). В новом процессе мы ограничиваем число шагов моделирующего вычисления фГ(п)(я). Более точно, пусть
Фз W = Фг W (») + 1
И
<»MvM =<»MvM =Фз (п), если Ф5 (п) < фг (п),
<»MvM =
<»MvM =
1 в противном случае.
Теперь мы выразим сложность моделирования и ограничения моделирования Фд(г) через сложности Фг(п)(«) и ФДп).
Лемма 5. Для любой меры Ф существуют рекурсивные функции S и Р, такие, что
s («, Фг (я) (и)) > Ф5 («) и
для всех i и почти всех п.
Доказательство. Пусть
о , х f фз W» если Фг w (п) = пг, (1 в противном случае.
Чтобы построить Р, поступим как в лемме о комбинировании, полагая
,х(фо (П W,если Ф; (и) = пг,
ри, п,гп),
(1в противном случае,
и затем положим
Р(п, m) = max р ^щ п, пг\I п
Следующий результат дает эффективный способ построения новых классов сложности.
Теорема 12. Для любой меры существуют две рекурсивные функции S и Р, такие, что для всех рекурсивных фг и ф^-, если
$W Ф,(п)) <фг(п),
то существует рекурсивная f, такая, что
f ^ С^р но f ^ Ср (п, ф£ ^у .
Комментарий. Интуитивно результат утверждает, что если потеря времени на моделирование вычислений, ограниченных функцией ф^, не превышает фг (т. е. S^n, фДп)) < фДм)), то мы можем провести диагональ по этим вычислениям за время фг. Кроме того, затраты на ограничение моделирования после того, как оно использовало фДм) шагов, связаны с трудностью вычисления фДп) (а именно ФДп)) и задаются функцией Р^п, ФДп)), которая описывает сложность привлечения механизма ограничения (или его'Выполнения параллельно с моделированием). Таким образом, сложность диагонального процесса не превосходит Р(п, ФДп)), и, следовательно, существует функция f^ СР ^Пг ф. ^у такая, что f^C^p
Доказательство. Пусть S и Р— всюду определенные функции, удовлетворяющие лемме 5, и пусть S не убывает по вто-
рому аргументу (т. е. к > / влечет за собой то, что для всех i S(i, к)>- S(i, /)). Пусть / (га) = фу^га). Заметим, что
Р(п, Ф^п^^Фо (Z)(ra) п. в.,
и, следовательно, фс (Z) (га) е СР (П,Фг(п)).
Чтобы показать, что ФО(п(га) не лежит в Сф/, рассмотрим любую ф£ из СФ , сложность которой ограничена функцией фу, ®й(га)^s Ф/(и) п. в. По лемме 5 для достаточно больших га Ф5(га)<$(п, Фг(„)(га)).
Кроме того, по построению г для сколь угодно больших га справедливо г^=к, следовательно, фй(га) = фг(п)(га) и Фа(п) = Фг(п)(га). Таким образом, для достаточно больших п
Ф5(га)<3(га,Ф6(п)).
и так как Ф* (га) ^ фу (га), то
S(ra, Ф*(га))<3(га, фДга)).
По условию теоремы
S (га, ф, (га)) < фг (га), и, следовательно,
Ф5 W < Фг ("). откуда следует, что
Фц(г>(л) = фИл) = Фг <«)(«)+ 1 =Ф^(«)+ 1.
Но тогда Ф^^Фощ. Отсюда, вспоминая, что /(га) = ф0 (П (п), имеем, что /^Ср^п,ф{ш)> f^C^, что и требовалось показать.
Слегка модифицируя доказательство теоремы 12, мы получаем следующий результат.
Следствие. Для любой меры существуют две рекурсивные функции 3 и Р', такие, что для любых рекурсивных ф1 и ф/, если 3(га, фу (га)) < ф, (га), ТО
С^^ Ср' («,ф; му
Этот результат устанавливает достаточное условие того, что один класс сложности собственно содержится в другом. К сожалению, эти результаты опять не эффективны по фг, а эффективны только по Фг, и теорема о пробелах утверждает, что это лучшее, что мы можем сделать.
Чтобы усилить наши представлен ня и понимание общего подхода, мы рассмотрим теперь несколько специфических мер. Как будет видно, для специфических мер мы часто сможем получить
более тонкие границы для времени моделирования S и затрат Р на проведение двух процессов параллельно.
Рассматриваемые специфические меры связаны с вычислениями на машинах Тьюринга. Чтобы упростить наши рассуждения и получить результаты в их .первоначальной форме, мы немного модифицируем наши меры сложности. Будем рассматривать машины Тьюринга как распознаватели входных слов (таким образом, они вычисляют функции, принимающие значения 0 и 1), и параметром входа будет его длина I (а не число, представленное этим входом).
Вычисления с ограничением на время. Сначала мы опишем специфическую меру, основанную на времени вычисления на машинах Тьюринга.
Определение. Множество слов R называется Т^-допустимым, если существует многоленточная машина Тьюринга, которая допускает множество R и для входов длины I использует нс более T(Z) операций. Чтобы указать, что мы имеем дело с многоленточными машинами, мы обозначим этот класс через Ст-
_ (Следует отмстить, что функция счета шагов, аргументом которой является длина входного слова (в ^-буквенном алфавите, ^^2), строго говоря, нс удовлетворяет аксиомам сложности, потому что машина может остановиться на одном входе длины I и нс остановиться на другом. Таким образом, мы нс можем однозначно определить время работы, основываясь только на длине входа. Наше определение преодолевает эту трудность, рассматривая Ст только для рекурсивных Т и требуя, чтобы все входы длины I перерабатывались за время нс более Т(1). Тот, кому требуется большая строгость, может избежать этих трудностей, ограничившись однобуквенным входным алфавитом, представляя п последовательностью из п + 1 символов и полагая Z(n)=n+1. При таком соглашении о входе все последующие результаты останутся неизменными.)
Чтобы использовать наш предыдущий результат, мы должны теперь определить «хорошую» границу моделирования S и «хорошие» затраты на ограничение Р. При моделировании трудность состоит в том, чтобы моделировать машины с произвольным числом лент на машине с фиксированным чисдрм лент. К счастью, существует остроумный способ моделирования, который даст хороший результат [2]. Доказательство этого результата весьма трудно, и, так как он используется в этой статье только один раз, мы это доказательство сюда нс включили.
Лемма 6. Существуют две вычислимые функции г^п) и с^п) = С(г^п)) и двуленточная машина Тьюринга М, такая, что
MV^ = Mr№<nWX,
и если МГ(п)(п) останавливается, выполнив t операций, то М(п) останавливается, выполнив не более
с{п) t\ogt + с (п) операций.
Комментарий.
Для этой модели существует функция моделирования S, такая, что
S^n, tX.c (м) tlogt + с ^п\ где с(п) = С (г (п)).
Функцию г(п), скажем для трехбуквенного алфавита {0, 1,а}, можно выбрать так, что она зависит только от двоичного префикса слова, стоящего перед первой меткой а, и этот префикс интерпретируется как весьма непосредственный код программы машины Тьюринга. Таким образом, для каждой Mt существует слово х в алфавите {0, 1}, такое, что для каждого слова у в алфавите {0, 1, а^
г^хау^ = I.
Эта декодирующая функция г имеет то преимущество, что, когда моделируется машина М^ ее описание остается в одной и той же форме и операции, которые требуются для того, чтобы начать и выполнить один шаг моделирования, зависят только от префикса х, а не от длины всего входа. (Если рассуждать более строго, то следует заметить, что, когда мы используем однобуквенный входной алфавит, мы вынуждены использовать более тонкую технику кодирования, но, немного поразмыслив, мы смогли бы обеспечить ею три рассматриваемые модели.)
Теорема 13. Пусть T(Z)—время работы некоторой многоленточной машины Тьюринга. Тогда для любой рекурсивной функции ф, если-
. . ф (/) log ф (/) _ п
то
C^^ cz Ст (Z).
Доказательство. Мы дадим набросок доказательства, чтобы объяснить значение предельного условия и использование временной сигнализирующей. Из предельного условия следует, что для любого с > 0 и достаточно больших I
сф(/)1о§ф(/) < TW
Таким образом, Сф гСт и для некоторых достаточно больших п
S^n, ^(1})<Т{1),
где п используется при вычислении фГ(п)(я), I— длина п. Но тогда мы можем провести диагональ по всем множествам R из класса Сф за Г(/) операций, и, так как Т(1) является некоторой сигнализирующей для некоторой машины Мт, мы можем заставить работать Мт на отдельных лентах параллельно с моделированием и закончить процесс, когда Мт остановится. Таким образом, Р(п, Т(/)) = Т(I), и мы заключаем, что ф^ш ^ Ст» но Фо щ ^ ^ф » что и требовалось показать (фад рассматривается как характеристическая функция некоторого множества слов).
Одноленточные машины Тьюринга. Теперь мы рассмотрим классы сложности, определенные через время работы одноленточных машин Тьюринга.
Определение. Множество слов R называется Т(/)-допустимым одноленточной машиной Тьюринга, если существует однолеп- точная машина Тьюринга, которая допускает R и использует не более Т (I) операций при переработке входов длины /. Класс всех Г (/)-допустимых множеств обозначается через Ст.
Для одноленточных машин проблема моделирования значительно проще, чем для многоленточных машин. На самом деле для простых функций г (я) моделирование на одноленточной машине можно выполнить за время, нс более чем в постоянное число раз превышающее время работы моделируемой машины, т. с.
S (п, t)^c(n)t -\- с (п), где с (м) = С (г (п)).
Это достигается тем, что копия описания М^ всегда находится рядом с местом, где происходит моделирование (скажем, на особой дорожке ленты). Так как длина описания фиксирована, так же, как и число символов ленты Мт^ мы видим, что каждый шаг вычисления машины MtW можно промоделировать за фиксированное число шагов машины М (включая и перемещение описания Мт^.
С другой стороны, прекращение процесса моделирования после того, как проделано Т(/) шагов моделирования, здесь выполнить труднее, чем на многоленточной модели (где мы просто запускали на особых лентах параллельно работающий счетчик остановки). Трудность проистекает из того факта, что мы должны выполнять два независимых вычисления на одной и той же ленте с помощью одной головки. Один из способов преодоления этой трудности состоит в том, чтобы проводить процессы на разных дорожках ленты и перемещать одну из них, если надо, для того, чтобы позиции головок для обоих процессов совпадали. Если мы поступаем таким образом, то мы, безусловно, заинтересованы в том, чтобы емкость дорожки, которую нам приходится передвигать, была не слишком большой. Это достигается выбором такой Г(/), которая является временной сигнализирующей одноленточной машины
Тьюринга, использующей не более log Т (Z) ячеек ленты. Легко видеть, что для такой Т (/)
Р^ Z'WXZ'WlogZ't/).
Таким образом, мы получаем соответствующий результат для одноленточных машин.
Теорема 14. Пусть Т^Ц—время работы одноленточной машины Тьюринга, которая вычисляет Т(1) на log T(Z) ячейках ленты. Тогда для любой рекурсивной ф, если
lim-^- = 0, то Сф с Ст log т.
п->оо 1 V)
Заметим, что эти два результата различны по структуре, так как для многоленточных машин моделирование дорого, а параллелизм бесплатный, тогда как для одноленточной модели моделирование дешево, а параллелизм дорог.
Вычисление с ограничением на емкость ленты. В заключение рассмотрим вычисления с ограничением на емкость ленты.
Определение. Множество слов R называется допустимым с емкостью L^, если существует машина Тьюринга М, которая допускает R, используя не более L(T) ячеек ленты при переработке входов длины L Класс всех множеств, допустимых с емкостью L(/), обозначим через Cl.
Для вычислений с ограничением на емкость легко можно показать, что моделирование «стоит» только в постоянное число раз больше, чем исходное вычисление, т. е.
S (п, Т)<.с^1 + с (п), где с (п) = С (г (п)), а параллелизм бесплатный, т. е.
Р^п, L^<L^
(при условии, что Л(/) можно вычислить на 1ДЦ ячейках). Таким образом, для вычислений с ограничением на емкость ленты мы получаем следующий результат.
Теорема 15. Если L(l) вычислима с емкостью Ь(1), то
lim = 0 влечёт С^ а с£. п->оо L v)
Таким образом, мы видим, что структура этого результата отражает тот факт, что для вычислений с ограничением на емкость ленты моделирование стоит дешево, а параллелизм — бесплатный.
ИМЕНОВАНИЕ КЛАССОВ СЛОЖНОСТИ
В этом разделе мы изучаем две взаимосвязанные проблемы. Первая возникает естественным образом, когда мы рассматриваем некоторые хорошо известные подклассы рекурсивных функций, вроде примитивно рекурсивных функций, и пытаемся локализовать их среди классов сложности при заданной мере. Обычно эти подклассы рекурсивных функций определяются через структуру своих алгоритмов, и это вполне убеждает в том, что они должны естественным образом располагаться среди классов сложности. Мы покажем на самом деле, в качестве приложения теоремы об объединении, что для многих мер сложности Ф существует рекурсивная функция /, такая, что Of является в точности классом примитивно рекурсивных функций.
Вторая проблема возникает, когда мы ищем «хорошие» способы именования классов сложности. Вспомним, что теорема о пробелах утверждает, что при любой мере для любой рекурсивной г существует рекурсивная функция /, такая, что Gt = Сгоь Таким образом, мы можем построить функции, которые служат именами одного и того же класса сложности, но которые отстоят друг от друга так далеко, как мы пожелаем. Отсюда, по-видимому, следует, что в качестве имен классов сложности мы выбирали неподходящие функции. Оказывается, что так оно и есть на самом деле и что можно поступить гораздо лучше. Мы не можем всегда именовать классы сложности сигнализирующими функциями соответствующей меры, но мы покажем, что существует измеримое множество функций, которыми можно именовать все классы сложности.
Сначала мы покажем, что объединение любой рекурсивно перечислимой иерархии классов сложности (последовательности возрастающих классов сложности) само является классом сложности. Пусть (^ 11 = 1, 2, ...} — рекурсивно перечислимое множество функций, таких, что для любых i и п
fl (я) < fl+l(n).
Достаточно показать, что существует рекурсивная функция, которая больше, чем ft (n) для каждого i и почти всех га, но в бесконечном числе точек меньше, чем каждая сигнализирующая функция, которая больше fi(n) для каждого i и почти всех п. Тогда класс сложности, определенный этой функцией, и будет (JC/r
Очевидно, что /(«) = fn(n) больше f,(n) для каждого i и почти всех га. Однако может существовать <р,, для которой
ФД«)< /(га) для почти всех га и
Ф/(га)>/,(га) для каждого / и бесконечно многих га.
Тогда фу лежит в Ct, но не в объединении Cf.. Способ избежать этой трудности состоит в том, чтобы для каждого / делать предположение о том, что некоторая fZ/ мажорирует Фу. Если мы обнаруживаем, что для некоторого п имеем Фу (и) > {^(п), то мы приписываем t^ значение, которое меньше, чем Фу(п), и предполагаем, что некоторая еще большая /у мажорирует Фу (и). Если фу лежит в (JCf/, то мы наконец найдем fy, мажорирующую Фу, и t будет больше Фу почти всюду. С другой стороны, если фу нс содержится в объединении, то / будет меньше Фу бесконечно часто (б. ч.) и, таким образом, фу не будет принадлежать Ct. Мы формализуем эту интуитивную идею в доказательстве теоремы об объединении.
Теорема 16 (теорема об объединении). Пусть {М/= = 1, 2, ...}—рекурсивно перечислимое множество рекурсивных функций, такое, что для любых I и п имеем fi(n) < fi+\(n). Тогда существует рекурсивная функция t(n), такая, что С^ = (J Cf..
Доказательство. Построим t, такую, что
для каждого I, t^^ fi(n) п.в.,
для каждого /, если Ф^п)> f^n) б. ч., то t(n) < Фг(и) б. ч. При построении / мы будем использовать список номеров ц, U, 1^ ..,. Список будет' обновляться, и на п-м шаге, когда мы вычисляем t^, интерпретация состоит в следующем: i3 = к означает, что в данный момент мы предполагаем, что fk ^ Ф; почти всюду. Чтобы вычислить Цп), мы проверяем, справедливы ли все наши предположения. Проверка наших предположений происходит следующим образом: мы начинаем с наименьшего к, такого, что к = ц, и определяем, выполняется ли fkW ^ ФДп); если это условие выполняется для всех к, то мы полагаем /(n) = fn(^) и делаем новое предположение, что fn ^ Фп п. в., полагая in = п. С другой стороны, если одно из наших предположений ошибочно, fk(jV)<. <ФДя), то мы полагаем /(м) = ^(ц) и изменяем наше предположение на Фj^fn п. в., полагая i3 = п. В этом случае мы также добавляем новое предположение U = п и повторяем процесс для п = п + 1. Ниже этот процесс описан более формально.
Построение t. Вначале i3 не определено для каждого j, т. с. список пуст. Полагаем п = 1. Переходим к шагу п.
Шаг п. Пусть к — наименьшее число, такое, что существует /, для которого /-й элемент списка есть к (т. e. i3 = к) и fi. (л) < Фу (п). Если существует больше чем одно такое /, выбираем наименьшее. Определяем Цм) = ^у(м) и полагаем 13 = 1п = п
и п = п-\-\. Переходим к шагу п. Если такого / нс существует, определяем Z(n)=fn(^). Полагаем Zn = я и п = п+1- Переходим к шагу п. Докажем, что Ct — (JCfr
Если ф^ ^(JCf., то существует Z, такое, что ф^еС^, и, следовательно,
^«<di п- в-
Но t ^ fi почти всюду, так как в конце концов для каждого / либо ij примет значение, большее чем Z, либо ц таково, что fZ/ (п) мажорирует ФДп). Начиная с этого места Z>fi, значит ^g^Ct.
Если ф^ е Ct) то Ф „ ^ Z п. в., и, таким образом, существует f^ такая, что fk^Og п. в. В противном случае бесконечное число раз 1& было бы наименьшим числом списка, таким, что ft < Ф^, и тогда t в бесконечном числе точек было бы меньше, чем Ф^.— противоречие. Но если Ф^еС^, то Ф^^О^с
Рассмотрим теперь примитивно рекурсивные функции и меру сложности, которая «считает шаги» одноленточной машины Тьюринга. Мы утверждаем, что если g примитивно рекурсивна, то существует примитивно рекурсивная /, такая, что g е Ct. Причина этого состоит в том, что функции s(x) = х + 1, О(х) = 0 и /?(хь • • •,. хп) = Xi принадлежат классу сложности, определенному некоторой примитивно рекурсивной функцией; рекурсивная функция, ограничивающая сложность суперпозиции и примитивной рекурсии, является примитивно рекурсивной, и класс примитивно рекурсивных функций замкнут относительно суперпозиции и примитивной рекурсии.
Мы утверждаем далее, что любой класс сложности, определенный примитивно рекурсивной функцией, содержит только примитивно рекурсивные функции. Основанием для этого служит то, что примитивной рекурсии достаточно, чтобы промоделировать машину Тьюринга, работающую с примитивно рекурсивным числом шагов.
Заметим, что нам осталось только понять, что существует рекурсивно перечислимая последовательность примитивно рекурсивных функций, такая,- что каждая примитивно рекурсивная функция мажорируется некоторой функцией из-за этой последовательности. Отсюда будет следовать существование класса сложности, определяемого временной сигнализирующей и состоящего в точности из примитивно рекурсивных функций. Пусть gx, g21 ...— такая последовательность, тогда последовательность fb f2, ..., где
fM = max (g,(n), g2(.n)ЯЛ«)} + 1.
удовлетворяет условию теоремы об объединении. Желаемый результат получается немедленно, и мы устанавливаем его в качестве следствия теоремы об объединении.
Следствие. Существует рекурсивная функция t, такая, что множество функций, вычислимых на одноленточных машинах Тьюринга с границей времени 1, в точности совпадает с множеством примитивно рекурсивных функций. Тот же результат выполняется для многоленточных машин Тьюринга при ограничении на время, а также для машин Тьюринга при ограничении на емкость.
Заметим, что для любой меры, которая связана примитивно рекурсивной функцией с числом шагов одноленточной машины Тьюринга, примитивно рекурсивные функции образуют класс сложности. Другое интересное наблюдение заключается в том, что класс сложности, состоящий в точности из примитивно рекурсивных функций, нельзя именовать примитивно рекурсивной функцией. Если бы он был именован примитивно рекурсивной функцией I, то / лежала бы на некотором уровне в иерархии Гжегор- чика и, таким образом, класс Ct не содержал бы более высоких уровней. Это означает, что функция, которая именует этот класс сложности, очень сложна.
Кроме того, мы видели в теореме о пробелах, что один и тот же класс сложности можно именовать совершенно разными функциями. А именно, для любой меры и для любой рекурсивной функции г мы можем построить рекурсивную функцию t, такую, что Ct = Crot» Во всех таких случаях функции оказываются очень сложными в том смысле, что их сложность сильно отличается от их величины. Это приводит нас к проблеме именования всех классов сложности функциями, которые нс слишком сложны.
Предыдущие наблюдения приводят нас к проблеме нахождения рекурсивно перечислимого множества функций, которые именуют все классы сложности заданной меры и которые обладают Чем свойством, что сложность каждой функции рекурсивно ограничена ее величиной, т. е. „честного" множества функций. Следующий результат, теорема об именовании утверждает, что всегда можно именовать все классы сложности с помощью некоторого измеримого множества функций. Наша стратегия состоит в том, чтобы для каждой рекурсивной ф^ найти ф^ из измеримого множества, такую, что Сф^ = СФг. Определяя ф^ = шах(Фо ф,), мы получаем гарантию, что ф^—„честная" функция. Однако может случиться, что для некоторого / функция фг принадлежит С^,, но не принадлежит С^. Чтобы преодолеть эту трудность, можно сделать ф^(п) меньше Ф;(м) для бесконечно многих п. Значения п выбираются так, чтобы Ф^(п) также уменьшалось, оставляя функ-
цию фр „честной". Делая фр(п) меньше фДп), мы должны гарантировать, что фр не окажется в бесконечном числе точек меньше некоторой Фр которая почти всюду меньше фр Иначе ф, была бы элементом Сф^, но не С^,. Следующая теорема доказывается с помощью формализации этих идей.
Теорема 17 (Теорема об именовании). Для каждой меры Ф существует измеримое множество, именующее все классы сложности.
Доказательство). Мы хотим показать, что существует рекурсивная функция г, такая, что для каждой рекурсивной ф^ можно построить рекурсивную фг, обладающую свойствами:
Сф/ = Сфр (т. е. Ф;<Фг п. в.^Ф^ф^ п. в.) -
Ф^пХ^п, Фр(я)) п. в. (т. е. функции фр—„честные").
Условие «честности» (Ь) гарантирует, что функции фр содержатся в некотором измеримом множестве Т. Чтобы обеспечить выполнение этого условия, фр будет определена с помощью некоторой согласованной процедуры таким образом, что малые значения фр на больших аргументах будут, вообще говоря, определены раньше, чем большие значения фр на малых аргументах. Условию (а) трудно удовлетворить по той причине, что, когда определяется фр(#), может нехватить времени для вычисления фр (у). Для устранения этой трудности фр (у) определяется так, чтобы удовлетворить условиям, которые зависят от значения ф/ на некотором легче вычислимом аргументе, отличном от у. Величину фр (#) нужно выбирать так, чтобы удовлетворить двум конфликтующим условиям: во-первых, она должна быть больше, чем «число шагов», которые затрачивают на аргументе у тс программы, которые оказываются ограниченными функцией фр, во-вторых, она должна быть меньше числа шагов тех программ, для которых обнаружится, что это число превосходит значения ф/ на некоторых аргументах. Этот конфликт разрешается с помощью описанного ниже механизма приоритета.
Вычисление фр происходит по этапам, начиная с этапа 0. На этапе х рассматриваются программы (номера функций) 0, 1, ... ..., х, которые упорядочиваются по приоритету. Это упорядочивание остается тем же, каким оно было на предыдущем шаге, если не меняется на данном шаге. На каждом этапе некоторые программы могут потребовать специальной пометки. Это означает, что их сигнализирующие где-то превысили ф/, и требуется, чтобы они где-то превысили фр. Если на данном этапе положение меток нс
меняется, то они остаются на тех же местах, где были на предыдущем этапе. Пусть а(х)^х— рекурсивная функция, которая принимает в качестве значения каждое натуральное число бесконечно много раз.
Этап х: часть I. Приписываем низший приоритет программе х. Считаем, что х нс отмечена. Проделываем х шагов вычислений, в ходе которых ищем г, такое, что фг(г) можно вычислить на этом этапе, но еще нс вычислили на предыдущих этапах. Если такое г нельзя найти за отведенное для этого время, переходим к части II. Иначе, моделируем программы 0, 1, ..., х на входе z в течение Ф<(2) «шагов» (в смысле сигнализирующей Ф) и отмечаем те программы, которые не заканчивают вычисление. Переходим к части II.
Часть II. Пусть у = о(х). Смотрим, определено ли Фг(у) на предыдущих этапах. Если да, то переходим к этапу х + 1. В противном случае смотрим, каковы приоритеты и отметки у программ О, 1, ..., у в конце части I этапа у. Пытаемся найти программу Р с наивысшим приоритетом (на этапе у), такую, что она на этапе у имеет метку и что все программы, которые
на этапе у не имеют меток,
на этапе у имеют приоритет выше, чем Р, требуют для вычисления на входе у меньше шагов, чем трёбует Р на том же входе у.
Если такую программу Р можно найти, полагаем ^v^ равной наибольшему из чисел шагов, которые требуют программы, удовлетворяющие условиям (1) и (2), приписываем программе Р низший приоритет (на этапе х), стираем с нес метку и переходим к этапу х + 1.
Однако описанную попытку найти Р нужно прекратить, если (3) она требует более х шагов,
она требует шагов более, чем требуется для вычисления Ф<(#)- /оч
Если первым выполнится условие (3), переходим к этапу х+ 1. Если первым выполнится условие (4), делаем Фг(у) больше, чем Ф<(у) и Ф<(у), переходим к этапу х + 1.
Описание процедуры окончено. Условие (4) гарантирует, что Фг(у) будет определена для каждого у, так как ф<(у) определена. Более того, Фг(у) не удается определить на этапе х, для которого у = а(х), только потому, что Фг(у) слишком велико, чтобы вычислить его за время, отведенное на этапе х. Так как время, отведенное на этапе х, ограничено фиксированной (не зависящей от ф<) рекурсивной функцией от х, можно показать, что число шагов, требующееся для вычисления ф(', рекурсивно ограничено ее величиной, т. е. Ф/'(У)^Г(У’ Фг(у))п. в. (Например, для машин Тьюринга время вычисления ф(' будет ограничено по крайней мере элементарной функцией, в которую подставлена ф^.)
Доказательство того, что 0^ = 0^,, основано на следующих эквивалентностях: (а) Ф/> Ф< б. ч.^(|3) программа / на бесконечно многих этапах вновь получает метку ф^(у)Ф/ > Фг б. ч.
Легко убедиться, что (Р)=Ф(у). Если на некотором этапе х программа I теряет метку, то для у = а(х) полагаем Фг(у) = = шах (Ф/ (у)) для тех программ /, удовлетворяющих условиям (1) и (2), для которых Фу (у) < Фг (у). Следовательно, ф^(у) < Ф; (у). Но в силу (Р) программа I бесконечно часто теряет метку. Отсюда получаем (у).
Покажем, что (а)ф(Р). Пусть, напротив, программа i, начиная с некоторого этапа, либо навсегда теряет метку, либо всегда сохраняет ее. В первом случае сразу имеем Фг(у)"СфДу) п. в. Во втором случае рассмотрим тот этап процедуры, после которого программа i навсегда сохраняет метку и приоритет, а программы из множества {0,1, ..., I—1}, имевшие, но потерявшие приоритет, более высокий, чем этот приоритет программы t, уже его потеряли. Среди программ, сохранивших более высокий приоритет, нас будут интересовать тс, которые нс имеют меток (и, стало быть, далее их не получат). Пусть Пг— множество таких программ. Для каждой /еЩ имеем Ф;(у)^Ф<(у) п. в. Тогда для каждого достаточно большого у найдется / е Пг, такое, что ФДу) ^ ФДу). В противном случае пришлось бы вопреки предположению снять метку с программы I. Следовательно, Фг(у)^фДу) п. в.
Аналогично проверяются остальные импликации.
' 7. ОБЪЕМ МАШИН
Мы заканчиваем изучение сложности вычислений установлением некоторых связей между объемом алгоритмов (машин) и их эффективностью. Так же, как мы абстрагировали понятие сложности алгоритма, мы можем абстрагировать понятие «объема» алгоритма. Мы имеем в виду извлечь понятие сложности описания алгоритма. Объем программы вычислительной машины можно измерять числом команд, а «объем» машины Тьюринга — произведением числа состояний на число символов ленты.
Определение. Пусть s — отображение натуральных чисел в натуральные числа. Мы говорим, что s является мерой объема машин для допустимой нумерации всех частично рекурсивных функций фь ф2, фз, ..., если выполняются условия:
для каждого / существует конечное число номеров i, таких, что s(i) =/; ,
существует рекурсивная функция, дающая число алгоритмов каждого-объема !).
9 В оригинале имеется еще одна аксиома, которая делает все определение некорректным. — Прим. ред.
6 Зак. 210.
Рассмотрим изображение алгоритмов словами в некотором конечном алфавите. Пусть объем алгоритма — это число символов. Первая аксиома отражает тот факт, что существует конечное число слов любой данной длины. Вторая аксиома учитывает то обстоятельство, что мы можем проверить «формат» слова, чтобы определить, изображает ли оно алгоритм. Эти две аксиомы эквивалентны эффективной нумерации алгоритмов в порядке возрастания объема (среди изображений одного и того же объема порядок нс имеет значения).
Легко показать, что все меры объема рекурсивно связаны друг с другом.
Теорема 18. Пусть s и s— две меры объема. Существует рекурсивная функция g, такая, что
g^s^^s^ и g^(i))>s(i) для всех I.
Доказательство. Пусть
gkm^ = max [s (t)» 3(f)},
где Sm = M либо s^^m, либо s(i)^m}. Так как Sm для каждого m есть конечное множество, а функции s и s рекурсивны, то g— рекурсивная функция.
Очевидно, что
g^s^^S^ и g(s(i))>s(t)
для всех L
Поводом для рассмотрения объемов алгоритмов является изучение экономичности различных формализмов, представляющих алгоритмические процессы. При написании машинных программ для функций, возникающих в практических ситуациях, можно обойтись без операторов условного перехода и написать программу, процесс выполнения которой определяется очень просто вложенной цикловой структурой. Более того, время выполнения этой программы нс будет сильно отличаться от времени выполнения произвольной программы. Возникает вопрос, зачем вообще мы используем условные переходы. Ответ заключается в эффективности представления. Сравним, например, объем изображения примитивно рекурсивной функции, использующего примитивно рекурсивную схему, с представлением посредством машины Тьюринга, которая вычисляет ту же функцию. Для произвольной рекурсивной функции f мы можем указать примитивно рекурсивную функцию ср, такую, что минимальное число символов в любой схеме примитивной рекурсии для <р больше f^m), где m— число символов в описании некоторой машины Тьюринга, вычисляющей ф.
Чтобы получить этот результат, мы сначала покажем, что в любой бесконечной последовательности алгоритмов имеются неэффективные изображения1).
Теорема 19. Пусть g— рекурсивная функция с бесконечным множеством значений (g перечисляет бесконечную последовательность номеров алгоритмов). Пусть f— рекурсивная функция. Существуют i и j, такие, что •
(О Фг = Ф8 (/).
f(s(i))<s (g (/)).
Замечание. Интуитивную идею, лежащую в основе теоремы, следует пояснить. Так как существует конечное число алгоритмов любого данного объема, то в любой бесконечной рекурсивно перечислимой (р. п.) последовательности алгоритмов существует бесконечная р. п. подпоследовательность, в которой объемы алгоритмов растут сколь угодно быстро. Пусть g перечисляет быстро растущую последовательность. По данному к функцию ф^)(п) можно вычислить с помощью программы фиксированного объема, а именно
ф (к, п) = фд w (и).
Таким образом, объем программ, необходимых для вычисления Ф^к), растет со скоростью, необходимой для вычисления к, тогда как объем соответствующих программ из р. п. списка растет очень быстро и разность между длинами двух описаний становится сколь угодно большой.
Доказательство. Так как уменьшение объема не зависит от меры (т. с. если существует произвольное уменьшение объема для одной меры, то существует произвольное уменьшение объема для всех мер), то нам достаточно доказать теорему только для случая, когда s^i) есть длина описания i-й машины Тьюринга. Без потери общности предполагаем, что
s(g(n+ 0) > f(s (g(n))).
(Так как существует только конечное число машин любого объема, просто удалим из .последовательности, определяемой функцией g, некоторые машины, пока нс останутся достаточно большие машины.) Рассмотрим машину ф^, которая записывает к на своей ленте, вычисляет g^k) и затем вычисляет ф^). Объем ^г^ есть некоторая константа плюс к (т. с. объем машины Тьюринга, вычисляющей g, плюс объем универсальной машины, моделирующей
9 Здесь эффективность изображения алгоритма понимается в смысле выбранной меры объема алгоритмов. Прим, ред.'
q?g, плюс состояния, необходимые для записи ку Таким образом, фдд) = ф^)- Увеличение к на 1 увеличивает объем tyk^ на 1, а g(k) —на f. Таким образом, для достаточно большого к
f(s(i(k)))<s(g(k)).
Чтобы завершить доказательство, положим / = к и i = i^ky
В качестве следствия теоремы 19 получаем, что существует примитивно рекурсивная функция, примитивно рекурсивное описание которой гораздо больше, чем общерекурсивный алгоритм, вычисляющий эту функцию. Каждая примитивно рекурсивная функция имеет по крайней мерс одно наименьшее примитивно рекурсивное описание. Список наименьших описаний рекурсивно перечислим. (Первой записываем наименьшую схему. Начинаем вычислять функцию, определенную i-й схемой на входе п для все больших и больших i и п. Записываем схему, когда обнаружится, что она вычисляет функцию, отличную от всех функций, вычисляемых меньшими схемами.) Пусть g перечисляет наименьшие схемы. Пусть ^п^=п?. Тогда, применяя теорему 19, мы получаем примитивно рекурсивную функцию ф, длина наименьшего примитивно рекурсивного описания которой нс меньше квадрата числа символов некоторого общерекурсивного алгоритма, вычисляющего ф.
Заметим, что вместо примитивно рекурсивных функций мы могли бы взять любой рекурсивно перечислимый класс рекурсивных функций и получить тот же результат.
ИСТОРИЧЕСКИЕ ЗАМЕЧАНИЯ
Интерес к сложности вычислений можно обнаружить во многих областях математики, в которых алгоритмы определяются, анализируются и сравниваются по их эффективности. С другой стороны, вряд ли в этих областях математики предпринимались систематические попытки развить теорию сложности вычислений, в которой изучались бы количественные проблемы, связанные с вычислениями. Проблемы сложности первоначально нс были достаточно хорошо определены, и даже в период быстрого развития конструктивной математики в первой половине нашего века на них не смотрели как на самостоятельную область. В то время были определены некоторые классификации подклассов рекурсивных функций, но главный интерес был скорее в единообразном построении все более и более широких подклассов рекурсивных функций, чем в изучении внутренней вычислительной сложности функций. Появление электронных вычислительных машин и общее развитие науки о процессах вычисления несомненно придало особый смысл
количественной теории вычислений, а теория рекурсивных функций предоставила этой теории формализмы и исходные модели.
Первая попытка аксиоматического подхода к измерению трудности вычислений была сделана Рабином [3, 4], который аксиоматизировал понятие «меры на доказательствах и длины вычисления функции» и получил некоторые начальные результаты для этих мер. Первое систематическое исследование одной специфической меры сложности вычислений и изучение соответствующих классов сложности принадлежит Хартманису и Стирнзу [5, 6], которые дали также название «сложность вычислений» этой новой области исследований. В докладе Кобхэма [7] обсуждалась важность исследования количественных аспектов вычисления и приводились некоторые дальнейшие, результаты. В работах Рабина, Хартма- ниса и Стирнза и Кобхэма была ясно установлена важность этой новой области исследований, были получены результаты, достаточные, чтобы считать их многообещающими в изучении сложности вычислений, а сама область получила соответствующее название1). '
Общий аксиоматический подход к сложности вычислений, использованный в этом обзоре, был сформулирован Блюмом [10] под влиянием работы Рабина. Блюм получил также большинство результатов, содержащихся в разд. 2 этой статьи, а некоторые из них являются обобщением результатов Хартманиса и Стирнза, полученных для времени вычислений на машине Тьюринга. Теорема об ускорении также принадлежит Блюму, хотя доказательство, данное в разд. 3, является новым. Оно отличается от первоначального доказательства тем, что в нем нс используется теорема о рекурсии, которая затемняет (в чем мы уверены) простоту центрального диагонального процесса. Наблюдение, выраженное в форме теоремы 6; является новым и используется далее в разд. 5. Теорема о пробелах была открыта независимо Трахтснбротом [11] и Бородиным [12]. Она показывает, что теорему 6 нельзя улучшить. Теорема о пробелах дает изящное оправдание для использования введенных Блюмом измеримых множеств функций, которые входят в теоремы 8 и 9. Рекурсивная перечислимость классов сложности изучалась Хартманисом и Стирнзом [6] и Янгом [13]. Доказательство того, что для некоторых мер существуют классы сложности, которые нс рекурсивно перечислимы, принадлежит Ф. Льюису [14] и* Робертсону и Ландвсбсру [15].
Материал о моделировании и параллелизме в разд. 5 является новым, а результаты этого раздела о классах сложности
9 В Советском Союзе начало исследованиям по теории сложности вычислений положили работы Г. С Цейтина [8] и Б. А. Трахтенброта [9], которые, по-ви- димому, не известны авторам обзора, так же как и более поздние работа этих и других советских авторов. — Прим, перее, " '
при ограничении на время и емкость принадлежат Хенни и Стирн- зу [2], Хартманису и Стирнзу [6], Хартманису [16] и Стирнзу, Харт- манису и Льюису [17].
Теорема об объединении и теорема об именовании из разд. 6 принадлежат Маккрайту и Мейеру [18]. Результат о том, что теорема об именовании оставляет все же произвольно широкие пробелы «снизу», принадлежит Констэблу [19]. Материал об объеме машин взят из работы Блюма [20].
На развитие теории сложности вычислений дальнейшее влияние оказывали многие работы и результаты, которые нс были явно использованы в этой статье. Некоторые из них перечислены в нашей короткой библиографии1). Полную библиографию, охватывающую самые последние работы, смотри в «Библиографии по сложности вычислений», составленной Айлендом и Фишером и помещенной в нашей библиографии2).
СПИСОК ЛИТЕРАТУРЫ
1*. Blum М., On effective procedures for speeding up algorithms, J. ACM, 18 (1971), 290—305.
Hennie F. C., Stearns R. E., Two-tape simulation of multi-tape Turing machines, J. ACM, 13 (1966), 533—546. (Русский перевод: Ф. К. Хенни, Р. Е. Стирнз, Моделирование многоленточной машины Тьюринга на двуленточной, Сб. пер. «Проблемы математической логики», М. (1970), 194—212.)
Rabin М. О., Speed of computation of functions and classification of recursive sets, Proc. 3-rd Conf, of Scientific Societies, Israel, 1—2, 1959.
Rabin M. O., Degrees of difficulty of computing a function and a partial ordering of recursive sets, Techn. Rep. 2, Hebrew U., Jerusalem, Israel, 1960.
Hartmanis J., Stearns R. E., Computational complexity of recursive sequences, IEEE Proc. 5th Ann. Symp. on Switching Circuit Theory and Logical Design, 1964, 82—90.
Hartmanis J., Stearns R. E., On the computational complexity of algorithms, Trans. Amer. Math. Soc., 117 (1965), 285—306. (Русский перевод: Дж. Хартманис, Р. Е. Стирнз, О вычислительной сложности алгоритмов, Киб. сборник (новая серия), вып. 4, М. (1967), 57—85.)
Cobham A., The intrinsic computational difficulty of functions, Proc. 1964 Intern. Congr. for Logic, Methodology and Philosophy of Science, Amsterdam, 1964, 24—30.
. Цейтин Г. С., Оценка числа шагов при применении нормального алгоритма, Математика в СССР за сорок лет, т. I, М., 1959, стр. 44—45.
. Трахтенброт Б. А., Сигнализирующие функции и табличные операторы, Уч. записки Пензенского Гос. пед. ин-та, IV, 1956, стр. 75—87.
Blum М., A machine-independent theory of complexity of recursive functions, J. ACM, 14 (1967), 322—336. (Русский перевод: M. Блюм, Машинно-незави-
’) Настоящий обзор написан в середине 1970 г. — Прим. ред.
Библиография, составленная А. Д. Коршуновым [22], охватывает работы вплоть до 1971 г. Дополнительную литературу можно найти также в [11], [21] и обзоре Фишера, упомянутом в библиографии авторов. — Прим, перев.
симая теория сложности рекурсивных функций, Сб. пер. «Проблемы математической логики», М. (1970), 401—422.)
Трахтенброт Б. А., Сложность алгоритмов и вычислений, Изд. НГУ, Новосибирск, 1967.
Borodin A., Computational complexity and existence of complexity gaps, J. ACM, 19 (1972), 158—174.
Young P. R., Toward a theory of enumerations. J. ACM, 16 (1969), 328—348. (Русский перевод: П. P. Янг, К теории перечислений, Киб. сборник (новая серия), вып. 8, М., (1971), 201—231.)
Lewis F. D., Unsolvability considerations in computational complexity, Conf. Rec. 2nd Ann. ACM Symp. on Theory of Computing, 1970, 22—30.
Landweber H. H., Robertson E. L., Recursive properties of abstract complexity classes, Conf. Rec. 2nd Ann. ACM Symp. on Theory of Computing, 1970, 31—36.
Hartmanis J., Computational complexity of one-tape Turing machine computations, J. ACM, 15 (1968), 325—339. (Русский перевод: Дж. Хартманне, Сложность вычислений на одноленточных машинах Тьюринга, Сб. пер. «Проблемы математической логики», М., (1970), 282—300.)
Stearns R. Е., Hartmanis J., Lewis Р. М., II, Hierarchies of memory limited computations/ 1965. IEEE Conf. Rec. on Switching Circuit Theory and Logical Design, 179—190. (Русский перевод: P. E. Стирнз, Дж. Хартманне, П. М. Льюис II, Иерархии вычислений с ограниченной памятью, Сб. пер. «Проблемы математической логики», М., (1970), 301—319.)
McCreight Е. М., Meyer A. R., Classes of computable functions defined by bounds on computation: preliminary report. Conf. Rec. ACM Symp. on Theory of Computing, 1969, 79—88.
Constable R. L., Upward and downward diagonalization over axiomatic complexity classes, Tech. Rep., 69—32, Dep. of Computer Science, Cornell U., Ithaca, 1969.
Blum M., On the size of machines, Inf. Contr., 11 (1967), 257—265. (Русский перевод: M. Блюм, Об объеме машин в сб. Проблемы математической логики, «Мир», М., 1970, стр. 423—431.)
Рекомендательный список литературы
Axt Р., Enumeration and the Grzegorczyk hierarchy, Z. Math. Logik und Crund- lagen Math., 9 (1963), 53—65.
Becvar J., Real-time and complexity problems in automata theory, Kybernetika, 1 (1965), 475—497.
Blum M., On effective procedures for speeding up algorithms, Conf. Rec. ACM Symp. on Theory of Computing, 1969, 43—53.
Borodin A., Constable R. L., Hopcroft J. E., Dense and nondense families of complexity classes, IEEE Conf. Rec. 10th Ann. Symp. on Switching and Automata Theory, 1969, 7—19.
Cobham A., On the Hartmanis-Stearns problem for a class of tag machines, IEEE Conf. Rec. 9th Ann. Symp. on Switching and Automata Theory, 1968, 51—60.•
Constable R. L., The operator gap, J. ACM, 19 (1972), 175—183.
Fischer P. C., Multi-tape and infinite-state automata — a survey, Comm. ACM, 8 (1965), 799—805. (Русский перевод: П. Фишер, Многоленточные и бесконечные автоматы, Киб. сборник (новая серия), вып. 5, М. (1968), 64—80.)
Fischer Р. С., The reduction of tape reversals for off-line one-tape Turing machines, J. Comp. System Set., 2 (1968), 136—147.
Fischer P. C., Hartmanis J., Blum M., Tape reversal complexity hierarchies, , IEEE Conf. Rec. 9th Ann. Symp. on Switching and Automata Theory, 1968, [373—382.
Grzegorczyk A., Some classes of recursive functions, Rozprawy Math., 4, Warsaw (1953), 1—45. (Русский перевод: А. Гжегорчик, Некоторые классы рекурсивных функций, Сб. пер. «Проблемы математической логики», М. (1970), 9—49.)
Hartmanis J., Таре reversal bounded Turing machine comoutations, J. Comp. System Sci., 2 (1968), 117—135.*
Hennie F. C., One-tape, off-line Turing machine computations, Inf. Contr., 8 (1965), 553—578. (Русский перевод: Ф. К. Хенни, Вычисления на одноленточной машине Тьюринга с записью на ленте, Сб. пер. «Проблемы математической логики», М. (1970), 223—248.)
Hennie F. С., Crossing sequences and off-line Turing machine computations, IEEE Conf. Rec. on Switching Circuit Theory and Logical Design, 168—172.
Hopcroft J. E., Ullman J. D., Relations between time and tape complexities, J. ACM, 15 (1968), 414—427.
Hopcroft J. E., Ullman J. D., Some results on tape bounded Turing machines, J. ACM, 16 (1969), 168—177.
Irland M. J., Fischer P. C., A bibliography on computational complexity, Res. Rep. CSRR 2028, U. of Waterloo, Ontario, Canada, Oct., 1970.
Karp R. M., Some bounds on the storage requirements of sequential machines and Turing machines, J. ACM, 14 (1967), 478—489.
Lewis P. M., II, Stearns R. E., Hartmanis J., Memory bounds for recognition of context-free and context-sensitive languages, 1965, IEEE Conf. Rec. on Switching Circuit Theory and Logical Design, 191—202. (Русский перевод: П. M. Льюис II, Р. Е. Стирнз, Дж. Хартманис, Границы памяти для разрешения контекстно-свободных и контекстных языков, Сб. пер. «Проблемы математической логики», М. (1970), 320—338.)
McCreight Е. М., Classes of computable functions defined by bounds on computations, Doctoral Th., Computer Sci. Dep., Carnegie — Mellon U., Pittsburh, Pa., 1969.
Meyer A. R., Ritchie D. M., The complexity of loop programs, Proc. ACM 22nd Nat. Conf., 1967, 465—469.
Rabin M. O., Real time computation, Israel J. Math., 1 (1964), 203—211. (Русский перевод: M. Рабин, Вычисления в реальное время, Сб. пер. «Проблемы математической логики», М. (1970), 156—167.)*
Ritchie R. W., Classes of predictably computable functions, Trans. Amer. Math. Soc., 108 (1963), 139—173. (Русский перевод: P. В. Ричи, Классы предсказуемо вычислимых функций, Сб. пер. «Проблемы математической логики», М. (1970), 50—93.)
Savitch W. J., Relationships between nondeterministic and deterministic tape complexities, J. Comp. System Sci., 4 (1970), 177—192.
Трахтенброт Б. А., Тьюринговы вычисления с логарифмическим замедлением, Алгебра и логика, Семинар, 3 (1964), № 4, 33—48.
Yamada Н., Real-time computation and recursive-functions not real-time computable, IRE Trans. Elec. Comp. EC-11 (1962), 753—760. (Русский перевод: X. Ямада, Вычисления в реальное время и рекурсивные функции, не вычислимые в реальное время, Сб. пер. «Проблемы математической логики», М. (1970), 139-155.)
Алгоритм для минимизации конечногоавтомата °
Дж. Хопкрофт
ВВЕДЕНИЕ
В большинстве книг по конечным автоматам приводятся алгоритмы для минимизации числа состояний в конечном автомате [1, 3]. Однако анализ применения этих алгоритмов в наихудшем случае показывает, что они требуют п шагов, где п есть число состояний. Для конечных автоматов с большим числом состояний эти алгоритмы чрезвычайно неэффективны. В этой статье описывается алгоритм для минимизации числа состояний, время работы Которого в наихудшем случае асимптотически растет как п log п. Константа пропорциональности при этом линейно зависит от числа входных символов. Такой же алгоритм может быть, очевидно, использован для определения эквивалентности двух конечных автоматов 2).
Сущность алгоритмов, опубликованных до сих пор, состояла в начальном разбиении состояний в соответствии с их выходами. Блоки этих разбиений затем повторно делились при рассмотрении следующего состояния при данном входном символе для каждого состояния блока. Состояния, которые под действием данного входного символа переходили в различные блоки, сами помещались в разные блоки. Когда дальнейшее подразбиение блоков оказывалось невозможным, все состояния одного и того же блока оказывались эквивалентными, что можно доказать. Рассмотрим пример (табл. 1). Начальным разбиением является (1, 2, 3, 4, 5) (6). Так как на входе 0 следующие состояния для состояний 1, 2, 3, 4 лежат в первом блоке разбиения, а состояние, в которое переходит состояние 5, лежит во втором блоке, то первая итерация приводит к разбиению (1, 2, 3, 4) (5) и (6). Последующие итерация дают (1, 2, 3) (4) (5) (6); (1,2) (3) (4) (5) (6) и (1) (2) (3) (4) (5) (6)*. Таким образом, на этом примере можно видеть, что может иногда потребоваться п повторных разбиений (итераций). Поскольку одна итерация требует рассмотрения каждого состояния, общее число ша-
!) Hopcroft J., An n log n Algorithm for Minimizing States in a Finite Automaton, Theory of Machines and Computations, Proc. I nt. Symp., Haifa, 1971, pp. 189—196.
Таблица 1
Состояние
Вход 0 1
•Выход
1
2 1
0
2
32
0
3
4 3
0
4
5 4
0
5
6 5
0
6
66
1
гов, которое может потребоваться для выполнения алгоритма, если его осуществлять непосредственно на вычислительной машине, есть п2.
Предлагаемый в этой статье алгоритм также может потребовать п итераций, но результат суммирования времени работы за одну итерацию по всем п интерациям равен по порядку лишь nlogn. Мы проиллюстрируем этот алгоритм на примере, прежде чем дадим его детальное описание. Широкое использование обработки списков позволяет уменьшить время вычисления. Сначала табл. 1 переходов — выходов автомата преобразуется в табл. 2.
Таблица 2
Состояние
Вход
0I
Выход
1
-1
0
2
12
0
3
23
0
4
34
0
5
45
0
6
5,66
1
предыдущее состояние
Состояния распределены в соответствии с их выходами (1, 2, 3, 4, 5) (6). Выбираются блок и входной символ, с помощью которого продолжается разбиение. Предположим, что выбраны блок (6) и входной символ 0. Состояния каждого блока разбиваются дальше в зависимости от того, переходят ли они под действием нуля в блок (6) или нет. Таким образом, следующее разбиение есть (1, 2, 3, 4) (5) (6). Заметим, что если бы мы разбивали блок (1, 2, 3, 4, 5) на входе 0, то получили бы тот же результат. Более общо, если мы однажды произвели разбиение на блоке и входном символе, то нет необходимости снова производить раз-
биение на том же блоке при том же входном символе, пока этот блок не разделен дальше, а тогда необходимо совершить разбиение на одном из подблоков. Поскольку время, необходимое для разбиения блока, пропорционально числу переходов в этот блок и ввиду того, что мы всегда можем выбрать половину с меньшим числом переходов, общее число шагов алгоритма ограничено величиной п log п.
ФОРМАЛЬНОЕ ОПИСАНИЕ АЛГОРИТМА
Пусть А = (S, /, 6, В) — конечный автомат, где S есть конечное множество состояний, / — конечное множество входных символов, 6 — отображение из S X / в S, a F ^S — множество заключительных состояний. Начальное состояние не выделяется, так как это в дальнейшем не играет роли. Отображение 6 расширяется на S ХВ обычным образом, где /* обозначает множество всех цепочек конечной длины в алфавите /. Состояния s и / называются эквивалентными, если для каждого х в I* отображение 6(s, х) принадлежит F тогда и только тогда, когда 6(/, х) принадлежит F. Ниже описывается алгоритм для нахождения классов эквивалентности в S.
Шаг 1. Для каждого s в S и каждого а в I строится
d"1 (s, а) = {/16 (/, а) = s}.
Шаг 2. Строится B^ = F, B(2)=S — F и (для каждого а е / и 1 i 2) строятся множества
В(ВЦ\ а) = [s |s г B(i) и 6-1 (s, а) ^ 0].
Шаг 3. Полагается к = 3.
Шаг 4. Для каждого а в I находится множество индексов или список
£(а)=[{1}> если |В(5(1), л)|<|В(В(^^
I (2} в противном случае.'
Шаг 5. Выбирается а в I и i в L(a). Алгоритм прекращает работу, если L(a)=0 для каждого а в I.
Шаг 6. От списка L^ отделяется I.
Шаг 7. Для каждого / < к, такого, что существует t в В(/) с 6(/, а) в B(B(i), а), осуществляются шаги 7а, 7Ь, 7с и 7d.
Шаг 7а. Делается разбиение В(/) на множества (или блоки)
в' (/) = U16 (/, а) е в (в (0, я)} и
вчп = ви)-вчп.
Шаг 7b. B(j) заменяется на B'(j) и строится В(й)=В"(/). Для каждого а в I находятся соответствующие
В (ВЦ), а) и В (В (6), а).
Шаг 7 с. Для каждого а в 1 список L(a) изменяется следующим образом:
L (a) (J {/}, если j & L (а) и
L^ = ^ 0<|В(В(/), а)\^\В(В(к), а) |;
L(a)U{&) в противном случае.
Шаг 7d. Полагается к = к + 1, Шаг 8. Возвращаемся к шагу 5.
ПРАВИЛЬНОСТЬ АЛГОРИТМА
Утверждается, что по окончании работы алгоритма два состояния оказываются эквивалентными тогда и только тогда, когда они попадают в один и тот же блок. Пусть а принадлежит /.
Алгоритм должен закончить работу, так как моменты времени, в которые добавляется индекс к L(a), имеют место лишь на шагах 4 и 7с. Шаг 4 выполняется только один раз. На шаге 7с индекс добавляется только после раздробления блока разбиения. Число таких раздроблений нс превосходит п. Каждый раз при выполнении шага 6 для некоторого а из L (а) удаляется индекс. Таким образом, алгоритм должен завершить работу.
Легко показать индукцией по числу шагов, на которых выполняется 7а, что если $ принадлежит 6(i), a t принадлежит B(j), г =И= /, то s нс эквивалентно t. Очевидно, что это верно для первого применения 7а, так как при этом налицо только два блока: В(1), содержащий только заключительные, т. с. отмеченные состояния, и В (2), содержащий незаключительные состояния. Блоки подразби- ваются на шаге 7а, только когда последующие состояния при данном входном символе, как ранее установлено, не эквивалентны. Чтобы показать, что два неэквивалентных состояния нс могут находиться в одном и том же блоке, когда алгоритм заканчивает работу, предположим, что состояния $ и t принадлежат B(i) и что s и t неэквивалентны.
Без потери общности можно считать, что d(s, я)е5(/‘), а S(Z, a) ^В(к), где j V= к. Если 6(s, а) и б(/, а) находятся в одном и том же блоке, то существует кратчайшее слово х, такое, что 6(s, х) и б(/, х) находятся в разных блоках. Очевидно, такое х существует, а следовательно, существует и кратчайшее х, так как
для некоторого х одно из состояний 6(s, х) или б(/, х) является заключительным, но не оба одновременно, и каждый блок состоит только из заключительных или только из незаключительных состояний. Пусть а является последним символом х и запишем х = = уа. Тогда 6(s, у) и д(/, #) находятся в одном блоке, 6(s, у) и б(t,y) не эквивалентны и 6(6(s, yY а) и б(б(/, yY а) принадлежат разным блокам.
Заменим s на 6(s, yY а / на 6(/, у). Рассмотрим момент, в который блок, содержащий S(s, а) и б(/, aY разбивается так, что 6(s, а) и б(/, а) впервые оказываются в различных блоках. В этот момент один из двух подблоков помещается в L^aY Когда этот подблок удаляется из L^aY блок, содержащий s и /, разбивается, причем s и t помещаются в различные подблоки. Таким образом, s и t нс могут одновременно быть в B^iY т. с. получилось противоречие.
ПОДСЧЕТ ВРЕМЕНИ РАБОТЫ АЛГОРИТМА
Время работы алгоритма зависит, очевидно, от его реализации. Алгоритм программируется на Алголе. Поскольку программа содержит приблизительно 300 операторов языка Алгол, мы просто проверим, как осуществляются отдельные шаги, и нс формально оценим время их осуществления. Список программы можно найти в [2]).
Такие множества, как b'^s.aY L(a) и т. д., представлены связанными списками таким образом, что элемент мог быть добавлен или удален в начале списка за конечное число шагов. Фиксируются векторы, показывающие присутствие или отсутствие состояний в этом списке. Это избавляет от необходимости поиска списка просто с целью определения, имеется ли элемент в списке и является ли он существенным для шага 7с. Множества В^ и B(B(iYci) были бы представлены как дважды зацепленные списки, так что элемент мог бы быть добавлен или удален в любом месте списка за фиксированное число шагов, коль скоро задано его положение. Структура такова, что данное состояние s, его положение в 5(f) и B^B^iYa^ могут быть определены за фиксированное число шагов.
Шаги 1, 2, 3 и 4 выполняются только по одному разу и требуют времени, пропорционального произведению числа состояний на число входных символов. Шаги от 5 до 8 образуют простой цикл. Время, необходимое для прохождения цикла для данного а^1 п i в L(aY пропорционально числу переходов состояний на входах, завершающихся состояниями в B^iY Для того чтобы показать это,
заметим, что шаги 5, 6 и 8 конечны. На шаге 7 не нужно проверять ВЦ^ для каждого / < к, чтобы убедиться, существует ли / в В^ с 6(/, а) в 6 (В (t), а). Вместо этого мы для каждого состояния в В^В^.а") рассмотрим обращение (inverse) таблицы состояний и найдем все /, такие, что 6(/, а) е B(B(i), а). Каждый раз, когда находится новое /, обнаруживается блок, содержащий /, a t помещается в список состояний, которые должны быть отделены от блока. Блок помещается в списке блоков, которые подразбиваются, а до этого он еще не входил в этот список. Наконец, мы обращаемся к списку подразбиваемых блоков и фактически к их разбиению. Число блоков, которые следует просмотреть, не превосходит числа переходов на входном символе а, вынуждающем переходы в состояния В (i). Обозначим через к коэффициент пропорциональности.
Рассмотрим время, затрачиваемое в цикле согласно шагам от 5 до 8 для данного входного символа а. Предположим, что на шаге 5 блоки разбиения суть В(1), В (2), ..., В(т) и что L^ = = {й, й, ...» 1тУ Пусть {ir+h fr+2, ..., и = {1, 2, ..., m} — L(a), и пусть at = |6-1(B(i), а) |. Утверждается, что общее время, затрачиваемое на прохождение цикла, для которого входной символ а отобран на шаге 5, до окончания работы программы ограничено величиной
(
гпг\
5 ач log at + 5 a<,log(aj,/2) .
/=1''/=г+1111 V
Очевидно, что эта граница верна, если алгоритм заканчивает работу. Если цикл проходится при входном символе, отличном от а, то затраченное время не включается в Т. Однако, поскольку блоки разбиваются и множество L(a) изменено, нам надо показать, что новое значение Т, назовем его Т, меньше или равно значению Т. Если блок, индекс которого по-прежнему принадлежит L(a)t разбивается, то член вида b log b заменяется выражением с log с + + (Ь— с)log(b— с), что уменьшает значение Т. Если разбивается блок, индекс которого не входит в Ца), то член вида 6 log(6/2) заменяется выражением с log с + (6— c)log((6— с)/2), где с^б—с. Так как с<Ь)2 и (Ь — с)/2 < 6/2, то с log с + (6 — с) log (6—с)/2) < <clog6/2 4-(6—-с)log(6/2)<6 log(6/2).
Таким образом, в любом случае Т меньше чем Т. Предположим, наконец, что г =/= 0, а е / и некоторое I е L(a) отобрано на шаге 5. Как было показано раньше, время прохождения соответствующего цикла ограничено величиной каь Следовательно, по индукции об* щее время ограничено величиной
пг
k at-\-ai log (az/2) + 2 % log at. + 5 f a^log(aZ//2) .
i*i
Нам надо показать, что это выражение меньше или равно Т. То есть требуется показать, что
af + at log (az/2) < at log at.
Очевидно, az + az log (az/2) = az(log(az/2) + log 2) = az log az. Этим завершено доказательство сделанного утверждения.
При первом осуществлении шага 5 формула для Т ограничена величиной kn log п. Многократное повторение по числу входных символов и прибавление времени, необходимого для выполнения шагов 1—4, дает общую границу времени, пропорциональную п log п.
РЕЗУЛЬТАТЫ ЭКСПЕРИМЕНТОВ И ВЫВОДЫ
Для получения информации о необходимом времени алгоритм был применен к двум классам конечных автоматов. Автоматы первого класса задавались посредством А (л) = ({1, 2, ..., п}, {0,1}, 6, {1}), где 6(1,0) = 6(1, 1)= 1, а 6(i,0) = i-1 и 6(U)=t для 2 i п.
Автоматы второго класса определяются (для четного п) посредством В(п) = ({1,2, ..., п}, {0,1}, 6, V11 ^/2}), где 6(i,0) = 6(i, 1) = п/2 + 21 — 1, d(n/4 + f,0) = Цп14 + f, 1) = 21 — 1 для а 6(п/2+7, 0) = 6(n/2 + Z, 1) = 2/—1 для п)2 < < I ^п.
Время, использованное на IBM 360/67 для автоматов этих двух классов, указано в табл. 3 (время в сек).
Таблица 3
п
А (п)
В (п)
100
мк»
7з
1000
5 5О/6о
6 3/4
2000
И 37бо
13 7»
Заметим, что А (и) является примером, который требует п? шагов в ранее использовавшихся алгоритмах. "
Наш алгоритм особенно хорошо подходит для А^п), и детальный анализ показывает, что время линейно растет с ростом числа состояний, как видно из экспериментов. Наихудший случай для нашего алгоритма представляют автоматы класса В (п), в которых блоки всегда разбиваются на равные части. Время вычисления для В(п) растет, как п log п, как для нашего алгоритма, так и для ранее известных алгоритмов. По-видимому, эти результаты пока-
зывают практическую полезность предложенного алгоритма для минимизации числа состояний конечных автоматов (или проверки эквивалентности конечных автоматов) вплоть до нескольких тысяч состояний.
СПИСОК ЛИТЕРАТУРЫ
Harrison М. А„ Introduction to Switching and Automata Theory, McGraw-Hill, New York, 1965.
Hopcroft J. E., An n log n Algorithm for Minimizing States in a Finite Automaton, Technical Report CS-190, Stanford University, Stanford, California, 1970.
McCluskey E. J., Introduction to the Theory of Switching Circuits, McGraw- Hill, New York, 1965.
4*. Gries D., Describing an Algorithm by Hopcroft, Acta Inform., 2, f. 2 (1973), 97—109.
Вопросы информационного поиска
Эксперименты по автоматическомупостроению тезауруса дляинформационного поиска0
ДЖерард Сэлтон
СОСТАВЛЕНИЕ СЛОВАРЕЙ ВРУЧНУЮ
Большинство систем как информационного поиска, так и систем обработки текстовой информации содержат в качестве основного компонента некоторую систему анализа, которая служит для выявления «содержания», или «значения» заданной единицы информации. В обычных системах такого рода, применяемых в библиотеках, этот анализ может осуществлять человек. При этом он использует заранее разработанные классификационные таблицы для определения того, какой идентификатор содержания больше подходит для данной единицы информации. Известны также системы так называемого автоматического индексирования, в которых идентификаторы содержания присваиваются автоматически, исходя из текстов документа и запроса.
Поскольку естественный язык по своей природе содержит различного рода нерегулярные явления, которые наблюдаются как в синтаксисе, так и в семантике, система смыслового анализа должна приводить входные тексты к некоторому нормализованному виду, преобразуя различные, возможно неоднозначные, структуры на входе в фиксированные, стандартные идентификаторы содержания. Такого рода процедуры нормализации языка часто используют словари и списки слов, содержащие допустимые идентификаторы содержания, причем для каждого идентификатора приводится соответствующее определение с тем, чтобы регулировать и контролировать его использование. Например, в автоматической информационно-поисковой системе SMART используются следующие основные типы словарей [1]: •
Salton G., Experiments in automatic thesaurus construction for information retrieval, IFIP Congress 71, Foundations of information processing, p. 45—49,
словарь запрещенных слов («отрицательный» словарь), содержащий общеупотребительные слова, которые запрещено использовать при смысловом анализе;
тезаурус, или словарь синонимов, определяющий для каждой словарной единицы одну или более синонимичных категорий, или классов понятий;
словарь словосочетаний, задающий наиболее употребительные комбинации слов или понятий;
иерархическая классификация терминов или понятий, подобная по своей структуре обычной библиотечной классификации.
Хотя для правильного приписывания идентификаторов содержания, или понятий, совершенно необходимы хорошие словари, построение такого словаря всегда представляет собой весьма трудную задачу, особенно если этот словарь используется в области, лексика которой подвержена изменениям, или если рассматриваемая область относительно широка и неоднородна [2].
Ниже приводится список операций и средств, применяемых в системе SMART для построения словарей запрещенных слов и тезаурусов, причем большая часть работы делается вручную [3]:
используется некоторый список общеупотребительных слов, которые должны быть исключены из словаря, — это так называемые служебные слова;
для множества документов, принадлежащих рассматриваемой области, строится конкорданс, или список ключевых слов вместе с контекстом каждого слова и частотой встречаемости данного слова в данных документах (указатель типа KWIC);
к списку общеупотребительных слов добавляются новые слова, которые берутся из конкорданса; как правило, слова, образующие расширенный список общеупотребительных слов, представляют собой либо слова с очень высокой частотой употребления (эти слова ничего нс дают для выделения данного документа из документов рассматриваемой области), либо с очень низкой частотой (такие слова дают мало случаев совпадения при сравнении запросов и документов);
используется некоторый стандартный список суффиксов, содержащий основные суффиксы, употребляемые в английском языке;
затем программа автоматического отсечения суффиксов определяет основу каждого оставшегося (необщеупотребительного) слова, после чего человек может просмотреть получившийся в результате словарь основ с тем, чтобы обнаружить ошибки алгоритма выделения основы;
после этого отбираются, основы значащих слов, имеющие наибольшую частоту; эти основы становятся центрами классов понятий рассматриваемого тезауруса;
словарь основ просматривается в алфавитном порядке, при этом слова со средней частотой или добавляются к уже построенным классам, или образуют центры новых классов понятий;
оставшиеся основы слов добавляются к уже существующим классам слов, — в основном это слова с низкой частотой;
полученный в результате всех этих операций тезаурус проверяется человеком на внутреннюю непротиворечивость; после этого тезаурус печатается.
Как показал эксперимент, тезаурусы, полученные с помощью описанной выше процедуры, дают наиболее приемлемые результаты, если неоднозначные термины входят только в те классы понятий, которые представляют вероятный интерес для рассматриваемой предметной области. Например, термин bat (летучая мышь или бита) не нуждается в указании о принадлежности к классу животных, если рассматриваемые документы отражают спортивную тематику (игры с мячом). Более того, размеры получившихся классов должны быть сравнимы между собой в том смысле, что суммарная частота слов в данном классе понятий должна быть приблизительно одинаковой для всех классов, поэтому высокочастотные слова должны образовывать отдельные классы, а низкочастотные слова должны группироваться таким образом, чтобы происходило выравнивание суммарных частот [3,4].
Было проведено несколько экспериментов в системе SMART для того, чтобы сравнить эффективность двух различных методов поиска информации. В первом случае использовались составленные вручную тезаурусы, учитывающие синонимию, во втором происходило простое сравнение основ слов, выбранных из запроса, с основами слов, выбранными из документа. При усреднении результатов поиска по многим запросам можно сделать следующий общий вывод: использование тезауруса, которое позволяет приписывать словам идентификаторы понятий, представляющие классы понятий, дает увеличение точности приблизительно на 10 процентов для данного значения полноты по сравнению с методом поос- новного сравнения1) [5].
Чтобы определить, какие именно свойства тезауруса особенно желательны с точки зрения практического применения, целесообразно кратко рассмотреть основные процедуры, из которых складывается процесс построения тезауруса [6]:
!) Полнота есть отношение числа выданных релевантных документов к числу всех релевантных документов, имеющихся в массиве, а точность есть отношение числа выданных релевантных документов к числу всех выданных документов. Естественным является желание получить большое количество релевантных документов и малое количество нерелевантных документов, что соответствует высокой полноте и высокой точности. Наилучшие значения этих характеристик представляются кривой, которая приближается к правому верхнему углу типичного графика «полнота — точность», поскольку в точке с координатами (1,1) как полнота, так и точность принимают свое наибольшее значение.
Получение основы слова;
тип используемой при этом процедуры отделения суффикса: эта процедура может быть полностью автоматической или в ней может использоваться заранее составленный словарь суффиксов;
степень сложности средств, применяемых для выделения суффикса: можно учитывать морфологические свойства одного слова или рассматривать также и окрестность каждого слова;
Процесс построения класса понятий;
степень автоматизации при построении классов тезауруса;
средний объем классов в тезаурусе;
in) однородность классов по объему;
однородность по частоте встречаемости отдельных членов класса (в пределах класса тезауруса);
степень перекрываемости классов тезауруса (т. е. число слов в пересечении);
семантическая близость классов тезауруса;
Распознавание общеупотребительных слов;
степень автоматизации этого процесса;
доля общеупотребительных слов во всем словаре;
Обработка случаев многозначности в языке;
степень автоматизации распознавания случаев неоднозначности;
степень проникновения в глубину многозначных структур.
Во всех алгоритмах анализа языка, употребляющихся в системе SMART, используется программа автоматического отделения суффиксов, опирающаяся на составленный вручную словарь суффиксов. Кроме того, в системе SMART не рассматриваются в в явном виде случаи языковой многозначности, например когда в тексте встречаются омографы1). Поэтому при исследовании эффективности использования тезауруса как главные рассматриваются две процедуры: распознавание общеупотребительных слов и построение классов понятий. Эти две задачи рассматриваются ниже.
РАСПОЗНАВАНИЕ ОБЩЕУПОТРЕБИТЕЛЬНЫХ СЛОВ
Говоря о задаче распознавания общеупотребительных слов, прежде всего необходимо отличать общеупотребительные служебные слова, такие, как предлоги, союзы или артикли, от общеупотребительных значащих слов. Первые легко находятся в тексте, если использовать список служебных слов, причем этот список не меняется, какую бы предметную область мы ни рассматривали.
!) Хотя некоторые системы анализа языка используют детально разработанные процедуры распознавания языковой многозначности, оказывается, что даже в самых сложных случаях многозначность автоматически устраняется, если применять данный словарь к определенной, точно очерченной предметной области [7, 8].
Слова второго типа представляют собой термины, встречающиеся в текстах очень часто (или очень редко), которые не следует включать в обычные классы понятий, потому что они не выделяют данный документ среди документов рассматриваемой предметной области. Такой является, например, основа «автомат», очень часто встречающаяся в текстах по вычислительной технике. Необходимо, чтобы слова такого рода были опознаны, так как, будучи приписаны в качестве идентификаторов понятий, они будут давать высокий коэффициент подобия между единицами информации, которые на самом деле имеют мало общего между собой; кроме того, присутствие таких слов увеличивало бы как объем машинной памяти, так и стоимость обработки информации.
Для определения того, насколько важной является задача распознавания общеупотребительных слов, недавно было проведено соответствующее исследование. При этом сравнивалась эффективность применения при информационном поиске стандартной процедуры сравнения основ слов, обычного тезауруса, а также процедуры сравнения основ слов, в которой распознаются общеупотребительные значащие слова, обычно включаемые в тезаурус [9].
Для этой цели применялась процедура, с помощью которой из тезауруса был получен словарь основ. При этом каждый класс тезауруса разбивался на отдельные слова, и основы этих слов брались в качестве элементов нового словаря основ. Главным отличием этого нового словаря значащих основ от прежнего словаря основ является то, что в нем отсутствуют основы, соответствующие как служебным словам, так и общеупотребительным значащим словам, которые, как правило, приводятся в тезаурусе. Поэтому сравнение словаря значащих основ с обычным словарем основ даст нам доказательство того, насколько важно отбрасывать общеупотребительные слова при сравнении запроса и документа. Сравнение же словаря значащих основ и тезауруса позволит нам оценить методы построения этого тезауруса, а именно те методы (принципы), которые лежали в основе образования классов понятий и объединения терминов в класс.
На рис. 1, а представлена зависимость между полнотой и точностью при работе этих трех словарей, причем значения полноты и точности усреднены для 42 запросов и 200 документов из области аэродинамики. Как видно из рис. 1,а, использование тезауруса дает увеличение точности на несколько десятков процентов при заданной полноте по сравнению с соответствующей величиной для обычного словаря основ. Словарь значащих основ неожиданно дает дальнейшее улучшение точности по сравнению с тезаурусом, а это показывает, что основной характеристикой словаря, которая проверялась в эксперименте, является информация об общеупотребительных словах, а не объединение терминов в классы понятий. В рассматриваемом эксперименте словарь значащих основ содер-
жит примерно в два раза больше основ общеупотребительных слов, чем обычный словарь основ.
о—о1
□—о 2
л —▲ 3
Рис. 1. Сравнение словаря значащих основ с тезаурусом и обычным словарем основ (Крэнфилдский массив документов).
1—словарь значащих основ; 2—обычный тезаурус; 5 — обычный словарь основ, а) График зависимости полнота — точность (200 документов, 42 запроса); по оси абсцисс — полнота; по оси ординат — точность; б) ранговая полнота для запросов, записанных при помощи 6 понятий; по оси абсцисс — число релевантных документов на запрос; по оси ординат — ранговая полнота.
Конечно, характеристики полнота — точность, представленные на рис.1,а, не позволяют сделать вывода о том, что использование словарей синонимов, или тезаурусов, построенных путем объединения терминов в классы, ничего не дает для анализа содержания запроса и документа при информационном поиске. Довольно часто в отдельных* запросах ставятся особые требования, например требуется очень высокая полнота или точность, — в таких случаях тезаурус может оказать весьма существенную помощь.
В качестве примера рассмотрим рис 1,6, на котором изображены значения ранговой полноты для десяти запросов (из сорока двух), каждый из которых описан с помощью шести понятий, взятых из тезауруса1). Очевидно, для запросов, которым соответствует очень малое количество документов из рассматриваемого множества документов, тезаурус дает значительно более высокую эффективность, чем любой из словарей. По мере того как число документов, релевантных данному запросу, растет, словари основ начинают соперничать с тезаурусом.
Исходя из очевидной необходимости распознавания общеупо-
Ранговая полнота представляет собой характеристику поиска, выражаемую числом, которое связано обратной зависимостью с рангами документов, полученными в процессе поиска [1].
требительных слов, можно задать следующий вопрос: нельзя ли выделять слова такого рода автоматически вместо того, чтобы вручную пользоваться процедурой, описанной в предыдущем разделе. Этот вопрос изучался с помощью следующей математической модели. Рассмотрим исходное множество терминов, или понятий, которые используются для описания некоторого множества запросов и документов, и
пусть это множество терминов меняет* ся путем выборочного вычеркивания некоторых определенных терминов из запросов и документов. Тогда мы получим одно из двух в зависимости от того, какие термины вычеркивались:
если вычеркиваемые термины используются по существу при анализе содержания, то именно они и дают возможность различать докумен-
ты и удаление таких терминов приведет к тому, что пространство документов как бы сожмется, документы станут более похожими друг на друга, т. е. увеличится корреляция между парами документов;
с другой стороны, если вычеркиваемые термины представляют собой общеупотребительные слова, которые не играют роли при различении документов, то при удалении таких терминов пространство документов как бы расширится, а корреляция между парами документов уменьшится.
Рис. 2. Изменения, происходящие в пространстве документов в результате вычеркивания определенных терминов.а) Исходное пространство документов; б) пространство документов после удаления слов- различителей; в) пространство документов после удаления слов-неразличителей.Рис. 2. Изменения, происходящие в пространстве документов в результате вычеркивания определенных терминов.а) Исходное пространство документов; б) пространство документов после удаления слов- различителей; в) пространство документов после удаления слов-неразличителей.стоянию между соответствующими крестиками. Тогда нужно проверить такое предположение: термин, который следует отнести к общеупотребительным словам и поэтому удалить из множества кандидатов в идентификаторы понятий (и из множества допусти-стоянию между соответствующими крестиками. Тогда нужно проверить такое предположение: термин, который следует отнести к общеупотребительным словам и поэтому удалить из множества кандидатов в идентификаторы понятий (и из множества допусти-Это положение иллюстрируется упрощенной моделью, изображенной на рис. 2, где каждый документ обозначен крестиком. При этом предполагается, что близость документов (величина, выражающая сходство документов) обратно пропорциональна рас-
Рис. 2. Изменения, происходящие в пространстве документов в результате вычеркивания определенных терминов.
а) Исходное пространство документов; б) пространство документов после удаления слов- различителей; в) пространство документов после удаления слов-неразличителей.
Рис. 2. Изменения, происходящие в пространстве документов в результате вычеркивания определенных терминов.
а) Исходное пространство документов; б) пространство документов после удаления слов- различителей; в) пространство документов после удаления слов-неразличителей.
стоянию между соответствующими крестиками. Тогда нужно проверить такое предположение: термин, который следует отнести к общеупотребительным словам и поэтому удалить из множества кандидатов в идентификаторы понятий (и из множества допусти-
стоянию между соответствующими крестиками. Тогда нужно проверить такое предположение: термин, который следует отнести к общеупотребительным словам и поэтому удалить из множества кандидатов в идентификаторы понятий (и из множества допусти-
мых понятий тезауруса), является термином, вызывающим расширение пространства документов путем уменьшения его компактности.
Для проверки этого предположения используется следующая процедура [10]. Рассмотрим множество из N документов. Пусть каждый документ представляется с помощью вектора терминов, или понятий vj, где vtj выражает вес термина I в документе /. Пусть центроид с всех точек, соответствующих множеству документов, определяется как «средний документ», т. е.
N
C‘ = ^SV‘/-
7=1
Тогда, по существу, этот центроид является центром тяжести пространства документов. Если подобие пары документов к и / задано корреляцией r(vk, Vj), где г меняется от 1 (для абсолютно подобных документов) до 0 (для совершенно непохожих документов), компактность Q пространства документов можно определить как
N
Q = 2 г (с, у,), O^Q^N,/=i1
т. е. как сумма значений функции подобия между каждым документом и центроидом; чем больше значение Q, тем больше компактность пространства документов.
Рассмотрим теперь функцию Qi, представляющую собой компактность пространства документов, если термин i удален. Если Qi > Q, пространство документов стало еще более компактно, а термин I является различителем (дискриминатором); в противном случае Qi < Q, пространство расширяется, а удаление термина i может дать лучшие результаты поиска. Поскольку вычеркивание слов-различителей увеличивает Q, а вычеркивание слов-неразличи- телей (общеупотребительных слов) уменьшает Q, должно существовать некоторое оптимальное множество терминов /, такое, что для него Qi минимально.
Тогда в качестве экспериментальной можно предложить следующую процедуру:
рассмотреть по порядку все термины i и вычислить для каждого из них Qr,
расположить все термины в порядке уменьшения Qi (т. е. первыми будут те термины, которые вызывают наибольшее уменьшение компактности);
считать, по определению, множеством общеупотребительных терминов /, подлежащих удалению, такое множество терминов, которое дает наименьшее значение Q.
На рис. 3 представлены результаты, оценивающие работу этого алгоритма на примере 35 реальных запросов и 82 документов по
информатике. Сначала для описания документов употреблялось 1218 различных основ слов. Из рис. 3, а видно, что результаты эксперимента полностью соответствуют модели:
о—о1 о- -0 2 Аг-гД 3
ТочностьТочность0,540 0,462 0,428 0,275 0,2390,540 0,462 0,428 0,275 0,2390,1 0,3 од 0,7 0,90,1 0,3 од 0,7 0,9-JI111—0,2 0,4 0,6 0,8 1,0а-JI111—0,2 0,4 0,6 0,8 1,0аQ498 0.385 0,342 1^213 0,159Q498 0.385 0,342 1^213 0,1590,393 0,329 0,261 0,147 0,1190,393 0,329 0,261 0,147 0,119to- Ц8.0,60,4-Q2-to- Ц8.0,60,4-Q2-0,2 0,4 0,6 0,8 {о60,2 0,4 0,6 0,8 {о6
Точность
Точность
0,540 0,462 0,428 0,275 0,239
0,540 0,462 0,428 0,275 0,239
0,1 0,3 од 0,7 0,9
0,1 0,3 од 0,7 0,9
-JI111—
0,2 0,4 0,6 0,8 1,0
а
-JI111—
0,2 0,4 0,6 0,8 1,0
а
Q498 0.385 0,342 1^213 0,159
Q498 0.385 0,342 1^213 0,159
0,393 0,329 0,261 0,147 0,119
0,393 0,329 0,261 0,147 0,119
to- Ц8.
0,6
0,4-
Q2-
to- Ц8.
0,6
0,4-
Q2-
0,2 0,4 0,6 0,8 {о
6
0,2 0,4 0,6 0,8 {о
6
Рис. 3. Автоматическое распознавание общеупотребительных слов.
1 — исходное множество основ; 2 — вычеркнуто 252 термина; 3 — вычеркнуто 1120 терминов; 4 — тезаурус; 5 — вычеркнуто 28 основ слов.
а) Сравнение результатов с разными объемами словарей; по оси абсцисс — полнота, по оси ординат — точность; б) сравнение с тезаурусом.
сначала были удалены высокочастотные слова, не являющиеся различителями (252 термина), при этом пространство расширилось, а соответствующее значение точности при заданной полноте увеличилось примерно на 20 процентов;
когда дополнительно были удалены еще некоторые термины, компактность пространства начала увеличиваться по мере удаления различителей, а соотношение полнота — точность начало ухудшаться. На рис. 3, а кривая, проходящая посередине, представляет эту характеристику после удаления 1120 терминов (Q уменьшено на порядок), при этом эффективность поиска снижается примерно на десять процентов.
На рис. 3,6 представлен результат сравнения соответствующих характеристик для обычного тезауруса и словаря основ, в котором удалены первые 28. общеупотребительных терминов1). Очевидно, что тезаурус дает лучшие результаты там, где полнота мала, причем эти две кривые почти сливаются в большей части области определения. .
Таким образом, результаты, представленные на рис. 3, подтверждают результаты, представленные на рис. 1, в том смысле, что
Термины упорядочены в соответствии с пунктом б) процедуры. — Прим, перев. '
использование словаря основ дает приблизительно те же,значения числовых характеристик поиска, что и использование обычного тезауруса при условии, что выделены основы общеупотребительных слов и что эти основы исключены из множества идентификаторов понятий. -
АЛГОРИТМЫ АВТОМАТИЧЕСКОГО ПОСТРОЕНИЯ КЛАССОВ ПОНЯТИЙ
Общая проблема классификации, заключающаяся в построении групп, или классов единиц, которые в некотором смысле подобны между собой, нашла отражение во многих исследованиях, ведущихся в течение многих лет в различных областях науки. В задачах информационного поиска документы часто разбивают на некоторые классы, упрощая таким образом процесс поиска информации. С другой стороны, термины или понятия объединяются в классы тезауруса таким образом, чтобы в один класс, характеризуемый некоторым номером, попали все синонимы данного слова и слова, связанные с данным словом по смыслу.
В разд. 1 настоящей работы были определены различные критерии построения классов тезауруса вручную. Однако поскольку построение тезауруса вручную требует от его создателей больших затрат времени, а также большого опыта, в течение многих лет ведутся эксперименты по автоматическому построению классов тезауруса. В основе этих экспериментов лежит изучение свойств рассматриваемого множества документов, т. е. изучение соответствия между терминами и документами. Этот процесс в общих чертах может быть описан следующим образом [11]:
сначала строится матрица термин — документ, в которой для каждого документа указываются все термины, ему приписанные; если терминам приписаны веса, они тоже указываются в этой матрице;
с помощью матрицы термин — документ строится матрица близости терминов, — для этого вычисляется коэффициент близости между каждой парой векторов терминов, все это делается на основе рассмотрения всех терминов и всех документов;
строится матрица связей между парами терминов: два термина считаются связанными (в соответствующее место матрицы связей ставится 1), если коэффициент близости между соответствующими векторами терминов больше некоторого порогового значения;
можно рассматривать эту двоичную матрицу связей как абстрактный граф, в котором каждая вершина изображает некоторый термин, а каждая установленная связь изображается в виде ветви между соответствующей парой вершин; для выделения классов терминов, или пучков, исследуется некоторая функция этого графа (в качестве такой функции можно взять связные компо-
ненты графа или максимальные полные подграфы данного графа) !).
Ряд исследователей проводили автоматическую классификацию, используя процедуры, подобные описанной выше [12—15]. К сожалению, построение матрицы связей в том случае, когда число терминов не очень мало, является довольно дорогостоящей процедурой. По этой причине на практике используются более дешевые методы автоматической классификации, когда некоторая существующая грубая классификация улучшается за счет выборочного изменения исходных классов [16, 17].
Ниже кратко описываются три эксперимента из области информационного поиска, проведенные для определения эффективности автоматической классификации такого рода. При этом изучались следующие методы классификации: автоматическое уточнение уже построенных классов, два способа полностью автоматической классификации и один метод полуавтоматической классификации.
Первый из этих способов заключается в следующем: берется уже существующая классификация или существующий тезаурус и производится чистка классов путем удаления тех классов, которые пересекаются по большому числу элементов [18]. Один алгоритм такого рода, опробованный в системе SMART, содержал следующие шаги в добавление к шагам а)—г), ранее описанным:
для данных классов терминов строится матрица близости классов, причем используется процедура, подобная той, которая применяется для построения матрицы близости терминов;
с помощью матрицы близости классов строится матрица связей классов, состоящая из нулей и единиц, при этом используется некоторое пороговое значение;
каждый максимальный полный подграф задает новый, объединенный класс понятий;
затем удаляются те объединенные классы, которые входят в некоторые другие, более широкие классы; объединенные классы, оставшиеся после всех удалений, образуют новую классификацию.
Этот алгоритм был применен для уточнения тезауруса, первоначально использовавшегося для описания документов по аэродинамике (82 документа и 35 запросов). Были построены два «объединенных» тезауруса:
тезаурус 1 с общим числом классов 156, причем на класс в нем приходится около 3,9 понятия;
тезаурус 2 с общим числом классов 289, в нем на класс приходится в среднем 1,4 понятия [19].
!) Связной компонентой графа называется подграф, каждая пара вершин которого соединена некоторым путем (цепью ветвей); максимальный полный подграф — это такой подграф, в котором каждая пара вершин непосредственно связана некоторой ветвью, и никакая вершина вне его не обладает этим свойством по отношению к любой вершине из рассматриваемого подграфа.
Общие нормализованные показатели полноты — точности, усредненные для 35 запросов, которые приведены в табл. 1, отражают некоторое улучшение характеристик поиска, произведенного с помощью этих уточненных тезаурусов.
Таблица 1
Числовые характеристики поиска при работе с тезаурусами,полученными в результате объединения классов
Тип тезауруса
Нормализованная полнота
Нормализованная точность
Исходный тезаурус
0,800
0,610
Объединенный тезаурус 1
0,830
0,640
Объединенный тезаурус 2
0,830
0,650
Вторая группа экспериментов была посвящена решению более смелой задачи — полностью автоматической классификации, описанной в начале этого раздела. В одном из таких исследований использовалось много определений из теории графов, таких, как «цепочки терминов», «звезды», «клики» (cliques), «пучки», а также различные частотные и пороговые ограничения [20]. Вообще говоря, оказалось, что использование некоторых из этих автоматических классификаций позволяет получить большую эффективность, чем использование ключевых слов, в которых классификация не проведена, в особенности если при этом используется отношение «сильной» близости (ему соответствует большое пороговое значение), и при этом разрешается классифицировать только те слова, которые имеют небольшую частоту. При этом исследователи даже не пытались сравнить эти автоматически полученные классы с тезаурусами, построенными вручную.
Недавно был закончен другой эксперимент, посвященный полностью автоматической классификации. В этом эксперименте на большом материале (11500 аннотаций документов из области вычислительной техники) использовались алгоритмы, аналогичные описанным выше [21]. При этом происходило уточнение классов, а также изменение и опробование многих параметров. В конце концов, было достигнуто незначительное улучшение по сравнению с обычным методом, когда происходит сравнение основ слов.
Автор этой работы заявляет: «Что касается результатов, достигнутых при помощи различных (автоматических) ассоциативных стратегий, следует сделать вывод о том, что поиск путем простого сравнения основ ключевых слов обеспечивает очень хороший уровень соответствующих числовых характеристик» [21, стр. 61].
Последний описываемый эксперимент по классификации терминов основан на полуавтоматическом способе получения исходных ректоров терминов (понятий), которые используются при пострре?
нии матрицы близости терминов, а именно: человеком задается некоторое множество свойств термина путем ответа на вопросы о каждом термине, причем ответы кодируются соответствующим образом1). Затем для каждого термина определяется соответствующий характеристический вектор — множество ответов на 10 или 12 вопросов, заданных человеком. Когда для всех терминов уже построены соответствующие характеристические векторы, для получения классификации типа тезауруса можно воспользоваться одним из алгоритмов автоматической классификации [3, 22].
Словарь такого рода, построенный полуавтоматически, был получен для документов из области вычислительной техники. В табл. 2 приводятся его характеристики и характеристики тезауруса, построенного вручную. Очевидно, что в тезаурусе, построенном полуавтоматически, классы значительно менее однородны, чем в тезаурусе, построенном вручную: одни классы очень велики, другие очень малы. Более того, в тезаурусе, построенном полуавтоматически, содержится меньшее число общеупотребительных слов.
На рис. 4 представлены результаты использования этих двух тезаурусов при информационном поиске. Очевидно, что для почти всех значений полноты полуавтоматический тезаурус дает более низкие значения точности, чем тезаурус, построенный вручную. Только для очень больших значений полноты эффективность обоих этих словарей приблизительно одинакова.
Таблица 2
Сравнительные характеристики словаря, построенного полуавтоматически
- Характеристики
Тезаурус, построенный вручную (Харрис)
Т езаурус, построенный полуавтоматически (Бенч)
Число классов понятий
863
2953
Число основ слов
2551
5197
Среднее число слов в классе
3
1,8
Число небольших по объему классов (по одному слову в классе)
468
2725
Число очень больших классов (от 32 до 101 слова)
2
12
Число слов, попавших в два или более классов.
52
275
Отношение числа общеупотребительных слов к общему числу слов
37,3%
4,40/0
!) Если некоторый заданный термин относится к области вычислительной техники, то типичными вопросами можно считать следующие: относится ли этот термин к устройству самой машины (1) или к области математического обеспечения (2), или данный вопрос поставлен некорректно для данного термина (3); выбранный ответ кодируется своим номером (п).
ВЫВОДЫ
0—0 1•—♦20—0 1•—♦20,2 0,4 0,6 0,8 ip а0,2 0,4 0,6 0,8 ip аRIОДRIОД. Точность. Точность0,8790,8790,7970,7970,646 0,5210,491 0,4400,646 0,5210,491 0,4400Д890Д890,3630,3630,2730,2730,2750,2750,2 0,4 0,6 0,8 ip0,2 0,4 0,6 0,8 ipВ настоящей работе описывается и оценивается ряд алгоритмов, предназначенных как для автоматического, так и для ручного построения словарей, в частности, рассматриваются методы автоматического распознавания общеупотребительных слов и методы группирования терминов, автоматические и полуавтоматические.
0—0 1
•—♦2
0—0 1
•—♦2
0,2 0,4 0,6 0,8 ip а
0,2 0,4 0,6 0,8 ip а
R
I
ОД
R
I
ОД
. Точность
. Точность
0,879
0,879
0,797
0,797
0,646 0,521
0,491 0,440
0,646 0,521
0,491 0,440
0Д89
0Д89
0,363
0,363
0,273
0,273
0,275
0,275
0,2 0,4 0,6 0,8 ip
0,2 0,4 0,6 0,8 ip
1,0-
Q8- 0,6- Q4- 0,2-
Рис. 4. Сравнение двух тезаурусов: построенного вручную и построенного полуавтоматически (по оси абсцисс — полнота, по оси ординат —• точность).
Тезаурус: / — построенный вручную; 2 — построенный автоматически,а) Тексты по вычислительной технике; б) аннотации по вычислительной технике.
Как оказалось, автоматические методы распознавания общеупотребительных слов могут успешно применяться в существующих системах анализа текстов. В самом деле, эффективность применения в информационном поиске пополненного словаря основ оказывается такой же, как и эффективность поиска, проводимого с помощью обычных тезаурусов.
Эффективность применения алгоритмов автоматической группировки слов отчасти находится под сомнением. Вероятно, методы автоматического объединения слов в группы могут использоваться более эффективно, чем дорогостоящие процессы ручного построения тезаурусов. Однако до сих пор автоматическими методами не было построено тезауруса, который бы доказал свое преимущество [23, 24].
Поэтому в настоящее время в практических приложениях наиболее перспективно комбинирование ручных и автоматических методов, в которое входит:
автоматическое распознавание общеупотребительных слов;
классификация терминов, осуществляемая вручную;
автоматическое уточнение классов, полученных вручную.
СПИСОК ЛИТЕРАТУРЫ
Salton G., Automatic Information Organisation and Retrieval, McGraw-Hill Book Co., New York, 1968.
Wall E., Vocabulary Building and Control Techniques, Amer. Doc., 20, 2 (1969).
Salton G., Lesk M. E., Information Analysis and Dictionary Construction, Report No. ISR-11 to National Science Foundation, Sect. IV, Dept, of Computer Science, Cornell University, June 1966.
Lesk M. E., Performance of Automatic Information Systems, Information Storage and Retrieval, 4 (1968), 201—218.
Salton G., Computer Evaluation of Indexing and Text Processing, JACM, 15.
Moser A., Construction of Dictionaries for Text Analysis and Retrieval, неопубл, работа, Cornell University, 1970.
Coyaud M., Sio-Decauville N., L’Analyse Automatique des Documents Mouton and Co., Paris, 1967.
Д. Г. Лахути, Б. Л. Румшиский, E. Б. Федоров, В. С. Чернявский, А. Л. Шумилина, Полуавтоматический перевод с естественного языка на дескрипторный язык систем типа «Пусто-Непусто» (автоматическое индексирование), Сб. «Информационно-поисковые системы и автоматизированная обработка НТИ», Труды III Всесоюзной конференции, т. 1, ИПС, М., 1967.
Bergmark D., The Effect of Common Words on Retrieval Performance, Report No. ISR-18 to National Science Foundation and to National Library of Medicine, Sect. V, Dept, of Computer Science, Cornell University, October 1970.
Bonwit K., Aste-Tonsman J., Negative Dictionaries, Report No. ISR-18 to National Science Foundation and to National Library of Medicine, Sect. VI, Dept, of Computer Science, Cornell University, October 1970.
Augustson J. G., Minker J., An Analysis of Some Graph Theoretical Cluster Techniques, JACM, 17 (1970), 571—588.
Borko H., The Construction of an Empirically Based Mathematically Derived Classification System, Report No. SP-588, Syst. Devel. Corp., October 1961.
Dennis S. F., The Design and Testing of a Fully Automatic Index Searching System for Documents Consisting of Expository Test, in G. Schester, (ed.), «Information Retrieval —A Critical View», Thompson Book Co., 1967.
Sparck Jones K., Jackson D., Current Approaches to Classification and Clump Finding, Computer Journal, 10, 1 (1967), 29—37.
Giuliano V. E., Jones P. E., Linear Associative Information Retrieval, in P. Howerton (ed.), «Vistas in Information Handling», (Spartan Books, Inc., 1963).
Doyle L. B., Breaking the Cost Barrier in Automatic Classification, Report No. SP-2516, System Development Corp., Santa Monica, July 1966.
Dattola R. T., A Fast Algorithm for Automatic Classification Report No. ISR-14 to National Science Foundation, Sect. V, Comp. Sci. Dep., Cornell Univ., October 1968.
Gotlieb С. C., Kumar S., Semantic Clustering of Index Terms, JACM, 15 (1968), 493—513.
Dattola R. T., Murray D. M., An Experiment in Aautomatic Thesaurus Construction, Report No. ISR-13 to National Science Foundation, Sect. VIII, Dept, of Computer Science, Cornell University, December 1967.
Sparck Jones K., Jackson D. M., The Use of Automatically-Obtained Keyword Classifications for Information Retrieval, Information Storage and Retrieval,
4 (1970), 175—202.
2L Vaswani P. К- T., Cameron J. B., The NPL Experiments in Statistical Word Associations and their Use in Document Indexing and Retrieval, Report Com. Sci. 42, National Physical Laboratory, Teddington, England, April 1970.
Salton G., Information Dissemination and Automatic Information Systems, Proc. IEEE, 54, 12 (1966), 1663—1678.
Cleverdon C. W., Keen E. M., Factors Determining the Performance of Indexing Systems, Aslib-Cranfield Research Project Report, Vol. 1 and 2, Cranfield, England, 1966.
Salton G.t Automatic Text Analysis, Science, 168, April 1970, 335—343.
СОДЕРЖАНИЕ
Математические вопросы.
П. Перкинс. Базисы для эквациональных теорий полугрупп. Перевод В. Л. Мурского
Дж. Л. Месси, Д. Дж. Кастелло, Й. Ю с т е с е н. Веса многочленов и кодовые конструкции. Перевод Б. С. Цыбакова
й ё р н Ю с т е с е н. Новые конструкции сверточных кодов и класс асимптотически хороших кодов, меняющихся со временем. Перевод Б. С. Цыбакова
Т. М. Ковер. Широковещательные каналы. Перевод Б. С. Цыбакова . .
ЯхикоКамбаяси и СузоЯдзима. Верхняя граница числа К для последовательностных машин без потери информации порядка К. Перевод А. А. Курмита
Д. Б. Бенсон. Синтаксис и семантика с точки зрения теории категорий Перевод Е. С. Бургиной
Дж. Хартманис, Ф. Д. Льюис. Использование списков в изучении проблем теории автоматов. Перевод Т. И. Поповой
Дж. Хартманис и Дж. Э. Хопкрофт. Обзор теории сложности вычислений. Перевод В. Н. Агафонова
Дж. Хопкрофт. Алгоритм для минимизации конечного автомата. Перевод А. А. Мучника
Вопросы информационного поиска
Д^к е р а р д С э л т о н. Эксперименты по автоматическому построению тезауруса для информационного поиска. Перевод Н. Г. Арсентьевой . . . .
и кибернетике, «ИЛ», М, 1963. — Прим. ре^.
Кибернетическийсборник
НОВАЯ СЕРИЯ
ВЫПУСК
11
Сборник переводов
Под редакцией
О. Б. ЛУПАНОВА
ИЗДАТЕЛЬСТВО „МИ Р“
Москва I974
УДК 519.95
Научный совет по кибернетике Академии наук СССР
Продолжение новой серии кибернетических сборников, публикация которой начата издательством «Мир» в 1965 г. В данном выпуске большой интерес представит обзорная статья известных ученых Хартманиса и Хопкрофта по теории сложности вычислений, а также статья Сэлтона, в которой излагаются некоторые новые результаты из области информационного поиска. В сборник вошли также работы зарубежных авторов по теории кодирования, теории автоматов и по различным приложениям кибернетики.
Сборник рассчитан на научных работников, инженеров, аспирантов и студентов различных специальностей, занимающихся и интересующихся кибернетикой в ее теоретическом аспекте.
20205-024П 041 (01)-7420205-024П 041 (01)-74Редакция литературы по математическим наукам
20205-024
П 041 (01)-74
20205-024
П 041 (01)-74
© Перевод на русский язык, «Мир», 1974
КИБЕРНЕТИЧЕСКИЙ СБОРНИКНовая сериявыпуск 11
Редактор Л. Н. "Назынина. Художник Н. К. Сапожников.Художественный редактор В. И. Шаповалов.Технический редактор 3. И. Резник.
Корректор Т. С. Лаврова
Сдано в набор 5/V 1974 г. Подписано к печати 2/Х 1974 г. Бумага № 2 60Х90/1в.€,25 бум. л.
12,5 печ. л. Уч.-изд. л. 12,19. Изд. № 1/7806. Цена 1 р. 43 к. Зак. 210
ИЗДАТЕЛЬСТВО «МИР»Москйа, 1-й Рижский пер., 2
Ордена Трудового Красного Знамени Ленинградская типография № 2 имени Евгении Соко*левой Союзполиграфпрома при Государственном комитете Совета Министров СССР по де-лам издательств, полиграфии и книжной торговли. 198052, Ленинград, Л-52, Измайловскийпроспект, 29
математические вопросы
Базисы для эквациональных теорийполугрупп °
Л, Перкинс