Text
                    Кибернетический
сборник
НОВАЯ СЕРИЯ
выпуск
2
Сборник переводов
Под редакцией
А. А. ЛЯПУНОВА и О. Б. ЛУПАНОВА
ИЗДАТЕЛЬСТВО „МИР"
Москва 196 6


УДК 519.95 НАУЧНЫЙ СОВЕТ ПО КИБЕРНЕТИКЕ АКАДЕМИИ НАУК СССР Второй выпуск новой серии кибернетических сборников (продолжение серии, выпускавшейся Издательством иностран- иностранной литературы в 1960—1963 гг. и издательством «Мир» в 1964 г.) состоит из двух разделов: математические вопросы и математи- математическая лингвистика. Первый из них содержит статьи, посвя- посвященные некоторым вопросам теории последовательностных авто- автоматов, теории графов и динамического программирования. Раз- Раздел «Математическая лингвистика» включает работу Н. Хом- ского о формальных свойствах грамматик. Сборник рассчитан на научных работников, инженеров, аспирантов и студентов различных специальностей, интересую- интересующихся кибернетикой в ее математическом аспекте. Редакция литературы по математическим наукам
Математические вопросы
ТОЧНЫЕ ВЕРХНИЕ ГРАНИЦЫ ДЛИН МИНИМАЛЬНЫХ ЭКСПЕРИМЕНТОВ, ОПРЕДЕЛЯЮЩИХ ЗАКЛЮЧИТЕЛЬНОЕ СОСТОЯНИЕ, ДЛЯ ДВУХ КЛАССОВ ПОСЛЕДОВАТЕЛЬНОСТНЫХ МАШИН1) Т. Н. Хиббард Введение В этой статье рассматривается задача определения состояния последовательностной машины, впервые поставленная в [1]. Пред- Предполагается, что информация о состоянии машины может быть получена только путем подачи входных сигналов и наблюдения выходных сигналов. Подача входных символов, вообще говоря, заставляет машину изменить состояние; это заключительное сос- состояние может быть определено, даже если тачальное состояние останется неизвестным. Вывести конечное состояние машины пос- после введения последовательности входных символов (входов) и наблюдения результатов на выходе (выходов) — значит узнать состояние машины. Процедуру для такого узнавания мы назы- называем экспериментом заключительного состояния, или просто экспериментом2). В [1] было показано, что для произвольной машины с/2 раз- различными состояниями можно построить эксперимент, который в самом худшем случае содержит не более чем п(п—1)/2 сигналов на входе. Хотя статья [1] ограничивалась случаем входно-независимых машин3) (их определение дано в первом разделе настоящей статьи), ее результат и метод, которым он получается, с небольшими из- изменениями лриложимы ко всему классу полных машин4). В сфор- ) Н 1 Ь Ь а г с1 Т. Н., Ьеаз! Ц1ррег Воипйз оп М1шта1 Тегтта1 51а1е Ехрептегйз 1ог Тт> Оаззез о! 5е^иеп^а1 МасЫпез, ^. Аъвос'тИоп [ог СотриНп§ МасЫпегу, 8, № 4 A961), 601—612. 2) В [1] и [2] эксперимент обозначает последовательность входов, но с тех пор в общепринятом употреблении его заменил термин «лента». 3) В дальнейшем вместо термина «входно-независимая машина» (три{- тс1ерепс1еп1 гласите) мы употребляем принятый в настоящее время термин «автомат (машина) Мура».— Прим. ред. 4) Вместо термина «полная машина» (сотр1е!е гласите) мы будем употреб- употреблять принятый в настоящее время термин «автомат (машина) Мили».— Прим. ред.
8 Т. Хиббард мулированной ниже теореме 1 доказано, что п(п—1)/2 является лучшей из возможных оценок. Теорема 2 утверждает, что эта оценка может быть несколько понижена для автоматов Мура1). Проблема однородного эксперимента была поставлена в [2]. В однородном эксперименте экспериментатор должен выбрать последовательность входов перед началом эксперимента и не мо- может изменять ее в ходе эксперимента. Теорема 1 показывает, что лучшая оценка по классу всех автоматов Мили для одно- однородного эксперимента та же, что и для любых простых экспери- экспериментов. Теорема 2 устанавливает такой же результат для авто- автоматов Мура. В разд. I даны определения понятий и введены обозначения. В основном мы следовали обозначениям из [3]. В разд. II и III излагаются доказательства теорем 1 и 2 соответственно. Автор благодарен С. Гинзбургу за ознакомление его с тематикой по- последовательности ых машин и за многочисленные ценные крити- критические замечания к данной работе. I. Предварительное обсуждение Под термином машина мы понимаем автомат Мили. Каждая машина имеет конечное число состояний, конечное число вхо- входов и выходов2), а та^же две функции о и л. Функция переходов Ь определяет для каждого состояния д и каждого входа / сле- следующее состояние 5 (ду /). Функция выходов X определяет для каждого состояния д и каждого входа / выход Цд> /). Машина с п состояниями и т входами может быть представ- представлена (п хт)-матрицей пар (/?/у-, Еи), где ри- суть состояния, а Ец— выходы. Если [I11 1<; ^ш) — множество входов, а [д1 | 1 <^ I <^я }— множество состояний, то (*, /)-й элемент матрицы определяет- определяется так: рц = Ъ{цг, /■/); Е^ = Цд^ /'). Матрица называется табли- таблицей переходов и выходов машины [4]. Лента — это конечная последовательность входов. Длина лен- ленты есть длина последовательности. Индекс, стоящий у симво- символа ленты, обозначает длину ленты. Так, если «/ = // лента длины до, то при 1 <^<^до ^к обозначает ленту длины к, С каждым состоянием и каждой лентой связаны посредством функций 5 и X заключительное состояние и последовательность вы- 1) После того как была закончена эта статья, автор узнал, что этот ре- результат для автоматов Мура ранее был получен в [6]. Доказательство из [61 с небольшими изменениями приложимо к широкому классу машин. Метод [6] неприменим к задаче об однородном эксперименте. 2) Под входами и выходами везде в данной статье подразумеваются вход- входные и выходные символы соответственно.— Прим. перге.
Верхние границы длин минимальных экспериментов 9* ходов. Удобно расширить определение 5 и X так, чтобы они мог- могли принимать в качестве значений эти объекты. Так, если У = = /1/2.-/те,—лента длины до, то Цд, У) и Х(<7,У) обозначают соот- соответственно конечное состояние и последовательность выходов,, определяемых следующим образом: Для К Если У = 1г- • -1т и /С = Нг- • -Я^ — ленты длины соответствен- соответственно до и V, то Л( обозначает ленту 1Х- • -1^11^ • -Ну длины до+у. Читателю, незнакомому с алгеброй последовательностных машину надо учесть следующее. Если р и д — два произвольных состоя- состояния машины, а У и /С — две любые ленты, то (Н) Ъ (ш) если Цр,Л()=Цд,Л(), то Цр, У) = Говорят, что машина отличима, если для любых двух раз- различных состояний ряд машины существует по меньшей мере одна такая лента У, что Х(р,/)=^=Х(^, У). Заметим, что если маши- машина неотличима, то невозможно привести ее в известное состоя- состояние. Мы будем заниматься здесь только отличимыми машинами- Центральное место в теории машин занимают разбиения Рк множества состояний. Пусть 5 — машина с п состояниями. Для. каждого состояния р машины 5 и каждого целого к>1 опреде- определим множество Ск(р) посредством формулы Ск(р) = [д\д — состояние 5, Цр, У) = Цд, У) для каждой ленты У длины к]. Заметим, что если д входит в Ск(р), то Ск(д) = Ск(р). Таким образом, множества Ск(р) для всех состояний р и данного к об- образуют разбиение множества состояний машины 5. Для каждо- каждого к^>\ определим семейство Рк: Рк = [Ск(р)\р — состояние машины 5). Автомат Мура — это такая машина, для которой при любом: состоянии р и любых двух входах Iх и /2 Цр, I1) = Цр, /2). Другими словами, выход зависит только от состояния и не за- зависит от текущего входа. Заметим, однако, что следующее сое-
10 Т. Хиббард тояние зависит от входа, так что последовательность Цр, /) вы- выходов зависит от ленты /, когда длина «/ превышает 1. Свойства разбиения Рк были изучены в [1] для автоматов Мура, и, как показано в [5], эти свойства остаются в силе для всего класса автоматов Мили. Основным из этих свойств для наших целей является следующее. Лемма 1. Пусть 8 — отличимая машина с п состояниями. Для каждого к, 1<^</г, разбиение Рк содержит по крайней мере к + 1 класс. Эта лемма является прямым следствием леммы 1.4 из [2]. Дадим теперь формальное определение понятия эксперимент. Определение. Пусть 5 — машина, а Л — подмножество состояний машины 5. Для каждого р из А выбрана лента /(р). Множество {Л(р)\р(^А} называется экспериментом для А, если для любых двух состояний р и ц из А выполнены три условия: (I) если Х(р, ^(р)) = Х(<7, ^(р)), то В (р, ](р)) = Цд, У(р)); (II) ^1(р) = ЭД; (III) если I целее число, меньшее, чем длина «/(р), и такое, что ]^р) = ^^(^) и х(р, ]1(р)) = щ, ^^(^))^ то ^^+^(р) = ^^+^{^). Если ^(р) = У(^) для любых двух состояний р и #, принадлежа- принадлежащих Ау то эксперимент называется однородным. Длиной экспе- эксперимента называется наибольшая из длин лент эксперимента. Мы взяли множество А в этом определении вместо всего множества состояний машины 5, чтобы можно было рассматри- рассматривать ситуации, при которых экспериментатор с самого начала располагает частичными сведениями об исходном состоянии ма- машины. Свойство A) означает, что экспериментатор может по окон- окончании эксперимента установить конечное состояние, основываясь исключительно на наблюдении ответа машины на поданные входы. Свойства (и) и A11) означают, что экспериментатор может воздействовать на информацию только в зависимости от наблю- наблюдаемого поведения машины. Возможно, исключение из этого пред- представляет информация, которая позволяет ему вначале ограни- ограничить свое внимание множеством А. Термины минимальный эксперимент и минимальный однород- однородный эксперимент имеют очевидный смысл. Пусть 5 — машина, а А — подмножество множества состояний машины 5. Эксперимент Е для А называется минимальным для А, если длина Е не превосходит длину любого другого эксперимента для А. Однородный эксперимент Ь для А называется минимальным для Л, если длина V не превосходит длину любого другого од- однородного эксперимента для Л.
Верхние границы длин минимальных экспериментов 11 1 В качестве примера рассмотрим машину, имеющую следую- следующую таблицу переходов и выходов. (Слева в каждой строке за- записывается состояние, соответствующее этой строке, а наверху в каждом столбце записывается вход, соответствующий этому столбцу.) /1 /2 /3 Яг </з> 0 <72, 0 <71> О 0 д^, 1 #2, О > 0 <74> О > 0 На примере этой машины видна необходимость свойств (и) и (ш) в определении эксперимента. Пусть А = {д1У #2, д3> ^4}. Пусть также У ((/1)= у (?2) = /2/2. у (^ = ^ ((/4) = /з/8. Множество {■/(</,) 11 <*<4} удовлетворяет A), но не является экспериментом для А, посколь- поскольку оно ке удовлетворяет (и). Теперь пусть У (^) = ] (^2) = 1г1г\ ^ (^3) = / (д4) — /2/3/3. Это множество удовлетворяет обоим усло- условиям A) и (п), но не удовлетворяет условию A11), так как А (91) = Л (<7з) = /2 И . X (д19 /2) ^ X (д8, /2) = О, НО У2 (( Рассматривая все ту же машину, положим У (^х) = я ^(^3) = / (^4) = I1!1- Это множество является минимальным экспериментом для А. Заметим также, что {/1/2/3} — минималь- минимальный однородный эксперимент для А. Итак, минимальный экспе- эксперимент имеет длину 2, в то время как длина минимального однородного эксперимента равна 3. Как можно было ожидать, машины, для которых длина ми- минимального эксперимента равна длине минимального однородно- однородного эксперимента, встречаются относительно редко. Однако это именно те машины, которые требуют самых длинных экспери- экспериментов: это интуитивно представляется главным результатом настоящей статьи. II. Эксперименты для общего класса машин1) Первая задача теперь состоит в том, чтобы для каждой па- пары целых чисел (п, к), где 1<&<#, найти наименьшее число (пук), такое, что справедливо следующее утверждение: «Если — отличимая машина с п состояниями и А — множество из к состояний машины 5, то длина минимального эксперимента для А не больше чем ы)(п,к)». Вторая задача получается, если в Здесь имеется в виду класс автоматов Мили.— Прим. перев.
12 Т Хиббард предыдущей заменить слово «эксперимент» словами «однородный эксперимент». Ответ для обеих задач дает теорема 1. Сначала верхняя гра- граница будет установлена для однородного эксперимента. Это до- достигается в лемме 4. Две части в доказательстве леммы 4 удобнее всего выделить в отдельные леммы, что и будет сделано. Лемма 2. Пусть 8 — отличимая машина с п состояниями, {Д| 1 < I < г) —семейство из г^>\ непустых множеств состоя- состояний машины 8. Пусть \}АЬ содержит к состояний и Тогда существует лента У длины не более п — к + г со следую- следующим свойством', по меньшей мере одно из множеств Аь содержит два состояния р и ц, таких, что Х(р, /)=^Х(^, ]). Доказательство. Согласно лемме 1, разбиение Рп-^Г содержит по меньшей мере п — к + г + 1 классов. Предположим,, что для каждого /, 1 < I < г, существует класс С (I) из, разбиения Рп-к+г, такой, что АьЯкСA). Тогда в Рп-к+г сущест- существует не более чем г таких классов С (ь) и не более п — к осталь- остальных классов. Таким образом, в Рп-к+г существует не более п — к-\-г классов, что противоречит лемме 1. Следовательно, существует некоторое множество Д, такое, что ни для какого класса В из Рп-к+г не имеет место соотношение Д. с: В. Следо- Следовательно, для некоторых двух состояний р и ц из А1 сущест- существует лента ^ длины не более п — к-{-г, такая, что X (р, У) Ясно, что однородный эксперимент может быть построен с помощью последовательности члент, существование которых установлено в лемме 2. Однако в том случае, когда некоторые из Аг пересекаются, не стоит применять лемму 2 непосредст- непосредственно к Д. Лучше всего применить эту лемму к семейству Ну определенному ниже. Для каждого семейства Р множеств мы определим семейство Н (Р). Сначала определим отношение * между множествами из Р следующим образом. Для множеств А и В в Р А * В имеет место тогда и только тогда, когда для некоторого I су- существует последовательность А = Лх, А2, ... , Д. = В множеств из Р со следующим свойством: для каждого /, 1 </<*', ДП Д-+1=^= 0- Теперь для каждого множества А в Р определим множество С (А) так: С (А) = [} В. Наконец, положим Н (Р) = Заметим, что Н (Р) — разбиение [}А. Можно отметить сле- АР дующий факт, хотя он не имеет прямого отношения к дальней- дальнейшему. Предположим, что Р — семейство множеств Д леммы 2.
Верхние границы длин минимальных экспериментов 13 Если Н(Р) содержит I множеств, то число п — к-{-г в лемме 2 может быть заменено на п — к -\-г. Нам потребуется следующая лемма об Н. (Замечание: для каждого множества А п(А) обозначает число элементов А.) Лемма 3. Пусть /? — конечное множество, такое, что для .каждого элемента е из Я существует конечное непустое множе- множество В(е). Тогда п[В(е)] Доказательство. Пусть С — произвольное множество в Н({В(е)\е^Щ). Пусть 5= [е\е<^К, В (е) с С}. Поскольку мно- множества в Н попарно не пересекаются, достаточно показать, что Ц п [В (е)] — п(С)>п(8)—1. Существует последовательность еъ . . ., еп.3) длины п E), такая, что 5 = \е11 1 <"*'< п(8)} и что В{е,) П В (ем) - верно для каждого I, 1 < I < п E). Докажем теперь по индук- индукции, что для всякого I, 1 < /< п(8), выполняется неравенство В (е,) Это, очевидно, верно для г— 1. Предположим, что это верно для I = Н < п(8). Докажем, что отсюда следует, что , п [В п /1+1 В(е1) к. Заметим, что для любых пересекающихся множеств А и В имеет место п (А) + п (В) — п (А \) В) > 1. Поэтому п н У В(е:) п[В{енп)]—п ./=1 В(е,) > 1. По индуктивному предположению п н Н
14 Т. Хиббард Подстановка последнего выражения в первое дает желаемый результат для г = А + 1. Следовательно, по индукции что и требовалось доказать. Мы можем теперь установить множество верхних границ для минимальных однородных экспериментов. Лемма 4. Пусть 8 — отличимая машина с п состояниями, [Аь 11 < / < г) — семейство из а* >-1 непустых попарно непере- непересекающихся множеств состояний машины 5, и пусть \] А1 содер- жит ровно к состояний, причем к > г. Тогда существует лента п—\ ^ длины не более чем 2^ I со следующим свойством: для любых п—к-\г состояний р и д, принадлежащих одному множеству Аь, из X (р, ^) = X (д, ^) следует Ь (/?, ^) = Ь (д, ^). Доказательство. Доказательство проводится индукцией, по числу к — г. Предположим, что к — г— 1. Поскольку множе- множества А1 непусты и не пересекаются, все множества Аь, кроме одного, содержат ровно по одному элементу, а одно из А1 содержит два элемента. Пусть р и д — два состояния, принад- принадлежащих одному и тому же Аь. По лемме 2 существует лента ^ длины, не большей, чем п — к + г = п — 1, такая, что X (р, ^)=^= п—1 т^ М?, «/). Так как V ь = п—1 при к — г=1, то ^ облада- п—к + г ет требуемыми свойствами. Пусть р > 1 является целым числом, таким, что утверждение леммы выполняется при условии к — г<р. Продолжая индук- индуктивнее рассуждение, положим к — г = р. По лемме 2 существует лента ^ длины, ке большей, чем п — к + г, такая, что по мень- меньшей мере одно из множеств Аь содержит два состояния ри^, для которых \\р, У) =т^М#, «О- Пусть К является множеством пар* /? = {(*', I) | 1 < [ < г, X (р, /) = Ь для некоторого р из Аь). Для каждой пары (I, Ь) из /? положим содержит по крайней мере г + 1 элемент, так как для каждо- каждого I, 1 < I < г, существует по меньшей мере одна последова- последовательность выходов Ь, такая, что (г, Ц^К- Вследствие выбора У по крайней мере для одного г существуют две последовательно- последовательности выходов ^ и V, такие, что пары (*', Ь) и (/, V) обе принад- принадлежат
Верхние границы длин минимальных экспериментов 15 Предположим, что для каждой пары (/, Ц из /?, В (/, Ь) содержит не больше одного элемента. Пусть р и ц — такие два состояния в Аь, что Х(р, У) = Х(д, У) = Ь. Тогда оба состояния о(р, У) и о(д, У) входят в ВA,Ь). Так как В (/, I) содержит только один элемент, то о(р, У) = §(^, У). Кроме того, так как /1-1 & > г, то м — & + г< 2и *\ Поэтому в этом случае У удовлет- л—к-\-г воряет условиям леммы. Предположим, что хотя бы одно ВA,Ц содержит больше чем один элемент. Тогда можно указать такую ленту /С, что лента УК удовлетворяет лемме. Чтобы доказать это, возьмем раз- разбиение множества | 5 (р, У)|р С \] АЛ посредством функций Я, определенной перед леммой 3. Пусть Р = { В(/Д,)| (/,/,) ^/?}, I — число множеств в Н (Р), а пг — число элементов в множестве с- и вA,ь). Теперь покажем, что утверждение индукции применимо к семейству Н (Р), т. е. что Н (Р) удовлетворяет следующим трем условиям: A) множества из Н (Р) попарно не пересекаются, (И) пг> I, (Ш) т — I < к — г. Условие A) выполняется по определению Я. Условие (и) спра- справедливо, потому что по крайней мере одно из множеств, вхо- входящих в Р', содержит более одного элемента, следовательно, по ме. ьшей мере одно из множеств, входящих в Н(Р), содержит более одного элемента. Поскольку множества в Н(Р) попарно не пересекаются, то пг > I. Условие (ш) доказывается так. Очевидно, что /? и Р удовлетворяют условиям леммы 3. Пусть /? содержит точно г элементов. ЫAХ) обозначает для каждой пары {ь,Ь) из /? число элементов в ВA,Ь). По лемме 3 2и N (/,/,) — т>- г Ввиду равенства у В (/,!) = | 8(р, У) | р^ [} АЛ мы имеем 1=1 очевидно, И N (/,!)<й. Как замечено выше, /? содержит по крайней мере г+1 эле- элемент, т. е. г' >/-. Эти соотношения дают к — га>г— I. Таким образом, т — 1<Ск — г. Итак, предположение индукции применимо к Я (Р). Другими
16 Т. Хиббард п—1 словами, существует лента К длины не более чем 1^ I со следующим свойством: если р и ^ — два состояния из С, где С множество из Н (Т7), и если X (р, К) == X (^, /С), то й (р, К) = § ( К Теперь рассмотрим ленту Л(. Пусть р и ^ — два состояния, принадлежащие некоторому множеству А1 и такие, что X (р^К) = Х(^,У/С). Тогда Х(р,У) = Х(^,У). Отсюда следует, что •8 (р, У) и В (<7, У) принадлежат В (/, Цр^)). Но в //(Т7) сущест- существует такое С, что В(ь, X (р, У)) с С. Следовательно, о(р, У) и §( ^) принадлежат С. Однако , </), /С] = X [8 ((/, У), /С], откуда следует, что &[& (р, У), К] = 8 [^ (?, /), /С], следователь- следовательно, 8(Л У/С) - 8(9, /К). Остается доказать только, что лента У/С имеет требуемую длину. Мы уже установили, что т — К к — г. Длина ^ не пре- превосходит п — к 4- г. Следовательно, длина *//С не больше чем п — к-\- г -\- 2ц I. Из неравенства т — I < к — г следует, что п — ^ + г< п — га + I. Поэтому длина Л( не больше чем 2* г. п—к-\-г Итак, предположение о том, что сделанное заключение верно при к — г < р, влечет его верность для к — г = р. Согласно прин- принципу математической индукции, лемма доказана. Верхняя граница для однородного эксперимента указывает путь к основной цели этого раздела. Теорема 1. Пусть п и к — целые числа, такие, что Г< < к^п. Для каждой отличимой машины 8 с п состояниями и для каждого множества Л, состоящего из к состояний машины 5, пусть еC, А) обозначает длину минимального эксперимента для Л, а г/E, А) обозначает длину минимального однородного эксперимента для А. Тогдах) шах { е E, А) \ по всем 5, А } = - тах { и E, А) \ по всем 5, А } = Bп — к)(к— 1) /2. Доказательство. Достаточно доказать сначала, что тах [и E, А) | по всем 5, А] <Bя — к) (к— 1) /2, а затем, что {2п-к)(к-\) < В дальнейшем мы для краткости будем также пользоваться записью тах {еC,А)} и тах {иC,А)}. —Прим. перев. 3. А 5, А
Верхние границы длин минимальных экспериментов 17 Чтобы доказать первое неравенство, применим лемму 4 при г= = 1. Итак, для машины 8 с п состояниями и множества А из к состояний машины 5 существует лента ^ длины, не большей, п—\ чем Ъ / = Bлг — к)(к — 1)/2, такая, что для любых двух /х-А+1 состояний р и д из Л, если Щ, У) = Цр, У), то о (/?, У) = = о (<7, У). {У} является поэтому однородным экспериментом для А длины, не большей, чем Bп— к)(к—1)/2. Итак, доказано, что шах [и E, А) | по всем 5, А ) < Bп— к)(к—1)/2. Для доказа- доказательства неравенства Bп — к)(к— 1)/2<тах {е(8, А)\ по всем 5, А рассмотрим некоторую машину 5, которую определим так х). Множеством состояний 5 является { д1 |1<О'<^#), множест- множеством входов — {I111 <^ I ^ п — 1 } и множеством выходов — { 0,1 }. о и X определены для 5 так: о (дг., /л-1) = ць для всех г\ ^ (?/» /у) = Ц-1 Для всех (*"» /)» таких, что 1^/ или /</ — 2; В (<7,, //) = ?|-+1 при О (^-, /'-2) = 9/-1 ПРИ х (Чп* /л) "-= !; х (<7/» /у) = ° Для всех (*> /) =^= (л, /г — 1). Например, если п = 5, то 5 имеет следующую таблицу пе- переходов и выходов: /1 /2 /3 /4 Х, О <71> О <7Х, О ^, О » 0 ^2» 0 ^2» 0 ^2, О > 0 <74, 0 ^з» ° ^з> ° , 0 <78, 0 ^5, 0 ^4, О , 0 9б» 0 04, 0 Пусть Л = {<7;. | 1 <^*'^Л }. Покажем теперь, что для всякой ленты ^ длины, меньшей, чем Bп — к)(к—1)/2, существует со- состояние р в Ау р=1=д1У такое, что X (р, У) = Х (^х, /) и о (/?, У) =^= =^=о (<7Х, У). Заметим сначала, что A) для любых двух различных состояний ць и ^/ машины 5 и любой ленты ^ имеет место § (<^, ^)=Н^ (?у, «/). Это немедленно следует из того факта, что каждый вход пе- переставляет состояния в 5. Машина Т из [6] является по существу «муровским» вариантом маши- машины 5, определенной выше. Доказательство в [6] отличается от приведенного здесь, но с небольшими изменениями может быть проведено в расоматривае- мом нами случае. 3 Заказ № 563
18 Т. Хиббард Далее, определив ^0 как пустую ленту и положив о (р, ^0) = = р для каждого р, заметим следующее. B) Пусть ^•—произвольная лента ^ = 1г /2... /^ длины ык Пусть цг^Цх является таким состоянием машины 5, что Ч^,У)=^ 4= к (^1» ^)- Тогда для каждого целого /, г <^ / <1 п, существует целое т (*\ /), 1 < т (/, /) < ад, такое, что о (^, ^т{^^)-\) = ^^ и /т(/,у) — /'-1. Другими словами, машина не может дать на выходе 1, не при- приходя в состояние дп, а для того чтобы привести машину из со- состояния дь в состояние дп, требуется провести ее через весь ряд состояний д1+1, ..., ^/2_1; кроме того, для перехода от <7/ к д;+1 необходим вход Р. Теперь пусть ^ = /х /2... /^ — лента длины ад, такая, что для каждого состояния рфд1в А мы имеем л (р, /)=^=Х (^х, У). Для каждой пары (/, /) из множества определим т (I, /), как в B). Все т (I, ]) оказываются различными. В самом деле, допус- допустим, что т (I, /) = т (§, к) = г. Тогда /, = V'1 и /, = Iй'1. По- Поэтому к =}. Также имеем о (^., ^^_1) = д. я о (^, ^^_1) = дн. От- Отсюда ввиду A) <?, = ^ ; т. е. I = §*. Таким образом, если т {I, /) = = т (§, к), то (/, ])= (§, к). Следовательно, т (/, /) однозначно определяет пару (/, /). Число пар (/, у) равно п /=2 /=/ /=2 Отсюда следует, что множество {ш (г, /)| содержит Bп — к)(к — 1J элел^ентов. Так как т (/, /)-^^ Для каждой пары (г, у), то ад>Bп — к)(к— 1)/2. Следовательно, для каждой ленты У длины, меньшей, чем Bп — к) (к — 1);2, существует по крайней мере одно состояние р из Л, р^Я\у такое, что а (р, </) = >(<71, У). Согласно A), В (р, */)=/=() (^ц У). Поэтому если 1^(р)\р(^А) —эксперимент для Л, то длина У (^) не меньше чем Bп — к)(к—1)/2. Отсюда следует, что Bп — к)(к— 1)/2<тах{ е E, А) \ по всем 5, Л}, что и требовалось доказать. Отметим, что можно высказать более сильное утверждение о машине 5, чем то, которое приведено в доказательстве теоремы 1. А именно: всякое множество лент, удовлетворяющих условию A) определения эксперимента для А (разд. 1), должно содер- содержать ленту длины, не меньшей, чем Bп—Ь)(к—1)/2, независимо
Верхние границы длин минимальных экспериментов 19 от того, выполняются ли условия (п) или A11). Пусть машина Т образована добавлением к 5 входа /, такого, что о (дъ I) = ^Цъ 8(?2» /) = Яъ Ч<7/> 1) = Ян Для каждого *'> 2 и л (^, /) = 0 для всех I 1). Читатель при желании может убедиться в следующем. Ма- Машина Т служит контрпримером вместо машины 5 в доказатель- доказательстве теоремы 1, но только при условии, что учитываются свой- свойства (п) и (ш) в определении эксперимента. III. Автоматы Мура Обсуждение в этом разделе будет проводиться параллельно предыдущему разделу и будет ограничено случаем автоматов Мура. Лемма 5 и теорема 2 отвечают соответственно лемме 4 и теореме 1. Лемма 5. Пусть 8 — отличимый автомат Мура с п состо- состояниями, [Аь 11 < I < г) — семейство из г > 1 непустых попарно непересекающихся множеств состояний машины 8 и у А1 содер- жит к состояний, где к > г. Существует лента 1 длины не п—\ более чем 2и I — (к — г — 1) со следующим свойством. Для п—к+г любых двух различных состояний, принадлежащих одному и тому же Аь, если \(р, У) = Х(</, У), то о (/?, У) = 8 (д, У). Доказательство. Согласно лемме 2, существует лента У длины гю < п — к + г> такая, что по меньшей мере одно из; множеств Аь содержит два состояния р и д, для которых л (р, У) =/= X (д, У). Для каждого целого /, 1 < г < г, и каждой последовательности выходов Ь положим В {I, I) = [Ь (р, ^)\р$ 4, А (р, У) = Ц . Пусть # = {(*", Ь) | В (I, Ь) — непусто}. Доказательство здесь весьма сходно с доказательством лем- леммы 4; снова проводится индукция по числу к — г. При к — г = = 1 действуем так же, как в лемме 4. Рассмотрим целое число р > 1, такое, что заключение верно при к — г < р. Сначала разберем тот случай, когда каждое из множеств В (I, Ц содержит не больше чем один элемент. Пусть Р и ц принадлежат некоторому множеству А1 и X (р, У) = = X (д, У). Множество В (I, X (р,У)) содержит не больше одного элемента, откуда следует, что В (р, У^) = В (^, У^). Следова- Следовательно, лента У обладает требуемым свойством. 2) Машина Т из [6] есть в точности «муровский» вариант определяемой здесь машины Т. 3*
.20 Т. Хиббард Предположим теперь, что по крайней мере одно из множеств В (I, Ь) содержит больше одного элемента. Пусть Р — семей- семейство множеств, Р = [ВA, Ь) |(г, Ь) ^/?}. Здесь можно приме- применить рассуждение из леммы 4, чтобы доказать, что индуктивное предположение верно для Н(Р). Мы покажем, что это дает лен- ленту /С, такую, что ^и^_^ К обладает требуемым свойством. Пусть Н(Р) содержит в точности I множеств. Пусть [} О содержит ровно т элементов. Заметим, что I Индуктивное предположение утверждает, что найдется лента /г-1 длины не более I ^ и — (т — I — 1) со следующим свойством: если X (р, К) = X (д, /(), то о (р, К) = о (<7, /(), где р и д оба принадлежат некоторому множеству С из И(Р). Теперь предположим, что р и д — два состояния, принадле- принадлежащие одному и тому же множеству А1 и X (р^^^ К) = X (д, У^^ К). Тогда Х(р, ^X^^-1К^) = X (д, Уо/_1 /Сх). Поскольку 5 — машина Мура, X (р, У) = X (д, У). Поэтому о (/?, ^x^^)_1) и 6 (д, ^и)_1) при- принадлежат ВA, X (р, У)). В Н(Р) найдется некоторое множе- множество С, такое, что В (г, X (/?, У)) с С. Отсюда ввиду равенства '* [8 Шп-г), К] - X [В (р, ^1Й^.^), К] мы имеем В [5 (р, У^), К] = = 8 [8 (^7, У^), /С]. Поэтому В (р, ^т_1 К) = В (?, У^ /С). Осталось только доказать, что длина ленты У.^ К имеет требуемую верхнюю границу. Как и в доказательстве леммы 4, можно показать, что к — г > т — /. Так как хю < п — к то для длины и ленты ^и)_1 К имеем 12)- /1-1 (л — * 4- г— 1) + И *"—(т —/—1) = п—т-\-( п — к +г + I] A — 1) л— Требуемая верхняя граница V равна л—1 л-1 V = I] I — (* — г — 1) = 1 + И (I — 1). л—^+г /г— Так как ^ — г > т — I, то
Верхние границы длин минимальных экспериментов 2Т п—\ и < 1 + (п — к + г— 1) + И (*— 1)< п—т-\-г п—\ (I — 1) = V. п—к+г Это значит, что длина и ленты ^V)_1 К не больше, чем требуемая верхняя граница V, Итак, индукция закончена и заключение леммы справедливо для к — г > О, что и требовалось доказать^ Теорема 2. Пусть п и к — целые числа, такие, что 1 < к < п. Для каждой отличимой машины Мура 8 с п состо- состояниями и для каждого множества Ау содержащего к состояний машины 5, пусть е E,А) обозначает длину минимального эксперимента для А, а иC,А) обозначает длину минимального однородного эксперимента для А. Тогда тах \е E, А)} - тах {и E, А)} = &п-к)(к-\) (к — 2).. 3, А 8, А 2 Доказательство1). Доказательство аналогично данному в теореме 1. Применяя лемму 5 при г= 1, устанавливаем, что< тах {и E, А)} < {2п ~ к){к ~ 1) —(к —2). 5, А 2 Остается лишь доказать, что Bп-к)(к~\) (к —2) < тах {е E, А)} . 2 5, А Определим машину Т с множеством состояний {</,. | 1 < / < п)г множеством входов [11\ 1 < г < я— 2} и множеством выходов |0, 1} 2). Функция переходов о совпадает с функцией переходов о из теоремы 1. Другими словами, о (</., V) = д. для всех пар (/, /), таких, что I < у или / < I - 2; о (^, /«-1) = д1+1 для 2 < I < п — 1; ? (Яп /Ь2) = ^-1 для 3 < * < л; )ч (дп, I) ■= 1 для любого входа /; л (д,у I) = 0 для каждого входа / и каждого г < п. Например, при п = 5 таблица переходов и выходов для Т имеет следующий вид: 2) Равенство тах {еC ,А)} — Bп — к)(к — 1)/2— (^ — 2) доказано в [6]. 5, а 2) Машина Т по .существу такая же, как машина Т из [6]. Разница только в том, что здесь нет входа, присоединяющего дг к д2.
22 Т. Хиббард / /2 /3 , О О О % О , О 5> 0 и Чь Очевидно, машина Г является машиной Мура. Пусть А — {^1 1 <; [ <^ к). Докажем, что для каждой ленты ^ длины, меньшей, чем Bл — к) (к — 1)/2 — (& — 2), найдется со- состояние р из А, р ф <7и такое, что л (р, У) = л (^, У). Сначала заметим следующее. A) Для любых двух различных состояний ць и <7;. машины Г произвольной ленты / 8 (^, Л) ф § (Чр •/) • B) Пусть лента У = /х- • -/^ имеет длину до, и пусть / — це- число, 1 < I < п, такое, что X G/, У) 4= ^ (?1> ^)- Тогда для каждого целого /, I < / ^ п, найдется целое число т (/, /) < до, такое, что /т(/, у) = I'-* и В (^, ]щи п) = ^. Утверждение A) совпадает с утверждением A) в доказатель- доказательстве теоремы 1, и его истинность устанавливается так же. B) несколько отличается от B) в доказательстве теоремы 1. Опять-таки для появления на выходе значения 1 машина долж- должна быть в состоянии ^, чтобы прийти в состояние дп из со- состояния ць машина должна пройти через весь ряд состояний <7/+1, . . . , дп_1У а для перехода от ^;_г к д;- необходимо подать на вход V'2. Однако если машина однажды пришла в состояние цп, то любой вход будет давать на выходе 1. Возьмем теперь ленту / = 1\1ъ' - '1%» длины до, такую, что л (^, /) ={= ). (<7Х, /) для 2 <^ I ^ к. Согласно B), для каждой па- пары (/, /) в множестве {(I, /) | 2 существует целое число т (/, /) < до, такое, что и Подобно тому как это было сделано в теореме 1, можно дока- доказать, что разным парам (/, /) соответствуют разные т (/, /); т (^ I) < 1<и Для каждой пары (/, /), поэтому до—1 не меньше числа элементов в множестве {(/, /)|2 ^ / <^ к\ I < / Поэтому ДО>1 (к — 2)
Верхние границы длин минимальных экспериментов 23 Как и в теореме 1, можно доказать, что коль скоро {^ (р)\р(^А} является экспериментом для Л, то длина ^ (д^ не меньше чем Bп — к)(к — 1)/2 — (к — 2). Следовательно, это число не пре- превосходит шах [е E, Л)}, что и требовалось доказать. 5, А ЛИТЕРАТУРА 1. Мо о г е Е. Р., Оеёапкеп ехрептегйз оп зециепиа1 тасЫпез, Аик>та1а ЗШсПез, Апп. о! МаШ. ЗШсНез A956), 129—153. (Русский перевод: М у р Э. Ф., Умозрительные эксперименты с последовательностными машинами, сб. «Автоматы», ИЛ, М., 1956, 179—212.) 2. О 1 п з Ь и г % 5., Оп Ше 1еп^Ш о! 1пе зтаПез! ипПогт ехрег1теп1 ^ЫсЬ (Изип^и1з11е5 Ше 1егтта1 51а1ез о! а тасЫпе, /. АСМ, 5, №3 A958),266— 280. (Русский перевод: Гинзбург С, О длине кратчайшего однород- однородного эксперимента, «Кибернетический сборник», вып. 3, ИЛ, М., 1961, 167—188.) 3. О 1 п з Ь и г % 5., Оп 1пе ге^исИоп о! зирегНиоиз 51а1ез ш а $ециепиа1 тасЫпе, ]. АСМ, 6 A959), 260. 4. Н и II т а п V. А., Тпе 5уп1пе515 о! 5ециегШа1 5\У11сЫп^ с1гсиИ5, /. Ргапк- Ип 1юг., 257 A954), 161 — 190, 275—303. 5. М е а 1 у О. Н., А гпеШос! 1ог 5упШе5121п^ зециепиа1 с1гсиИ5, Ве11 $уз1ет ТесНШса1 /., 34 A955), 1045—1079. 6. К а р а ц у б а А, А., Решение одной проблемы теории конечных автома- автоматов, УМН, 15 A960), 157—159.
РАЗРЕШИМОСТЬ МАШИННЫХ ОТОБРАЖЕНИЙ РЕГУЛЯРНЫХ МНОЖЕСТВ В РЕГУЛЯРНЫЕ МНОЖЕСТВА1) С. Гинзбург, Т. Н. Хиббард Показывается, что для произвольных регулярных множеств V и V ре- рекурсивно разрешима каждая из следующих трех задач. A) Существует ли полная последовательностная машина, отображающая (/в Р B) Существует ли обобщенная последовательностная машина, отображающая 0 в V так, что образ V бесконечен, если V бесконечно? C) Существует ли полная последо- последовательностная машина, отображающая Ц на V? Введение В работе [1] отмечалось, что синтаксические множества, оп- определенные нормальной формой Бэкуса, т. е. так называемые языки типа АЛГОЛ, совпадают с контекстно-свободными языка- ми (сокращенно КСЯ). В работе [2] было показано, что если 5— обобщенная последовательностная машина (сокращенно о.п.м.)— часто употребляемая модель вычислительной машины—и если Ь является КСЯ, то 8(Ь)—множество слов, появляющихся на вы- выходе 5 при подаче на вход слов из /,,—также представляет собой КСЯ. В связи с этим возникли вопросы о том, всегда ли для произвольных КСЯ ^и Ь2 существует о.п.м., отображающая Ьг на Ь2, или же о.п.м., нетривиально отображающая Ьг в 12. Ясно, что эти вопросы имеют отношение к машинному переводу для искусственных языков. Как было указано в работе [3], такие о.п.м. не всегда существуют. В работе [3] показано, что для произвольных КСЯ V и V каждая из следующих задач рекур- рекурсивно неразрешима (не существует алгоритма, всегда дающего правильный ответ). 1) Существует ли полная последовательностная машина, ото- отображающая Ц в V? 2) Существует ли о.п.м., отображающая V в V так, что об- образ Ь бесконечен, если V бесконечно? 3) Существует ли полная последовательностная машина, отображающая V на V? 4) Существует ли о.п.м., отображающая V на V? (Из этих четырех задач применительно к проблеме машинного перевода, вероятно, наиболее значительна B).) Применительно к 1)О1ПзЬигб 5., ШЪЪагс! Т. Ы., 5о1уаЫП1у о? МасЫпе^ Маррш^э о! Ке&и1аг 5е1з 1о Ке&и1аг 5е1з, /. АззоыаИоп !ог СотриНп§ МаШпегу, 11, № 3 A964), 302—312.
Разрешимость машинных отображений 25 обработке данных желательно, чтобы поставленные задачи были рекурсивно разрешимы. Отсюда мы приходим к поиску важных подклассов КСЯ, для которых задачи A)—D) разрешимы. Если какой-нибудь такой подкласс окажется достаточно широким для других задач обработки данных, то можно ограничить синтакси- синтаксические множества, возникающие из нормальной формы Бэкуса, множествами этого подкласса. Другими словами, подобного рода исследования могли бы указать требования, которым должны удовлетворять составляющие множества, используемые в языках программирования. К числу наиболее известных подклассов КСЯ принадлежат регулярные множества, иногда называемые языками с конечным числом состояний. Эти множества играют весьма важную роль в развитии и понимании КСЯ. Действительно, если бы регуляр- регулярные множества не возникли еще в теории автоматов, то нам, вероятно, пришлось бы их придумать для изучения КСЯ. В этой статье рассматриваются задачи A)—D) для семейства всех регу- регулярных множеств. Это делается по трем причинам: A) регуляр- регулярные множества имеют большое значение в теории КСЯ; (п)о.п.м. сохраняют регулярные множества (так же, как и КСЯI), т. е. если 5—о.п.м. и Ь регулярно, то 8(Ь) регулярно [2]; (ш) гипо- гипотеза глубины Ингве [6, 7] — одна из существующих лингвисти- лингвистических теорий для английского и некоторых других естествен- естественных языков—утверждает, что с некоторой точки зрения естествен- естественные языки являются регулярными множествами. (Вследствие (Ш) рассматриваемые вопросы имеют отношение также к машинному переводу для естественных языков.) Полученные результаты заключаются в том, что для регулярных множеств задачи A)— 3) рекурсивно разрешимы. Вопрос о разрешимости для регуляр- регулярных множеств задачи D) все еще остается открытым. I. Предварительные замечания Напомним вкратце используемые понятия и терминологию. Автомат—это пятерка (/С, 2, 5, р19 Р), где A) К—конечное непустое множество (множество «состояний»), (и) 2 — конечное непустое множество (множество «входов»), A11) В — отображение КХТ, в К (функция «переходов состояний»), (IV) рг — элемент множества К («начальное» состояние) и (у) Р— подмножество множества К (множество «заключительных» состояний). Для данного непустого множества X словом, или X-словом, *) С эстетической и теоретической точек зрения желательно, чтобы вся- всякое семейство языков программирования сохранялось машинами. 2 Заказ № 563
26 С. Гинзбург, Т. Хиббард называется конечная последовательность /1---//г элементов X, Пустое слово {к = 0) обозначается через Л. Если / = /1.../Л и ^ = ^1^^^^^ — слова, то Ц определяется как слово 1г- • -1к У2- • -Уг. Множество всех Х-слов обозначается через 0(Х). Множество всех Х-слов длины не более к обозначается через &к(Х). Для автомата (/С, 2, о, ръ Р) отображение о распространяется на /(Х0B) следующим образом. Для каждого состояния р по- положим о (р, А) = р. Для каждого 2-слова 1г- • -1к+1 определяется индуктивно о(р, 1г. • -1к+1) как 8[8(р, 1г- • -1к), 1к+1]. Легко видеть, что для любых слов / и Множество слов I) называется регулярным или ^-регулярным, если существует автомат А — (/С, 2, о, ръ р), такой, что Обобщенная последовательностная машина (о.п.м.) — это ше- шестерка (/С, X), А, о, X, рг), в которой A) К — конечное непустое множество («состояний»), (и) 2 — конечное непустое множество («входов»), A11) А — конечное непустое множество («выходов»), (IV) о—отображение Кх 2 в К (функция «переходов состояний»), (у) X — отображение /Сх2 в в (А) («выходная» функция) и (VI) рг—элемент множества К («начальное» состояние). Отображение о распространяется на /СхвB) так же, как для автомата. Отображение л распространяется на /Схв(И) следующим об- образом. X (р, А) полагается равным А. Для каждого 2-слова ^ы определяется индуктивно X (р, /1- • -/л+1) как Легко видеть, чго для любых 2-слов I ^л Пусть о — функция переходов состояний в автомате или в о.п.м., и пусть рх — начальное состояние. Для каждого 2-слова ^ через о (У) обозначается о(р1У У). Полная последовательностная машина (п.п.м.)—это о.п.м., у которой X отображает К X 2 в А. Пусть 5 = (/(, 2, А, о, X, рг) — о.п.м. или п.п.м. Отображение, о котором говорилось при формулировке задач A)—D), пред- представляет собой преобразование 0B) в 0 (А), определенное для всякого 2-слова У соотношением 5 (У) = Х(р1? У). Это отображе- отображение называется машинным отображением посредством 5.
Разрешимость машинных отображений 27 Если и—некоторое множество Е-слов, а 5—о.п.м. или п.п.м., то пусть 5F/)- {5 (У) :У^<У)- Обобщенное (полное) последовательноспгное отображение — это функция (х (для случая полного отображения сохраняющая дли- длину), отображающая 9 B) в в (А) и такая, что A) [л(Л) = Л и (п) для каждого 2-слова УМ мы имеем [л (УМ) = [л (У) Е для некоторого А-слова Е. (Это слово Е записывается как ^^^^^(М).) Легко видеть, что функция [x^^ отображающая 9 B) в 9 (А) и определенная равенством \*3{М) = Е, где [л(УМ) = [х(У) Е, яв- является обобщенным (полным) последовательностным отображе- отображением, если ;л— обобщенное (соответственно полное) последова- тельностное отображение. Если 5 — о.п.м. (п.п.м.), то машинное отображение посред- посредством 5 является обобщенным (соответственно полным) после- последовательностным отображением. Для понимания всех деталей подробных доказательств, которые будут приведены ниже, читателю может оказаться по- полезным рассматривать последовательностное отображение как дерево, узлы которого соответствуют входным словам (в 9 B)) и каждой ветви которого приписано некоторое выходное слово в 9 (А)). Если это дерево имеет лишь конечное число поддеревьев (т. е. множество отображений \x^ конечно), то данное отображе- отображение может быть реализовано машиной. Каждая из трех рассмат- рассматриваемых далее разрешающих процедур зависит от способности сохранить определенные свойства, присущие заданному последо- вательностному отображению, в некотором машинном отображении: (даже несмотря на то что это последовательностное отображе- отображение может не быть реализуемым машиной). Указанное машин- машинное отображение получается путем ряда измене? ий в последо- вательностном отображеьии. Каждое измене?ие состоит в заме- замещении одного поддерева другим. Серия изменений в конце концов дает дерево лишь с конечным числом поддеревьев. 2. Теоремы разрешимости Пусть V и V — фиксированные множества, соответственно ^■регулярное и А-регулярное. Пусть А=(КА, 2, о^,^,^) и В == (Кв , А, ов, ^, Рв) — автоматы, такие, что Ц = (X ; оА(Х) ^ Р[ и V = |К: ов(У) ^Рв] . Пусть т и п — число состояний в Л и В соответственно. Докажем сначала разрешимость задачи 1. Если [л — последовательностное отображение, то каждому ^-слову У, следовательно, каждому узлу соответствующего 2*
28 С. Гинзбург, Т. Хиббард дерева, соответствуют два состояния ол (р19 У) и Б Пусть двум узлам соответствует одна и та же пара состоя- состояний. Отображение [х', полученное заменой поддерева, начинаю- начинающегося в одном из этих узлов, поддеревом, начинающимся в другой, обладает тем свойством, что [х'(^/)с:1/, если [хF;)с^1/. Если сделать достаточнее количество таких замен одних подде- поддеревьев другими, то получится дерево с не более чем тп под- поддеревьями (по одному для каждой возможной пары состояний). Это дерево является отображением, которое может быть реали- реализовано машиной (называемой производной машиной), имеющей не более чем тп состояний, и которое отображает V в V. Ниже излагается формализация этого рассуждения. Определение. Пусть [х— обобщенное последовательност- ное отображение 0(Е) в в (А). Пусть К3 — множество всех тех пар (р, д),р^/(л, Ц^.КВ> для КОТОРЫХ существует Е-слово ^^ такое, что %Л(Л) = р и &в[[*•(./)] = ц. Для каждой пары (/?, ц) из К3 пусть Ь(р, ц) — какое-либо И-слово, такое, что ол[Ь (/?, ^)] — р и 8в[[x(^(^?, ^))] = ^. Для каждой пары (р,ц) из К3 и каждой буквы / из Е A) ПуСТЬ ^ (п) пусть 55 [(р, </),/] = [ЬА(р, /), Ъв(д, Н(л д) (/))]. А(р, /), Ъв(д, Н(л д) Будем говорить, что каждая такая • машина 5 — =. (/E , И, Д, 55 , Х5, (р1у дг)\ — производная от [х. По построению каждая производная машина имеет не более тп состояний. Для всякого обобщенного последовательностного отображе- отображения [х существует по крайней мере одна машина, производная от [х. ч Лемма 1. Пусть [х — обобщенное последовательностное ото- отображение 0 (Е) в 0 (А), и пусть 8 — о.п.м., производная от [х. Тогда для каждого Ь-слова У выполняется равенство ^ Доказательство. Предположим, что Л = А. Тогда Ы0 = (Р1. ?1). 8^(^) = Р1 и 8вE(У)) - 5б (А) = цх. Допустим, что лемма верна для всех Ц-слов длины не больше к. Пусть Л представляет собой 2-слово длины й+1, причем /^Е. Пусть 85(У) = (р, ^). По индуктивному предположению ЬА (Л) = р и ов E (/)) = ц\ тогда
Разрешимость машинных отображений 29 , Л, Ъв [Ьв [5 (У)], Х5((р, </), /)]) = Таким образом, предположение верно и для к-\-1. Лемма до- доказана. Лемма 2. Пусть [х — обобщенное последовательностное отображение 0 (Е) <з в (А), такое, что [х((У)с:у, и пусть 8— о. п. м., производная от и. Тогда 5 ((У) с= I/. Доказательство. Пусть У — произвольное слово в б7, и пусть 85(У) = (р, д); тогда р = &л («/) с ^л • По определению оЛ[Ь(р, <7)] = р и оБ[[хA(р, ^))] = ^, откуда 1(р, <7)^(/. По- Поскольку [х (G) с= 1/, то [х[/,(р, д)] с= 1/. Таким образом, По лемме 1 оБ [5 (У)] = д. Следовательно, 5 (У) ^ Лемма 3. Пусть И? = (/С, 1^, А1? 8^, Х^, гх) — о. п. м. (п. п. м.), такая, что ^(Ц)^У. Тогда существует о. п. м. (п. п. м.) 8 = (/С, Е, А, 85, Х5, г^, такая, что 8(Ц) = №(С1). Доказательство. Для каждого состояния ^^/С и каж- каждого элемента /(|Е пусть Х5(^, /) = Х^ (^, /), если Х^(</, /) оп- определено и является А-словом, а в противном случае пусть Х$(</, /) — произвольный элемент из А. Тогда, как легко видеть, 5 удовлетворяет утверждению леммы. В силу леммы 3 мы можем при рассмотрении машин 5, для которых 5 (Ц) с: V, предположить, что 5 = (/С, 2, А, о, X, гг). Теорема 1. Можно рекурсивно распознать, существует ли п. п. м. 8, такая, что Доказательство. Пусть существует п. п. м. И? = (/С, Е, А, 8, X, гг), такая, что й?((У)с:У, и пусть р. — машинное отоб- отображение посредством И?. Поскольку И? представляет собой п. п. м., [х—полное последовательнсстнсе отображение. Пусть 5 — произвольная п. п. м., производная от [х. Машина 5 имеет не более чем тп состояний. В силу леммы 2 5 (^7) с: V. Та- Таким образом, п. п. м. 1^, такая, что Й7 (Ц) с: V, существует тогда и только тогда, когда существует п. п. м. 5 = (/С, Ц, А, ^, X, г2), имеющая не более чем тп состояний, для которой с2У. Существует лишь конечное число п. п. м. 8 = (К, 2, X, г^, имеющих не более чем тп состояний. Для каждой из них найдем 8A1), что можно сделать эффективно [2]. В ка-
30 С. Гинзбург, Т. Хиббард ждем случае можно распознать [5], имеет ли место включение 5F')сК. Теорема доказана. Рассмотрим теперь тот же вопрос для о. п. м. Можно рас- распознать [5], пусто ли V. Если V пусто, то о. п. м., отображаю- отображающая и в V, существует тогда и только тогда, когда V пусто. Сели V содержит А, то о. п. м., отображающая V в 1/, суще- существует в том и только том случае, когда А ^ V (в:е отображается га А). Это свойство распознаваемо. Предположим, что А $ V и V непусто. Зафиксируем любое слово ы)(^У. Пусть 5 = (К, Ц, А, о, X, гг), где К={г19 г2}, Ъ(г19 /) = о (г2, /) = г2, а (г^ /) = гю и л(г2, /) = А для каждой буквы /^2- Тогда 5 есть о. п. м., для которой 5 (О) ^ V. Однако это тривиальное решение задачи. Чтобы исключить тривиальность, рассмотрим следующую видо- видоизмененную задачу: «Можно ли рекурсивно распознать, существу- существует ли о. п. м. 5, такая, что 5A]) с= V и 3@) бесконечно, если V бесконечно?» Как и для первой задачи, мы покажем, что если такая ма- машина существует, то ее можно найти в некотором конечном множестве машин. Сначала вычисляется верхняя граница для длины выходных слов. Затем мы показываем, как для заданного последовательностного отображения р. можно построить произ- производную машину (как ранее) и при этом выбрать в [х (Ц) под- поддерево с бесконечным числом выходных слов. Получаемая в ре- результате машина, таким образом, порождает бесконечный образ множества V. Лемма 4. Если существует о.п.м.З, для которой 3 (и) ^ и 3 ((У) бесконечно, то существует о. п. м. 1^, такая, что ()() бесконечно] (ш) для каждого состояния г и каждого входа I длина слова )\у(г, I) не превосходит пп. Доказательство. Предположим, что 5 = (Кз, X, А, о5, Л5» >Ч) не удовлетворяет утверждению леммы. Для доказатель- доказательства леммы достаточно уметь строить о. п. м. №7 = (Кз, И> А, ^5, ^, Г\), удовлетворяющую условиям A) и (и), а также сле- следующему дополнительному условию: (IV) существует пара (^ 1)^Кз X 2, такая, что (а) лг = л5 всюду, кроме (г, /); C) л5 (г, 1) = Ех - - - Еа — слово длины а > пп и /^ (г, /) — слово длины < а. Действительно, если мы построим такую о. п. м. Ц^, то поз- торными применениями A), (и) и (IV) каждое выходное слово
Разрешимость машинных отображений 31 длины, большей, чем пп, в конце концов переводится в выход- выходное слово длины, ке превосходящей пп. По предположению 5 удовлетворяет A) и (и). Итак, 5 не удовлетворяет условию (ш). Тогда существует пара (гу1)^Кз X Е, такая, что Х5(г, /) = Ех • • • Еа и а > пп. Пусть д1У . . . , цп все п состояний автомата В. Для каждого значения /, 1 < /< а, пусть х.— кортеж из п состояний <>в (^1, Е1 - - - Е), . . . , ов (^у, Ег • • • Е(), . . . , ов (дп, Е1 • • • Е() > . Поскольку а^>пп и существует самое большее пп различных кортежей такого вида, то найдутся такие числа и и у, 1 < и < < V < а, что 1и = х^. Положим % (^» /) = ^1 * * * ЕиЕу+1 - - - Еа , а в остальных случаях пусть Х\^ ~ ^5 • Тогда >\^(г, I) =/= А и оБ (х, ^ • • • Еа) = Ъв {х, Е1 • • • Еи Еу+1 • • • Еа) для каждого состояния х автомата В. Ясно, что \(/ удовлетворяет условиям A), A1) и (IV). Лемма 5. Если УР — о. п. м., такая, что №' (I/) сК и И7 ((У) бесконечно, то существует о. п. м. 5, имеющая не более чем тп состояний и такая, что 3 (Ц) Я^У и 8 (Ц) бесконечно. Доказательство. В силу леммы 3 мы можем предпо- предположить, что № = (Кш , Е, А, о^, /,^, гг). Пусть ^ — машинное отоб- отображение посредством И?'. Пусть / — кратчайшее 2-слово, для ко- которого существует начальное подслово ^1 (слова У), удовлетво- удовлетворяющее следующим четырем условиям: (О 8л (^О = ^д (У), A1) 8в(^ (А)) =3^(^G)), A11) и(А)^(</), (IV) существует Е-слово I ^= А, такое, что Л.(^и. Убедимся, что 1 существует. Пусть § — длина самого длин- длинного слова в множестве {Х^ {г, I): г ^ К\р , / ^ 2) • Поскольку бесконечно, в (/ существует Ц-слово 1Х - • • 1Р такое, что * * I*) имеет длину, большую, чем (тп -{- I) §. Поэтому существуют по крайней мере тп + 1 чисел ьу таких, что \Х1 ...1.0м) ^ А. Поскольку существует самое большое тп раз- различных пар [йд A\ - - -15), ьв(\х[11 • • • /5])], то среди этих чисел найдутся два числа I и /, I < /, такие, что ЬА Aг • • • /.) = / и ^вОЧЛ • • • //]) = оБ(!х[/1 . . . /у.]). Так как то ^(Л ' * * 1д=^\1A1 ' ' ' ';)• Кроме того, 11^1!. Таким образом, / существует. Из свойства мини- минимальности ^ следует утверждение: A) Если /2 и ^3 — собственные начальные подслова . слова/, причем оА^2) = оА^3) и 5В (а (/2)) = 5В (<х ТО ;х (/2) = {ь (У3).
32 С. Гинзбург, Т. Хиббард Определим теперь Ц-слова Ь (р, д) для некоторых пар (р, д) состояний р автомата Аид автомата В. Пусть даны р^КА и д ^ Кв • Если существует собственное начальное подслово /, сло- слова У, такое, что оА (Ц = р и Ьв (ц (I)) = д, то пусть /, (р, д) длиннейшее из таких собственных начальных подслов слова У. Одной из таких пар (р, д) является [оА (У), оя(ц [/])]. Если на- начального собственного подслова указанного вида в У не суще- существует, но существует Х-слово Ь, такое, что ьА(Ц == р и ЬВ([1(Ь)) = = д, то пусть /,(р, д) = Ь. В остальных случаях пусть /,(р, #) не определено. Пусть 5 — та о. п. м., производная от ц, кото- которая получается при выборе данных слов Ь (р, д) (см. определение производной о. п. м.). По лемме 2 5(^7) с= V. Для доказательства леммы 5 нужно показать только, что 5 (II) бесконечно. Пусть ол (У) = ро и 8в ([х (/)) = до . Сначала покажем следу- следующее. Для каждой пары (/?, д), для которой Ь (р, ^) является начальным подсловом слова У, существует Е-слово УИ, такое, что B) 8 C) ^ (У) = [1 до), , М) самое длинное на- на/. = /, (р, д) при Предположим противное. Пусть чальное подслово слова У, такое, что некоторой паре (р, д), которая не удовлетворяет хотя бы одному из условий B) и C). В силу A) и (п) У не совпадает ни с од- одним из слов Ь(р, д). Таким образом, /<^&— 1, где к—длина У. Предположим, что / = к— 1. Тогда д), По определению д), 1к1 = Р = (ро, до). отображения л$ выполняется равенства ' Значит, 9) 1х^(р, д)]Ы(ъ я). /*]. Следовательно, пара (р, (?) удовлетворяет B) и C); мы пришли к противоречию. Поэтому I <^к—1. Пусть р' = ЬА (р, //+1) и <7'= 8в № (/2 • • • //+1)]. Тогда 85[(р, д), 11+1] = (р', д') и далее = оА [ЬА (/х • • • /,), //+1] - ол (р, //+1) - р'. По- Поскольку I -{- I <С к, слово I. (р\ д') существует и имеет длину
Разрешимость машинных отображений 33? I-ь существует Ц-слово больше I. В силу максимальности 1\ М\ такое, что D) Ъ8[(р', ,'), М'] = (Ро> Чо), E) {1(У) = ^[Цр/, </')]>* К*', </ Из равенств D) и <Ы(р, д), //+1] = (р', </') вытекает, что Таким образом, (р, д) удовлетворяет B) при М = /Й.1М'. Далее ', Я% М']= в силу E> ', 9'). Л1']= в силу A) по определению Таким образом, (р, ^) удовлетворяет C) при М = 1П1М\ Следо- Следовательно, (р, ^) удовлетворяет B) и C), и мы пришли к противо- противоречию. Таким образом, условия B) и C) верны для всех (р, д),. для которых Ь(р, <7) является начальным подсловом слова ^. Для доказательства леммы рассмотрим слово А. Поскольку А — начальное подслово слова ^^ то /, (р2, ^2) — начальное подслово слова ^. В силу B) существует И-слово М, таксе, что Ъ3(М) = = (ро, ^0). По определению слова ^1 мы имеем 6Л (У^ = ро и ^[[^(/1)] = ^. Таким образом, Ь(ро, ^о) существует. В силу B> и C) существует слово Л/, такое, что и В силу условия A) и того факта, что [* («Л) =^= [*(/), имеем ^( ^Я^И-И. Таким образом, Х5[(р0, ^0), УУ)] ф А. Пусть о), Щ = Е. По определению/ существует слово Ь, та- таксе, что Л^Ь\ Таким образом, ЬА(ро, Ь)^РЛщ Тогда для каж- каждого а имеем > Чо), ^] = {р0, Чо). лемме 1 8л (МЫа) = ро для каждого а. Поскольку ( ^ М1^ (р 0, то Для каждого а имеем ) Для каждого а. Таким образом^
34 С. Гинзбург, Т. Хиббард 5 (ММ-Ц - 5 (М) Х5 [(Ро, Чо)9 №Ц = Так как ЕфА, то { 8(МЫаЦ : а> 1} бесконечно; поэтому (V) бесконечно, что и требовалось доказать. Используя метод доказательства теоремы 1 в сочетании с леммой 4, леммой 5 и тем фактом, что можно рекурсивно рас- распознать, является ли заданное регулярное множество бесконеч- бесконечным [5], легко доказать следующую теорему. Теорема 2. Можно рекурсивно распознать, существует ли о. п. м. 5, такая, что 5(^7)^1/ и 5(^7) бесконечно. Разрешающая процедура для каждой из задач A) и B) была получена путем доказательства того, что нужная машина, если она существует, содержится среди конечного (заранее оценивае- оцениваемого) числа машин. Напротив, для решения задачи C) мы ука- укажем рекурсивную процедуру, выполнение которой в конце кон- концов заканчивается. К сожалению, заранее нельзя сказать, когда этот процесс закончится. Лемма 6. Если существует полное последовательностное отображение [х в (И) в 0 (А), такое, что ^(О) = V, то существует п. п. м. 5, для которой Доказательство. Схема доказательства такова. В задан- заданном последовательностном отображении производится серия из- изменений, сохраняющих то свойство, что V — образ V, и закан- заканчивающихся получением дерева с конечным числом поддеревьев. Типичнее изменение состоит в замене всех поддеревьев, соот- соответствующих заданному выходному слову Е, всеми поддеревь- поддеревьями, соответствующими другому выходному слову Р. Для замены одного поддерева другим необходимо, чтобы обоим поддеревьям соответствовала одна и та же пара состояний. Это условие вместе с требованием использования всех поддеревьев сильно ограни- ограничивает выбор Е и Р. Однако для получения желаемого машин- машинного отображения остается достаточно таких слов. Ниже следует подробное доказательство. Для каждого А-слова Е и каждого состояния р автомата А пусть пь(р) — число элементов множества {/ : ;л(У) —Е> %А (./)=/?}. Для двух А-слов Е и Р будем писать Е <С Р в том и только том случае, когда &в(Е) = &в(Р) и пЕ(р) Сп?(р) для каждого состояния р автомата А. Определим теперь индуктивно Д-слова Еи следующим обра- образом. Пусть /?0 = ;л(в(Е)) и Е1 = А. Пусть
Разрешимость машинных отображений Р1=={Р; существуют слова М и Е, Ег <СЕ, такие, что Р = ЕМ\. Пусть /?! = /?0 — Рх — [Ех\. Предположим, что Е19...,Ек и к уже определены. Если &к непусто, то пусть Ем— любое А-слово минимальной длины, содержащееся в Нк. Если Нк пус- пусто, то Е} для / > к не определено. Пусть Рк+1 = [р : существуют слова М и Е, Ек+1 < Е фЕ1фЕ2^... Ф Ек+1} такие, что Р = ЕМ]. Пусть к Каждое Ек назовем основным словом. Ясно, что все Ек раз- различны и что при ]=/=к из соотношения Еу<;^ следует #</. Предположим, что существует бесконечнее число основных слов. Тогда для некоторого состояния ц существует бесконечно много основных слов Ецц (г>Л, &(/)<&@ при / < /), таких, что &в(Ек(п) = Я- Поставим в соответствие слову Е = Е^п кортеж из гп + 1 членов {пЕ(рл)> . . . , пЕ(рт), к(ь)), где рх,. . . , р/гг —состоя- —состояния автомата А. Пусть (х1 ,... , д:т+1) и (^/1,. . . , ут+1) — два таких кортежа. Поскольку неравенство хг<^у1 \е может выпол- выполняться' для всех ь, данные кортежи не сравнимы (имеется в ви- виду покомпонентнее сравнение). Известно, однако, что таксе множество кортежей должно быть конечным ([4], стр. 168). Из полученного противоречия следует, что существует конечное число основных слов. Заметим, наконец, что всякое начальное подслово основного слова само является основным словом. Этот факт прямо выводится из определения с помощью индукции. Теперь мы можем построить п. п. м. 5 = (/С, I), А, X, 2л), такую, что 5 (О) = V. Для каждого И-слова */, такого, что G основное слово, введем абстрактный символ гу (например, одним из таких символов является гА). Для каждой пары (р9д), такой, что р = ЬА (М) и д = 8в[(л(Л1)|, где М — некоторое Х-слово, введем в рассмотрение множества \ и Ясно, что и (р) и V (д) — регулярные множества. Поскольку |х (О) = у, выполняется соотношение \хм (V (р)) с V (д). В силу леммы 2 существует п. п. м. 5(р, д) с начальным состоянием 5(р, д)у которая отображает V (р) в V (д). Не теряя общности, можно предположить, что все состояния всех 5(р, д) и все 2у попарно различны. Пусть /С состоит из всех г^ и всех состо- состояний всевозможных различных 3(р, д).
36 С. Гинзбург, Т. Хиббард Определим функции &5 и Х5 следующим образом. Для каж- каждого состояния х в каждом 5(р, #) и каждого входа / пусть М*' ^^(р,*)**' 7) и М*> 7) = Ь <,,*) (*' у)- ПУСТЬ О —ос- —основное слово и с/ — любое Е-слово, таксе, что [л(/)=^0. Для каждого /^И пусть Х5 (гу , /) = [х/(/). Для того чтобы опреде- определить 65 (г^ , /), рассмотрим два случая. а) Пусть [л(У/) — основное слово, и пусть ^3(г^ , /) = г31. По- Поскольку каждое начальное подслово основного слова само яв- является основным словом, то, так как (л.(У) — основное слово* имеем ^5(^л, Л) = ^(Л) для каждого входа /. б) Предположим, что \*<(Л) не является основным словом. Тогда существует начальное подслово Р слова ц>(Л) и основное слово Е = Ек^.Р, для которых РЦ=^Е^ при /^А. Предполо- Предположим, что Рф[ь(Л). Тогда Р является начальным подсловом ос- основного слова [^(«/). Поэтому Р совпадает с некоторым основ- основным словом Е;- при />#, т. е. Ек^Е^ и ] > к. Этого не может быть. Следовательно, р = [х(//). Итак, Ек^[х(Л). Если пе ^а (^УI = ^» то определим В противном случае рассмотрим множества = \Г Г : ;х (/'/') = ^ (Л), ЬА (У Поскольку Е^[х(//), то число элементов Ог не превосходит элементов О2. Для каждого слова 3' Г из Вг определим так, чтобы выполнялось равенство Методом, аналогичным методу доказательства леммы 2, по- показывается, что 5((/)с=1/. Для доказательства леммы 6 остает- остается показать, что Кс=5((У). Назовем центральным словом всякое 1-слово /, такое, что- является некоторым состоянием гм. Пусть V = \Е : ЕР ^ V для некоторого А-слова р\. Ясно, что 1/с;]/. Пусть ^^К представляет собой ^-продолжение основного* слова Е*, т. е. Р = 5*М*, где М* имеет длину #. Докажем^ что
Разрешимость машинных отображений 37 (О если Р^У, то /^г 5F/); (и) существует основное слово Е со следующими свойствами: для каждого слова У, такого, чтоХ5 (г^, У) = Е, сущест вует центральное слово /И, для которого и Доказательство проводится по индукции. Предположим, что Р является 1-продолжением некоторого основного слова. Рас- Рассмотрим утверждение (И). Если слово Р основное, то поло- положим Е = Р. Если слово Р не является основным, то положим, что Е — основное слово Ек, определенное выше в (б). Утвержде- Утверждение (и) выполнено в силу определения Е. Рассмотрим утвер- утверждение A). Предположим, что Р^-У. В силу (а) имеем Е(^У. Поскольку [^ — отображение на, существует слово ^(^^, такое, что \л^) = Е. Поскольку слово Е является основным, [л(У) = — Х5(гА, У). В силу (Р) существует слово М, такое, что > с(г, , М) = Р, Ьл(М) = Ьли) и &^(М)=г^ . Поскольку & .(ЛРр . имеем М^Ц. Поэтому Р = ^5(гА» М) ^ 3(Ц). Предположим теперь, что утверждения A) и (и) верны для всех ^-продолжений основных слов. Пусть Р есть /г-продолже- ние основного слова, и пусть Я — такой элемент из А, что РН^У. Тогда Р^У. По индуктивному предположению суще- существует основное слово Е, удовлетворяющее (и) по отношению к Р. Тогда ЬВ(Е) = &В(Р). Отсюда &В(ЕН) = &В(РН). Предполо- Предположим, что РН^У. Тогда ЕН^У. В силу A) для к= 1 имеем ЕН ^5 (С/). Таким образом, существует слово Л ^1] (/^2), та- такое, что Х5(гА, Л) ~ ЕН. Тогда Х5(гА, У) = Е и Х5(гу /) = Н. В силу утверждения (И) из индуктивного предположения суще- существует центральное слово М, такое, что Х5(гА , М) = Р, 8Л (М) = = Зл (У) и Ь3(М) = г^^ Отсюда &А (М1) = &А (Л). Поскольку У/ ^А(Л)^РА Таким образом, М1^Ц. Поскольку 5 = Х8 (гА , М) Х5 ; имеем РН ^5 (Ц), т. е. выполнено A). В силу уже рассмотренного случая к = 1 существует основ- основное слово О, удовлетворяющее (и) по отношению к ЕН (ЕН получено в предыдущем абзаце). Покажем теперь, что О удов- удовлетворяет (И) по отношению к РН. В силу (а) имеем Ьв{0) = = ^В(ЕН) = ЬВ(РН). Таким образом, О удовлетворяет (а) по от- отношению к РН. Пусть У — такое слово, что Х5 (гА , У) = С. Тогда
38 С. Гинзбург, Т. Хиббард существует центральное слово УИ/, /^1, такое, что \$СгА, Л4/) = = ЕЯ, ол (М1) = &А (У) и 55 (М1) = еу . Тогда х5 (гд, М) - Е. Сле- Следовательно, существует центральное слово /., такое, что Х5 (гЛ , I) = Л §5 (А) - гл, = 35 (М) и 8_4 (*,) = 6Д (/И). Поэтому &8(М1) = Ъ3(и) — г^^ так что слово /,/ является центральным- Далее ?>л (/,/) = дл (М1) - ЪА (</). Отсюда (гЛ, Ы) = Х5 (гл , I) Х5 (гл/, /) = ^Х5 (гм, 1). Поскольку ^5(^Л, М1) = ЕНУ имеем ^^(^Л1, /) = Я. Отсюда Х5(г^ и) = РН и утверждение (и) верно. В частности, () верно для всякого продолжения в V ос- основного слова. Но Л — основное слово, поэтому 1/с=5 ((У), чта завершает доказательство леммы 6. Определение. Отображение ;х множества @к(%) в в называется (#, (У, У)-допустимым, если A) [л сохраняет длину, (п) [х(вкA>)[)[у) = 9к(А)(\У и A11) для каждого И-слова /М из Ф имеем ц^М) = ц^) Е для некоторого Е. Лемма 7. Справедливо ровно одно из следующих двух ут- утверждений: I) существует п. п. м., такая, что 5(Ц) = У; II) существует число к, такое, что никакое отображение &к (Е) в <дк (А) не является (к, V\ Уудопустимым. Доказательство. Если выполнено (II), то, очевидно, (I) не выполнено. Предположим, что (II) ье выполнено. Для к> 1 пусть Ак — множество всех (к, II, 1/)-допустимых отображений. Каждое Ак непусто, так как (II) не выполнено. Каждое Ак ко- конечно, так как существует лишь конечное число отображений 6д,A) в в^(А). Рассмотрим ориентированный граф, определяе- определяемый следующим образом. Еершины графа — все элементы мго- оо жества и Ак. Ориентированные ребра соответствуют тем упоря- к=\ доченным парам (V, (х), V^Лл+1, [*^Ак, для которых V—продол- V—продолжение отображения (х. По хорошо известной теореме [4, стр.811 в этом графе существует бесконечная последовательность вер- вершин [лх, . . . , цк,. .. , такая, что для каждого к пара (;х/г+1, рк) является ребром графа. Другими словами, существует беско- бесконечная последовательность;^,.. . , \л.к,.. . отображений, такая, что каждое отображение акА1 является F+1, V, К)-допустимым и представляет собой продолжение \хк. Пусть ;х — то отображение 6A) в в (А), которое является общим продолжением для всех [хк. Ясно, что [х —полное последовательностное отображение и
Разрешимость машинных отображений 39 что [х(и) = У. По лемме 6 существует п. п. м. 5, такая, что 5 (б') = V, т. е. (I) выполнено. Теорема 3. Можно рекурсивно распознать, существует ли п. п. м. 5, такая, что 8A]) —V. Доказательство. Рассмотрим следующую процедуру. На шагу B/— 1) проверяем все п. п. м. 8 = (К, Е, А, 5, X, гх) с / состояниями. (Их конечное число.) Если 8A1) = У хотя бы для одной из этих п. п. м., то ответ на вопрос утвердительный. Можно рекурсивно распознать [5], выполнено ли по крайней мере для одной такой п. п. м. условие 3A1) = У. Если такой 5 не существует, то на шагу 2/ проверяется каждое отображение ву(Е) в 6у(Д). Пусть А; — множество всех (/, и, 1/)-допустимых отображений. Если А^ пусто, то ответ на вопрос отрицательный (не существует .п. п. м. 5, такой, что 3(С/) = У). Очевидно, можно рекурсивно распознать, пусто ли А]. Если Ау- непусто, то переходим к шагу 2/+ 1. Предположим, что описанный процесс никогда не закончит- закончится. Тогда не существует п. п. м. 5, такой, что 3(С/) = У. По лемме 7 существует число к, такое, что никакое отображение 6^,A1) в в^(А) не является (к, (У, 1/)-допустимым. Но в таком случае процесс заканчивается, и мы приходим к противоречию. Отсюда следует, что вышеописанный процесс заканчивается, да- давая либо положительный, либо отрицательный ответ. Таким об- образом, существование п. п. м. 5, такой, что 5 ((У) = V, рекур- рекурсивно распознаваемо. Проблема 4 — можно ли рекурсивно распознать существова- существование о. п. м. 5, такой, что 8@) —V, — ке решена. ЛИТЕРАТУРА 1. О 1пзЬиг§ 5., К 1 с е Н. О., Тчуо !атШез о! Ьп^иа^ез геЫес! 1о АЬООЬ, ^. ЛСМ, 9 A962), 350—371. 2. СПпзЬиг^ 5., Козе О. Р., ОрегаНопз ^ЫсЬ ргезегуе с1еПпаЫШу т 1ап8иа8ез, /. ЛСМ, 10 A963), 175—195. 3. СПпзЪиг^З., Козе О. Р., 5оте гесигз1уе1у ипзо1уаЫе ргоЫетз. 1П АЬООЬ-Нке Ьп^иа^ез, ^. АСМ, 10 A963), 29—47. 4. К 6 п 1 § О., ТЬеог1е Зег епс1НсЬеп ипс! ипепсШсЬеп ОгарЬеп, Ые\у Уогк, 1950. 5. К а Ь 1 п М., 5 с о 1 1 Э., Р1пИе аи!ота!а апс! 1Ье1г с1ес151оп ргоЫетзг 1ВМ ^. ЯезеагсН Юеь'е!., 3 A959), 115—125. (Русский перевод: Р а б и н М., С к о т т Д., Конечные автоматы и задачи их разрешения, «Киберне- «Кибернетический сборник», вып. 4, ИЛ, 1962, 58—91.) 6. У п § у е V., А тос1е1 апс! ап Ьуро1Ье815 к>г 1ап^иа§е з^гис^иге, Ргос. Атег. РНИоз. 8ос, 104 A960), 444—466. ?• У п^уе V., Сотргйег рго^гатз !ог 1гапз1а11оп, 5с1. Атег., 206 A962)^ Липе, 68—76.
О РЕАЛИЗУЕМОСТИ МНОЖЕСТВА ЦЕЛЫХ ЧИСЕЛ СТЕПЕНЯМИ ВЕРШИН ГРАФА I1) С. Л. Хакими Данная статья касается главным образом реализуемости множества из п 'целых чисел степенями вершин графа без петель с п вершинами. Рассматри- Рассматриваются также и аналогичные проблемы, такие, как вопросы о том, когда множество целых чисел реализуемо в связном графе, в связном графе без кратных ребер, в сепарабельном графе и в несепарабельном графе. Описыва- Описываются соотношения между этими проблемами и проблемой возможных схем строения молекул в органической химии. Подобная же задача изучается также для взвешенных графов. 1. Введение Пусть О—граф2) с п вершинами (узлами) [1, 2, 3]. Пусть степень вершины в О есть число ребер (дуг), инцидентных этой вершине. Предположим, что задано множество положительных целых чисел с11У с12>... с1п [^<^/+1, 1<^<^> — 1]. Как узнать, существует ли граф О, вершины которого уг, V2,..., уп имеют сте- степени йъ й2,..., йя? Если такой граф О существует, то будем го- говорить, что данное множество целых чисел реализуемо в графе О или что граф О реализует данное множество целых чисел. Рас- Рассматриваются также и другие вопросы, такие, как реализуемость данного множества целых чисел в связном графе, в сепарабель- сепарабельном графе и в негепарабельном графе3). Предположим, что каждому ребру графа сопоставлено неко- некоторое положительное число. Такой граф, обозначаемый здесь че- через 0^, называется взвешенным графом. Пусть хю1 представляет собой сумму весов ребер, инцидентных вершине юь графа Ст. Для произвольного заданного множества положительных чисел щ, до2,..., №п нами найдено необходимое и достаточное условие 1)Нак1т1 5. Ь., Оп геаНгаЪПйу оГ а зе! оГ Ые^егз аз йе^геез о! 1Ье уегИсез оГ а Нпеаг &гарЬ. I,/. Зое. Ы&ийг. Арр1. МаНг., 10 A962), №3, 496—506. 2) Термин граф всюду в этой статье означает неориентированный мульти- граф без петель (ср. прим. 2 на стр. 4\).— Прим. перев. 3) Поскольку такая реализация, вообще говоря, не единственна, то может случиться, что заданное множество целых чисел реализуемо как в сепарабе- сепарабельном, так и в несепарабельном графе одновременно. Вопрос о единственности реализации является сложным. Этот вопрос рассматривается во^второй части данной статьи. (Вторая часть статьи носит более специальный характер, в связи с чем ее перевод не включается в «Кибернетический сборник».—Перев.)
О реализуемости множества целых чисел 41 того, что это множество чисел реализуемо степенями вершин взвешенного графа. Мы будем применять многие понятия теории графов. Неко- Некоторые термины, используемые в этой статье, поясняются в при- приложении. 2. Основная теорема Теорема 1. Для того чтобы множество положительных целых чисел1) й1У й2,..., Aп было реализуемо степенями вершин некоторого графа, необходимо и достаточно, чтобы выполнялись> условия2) п (О \\^1 — ^еу где е — целое число] I = 1 /1—1 (И) Доказательство. Необходимость условия A) следует п того, что 2^йь = 2е, где е — число ребер графа О. Чтобы Дона- Донага 1 зать необходимость условия (п), предположим от противного, что п— 1 существует граф О, для которого ^ Ль < Aп. Пусть вершина Vп гра- /1—1 фа О сопоставлена числу йп. Тогда из неравенства г=1 дует, что в О существует по меньшей мере одно ребро, инцидентное вершине Vп и не инцидентное никакой другой вер- п—\ шине. Это невозможно; следовательно, Достаточность доказывается по индукции. Если п = 2, то из 00 следует, что йг = й^ Такая пара целых чисел реализуема в графе с двумя вершинами, которые связаны й ребрами, где х) Предполагается, что каждое рассматриваемое в этой статье множества целых чисел йХл с12, . . ., йп содержит только положительные числа, упоря- упорядоченные по возрастанию. (Теорема 1 верна и для множества неотрицатель- неотрицательных целых чисел: вершины, соответствующие нулям, будут изолированными. Именно такой вид теоремы используется при доказательстве теоремы 3.—Перев.) 2) Если допускать графы с петлями, то необходимым и достаточным усло- условием реализуемости будет одно условие A).—Прим. перев.
42 С. Какими = Aг = с12. При п = 3 нам заданы положительные целые числа > ^2> ^з» удовлетворяющие условиям A) и (п), и требуется найти граф с тремя вершинами, реализующий эти целые числа. Рассмотрим некоторый граф с тремя вершинами. Пусть пи- = пд — число ребер, связывающих вершины юь и V] (/, /= 1,2,3, ). Тогда мы имеем  ~ ^23  = ^32 Решая эти линейные уравнения относительно л12, п13 и лолучаем _ (<*! + 4, 4-Л,) - 24, я _ '^12 — о > '^13 — '^23 — 2 * Существование искомого графа будет установлено, если мы покажем, что л12, п13 и п23 являются целыми неотрицательными числами. Из условия (и) следует, что сумма любых п— 1 чисел Л{ не меньше, чем оставшееся число, откуда вытекает неотрицатель- п ность п12у п13 и ^23- Условие A) {означает, что величины являются четными числами, откуда следует, что я12, п\ъ и П2з представляют собой целые числа. Для завершения индукции предположим, что утверждение теоремы верно для п </к (#>3), и покажем, что оно верно также для п = к. Пусть с119 йъ...,йк — множество к положитель- положительных целых чисел, удовлетворяющих условиям A) и (п). Рас- Рассмотрим множество неотрицательных целых чисел й Допустим, что Лк — ^=/=0. Установим, что это новое мно- множество чисел удовлетворяет условиям (\) и (и). Сумма этих чисел к к равна т]^- — 2^!, т. е. является четным числом при четном /=1 г 1 следовательно, условие A) выполнено. Остается показать, что это новое множество чисел удовлетворяет также условию (п). к—1 к—1 Действительно, V й^йк, откуда следует, что 2^4^ с1к—йг. г=1 г =2 Если йк — д,х является наибольшим числом в множестве чисел -ь с1к — й1У то условие (и) выполнено. Если же й
О реализуемости множества целых чисел 43 не представляет собой наибольшее число, то наибольшим числом является Ль-\, и следует показать, что Последнее неравенство справедливо для к > 3, поскольку ;><4-1 и с12 ^>&х- По предположению множество из п чисел (п < &), удовлетво- удовлетворяющих условиям A) и (и), реализуемо, следовательно сущест- существует граф 01у который реализует числа й2, й3,-.., &к-ъ Лк— &\ степенями своих вершин. Добавим к графу 01 новую вершину г\ и соединим ее &х ребрами с вершиной графа 01У соответствую- соответствующей числу йк— йх. Полученный граф реализует исходное мно- множество чисел. Если же йк— йх = 0 *), то рассмотрим новое мно- множество чисел й2, й3»- ••» йк-1- Оно удовлетворяет условиям (I) и (и) и, следовательно, реализуемо в некотором графе 0х. Добавим теперь к графу 01 две вершины и свяжем их между собой А, ребрами, где й = с1г = йк. Этим доказательство теоремы заканчи- заканчивается. В качестве прямого следствия из доказательства этой теоремы можно установить следующее утверждение. Следствие. Для всякого реализуемого множества из трех чисел й1У с12, с13 существует только один граф, вершины которого имеют степени й1у й2, ^3- Пусть задано множество чисел 1, 1, 1, 1. Это множество чи- чисел удовлетворяет условиям A) и (и). Однако граф, реализующий эти числа, не будет связным. (Связным является граф, в котором существует цепь между любыми двумя вершинами.) В следую- следующем параграфе будет дано необходимое и достаточное условие для того, чтобы множество чисел было реализуемо в связном графе. 3. Реализуемость в связном графе и й-инвариантное преобразование Пусть граф О реализует числа йх, й2,..., йп. Рассмотрим пару ребер е(р^ уу) и е{рк, V;)) графа О, которые связывают вершины ®1 с V^ и ьк с у0 соответственно. Пусть вершины ьь, Юр юкУ Vо все различны. Преобразуем граф С в граф 0х, удалив из О реб- е(о[у Уу) и е(рк> Vо) и либо A) присоединив ребра е(р1У юк) и ^о) между вершинами ь-ь и Vк^ уу- и Vо, либо B) присоеди- присоединив ребра е(ир Vо) и е(р^ VII) между вершинами юь и Vо^ V^и Vк. Заметим, что при этом преобразовании графа-степени его вершин остаются неизменными. Такое преобразование называется эле- Заметим, что если а1-^ = йку то &\ = а1* = ... ~
44 С. Хакими ментарным ^-инвариантным преобразованием. Класс всех графов, реализующих одно и то же множество чисел, будем называть классом ^-инвариантных графов. Как будет показано (во второй части статьи), все элементы любого класса ^-инвариантных гра- графов могут быть получены конечным числом элементарных й-ин- вариантных преобразований, примененных к одному элементу этого класса. Рассмотрим граф О. Подграфы §г, #2,..., §г (г > 1) графа О называются его максимальными связными подграфами (или ком- компонентами связности), если A) каждое ребро графа О принадле- принадлежит только одному из подграфов д19 #2,..., §г, т. е. объединение ёг II &> II... У 8г = О И пересечение §1 П #/ = 0 при Iф/; B) не существует цепей из вершины подграфа ^ в вершину графа #у при I ф у. Ациклическим графом называется граф, не содер- содержащий циклов. Лемма 1. Пусть §1У §%,-.-, §г (г > 1) суть компоненты связности графа С, причем не все они являются ациклическими. Тогда существует граф 01У А-инвариантный графу О и имеющий г— 1 компонент связности1). Доказательство. Пусть §1—компонента связности гра- графа О, содержащая цикл. Пусть еь —ребро подграфа^-, принад- принадлежащее циклу. Возьмем произвольное ребро еу- подграфа #у, / Ф /. Элементарным ^-инвариантным преобразованием, включа- включающим ребра еь и е]- , получим граф О1У в котором подграфы §1 и §;- объединены в один связный подграф, что уменьшает чис- число компонент связности на единицу. Следует отметить, что число компонент связности можно уменьшать до тех пор, пока хотя бы в одной из компонент связ- связности будут существовать циклические ребра. Теорема 2. Для того чтобы множество чисел с119 было реализуемо в связном графе, необходимо и достаточно вы- выполнение условий: (\) множество с119 йъ ..., йп реализуемо, т. е. удовлетворяет условиям теоремы 1, п (И) 24 > 2 (л-1). Доказательство. Необходимость условия A) уже уста- установлена. Для того чтобы установить необходимость условия ) В условии леммы 1 пропущено указание, что компоненты связности графа О не являются изолированными вершинами.—Прим. ред.
О реализуемости множества целых чисел 45 рассмотрим связный граф С. В связном графе с п вершинами число ребер е больше или равно п—1 [3]. Известно, что п п 1 = 2е\ следовательно, ^ А1 ;> 2(п — 1). Для доказательства достаточности предположим, что задано множество чисел Ах, Аъ ..., Ап, удовлетворяющее условиям A) и (и), и покажем, что в классе ^-инвариантных графов, реали- реализующих множество йг, й2» •••» йя,'найдется связный граф. Пос- Поскольку множество Ах, Л.2, ..., &п удовлетворяет условию A), су- существует граф С, реализующий это множество. Если граф О связен, то теорема доказана, поэтому допустим, что граф С не является связным. Пусть компоненты связности графа О суть подграфы §19 §2, ..., §г (/-> 1). Предположим, что все подграфы ^1» #2> •••> ёг являются ациклическими, ибо если существует подграф §1У содержащий цикл, то, как показано в лемме 1, мож- можно объединить этот подграф с другим подграфом #у, уменьшив таким образом число компонент связности. Эту операцию можно продолжать до тех пор, пока все подграфы не станут ацикли- ациклическими1). Если все подграфы §1У #2, ..., §г являются ацикличес- ациклическими, то число ребер графа О равно п—г [3]. Отсюда следует, п что 2^^1 = 2 (п — г), что противоречит условию (и). Тем самым 1=1 теорема доказана. Из доказательства этой теоремы можно легко установить следующие результаты. Следствие 1. Множество целых чисел с11У с12, ..., йпреализуе- йпреализуемо в ациклическом связном графе тогда и только тогда, когда (\) множество йх, Аъ ..., йп реализуемо, п 1=1 Следствие 2. Множество чисел Лг, Аг, ..., йп реализуемо в связном графе, если (\) множество с11У й2, ..., йп реализуемо, 3) Или до тех пор, пока число компонент связности не обратится в еди- единицу. — Прим. перев. п 2) Из условия (И) следует, что Л^>2я — 3, и поскольку в левой час- 1=1 п ти этого неравенства должно стоять четное число, то ^^;> 2д—I. — Лрим. перев.
46 С. Хакими 4. Реализуемость в сепарабельных и несепарабельных графах Граф О называется несепарабельным, если каждый его под- подграф § имеет по крайней мере две общие вершины со своим до- дополнением. Все остальные графы называются сепарабельными [2, 3]. Если О — связный сепарабельный граф, то у него сущест- существует подграф §, имеющий с дополнением ровно одну общую- вершину ьс\ она называется разрезающей вершиной графа О [3]. Теорема 3. Для того чтобы множество чисел с11У с!2} ...,йа было реализуемо в несепарабельном графе, необходимо и доста- достаточно, чтобы выполнялись следующие условия: п 0) ^^1~ ^ е, где е — целое число, (Л) й1=Ф= 1 для всех I, п-\ 111) Доказательство. Необходимость условия A) уже уста- установлена. Необ>одимость условия (И) очевидна. Чтобы доказать, что условие A11) также необходимо, предположим, что сущест- существует граф О, в котором /1-1 1=\ Покажем, что граф О сепарабельный и что разрезающей вер- вершиной является вершина юп, соответствующая числу д,п. Чтобы доказать это, покажем, что, удалив из графа О все ребра, ин- инцидентные вершине уп [а также и саму вершину юп.—Перев.}, мы получим несвязный граф Ог. Пусть степени вершин в графе Сг суть й\ , А'2, ..., й'п_х . Очевидно, что и—1 2 а\ < 2 (п — 2). : 1 В силу теоремы 2 граф Ог не может быть связным. Этим заканчивается доказательство необходимости условий теоремы. Для доказательства достаточности предположим, что задано множество чисел с119 Аъ ..., с1п, удовлетворяюще? условиям тео- теоремы. Построим новое множество неотрицательных целых чисел А\, й'2у ..., &'п> где й! = ^ —2, 1<^'<п. Докажем теперь, что множество чисел й\, й'2, ..., й'п реализуемо1^. Лля этого пока- 1) Ср. прим. 1 на стр. 41. — Прим. перев.
О реализуемости множества целых чисел 47 жем, что эти числа удовлетворяют условиям теоремы 1. Первое условие теоремы 1 выполнено, поскольку число п п 1=1 1=\ является четным в силу условия A) доказываемой теоремы. По кажем теперь, что п — Х 1=1 Из (ш) имеем п-\ [п — 2), что можно переписать в виде п— 1 или, наконец, п—\ что и требовалось доказать. Пусть числа й'х, й'2> ..., А'п реализу- реализуются в графе С. Может случиться, что некоторые из чисел й\ равны нулю. В этом случае соответствующие вершины должны быть изолированными в C\ Добавим к графу С множество из п ребер, образующих гамильтонов цикл (элементарный цикл, про- проходящий через все вершины графа С). Ясно, что полученный граф С реализует исходное множество чисел. Поскольку граф С содержит гамильтонов цикл, он является несепарабельным. Так как некоторое множество чисел может быть реализовано как в несепарабельном, так и в сепарабельном графах, остается ответить на следующий вопрос: как узнать, существует ли сепа- рабельный связный граф, реализующий заданное множество чи- чисел степенями своих вершин? Теорема 4. Для того чтобы множество чисел Лг, йъ ..., йп> реализуемое в связном графе (удовлетворяющее условиям тео- теоремы 2), было реализуемо в сепарабельном связном графе, необ- необходимо и достаточно, чтобы выполнялись следующие условия: (\) если п = 3, то Лг-\- с12 = с!3,
48 С. Хакими (И) если п = 4, то в данном множестве чисел существуют числа й'Ь и йу, такие, что А^йр A11) если п > 4, то в данном множестве чисел существу- существует число <^.=^=2. Доказательство. Если п = 3, то необходимость и доста- достаточность условия A) очевидна. Для того чтобы установить необ- необходимость условия (и), покажем, что не существует связного четырехвершинного сепарабельного графа, в котором все вершины имеют одинаковую степень. Предположим, напротив, что сепа- рабельный связный граф С реализует множество чисел Лг = А2 = ^^3 = ^4- Пусть V! — разрезающая вершина в С. Ясно, что один из кусков1) графа О содержит две вершины, одна из которых есть V!. Отсюда следует, что существуют положительные числа йг1 и й12, такие, что кп + йп = йх, и числа йг1 и й2 реализуемы в двухвершинном графе. Однако числа йг1 и й2 реализуемы тог- тогда и только тогда, когда йг1 = й2. Отсюда й12 = 0, что невоз- невозможно. Для доказательства необходимости условия (ш) заметим, что связный граф, в котором все вершины имеют степень 2, представляет собой элементарный цикл [3], являющийся несепа- рабельным графом. Пусть задано множество йг, с12, ..., йп, п^\, удовлетворяю- удовлетворяющее условиям (и) и (Ш). Мы хотим показать, что можно найти сепарабельный граф, реализующий это множество чисел. Рас- Рассмотрим два случая. Случай 1. йг = й2 = с!3 = ... = йп, п > 4. Допустим, что йг — четное число. Так как йг=1=2, то йг = 2 + й12. Рассмотрим следующие два множества чисел: 2, &2, йъ и й12, й^ йъ, ..., йп. Оба эти множества чисел удовлетворяют условиям теоремы 2; следовательно, они реализуемы в связных графах §1 и #2- Склеи- Склеивая вершины наименьшей степени графов §г и ^2> получаем се- сепарабельный граф, реализующий исходное множество чисел. Ес- Если же йг — нечетное число, то п должно быть четным. Кроме того, йг=^\, иначе условия теоремы 2 не выполнены. Пусть 6^= - Рассмотрим два множества чисел 2, й2у A3ис112, оЦ, й5, ..., йп. Оба эти множества удовлетворяют условиям теоре- теоремы 2; следовательно, они реализуемы в связных графах §г и Как и раньше, склеив вершины наименьшей степени графов и #2, получим сепарабельный связный граф О, реализующий за- заданное множество чисел. Случай 2. AгфAп. В этом случае рассмотрим следующие два множества чисел: й19 йг и й2, йъ, ..., йп — йг. Первое мно- ) Куском называется подграф, имеющий с дополнением одну общую вершину (см. Берж К-. Теория графов и ее применения, ИЛ, 1962, стр. 220).—Прим. перев.
О реализуемости множества целых чисел 49 жество, очевидно, реализуемо1). Доказательство реализуемости множества чисел й2у й3, ..., Лп_г, &п — й\ уже дано при доказа- доказательстве теоремы 1. Однако надо показать, что множество й2, с13, ..., с1п_1У йп — йг реализуемо в связном графе. Для этого дос- достаточно показать, что + йъ + • • • + 4,-1 + Уп - аг) > 2 (п - 2). п В левой части здесь стоит величина, равная Если йг = 1, то п 1=1 Если же йг > 1, то п х = (л — 2) йх > 2 (п — 2). Этим заканчивается доказательство теоремы, так как указан- указанные два множества реализуются в связных графах ^ и ^2» а склеив любую вершину графа §1 с вершиной графа #2> соот- соответствующей числу йп — ЛХЛ мы получим искомый граф. 5. Реализуемость в графе без кратных ребер Граф О имеет кратные ребра, если существуют по крайней мере два ребра в С, которые связывают одни и те же вершины. Мы хотим ответить на следующий вопрос: при каких условиях множество чисел может быть реализовано в графе, не имею- имеющем кратных ребер? Будет использоваться следующий процесс редукции. Множество целых чисел йг, й2,... , йп будем называть приво- приводимым, если г п у — 1. Множество чисел й, , Л, , . , й-. 1 2 лучается из исходного приводимого множества йг, с12, следующим образом: ( й1 при при по- п ап. п Пусть й\ , й'2, ..., й' л—1) суть положительные числа из множества й1 , йь , ..., йь , расположенные в неубывающем порядке. Множество чисел й\у й'2, ..., й' назовем приведенным В связном графе.—Прип. перев. 5 Заказ № 563
50 С. Хакими множеством чисел, а только что описанный процесс — редукци- редукционным шагом. Исходя из множества А\ , й2, ..., й' , при усло- условии й' <^р—1 можно проделать следующий редукционный шаг и получить другое множество чисел. Теорема 5. Реализуемое множество чисел й19 Аг, ..., йп реализуемо в графе без кратных ребер тогда и только тогда, когда это множество приводимо, и каждое множество чисел, получаемое из него при последовательных редукционных шагах, также приводимо. Доказательство. Докажем сначала необходимость. Пусть О — граф без кратных ребер, и пусть степени вершин графа О суть й19 й2, . . ., йп. Существует не более п—1 ребер, инци- инцидентных вершине юп, следовательно, йп<^п—1. Рассмотрим граф Ох, полученный из О удалением вершины ип и всех ребер, инцидентных вершине ьп. Пусть степени (неизолированных) вер- вершин графа 0г суть й[1\ й<п, . . ., $> \ й1°<4+1 для 1<г< — 1. Поскольку 01 не имеет кратных ребер, то йрУ <С I I Г — 1. Пусть б/4, йг, . . ., йр — множество чисел, полученное из множества йх, с12, . . . , йп с помощью одного редукционного шага. Легко видеть, что йр^АрУ и р'-^р, откуда с1р^р—1. Продолжая этот процесс таким же способом, устанавливаем не- необходимость приводимости множеств чисел, получаемых при по- последовательных редукционных шагах. Для доказательства того, что условие теоремы также и до- достаточно, опишем процедуру, которая приводит к графу без крат- кратных ребер. Возьмем п точек (вершин) о1( 1J уп- Свяжем теперь ребром каждую из следующих пар вершин: ~оп и ьп^х, 1)п и г)п-2, . . . , у„ и уп_а . Это всегда возможно,^ поскольку Лп^п—1. Теперь имеются ровно йп ребер, инцидентных вер- вершине уп, среди которых нет кратных. Для построения остав- оставшейся части графа заметим, что степени вершин этой части должны образовывать приведенное множество чисел йг, й2,.. . . . . , йр. Так как по условию йр-^р—1, то можно последо- последовательно продолжать подобные шаги и получить, наконец, граф без кратных ребер. Однако доказательство еще не завершено; именно следует показать, что если йх, й2, . . . , йп есть реали- зуемое множество, то и приведенное множество йх, й2, . . ., йр р п реализуемо. Действительно, поскольку Ъ &ь = 2^ йь — 2йп, то сумма элементов приведенного множества чисел четна, а по-
О реализуемости множества целых чисел 51 Р-1 скольку Лр^р—1, имеет место неравенство Ъ й* > йр. Тем самым показано, что если исходное множество чисел реализуемо и приводимо, то и все приведенные множества чисел также ре- реализуемы. Этим заканчивается доказательство теоремы. 6. Реализуемость множества положительных чисел степенями вершин взвешенного графа Понятие взвешенного графа, как известно, весьма полезно для приложений теории графов к электрическим сетям и другим физическим системам. Поэтому полученные результаты естест- естественно распространить на случай взвешенных графов. Теорема 6. Для того чтобы данное множество чисел щ, щ,. . ., хюпу где Х5ог <^ до/+1, было реализуемо степенями вершин взве- взвешенного графа, необходимо и достаточно, чтобы выполнялось условие п—\ A) 2] Щ>пи „. Доказательство. Необходимость доказывается совер- совершенно так же, как в теореме 1, и поэтому доказательство не повторяется. Как и в случае теоремы 1, достаточность будет до- доказываться по индукции. Для п = 2 число щ должно быть рав- равно щ. Ребро веса щ, связывающее две вершины, реализует та- такую пару чисел. Для п = 3 определим числа п^ = /г 7> /, / = 1, 2, 3, гф]у каждое из которых обозначает вес ребра, связыва- связывающего вершину юь с вершиной V]. Единственная реализация в этом случае определяется вычислением значений весов ребер при помощи следующих равенств: __ 1 + ^2 — Щ „ г Щ + Щ 12 2 ' 13 = 2 ' 23 = Предположим теперь, что теорема верна для п<С к, и докажем ее для п = к. Рассмотрим множество чисел щ, щ, . . . , щ. Строим множество чисел щ, щ, . . ., хв)^, хюк — щ и показы- показываем, как в теореме 1, что это множество удовлетворяет усло- условию данной теоремы и, следовательно, реализуемо. Пусть Сш — взвешенный граф, реализующий множество чисел щ, щ , . . . • • •, Щ-1, хюк — щ. Прибавим к этому графу вершину V! и свяжем ее Ребром веса щ с вершиной графа 6Ш, соответствующей числу ^к — щ. Тогда получится взвешенный граф 6т, реализующий заДанное множество чисел взвешенными степенями своих вершин. 5*
52 С. Хакими 7. Применения и заключение Рассмотрим молекулу азотистого ангидрида Ы2О3. Пять воз- возможных схем строения молекулы этого вещества показаны на рис. 1,а. Графы, соответствующие указанным схемам, показаны на рис. 1,6. По-видимому, различным возможным схемам стро- строения молекул соответствуют и различные физические свойства вещества. Общая характеристика графов, изображенных на рис. 1,6, со- состоит в том, что все они являются й-инвариантными связными графами, реализующими множество чисел 2, 2, 2, 3, 3. Поэтому создается впечатление, что теорема 2 позволяет предсказать, может ли существовать некоторое гипотетическое химическое соединение. Важной и до сих пор не решенной проблемой явля- является нахождение всех возможных схем строения молекулы дан- данного химического соединения. Такая проблема по существу сво- сводится к задаче порождения всех ^-инвариантных графов, соот- соответствующих некоторому множеству целых чисел, причем для О ■О N N N \/ О О О о О N О •о :0 N О О О О о а Рис. 1. а — пять возможных схем строения молекулы К2О3; б соответствующие этим схемам. графы, указанной проблемы не известно приемлемого эффективного решения. Представляет теоретический интерес ответ на следующие ( вопросы. Какая из реализаций некоторого множества чисел яр- ;
О реализуемости множества целых чисел ' 53 ляется графом с максимальным (или минимальным) числом раз- различных остовов, циклов или сечений1)? Какая из реализаций имеет максимальное (или минимальное) число кратных ребер, кусков, компонент связности или ациклических ребер? Важный вопрос, ответ на который будет дан во второй части статьи, состоит в следующем: каковы необходимые и достаточ- достаточные условия того, что некоторое множество чисел реализуемо единственным связным графом (т. е. что все графы, реализую- реализующие это множество чисел, изоморфны)? ПРИЛОЖЕНИЕ Граф представляет собой совокупность конечного числа объ- объектов двух типов: ребер (дуг) и вершин (узлов). Каждое ребро е(ю1У V^) связывает пару различных вершин ъь и V}. Если граф § входит в граф О, то § называется подграфом графа О. Дополнени- Дополнением подграфа § является подграф §", который содержит все реб- ребра графа О, не принадлежащие подграфу #, вместе с каждой вершиной, инцидентной какому-нибудь из этих ребер. Цепью в графе О называется множество ребер (подграф графа О), которое можно упорядочить в виде 19 V^)у причем все вершины юь, V^, ьк, . . . , V,, уо у8 различны. Цикл в графе О представляет собой множество ребер (подграф графа О), которое можно упорядочить в виде ., е(р п причем все вершины ю[у V^, юк, . . . , юГ, ^ различны. Автору приятно выразить свою признательность за полезные беседы, которые он имел с профессором В. Маэда из Иллинойс- ского университета, подсказавшим тему данной работы. ЛИТЕРАТУРА 1. УеЫ еп О., Апа1у515 ЗНиз, Атег. Ма1Ь. 5ос, СатЪпс^е СоПс^ишт РиЪНсаНопз, 1931. 2. XV Ь 1 1 п е у Н., Коп-зерагаЫе апс! р1апаг ^гарЬз, Тгапз. Атег. Ма1Н. Зое, 34 A932), 339—362. 3. 5 е 5 Ь и 5., Н е е с! М. В., Ыпеаг ОгарЬз апс! Е1ес1г1са1 Nе^^Vо^к5, Ас1(И- 5оп-\\^ез1еу, КеасИп^, 1961. х) Число сечений и объединений непересекающихся сечений в связном я-вершинном графе равно 2п~х—1; однако число сечений, вообще говоря, явля- является функцией структуры графа.
ДИНАМИЧЕСКОЕ ПРОГРАММИРОВАНИЕ *) С. Дрейфус (Корпорация РАНД, Санта-Моника, Калифорния) 1. Введение Цель настоящей статьи заключается в следующем: 1) ознако- ознакомить читателя с основными положениями и характерными особен- особенностями динамического программирования, определяющими его применимость; 2) развить дальше основные вычислительные ал- алгоритмы и представить более важные новые специальные методы, которые упрощают и делают практически возможным численное решение задач; 3) дать обзор литературы по современным интерес- интересным применениям динамического программирования. Динамическое программирование предлагает некоторый подход к задачам. Для динамического программирования не обязательно характеризовать задачу набором уравнений специального вида, что необходимо в случае линейного программирования. С другой стороны, опять-таки в отличие от линейного программирования ди- динамическое программирование не дает общего вычислительного ал- алгоритма. Несмотря на то что с утилитарной точки зрения отсутствие четко определенных постановок и быстроты получения численных результатов может показаться обескураживающим, настоящему специалисту по исследованию операций понравится, что каждая задача представляет особый интерес. Гораздо важнее то, что однаж- однажды преодоленные первоначальные трудности в постановке задач и их численном решении дадут возможность мощной коалиции мате- математиков и вычислителей справиться со многими важными задачами нелинейного, стохастического и адаптивного характера. Как читатель увидит ниже, основная идея динамического про- программирования заключается в описании задачи с помощью функ- функциональных уравнений или их дискретных аналогов — рекуррент- рекуррентных соотношений. Рекуррентные соотношения долгое время использовались для описания последовательности событий в математической физике. Эта же самая идея лежит в основе сильного и хорошо разработан- разработанного метода в теории массового обслуживания, однако в обоих этих случаях рекуррентные соотношения используются как описа- описательное средство, а не как метод решения. Новые идеи динамического программирования связаны с рекур- рекуррентным описанием процессов решения и последующим анализом 5., Эупагшс рго&гатгшп&. Рго^гезз т Орега1юпз у у уо1. 1, Ке\у Уогк — Ьопс!оп, 1961.
Динамическое программирование 55 получившихся функциональных уравнений, содержащих оператор максимума. Начало использования рекуррентных соотношений в теории ре- решения относится, кажется, к 1940 г., когда у статистиков развился значительный интерес к статистической теории решен-ия. Книга А. Вальда A950I) использует этот метод для проверки гипотез. Примерно в 1951 г. доктор Р. Беллман нашел интересный подход к задачам решения как детерминированного, так и стохастического типа, основанный на рассмотрении функциональных уравнений, и ввел термин «динамическое программирование» для описания этого подхода. Большинство его ранних исследований касается существования и единственности решения для этого нового типа функциональных уравнений. Его многочисленные теоретические работы начала пятидесятых годов привели к написанию книги «Динамическое программирование», изданной в 1957 г. В 1955 г. автор начал работать вместе с доктором Беллманом в корпорации РАНД, и основное внимание тогда было обращено на постановку задач и численное решение. Были развиты специальные приемы для уменьшения объема вычислений, необходимых для ре- решения наиболее важных классов задач. Некоторые из этих методов будут обсуждаться ниже. Эта работа имела своим итогом книгу о вычислительных аспектах динамического программирования, вы- вышедшую в свет в 1961 г.2)* Усиленное внимание к практическому приложению динамиче- динамического программирования вызвало большой интерес к этой теме и повлекло за собой дополнительные исследования, проведенные в Гарварде, Массачусетсом технологическом институте, Карнеги, Питтсбурге, Кейзе, Станфорде и Калифорнийском университете (Лос-Анжел ос) (названы лишь основные центры). К 1958 г. динами- динамическое программирование вызвало настолько сильный интерес, что эта тема была поставлена на общей сессии ежегодного собрания об- общества по исследованию операций в Бостоне. Полная библиография до 1954 г. может быть найдена в докладе Беллмана, прочитанном Американскому математическому обществу в сентябре 1954 г. и опубликованном в том же году [1 ]. Обзор более поздней литературы появился в книге Беллмана [3], а также в биб- библиографии по линейному программированию и смежным вопросам 112]. Обзор более современной литературы будет дан в готовя- готовящейся к выпуску книге Беллмана и Дрейфуса3). *) По-видимому, имеется в виду книга: ЛЛ/" а 1 с! А., 51аи§иса1 опэ, Ьопс1оп, 1950.— Прим. ред. 2) По-видимому, имеется в виду книга: В е 1 1 т а п К., Эг еу !из 5., АррНеё ёупагтс рго&гаттт^, Рппсе1оп, N. Л., 1962 (русский перевод: Бел- л м а н Р. иДрейфусС, Прикладные задачи динамического програм- программирования, изд-во «Наука», 1965).— Прим. ред. 3) См. предыдущее примечание.
56 С. Дрейфус 2. Многошаговые процессы решения Так как динамическое программирование было развито для об- облегчения изучения многошаговых процессов решения, то, по-види- по-видимому, уместно объяснить здесь природу таких процессов. Однако, как читатель был уже предупрежден, в динамическом программи- программировании почти не существует безоговорочных истин. Так, нельзя категорически утверждать, что все многошаговые процессы реше- решения могут быть решены динамическим программированием или что все задачи динамического программирования суть многошаго- многошаговые процессы решения. Действительно, как будет показано впоследствии, размер и сложность структуры некоторых задач делают динамическое про- программирование практически неприменимым. (Вероятно, более пра- правильно говорить, что все задачи, описываемые многошаговыми про- процессами решения, могут быть сформулированы в терминах динами- динамического программирования.) С другой стороны, некоторые задачи, которые нельзя охарактеризовать как многошаговые процессы, можно представить в таком виде, что динамическое программирова- программирование укажет практический способ их решения. В многошаговых процессах решения отыскивается последова- последовательность решений, которая максимизирует (или минимизирует) некоторую, наперед заданную целевую ^функцию, или функцию критерия. В качестве примера многошагового процесса решения рассмот- рассмотрим задачу замены автомобиля, столь близкую большинству аме- американцев. Искомая последовательность решений есть поведение, которое может быть следующим: заменять автомобиль каждые N лет на модель М-летней давности1). Целевая функция должна отра- отражать совокупность соображений о минимальной стоимости (стои- (стоимость покупки плюс содержание) и субъективную социологическую ценность. Так как люди сильно различаются в определении зна- значимости этих факторов, то не существует универсально оптималь- оптимального поведения. Однако если даны численные оценки значимости этих факторов для отдельного лица, то существует оптимальное по- поведение при замене автомобиля, легко определяемое с помощью ди- динамического программирования. Это все, что когда-либо можно потребовать от математической теории. Определение целевой функ- функции и возможного выбора решения есть не математическая и часто не физическая задача. Рассмотрим задачу замены автомобиля более детально, чтобы понять сущность проблем многошагового процесса решения. Заме- Заметим, во-первых, что выбор оптимального управления будет зави- *) Более общо: заменять модель типа { каждые Л^ лет на модель типа /.
Динамическое программирование 57 сеть от длины1) процесса. Человек, знающий, что ему осталось жить только год, будет вести себя иначе, чем владелец таксомоторного парка с практически неограниченными пределами планирования. Во-вторых, выбор наилучшего решения будет зависеть от состояния системы в данный момент. Под «состоянием» (этот термин много- многократно используется в последующем) мы подразумеваем сумму всей относящейся к делу информации о рассматриваемой ситуации. На- Например, состоянием автомобиля для упрощенного анализа может быть его возраст. Для более детального анализа нужно рассмотреть также его сохранность и т. п. Следовательно, «состояние» есть отно- относительное понятие, зависящее от глубины анализа процесса, и ра- работа специалиста по исследованию операций заключается в выборе должного соотношения между «реализмом» описания состояния сис- системы и возможностью решения получающейся в результате матема- математической задачи. Мы установили тот факт, что при изучении многошагового про- процесса нужно рассматривать длину процесса и состояние системы. Рассмотрим теперь результат решения на некотором шаге для ка- какого-либо состояния системы. Вообще говоря, решение изменяет и состояние и шаг2) многоша- многошагового процесса. Возвращаемся- к примеру о замене автомобиля. Решение покупать новый автомобиль в год Л^, когда старый авто- автомобиль имеет возраст М, приведет к тому, что в год Л^+1 в эксплу- эксплуатации будет находиться автомобиль возрастом в один год. Решение «держать старый тарантас» еще один год приведет в результате к эксплуатации (Л4 + 1)-летнего автомобиля в (Л^+ 1)-й год. Покупка бывшего в употреблении автомобиля даст в результате эксплуата- эксплуатацию автомобиля «некоторого среднего возраста». Оптимальное решение — такое, которое должным образом ба- балансирует текущую стоимость решения с будущей ценностью воз- возникающего в результате решения нового состояния. Следовательно, нужно знать некоторые свойства будущего — итоговую ценность данного состояния — для того, чтобы правильно действовать в настоящий момент. Это важное замечание полностью используется динамическим программированием. В первой части этой статьи мы сказали, что динамическое про- программирование является некоторой точкой зрения. В нашем об- обсуждении многошаговых процессов мы уже начали знакомить чи- читателя с этой новой точкой зрения. Мы ввели понятие шага и со- состояния, поведения и решения. Мы обсудили, каким образом для некоторых важных процессов оптимальное решение в отдельно взятый момент времени зависит только от длины процесса и состоя- *) Длиной многошагового процесса называется количество шагов.— Нрим. перез. 2) То есть номер шага.— Прим. ред. 4 Заказ № 563 - *
58 С. Дрейфус ния системы1). Прежде чем переходить к следующим параграфам, где будет дано математическое выражение высказанных выше идей, читатель должен уяснить разницу между общепринятым подходом и подходом динамического программирования. Обычные методы вы- вычисления и линейное программирование описывают многошаговый процесс целиком, единым набором уравнений и находят оптимальное поведение при достаточных предположениях о существовании «хо- «хорошего поведения» с помощью стандартного алгоритма, который не использует свойства действительных физических процессов, ле- лежащих в основе уравнений. Выполнение определенных упрощаю- упрощающих предположений приводит к очень эффективному алгоритму. В общем случае многошаговость содержит в себе серьезные «раз- мерностные» трудности. Однако при изучении процессов именно в этих терминах многошаговости динамическое программирование достигло успехов при решении широкого класса задач поразитель- поразительно различной математической и физической природы. 3. Принцип оптимальности Принцип оптимальности устанавливает связь Л^-шагового про- процесса решения с (Ы—1)-шаговым. Если мы находимся в определен- определенном состоянии на некотором шаге и знаем, какой оптимальный до- доход можно получить при переходе из каждого состояния на данном шаге к следующему шагу, то, предполагая, что процесс так продол- продолжается до его завершения, мы можем выбрать такое решение, кото- которое дает одновременно максимальный непосредственный доход от данного шага и оптимальный доход от (Л^—1)-шагового процесса2), начинающегося с некоторого нового состояния. Принцип оптимальности просто констатирует, что это сообра- соображение действительно обеспечивает наибольшую прибыль. Беллма- ну принадлежит следующая формулировка принципа оптималь- оптимальности. Оптимальное поведение обладает тем свойством, что, каковы бы ни были первоначальное состояние и решение в начальный момент, последующие решения должны составлять оптимальное поведение относительно состояния, получающегося в результате первого ре- решения3). Если описание состояния достаточно полное, то оптимальное по- поведение, начинающееся с некоторого состояния, зависит только от этого состояния и не зависит от того, каким образом мы к нему при- *) В математической терминологии это называется марковским свойст- свойством. 2) Доходом от Л^-шагового процесса в данной статье является сумма до- доходов от всех шагов ^-шагового процесса.— Прим. ред. 3) См. [3], стр. 105.— Прим. ред.
Динамическое программирование 59 шли1). Для того чтобы можно было применять динамическое про- программирование, переменные, описывающие состояния, должны не- нести всю необходимую для выполнения такого разделения инфор- информацию. Кроме того, число переменных, описывающих состояние, не должно быть слишком большим. 4. Функциональные уравнения Так как мы заметили, что оптимальный многошаговый процесс может быть охарактеризован начальным состоянием системы и дли- длиной процесса, то обозначим через /лК*) — полный доход в случае оптимального поведения от А^-шагового процесса, начинающегося в состоянии х. Обозначим также Р — множество допустимых поведений; :, р) — доход на первом шаге процесса длины N. начи- начинающегося в состоянии х, при использовании реше- решения р(^Р\ ', х, р) — новое состояние, к которому приводит решение р. Тогда = тах{#лДя, р) + ?н_1[х'{Ы, х, р)]}. A) Это уравнение математически выражает высказанное выше ут- утверждение. А именно полный доход от Л^-шагового процесса есть сумма дохода от первого шага и оптимального дохода от (Ы—1)- шагового процесса, причем решение р (^Р выбирается гак, чтобы эта сумма была максимальной. Следует отметить, что для общности «одношаговый» доход /? и новое состояние х' считаются функциями от временной переменной /V, управления р и переменного состояния х. Обычно такой доход и функции преобразования не зависят от длины N процесса. 4.1. Решение функционального уравнения Здесь мы подходим к первому пункту, в котором пути всегда расходятся, но кто, интересно, найдет правильные пути и гладкую почву? Существует два основных подхода к решению описанного выше функционального уравнения или рекуррентного соотношения. Первый, который мы будем называть «аппроксимацией в функ- функциональном пространстве», включает в себя оптимальное решение все более удлиняющихся процессов, пока не будет найдено решение процесса нужной длины. Иллюстрации к этому приему будут при- *) Это является вышеупомянутым марковским свойством. 4*
60 С. Дрейфус ведены в последующих параграфах и завершатся обсуждением не- недавно законченной программы для анализа задачи логического за- замещения. Второй подход к численному решению использует «аппроксима- «аппроксимацию в пространстве поведений». Идея этого подхода состоит в рас- рассмотрении задачи с самого начала во всей ее полноте. Начальное приближение оптимального поведения последовательно улучша- улучшается до тех пор, пока не будет найдено оптимальное поведение. При- Примером этого общего метода служит симплекс-метод линейного про- программирования. Новый эффективный алгоритм этого типа, разра- разработанный Рональдом Говардом, будет описан и проиллюстрирован ниже. 4.2. Пример В порядке иллюстрации метода аппроксимации в функциональ- функциональном пространстве мы сформулируем и решим очень простую задачу, связанную с многошаговым процессом решения. Мы покажем так- также, как можно решить почти без дополнительных усилий обобщен- обобщенную задачу, которая включает стохастические и адаптивные эле- элементы. Предположим, что нам требуется найти путь между вертикаль- вертикальными линиями Л и В, такой, что сумма чисел вдоль этого пути ми- минимальна1) (рис. 1). Это многошаговый процесс. Здесь три шага. Каждое решение имеет двойной результат. Оно определяет стои- стоимость, равную числу на отрезке линии, и изменяет состояние — осуществляется переход к некоторой новой вершине. 8 1 5 В @,0) Рис. 1 Выбирая за начало отсчета нижнюю левую вершину и ис- используя обычную прямоугольную систему координат, можно за- записать функциональное уравнение, соответствующее этой задаче. ) те [5]. Пример практического применения этой модели можно найти в рабо-
Динамическое программирование 61 Пусть /(*,/') = Минимум суммы, соответствующей начальной точке (/,/) и оптимальному пути к линии В; тогда по принципу оптимальности имеем п{1' >' /+ ( /; + 1) B) где пA, /; к, I) равно числу, стоящему на отрезке прямой, соединя- соединяющей (*, /) и (&, /), и пA, /; &, 1) = со для *', /, & или /<0. Последнее условие делает ненужным рассмотрение оси х как специального случая, при котором невозможно решение двигаться вниз. Мы видим, что /C, /)=0, так как это есть линия В, а лучший путь от линии В к линии В имэет нулевую стоимость. Как мы показали выше, метод решения состоит в нахождении решения сначала для одношагового процесса, потом для двухшаго- вого и, наконец, для всего трехшагового процесса. Зная /C, /), легко вычислить, исходя из рекуррентного соот- соотношения /B, ]) (]=0, 1,2): /B, 0) - Ш1П[6 + 0, оо | 0] - 6, /B, 1) = гшп[3 + 0, 8 + 0] - 3, /B, 2) = тт[5 + 0, 7 + 0] = 5, теперь, используя /B, /), вычисляем /A, /), исходя из того же са- самого рекурреншого соотношения: /A, 0) - тш [6 + 6, оо]= 12, = тт[6 + /A, 2) =гшп[1 4-5, 5 4-3]-6. Наконец, третье применение рекуррентного соотношения дает /@, 0) = тт[3^1- 12, со] = 15, /@, 1) = тт[5Н-9, 1 + 12]- 13, /@, 2) - гп1п [8 4- 6, 3 + 9] - 12. Мы можем теперь утверждать, что лучший путь начинается из точки @, 2) и имеет стоимость 12. Если, вычислив функцию /(*', /) в некоторый момент, мы одновременно выделим направление луч-
62 15 С. Дрейфус Рис. 2. шего отрезка, то получим сразу лучший путь. Рис. 2 иллюстри- иллюстрирует сказанное. Сделаем некоторые замечания о проделанном численном реше- решении задачи, которые имеют силу для всех вычислений этого типа в динамическом программировании. 1) Многошаговый процесс не может в общем случае трактовать- трактоваться как последовательность одношаговых процессов, начинающаяся из того же самого состояния и оптимизирующая на каждом ша- шаге одношаговый доход. Такой подход привел бы к выбору пути с началом @,1), с начальной стоимостью 1 и полной стоимо- стоимостью 13. 2) Вычисление дает решение для всех возможных начальных точек. Это полезно для точного анализа. Вышеприведенное свойст- свойство позволяет задачу о неопределенной конечной точке рассматри- рассматривать так же механически и легко, как задачу о двух граничных точках. 3) Количество вычислений зависит линейно от числа шагов. Решение 12-шаговой задачи требует в точности в 4 раза больше вре- времени, чем решение трехшаговой задачи. При решении многошаго- многошаговых процессов в линейном программировании дополнительные шаги приводят к дополнительным уравнениям и переменным. При этом количество вычислений возрастает геометрически со временем: например, как гы при некотором г> 1 или по крайней мере нели- нелинейно, как Лт2 или Л/3. 4) Вычисления однотипны, так что необходима только одна вы- вычислительная программа, позволяющая переходить от А-шаговой к (й+1)-шаговой задаче. Эта программа повторяется тогда столько раз, сколько шагов. 5) Для вычисления /Л+1(*) нужна только функция [к(х). По- Поэтому требуемая память вычислительной машины зависит только от числа состояний и не зависит от числа шагов. 6) Тот же самый ответ был бы получен при движении вперед от линии А, и тогда нашелся бы наилучший путь от линии В. На каж-
Динамическое программирование 63 дом шаге мы могли бы задавать вопрос: «Какой путь до этой точки является наилучшим?» вместо «Какой наилучший путь из этой точки?» 3. Стохастический вариант Для иллюстрации естественного пути обобщения метода «аппрок- «аппроксимации в функциональном пространстве» на стохастические зада- задачи снова рассмотрим приведенный выше численный пример. При этом, однако, предположим, что в каждом состоянии вместо двух допустимых решений (вперед или вниз по диагонали) возможно несколько рещений, но каждое решение определяет не на- направление, а только набор вероятностей для выбора различных на- направлений. Это пример одного из нескольких типов стохастических задач, часто встречающихся в исследовании операций. Мы можем назвать эту задачу задачей вероятностного поведения, поскольку мы не мо- можем с уверенностью принимать наши решения. Другие типы стохастических задач суть те, в которых 1) непосредственный доход известен только статистически, но новое состояние определяется точно; 2) новое состояние случайно, но доход строго определен. Во всех таких задачах первым этапом является выбор функции критерия. Обычно в качестве таковой принимается математическое ожидание дохода. В редких случаях приходится вводить более слож- сложный критерий, например такой: «Максимизировать вероятность того, что доход превысит некоторую фиксированную величину». Мы во всех случаях используем ожидаемое значение некоторой функции критерия. Предположим, что в предыдущем численном примере переход в новое состояние задан стохастически, так что решения влияют только на вероятности различных переходов. Обозначим через рк вероятность движения по горизонтали при рещений к и через 1—рк — вероятность движения по диагонали. Новое рекуррентное соотношение будет иметь вид /(*\ /) = т\п{рк[п{г> /; *" + 1, /) + /(* + 1, /)] + + A-рк)[п{1, /; *+1, /-1) + /(* + 1, /-1)]}. C) где /(*', /) теперь означает минимум ожидаемой суммы, если началь- начальная точка есть (*, /) и используется оптимальное поведение. Вычисления при этом в точности такие же, как прежде. Сначала мы вычисляем /C, /), потом /B, /), /A, /) и, наконец, /(О, /). Наше оптимальное поведение имеет теперь несколько другую интерпретацию. Вместо наилучшего пути вычисление покажет нам, какую точку линии А нужно принять за начальную и какое ре-
64 С. Дрейфус шение выбрать1). После того как шаг пройден и новое состояние определилось как результат случая и нашего решения, мы выбира- выбираем из таблицы решений новое решение. Такой процесс полностью использует всю совокупность данных, порождаемых при вычисле- вычислениях с помощью динамического программирования. Следует за- заметить, что этот процесс, как обсуждалось в замечании 6 разд. 4.2, можно осуществлять, двигаясь от линии А. 6. Адаптивные процессы Мы переходим теперь к новой и интересной области применения динамического программирования — к адаптивным процессам. Под адаптивными процессами мы понимаем такие процессы, в которых объект, принимающий решения, заранее не знает полностью точные правила игры. Это означает, что сведения о процессе должны быть использованы, когда мы ими располагаем. Часто оптимальное по- поведение предполагает, что вначале выбирают решения, увеличива- увеличивающие наши знания о ситуации, затем уточняют состояние системы и, наконец, действуют так, чтобы увеличивать соответствующий доход. Заметим, что если в стохастической модели соответствующие функции распределения предполагаются заранее известными, то мы не рассматриваем эту задачу как адаптивную. Однако если функции распределения предполагаются имеющими частный вид, но параметры, такие, как средние и дисперсия, не известны, то мы имеем простой пример адаптивного процесса. Для того чтобы эти замечания выразить в хорошо известном виде, рассмотрим задачу о наилучшем пути еще раз, с адаптивной точки зрения. Предположим, что решения приводят к случайному выбору пути. Пусть решение 1 влечет с вероятностью рг движение по горизонтали и с вероятностью 1—р1—движение по диагонали, и пусть аналогичные вероятности для решения 2 будут р2 и 1—р2. Предположим теперь, что р1 и р2 вначале неизвестны. Сделаем важ- важное дополнительное предположение, что применяется формула Лап- Лапласа—Байеса, которая предполагает, что если п выборов решения 1 дают в результате т горизонтальных движений, то соглашаются дей- действовать так, как будто бы р1—(т+1)/(п-\-2) и аналогично для ре- решения 2. При этих предположениях мы можем решить задачу введением в описание состояния вероятностей переходов. Пусть 1 3 Читатель легко мог бы сам убедиться, что если р±= -^и Р2~~4 (исклю" чая самую нижнюю горизонталь, где возможно только движение вперед), то оптимальной начальной точкой является тогда @,1) и ожидаемая стои- 471 мость при этом равна оо •
Динамическое программирование 65 т2) Тогда = ГШП + 2 ожидаемая минимальная стоимость оптималь- оптимального поведения с начальной точкой (*, /), где раньше решение 1 было выбрано пх раз и дало в результате т1 горизонтальных движений, а решение 2 было выбрано г—пг раз и дало в ре- результате т2 горизонтальных движений. п и + /(*' + 1, /— 1, /?! + 1, тъ т2)]; +1, /, «!, тит2 + 1)] — 1, п 19 т2)] •D) Задача решается в результате последовательного вычисления ДО, /, 0, 0, 0), минимизирования этой функции по начальным точ- точкам / и использования в качестве начального решения такого ре- решения, которое приводит к вычислению величины /@, /, 0, 0, 0). Что бы ни случилось, мы придем в новое состояние при 1=1, для которого оптимальное решение уже было определено. Несмотря на то что объем задачи, измеряемый числом перемен- переменных, описывающих состояния, увеличился, первоначальная форма- формализация осталась той же, что и раньше. Дальнейшие исследования должны выявить лучший метод, ука- указывающий, какая информация необходима и по каким правилам дол- должны вычисляться оценки необходимых параметров1). *) Дальнейшие замечания о стохастических и адаптивных задачах управ- управления см. в [11 ].
66 С. Дрейфус 7. Специальные методы. I. Множители Лагранжа Большое количество ранее развитых специальных методов ока- оказалось приложимым в определенных областях применения динами- динамического программирования. Однако только два из них мы будем здесь обсуждать. Как читатель уже знает, основным препятствием для широкого применения динамического программирования является длина вектора, описывающего состояния. Если для достаточно полного описания состояния необходимы 10 переменных и каждая перемен- переменная может принимать, например, 10 значений, то для решения за- задачи должна быть вычислена и сохранена последовательность из 1010=10 000 000 000 значений функций. Это превосходит возмож- возможности современных вычислительных машин. Поэтому при практи- практическом подходе к задаче мы должны ограничиться задачами с двумя, тремя или четырьмя переменными, описывающими состояние, каж- каждая из которых принимает 10 или 12 значений. Ясно, что исключе- исключение из задачи даже одной переменной состояния дает громадную экономию. Для этого вводятся множители Лагранжа, используемые в соединении с методами динамического программирования1). Предположим, что нам требуется распределить недостаточное количество товара по предприятиям. Если мы рассмотрим эту за- задачу как многошаговый процесс, в котором мы распределяем товар во времени — пример того, как статическая задача искусственно делается динамической,— описание состояния на произвольном шаге должно, естественно, включать количество нераспределенного товара, имеющегося в распоряжении, так же как и любую другую информацию, необходимую для задачи. Однако, назначив «цену» использованию товара и включив эту цену в функцию критерия, можно контролировать количество распределенного товара без явного включения ограничений в формулировку. Задача тогда сво- сводится к отыскиванию такой «цены», которая бы дала в результате оптимальное поведение, удовлетворяющее ограничению. Искус- Искусственная «цена», обычно обозначаемая X, приводит к классическим вычислениям множителей Лагранжа в задачах, включающих непрерывные изменения. Недавно было продемонстрировано, что вычисление'Этой «цены» может быть проведено автоматически на электронных машинах. ) Это замечательное вычислительное применение известного аналити- аналитического аппарата впервые было указано Беллманом в Ргос. Маг. Асад,. Зы., 42 A956), 767—769, и иллюстрировано числовыми примерами Дрейфусом в статье Оупагшс Рго^гатгшп^ 5о1и1юп о! АПосаНоп РгоЫетз, пере- переданной в семинар по исследованию операций Иллинойсского технологичес- технологического института в июне 1957 г.
Динамическое программирование 67 Очень простая вариационная задача с ограничениями (для которой аналитическое решение было найдено Магнусом Гестенсом) была решена совершенно автоматически на 1ВМ-704 буквально за не- несколько минут с использованием функциональных уравнений. Вся процедура целиком, включая согласование множителей с ограниче- ограничениями, была выполнена без вмешательства человека. Ответы были проверены с точностью, какая только возможна в задаче, включаю- включающей дискретизацию непрерывных переменных. 8. Специальные методы. II. Последовательное уточнение Итеративные методы динамического программирования являют- являются примером мощных аналитических и вычислительных средств, называемых последовательными приближениями. Интересно, что в случае динамического программирования двукратное применение той же идеи приводит к поразительным результатам. Несмотря на то что эта концепция может быть применена несколькими способа- способами, мы обсудим здесь только одно такое применение. Мы проиллю- проиллюстрируем использование последовательного приближения решетка- решетками для получения наиболее точных результатов. Предположим, что задаче распределения поставлена в соответ- твие функция ГП1П П [ И §1(Х19 ДС/+1)] и требуется найти множество чисел х1,...,хдгс точностью до шестого десятичного знака, минимизирующих эту функцию при условии 0<х/<1. Подобное требование недавно встретилось в задаче о структуре кристалла, изученной Дж. Каном и Р. Кикути. Положив [и получим рекуррентное соотношение *Ь-1> Хк) + /*-1(**-1)Ь E) хк-\ Это уравнение показывает, что стоимость оптимального множества хь 1 = 1, . .. , А, есть сумма стоимости оптимального множества Хр /= 1, . . ., к—1, плюс стоимость слагаемого Ёь(хк-ь хкI)- Величина Хъ-1 выбирается так, чтобы эта сумма была минимальной. Заметим, Здесь неточное выражение. Само &&(*й-ь хк) выступает в роли стои- стоимости.— Прим. ред.
68 С. Дрейфус что попарный выбор хь делает любой одношаговый процесс неопти-| мальным1). -\ Если мы потребуем шесть знаков точности для хь, то мы долнЫ ны будем создать таблицы приближений, имеющие 10е значений.^ Если, например, УУ=20, то мы должны будем вычислить 20x10^ чисел, что является нелегкой задачей даже для современных вычис* лительных гигантов. Предположим, что мы разбили интервал 0<^<Л на 10 частей и определили оптимальное решение, использующее эту грубую решетку. Это потребует 10 вычислений на шаг, а в целом 20x10— =200 вычислений. Если не существует относительного экстремума, могущего ввести нас в заблуждение, мы получим ответ с точностью до +Ю. Разбивая интервал хк±10~г на 10 частей, где хк есть оптимальный результат, полученный из первого вычисления, мы выполним на 200 вычислений больше и получим результат с точ- точностью ±B)@,1)/10=0,02. Восемь последовательных вычислений дадут точность шесть знаков после запятой для стоимости после 8x200=1600 вычислений, что значительно меньше чем 20Х106. Существует много комбинаций размеров решетки и последова- последовательных приближений, которые дают точность в шесть знаков. Восемь итераций на 10 точек решетки не всегда наилучшая комбина- комбинация, она была использована, чтобы показать громадную возможную экономию. Оптимальный размер решетки для заданной точности легко определяется. Как и в случае множителей Лагранжа, недавние эксперименты показывают, что полная последовательность вычислений может быть эффективно и быстро закончена на быстродействующих ци- цифровых вычислительных машинах. Естественно, метод последовательного приближения, такой, как описан выше, может теоретически привести к относительному экстремуму. Детальный математический анализ функций критерия позволяет обычно обнаружить возможность такой ситуации. Для большинства физических задач, таких, как задачи определения траектории, не существует значительного относительного экстре- экстремума, близкого к действительному оптимуму. Во всяком случае, этот метод полезен для улучшения предыдущих «лучших» резуль- результатов. Это часто является целью изучения исследования операции. 9. Задача логической замены В качестве последнего упражнения в формулировке задач и как пример современных возможностей динамического программи- В общем случае данное утверждение несправедливо. Это легко прове- проверить на примере §(хк_ъ хк)=д(хк_1)д(хк), &(х\)>®- — Прим. ред.
Динамическое программирование 69 рования мы обсудим несколько детальнее формулировку и решение интересной задачи, включающей замену ненадежного оборудова- оборудования. Задача была сформулирована и запрограммирована в корпо- корпорации РАНД (Д. Джоргансон, Р. Раднер, Н. Проджер, С. Дрейфус). Интересно заметить следующее. Несмотря на то что задача ка- кажется разрешимой методом стохастического программирования А. Манна и подходом Рональда Говарда к марковским процессам1), каждый из них приведет к наборам из нескольких тысяч уравнений. Предположим, что машина состоит из N ненадежных компонент и что машина годна к употреблению, если работают все N компо- компонент. Далее только при проверке можно определить состояние ком- компоненты. Предположим далее, что составные части изнашиваются экспоненциально, т. е. что вероятность надежности деталей в те- течение последующего интервала времени после проверки есть по- постоянная р, не зависящая от времени. (Легкие предметы, например, кажутся удовлетворяющими этому свойству.) Повреждения дета- деталей, замена или проверка подозрительной детали приводят к про- простою машины; длительность этого простоя называется «потерянным временем». Предположим, что детали не изнашиваются во время простоя. Мы будем искать такой способ замены деталей, который минимизирует итоговое предполагаемое время простоя. В распоряжении ремонтного рабочего находится множество ре- решений. Некоторые или все детали могут быть заменены, как только они становятся очень старыми и ненадежными. С точки зрения эко- экономичности более выгодна одновременная замена нескольких дета- деталей, чем выборная замена. Кроме того, стоимость проверки деталей на годность в нерабочее время относительно невысока, к тому же одновременная проверка более*эффективна, чем подетальная. В ко- конечном итоге, если проверка обнаруживает одно или более поврежде- повреждений, некоторые непроверенные детали могут быть заменены, так же как и известные плохие компоненты. Следовательно, образ действий при замене как функция от возраста детали с момента последней замены или проверки может иметь очень сложную структуру. Эта задача, рассматриваемая как процесс динамического програм- программирования, имеет столько же переменных, описывающих состояние, сколько компонент, и каждая такая переменная может принимать столько значений, сколько возможно возрастов компоненты. Под возрастом мы будем всегда понимать время с момента последней проверки или замены. Предположение об экспоненциальности за- закона старения делает эти два случая неразличимыми. Существенная особенность задачи состоит в том, что замена или многократная проверка может вызвать задержку на некоторое вре- время. Следовательно, новое состояние будет возникать не на следую- следующем шаге, а на несколько шагов позднее. Это требует хранения Этот метод будет изложен ниже.
70 С. Дрейфус нескольких таблиц функций, но не увеличивает нужного для вы- вычислений времени. Кроме того, поскольку мы интересуемся длительным, по существу неограниченным процессом, оптимальный образ действия требует для каждого состояния таких действий, которые не зависели бы от шага. Учет этого фактора гарантирует нам то, что общее время простоя даже для неограниченных процессов будет конечным. Решение было получено путем последовательного вычисления рекуррентных соотношений, изображающих все более и более длин- длинные процессы. Вычисления велись до тех пор, пока не происходила стабилизация. Стабилизация была определена как отсутствие из- изменений в поведении для Ь итераций, и разница во времени простоя для двух очередных шагов не более е. Обычно Ь берется равным 10, а 8=0,001. С учетным фактором, равным 0,9, для «сходи- «сходимости» было достаточно около 50 итераций. Задача была запро- запрограммирована для случая 3 компонент. При максимальном возрасте компоненты 10 это дало таблицу из 1000 чисел. На самом деле допустима любая комбинация числа компонент и максимальных возрастов, для которой размер получающейся таблицы не более 1800. При отведении на проверку, а потом замену всех компонент до 13 единиц времени таблицы функции использовали 23 400 из 32 000 ячеек оперативной памяти 1ВМ-704. Оставшиеся ячейки бы- были заняты таблицей управлений и программой из 5000 команд. Используемое фактически функциональное уравнение слишком сложно, чтобы его выписывать здесь полностью. Оно включает одно поведение, обозначаемое лГ («с!о поШп^»I), семь образов действия, включающих все возможные комбинации замен, и несравнимо более сложные решения, включающие проверку с последующей провер- проверкой и заменой в зависимости от первоначальных результатов про- проверки. Самая большая возможная задача, включающая только за- замену, требует приблизительно 15 мин машинного времени. Со все- всеми возможными проверками эта же задача может потребовать около 3—4 час. Для иллюстрации только что сказанного мы напишем начало рекуррентного соотношения для двух компонент в случае макси- максимизации ожидаемого рабочего времени. /?1} /?2, ^12> Сь С2» С р р суть время, требуемое на замену и проверку для двух частей (на- (например, /?12 означает время, необходимое для замены 1 и 2 части одновременно). Через р1 мы обозначили вероятность того, что 1-я компонента не выйдет из строя один период. Число 0<а<1 есть учетный фактор. Обозначим через «(*» /) — ожидаемое рабочее время для я-шагоЕого процесса, если компонента 1 вначале имела иозраст I и компо- компонента 2 — возраст /. «Ничего не делай».— Прим. ред.
Динамическое программирование 71 /„(*,/) = Шах + A — Р\)ас* тах A—р?2)ас»+*»Х и т. д. для С2 и С12. Читатель не должен удивляться тому, что 1) такая простая задача в действительности так усложняется; 2) такая усложненная задача на самом деле решается. Нужно учесть, что мы рассматриваем здесь многошаговую мно- многокомпонентную многоуправляемую стохастическую задачу. Обыч- Обычные задачи замены оборудования теперь легко и систематически решаются с помощью динамического программирования. 10. Марковские процессы Приведенная выше задача, которая может быть охарактеризо- охарактеризована как маркоЕскии процесс решения, служит хорошим введением в новый и важный метод, развитый Р. Говардом. Работа Говарда в особенности значительна тем, что осуществляет интересный синтез идей линейного и динамического программирования. Подобно сим- симплекс-методу, метод Говарда включает в себя последовательное улучшение поведения и дохода. Следовательно, сходимость легко доказывается, когда решение оптимально. Цена, которую платят за эти прелести,— очень ограничительные предположения. Линейность является существенным предположением, поэтому здесь в некотором смысле динамическое программирование прибли- приближается к линейному. Прежде чем говорить о марковских процессах решения, особых типах последовательных процессов решения, нам необходимо вы- выяснить что мы подразумеваем под марковским процессом.
72 С. Дрейфус Рассмотрим систему, которая в любой момент времени находится в одном из состояний (число состояний конечно), которые мы за- занумеруем числами от 1 до^У(* = 1,2,...,Л^), и предположим, что в дис- дискретные моменты времени /=0,1,... система переходит из одного из этих состояний в любое другое. Вместо предположения, что этот переход точно определен, допустим, что он стохастический и опи- описывается матрицей перехода Р = [р^], где A) рц— вероятность того, что данная система, находясь в момент / в состоянии *, в момент /+1 будет в состоя- состоянии /. Рассмотрим здесь важный случай, когда матрица перехода Р не зависит от времени. Это самый интересный случай. Введем следующие функции: B) х^г) — вероятность того, что система находится в мо- момент / в состоянии I (*'= при этом / принимает значения 0,1,... . Элементарные правила тео- теории вероятности дают тогда уравнения C) хм(!) = ^ Ру*/@ и = 1.2.....Л0, G) *о(/) = Су- Теория марковских процессов посвящена изучению асимптоти- асимптотического поведения функций лг^(/) при /~^со . Если все вероятности перехода ру положительны, то не очень трудно показать, что эти функции сходятся при /~^оо к величинам *(/), которые удовлетво- удовлетворяют «стационарному» уравнению N D) х(/) = И% хA) (/= 1, 2 Ы). (8) Что эти функции сходятся при /~^со, возможно, не очень не- неожиданно, поскольку свойство перемешивания содержится в пред- предположении, что все ру положительны. Что все-таки удивительно в этом случае, так это тот факт, что предельные величины не зави-^ сят от начального состояния системы, т. е. величин хо(/). 11. Марковские процессы решения Мы хотим теперь расширить понятие марковского процесса на более общие ситуации, в которых решение принимается на каждом шаге. Предположим, что на каждом шаге матрица переходов может быть выбрана из некоторого множества таких матриц, и обозначим матрицу, соответствующую решению ц, через Р(ф (ф
Динамическое программирование 73 Кроме того, предположим, что на каждом шаге изменяется не только состояние, но также и прибыль, которая является функцией начального и конечного состояний, а также решения. Пусть Щф = [г^(д)] изображает матрицу прибыли, опреде- определенную таким же образом, как и Р(д). Процесс такого типа называется марковским процессом решения. Задача, которую мы хотим рассмотреть, заключается в выборе по- последовательности решений, которая будет максимизировать ожи- ожидаемый доход от Л^-шагового процесса, если задано начальное со- состояние системы. //./. Пример—задача о такси Прежде чем приступить к аналитическому исследованию задачи, рассмотрим, насколько естественна постановка таких задач. Для иллюстрации Говард предлагает упрощенный вариант работы так- таксомоторного парка. Преимущество примера такого рода состоит в том, что он дает нам возможность выяснить конкретный смысл таких терминов, как «матрица переходов», «альтернативные решения» и т. д. Предположим, что водитель такси имеет область действия, вклю- включающую три города. Если он находится в городе «1», у него три аль- альтернативы: 1. Он может ездить без определенного маршрута в надежде по- посадить пассажира, когда тот его окликнет. 2. Он может направиться к ближайшей стоянке и ждать в оче- очереди. 3. Он может стоять у тротуара и ждать вызова по радио. В городе «3» у него те же самые три возможности, нов городе «2» последняя альтернатива не имеет места, поскольку там отсутствует система вызова по радио. Для любого данного города и для любой данной альтернативы в этом городе существует вероятность, что следующая поездка бу- будет в каждый из городов «1», «2» или «3». Известна прибыль от каж- каждой такой поездки. Вероятности переходов и прибыли зависят от альтернативы, потому что с каждой альтернативой связаны различ- различные клиенты. Произвольно выбранные данные для задачи показаны в табл. 1. Как пример интерпретации табл. 1 рассмотрим ее предпо- предпоследнюю строку. Из нее видно, что если водитель находится в городе «3» и решает ехать на стоянку, то с вероятностью 7е он посадит пассажира» ко- который пожелает ехать в город «1» (прибыль=6), с вероятностью 3/4— ехать в город «2» (прибыль=4) и с вероятностью 1/8— ехать внутри города «3» (прибыль=2).
74 С. Дрейфус ■Щ Таблица 1 1 Состояние (город) 1 2 3 Альтернатива 1 2 3 1 2 1 2 3 Вероятность перехода 1/2 1/16 1/4 1/2 1/16 1/4 1/8 3/4 2 1/4 3/4 1/8 0 7/8 1/4 3/4 1/16 3 1/4 3/16 5/8 1/2 1/16 1/2 1/8 3/16 Прибыль 10 8 4 14 8 10 6 4 2 4 2 6 0 16 2 4 0 3 8 4 4 18 а 8 2 8 В этой задаче у нас три состояния, т.е. N=3. Существует три аль- альтернативы в состояниях 1 и 3 и две в состоянии 2, т.е. пх=3, лг2=2, п3=3. Имеется 3x2x3=18 возможных поведений. Если водитель такси знает, что он может сделать п поездок в те- течение целого дня, то он сможет использовать приводимый ниже ал- алгоритм для определения оптимального поведения путем последо- последовательной аппроксимации в функциональном пространстве. Однако если мы рассмотрим эту задачу как неограниченно про- продолжающийся процесс, то алгоритм «пространства поведений» Говарда, приводимый ниже, становится привлекательным. После того как будут развиты методы решения, мы возвратимся к этой задаче и покажем ее численное решение. 11.2. Аналитическая формулировка Используем теперь методы функциональных уравнений для по- получения аналитической формулировки задачи, описанной выше. Пусть для *'=1,2,..., N. л=0,1 ... . A) МО—ожидаемая прибыль, получаемая при реализации п-шагового процесса, начинающегося в состоянии I и использующего оптимальное поведение. Заметим, что п соответствует длине процесса, тогда как /, использо- использованное в предыдущих частях, обозначало время. Принцип оптималь- оптимальности дает рекуррентные соотношения N B) МО тах я (9) для /1=1,2,... , причем /0@=0- Оптимальное поведение предлагает вектор (<7ЛA), ?лB),...,?л(Л0), определяющий выбор, делаемый в /-м состоянии, когда остается п шагов.
Динамическое программирование 75 Можно строго вывести из этого уравнения, что для каждого про- процесса при п-+оо оптимальное поведение зависит от состояния и не зависит от шага. Это утверждение является основой метода Говарда. 12. Метод пространства поведений Говарда Элементы метода итераций в пространстве поведений, примени- применимые к неограниченным процессам и основанные на идеях, выска- высказанных раньше, разработаны Рональдом Говардом. Мы обсудим этот метод, который дает оптимальное поведение для очень длинных процессов (т. е. «стационарного процесса»), где решения зависят только от состояния и не зависят от шага. Кроме того, мы примем его систему обозначений, для того чтобы было легче разобраться в написанном им. Обозначим через A) V? — полный ожидаемый доход от реализации /г-шагово- го процесса, начинающегося в состоянии I и ис- использующего фиксированное поведение. Легко видеть, что V удовлетворяет рекуррентному соотношению B) Уп. = 1>ри(ги + У<}->). A0) Следовательно, для больших п C) если все состояния принадлежат некоторой цепи. Это будет очевид- очевидно в том случае, когда все р^О1). Данное уравнение утверждает, что доход в общем случае состоит из двух частей: стационарной части п§, определяемой поведением при м-^оо , и случайной части VI, которая зависит только от начального состояния. Подстановка предельного выражения C) в соотношение B) дает D) V, + п§ = Ъ рц[ги + V^ + (п-^)ё]. A2) /—1 N Так как по определению Ъ рг] =1, это соотношение упрощается и приводится к виду N E) ^ + О/ = ^ Л/'-у + »,) (» = 1. 2 /V). A3) /=■1 Понятие цепи подробно обсуждалось в [101 и может быть также най- найдено в любом солидном руководстве по марковским цепям.
76 С. Дрейфус 13. Операция определения значений \ Приведенная выше система состоит из N уравнений с АЧ-1 не: известными V! (*'=1,2,...,Л0 и §. Заметим, однако, что добавление' постоянных ко всем ю1 не изменяет уравнения. Это значит, что пред- представляют интерес только относительные величины ьь а не их аб- \ солютные значения. Следовательно, можно взять юь произвольно и получить N уравнений с N неизвестными. Положив 1^=0 и ре- решая эти уравнения, получим среднее значение дохода § и относи- относительные величины VI, соответствующие различным начальным со- состояниям, для фиксированного поведения. Говард называет этот способ определения дохода и величин Ю;^ для данного поведения операцией определения значений @03). 14. Метод улучшения поведения Перейдем теперь к центральной проблеме. Пусть имеется неко- некоторое поведение, т. е. выбор альтернатив для каждого состояния. Мы укажем, как оценивать это поведение. Может быть, его имеет смысл оценивать на основе той информации, которую мы получаем при отыскании лучшего поведения? Под «лучшим» мы здесь подра- подразумеваем поведение, обеспечивающее больший ожидаемый доход. Возвращаясь к системе уравнений A3), найдем оттуда A4) Вспомним, что р1;- и г{] зависят от частного поведения, которое мы выбрали для продолжения. Используя значения V^^ связанные со старым поведением, мы можем выбрать новое поведение так, чтобы правая часть A4) была максимальной. Обозначим его через к и выберем для каждого I такое к, которое максимизирует выражение /><*> (Г|*> +V^)- V, где рФ обозначает вероятности переходов, связанных с альтерна- альтернативой к в состоянии I. Поскольку § и VI определены для данного поведения, вышеприведенное правило для выработки нового по- поведения называется методом улучшения поведения (МУП). Можно доказать, что это правило 1) при каждом его применении приводит к поведению с доходом, по крайней мере не меньшим, чем на предыдущем шаге;
Динамическое программирование 77 2) приводит в конце концов к оптимальному поведению. Доказательство данных утверждений сильно зависит от линей- линейности этой простой модели. Однако не очевидно, что решение, оп- определяемое доходом и величинами некоторого поведения, приведет к поведению с большим доходом. 15. Решение задачи о такси Вернемся к задаче о такси и применим приведенное выше правило. В качестве начального приближения выберем вектор 1 1 1 который обозначает, что во всех городах мы действуем согласно аль- альтернативе 1. Это поведение максимизирует ожидаемый непосред- непосредственный доход. Для этого образа действия имеем матрицу вероят- вероятностей перехода 1 — 4 2 1 Т и вектор непосредственного дохода О 1 N V Риги N 8 16 7 Обозначим Ал руГу через ць так как ожидаемый доход зависит только от I. Выпишем уравнения для ^, положив ^з^О: V^ + 02. + 16 +
78 С. Дрейфус Система имеет следующее решение: ^=1,33, У2 = 7,47, 03 = О, #=9,2. Используя альтернативу «всегда двигаться», водитель в среднем будет получать 9,2 за поездку. Обращаясь к МУП, мы вычислим величины дс для всех I и к: к 1 2 3 1 2 1 2 3 10,50* 8,43 5,51 16,67 21,75* 9,20 9,66* 6,75 N Максимум. См. следующий параграф. Мы видим, что для ь — \ число в правом столбце максимально, когда к=\. Для г=2 или 3 оно максимально, когда к—2. Други- Другими словами, наше новое поведение есть 1 2 2 Оказывается, что, если такси находится в городе 1, ему нужно все время ездить, если оно в городе 2 и 3, ему следует направляться на ближайшую стоянку. Теперь имеем
Динамическое программирование 79 2 1 16 _1_ 8 4 7 8 16 1 ■ ■ 8 ш 8 15 4 Обращаясь к 003, решим уравнения — — — 10 — о 4+ о 3 — 4 При у3 — 0 получим -V 16 3» 1 — о ^==3,88, у2= 12,85, У3= = 13,15 Заметим, что § увеличилось с 9,2 до 13,15, что и требова- требовалось, так что такси в среднем заработает 13,15 за поездку, Применим МУП к этим величинам 3 * 1 2 3 1 2 1 2 3 Максимум. ^ + 2р?у 7=1 9,27 12,14* 4,91 14,06 26,00* 9,26 12,02* 2,37
80 С. Дрейфус Новым поведением является, таким образом, В = , т. е„ такси должно ехать к ближайшей стоянке независимо от того, в каком городе оно находится. Для этого поведения Ш = 16 1 16 \_ 8 3 4 7 8 16 16 8 ~2 — ,75" 15 4 _ Возвращаясь к 003, решим уравнения 1 = 2,75 +-^-V1 + — V2 16 4 = 15 + -—. У1 + 1о о 16 —- 1о При У?= О — — «! = —1,18, У2 = 12,66, У3=О, ё" = 13,34. Заметим, что произошло небольшее, но вполне определенное увеличение § с 13,15 до 13,34. Снова применяем МУП к N 1 1 2 3 г 1 2 3 1 2 3 * Максимум. 10,57 12,16* 5,53 15,41 26,00* 9,86 13,33* 5,40
Динамическое программирование 81 Новое поведение есть й = , но оно совпадает с предыдущим 2. поведением, так что процесс сощелся и ^ достигло своего максиму- максимума, равного 13,34. При этом водитель автомобиля должен всегда ехать к ближайшей стоянке в любом городе. Следуя этому образу действия, он будет в среднем за поездку получать прибыль 13,34, т.е. почти в полтора раза больше, чем при альтернативе «двигаться всегда», найденной при максимизации непосредственного дохода. Схема работы алгоритма 9 Заметим, что оптимальное поведение «всегда двигаться к стоянке» является наихудшим поведением в смысле непосредственного до- дохода. В последовательных процессах решения часто «журавль в небе» оказывается лучше «синицы в руках». 16. Более общая задача В наших рассуждениях мы требовали до сих пор, чтобы сущест- существовал единственный связанный с задачей доход §. Это значит, что существует только одна цепь, и, какое бы поведение мы ни выбрали, из любого фиксированного состояния можно перейти в любое дру- другое. В частности, этот факт заведомо имеет место, если предположе- предположена положительность всех р^-. Мы могли бы, однако, применить наш метод к более общему слу- случаю, включающему несколько цепей. Вот пример матрицы перехода, имеющей это свойство: 7 Заказ № 563
82 \Ра) = 1 ~2 1 2 0 0 С. Дрейфус 1 ~2~ 1 2 0 0 0 0 1 4 1 8 0 0 3 4 7 8 Для данной матрицы, из того, что начальное состояние 1 или 2, сле- следует, что мы не можем попасть в состояния 3 и 4, и, наоборот, из 3 или 4 нельзя попасть в 1 и 2. Если мы имеем соответствующую матрицу дохода, то существует один окончательный средний доход, связанный с начальными состояниями 1 или 2, и другой— с состоя- состояниями 3 или 4. В общем случае это приводит к разделению дохода: #!— доход для цепи 1, §2— доход для цепи 2 и т.д.Хделав такое за- замечание, Говард переходит к более общему алгоритму, который мы схематически покажем ниже.
Динамическое программирование 83 16.1. Общее решение Используя ру и ць для данного поведения, решаем двой- двойную систему уравнений N A5) л/ ,«, A6) для всех VI и д(. Это решение будет включать столько произ- произвольных констант, сколько существует независимых марков- марковских цепей; эти кснстанты могут быть положены равными 0. Для каждого состояния г определим альтернативу которая максимизирует V рц б), и примем ее за новое реше- # к ние в 1-м состоянии. Если Уру §] та же самая для всех /1 альтернатив, то решение должно быть выбрано на основании величин, а не доходов. Следовательно, если проверки величины дохода недостаточно, определяем альтернативу к, которая N максимизирует ц^ + 5] Р//^/, и принимаем ее за новое ре- шение в 1-м состоянии. Независимо от того, основывается ли улучшение поведения на доходах или величинах, если старое решение в 1-м сос- состоянии дает такой же высокий с точки зрения используемого количественного критерия результат, как любая другая аль- альтернатива, то мы оставляем старое решение без изменения. Это правило обеспечивает сходимость в случае эквивалентных поведений. Когда процедура будет проделана для всех состояний, будет определено новое поведение и получены новые матрицы \рц\ и [</г]. Если новый образ действий совпадает с преды- предыдущим, то вычислительный процесс заканчивается и найден- найденный образ действия будет наилучшим.
84 С. Дрейфус 17. Современные применения динамического программирования Для того чтобы дать читателю представление об области приме- применимости динамического программирования, мы кратко опишем не- некоторые задачи, которые решаются в настоящее время методами ди- динамического программирования. Подробности решения задач мо- могут быть найдены в приводимой литературе, которую по основным методам можно найти в [3] и [10]. 1. Оптимальная траектория спутника. Установить управление тягой и режимом расходования топлива, при котором спутник бу- будет выведен с максимальной горизонтальной составляющей ско- скорости на орбиту, имеющую определенную высоту ([4]). 2. Подпрограмма, хранящаяся внутри цифровой машины. Про- Программа, написанная для цифровой вычислительной машины, со- содержит много подпрограмм. Некоторые из них должны постоянно храниться во внешней памяти из-за ограниченного объема опера- оперативной памяти. Длина каждой подпрограммы известна, так же как и время, необходимое для переноса подпрограммы из внешней па- памяти в оперативную в случае подпрограммы, хранящейся во внеш- внешней памяти. Известно также число имеющихся в распоряжении ячеек оперативной памяти. Какие подпрограммы нужно хранить в оперативной памяти, чтобы минимизировать суммарное время ра- работы программы? ([8]). 3. Проблема марганца. Марганец может или импортироваться, или производиться внутри страны. Производство внутри страны потребует наращивания американских промышленных мощностей. Стоимость импорта, стоимость создания собственной промышлен- промышленности и стоимость ее продукции зависят от международной полити- политической ситуации. Пусть задан вероятностный политический прог- прогноз. Каким путем лучше всего получать марганец? ([7]). 4. Оптимальное соотношение ступеней для ракет. Сколько и какого размера ступеней нужно для создания наиболее эффектив- эффективных ракет? ([14]). 5. Оптимальное складирование и управление запасами. Найти схемы оптимального управления запасами и оптимального склади- складирования оборудования для системы объектов при учете влияния- функционирования оборудования в различных местах ([9]). ЛИТЕРАТУРА I 1. ВеПтап К., ТЬе ТЬеогу о! Эупагшс Рго&гатгшп&, Ви11. Атег. МаНгЛ Зое, 60 A954), 503—515. * 2. В е 1 1 т а п К., Еяшртеп! Нер1асетеп1 РоПсу, /. о[ 81АМ, 3 A955),^ 133—136. I 3. ВеПтап К., Эупагшс Рго&гатгшп&, Рппсе1оп итуегзйу Ргез5,| Рппсе1оп, N. Л., 1957. (Русский перевод: БеллманР., Динамическое^ программирование, ИЛ, 1960.) | |
Динамическое программирование 85 4. В е 1 1 т а п К., Эг еу 1из5., Ап АррНсаИоп о! Эупаггпс &^ 1о 1Ье Ве1егттаиоп о! Орита1 5а1е1Ше Тга]ес1огу РгоЫетз, ]. ВгШвН Шегр1апе1агу 8ос, 17 A959), 78—83. 5. С а г 1 а 1 п о Т., О г е у ! и 5 5., АррПсаИоп о! Бупа1шс & 1о 1Ье А1гр1апе МЫтит Т1те-1о-СНтЪ РгоЫет, Аего Еп&г. 16 A957), 74—77. 6. Эг еу I из 5., А ОепегаНгес! Еяшртеп! Нер1асетеп1 51ис1у, /. о/ 31АМ, 8 A960), 425—435. 7. ЕсопотеЫс Апа1у515 о! 1Ье 11п11ес1 51а1ез Мап^апезе РгоЫет, Есопоте!- г1с НезеагсЬ Рго^гат, НМЗ, Рг1псе1оп ип1уегз11у, Рппсе1оп, N. Л., Ос1. 1958. 8. Сготез1е1П А. А., ЗиЬ Рго^гат 51ога^е шНЫп а В1^Иа1 Сотри- 1ег: А Саг^о Ьоас11П^ РгоЫет, 1лпсо1п ЬаЬога1огу НерогГ 22О-0006, Аи^. 1959. 9. Н а п з з т а п п Р., ОрИта1 1пуеп1огу ЬосаИоп апс! Сол1го1 1П РгоAис11оп апс! Э151г1Ьииоп КеЫогкз, Орпз. Кез., 7 A959), 483—498. 0. Н о ^ а г д К-, Оупагшс Рго&гатпнп^ апс! Магкоу Ргосеззез, ТесЬпо1о^у Ргезз апс! \^Иеу, 1960. 1. К а 1 а Ь а К., РгосеесНп^з оГ 1Ье 5утроз1ит о! ОгсИпагу ЭШегегШа! ЕяиаИопз, Мех1со СИу, 5ер1. 1959. 2. К 1 1 е у V., О а з з 5. I., Ыпеаг Рго^гатт1П^ апс! А55ос1а1ес1 ТесЬп1яиез, ОрегаИопз НезеагсЬ ОШсе, ТЬе ЛоЬпз Норк1пз Уш'уегзНу, СЬауу СЬазе, Мс1., 1958. 3. 5 с Ь 1 а ^ е г К. Л., ОрИгшгаИоп о! а Уоп ТЬиепеи Мос1е1 оГ 1Ье Пгт Ьу Эупат1с Рго^гатт1п^, РШеегйЬ КаНопа1 МееПп^ оГ 1Ье ОрегаНопз НезеагсЬ 5ос1е1у, Мау 1959. 4. Теп Оу ке К. Р., Сотри1а1юп о! Носке! 51ер ^е1^Ыз 1о 1пШа1 Огозз ите1^Ы, 1е1 РгориЫоп, 28 A958), 338—340.
ОПТИМАЛЬНОЕ УПРАВЛЕНИЕ НЕЛИНЕЙНЫМИ ПРОЦЕССАМИ1) Е. Ли, Л. Маркус Введение В задаче оптимального управления мы задаемся системой обык новенных дифференциальных уравнений / у1) Л/ ) А> ) . . ., Л , Ы , ... ) Ц ^ ^р — 1 ) А/ у ... , П) у которая является математической моделью некоторого физическо- физического процесса. Задача управления заключается в выборе таких ве- вещественных функций и]'{г) (/=1,2,...,т) (управляющих перемен- переменных), определенных на интервале времени ^о^^Оъ чтобы решение х1A) изменялось определенным образом при ^"О^Л- Качество этого выбора измеряется с помощью некоторого критерия. Возмож- Возможно, например, требование выбрать и]'(г) (/=1,...,ап) из некоторого определенного класса управлений так, чтобы точка х1 (г) из за- заданного начального положения за кратчайшее время попадала в движущуюся определенным образом область С* @» или возможно требование выбрать и*(г) (/=1,...,#г) так, чтобы точка х'1(г) попа- попадала в О1 (г) за конечное время и чтобы энергия, затраченная на управление, была минимальной. Обычно критерием является зна- значение некоторого функционала от управляющих переменных и* (г) (/=1,...,т) и от управляемых переменных х\г) A = 1,...,#). Мы будем рассматривать задачу существования оптимального управления. Эта задача была решена для линейных дифференци- дифференциальных уравнений [2, 3, 9] и для некоторых нелинейных уравне- уравнений [8], однако наша теория включает в себя эти прежние резуль- результаты. В разд. 1 теоремы 1 и 2 устанавливают такие условия, при которых из существования одного допустимого управления, реша- решающего требуемую задачу, следует существование оптимального уп- управления. В разд. 2 находятся допустимые управления, которые дают решение для различных видов систем дифференциальных урав-< нений. \ ) Ьее Е. В., М а г к и з Ь., ОрИта1 Соп1го1 Гог ЫопПпеаг Ргосе55е5| ЛгсНШ !ог ЦаНопсй МесНатсз апй Апа1ут, 8 A961), № 1, 36—58. |
Оптимальное управление нелинейными процессами 87 — ...I..- .11. и -1.1 , —— I .. - —. | . -'■...I -.1 . п..-. . '-т .—м ... , I -..— щ ■■«..-...I ..—■ I ..— I. -I — . —, . ., — ,.. . 1. СУЩЕСТВОВАНИЕ ОПТИМАЛЬНОГО УПРАВЛЕНИЯ Рассмотрим систему дифференциальных уравнений их1 = /^г,х , ... , х » и , ... у и ) ^ = 1, ^ , . .. , /2^, аг где1) I кс }«^ ) III ) л ) и ) ••• у и ) I кс | л- у и § вместе с ~^-г {гуХуи) {1у к = 1, 2 , ... , п) являются непрерывными вещественными функциями в где #п—вещественное /г-мерное числовое пространство, а О—непу- О—непустое компактное подмножество пространства 7?т. Для каждого выбора измеримой при —оо<^0<^^^<оо век- вектор-функции и(г) — (и1(})у...уит(())у значения которой лежат в О система дифференциальных уравнений (*, и при заданных начальных условиях хо=х(го) имеет единственное абсолютно непрерывное решение х(^), определенное на некотором подинтервале интервала ^0*О<*Л- Это является утверждением те- теоремы существования Каратеодори для систем дифференциальных уравнений [4]. Заметим, что п(г) является измеримой тогда и толь- только тогда, когда каждая компонента а1(^),...,ат(^) является вещест- вещественной измеримой (по Лебегу) функцией. Решение х(г) является непрерывным и имеет производную всюду, за исключением множе- множества меры нуль, так что система A)«(о удовлетворяется почти всю- всюду. Если конечный интервал <0^^1 вырождается так, что 10=11, то в этом случае решением является просто единственная точка Определение. Управлением (или управляющей функцией) для системы A) с заданным непустым компактным множеством Йс7?/7г и с заданной начальной точкой хо(^Нп называется измери- измеримая вектор-функция и((), заданная на конечном интервале ^0^^ -^х, значения которойп(г)спи, и такая, что решение х(г) с началь- начальными условиями л'(?0)=х0 также определено в Яп для <0^^1- Из этих управлений нас будут интересовать такие, при которых х(^), выходя из заданной начальной точки ^0=^(^0)» попадает в заданную движущуюся область 0A). Для каждого I на заданном конечном интервале |ь<О<Сч мы определяем непустое компакт- компактное множество 0A)с2#п. Кроме того, 0A) зависит от г непрерывно. _ п *) В векторной форме л;=^1г ,хп) и |*|=21* '" 1=\
88 Е. Ли, Л. Маркус (Здесь мы используем метрику Хаусдорфа для расстояния между двумя непустыми компактными подмножествами X и У из Япу при которой расстоянием является наименьшее действительное чис- число й=й(Х, У), такое, что X лежит в ^-окрестности К, а К лежит в ^-окрестности X (см. [1]).) Если для каждого I область С(г) есть точка, то областью, в которую должно попасть х(г), будет непрерыв- непрерывная кривая. Если 0A) является постоянным компактным множест- множеством, то мы имеем задачу о попадании в неподвижную область (см. [10]). Пусть дана вещественная непрерывная в 7?1х7?лХ ^ функция 11) и функционал С(и)= | определен для каждого управления и(г) при /о^^Л и соответст- соответствующего решения х(г). Если ((гу х, м) = 1, то С(и) = г1—@ и функ- функционалом является время, в течение которого производится управ- управление. Определение. Дана задача управления: а) х1=[1([у хч и) A-=1,2,...,/г), б) в) г) О (*)с#япри - д) описанный выше функционал С(и). Определим Д=Д(/1(*, х, а),...,/л(^, х, и), 2, хо,С(^)) как множест- множество всех управлений п(г)у определенных на различных интервалах ^0<^<^1, ТаКИХ, ЧТО ПрИ ^0^^0^^1^Т1 х(/0)= Хо И X (гг) ^ О^). Управление и*(г) из А называется оптимальным, если С (и*) < С (и) для каждого управления п(г) из А. Теперь мы докажем основную теорему существования оптималь- оптимального управления. Примеры, следующие за теоремой, показывают, что оптимальное управление не обязательно существует, если не выполнены условия теоремы 1. Теорема 1. Пусть даны а) система дифференциальных уравнений т х1 = /'(/, хх, . . , хп, и1 , ... ит) = ё'Ц, х)+1>И'/{,х) и>
Оптимальное управление нелинейными процессами 89 =1,...,#)г, где функции &1{г,х), Н)(г,х), а также -^^{г,х), г({, х) (к=\,...,п) непрерывны в 7?1Х/?/г; б) непустое выпуклое компактное замкнутое множество 2с:^т; в) начальная точка хо(^#п; г) непрерывно изменяющееся на конечном интервале времени <^т1 непустое компактное множество 0@; д) функционал , х, и)=§0A, х)+^ /г°у- (г,х)и]\ причем §°A, х) и непрерывны в /?1Х/?Л. Предположим, кроме того, что множество А управлений, пере- переводящих систему из точки х0 в область О, таково, что: А) А яе пусто, Б) существует такое положительное В<оо, <шго. |#(^)|<В равномерно для всех решений х(г), соответствующих управлениям из А. Тогда в А существует оптимальное управление. Доказательство. Поскольку А непусто и соответству- соответствующие решения равномерно ограничены, то ш! С(и)=т>—оо для и ^ А. Либо А является конечным множеством, и в этом случае теорема тривиальна, либо мы можем выбрать такую последователь- последовательность управлений и^(г), ^<^<^(^ из А, что С{и^к)) стремится к т, монотонно убывая. Выберем подпоследовательность (не меняя обозначений), такую, что -> /* и (\к) -> г\ монотонно. Разберем случай, когда /(*> < Го < г\ < /\*> при к - 1, 2, 3, .... Другие случаи рассмотрим позднее. Тогда каждая и^\г) ограничена и измерима на интервале /о^^^1* и принадлежит гильбертову пространству Ь2И0*, гл* ]. Предположим, что ^0* <^*; если ^0* = ^г-ь* , то т=0 и ^0^0(/1*) и любое управление является опти- оптимальным. Замкнутая сфера в гильбертовом пространстве слабо ком- компактна [5], и, следовательно, мы можем выбрать такую под- 6 Заказ № 563
90 Е. Ли, Л. Маркус последовательность и(к\г), что икк)Ц)-± и Ц) слабо в 12[/* , г\ ]. В дальнейшем мы покажем, что и{1) при /* <^< /* принадлежит Д. Компактное выпуклое множество 2 с: Цт является пересе- пересечением конечного или счетного числа замкнутых полупространств (см. [1]). Пусть одно из таких замкнутых полупространств в Нт. Пусть М — подмножество [^,^], для которого и*(() лежит в + Ь < 0. Если М имеет положительную меру, то !>,«*' где <рт — характеристическая функция множества М. Но <; *.. - ^- *< иD)'(')+б] 1 + О Это невозможно, так как каждый член левой части неотрицателен. Следовательно, М имеет меру нуль. Так как рассматривается толь- только счетное число замкнутых полупространств, то и* (г) лежит в & почти для всех г(^ ио*, гх* ]. Переопределим и* (г) на соответствую- соответствующем множестве меры нуль так, чтобы и* {г) лежала в 2 для всех Рассмотрим теперь решение, соответствующее и* (г) при 10* * . Решением, соответствующим иЩ{) при ^^О является х^к)(г). Тогда (в векторной форме) | [8 E, *<*>(8)) + к E, х<к\з)) и{к)(з)
Оптимальное управление нелинейными процессами Выберем следующую подпоследовательность управлений так, чтобы при к-> со х{к\()->х\г) слабо на [ /* , /* слабо на [ /* , /* у^Лсхк^и па ] ^„ , I. слабо на Тогда для каждого фиксированного / при г* ^I^ 1Х Х\тхКК) A) = хо + Нт \д(8 х{к) (<>))-+ к($ х{к)(8))и 'о + Нт [^ E, ^^(в)) -г А(я, ^^(в)) ы(А) E)] Оз Таким образом, Следовательно, существует для каждого фиксированного /. Кроме того, х(г) абсолютно непрерывна на [ /*, /* ] и х ( /* ) = х0. Используя теорему Лебега [6] о сходимости, получим I E) ^ *) * так что л: (^) = л: (/) почти для всех г из [ /0 , ^ ) . Изменим определение **@ так, чтобы л:*(/) в точности равнялось х((), и покажем, что л: (/) является решением, соответствующим "*(/). Итак, б*
92 Е, Ли, Л. Маркус х A)=хо + нт „/с хщ3)\ + Н(з, х<Щз)) иЩз) аз * так что — V*_ _1_ \ су I с у 1(ч^1г/<? —I— 11ГП \ Ъ\ *\ * К—*-СО ш — Л E, х\з)) и(%)+Н E, /E)) и{к)(8)—к (з, + Л E, #*E)) и*(8)] й8. Поскольку а(^E) принадлежит компактному множеству 2 и По теореме Егорова [6] к E, х^к\з)) -±к{8, х*(з)) почти равномер- равномерно, мы имеем = Х о [§ E, Х*(8)) + /I E, /E) )^* Следовательно, х* (/) при 1*0 ^ ^ ^ /* является решением, соот- ветствующим управлению и (О- Далее, х(к){ *[к) )^0[ г{к) ) для каждого А = 1, 2, 3, .... Таким образом, И Если бы точка х ( /*) не принадлежала О ( /*), то нашлась бы такая окрестность N компактного множества О ( г\ ) , что точка х*( ^ ) не принадлежала бы замыканию Л/. Но О (/) с N при ^, достаточно близких к (*. Таким образом, х{к)(*\ ')^Л/Г при больших А, адс*(/*) не принадлежит /V. Эти утвержде- утверждения противоречивы и, следовательно, **(<*)(: С (/*), а УпРав" ление и* (/) при /* <^<^* принадлежит А.
Оптимальное управление нелинейными процессами 93 Вычислим теперь значение функционала для и*('). Имеем 1 т С ^ и ] = \ Ак) /-* О и * * 1 1 т Ига С( ы(А)) = Г в0 (/, /@)Л+Нт Г И Н° {(, х{к\()) и{к)'\()й1; о так же как и выше, находим, что Следовательно, а* (/) при г$ ^г^х является оптимальным управ- управлением. Вернемся к предположению, что » *\к) ~~^ *\ монотонно. Предположим, что соотношение (к) 1 не выполняется, а вместо него, например, имеет место „ Лк) ^ +* иг, <^ г, . Другие случаи можно рассмотреть аналогичным образом. Доопреде- Доопределим каждое управление и^к)(г) (по крайней мере для всех достаточно больших к) на интервале /0* <^<С^1* » положив для ^1(Л) ^) ^*. Снова определим слабый предел в и (/) = Нт и{к)({) при Мы должны показать, что каждое решение х(к\() при можно продолжить на интервал /0(/г)^^^1* , используя продол- продолжение соответствующего управления. Тогда мы покажем, что при ^* ^^л* и* (г) {-к и является оптимальным управлением.
94 Е. Ли, Л. Маркус Легко видеть, что все компактные множества 0(/) при лежат внутри некоторой сферы 5@, р) радиуса рис центром в на- начале координат. Таким образом, для достаточно малой разности (*1*—*1{к)) каждое х^к)^^к)) лежит в 5@, р) и продолжение реше- решения х^к)A) на весь интервал ?0(А)^^Л* лежит в 5@, 2р). Кроме того, Так же как и раньше, получаем, что \\тх{к) @ = для каждого / при /0 <^/ ^ 1Х . Кроме того, х (() является абсо- абсолютно непрерывным решением, соответствующим управлению и (/), и х [ /0) = х0. Далее, О ( ( \к) и Нт Таким образом, х*( /*) = Нт х*( М ИЛИ Следовательно, что и требовалось. жит в А. Наконец, 4с Таким образом, « (/) при ле- т '0
Оптимальное управление нелинейными процессами 95 стремится к пределу пг при к-±оо. Так же как и выше, най- найдем, что и, следовательно, и* (() при /^> <^ <^ является оптимальным управлением, что и требовалось доказать. Замечания. Рассмотрим А (/0) — подмножество А, для которого управления п(г) и соответствующие им решения хA) рассматрива- рассматриваются, начиная с фиксированного момента времени @. Если А (/0) не пусто и если решения хA)> соответствующие управлениям из А (/0), равномерно ограничены, то в А G0) существует управление, являющееся оптимальным относительно А (/0). То же имеет место для множества АG0, /1)сА(^0), для которого время управления является фиксированным интервалом / 0*0^^1- Если система диф- дифференциальных уравнений и подинтегральное выражение функ- функционала не зависят от времени, то всякому управлению из А соот- соответствует такое же решение, как некоторому управлению из А (т0) после соответствующего сдвига времени. Если С(и)у>т^>—оэ для всех управлений и из А или А(/о), то требуется только равномерная ограниченность \хA)\<СВ для решений х(г), соответствующих управлениям и(г), для которых С(и) близко к т. Достаточно также, чтобы /'(/, х, и) были определены и удовлет- удовлетворяли условиям теоремы при ^о^О^Оъ *€ ОаЯп и асЙс^ш, где 0—открытое множество в /?л, содержащее начальную точку х0, движущуюся область 0A) и имеющее компактное подмножество, внутри которого находятся все решения, соответствующие управ- управлениям из А или из А(/о). Условие А) теоремы, как будет показано в следующем разделе, связано с областью управляемости данной системы. Условие Б) выполняется, если 4 (/, х9 и) | < а (I = 1,2, . . . , п) либо < а (^', й = 1, 2, . . . , п) дхи - *• «) в [т0, х1]х/?лхО при некотором вещественном а. Следовательно, Б) всегда выполняется, если &1М, х) и к1, (г, х) являются линейны- ми функциями от х1 A = \у...уп). Следующие примеры иллюстрируют случаи, при которых опти- оптимальное управление или не существует, или не единственно.
96 Е. Ли, Л. Маркус Пример 1 • • • х = 51П 2 тг и ; у = соз 2 тги ; г = — 1 в Начальная точка — @,0,1), область О(г) при 0<^<^!<2 — фик- фиксированная точка @, 0, 0). Замкнутое множество Й — интервал *1 . Функционалом является С(и)=\ (х2-\-у2)сИу и рассмат- о ривается множество управлений Д@). Каждое управление иA) из А @) определено при 0<О<Л. Рас- Рассмотрим такие управления и^(^), для которых 51П 2 тг и{к){1) - 51п 2 тг к(9 со5 2 тг и{к){1) = соз 2тгй/ при й = 1, 2, 3, ... . Такие кусочно-непрерывные управления легко построить. Соот- Соответствующими решениями будут Таким образом, х{к){\) = 0, у{к\\) = 0, г(Л)A)=-0. Функционал для каждого г/6 (/) вычисляется и равен г ( /,<*> 1 _ Г ! ~ с05 2 ^ ^ /У/ — 1 " } ~~ ^ 2 2^2 "* ~~ 2 712 о Следовательно, Нт С ( и{к) ) - 0 и т = 0 является нижней гранью С (и) при & ^ Д@)- Однако при 0 <^ I <^ 1 не существует оптимального управления а* (Г), для которого 1 С (иГ ) = ( (х*2 + у*2) Л = 0. о Для такого оптимального управления и* (() необходимо, что- чтобы решение х* (/) = 0, у* (^) = 0. Отсюда следует, что 51П 2 ТС М* (*) = 0 И СО52тга*(/) = 0 почти для всех I. Но это невозможно и, следовательно, для данной задачи оптимального управления не существует. Заметим, что система нелинейно зависит от и, но условия А) и Б) теоремы 1 выполняются.
Оптимальное управление нелинейными процессами 97 Пример 2 • • • х = иг, У = и2, г = — 1 в Начальная точка — @, 0, 1), область С(г) при 0<^<^!<^2 — фик- фиксированная точка @, 0, 0). В качестве Й возьмем компактное, но не выпуклое множество точек окружности и^-\-и^ = \ в 7?2. Снова возьмем С(и)= ^ (х*+у2)сИ и рассмотрим управления А @). Ис- о пользуя управления и1(к)=со$2кИ, и2(к) = $\п 2пк1, к=1, 2,..., най- найдем, что 1п{ С(и)=0 для а^А(О). Однако в А@) не существует оптимального управления, обращающего функционал в нуль. Пример 3 х = 1, у = — хеУ и в Начальная точка — (—1,0), область С(г) при 0<^<^гО — фик- фиксированная точка A,0). Замкнутое множество Й — интервал * 1 *х 1 Функционал равен С(и) = ^ B — у)сН= ] B — у) о —1 Каждое управление в А@) определено при 0<^<^2 и дает реше- решение х(г) = г — 1, у(г). Всякое решение у(г) удовлетворяет неравенствам 0 < У (х) < — 1п х2 при х ={= 0 . Каждое непрерывное решение, проходящее через точки (—1, 0) и A, 0), на некотором интервале должно лежать ниже кривой у— 1 Таким образом, С(н)> ]B+ 1пх2)^л:=0 для любого управления — 1 «(^)^А@). Но для иA)=ив =2 — г при 0<^<3 мы вычисляем решение х = г — 1 и У (х) = — 1п B — г) + 1 Значение функционала для такого управления из А@) есть 1 С (и,) = ({2 + 1п B - е) + \ ах.
98 Е. Ли, Л. Маркус Таким образом, Нт С( и) = 0 . Следовательно, Ш С(и)—т=0 для иA)(^А@). Значит, в Д@) не существует оптимального управления. Заметим, что условие Б) теоремы не выполнено. Пример 4 • ■ X = 1, у = — XII В #2. Начальная точка — (—1, 0), область С(г) при 0<^/<^/1<^2 — фик- фиксированная точка A,0). Замкнутое множество й—интервал и 1 - Функционал С(и) = ^^-<-г сН= ]ггЧ • Каждое уп- равление иA) из А@) определено при 0^^2 и дает решение Всякое решение у(г) удовлетворяет неравенствам У (х) К о ПРИ — 1 < ^ < 1 Управления и+{1) = -\-\ и и_A)=—1 являются оптимальными и ми- минимизируют функционал. В данном случае в А@) оптимальное управление существует, так как условия теоремы 1 выполнены, но оно не единственно. Мы закончим этот раздел теоремой существования для непрерыв- непрерывных управлений, удовлетворяющих условию Липшица, которая справедлива и в том случае, когда /(^, х, и) является нелинейной вектор-функцией от и. Теорема 2. Пусть даны а) система дифференциальных уравнений х — / (^)^,...,д>, и у * » » у и ^ (I — 1,^, .. « ; /»-^) д!1 где 11(г,х,и) и т^, х, и) A,й=1,2,...,/2) непрерывны в б) непустое компактное замкнутое множество в) начальная точка хоаНп, г) непустое компактное множество О(^), непрерывно зависящее от г на конечном интервале ^С
Оптимальное управление нелинейными процессами 99 д) функционал С(и)= Г где /° (/, х, и) непрерывна в 7?1 х /?" X &. Для заданной положительной константы А рассмотрим класс А(Ыр Л) с: А управлений и(г), непрерывных и удовлетворяющих условию Липшица для всех пар I, V из некоторого подинтервала Ио, гх] интервала [т0, тх]. Предположим, что А) А(Ыр /1) не пусто, Б) существует такое положительное В<со, что \х(г)\ <В для #сел: решений х(г), соответствующих управлениям из А (Ыр Л). Тогда существует оптимальное управление и* (г) ^ А (Ыр Л), т.е. С(и* )<С(и) для всех и{г) ^ А (Ыр Л). Доказательство. Предположим, что множество А (Ыр Л) бесконечно, и обозначим для Выберем из А (Ыр Л) последовательность управлений {), Л0^<О<^(^ так, чтобы С(и^) монотонно убывало, стремясь к т при к, стремящемся к бесконечности. Выберем такую подпоследо- подпоследовательность (сохраняя для нее обозначение и^к\г)), чтобы и *\к) "^ ^ монотонно. Рассмотрим сначала случай, когда ^ ^ ^ ^ ^ ^ ^ = 1, 2, 3, . . . , исключая снова из рассмотрения тривиальный случай, когда /0* — ^^*. Используя теорему Асколи [6], выберем такую подпоследо- подпоследовательность этих управлений, чтобы иК (г) -> и (г) при к ОС равномерно на интервале ^0*^^^1* и чтобы и* {г) была непрерыв- непрерывной функцией, удовлетворяющей условию и* {г) — и* (Г)! <Л | * — Г | при V </, Г
100 Е. Ли, Л. Маркус Мы должны показать, что при ^0* ^^1* функция и* A) лежит в А (Ыр Л). Значения и* (*)(=.&, так как Ц компактно. Рассмотрим решения х{к)A), соответствующие управлениям и{к)(г) при ^ < / < /^ . В векторной записи ( Ю *>) [ (() E), и{р ,(р) о при /* < / < /* и положительных целых к и'р>А. Тогда /$*> Лр) , и{Р)(8)) \Aз - /E, Х(Р)(8), 11{Р) (8)) Выберем к настолько большим, чтобы о и (р) были малыми и гг (/) — иК (г) равномерно мало при 0 < /, . Воспользовавшись равномерной непрерывностью / (/, х, и) на интервале т0 < I < тх, а также тем, что | х \ < 5, и ^ й, получим ♦; 'о 'о откуда следует, что .1-.4..-1 2 ' 2 (9л; 5, х(з),иКР)(з и <Р)E))|^. Лр) *""(*) г0
Оптимальное управление нелинейными процессами 101 при сколь угодно малом в > 0. Запишем и дх Тогда 2 (/) < г + а | 2 E) ^5. 'о' Из этого интегрального неравенства следует а ( 1 ~ 'о) Таким образом, согласно критерию сходимости Коши, х{к)(г) -> л:* (/) равномерно относительно / ^ Г /*, /* 1 и х* (/) непрерывна при /^ </</*. Далее, , и{к)(з)) 4$ при ^ </</*. Следовательно, X* (/) = ^0 + ( / E, X* E), а* E)) и л:*(/) является решением, соответствующим управлению а* при /* </</*. Ясно, что х* ( /*) = х0. Кроме того, так что Поскольку то мы имеем
Ш Е. Ли, Л. Маркус Таким образом, и* {I) при /* < г < 1\ принадлежит А Aлр А). Более того, С(и*) = \\тС{и{к)) = и и*A) при ^о*^^^* является оптимальным управлением из множества А (Ыр А). Вернемся к предположению, что /(^ ->/0* и /(^)->/1* монотон- монотонно. Предположим, что, например, имеет место /(*> <^0* и ^^ ^О/. Доопределим каждое управление и^к)Ц) на всем интервале /@ЧК'Л положив иЩ) = и^(^) при /(*><К'Г- Для больших к мы можем продолжить также и соответствующие реше- решения х^к)A) на интервале /(^ <^/<^/1*. С другой стороны, равномерно на интервале /о < I <-- ^1 » и • а*(^) удовлетворяет условию Липшица с константой Л. Так же, как и выше, можно показать, что х^A)-^х*A) равномерно на ин- интервале ^0*<^^О1* и чтох*(^) является решением, соответствующим управлению и*(г). Кроме того, х*Aо*)=хо и х*(?1*) 6 С(^*). Таким образом, м*(^) при ^0*^^^1* является оптимальным управ- управлением в А (Ыр Л), что и требовалось доказать. Замечание. Замечания к теореме 1 здесь также имеют силу. Следствие. Предположим, что условия теоремы 2 выпол- выполняются для каждой константы Липшица р= 1, 2, 3, ..., и пусть и*рA) при г^р) ^^/(!Р) оптимально в А(Ыр А). Предположим до- дополнительно, что 1) областью 0A) при ъо^К^~1 является фиксированная точка О; 2) для каждого 5>0 существует при ^0(8)<С^^1(8) измеримое управление и8 (/) из А, такое, что С(и3)^т+8, где т=\п\ С(и) для и ^ А, и, кроме того, 1^ <тх — г при некотором г>0, не зависящем от 5; 3) |а-(/)| <В<сю равномерно для всех решений хA), соответствую- соответствующих измеримым управлениям из А; 4) для каждого 5>0 существует такая окрестность N точки О, что любую точку из N можно перевести в С посредством управ- управления из С1 (на интервале времени, не превосходящем г, с началь- начальной точкой ^0<т1—з), придающего функционалу значение, не превы- превышающее 5 (это условие рассматривается в теореме 4). Тогда ИтС(и*) = т = т\С(и) для / Доказательство. Ясно, что С(и*р)>С(и;+1), р= 1,2,3
Оптимальное управление нелинейными процессами 103 так что Пт С (и*) существует и не меньше т. Но для заданного измеримого управления и8{1) из А существуют управления из С°°г почти равномерно приближающиеся к и8A), так что соответствую- соответствующее решение имеет предельную точку в N. Но тогда точку х0 можно перевести в С с помощью управления ил(^) из А (Ыр А) при неко- некотором Л>0 и при этом значение функционала С(ил) будет сколь угодно близко к т. Следовательно, для р>Л мы имеем С(ид)>С(и;), так что Пт С(и*) = т, что и требовалось доказать. 2. ОБЛАСТЬ УПРАВЛЯЕМОСТИ В этом разделе мы изучим характер условия А) теоремы 1. Для простоты рассмотрим задачу о переходе из некоторой начальной точки в некоторую фиксированную точку, например в начало коор- координат. До сих пор мы считали, что множество & замкнуто, но в этом разделе мы дополнительно потребуем, чтобы нулевой вектор нахо- находился внутри &. Определение. Областью управляемости С для системы дифференциальных уравнений х1 = [1(х\ . . . ,хп, и\ . . . ,ит) (ь = 1,2,. . . ,/г) при заданном замкнутом множестве 0>а!^т называется множество всех точек хо(^Нп, для которых существует измеримое управление а(/)с:^2, определенное на некотором конечном интервале времени и переводящее х0 в начало координат1). Теорема 3. Рассмотрим систему а Д» — / уД',«««,Д')М )•••}(/ ) 1> — 1, • • • ,/1-, где /'(л:, и) ^С1 в %пх&. Предположим, что вектор и=0 является внутренней точкой замкнутого компактного множества Кроме того, предположим, что I1 @,0) -0 (*'= 1,...,/г). Если матрица || -к-у @,0) || имеет ранг п, то область управляемости С есть открытое связное подмножество пространства Я*1, содер- содержащее начало координат. Эту область называют иногда областью управляемости в нуль.
104 Е. Ли, Л. Маркус Доказательство. Если начало координат пространства Яп является внутренней точкой С, то из общих соображений не- непрерывности С открыто и связно. По непрерывности в О существу- существует такая окрестность N начала координат, что для всякого измери- измеримого вектора и(г) из Л^ при —1<^<Л соответствующее решение х(г), принимающее значение хо=О при ^=0, будет определено в %п при —1<^<О. Пусть фЧ^> м1,-..,*/) A=1,...,/г) при — 1</<Л есть решение данной системы дифференциальных уравнений при постоянном век- торе (а1,...,^) из N и <р1@, и)=0. Мы докажем, что || -±^{^90) II ПРИ некотором ^0<0 имеет ранг п. Следовательно, дифференцируемое отображение и -> х = ср (^0, и) переводит окрестность точки ио=О в окрестность точки х0 =0. Тог- Тогда существует окрестность точки х0 =0, из которой можно перейти в начало координат за время —^0>0> и каждое требуемое при этом управление есть просто константа. Итак, Находим п от \ди* При «0 = 0 выписываем матрицу с ди Тогда &2 $ /г\ г\\ ~ | я /л т -, /п\ О • - = / (и, и) 2 -Ь- / „ I и, и), 1б (и) — и. Отсюда / + — / 4- — /2 4- . Для малого /0 •о.0) имеет ранг/г, поскольку /ц@, 0) имеет ранг п. Теорема доказана. Следствие. Рассмотрим систему линейных дифференциаль- дифференциальных уравнений с вещественными постоянными коэффициентами п т к=\ /=1
Оптимальное управление нелинейными процессами 105 Предположиму что начало координат Ят является внутренней точкой замкнутого компактного множества О. Если матрица В имеет ранг я, то область управляемости С является открытым связным множеством в Яп, содержащим начало координат. Более трудная задача возникает в случае, когда число степеней свободы управления меньше, чем число степеней свободы решения, т.е. когда т<Сп. Этот случай рассматривается в следующей теореме. Теорема4. Рассмотрим систему где /(х, и)^Сг в ^"ХО. Предположим, что вектор и=0 является внутренней точкой замкнутого компактного множества Й/? Предположим также, что 1) /'@,0) = 0 (*'= 1,..., /г); 2) существует вектор ь(^Нт, такой, что Вь не лежит ни в ка- каком подпространстве пространства Нп размерности <^/г — 1, инва- 1 "Г 31 риантном относительно Л, где В = || ^-@,0) || и А= || -4- @,0) ^@,0) || и А= || 4 вещественные матрицы. Тогда область управляемости С есть открытое связное под- подмножество пространства Яп, содержащее начало координат. Доказательство. Рассмотрим окрестность Л^сй на- начала координат в Нт и ^х>0, такие, что для каждого измеримого вектора и(г) при —Х1<^<СС1 и иA)аМ соответствующее решение х(г) с начальным условием х@)=0 определено при — Определим в УУ семейство управлений = и* (/, с1, . . . , с,п) (/ = 1, . . . , т) при 1^1^^ и |||<е для некоторого з>0. Возьмем Ео 4- ... -4- X и (г, I) = V где V — вектор, упомянутый в условии 2), ПрИ при \г\>Н и гх— мало @<К1|<т1). Кусочно-непрерывная функция Х(г,Н) выбрана для удобства, но легко использовать функции из С00, ко- которые почти равномерно сходятся к ХA,Н) при каждом фиксиро- фиксированном Н.
106 Е. Ли, Л. Маркус Заметим, что*и(^, 0)=0 и, кроме того, функции дифференцируемы по г всюду, за "исключением точек {=-т- Пусть х{ (/, «!, . . . , 1п) = х' (/, I) (I = 1, . . . , я) есть решение, соответствующее управлению иA, I), причем Заметим, что хг(/, 0) = 0, ^'— 1, . . . , л, так как /''(О, 0) = 0. Далее, х (/, 8) является непрерывной функцией от /1+1 пере- переменных. Кроме того, для каждого фиксированного / преобразо- преобразование есть дифференцируемое преобразование окрестности начала ко- координат б Йп в /?", отображающее начало координат /?" в начало координат кп. Если для некоторого фиксированного I < 0 матрица @11 - дх1 0) , . . . , д] неособая, то область управляемости б* есть открытое связное подмножество из ^/г, содержащее начало координат, что и тре- требуется доказать. Далее, в векторной записи О а поэтому дх Ж (/, 0) = о E, 0) + В -|- E, 0) или о так что г(/) непрерывна вблизи I = 0. Кроме того, -^- сущест- существует всюду, за исключением точек г — -~, к=\, 2, . . . , п. Заметим, что к-й столбец матрицы г (/) удовлетворяет уравнению
Оптимальное управление нелинейными процессами 107 О Аг{к) (в) 4 {к) (*■ 1)] (к = 1, . . . , где индекс к {к = 1, 2, . ким образом, имеем (И при г(^@) = 0. Но эта система уравнений имеет решение = е . , п) обозначает номер столбца. Та- Та{к = 1, . . . , п) линейных дифференциальных ) -^-) йв. 'А | е~ о или о Таким образом, для 2! 'B) 2! — Л2 3! 1\ 4! 3! 'п) @ = е Л 2! ' 31 Докажем линейную независимость векторов (е~ы)г1(г), п) Определитель Вандермонда 2 отличен от нуля, следовательно, достаточно доказать линейную независимость векторов
108 , Е. Ли, Л. Маркус где НтО(^) = 0. Поскольку векторы Вю, АВъ, . . . , Ап~1Вю ли- нейно независимы, то и векторы г1(^), 22@> • • • > 2л @ линейно независимы, а матрица г(/)— неособая, что и требовалось дока- доказать. Следствие. Рассмотрим систему У\? —— / I Л ^ • » • ^ ^л» , ь*- , • • • , ь*" I \1" '" X , • • • , /1/1, /(л:, «) ^С1 в #пХ & и начало координат в Ят является внутрен- внутренней точкой компактного множества Й. Предположим, что 1) /'@,0)=0 A=1,..., я), 2) существует вектор ю^Цт, такой, что Вь не лежит ни в ка- каком подпространстве пространства Яп размерности <^п—1, ин- инвариантном относительно А. Предположим также, что система х1 — /' (я1, . . . , хп, 0, . . . , 0) (I = 1, . . . , п) в целом асимптотически устойчива1) по отношению к началу коор- координат в 7?л. Тогда область управляемости С есть все пространство Следствие. Рассмотрим уравнение . . . + ао(х, х\ . . . , х^п~х)) х = и, где коэффициенты а-1(х1,х2,...,хп) ^С1 в #п и \и\ <^з для некоторого в>0. Запишем соответствующую систему первого порядка хп = —ал-1 (*1, • • • , а:л) хл — ... —а0 а0 (х19 . . . , дсл) хг + и См. работу [12]
Оптимальное управление нелинейными процессами 109 Если система 0 \*^1» * * * ' ^ п) 1 в целом асимптотически устойчива по отношению к началу коорди- координат, то для системы 8) условия 1) и 2) теоремы автоматически удовлетворяются и область управляемости для 8) есть все Следствие. Рассмотрим систему Л —— / \*у у • • • у ™ 1 &^ 9 • • • 9 *^ / \** " А > • • • } 1 > где /(л:, а) ^С1 яра х^Нп и и^ 1]аЦт. Предположим, что для каж- каждой точки х0 ^ #п существует внутренняя точка и(х0) ^ V, такая, что 2) существует такой вектор ь^Нт, что Вь не лежит ни в каком подпространстве пространства Яп размерности <Ог—1, инвариантном относительно А, где В= \\ ~- (л:0, ^(х0)) II и А= II -4- (х0, а(х0)) || —вещественные матрицы. Тогда для каж* дои пары точек хг и х2 из #п существует кусочно-непрерывное управ- мние и(г) ^ I/, ^^(^2^ такое, что для соответствующего решения х(г) имеет место хA1)=х1 и х(г2)=х2. Доказательство. В доказательстве теоремы 4 мы от- отмечали, что существует окрестность начала координат, состоящая из точек, которые можно за конечное время перевести в начало координат с помощью кусочно-непрерывного управления. Кроме того, существует окрестность начала координат, состоящая из точек, в которые за конечное время можно перевести начало коор- координат с помощью кусочно-непрерывного управления. Эти же свойства сохраняются для каждой точки х из Яп после соответствующего преобразования как х, так и и. Пусть теперь 5 — подмножество Нп, образованное точками, в которые можно за конечное время перевести хг с помощью кусочно- непрерывного управления. Ясно, что 5 одновременно является от- открытым и замкнутым множеством в Яп- Следовательно, 5=^ и хг можно перевести в х2, что и требовалось доказать (см. [7]). Замечания. В предыдущих следствиях условие асимптотической устойчивости системы х1=Р(хг,...,хп, и1,..., ит) при ^=0 (/=1,...,т) можно заменить условием асимптотической устойчивости при не-
ПО Е. Ли, Л. Маркус котором подходящем выборе функций и>=и> (х). Для частного вы бора функций и;=и;' (х), удовлетворяющих условию асимптотиче ской устойчивости, рассмотрим функцию Ляпунова . Выберем м^2, минимизирующее [ Ъ ~д^!1{х, и)]. Если =1 этот минимум отрицательно определен при 0<|х]<оо для некото- некоторой 1ф:)>0, такой, что У(х)->со при [л|->оо, то область управляе- управляемости С есть все Кп. Рассмотрим теперь область управляемости для некоторых диф- дифференциальных уравнений второго порядка .. • х + / (х, х, и) = О, которые запишем на фазовой плоскости в виде системы первого порядка х — у 9 у = — / (х, у, и). Теорема 5. Рассмотрим дифференциальное уравнение , х, и)-О, г де [(х, у, и) ^ С1 для всех (х, у) и и(^&, причем й есть компактный интервалу в котором нуль является внутренней точкой. Предполо- Предположим, что а) /@, 0, 0) = 0, б) 1х(х, у, 0)> 0 и ?у(х, у, 0)>0, в) !и @, 0, 0) ф 0. Тогда область управляемости С есть вся плоскость (х, у). Доказательство. Система х — уу , у, 0) имеет якобиан ^ = [ * * ). Поскольку собственные значения ^ имеют отрицательные действительные части при всех (х, у), система в целом асимптотически устойчива по отношению к началу коор- координат (см. [12]). Однако решения не достигают начала координат за конечное время.
Оптимальное управление нелинейными процессами 111 Далее, А = ( !х @,0,0) — /„ @,0,0) у и - /„ (о.о. Возьмем одномерный вектор ю= 1. Тогда /„ (о.о.о)/ Л№; I /„•/, линейно независимы. Следовательно, область управляемости в начало координат есть некоторое открытое множество. Поэтому С есть вся плоскость (х, у), что и требовалось доказать. Следствие. Рассмотрим уравнение = и, где /(у) и §(х) ^С1 для всех (х, у) и \и\^г для некоторого з > 0. Предположим, что а) /@) = #@) = 0, б) всюду Г (у) > 0 и §' (х) >0. Тогда область управляемости С есть вся плоскость (х, у). Перейдем теперь от случая асимптотической устойчивости, ког- когда область управляемости С есть все пространство, к случаю ус- условно-устойчивой седловой точки, при котором С есть полоса на плоскости. Лемма 1. Рассмотрим уравнение 3) * + /(*) —ЙГ(*) = 0, М'ёМС1; /@)=#@)=0; Г(у)>0, §'(х)>0 для всех (х,у) из . Тогда семейство интегральных кривых уравнения 3) на фазовой плоскости (х, у=х) топологически эквивалентно семейству интег- интегральных кривых линейного уравнения Доказательство. Запишем уравнение 3) на фазовой плоскости в виде
112 Е. Ли, Л. Маркус Мы ищем гомеоморфное отображение Н2 в себя, при котором ин- интегральные кривые &) (направленные, но не параметризованные) отображаются на интегральные кривые системы = У> у — х у. Система &*) в начале координат имеет единственную особую точ- точку. Уравнения в вариациях для &*) вблизи начала координат та- таковы: = 8'@)х-Г@)у. Эта система имеет действительные собственные значения противо- противоположных знаков. Следовательно, &) и %) топологически эквива- эквивалентны вблизи начала координат. Таким образом, &) имеет в точности четыре интегральные кри- кривые, имеющие начало координат своей предельной точкой и приб- приближающиеся к этой точке с теми же направлениями, как и в случае системы X), т. е. вблизи начала координат в каждом квадранте ле- лежит одна такая интегральная кривая системы &*). Обозначим эти интегральные кривые номерами I, II, III, IV в соответствии с но- номерами квадрантов, в которых они приближаются к началу коор- координат. Эти интегральные кривые должны быть сепаратрисами в смысле Маркуса [13], что будет показано в дальнейшем. Исследуя &) на каждой координатной оси, легко заметить, что каждая из кри- кривых 1,11, III, IV целиком лежит в соответствующем квадранте. Вдоль I имеем, что их у ограничено сверху на каждом компактном интервале оси х. Следо- Следовательно, I является графиком однозначной функции от х при х>0. Аналогичное рассуждение показывает, что III также является од- однозначной на отрицательной полуоси х. Каждая из сепаратрис II и IV однозначна на сегменте оси х и уходит в бесконечность, т.е. х2-\-у2-*оо на II и IV. Рассмотрим интегральную кривую системы 6?), лежащую в сек- секторе плоскости, ограниченном сепаратрисами II и I. Здесь х=#>0 в первом квадранте и у<0 во втором. Таким образом, каждая ин-| тегральная кривая в этом секторе должна пересекать границу пер-| вого квадранта и находиться в первом квадранте для.всех большиг
Оптимальное управление нелинейными процессами ИЗ значений х, лежащих справа от такой точки пересечения. Следо- Следовательно, интегральные кривые в секторе между II и I линейно упорядочены (используется отношение включения для областей над кривыми) и образуют параллельное семейство, как описано Маркусом [13]. Аналогичный анализ проводится и для сектора между III и IV. В секторе, ограниченном IV и I, каждая интегральная кривая системы &) пересекает положительную часть оси х, которая в свя- связи с этим служит трансверсалью кривых этого сектора. Аналогич- Аналогичный анализ проводится для сектора, ограниченного II и III. Таким образом, только сепаратрисы системы &) и интегральные кривые I, II, III и IV имеют особую точку в начале координат. Поэтому, согласно общей теории конфигураций сепаратрис [13], заключаем, что &) гомеоморфно «2*), что и требовалось доказать. Замечание. Назовем интегральные кривые II и IV, входящие в особую точку системы &) с отрицательным наклоном, главными сепаратрисами, а I и III—минорными сепаратрисами &). Глав- Главные сепаратрисы &) вместе с особой точкой в начале координат обра- образуют топологический образ линии в 7?2, которая является однознач- однозначной кривой над всей осью у. Это же верно для минорных сепаратрис &) над осью х. Лемма 2. Рассмотрим две системы дифференциальных урав- уравнений'. где [(у) и §±(х) = §{х) ± С± при положительных константах С± принадлежат С1 в /?2. Предположим, что /@) =^@)=0; !'(у)>0у ' 2 \ \\ р р >0 всюду в Н2 и \§(х)\-^со при \х & 6 -» оо. Тогда каждая из систем 6?+) и &_) на фазовой плоскости (х, у =х) топологически эквивалентна системе * х = у, ( у = х — у. Главные сепаратрисы II + и IV± вместе с особыми точками сис- систем &±) образуют топологические образы линий, разделяющих плоскость на две части. При каждой фиксированной ординате глав- главная сепаратриса или особая точка системы &'_) лежит справа от соответствующей главной сепаратрисы или особой точки системы <&*+). Открытая полоса В между главными сепаратрисами и особыми точками систем с^+) и &*2) гомеоморфна открытой полосе между параллельными прямыми на плоскости. Кроме того, каждая минор- 9 Заказ № 563
114 Е. Ли, Л. Маркус пая сепаратриса системы &*±) пересекает главные сепаратрисы самое большее в одной точке (рис. 1). Доказательство. По лемме 1 топологическая конфигу- конфигурация решений <§%) или <&*_) такая же, как и у %). Ясно, что особая точка 6?„) лежит справа от особой точки 6?+) по оси х. По предыду- предыдущему замечанию главные сепаратрисы П_ и 1У_ вместе с особой точ- точкой с^_) образуют топологический образ линии, у которой коорди- координата х является однозначной функцией от у. То же справедливо и для системы <&*+). Предположим, что П+ и П_ пересекаются. В самой правой точ- точке пересечения наклон у П_ меньше, чем у П+, а это противоре- противоречит предположению о наличии пересечения. Аналогично 1У+ и IV. также не пересекаются. Поэтому открытая полоса В, ограниченная главными сепаратри- сепаратрисами и особыми точками систем <$%) и с^_), гомеоморфы а открытой полосе между двумя параллельными прямыми на плоскости. Фак- Фактически этот гомеоморфизм можно распространить и на замкнутые полосы. ///+ М- " IV- Далее, для минорной сепаратрисы, например 1+, имеем дг>Ои у>0. Следовательно, 1+ пересекает II. точно в одной точке. Анало- Аналогично III. пересекает 1У+ точно в одной точке, что и требовалось доказать. Теорема 6. Рассмотрим уравнение = и, ^ где [(у), §(х) ^С1 при всех (х, у) из К2 и & есть конечный веществен* $ ный интервал— С'.<и<С+, причем С+,С_>0. Предположим, | 1 ■■■■|
Оптимальное управление нелинейными процессамиП5 что /@)=#@) = 0, /'(*/) >0, В'(х)>0 в Я2 и\§(х)\-+оо при |*|-*оо. Тогда область управляемости С на фазовой плоскости (х> у=х) есть в точности открытая топологическая полоса В, ограниченная главными сепаратрисами и особыми точками двух систем со \ 1% == У Доказател ьство. Рассмотрим в 7?2 открытый четырех- четырехугольник С}, ограниченный кривыми 1+, 1У+ и П_, 111 Начало ко- координат 0 лежит в С1, и решение <§%), проходящее через 0, прежде чем оно попадет в 0, должно пройти через точку 0+ в ф, лежащую очень близко от Ш_. Выберем теперь в С} начальную точку р. Проведем через р ин- интегральную кривую системы &*+) почти до точки пересечения этой кривой с И_. Затем проведем интегральную кривую системы <&*_) вдоль границы С} до точки 0+. После этого перейдем на интеграль- интегральную кривую <&*+), которая проходит через точку 0. Если р лежит в полосе В, но над четырехугольником ф, начнем двигаться по интегральной кривой системы <&р+) почти до точки пе- пересечения с П_. Затем перейдем на интегральную кривую системы с^_) и будем следовать по ней до тех пор, пока не достигнем точки 0+. После этого следуем по интегральной кривой системы 6?+) вплоть до точки 0. Если р лежит в полосе В, но ниже четырехугольника ф, начнем двигаться по интегральной кривой системы с^_) почти до пересе- пересечения с 1У+. Затем войдем по интегральной кривой системы <$%) в ф и поступим далее так, как и раньше. Пусть теперь 2 — точка в Я2— В. Если 2 лежит в полуплоско- полуплоскости у^>0 и справа от особой точки с^_), то 2 нельзя вывести из это- этого квадранта с помощью управления —С_<О^)<^С+ и, следова- следовательно, 2 нельзя перевести в 0. Пусть теперь 2 лежит на интег- интегральной кривой системы • х = у, У = 8-(х)- где е(/) = м(^)-|-С_!>-0 является измеримой функцией на некотором конечном интервале времени. Таким образом, если 2 лежит в от- открытом секторе, ограниченном кривыми II- и 1_, то 2 обязательно лежит выше некоторой интегральной кривой системы с^.), и, сле- следовательно, используя параллельную структуру семейства интег- интегральных кривых в этом секторе, мы видим, что 2 нельзя перевести в 0. С)*
116 Е. Ли, Л. Маркус Если 2 лежит в открытом секторе, ограниченном кривыми IV- и 1_, то 2 обязательно входит в полуплоскость у >0 справ а от особой точки системы <^_), каково бы ни было управление и(г). Поэтому если 2 лежит справа от замкнутой полосы В, то 2 нельзя перевести в начало координат 0 с помощью измеримого управления и(<), где—С_<и(')<С+. Аналогичные рассуждения показывают, что если 2 лежит слева от замкнутой полосы В, то эту точку нельзя перевести в начало координат 0. По теореме 4 область управляемости С является открытым плос- плоским множеством. Поэтому С=В, что и требовалось доказать. Замечание. Каждую начальную точку из С=В можно перевести в начало координат 0, используя только решения системы <&*+) и &'_). Для любой точки из С необходимо сделать только два пере- перехода от одной из этих систем к другой (несмотря на то что рас- рассуждения в теореме используют в некоторых случаях три пе- перехода). В качестве последнего примера рассмотрим уравнение ван дер Поля • • • х + [х (х2 — 1) х -[- х — 0 с положительной константой (л. На фазовой плоскости это будет система х = у <, у = [л A X") у X. Начало координат есть единственная особая точка и является либо неустойчивым фокусом, либо узлом. Существует единст- единственное периодическое решение 5^. , которое является орбиталь- но асимптотически устойчивым и лежит между абсциссами х = = ± ^ (об оценках й^ см. [14]). Теорема 7. Рассмотрим систему дифференциальных урав- уравнений Г в х = у, { У =И1 —(х — иу\у — (х — и) | при фиксированном [а>0 а измеримом управлении и (/), опреде^ ленном на конечном интервале и таком, что |«(/)|<Сг для нЩ которого е > 0. Тогда область управляемости С в начало кооЩ динат 0 есть все /?2 всякий раз, когда з > й /2.
Оптимальное управление нелинейными процессами 117 Доказательство. Для каждой константы и, такой, что ^з, соответствующая система 6?^) имеет единственную особую точку 0,х, которая является неустойчивой, и единственное перио- периодическое решение, которое орбитально асимптотически устойчиво и лежит между абсциссами х=и-±й^. Если постоянная и удовлетворяет условию |^|<^!Х, то легко видеть, что 0,1 принадлежит С. Если |а|<^р. и если С пересе- пересекает периодическое решение 5!Х, то С ^/ Если, далее, з>^/2, мы можем выбрать постоянную и так, что |, и в то же время \2и\^>й^ . Тогда С пересекает5а , и, следо- следовательно, С = Я2, что и требовалось доказать. ЛИТЕРАТУРА1) 1. А 1 е х а п 6 г о Г Г Р., Н о р Г Н., Торо1о&у, ВегПп, 1935. 2. В е 1 1 т а п К., ОПскзЬег^ I., Огозз О., Оп Ше Ьап§-Ьап§ соп!го1 ргоЫет, ОцаН. У. Арр1. МаИг., 14 A956), 11 — 18. 3. Болтянский В. Г., Гамкрелидзе Р. В., Понтрягин Л. С, Теория оптимальных процессов A. Принцип максимума), Изв. АН СССР, сер. машем., 24 A960), № 1, 3—42. 3.*Понтрягин Л. С, Болтянский В. Г., Гамкрелидзе Р. В., Мищенко Е. Ф., Математическая теория оптимальных процессов, Физматгиз, 1961. 4. С о й 6 \ п § 1 о п Е. А., Ь е V 1 п 5 о п N. Ь., ТЬеогу оЮгсПпагу ЕIГГе- гепИа1 Е^иа1^оп5, Ые\у Уогк, 1956. (Русский перевод: К о д д и н г- тон Э. А., Л евинсон Н., Теория обыкновенных дифференциаль- дифференциальных уравнений, ИЛ, 1958.) 5. ОипГогс! М., ЗсЬ^аг^гЛ., Ыпеаг Орега1огз, 1959. (Русский перевод: Данфорд Н., Шварц Дж., Линейные операторы, ИЛ, 1962.) 6. О г а V е 5 Ь. М., Тпе ТЬеогу оГ РипсНопз оГ Неа1 Уаг1аЫе5, Ые^ Уогк, 1946. 7. К а 1 т а п Н. Е., Оп 1Ье §епега1 1Ьеогу оГ соп!го1 зузктз, 1п1егпа11опа1 Рес1ега11оп оГ Аи1отаИс Соп1го1 Соп^гезз, 4, 1960, 2020—2030. 8. К р а с о в с к и Й Н. Н., Об одной задаче оптимального регулирования нелинейных систем, Прикладная математика и механика, 23 A959), вып. 2, 209—229. 9. Ь а 5 а 1 1 е Л. Р., Т1те орИта1 согйго! зузктз, Ргос. N01. Асай. 5а., 45 A959), 573—577. 10. ЬееЕ. В., МеИюсЬ оГ ОрИтит Реес1ЬасЬ Соп1го1, 11туег5Йу оГ М1ппе- зо1а 1Ьез1з, МтпеароПз, М1ппезо1а, 1960. П. М а г к и 5 Ь., Ь е е Е. В., Оп 1пе ех1з1епсе оГ орНта1 соп1го1з, Тгапв. А8МЕ ]. о! Ваз1С Еп§1пеег1п§, 84 A962), 13—22. 12. М а г к и 5 Ь., У а т а Ь е Н., О1оЬа1 з1аЫШу сгИег1а !ог сИГГегеп11а1 зуз^етз, Озаса /. о/ МагН., 1961. 13. М а г к и 5 Ь., О1оЬа1 з1гис1иге оГ огсНпагу сИГГегепИа1 еяиаНопз 1п 1Ье р1апе, Тгапв. Атег. МаШ. Зое, 76 A954), № 1, 127—148. И. {] г а Ь е М., Уапа§1ага Н., 5 Ь 1 поЬ а г а У., РепосПс зоЫНопз о[ уап с!ег РоРз еяиаНоп ^ЦЬ с!атр1п§ соеШЫеп! 2—10, /. о[ 5с1епсе о/ ШгозЫта ЦпшегзНу A960). ) Звездочкой отмечены работы, добавленные редактором перевода.—Прим. ред.
Математическая лингвистика
ФОРМАЛЬНЫЕ СВОЙСТВА ГРАММАТИК Н. Хомский Предлагаемая ниже теория лингвистической структуры, частич- частично уже рассмотренная в предыдущей главе2), должна точно опреде- определять класс допустимых предложений, класс допустимых грамматик и класс допустимых структурных описаний, а также должна давать фиксированный и единообразный метод приписывания одного или нескольких структурных описаний каждому предложению, порож- порождаемому грамматиками допустимого класса. В предыдущей главе нами были предложены две концепции лингвистической струк- структуры — теория грамматик непосредственных составляющих и тео- теория трансформационных грамматик, которые обе удовлетворяют этим минимальным требованиям. Было отмечено, что эмпирическая неадекватность теории грамматик непосредственных составляющих совершенно очевидна; поэтому не предпринималось никаких осно- основательных попыток широкого применения ее к лингвистическим данным. Напротив, теория трансформационных грамматик (как о том свидетельствует все возрастающее число весьма существен- существенных данных) может дать нам достаточно точную картину граммати- грамматической структуры языка (см. работу [12] и библиографические ссыл- ссылки к ней)'. Тем не менее имеются серьезные основания интенсивно продол- продолжать изучение теории грамматик непосредственных составляющих. Как отмечено в предыдущей главе, эта теория вполне адекватно отражает некоторые важные аспекты грамматической структуры и, следовательно, в какой-то мере она, безусловно, является эмпири- эмпирически мотивированной. Далее, это единственная хоть сколько-ни- сколько-нибудь лингвистически значимая теория грамматики, которая на- настолько проста, что возможно изучение ее абстрактных свойств. По-видимому, углубленное изучение порождающих систем этого вида, так же как и описываемых ими языков, является необходи- необходимой предпосылкой любой попытки серьезно подойти к вопросам, ) СЬотзку N.. Рогта1 ргорег^езо! ^гаттагз. Напс1Ъоок оГ АШЬе- та11са1 РзусЬо1обУ, уо1. 2, сЬ. 12, ШПеу, 1963," 328—418. 2) Речь идет о гл. 11 этой же книги. Русский перевод этой главы поме- помещен в предыдущем выпуске настоящего сборника (Хомский Н., Мил- Миллер А., Введение в формальное изучение естественных языков, стр. 229). Гл. 13 также посвящена математической лингвистике и тесно связана с гл. И и 12; ее перевод будет помещен в одном из следующих выпусков настоя- настоящего сборника.— Прим. перев. 8 Заказ № 563
122 Н. Хомский касающимся формальных свойств более богатых и гораздо более сложных систем, которые действительно позволяют надеяться дос- достигнуть эмпирической адекватности в широком масштабе. В настоя- настоящее время это та самая область, где изучение математических мо- моделей имеет наибольшие шансы оказаться плодотворным и дать зна- значительное проникновение в лингвистическую структуру и лингвис- лингвистические способности носителя языка. В соответствии с терминологией предыдущей главы мы должны различать слабую порождающую способность теории лингвистиче- лингвистической структуры (т. е. множество языков, перечисляемых граммати- грамматиками вида, определяемого этой теорией) и ее сильную порождающую способность (множество структурных описаний, перечисляемых допустимыми грамматиками). Здесь мы в основном ограничимся рассмотрением слабой порождающей способности по той простой причине, что за малым исключением это единственная область, где были получены существенные результаты математического харак- характера. В конечном счете интерес, несомненно, представляет изучение сильной порождающей способности теорий, подтвержденных и проверенных опытом, а не изучение слабой порождающей способ- способности теорий, ценность которых в лучшем случае предположительна. Важно, чтобы технические детали математического исследова- исследования не заслонили основное назначение этих теорий — лингвистиче- лингвистическую значимость и соответствие опытным данным. Мы хотим за- заполнить пробел между моделями, доступными математическому изу- изучению, и моделями, подтвержденными опытными данными, но для этого прежде всего необходимо ясно отдавать себе отчет в существо- существовании и характере этого пробела. Поэтому, в частности, было бы большой ошибкой предполагать, что богатство и сложность порож- порождающих механизмов, допускаемых какой-либо теорией, может из- измеряться слабой порождающей способностью этой теории. Дейст- Действительно, может оказаться, что корректная теория грамматик по- позволит порождать широкий класс языков, но весьма бедный класс систем структурных описаний; иначе говоря, она будет иметь вы- высокую слабую порождающую способность, но низкую сильную по- порождающую способность. Поэтому иерархия теорий, описываемая в этой работе в терминах слабой порождающей способности, ни в коем случае не должна быть интерпретирована как дающая серьез- серьезную оценку богатства и сложности предлагаемых теорий. 1. Абстрактные автоматы 1.1. Отражение языковых способностей носителей языка В самом начале предыдущей главы были поставлены проблемы построения моделей, представляющих а) различные аспекты язы- языковых способностей человека, говорящего на каком-либо языке,
Формальные свойства грамматик 123 и б) различные аспекты его поведения при пользовании этими спо- способностями. Вторая задача имеет дело с реальными действиями го- говорящего или слушающего — носителя данного языка; первая касается его знаний об этом языке. Психологам давно известно, что описание того, что делает организм, и описание того, что этот орга- организм знает,— далеко не всегда одно и то же ([38], стр. 553; [75], стр. 364). Порождающая грамматика, приписывающая структур- структурные описания бесконечному классу предложений, может рассмат- рассматриваться как частичная теория того, что знает взрослый носитель языка. Она ни в коей мере не ставит себе целью описывать его ре- реальные действия в качестве говорящего или слушающего. Тем не менее вряд ли можно надеяться разработать разумную теорию ак- актуального речевого поведения иначе, как на основе серьезного и глубокого изучения того, что же знает о языке его носитель. Порождающая грамматика содержит сведения о структуре пред- предложения, в принципе присущие человеку, владеющему языком. Она показывает, как в идеальном случае, оставляя в стороне огра- ограничения памяти, внимания и т.п., этот человек понимает какое-либо предложение (если допустить, что процессы, связанные с «понима- «пониманием», могут быть описаны в пределах синтаксиса). Действительно, такие предложения, как пример 11 из предыдущей главы, совер- совершенно невозможно понять с первого прослушивания, но это не име- имеет никакого отношения к вопросу, порождаются ли эти предложения усвоенной грамматикой; точно так же неспособность человека умно- умножить в уме 18 674 на 26 521 никак не означает, что он не владеет правилами умножения. В каждом из этих случаев искусственное увеличение памяти, времени, внимания и т. п. скорее всего приведет его к единственному правильному ответу. В обоих случаях имеются задачи, которые настолько превышают возможности памяти и вни- внимания решающего субъекта, что правильный ответ никогда не бу- будет достигнут, и в обоих случаях остается единственная возмож- возможность — предположить, что рекурсивные правила, позволяющие получить правильное решение, как-то представлены в мозгу реша- решающего, несмотря на то, что (по совершенно посторонним причинам) это решение не может быть достигнуто никакими реальными дейст- действиями. В своей работе [57], которая заложила основы современного подхода к изучению языка и открыла новую эпоху в истории язы- языкознания, Фердинанд де Соссюр проводит фундаментальное раз- различие между тем, что он называет языком и речью Aап§ие е! раго1е). Первый есть грамматическая и семантическая система, содержаща- содержащаяся в мозгу говорящего; вторая есть тот реальный акусти- акустический сигнал, который исходит из его органов речи и входит в его органы слуха. Соссюр выдвинул аналогию между языком и речью, с одной стороны, и некоторой симфонией и отдельным исполнением 8*
124 Н. Хомский этой симфонии —с другой, и заметил, что ошибки или индивиду- индивидуальные особенности отдельного исполнения ничего не говорят о подлинной сущности исполняемой симфонии. Язык, система, пред- представленная в мозгу, является основным объектом психологических и лингвистических исследований, хотя мы можем судить о его при- природе и свойствах лишь на основе изучения речи, и точно так же человек может построить для себя эту систему только путем на- наблюдений над образцами речи. Врожденная способность ребенка обучаться языку ([асиИё йе 1ап@а§е) дает ему возможность почув- почувствовать и развить лингвистическую систему (язык) с помощью разнообразных наблюдений над актуальным речевым поведением (речью). Изучение других аспектов языка может быть серье&но пред- предпринято только на базе адекватных знаний о лингвистической ин- интуиции говорящего, т. е. на базе описания его языка. Этот общий подход лежит в основе нашей работы. Иногда он критикуется — если не отбрасывается —как «менталистский»1). Од- Однако аргументы, выдвигаемые против основной концепции Соссюра, не представляются нам достаточно убедительными. В этой работе мы не можем вдаваться в специальное обсуждение, но, по-видимо- по-видимому, подобные «антименталистские» аргументы, если бы они были верны, могли бы быть выдвинуты точно так же против любой по- попытки построения теорий, объясняющих наблюдаемые явления. Они просто полностью отрицают науку как интеллектуально зна- значимое явление. Отдельные «менталистские» теории могут быть бес- бесполезны или бессодержательны (так же, впрочем, как и «бихеви- «бихевиористские» или «механистические» теории), но вовсе не потому, что они имеют дело с «менталистскими» понятиями, не ассоциирован- ассоциированными ни с каким необходимым и достаточным операционным или «бихевиористским» критерием. Факты поведения (например, об- образцы речи, отдельные арифметические подсчеты) могут оказаться достаточными для доказательства правильности некоторой теории интеллектуальных способностей индивидуума (например, его язы- языка, его врожденной способности обучаться языку, его знания ариф- арифметики); точно так же наблюдаемое изменение цвета лакмусовой бумажки подтверждает предположение о химической структуре ве- вещества или показания измерительных приборов приводят нас к принятию или отбрасыванию какой-либо физической теории. В каж- каждом из этих случаев основная сущность теории (т.е. врожденные *) Автор противопоставляет здесь «менталистский» (тегйаНзИс от теп- 1а1— умственный, психический) подход «бихевиористскому» (ЪеЬауюга! от ЪеЬауюг — поведение). Ср. с определением бихевиоризма в «Философско.й энциклопедии» (т. I, М., 1960, стр. 170): «Бихевиоризм — господствующее направление в американской психологии XX века, отрицающее сознание как предмет психологии и считающее таковым поведение, под которым понима- 'ются телесные реакции на стимулы».— Прим. перев.
Формальные свойства грамматик 125 или приобретенные лингвистические знания, арифметические спо- способности или знание арифметики, природа физического мира) не должна смешиваться с явлениями, свидетельствующими в ее поль- пользу или против нее. Название «наука о поведении» так же подходит для общего обозначения психологии, как «наука об измерениях»— для физики. * Мы отходим от строго соссюровской концепции в двух направ- направлениях. Во-первых, мы совершенно не упоминаем о семантической стороне языка. Те немногие замечания, которые могут быть сделаны по этому вопросу, лежат за пределами настоящего обзора. Во-вто- Во-вторых, наша концепция языка отличается от соссюровской в следую- следующем: мы считаем, что язык должен быть представлен как порожда- порождающий процесс, основанный на рекурсивных правилах. Соссюр, по-видимому, рассматривал язык в основном как хранилище зна- знаков (слов, готовых предложений и т. п.) и их грамматических свойств, включая, возможно, некоторые «типы синтагм» (рЬгазе {урез). Ввиду этого он не был в состоянии сколько-нибудь серьезно зани- заниматься вопросами структуры предложения и был вынужден прийти к заключению, что формирование предложений есть в основном яв- явление речи, а не языка, т. е. порождение скорее свободного творчес- творчества индивидуума, чем систематических правил. Этого по меньшей мере странного заключения можно избежать, только придя к пони- пониманию того, что бесконечное множество элементов, отличающихся определенными типами внутренней структуры (таких, как, в част- частности, предложения естественного языка с их структурными опи- описаниями), может быть охарактеризовано при помощи конечного рекурсивного порождающего процесса. Этот подход был почти не- неизвестен в то время, когда Соссюр читал свои лекции. Но если толь- только сформулировать понятие языка в этих терминах, то сразу же появляется надежда включить в описание языка полное определе- определение синтаксической структуры. Далее, даже существенно конечные разделы лингвистической теории, например фонология, получат теперь несколько другую формулировку, как мы коротко отметили в разд. 6 предыдущей главы. В связи с этим возникают также но- новые и важные вопросы семантического характера. Так, можно спро- спросить, как носитель языка использует эти рекурсивные механизмы, определяющие предложения и их структурные описания, на раз- различных уровнях языка для того, чтобы с их помощью понимать предъявленные ему предложения, строить новые необходимые ему предложения, использовать отклонения от нормативной граммати- грамматической структуры в целях экспрессии или стиля и т. д. [29]. Не выдерживает серьезной критики широко распространенная точка зрения, согласно которой наше владение языком заключается в знании фиксированного числа грамматических образцов, каждому из которых придано определенное значение, и множества знача-
126 Н. Хомский щих единиц, которые можно в них подставлять, так что значение получившегося предложения просто некоторым образом составлено из значений его компонентов. С этим видоизменением концепция Соссюра дает возможность исследования трех видов моделей, показанных на рис. 1. Устройство А — это грамматика, порождающая предложения и их структурные описания, иначе говоря, А представляет лингвис- лингвистическую интуицию говорящего, его знания о языке, его язык. Если мы хотим представить А в виде устройства со входом и выходом, то Предложение я, структурное описание з Предложение Структурное описание Лингвистически? данные Грамматика Рис. 1. Три типа психолингвистических моделей, основанных на соссюровской концепции языка. на вход могут подаваться натуральные числа и А может рассматри- рассматриваться как устройство, перечисляющее (в некотором порядке, ко- который сейчас для нас несуществен) бесконечное множество предло- предложений с их структурными описаниями. Здесь будет использоваться как этот подход, так и вышеописанный взгляд на А как на теорию языка. Устройство В представляет процесс восприятия, состоящий в определении структуры предложения. На входе имеется предложе- предложение 5, воспринятое органами чувств, и слушатель, представленный моделью В, строит внутреннее представление — перцепт, которое мы называем структурным описанием 5. Итак, устройство В пред- представляет собой модель процесса понимания предложения, если (что вовсе нетривиально) свести этот процесс к определению его грамматической структуры.
Формальные свойства грамматик 127 Устройство С представляет способность обучаться языку, ина- иначе говоря, врожденные способности, дающие возможность индиви- Дууму построить для себя механизм типа Л, используя знакомство на опыте с конечной совокупностью высказываний, а также, несом- несомненно, информацию каких-то иных видов. Устройство, обратное к В, могло бы считаться моделью говоря- говорящего; действительно, еще Соссюр предложил понимать говорящего как устройство, имеющее на входе последовательность понятий и выдающего на выходе физическое сообщение. Но это положение не выдерживает критики. При современном состоянии наших знаний задача представления говорящего моделью со входами и выходами, по-видимому, не может быть четко сформулирована. Из трех только что описанных задач о построении моделей пер- первая должна быть и логически первой. Устройство типа Л появля- появляется на выходе устройства типа С, т. е. является основным резуль- результатом процесса обучения. Можно также полагать, что наиболее пер- перспективный подход к проблеме построения устройства С заключа- заключается в исследовании лингвистических универсалий, структурных свойств, общих для всех порождающих грамматик. Чтобы сделать возможным овладение языком, необходимы, по-видимому, какие-то начальные ограничения на класс возможных систем, к которым по предположению принадлежат наблюдаемые явления; организм дол- должен быть заранее настроен на то, чтобы искать и идентифицировать определенные виды структурных закономерностей. Универсаль- Универсальные свойства грамматики дают возможность сделать некоторые предположения о том, какую форму могут принимать эти началь- начальные ограничения. Далее, кажется очевидным, что каждая интерес- интересная реализация устройства В, достаточно естественная и не постро- построенная полностью ас! Ьос, должна включать устройство Л как основ- основной компонент; иначе говоря, процесс восприятия должен естест- естественно основываться на знаниях воспринимающего о структуре со- совокупности единиц, из которых построен воспринимаемый объект. Все эти соображения приводят нас к необходимости в первую оче- очередь заняться изучением природы грамматик — устройств типа Л, что и будет сделано в данной главе. Заметим еще раз, что логиче- логическая первичность языка (т.е. устройства Л) есть одно из основных положений Соссюра. Основная цель теоретической лингвистики состоит в том, чтобы определить такие общие свойства устройств типов Л, В и С, кото- которые окажутся эмпирически адекватными и смогут служить объяс- объяснительными теориями для различных частных случаев. Устройства В и С, моделирующие реальное поведение, должны непременно быть строго конечными, но Л, которое моделирует знания носителя языка, может порождать настолько сложный и «запутанный» ком- комплекс объектов, что никакой строго конечный механизм не смог бы
128 Н. Хомский распознать или воспроизвести все его элементы. Другими словами, мы не можем на основании того факта, что содержащиеся в мозгу правила грамматики конечны, заключить, что множество порождае- порождаемых грамматических структур должно иметь тот специальный вид, с которым может иметь дело строго конечный механизм. Действи- Действительно, если А есть грамматика естественного языка Ь, то очевид- очевидно, что не обязательно существует строго конечный механизм типа В, дающий на выходе правильное структурное описание тогда и только тогда, когда на вход было подано предложение языка Ь. В этом нет ничего удивительного или парадоксального; это не обя- обязательно следует из бесконечности языка Ь, но скорее из опреде- определенных структурных свойств порождающего механизма А. С этой точки зрения отдельные довольно важные положения лингвистической теории могут, по крайней мере в принципе, счи- считаться входящими в общую теорию (абстрактных) автоматов. Эта достаточно широко разработанная теория (обзор современного со- состояния см. у Мак-Нотона [45]) пока не обратила на себя должного внимания в литературе по психологии и не очень доступна для боль- большинства психологов. Поэтому мы считаем вполне уместным дать здесь обзор некоторых общеизвестных понятий и результатов (вместе с некоторыми новыми материалами) в качестве основы для более специального исследования механизмов для порождения предложений, приводимого в разд. 2—5. 1.2. Строго конечные автоматы Простейшим видом автомата является строго конечный автомат. Мы можем описать его как механизм, состоящий из блока управле- управления, считывающей головки и ленты. Блок управления содержит конечное число частей, которые могут быть установлены конечным числом различных способов. Каждая такая установка называется внутренним состоянием автомата. Лента разделена на клетки; можно считать, что она простирается неограниченно далеко как влево, так и вправо (т.е. что она бесконечна в обе стороны). Счи- Считывающая головка в каждый момент времени находится против од- одной определенной клетки на ленте и может распознавать символы а0,а11...,ао, составляющие конечный алфавит Л (а0 играет роль еди- единичного элемента). Предполагается, что лента может двигаться только в одном направлении, скажем справа налево. Выделяется одно из состояний автомата, которое называется его начальным со- состоянием и обозначается 50. Состояния автомата обозначаются 50, ...,5л(л>0). Можно описать работу автомата следующим образом. Последо- Последовательность символов ар р ..., а$к @<^<1О) из алфавита А. записа- записана в подряд идущих клетках ленты, по одному символу в каждой клетке. Предполагается, что символ #, не принадлежащий алфа-
Формальные свойства грамматик 129 виту Л, занимает все клетки налево от а^ и все клетки направо от а$к. Блок управления установлен в состоянии 50. Считывающая головка установлена против клетки, содержащей символ % . Эта начальная конфигурация машины-ленты показана на рис. 2. # # Ф а. а а, # # # блок управления (в состоянии 80) Рис. 2. Начальная конфигурация машины-ленты. Блок управления работает так, что если он находится в неко- некотором состоянии, а считывающая головка стоит против определен- определенного символа^ то он переходит в новое состояние, в то время как лента продвигается на одну клетку влево. Так, на рис. 2 блок уп- управления переходит в новое состояние 5г, в то время когда лента сдвигается так, что считывающая головка оказывается против клетки с символом а$2. Это вторая конфигурация машины-ленты. Машина продолжает работать таким образом до тех пор, пока она не будет блокирована (т.е. пока не появится такая конфигурация, для которой она не имеет дальнейшей команды) или пока она не возвратится в начальное состояние. В последнем случае, если счи- считывающая головка окажется против клетки справа от а$и (в этом случае, впрочем, машина будет блокирована, поскольку в этой клетке стоит символ # $А), мы говорим, что автомат допускает (или, что эквивалентно, порождает) цепочку #ар1...арЛ#. Мно- Множество цепочек, допускаемых автоматом, есть язык, допускаемый (порождаемый) этим автоматом. Итак, поведение автомата описывается конечным множеством троек (*, /, к), 0<*'<О, 0</, к <л, где тройка (*", у, к) интерпре- интерпретируется как правило, говорящее, что если блок управления на- находится в состоянии 5У- и считывающая головка стоит против сим- символа аь то блок управления может перейти в состояние 5Л. Общая картина поведения автомата может быть представлена с помощью диаграммы состояний, состоящей из узлов, помеченных обозначе- обозначениями, состояний, и ориентированных путей (стрелок), соединяю-
130 Н. Хомский щих узлы; пути помечены символами из алфавита А. В этом графе узел, помеченный 5у-, соединен стрелкой, помеченной ао с узлом, помеченным 5Л, в том и только том случае, если (I, /, к) есть одна из троек, описывающих поведение автомата. Пример такого графа показан на рис. 3. (Когда мы интерпретируем такие системы как грамматики, тройки играют роль грамматических правил.) Таким образом, конечный автомат может быть представлен произвольным Р и с. 3. Граф для диаграммы состояний автомата. Поведение автомата описывается тройками @,6,0), A,0,1), B,1,6), C,2,1), D,1,4), E,1,4), F,4,3),G,4,5), (8,5,4), (9,5,5), (9,5,6). Состояние 50 является начальным и конечным состо- состоянием: состояния 52 и 5'з могли бы быть опущены (и обычно опускаются), так как они не играют никакой роли в порож- порождении предложений. конечным ориентированным графом, ребра которого помечены сим- символами из А. Идя вдоль графа от$0до первого возвращения в 50 по разрешенным путям, мы порождаем предложение #х#, где х— цепочка, состоящая из последовательных символов, помечающих стрелки, пройденные нами в этом пути. Для наших целей несущественно представление автомата как источника, порождающего предложение символ за символом при движении от состоягия к состоянию, или как читающего устройства,
Формальные свойства грамматик 131 переходящего из состояния в состояние, когда оно воспринимает каждый последовательный символ допускаемого им предложения. Это зависит просто от интерпретации обозначений. В любом из этих двух случаев для вышеописанных систем справедливо следующее определение предложения. Определение 1. Цепочка символов х есть предложение, порождаемое конечным автоматом Р, тогда и только тогда, когда существует последовательность символов (а^ ,..., а$г) в алфавите автомата Р и последовательность состояний EТ1,..., 5тг+0 авто- автомата Р, такая, что: 1) т^Т^! =0| 2) ^ =^0 для 1<0'0+1; 3)(Р/» Тг> Тй-0 является правилом Р для каждого I A<0'<>); 4) х=#а^... а$г #. Любое множество предложений, порождаемое конечным автома- автоматом, будем называть регулярным языком. Термин, более принятый в литературе для этих множеств,— это регулярные события (см. работы [30, 53]; эквивалентность различных формулировок была доказана в работах [5, 14]). Заметим, что механизм М движется влево при каждом переходе из состояния в состояние, что единичный символ а0 может занимать клетку на ленте и что команда G, /, к) применима к М тогда и толь- только тогда, когда он находится в состоянии 57- и читает символ а{. Эквивалентно можно было бы условиться, что а0 не может занимать клетку на ленте, что команда (г, /, к) применима, когда М находит- находится в состоянии 5у- и когда либо / = 0, либо М читает символ аь и что лента движется влево только тогда, когда применяется команда (I, /, к), где 1=^=0. В этом случае команда @, /, к) может быть истол- истолкована как позволяющая переход из 57- в 8к независимо от вход- входного символа и без движения влево входной ленты. Отметим, что при такой формулировке механизм М будет блокирован, только если он находится в состоянии 5у- и наблюдает символ аь, для ко- которых он не имеет команды (г, /, к), и если он, кроме того, не имеет команды @, /, к). Приводя предложения, порожденные этими или другими видами автоматов, мы обычно будем опускать граничный символ #. Два конечных автомата эквивалентны, если они порождают один и тот же язык. Автомат называется детерминированным, если не существует двух команд (I, /, к) и (*, /, /), где кф1, и не сущест- существует команды @, /, к), где кфО (т.е. пустой переход возможен только при возвращении в50). Состояние детерминированного ав- автомата однозначно определяется (за исключением возможного воз- возврата в 5о) цепочкой символов, воспринятой им на входе, и состоя- состоянием, с которого он начал свою работу. Имеется много результатов, относящихся к этим автоматам. Приведем без доказательства две теоремы, которые понадобятся нам в дальнейшем [13, 53].
132 И. Хомский Теорема 1. По заданным конечным автоматам Ръ Р2 можно построить конечные автоматы Сь С2, 03, такие, что 01 есть де- детерминированный автомат, эквивалентный Ръ 02 допускает те и только те цепочки, которые отбрасывает (т. е. не допускает) Рх, а 03 допускает в точности те цепочки, которые допускает Рг илиР2. Следовательно, множество всех регулярных языков в заданном алфавите А образует булеву алгебру. Заметим к случаю, что для детерминированных автоматов можно было бы вообще избежать появления «пустого» перехода, переформулировав «допустимость цепочки л:» в терминах прихода устройства в одно из множества выделенных конечных состояний вместо возвращения в начальное состояние. Эти два определения остаются эквивалентными, если только допустить любое число конечных состояний. . Самый важный результат, касающийся регулярных языков,— это теорема Клини о структурной характеризации [30]. Эта тео- теорема утверждает, что все (и только) регулярные языки могут быть получены из конечных языков с помощью нескольких простых тео- теоретико-множественных операций. Теорема, таким образом, дает простой и естественный способ представления любого регулярного языка [13, 46]. Приведем эту теорему в несколько отличной формулировке. Для заданного алфавита А определим рекурсивно понятие пред- представляющего выражения следующим образом. Определение 2. 1) Каждая конечная цепочка в алфавите А есть представляющее выражение. 2) Если Хг и Х2— представляю- представляющие выражения, то ХХХ2— представляющее выражение. 3) Ес- Если Хг, где 1^ 1<^, суть представляющие выражения, тогда и (Х19...,Хп)*— представляющее выражение. Это определение задает нам 1) некоторые представляющие вы- выражения, соответствующие цепочкам в Л, и позволяет нам образо- образовывать другие представляющие выражения путем 2) соединения их друг с другом и 3) разделения их запятой и заключения в скобки, помеченные звездочкой. Теперь мы должны сказать, что же именно представляют эти представляющие выражения. Определение 3. 1) Конечная цепочка в А представляет самое себя (точнее, единичный класс, содержашмй только эту це- цепочку). 2) Если Хх представляет множество цепочек И2, а Х2—■ множество цепочек Е2, то ХХХ2 представляет множество все- всевозможных цепочек вида УНР, где V(^^ъ а ИР^Е2. 3) Если Хь 1^0'^я, представляют множества цепочек Е., то (Х1,...,Хп)* представляет множество всех цепочек У1...Ут1 таких, что для каждого 1<С/<Гт существует к A<Сй<^>г), такое, что ^
Формальные свойства грамматик 133 Заметим, что, согласно условию 3, представляющее выражение (Х1у...,Хп)* задает не порядок, в котором встречаются элементы V^, но только п множеств, из которых они выбраны. Разобраться в смысле определения 3 лучше всего можно, рассмотрев диаграммы а а,а2 В а,(аг) а о а5)* а6> а?)*а8 а Рис. 4. Примеры использования представляющих выражений. Слева — представляющие выражения, справа — диаграммы состояний. состояний или части диаграмм состояний, порождающие пред- представляемые множества цепочек. На рис. 4 случаи бив иллюстри- иллюстрируют образование соединения и операции «звездочка» (т.е. образо-
Н. Хомский вание выражения (Х1,...,Хп)*. Случай г показывает сочетание этих операций. Автомат порождает ага3у ахаф,ъ, а1а2а2а3... . Случай д показывает еще более сложный элемент и т.д. Теперь уже может быть сформулирована следующая теорема. Теорема 2. Язык Ь является регулярным языком тогда и только тогда, когда существуют такие представляющие выраже- выражения Хь где 1<^'<^/г, что Ь есть объединение множеств Х^, пред- представленных соответственно выражениями Хх,...,Хп [13]. Доказательство теоремы основано на том, что для любой диаг- диаграммы состояний автомата Р можно построить эквивалентную ей диаграмму состояний, представляющую собой сочетание элемен- элементов, таких, как на рис. 4; из этой новой диаграммы непосредственно может быть получено представляющее выражение для языка авто- автомата Р. Разумеется, в общем случае при этом получается недетер- недетерминированный автомат. Специальный интересный класс конечных автоматов состоит из автоматов, обладающих тем свойством, что состояние автомата од- однозначно определяется последними к символами входного пред- предложения. Автомат, для которого существует такое фиксированное к, называется к-ограниченным автоматом, а язык, который он по- порождает,— к-ограниченным языком. Допустим, что М есть ^-ограниченный автомат со словарем 1/, состоящим из В символов. Можно задать его поведение матрицей О^хО, в которой каждый столбец соответствует элементу Ш^У, а каждая строка — цепочке <р длины й, состоящей из элементов V. Соответствующий элемент матрицы будет равен нулю или единице в зависимости от того, допускает ли автомат элемент 1^, если он уже допустил цепочку 9- Каждая такая цепочка 9 определяет состояние автомата. Это понятие (^-ограниченного автомата) известно в лингвистике в несколько модифицированном виде. Предположим, что элемента- элементами определяющей матрицы являются числа между нулем и едини- единицей и каждый элемент представляет собой частоту, с которой в неко- некотором тексте встречается слово, соответствующее заданному столбцу матрицы, при условии что перед этим встретились к слов, определяю- определяющие заданную строку матрицы. Эта матрица интерпретируется как описание вероятностного ^-ограниченного автомата, порождающего цепочки в соответствии с заданным множеством вероятнос- вероятностей перехода, т.е. если автомат находится в состоянии, опреде- определенном 1-й строкой матрицы, что соответствует порожденной по- последовательности символов ^1х...^1к , то элемент, стоящий в клет- клетке (I, /), дает вероятность того, что следующее порождаемое слово будет И^у. После того как порождено слово И?у, автомат переходит в состояние, определяемое цепочкой Ш12...Ш1к В^-. При &>1 такое
Формальные свойства грамматик 135 устройство порождает так называемое приближение (к~т\)-то по- порядка к тому тексту, из которого были взяты вероятности (см. ра- работы [72, 43]). Мы еще вернемся к этому понятию в разд. 1.2 сле- следующей главы1). а Р и с. 5. Конечный автомат, не являющийся /^-ограниченным ни при каком к. Очевидно, не каждый конечный автомат й-ограничен. Напри- Например, автомат с тремя состояниями, схема которого показана на рис. 5, не является ^-ограниченным ни для какого к. Однако для каждого регулярного языка Ь существует 1-ограниченный язык /,* и гомоморфизм /, такой, что !=/(!*) [61 ]. Действительно, пусть Ь допускается детерминированным автоматом М, в котором нет пра- правила ({, /, 0) при 1=^=0 (ясно, что такой М всегда существует). Пусть М* имеет входной алфавит, состоящий из символов (а^ 5у), и внутренние состояния [аь, 5у- ], где аь есть символ из алфавита М, а 5у. есть состояние М, при этом [а0, 50] есть начальное состояние. Переходы автомата М* определяются переходами М по следующе- следующему принципу: если (/, /, к) есть правило автомата М, то Л4* может переходить из состояния [а/, 5,1 (при любом /) в состояние [аг,5А], если он наблюдает символ {аь,8^. Пусть теперь /,*—язык, допуска- допускаемый автоматом М*. Пусть /—гомоморфизм, отображающий (#г, 5у.) на а-г для всех I, /. Тогда /,=/(/,*) и ^* есть 1-ограниченный язык. Предположим теперь, что мы сняли требование, чтобы лента всегда двигалась влево при переходе из состояния в состояние. г) См. сноску 2 на стр. 121. — Прим. ред.
136 Н. Хомский Вместо этого допустим, что направление движения ленты опреде- определяется, так же как и следующее состояние, текущим состоянием и считываемым символом. Поведение такого автомата можно описать множеством четверок (*', /, й, /), где I, /, к суть, как и раньше, ин- индексы соответствующей буквы, одного состояния и другого состоя- состояния, а / есть одно из { + 1, 0, —1}. Следуя Рабину и Скотту [53], можно интерпретировать эти четверки следующим образом. Определение 4. Пусть (I, /', к, I) — одно из правил, оп- определяющих работу автомата М. Если его блок управления находит- находится в состоянии 5у, а его считывающая головка стоит против клетки, содержащей символ аь то блок управления может перейти в состоя- состояние 8к, в то время как лента продвигается на I клеток влево. Такое устройство называется двусторонним автоматом. Будем рассматривать продвижение на —1 клетку влево как про- продвижение на одну клетку вправо. Можно снова сказать, что подобный механизм допускает (порож- (порождает) цепочку, точно так же как это делает конечный автомат. А именно он допускает цепочку х только при следующем условии. Пусть цепочка х записана в подряд идущих клетках ленты, а осталь- остальные клетки заняты символом #. Пусть блок управления находится в состоянии 50, а считывающая головка стоит против самой левой клетки, не содержащей #. Предположим, что работа автомата про- продолжается до первого возврата в 50, и в этот момент считывающая головка стоит против клетки с символом #. В этом случае счита- считается, что автомат допускает цепочку х. Можно было бы ожидать, что, ослабив требования, которым дол- должен удовлетворять конечный автомат, мы увеличили его порожда- порождающую способность. Однако дело обстоит не так, и мы имеем следую- следующую теорему [53,73]. Теорема 3. Множества, порождаемые двусторонними авто- автоматами , также являются регулярными языками. Основная идея доказательства состоит в том, что автомат может избавить себя от необходимости возвращаться второй раз на любой данный участок ленты, если он, до того как покинуть этот участок, «подумает» обо всех вопросах, которые могут быть заданы в даль- дальнейшем (их число должно быть конечно), 1ут же «ответит» на эги вопросы и «унесет» с собой таблицу вопросов и ответов, двигаясь вперед вдоль ленты и изменяя ответы, если это понадобится. Этот способ дает возможность построения эквивалентного односторон- одностороннего автомата, хотя и ценой увеличения числа внутренних состоя- состояний блока управления.
Формальные свойства грамматик 137 1.3. Линейно-ограниченные автоматы Предположим, что двустороннему автомату разрешается писать символы на ленте при переходах из состояния в состояние. Симво- Символы, написанные на ленте, принадлежат выходному алфавиту А о = [ао,...,ар,...,ад] (#$Ао), где А1=[ао,...,ар\ является входным алфавитом. Чтобы описать работу автомата, нам теперь понадо- понадобится множество пятерок (*', /, /?, /, т), где четверка (*', /, к9 I) оп- определяет двусторонний автомат, а рассматриваемый символ аг за- заменяется на ат (который, разумеется, может и совпадать с а^), когда автомат переходит из состояния 5у- в состояние 8к. Следуя в основных чертах Майхиллу [44], имеем следующее определение. Определение 5. Пусть (г, /, к, /, т) — одно из правил, определяющих работу автомата М. Если его блок управления нахо- находится в состоянии 5у, а его считывающая головка стоит против клетки, содержащей символ ао то блок управления может перейти в состояние 5Л, в то время как лента продвигается на I клеток влево, а рассматриваемый символ а1 заменяется на ат. Такое устрой- ство называется линейно-ограниченным автома- автоматом. Допустимость цепочки определяется так же, как и выше. В ли- линейно-ограниченном автомате лента используется не только в ка- качестве входа, но и в качестве памяти. Действительно, если такой автомат М имеет на входе заданную цепочку х, то в его распоряже- распоряжении имеется память, объем которой определен числом сХ(л;) + <7, где ц — заданная память блока управления, с — константа (за- (зависящая от мощности выходного алфавита), а Цх) — длина цепоч- цепочки х. Следовательно, он является простым потенциально бесконеч- бесконечным автоматом и, как мы увидим далее, может порождать и нере- нерегулярные языки. При изучении поведения автомата иногда оказывается удобным в целях наглядности приписать ему некоторую дополнительную бо- более сложную структуру. Так, можно рассматривать какое-либо ус- устройство как состоящее из отдельных частей, воплощающих раз- различные аспекты его поведения. В частности, можно считать, что линейно-ограниченный автомат имеет две отдельные бесконечные ленты, одну исключительно для входа, другую — рабочую, причем на второй ленте имеется ровно столько клеток, доступных для за- записи, сколько занято символами входного алфавита (но не симво- символом #) на входной ленте. Можно также считать, что имеется не- несколько независимых рабочих лент этого вида. Эти модификации требуют соответственного изменения списания работы блока управ- управления, но их нетрудно описать таким образом, чтобы порождающая способность рассматриваемого класса автоматов осталась преж- прежней.
138 И. Хомский 1.4. Автомат с магазинным накопителем (устройство Р05) Рассмотрим следующий специальный класс линейно-ограничен- линейно-ограниченных автоматов, представляющий особый интерес. Пусть автомат М имеет две ленты, одну — входную, другую — ленту памяти. Блок управления может считывать символы с входной ленты и с ленты памяти и записывать символы на ленте памяти. Входная лента может двигаться только в одном направлении, скажем, справа на- налево. Лента памяти может двигаться в обоих направлениях. Сим- Символы входного алфавита Л/ могут появляться на входной ленте, символы выходного алфавита А о могут считываться или записы- записываться на ленте памяти; алфавиты Л/ и Ао такие же, как выше. Мы предполагаем, что А о содержит выделенный символ ^А\ , который будет использоваться только в начале и в конце работы устройства; каким способом, будет явно определено ниже. В разд. 1.4 — 1.6 единичный элемент алфавитов Ао и Л/ обозначается че- через е вместо а0. Другие символы Ао мы продолжаем обозначать аъ...дТ Алфавиты Л/ и Ао рассматриваются как «универсальные алфавиты», независимые от конкретной машины. Мы определяем ситуацию машины как тройку (а, 5., Ь)у где а 5 символ, считываемый с входной ленты, 5г— состояние блока управ- управления, а Ь — символ, считываемый с ленты памяти. Каждый шаг работы зависит в общем случае от всей ситуации машины. При начальной конфигурации ленты-машины входная лента со- содержит символы а^ ,...,ар/с (где теперь уже р^О); они записаны в подряд идущих клетках ленты и ограничены с обеих сторон симво- символами #; блок управления находится в состоянии 50 и наблюдает самый левый символ а$х цепочки х=а$х...а$к (как на рис. 2). Рас- Рассматриваемая клетка ленты памяти содер>жит а, а все остальные ее клетки содержат #. Таким образом, в начальной конфигурации автомат находится в ситуации (ар1У80, #). Автомат продолжает свою работу способом, описанным ниже, до первого возвращения в50. Входная цепочка х допускается автоматом, если в момент воз- возвращения как на входной ленте, так и на ленте памяти наблюдается символ #, т.е. если автомат находится в заключительной ситуации Специальное свойство этих устройств, отличающее их от линей- линейно-ограниченных автоматов общего вида, заключается в следующем. Когда лента памяти движется на одну клетку вправо, предыдущий рассмотренный символ как бы «стирается». Когда лента памяти дви- движется на к клеток влево, открывая к новых клеток, то в этих клет- клетках записываются последовательно к символов из Ао, все отлич- отличные от е. Когда лента не движется, ничто не записывается и ничто не стирается. Поэтому на каждом шаге работы машины только са- самый правый символ ленты памяти доступен для рассмотрения. Сим- Символ, записанный на ленту последним, считывается с нее первым.
Формальные свойства грамматик 159 Следовательно, лента памяти обязательно будет совершенно пуста [Ыапк] (т.е. будет содержать только #), если достигнута заключи- заключительная ситуация (#, 50,#). Устройство М, которое ведет себя описанным выше образом, мы будем, следуя Ньюэллу, Шоу и Саймону [47], называть автома- автоматом с магазинной памятью или автоматом РОЗ (ршМо^п з!ога§е аи1ота!оп). Эта система памяти нашла широкое применение в программировании; в частности, многие авторы отмечают, что она весьма полезна при машинном синтаксическом анализе языка. При- Причины этой полезности, так же как и ограничения, присущие теории таких автоматов, станут вполне ясны, когда мы увидим, что она представляет собой, в сущности, другой вариант теории бесконтек- бесконтекстных грамматик (ср. разд. 4 предыдущей главы). Отметим, что автомат РОЗ, возможное недетерминированным блоком управления, есть тот самый механизм, который выполняет «предсказуемостный анализ» в смысле И. Роудес (см. работу [48]). Следовательно, и эта теория также является в основном вариантом теории бесконтекст- бесконтекстных грамматик. Перейдем теперь к явному определению работы автомата РОЗ. Мы предполагаем, выбирая одну из двух эквивалентных формули- формулировок, приведенных выше (стр. 127), что е не может появляться ни в клетках входной ленты, ни в клетках ленты памяти. Тогда мы расширяем определение «ситуации» так, чтобы были допустимы тройки (е, 5;, 6), (а, 5^, е) и (еу 81У ё), и говорим, что, когда автомат находится в ситуации (а, 5^, 6), он одновременно находится в си- ситуации (е, $;, 6), (а, «5г, е) и (еу 51у е), т.е. любая команда, примени- применимая в ситуациях (еу 8[у Ь)у (а, 81 , е) и (е, 51У ё)у будет применима, когда устройство находится в состоянии 5^ и рассматривает символ а на входной ленте и символ Ь на ленте памяти. Входная лента дей- действительно продвигается влево только тогда, когда применяется команда, содержащая в качестве символа на входной ленте некото- некоторое афе. Определим функцию Цх) (читай: «длина х») для некоторых це- цепочек х следующим образом: М°) =—1; Х(^)=0; Цга^)=Цг)-\-1у где га1 есть цепочка в алфавите Ао— (а), A<О'<^). Каждая команда автомата РОЗ может теперь быть задана в стандартной форме (а, 5„ Ь) -> E;, х), A) где а^Л/ , Ь(^Ао, х=з или х есть цепочка в алфавите Ао 0 Ь К A) ^ ^ ф а /=^0 тогда и только тогда, когда Ь = а=х. Команда вида A) при- применима, когда механизм находится в ситуации (а, 5^, Ь)у и ее при- применение дает следующий результат: блок управления переходит в состояние 5у-; входная лента движется на X (а) клеток влево; симво- символы х печатаются последовательно в клетках, находящихся вправо
140 Н. Хомский от клетки, рассматривавшейся в предыдущий момент на ленте па- памяти (в частности, если х=а}\...а;-т, то ^помещается в к-\\ клет- клетке справа от клетки, рассматривавшейся в предыдущий момент, замещая содержимое этой клетки), в то время как лента памяти движется на Цх) клеток влево. Таким образом, если х=/=о, то теперь устройство будет стоять (на ленте памяти) против самого правого символа цепочки х\ если х=е, то оно останется против Ъ\ если х = о, то оно будет стоять против клетки слева от Ъ. Далее, мы полагаем, что содержимое каждой клетки ленты памяти правее рассматрива- рассматриваемой клетки автоматически «стирается» (т.е. заменяется на #). В каждый данный момент мы определяем содержимое ленты памя- памяти как цепочку, стоящую влево от рассматриваемого символа (включая и его), и говорим, что лента памяти содержит эту цепоч- цепочку. Точнее, если цепочка # а^ ...а$п записана в подряд идущих клетках ленты памяти, причем а$п занимает рассматриваемую клет- клетку, то цепочка а$х...а$п есть содержимое ленты памяти. Если рас- рассматриваемый символ ленты памяти есть #, мы говорим, что лента содержит цепочку е (ее содержимое есть е) или лента пуста. Отметим, что когда автомат М применяет команду A), входная лента движется на одну клетку влево, если аФе, и не движется, если а=е. Далее, если М наблюдает # на входной ленте, команда A) применима, только если а=е. Из условия «/=0 тогда и только тогда, когда Ь= а =х» вытекает, что если М начинает работу из начальной конфигурации, то при первом возвращении в 50 оно не- непременно окажется в ситуации (а, 50,#) при некотором а. Если а=#, автомат М находится в заключительной ситуации, наблю- наблюдая # на входной ленте и на ленте памяти, и, следовательно, до- допускает цепочку, записанную на входной ленте при начальной конфигурации. В действительности может еще встретиться работа «вхолостую», если имеется команда вида A) а=е=Ь и 1=0, но это не повлияет на порождающую способность устройства. Мы можем считать, что устройство блокировано, когда оно достигает заключительной си- ситуации. Его лента памяти будет пуста на этом и только на этом ша- шаге работы. Можно дать более простую характеристику семейства языков, допускаемых автоматами РО5, не ссылаясь явно на манипуляции с лентами и т.п. Если заданы алфавиты Л/ и Ао и символы а, опре- определим автомат РОЗ М как конечное множество команд вида A). Для каждого г пусть будет а-о=е, т.е. а являетсй «правым об- обратным» элементом для каждого элемента. Конфигурация автомата М есть тройка К=(х, 5г, у), где 5; — состояние, х— цепочка в Л/ и у — цепочка в Ао. Примем за х еще не прочитанную часть вход- входной ленты (т.е. цепочку вправо от читаемого символа, включая и
Формальные свойства грамматик, 141 его), за у — содержимое ленты памяти, а 5^ пусть будет состояние в настоящий момент. Если / есть правило вида A), мы говорим,что конфигурация К2 следует из конфигурации К\ по правилу /, если К1=(ау1 8ц гЬ) и Къ=(у, 5у, гЬх). Автомат М допускает цепочку ку, если существует последовательность конфигураций Къ...>Кт, такая, что /С1=(ш, 50, а), Кт=(е, 50, е) и для каждого Кт имеется правило /, такое, что /Сг+1 следует из Кь по /. Автомат М допускает (порождает) язык Ь тогда и только тогда, когда Ь есть множество всех цепочек, допускаемых автоматом М. Память устройства РОЗ может быть представлена в терминах множества цепочек над внутренним алфавитом; при этом переход от одной внутренней конфигурации к другой будет соответствовать прибавлению и убавлению букв на правом конце цепочки, сопостав- сопоставленной данной внутренней конфигурации. Таким образом, из со- состояния, представленного цепочкой ера, возможен переход только в состояния, представленные цепочками <р или сра8. Поучительно сопоставить устройство РОЗ, которое при этой интерпретации имеет бесконечное количество возможных состояний, с ^-ограниченным автоматом. Как было показано выше, память ^-ограниченного ав- автомата также может быть представлена в терминах множества це- цепочек над внутренним алфавитом (который в данном случае совпа- совпадает с входным алфавитом). Смена состояний ^-ограниченного ав- автомата соответствует прибавлению буквы справа к цепочке, пред- представляющей состояние, и одновременно стиранию одной буквы на левом конце цепочки. Поэтому все множество возможных состоя- состояний конечно. Устройство РОЗ представляет собой специальный тип линей- линейно-ограниченного автомата. Для него легко доступны многие зада- задачи, недоступные для конечного автомата, несмотря на то что оно только один раз просматривает входные данные (поскольку вход- входная лента движется только в одном направлении). Рассмотрим, на- например, задачу порождения языка //2, состоящего из всех цепочек вида #хсх*#, где х — непустая цепочка из а и 6, а х*— зеркаль- зеркальное отражение цепочки х, т.е. цепочка х, записанная в обратном порядке — справа налево (ср. с языком Ь2 в предыдущей главе, разд. 3, стр. 246). Очевидно, что эта задача лежит за пределами воз- возможностей конечного автомата, так как число необходимых для ра- работы состояний возрастает по экспоненте, когда устройство про- просматривает и допускает последовательно символы из первой поло- половины цепочки. Наряду с этим рассмотрим автомат РОЗ М с входным алфавитом {а, 6, с], с внутренними состояниями 50, 5Х и 52 и следующими правилами, где а принимает значения в множе- множестве {а, Ь)\
142 Н. Хомский (а) (а, 50, е)-+ Eх,а), (б) (а, 51э е)->E11 а), (в) (с, 51Э е)-+(82, е), B) (г) (а, 52, а) -> E2, а), (д) (р, 52, а) -> E0, а). Блок управления имеет диаграмму состояний, показанную на рис. 6, где тройка (г, 5, г) помечает стрелку, ведущую от состояния 5; к состоянию 5у тогда и только тогда, когда имеется правило (г, $;, 5)->Eу, г). Очевидно, что это устройство допускает цепочку тогда и только тогда, когда она принадлежит языку Ь'2. Например, последовательные шаги работы при порождении цепочки #аЬсЬа^т- показаны на рис. 7. Очевидно, устройство РОЗ очень хорошо подходит для порож- порождения таких языков, как Ь2\ которые в каком-то смысле имеют единицы (фразы), вложенные друг в друга, т.е. что-то вроде рекур- рекурсивного свойства, названного нами в предыдущей главе (разд. 3) самовставлением. В разд. 4.2 и 4.6 мы увидим, что основное свой- свойство бесконтекстных грамматик (ср. с предыдущей главой, разд. 4), отличающее их от конечных автоматов, состоит в том, что они до- допускают самовставление и симметрии в порождаемых цепочках. Следовательно, можно ожидать, что устройства с магазинной па- памятью будут полезны при построении языков с грамматиками та- такого типа. Этот класс, очевидно, содержит многие известные ис- искусственные языки (например, язык исчисления высказываний и, возможно, также многие языки программирования — см. разд. 4.8). Действительно, весьма нетрудно построить автомат РО5, ко- который будет распознавать или порождать предложения в таких сис- системах. Эттингер [48] указывает, что если оборудовать устройство РО5 дополнительной выходной лентой и переделать его команды так, чтобы оно могло отображать входную цепочку на соответствен- соответственную выходную (используя при работе свою магазинную память), то можно заставить его, например, переводить формулы из обыч- обычной скобочной записи в бесскобочную запись Лукасевича и обрат- обратно. В некотором приближении бесконтекстные грамматики непо- непосредственных составляющих частично адекватны естественным языкам; вложенные фразы (самовставление) и симметрии составля- составляют одно из основных свойств естественного языка. Поэтому такие устройства, как РОЗ, будут полезны при решении различных задач автоматической обработки текстов на естественных языках. Устройство РОЗ с правилами B) является детерминированным. В случае конечных автоматов мы видим (теорема 1), что для каждо- каждого конечного автомата существует эквивалентный ему детерминиро-
(е%б.б) (Ъ,е,Ь) (Ь,е,Ь) Рис. 6. Диаграмма состояний для М. • • • • # # а Ь # б Ф с ф а ф ф • • • • • • Начальная позиция # а а а Позиция 3 # а а • • • # б а Позиция / # я а ф Позиция • • • а а # Ф $0 б а Ф # # /7 а Ф о # # Позиция 2 • • • 4 4 а Ь с Ь * а # # ♦ б а •• Позиция 5 Позиция 6 Рис. 7. Порождение цепочки #аЬсЪа# устройством РЭ5.
144 Н. Хамский ванный автомат. Однако для автоматов РОЗ это не имеет места. Так, не существует детерминированного автомата РОЗ, который допускал бы язык Ь2={хх*\х* есть зеркальное отражение х) (т.е. Ь2 состоит из цепочек, которые получаются, если выбросить сред- средний элемент с из цепочек языка Ь2), поскольку он никак не смо- сможет узнать, когда достигается середина входной цепочки; однако Ь2 порождается недетерминированным автоматом РОЗ, отлича- отличающимся от устройства B) для Ь2 заменой правила (в) правилом (а, 5Ь ё) -> E2, а). C) Это сводится к выбрасыванию стрелки (с, е, е) на рис. 6 и соедине- соединению состояний 5Х и 52 двумя стрелками, одна из которых помечена {а, е, а), а другая — (Ь, е, Ь). Устройство применяет команду C) тогда, когда оно «делает предположение» о том, что достигнута се- середина цепочки. Если это предположение не оправдывается, то ра- работа устройства не может закончиться допущением цепочки (точно так же, как если бы входная цепочка не принадлежала языку /^); если предположение оправдывается и входная цепочка принадле- принадлежит языку Ь2, то работа устройства закончится допущением це- цепочки. Мы допустили здесь, что следующий шаг работы устройства ча- частично определяется символом, считываемым с ленты памяти. Ин- Интересно изучить вопрос о том, насколько контроль со стороны лен- ленты памяти существен для устройства РОЗ. Рассмотрим два под- подкласса автоматов РОЗ, заданные следующими условиями: М есть автомат РОЗ без контроля, если каждое правило его имеет вид (а, 8Ь, е)->(8^, х)\ М есть автомат РОЗ с ограниченным контролем, если каждое его правило имеет либо вид (а, 8^ е)-±(8;,х), хфс, либо вид (а, 5;, 6)->Eу, о). Иначе говоря, в автоматах с ограни- ограниченным контролем символ, считываемый с ленты памяти, играет роль только при определении тех шагов, при которых происходит стирание с ленты памяти. Мы видим, что устройство на рис. 6 име- имеет ограниченный контроль. В случае устройства РОЗ без контроля лента памяти работает лишь как счетчик. Без ограничения общ- общности можно полагать, что ее алфавит содержит лишь один сим- символ. Рассматривая эти семейства автоматов, мы приходим к следую- следующей теореме. Т е о р е м а 4. (а) Семейство автоматов РОЗ без контроля имеет порождающую способность существенно большую, чем семейство > конечных автоматов, но существенно меньшую, чем все семейство устройств РОЗ. (б) Для каждого устройства РОЗ существует эк- эквивалентное ему устройство РОЗ с ограниченным контролем. « Что касается раздела (а) теоремы, то очевидно, что автомат без, контроля допускает язык Ьг= {апЬп} (ср. с разд. 3 предыдущей •;
Формальные свойства грамматик 145 главы), но не допускает ни языка Ь21 ни языка Ь%'. Действительно, эти языки находятся за пределами возможностей любого устройст- устройства с конечным числом бесконечных счетчиков, показания которых независимы и изменяются фиксированным образом при переходах устройства из состояния в состояние (например, счетчик может по- показывать, сколько раз устройство прошло через данное состояние или произвело данный символ), причем решение о допущении или недопущении входной цепочки зависит от элементарных свойств показаний счетчиков (равны ли их показания; стоят ли они на нуле, как в случае магазинной памяти, и т.п.). Хотя устройство с ц счет- счетчиками и к состояниями имеет потенциально бесконечную память, за р шагов оно может достигнуть только кря различных конфигу- конфигураций состояния и показаний счетчиков, а при прохождении пред- предложений языка /,2, имеющих длину 2р, необходимо, чтобы за р переходов можно было достигнуть 2Р различных конфигураций (воз- (возможность пустых переходов не влияет на это замечание). Точную формулировку вышеописанных рассуждений и описание счетчико- вых устройств можно найти у Шюценберже [60]. Раздел (б) теоремы 4 есть следствие некоторых результатов, которые будут установлены ниже (разд. 1.6, теорема 6). 1.5. Конечные преобразователи Допустим, что имеется устройство РЭ5 М, удовлетворяющее до- дополнительному условию, что его лента памяти никогда не движется вправо, т.е. каждое правило М имеет вид (а, 5^, Ь)->(8^^ х), где хфа. Начиная с начальной конфигурации, когда входная лента содержит последовательно символы #, ар1Э...,ар , #, устройство работает в соответствии со своей программой, двигая ленту памяти влево каждый раз, когда оно печатает на этой ленте цепочку х. Предположим, что работа устройства продолжается до тех пор, пока оно не достигнет ситуации (#,$., ау- ) для каких-то ь, /, т.е. что оно блокируется точно в тот момент, как прочтет всю входную последовательность. На заключительном этапе лента памяти содер- содержит некоторую цепочку у=ма;-,и мы говорим, что устройство М преобразует цепочку а^ ,...,арл в цепочку у. Будем называть уст- устройство М преобразователем, который отображает входные цепоч- цепочки на выходные и соответственно входные языки на выходные. Обозначим через М(Ь) множество таких цепочек у, что для неко- некоторого х^Ь М преобразует х в у. Заметим, что преобразователь ни- никогда не достигает конфигурации, при которой он видел бы # на ленте памяти. Следовательно, он никогда не может «допустить» входную цепочку в ранее определенном смысле. В случае преобразо- преобразователя лента памяти должна рассматриваться как выходная лента. В случае преобразователя ограничения на формулу правил ав- автомата РЭ5, касающиеся возврата в 50, очевидно, не понадобятся. 1/2 11 Заказ № 563
146 И. Хамский В самом деле, можно допустить, что правило / преобразователя имеет вид (а, 5^, 6)-^Eу, х) [как в A) ], где а^Л/ , Ь ^ Лои х есть це- цепочка в алфавите Ло— {<?} , опуская дальнейшие ограничения. Очевидно, что лента памяти преобразователя М не оказывает существенного влияния на течение его работы; и действительно, можно построить устройство Т, которое выполняло бы то же самое преобразование, что и М, и при этом удовлетворяло бы дополни- дополнительному ограничению, что следующее состояние определяется только входным символом и настоящим состоянием. Состояния Т записываются в виде Eг, а), где 5^ —состояние Му а а=ф=е — символ его выходного алфавита. Начальное состояние Т есть E0, а). Если М имело команду (а,5г, Ь)->(8;- , х), Т будет иметь команду [а, E„ 6), Ь] -»[Eу, с), х]у D) где либо х=ус, либо х=е и с=Ь. Поведение Т, очевидно, ничем не отличается от поведения Му но у Т следующий шаг работы зависит только от входного символа и настоящего состояния, т.е. Т пред- представляет собой устройство РЭ5 без контроля. Выбрасывая ненуж- ненужное указание на символ, считываемый с ленты памяти, можно при- придать правилам Т вид (а, I,,) -> (Е,, х), E) указывающий, что когда Т находится в состоянии Е. и наблюдает символ а (если афе) или не наблюдает никакого символа (если а=ё) на входной ленте, оно может перейти в состояние Ну, продвинуть входную ленту на X (а) клеток влево, а ленту памяти на Цх) клеток влево, записывая х на вновь открывшихся клетках ленты (если они имеются). Каждый преобразователь можно полностью описать ди- диаграммой состояний, на которой узлы представляют состояния, а стрелка с надписью (а, х) ведет из состояния Х^ в Ну тогда и толь- только тогда, когда правило E) есть одно из правил работы устройства. Предположим, что на диаграмме состояний, представляющей преобразователь М, невозможно пройти по замкнутому пути, на- начиная и кончая фиксированным узлом, если идти только по стрел- стрелкам с пометкой (е, х) для некоторого х. Точнее говоря, пусть не су- существует такой последовательности состояний Eа1,...,5«л) устрой- устройства М, что ах=ай, и для каждого *'<& существует х^ такая, что (еу8а)->(8а. , X}) есть правило М. Если это условие выполнено, то число выходных цепочек, в которые может быть преобразована данная входная цепочка, ограничено, и такое М называется огра- ограниченным преобразователем. Отображение, осуществляемое преобразователем, назовем (ко- (конечным) преобразованием. Преобразование есть отображение цепо- цепочек на цепочки (и, следовательно, языков на языки) такого рода, что оно может быть выполнено строго конечным устройством.
Формальные свойства грамматик 147 Если дан ограниченный преобразователь 7, то можно, очевидно, отбросить сколько угодно команд вида (еу81)->(8;-у х)у не изменяя осуществляемого преобразования, а просто позволив устройству при переходах из состояния в состояние печатать более длинные цепочки. И наоборот, добавив достаточное количество нигде более не употребляемых состояний и достаточно команд вида E) с а=еу можно для каждого (не обязательно ограниченного) преобразова- преобразователя 7 построить преобразователь 7', осуществляющий то же ото- отображение, что и 7, но имеющий команды только вида (а, 5г) ->■ (8^^Ь)У где Ь^-Ао. Заметим, что из существования такого преобразователя 7' не- немедленно вытекает возможность построения «обратного» преобразо- преобразователя 7*, который отображает цепочку у на цепочку х тогда и только тогда, когда 7 отображает хна у. Для построения 7* доста- достаточно просто поменять местами входные и выходные символы в командах 7'; если, например, в команде вида E) л: есть символ из Л о, то надо поменять местами а и х. Это сводится к замене каждой над- надписи (ау Ь) на стрелке диаграммы состояний надписью F, а). Итак, для любого преобразователя 7 может быть построен обратный ему преобразователь 7*, который отображает цепочку у на х тогда и только тогда, когда 7 отображает х на уу и который отображает язык Ь на множество всех таких цепочек ху что 7 отображает х на у^Ь. Если 7—ограниченный преобразователь, то 7* может и не быть ограниченным. Если обратный преобразователь 7* также ог- ограничен, то 7 называется преобразователем без потери информации. Общее исследование вопросов, относящихся к различным видам преобразователей, см. у Шюценберже и Хомского ([61,69]). Эффект применения преобразователей к бесконтекстным языкам будет рассмотрен в разд. 4.5. Здесь отметим только, что если 7 преобразует язык Ь в V и Ь есть регулярный язык, то V также бу- будет регулярным языком. Известно также, что для каждого регуляр- регулярного языка Ь существует преобразователь ТьУ отображающий Ь на фиксированный язык V (а также такой, который отображает V на Ь)у где V — множество всех цепочек в выходном алфавите (в об- обратном случае — во входном алфавите, причем если входной алфа- алфавит состоит только из одного символа еу то преобразователь по оп- определению будет не ограниченным; в противном случае он всегда может быть сделан ограниченным). Эти и некоторые другие связан- связанные с этими факты становятся очевидными просто из рассмотрения диаграммы состояний. 1.6. Преобразование и автоматы РОЗ Мы описали преобразователь в виде устройства РОЗ, которое никогда не сдвигает свою ленту памяти вправо, т.е. никогда не сти- стирает — ни на каком шаге вычислений. Оно переводит входную 1/2 И*
148 Н. Хомский цепочку л: в выходную цепочку у. С другой стороны общего вида уст- устройство РОЗ использует свою ленту памяти для того, чтобы опреде- определить свои дальнейшие шаги, в частности окончательный допуск входной цепочки х. Оно заканчивает вычисление допущением х только тогда, когда при окончании содержание ленты памяти рав- равно просто еу т.е. лента памяти пуста. Следовательно, мы можем пред- представить себе общего вида устройство РО5 преобразующим цепочки, которые оно получает, в пустую цепочку е, которая находится на ленте памяти, когда вычисление заканчивается допущением вход- входной цепочки. (Устройство по существу представляет характеристи- характеристическую функцию некоторого множества цепочек.) Мы намереваемся показать, как можно с каждым устройством РО5 М связать преоб- преобразователь 7\ построенный таким образом, что тогда и только тог- тогда, когда М допускает х (т.е. преобразует ее в е), Т преобразует х в цепочку уу которая, в том смысле, как это мы определим, сводит- сводится к е1). Предположим, что М есть устройство РЭ5 с входным алфавитом Л/ и выходным алфавитом Ао= {еу а1у...,ад }. Построим новое устройство Мг с входным алфавитом Л/ и вы- выходным алфавитом Ао, содержащим 2^+1 символов, где Ао^ =А0 I) {а'1у...,ад'}. Будем трактовать каждый элемент а/ в основ- основном как «правый обратный» для а{. Более формально будем гово- говорить, что цепочка х сводится к у в случае, когда имеется последова- последовательность цепочек г1у...,2т (ш!>1), такая, что г^=х, гт=у, и для каждого 1<Ст имеются цепочки хю1У хю{ и % ^Ао, такие, что 22= = хю1 а^ а ^ щ и 21^1-=хю1хаI . Другими словами, х сводится к у, если х=у или если у может быть образована из х последователь- последовательным стиранием подцепочек а,] а/. Мы говорим, что цепочка х блокирована, если х—уага^гю, где г сводится к е и либо уа сводится к е, либо а (^Ао— [едь). Если х блокирована, то для всех V, XV она блокирована и не сводится к е. Мы говорим, что лента памяти блокирована, если цепочка, которую она содержит, блокирована. Новое устройство Мг представляет собой автомат РЭ5, кото- который никогда не сдвигает вправо свою ленту памяти. Оно будет по- построено таким образом, что если М не допускает х, то Мг с х на входе заканчивает работу либо прежде чем прочтет х, либо с бло- блокированной лентой памяти; если же М допускает х, то М' будет работать так, что когда оно прочтет всю цепочку х, лента памяти не будет блокирована, т.е. ее содержание будет сводиться к е. Состояния М' будут обозначаться теми же символами, что и со- ) Результаты этого раздела и разд. 4.2 получены во время совместной ра- работы с М. П. Шюценберже. Краткое изложение см. [11]. Обобщения и отно- относящиеся к ним результаты см. в работах [64, 65, 67].
Формальные свойства грамматик 149 ответствующие состояния М, и50 снова будет начальным состоя- состоянием. Предположим, что К и /С'— конфигурации машины-ленты для М и М' соответственно, удовлетворяющие следующим условиям: К достижимо из начальной конфигурации М. Цепочка ы), содержа- содержащаяся на ленте памяти устройства М' в К', сводится к цепочке у, содержащейся на ленте памяти устройства М в К. Кроме того, ес- если уфе, то хю^гаь для некоторого к (т.е. она имеет нештрихован- ный символ на правом конце). Устройства МиМ' наблюдают одну и ту же клетку идентичных входных лент и находятся в одном и том же внутреннем состоянии. В этом случае мы говорим, что К и К' согласованы. Заметим, что когда К и К' согласованы, тогда либо М закончило работу с пустой лентой памяти в (этом случае содер- содержимое ленты памяти М' есть гаъ ', которое сводится к ё)у либо М и М' находятся в одной и той же ситуации. Правила в М' определяются правилами в М следующим спо- способом. Пусть (Ь, 5,, ак)-±(Зр х) F) есть правило в М. Если хфа> то М' также имеет правило F). Предположим, что х=а. Тогда, если аь =а (в этом случае /=0), то М' будет иметь правило G), а если аь =о, то М' будет иметь правило (8) для каждого г G) (Ь, 5,, аЛ)-^Eу> а\а\аг). (8) Предположим теперь, что /<\ и /С2— конфигурации М, а /С/— конфигурация Мг, которая согласована с Кг. Конфигурация К\ не является заключительной, и правило F) в М переводит его из конфигурации К\ в К2- Ясно, что если х=^о в правиле F), то пра- правило в М\ соответствующее F), будет переводить ЛГ из /С/ в конфигурацию /С2\ которая согласована с /С2- Предположим теперь, что х=о в правиле F). Так как К± по предположению не является заключительной конфигурацией, то М в Кг должно содержать на ленте памяти цепочку уак для неко- некоторого к. Либо у=е, либо у=гаг для некоторого г. Предположим, что у=е. Тогда должно быть ак^=о и / = 0 в пра- правиле F). Следовательно, М' имеет соответствующее правило G), которое переводит его из /С/ в конфигурацию К2'. Но /С/ согласо- согласована с /Сз, и, таким образом, содержимое ленты памяти М' в /(\ должно быть 1а, где I сводится к е. Применением правила G) М' переводится в /С'2, где содержимое ленты памяти равно гоо\ которое сводится к е. Следовательно, /С2' согласуется с /С2. Предположим, что у=гаг Тогда правило F) переводит М в 10 Заказ № 563
150 Н. Хомский /С2, в котором лента памяти содержит гаг. Так как К\ согласована с Къ то содержимое ленты памяти Мг в К\ должно равняться це- цепочке гаг иак, где / сводится к г, а и к е. По построению М' имеет правило (8), соответствующее правилу F); оно переводит М' в /С2\ которое идентично Кг в отношении входной ленты и внутрен- внутреннего состояния и в котором лента памяти содержит 1аг иак а/ап что сводится к гаг =у и Кг согласована с Кг'- В каждом случае мы видим, что если правило F) переводит М из Кг в /С2, то М' имеет правила, переводящие его из /С/ (согласо- (согласованной с Кх) в Кг (согласованную с /С2). Предположим, что К\—снова конфигурация М, не являющая- являющаяся заключительной, /С/—согласованная конфигурация М, что правило Г в М' переводит М' в конфигурацию /С2' и что нет прави- правила в М, переводящего его в конфигурацию /С2, которая согласована с Кг'• Ясно, что /' не было выведено (с помощью ранее данной кон- конструкции) из некоторого правила М, имеющего такой же вид, как правило F), где хфс Таким образом, мы можем предположить, что /' есть правило вида G) или (8) и что /' было получено описанным способом из правила /: F, 5^, ак)->(8;-, с). В любом случае, так как К\ и К\ согласованы и ни одно из них не является заключи- заключительной конфигурацией, лента памяти М в Кг должна содержать цепочку уак, где у=е или у=2а8 для некоторого 5, и лента памяти Мг в К\ должна содержать цепочку шА, где V сводится к у. Предположим, что /'— правило G). Тогда ак=о и содержимое ленты памяти М' в Кг есть уаа'- Устройство М' заканчивает ра- работу в состоянии 50 с лентой памяти, содержащей цепочку, которая сводится к у\ но так как о(=ак) не может быть напечатана на ленте памяти ни на каком шаге М и так как содержимое ленты памяти М в К\ есть уа, обязательно у=е. Итак, / переводит М из Кг в кон- конфигурацию 7С2, которая согласуется с Кг' вопреки предположению. Остается предположить, что /' есть правило (8). Тогда содержа- содержание ленты памяти М' в Кг есть Х)ака'и а2аы что сводится к уака'ка'гаг и в свою очередь к уа/аг. Если у=е, то лента памяти Мг блокирована в /С2'. Предположим, что у=га8. Тогда / перево- переводит М в конфигурацию /С2, в которой лента памяти содержит га8* Предположим, что 8=г. Тогда содержание ленты памяти М' в Кг г которое сводится к уаг'аг=га8а'гап сводится далее к гаг=га8. Но в этом случае /С2 и /С2' согласованы вопреки предположению. Следовательно, г=/=з. Но в этом случае лента памяти М' в Кг сно~ ва блокирована. Следовательно, в любом случае, если /' есть пра- правило (8), она блокирована. Как мы видели, если лента памяти в какой-то момент блокиру- блокируется, то она остается блокированной в течение всей работы устрой- устройства. Следовательно, если /' применено, то устройство М' не мо- может достичь конфигурации, в которой лента памяти сводится к е
Формальные свойства грамматик 151 Коротко говоря, М' делает предположение, что после «стира- «стирания» аи=^о, перейдя в конфигурацию /С2, устройство М будет на- наблюдать на ленте памяти символ аг. Исходя из этого, оно пишет а'ка'гаг на своей ленте памяти, так что оно теперь тоже наблюдает на ленте памяти аг, «стерев» при этом и ак (знаком а'к), и аг (зна- (знаком а'г). Если предположение было правильным, то новая конфи- конфигурация М' согласована с /С2; если оно было неверно, то лента па- памяти Мг блокирована и работа М никогда не закончится с лентой памяти, содержащей цепочку, которая сводится к е. Но М и М' имеют идентичные начальные конфигурации, если они имеют идентичные входные ленты. Следовательно, если М до- допускает х, то возможно, что М' будет работать, начиная из своей начальной конфигурации с входом х, и закончит работу в ситуа- ситуации (#, 50, °') с цепочкой у на ленте памяти, которая сводится к е. А если М не допускает х, то никакой возможный процесс работы М' из его начальной конфигурации с цепочкой х на входной ленте не может закончиться в ситуации (#, 5у, а) для некоторого а с це- цепочкой, сводящейся кеъ качестве содержимого ленты памяти. (За- (Заметим, что содержимое ленты памяти в М' может быть сведено к е тогда и только тогда, когда Мг напечатало с' и вернулось в 50 по правилу, аналогичному 7.) Заметим также, что М' есть устройство РБ5, которое никогда не сдвигает свою ленту памяти вправо (никогда не «стирает»). Мы уже показали в разд. 1.5, как в соответствии с каждым устройством та- такого рода мы можем построить эквивалентный преобразователь, ко- который работает независимо от содержимого своей ленты памяти. Пусть Т — преобразователь, построенный из М' таким способом, как это описано в разд. 1.5. Тогда М допускает л; тогда и только тог- тогда, когда Т преобразует х в цепочку у, которая сводится к е. Таким образом, мы имеем следующий общий результат. Теорема 5. Если задано устройство РБ5 М, то можно по- построить преобразователь Т, такой, что М допускает х тогда и только тогда, когда Т преобразует х в цепочку у, сводящуюся к е. Предположим теперь, что Ь (М) — язык, допускаемый устрой- устройством РО5, обозначенным через М\ Т — соответствующий преобра- преобразователь, существование которого гарантируется теоремой 5; К — множество цепочек в выходном алфавите Т, которые сводятся к е; III— множество всех цепочек в выходном алфавите Т и Т'— обрат- обратный преобразователь, который отображает х на у в случае, если Т отображает у на х. Тогда ЦМ) = Т'(К П 5П(^//)). Но Vг — регуляр- регулярный язык и, как мы заметили в разд. 1.5, из этого следует, чтоТ'((//) тоже регулярный язык. Легко также показать, что К— бесконтекст- бесконтекстный язык (см. разд. 4 предыдущей главы). 10*
152 Н. Хомский В разд. 4.6 мы покажем, что пересечение бесконтекстного языка и регулярного языка является бесконтекстным языком и что ко- конечный преобразователь переводит бесконтекстный язык в другой бесконтекстный язык. Поэтому Ь(М) есть бесконтекстный язык. В теореме 17 разд. 4.2 мы увидим, что для каждого бесконтекст- бесконтекстного языка существует порождающее его устройство РО5 с огра- ограниченным контролем (см. разд. 1.4). Из этих результатов мы можем заключить следующее. Теорема 6. Следующие три положения эквивалентны: а) Ь допускается некоторым устройством РО5; б) Ь допускается некоторым устройством РЭ5 с ограниченным контролем [см. теорему 4 (б)]; в) Ь —бесконтекстный язык. 1.7. Другие виды ограниченно-бесконечных автоматов Область ограниченно-бесконечных автоматов имеет огромный потенциальный интерес не только для теории порождающих про- процессов, но также, по-видимому, и для психологии, так как релевант- релевантные психологические модели, представляющие знание и способ- способности организма, как можно ожидать, не будут ни строго конеч- конечными, ни неограниченно-бесконечными в смысле устройств, изуче- изучением которых мы займемся в разд. 1.8. Однако исследование этой области было предпринято совсем недавно, и известны пока лишь немногие начальные результаты. Ритчи [54] исследовал иерархию устройств, обладающих следующим общим свойством: на нижнем уровне иерархии находятся конечные автоматы, а на каждом сле- следующем уровне объем памяти, находящийся в распоряжении уст- устройства, является функцией длины входа, причем эта функция мо- может быть вычислена устройством предыдущего уровня. Ямада [78] изучал случай автоматов «реального времени», которые подчинены условию, что допустимое число шагов работы определяется длиной входа (обзор некоторых его результатов см. в работе [45]). Шюценберже [65, 68] развил теорию конечных автоматов, снаб- снабженных множеством счетчиков, которые могут изменять состояния в соответствии с простыми арифметическими условиями на каждом шаге работы. Он [63] также связал некоторые из этих результатов с общей теорией бесконтекстных грамматик (см. разд. 4.7). Устрой- Устройства, рассмотренные в разд. 2 и 3, являются ограниченно-бесконеч- ограниченно-бесконечными автоматами, и представляется разумным предсказать, что именно в этой форме математическое изучение грамматик, наконец, найдет свою естественную форму. 1.8. Машины Тьюринга Каждое устройство М рассмотренного вида характеризуется тем свойством, что объем времени и пространства, которые оно исполь-
Формальные свойства грамматик 153 зует для решения какой-либо отдельной задачи (например, при до- допущении или отбрасывании определенных входов) является в неко- некотором смысле заранее заданным. В действительности, наиболее глу- глубокие и наиболее далеко идущие математические исследования в теории автоматов касаются устройств, которые не обладают этим свойством. Такие устройства, называемые машинами Тьюринга, мы теперь коротко рассмотрим. Мы получим машину Тьюринга, если возьмем линейно-ограни- линейно-ограниченный автомат, заданный в определении 5, и добавим к его прави- правилам пятерки (#, /, й, /, /л), где /=/=0, имеющие свойства, описанные в определении 5. Эти правила позволяют устройству использовать не ограниченные заранее куски ленты влево и вправо в процессе вычислений, так как символ # может быть заменен теперь на сим- символ алфавита. Обычно также требуют, чтобы эти устройства были детерминированными в том смысле, что для заданной конфигурации машины-ленты имеется лишь один возможный ход; если (/, /, к, /,/л) и (I, /, к'', Г, ш') являются правилами, то к=к', /=/' и т = т'. Можно сказать, что машина Тьюринга допускает (порождает) це- цепочку при условиях, в основном аналогичных поставленным выше. А именно мы пишем на ленте символы цепочки <р в подряд идущих клетках, а остальную часть бесконечной ленты считаем заполненной символом #. Мы устанавливаем блок управления в состояние 50 со считывающей головкой, стоящей против самоголевого символа аф #. Если устройство проработало до первого возвращения в 50, то мы говорим, что машина допускает (порождает) <р. Кроме того, после- последовательность символов, которые теперь стоят на ленте между сим- символами #, образует цепочку ф, которую можно назвать выходом машины. Мы можем, иначе говоря, рассматривать это устройство как частичную функцию, которая переводит ср в ф при поставленных условиях. Полученные таким способом устройства своим поведением пол- полностью отличаются от автоматов, рассмотренных в разд. 1.2—1.7. Так, например, не существует общего способа определить по задан- заданному входу, остановится ли устройство или же будет работать до бесконечности. Далее, не существует общего способа определить путем систематического исследования правил устройства, как дол- долго оно будет работать, если оно допускает входную цепочку, или какой кусок ленты будет использован, прежде чем будет получен ответ. Не существует единого и систематического способа опреде- определения по изучению правил машины Тьюринга, даст ли она вооб- вообще когда-нибудь выходной символ, будет ли ее выход (или мно- множество, которое она допускает) конечным или бесконечным; также невозможно в общем случае определить при помощи некоторого практического приема, будут ли два таких устройства выдавать когда-либо одинаковый выход или же допускать одно и то же мно-
154 //. Хомский жество. Тем не менее важно отметить, что машина Тьюринга за- задается конечным числом правил и в каждый момент работы она ис- использует только конечный кусок ленты (т.е. только конечное число клеток имеется между окаймляющими цепочками из символа #). Кроме того, если она допускает заданный вход, то этот факт может быть установлен после конечного числа операций. Однако если она не допускает некоторый вход, то этот факт может никогда не быть установлен. (Если после определенного числа шагов она еще не вернулась в 50, мы не знаем, произошло ли это от того, что она не- недостаточно долго работала, или от того, что она никогда не достиг- достигнет этого конечного состояния, и можем никогда этого не узнать.) Изучение машин Тьюринга является базисом быстро развиваю- развивающейся ветви математики (теории рекурсивных функций). Обзор этой области приводится у Дэвиса [17] и у Роджерса [55]. 1.9. Алгоритмы и разрешимость Интересно отметить, что существуют машины Тьюринга, которые универсальны в том смысле, что они могут моделировать поведение произвольной машины Тьюринга. Предположим, действительно, что среди цепочек, образованных из алфавита Л, который мы счи- считаем общим для всех машин Тьюринга, мы выбираем бесконечное число для представления целых чисел; например, положим аг = 1 и рассмотрим цепочку 1...1, состоящую из п последовательных еди- единиц и представляющую число п. (Будем в дальнейшем использовать обозначение хп для цепочки, состоящей из п последовательных вхождений цепочки х.) Предположим теперь, что мы имеем нумерацию Мъ М2,... для всего бесконечного множества машин Тьюринга. Эта нумерация может быть задана совершенно явно и непосредственно. Тогда су- существует универсальная машина Тьюринга Ми, обладающая сле- следующим свойством: Ми допускает вход 1 п<хх и при получении этого входа выдает выход у в том случае, если Мп допускает х и при по- получении этого входа выдает выход у (а — некоторый нигде более не используемый символ). Мы можем считать, что входная лента Ми содержит в памяти программу 1", которая предписывает Ми действовать так же, как машина Тьюринга с номером /г, когда на ее ленте записан любой вход х. Каждая машина Тьюринга, таким образом, может рассматриваться как одна из программ для универ- универсальной машины Ми. Обычная цифровая вычислительная машина в действительности является универсальной машиной Тьюринга, такой, как Мю если мы сделаем предположение, что память может расти (например, могут добавляться новые куски ленты) по мере надобности неограниченно в процессе каждого отдельного вычис- вычисления. Программа, запоминаемая машиной, указывает, поведение какой из машин Тьюринга она должна моделировать.
Формальные свойства грамматик 155 Если задано множество И цепочек, то часто нас интересует, принадлежит ли некоторая заданная цепочка этому множеству. Кроме того, часто нас интересует, существует ли эффективный метод , с помощью которого за конечный промежуток времени мож- можно определить, принадлежит ли произвольная цепочка х множест- множеству Е. Если такая процедура существует, то мы говорим, что мно- множество И разрешимо [йеадгЫе или сотри!аЫе], или что сущест- существует алгоритм для определения принадлежности к И, или что про- проблема разрешения для И (алгоритмически) разрешима (все эти вы- выражения эквивалентны). Алгоритм, определяющий принадлеж- принадлежность произвольного элемента х множеству X), может рассматри- рассматриваться как программа вычислительной машины, обладающая сле- следующим свойством. Вычислительная машина, запоминающая эту программу, при входе х непременно закончит работу с ответом да (если х^ И) или нет (если х$Ъ). Мы должны здесь предположить, что память у машины неограничена, т. е. что мы имеем дело с идеаль- идеальной вычислительной машиной—универсальной машиной Тьюринга. Предположим, что мы теперь расширили наше определение ма- машины Тьюринга следующим образом: добавили в блоке управления определенное состояние 5* и говорим, что для заданного входа х устройство допускает х, если оно, как и раньше, возвращается в «50, и что оно запрещает х, если оно приходит в 5*. Будем называть такое устройство машиной Тьюринга с двумя выходами. Если за- заданы машины Тьюринга Мг и М2, которые допускают непересе- непересекающиеся множества Ех и И2 соответственно, то всегда возможно построить машину М* с двумя выходами, которая будет допускать Ех и запрещать Е2. Сделав такое изменение, снова рассмотрим вопрос разрешимо- разрешимости. Множество И разрешимо, если существует программа вычис- вычислительной машины, которая гарантирует окончание вычисления для произвольного входа х, принадлежащего множеству И, за ко- конечное число 1(х) шагов. Можно теперь переформулировать поня- понятие разрешимости следующим образом: множество разрешимо, если существует машина Тьюринга с двумя выходами, которая до- допускает все элементы этого множества и запрещает элементы, не принадлежащие ему. Множество называется рекурсивно-перечислимым в том случае, когда существует машина Тьюринга, которая допускает все (и толь- только) цепочки из этого множества. Говорят, что эта машина рекурсив- рекурсивно перечисляет {порождает) заданное множество. Множество назы- называется рекурсивным, если и оно, и его дополнение рекурсивно пере- перечислимы1).. Ясно, что множество рекурсивно в том и только том слу- Более употребительные термины для этих множеств — «перечисли- «перечислимое» и «разрешимое».— Прим. перев.
156 Н. Хомский чае, когда оно разрешимо в только что определенном смысле, так как если Е рекурсивно, то существует машина Тьюринга Мх, которая допускает Е, и машина Тьюринга М2, которая допускает его дополнение. Следовательно, как было отмечено ранее, мы мо- можем построить машину М3 с двумя выходами, которая будет допус- допускать множество Е, перечисляемое машиной Мъ и запрещать мно- множество Е (т.е. дополнение Е), перечисляемое машиной М2. Чтобы определить, принадлежит ли цепочка х множеству Е, мы должны записать х на входной ленте и заставить М3 работать. Это значит, что обе машины Мх и М2 начинают синхронно работать с входом х> После некоторого конечного отрезка времени одна из машин оста- остановится, получив х\ следовательно, после конечного отрезка вре- времени М3 либо допустит, либо запретит х, и мы будем знать, при- принадлежит ли х множеству Е или его дополнению. С другой сторо- стороны, если Е разрешимо, то оно рекурсивно, так как устройство с двумя выходами, которое допускает все его элементы и запрещает элементы, не принадлежащие ему, легко может быть разделено на две машины Тьюринга, одна из которых допускает все элементы множества, а другая допускает все элементы, не принадлежащие этому множеству. Классический результат теории машин Тьюринга состоит в том,, что существуют рекурсивно-перечислимые множества, которые не рекурсивны. Действительно, некоторые хорошо известные мно- множества обладают этим свойством. Так, множество общезначимых формул элементарной логики, т.е. теории («и», «или», «не», «сущест- «существует», «для всякого»), называемой исчислением предикатов первой ступени или узким исчислением предикатов, рекурсивно, если мы ограничимся одноместными предикатами, но не рекурсивно (хотя рекурсивно-перечислимо), если мы разрешим двуместные предика- предикаты, т.е. отношения. Рассмотрим формализованный язык обычной арифметики. Если он удовлетворяет обычным условиям адекватности для аксиомати- аксиоматических систем, то известно, что множество теорем будет хотя и ре- рекурсивно-перечислимо, но не рекурсивно. Действительно, формаль- формальная арифметика обладает следующим свойством: существует меха- механическая процедура/, такая, что если М1 представляет собой какую-либо машину Тьюринга с двумя выходами, которая допускает все теоремы, выводимые из некоторого непротиворечивого множест- множества аксиом этой теории, и запрещает отрицания всех этих теорем, то /(*) есть формула (даже истинная формула) формальной арифме- арифметики, которая не допускается и не отвергается машиной Мь. По- Поэтому не существует машины с двумя выходами, которая допускала бы множество Е и запрещала бы его дополнение Е, если Е содер- содержит все теоремы этой системы и не содержит их отрицаний. Кроме того, существуют совершенно разумные множества, которые не
Формальные свойства грамматик 157 являются рекурсивно-перечислимыми; например, множество истин- истинных утверждений формальной арифметики или множество всех вы- выполнимых формул теории кванторов. Понятия разрешимости и существования алгоритма могут быть легко обобщены и распространены за пределы тех частных вопросов, которые только что обсуждались. Определим проблему как класс вопросов, каждый из которых получает ответ «да» или «нет». Проб- Проблема называется рекурсивно-разрешимой или разрешимой, если су- существует механическая процедура, применяя которую к любому вопросу из этого класса, мы получим через конечный промежуток времени ответ либо «да», либо «нет». Разрешимость проблемы может в общем случае быть сформулирована так же, как это показано вы- выше. В качестве примера рассмотрим случай, к которому мы еще вер- вернемся, и предположим, что нам задано множество порождающих грамматик 0ъ 02,... определенного рода (заметим, что слова нам задано множество в этом контексте означают, что задано устройство, которое рекурсивно его перечисляет) и что нас интересует, разре- разрешима ли рекурсивно проблема эквивалентности. Эта проблема состоит в том, чтобы для произвольной пары грамматик 0^ 6;- оп- определить, порождают ли они один и тот же язык. Мы можем по- поставить вопрос следующим образом: существует ли машина Тью- Тьюринга с двумя выходами, которая допускает цепочку \ьа\*\ если 01 и Су порождают один и тот же язык, и запрещает цепочку \1а V, если 01 и Су порождают различные языки? Проблема эквивалент- эквивалентности множеств 0ъ С2,... рекурсивно разрешима тогда и только тог- тогда, когда такое устройство существует. Или же рассмотрим проб- проблему определения для любой грамматики Сь порождает ли она конечное множество. Эта проблема рекурсивно разрешима в том случае, если существует машина Тьюринга с двумя выходами, ко- которая допускает цепочку \\ если 0ь порождает конечный язык, и запрещает ее, если 01 порождает бесконечный язык. Аналогично этому, другие проблемы разрешимости могут быть сформулированы таким же образом, как и проблемы эквивалентности и порожде- порождения конечного множества, которые, как мы видели, неразрешимы для машин Тьюринга. Машины Тьюринга (и вычислительные машины) обычно рас- рассматриваются как устройства для вычисления функций, а не для порождения множеств цепочек, как мы их описывали. Эти две точ- точки зрения, однако, полностью эквивалентны. Таким образом, как было раньше указано, мы можем рассматривать машины Тьюринга представляющими (частичную) функцию, которая отображает х в у всякий раз, когда, имея на входе х, она работает, пока не допус- допустит х (т.е. в первый раз возвратится в 50), и в этот момент ее лен- лента содержит в точности у (окаймленную символами #). Или, что равносильно, мы можем к алфавиту добавить новый символ а и
158 И. Хомский считать, что машина Тьюринга представляет отношение, имеющее место между х и у тогда и только тогда, когда она допускает цепоч- цепочку хау, или что она представляет функцию, отображающую х в у, если это отношение является функцией. При обоих способах пред- ставимо одно и то же множество функций. Машина Тьюринга с дву- двумя выходами может рассматриваться, например, как вычислимая частичная функция, которая переводит множество И, которое она допускает, в число 1 и множество Е*сЕ, которое она запрещает, в число 2. Специфические термины, в которых мы описали машины Тьюринга и другие автоматы, хотя и эквивалентны обычным тер- терминам, специально приспособлены для целей настоящей главы. 2. Общие системы подстановок Мы намереваемся теперь исследовать взаимосвязь теории грам- грамматик (см. разд. 3—6 предыдущей главы) и теории автоматических устройств (разд. 1) и изучить мощность и формальные свойства различного рода грамматик. К сожалению, этот обзор должен ог- ограничиться рассмотрением грамматик непосредственных составля- составляющих, а не трансформационных грамматик и (за исключением разд. 4.6) вопросами перечисления множеств предложений, а не множеств структурных описаний. Как было замечено ранее, причина состоит просто в том, что известно очень мало значительных результатов, касающихся этих более интересных, но гораздо более трудных воп- вопросов. В разд. 3 предыдущей главы мы ввели класс грамматик, осно- основанных на правилах подстановки [гешШп§ т1ез] ср->ф, где ср и -ф — цепочки символов конечного словаря V. В этом разделе мы будем рассматривать только такие системы, заранее предполагая известными понятия, введенные в разд. 4 предыдущей главы, и следуя соглашениям об обозначениях, установленным там. В част- частности, мы полагаем, что задан универсальный терминальный сло- словарь Ут и универсальный нетерминальный словарь Ум, непересе- непересекающийся с Уг, где У=Ут I) Ум *). Если на вид правил подстановки, имеющихся в нашем распоря- распоряжении, никаких дополнительных ограничений не налагается, то грамматики, определенные в разд. 4 предыдущей главы, могут быть названы общими системами подстановок. Вопрос об отношениях этих общих систем с теорией автоматических устройств, как было подчеркнуто в разд. 1, весьма прост. Действительно, любая машина Тьюринга может быть представлена непосредственно как общая ) Напоминаем это соглашение: греческие буквы употребляются для обо- обозначения цепочек в V; прописные латинские — для цепочек в Уы, строчные—■ для цепочек в Ут, первые буквы алфавита — для отдельных символов, по- последние — для цепочек.— Прим. перев.
Формальные свойства грамматик 159 система подстановок, и обратно. Мы можем выразить этот факт сле- следующим образом. Теорема 7. Ь есть терминальный язык, порождаемый систе- системой подстановок, тогда и только тогда, когда Ь есть реку рейв- но-перечислимое множество цепочек (#х1#9 #х2#,...), где хь не со- содержит ни одного вхождения символа #. Доказательство этого результата, принадлежащее Посту, см. у Дэвиса ([17], гл. 6, разд. 2). Основная идея этого доказательства состоит в том, что последовательные конфигурации машины Тью- Тьюринга могут быть определены с помощью правил подстановки ср-^ф. Предположим, например, что машина Тьюринга М имеет правило (I, /, к—1, т), указывающее, что, когда она находится в состоя- состоянии 5У- и наблюдает символ аь, она заменяет а-ь на ат и переходит в состояние 8к , в то время как лента сдвигается вправо на один шаг. В первый момент машина будет иметь такой вид, как это показано на рис. 8, а, а в следующий — такой, как показано на рис. 8,6, р C р р где а19 а2,... ,рх, C2,...— символы, записанные на ленте. Рассмотрим а а, а, В т А Л Рз Рис 8. Последовательные конфигурации машины-ленты для машины Тьюринга. теперь словарь V, состоящий из алфавита А машины Тьюринга МТ символа #, символа 5 и символов, обозначающих состояния М. В приведенном примере конфигурация, изображенная на рис. 8,а, может быть представлена в этом словаре цепочкой символов (9), а конфигурация, изображенная на рис. 8,6,— цепочкой A0), в ко-
160 Н. Хомский торых символ состояния стоит слева от символа, наблюдаемого ма- машиной в данный момент. . . . а3 а2 ах 5у аь ^ C2 C3 • - ., (9) . . . а3 а2 5^ ах аот рх р2 Рз - - - - Переход машины Тьюринга М от цепочки (9) к цепочке A0) может совершаться при помощи следующего правила подстановки: а18]аь-^8ка1ат. A1) Можно доказать, что поведение машины М полностью и однозначно определяется конечным числом таких правил подстановки. В разд. 1.8 мы описали поведение машины Тьюринга следующим образом: на ее ленте появляется конечная цепочка ср символов из ее алфавита А (не содержащего символа #) с бесконечной цепочкой символов # слева и справа от ср. Она начинает работать в состоянии 5о, наблюдая самый левый символ из ср, и продолжает работать до тех пор, пока она либо блокируется, либо возвращается в 50. В последнем случае мы говорим, что она допускает (порождает) це- цепочку #<р# (конечно, она может продолжать работать бесконечно). Предположим, что мы теперь изменили описание следующим об- образом. Если машина Тьюринга М должна вернуться в состояние 5о, она вместо этого двигает ленту до тех пор, пока считывающая головка не окажется против самой правой клетки, не содержащей #. В этом квадрате она печатает # и двигает ленту вправо, снова печатая # и двигая ленту вправо и т.д., пока она не достигнет по- последнего квадрата, не содержащего #, где она напечатает символ 5 и блокируется в указанном конечном состоянии. Эта последняя программа легко может быть построена. При этом изменении мно- множество порождаемых языков и характер правил остаются неизмен- неизменными. Машина допускает (порождает) #<р# в том и только том слу- случае, когда при заданном входе ср она работает до тех пор, пока не блокируется с лентой, содержащей все символы #, кроме единст- единственного вхождения 5. Кроме того, на каждом шаге вычислений на ленте имеется цепочка ср, не содержащая вхождений символа # и окаймленная с обеих сторон бесконечными цепочками из #. Этим способом мы можем полностью описать поведение такой машины Тьюринга М с помощью особого множества X) правил под- подстановки, которые преобразуют цепочку ^50 <р # в 4Ф54Ф в том и только том случае, когда М допускает #ср#. В силу детерминиро- детерминированного характера М множество И моногенно\ это означает, что для заданной цепочки х существует не более одной цепочки ф, кото- которая может быть результатом применения Е к %. Теперь рассмотрим множество правил И', содержащее ф->х в том случае, когда ^ принадлежит И, и содержащее также терминальное правило 5
Формальные свойства грамматик 161 Это множество И' правил образует общую систему подстановок. (#5#)-вывод в этой системе будет заканчиваться цепочкой #у# в том и только том случае, когда М допускает #ср#. Из теоремы 7 мы видим, что общие системы подстановок универ- универсальны. Если язык вообще может порождаться тем, что в интуитив- интуитивном смысле является строго определенной процедурой с конечным числом состояний, то он может порождаться грамматикой такого типа. Однако такие системы не представляют большого интереса для наших целей в настоящий момент. В частности, не существует естественного и единообразного метода связать с каждым закончен- законченным выводом некоторый С-маркер желаемого вида для его терми- терминальной цепочки. В этом смысле можно сказать, что произвольная машина Тьюринга, или общая система подстановок, слишком не- неограниченна, чтобы служить грамматикой. При наложении дополнительных ограничений на правила грам- грамматики мы придем к системе, которая представляет больший линг- лингвистический интерес, но обладает меньшей порождающей способ- способностью. Как было отмечено в разд. 1.8, отдельная машина Тьюрин- Тьюринга может рассматриваться не более и не менее как программа совер- совершенно произвольного вида для цифровой вычислительной машины с потенциально бесконечной памятью. Очевидно, что программа вычислительной машины, которая способна порождать предложе- предложения некоторого языка, сама по себе не представляет никакого науч- научного интереса, если только она не проливает некоторый свет на ха- характер структурных свойств, которые отличают язык от произволь- произвольного рекурсивно-перечислимого множества. Если все, что мы мо- можем сказать о грамматике естественного языка, заключено в ут- утверждении, что она является общей системой подстановок, то это значит, что мы не сказали ничего, представляющего интерес. (Даль- (Дальнейшее обсуждение см. в работах [10, 12].) Наиболее строгое из налагаемых нами условий будет сводить грамматики к устройствам с порождающей способностью строго ко- конечных автоматов. Мы увидим, что эти устройства принципиально не могут служить в качестве грамматик для естественных языков. Следовательно, прежде всего нас интересуют устройства с большей порождающей способностью, чем у конечных автоматов, но обла- обладающие большей степенью «структурности» (и, предположительно, меньшей порождающей способностью), чем произвольные машины Тьюринга. Другими словами, мы будем заниматься устройствами, относящимися к общей области ограниченно-бесконечных автоматов. 3. Контекстные грамматика Пусть имеется система О, удовлетворяющая всем условиям, за- задающим общую систему подстановок. Наложим на нее следующее дополнительное ограничение.
162 Н. Хомский Условие 1. Если ср-^ф есть правило О, то существуют не- ненулевые символы а1у...,ат, Ьъ..., Ъп,где т^я, такие, что ср=ах ...ат и ^~Ъх...Ъп. Иначе, условие 1 предполагает, что если ср->ф есть правило О» то ф не короче ср. Грамматика, удовлетворяющая условию 1, назы- называется грамматикой типа 1. В дальнейшем для каждого условия ьу которое будет выдвигать- выдвигаться, мы будем называть грамматику, удовлетворяющую этому усло- условию, грамматикой типа I, язык, порождаемый грамматикой типа ьТ мы будем называть языком типа г. Самые общие системы под- подстановок считаются грамматиками типа 0. Условия, которые мы будем рассматривать, расположены в порядке возрастающей стро- строгости,т.е. для каждого I грамматика типа *+1 всегда будет удовлет- удовлетворять условию для грамматики типа I, но будет такая грамматика типа I, которая не будет удовлетворять условию типа *+1. Условие 1 налагает существенное ограничение на порождающую* способность грамматики. Поскольку для вывода в грамматике типа I верно, что каждая строка имеет по меньшей мере такую же длину„ как и предыдущая, очевидна следующая теорема. Теорема 8. Каждый язык типа 1 представляет собой рекур- рекурсивное множество. Действительно, если задана С — грамматика типа 1 и цепочка л% то лишь конечное число выводов (тех, последние строки которых, не длиннее х) должно быть просмотрено, прежде чем мы решим, по- порождается ли х грамматикой О. Однако не все рекурсивные языки* порождаются грамматиками типа 1, как непосредственно показы- показывает рассуждение диагональным методом1). Хотя грамматики типа 1 порождают только рекурсивные мно- множества, в некотором смысле они близки к тому, чтобы порождать любые рекурсивно-перечислимые множества. Для простоты рассуж- рассуждений ограничимся множествами целых положительных чисел (без? потери общности), поскольку любое множество конечных цепочек может быть эффективно закодировано множеством целых положи- положительных чисел. Обратимся снова к описанию машины Тьюринга, данному в; разд. 1.8. Рассмотрим машину Тьюринга с алфавитом {1, е], где- е — единичный элемент (т.е. клетка, содержащая е, рассматрива- рассматривается как пустая, а замена 1 на е рассматривается как стирание).. Можно предположить, что каждая отдельная машина М работает следующим образом: на входе имеется последовательность 1',. *>1 (т.е. I последовательных вхождений 1, окаймленных с обоих сторон бесконечными цепочками символов #). Машина М начинает См. прим. 2 к стр. 285 русского перевода работы [8].— Прим. перев*.
Форчальные свойства грамматик работу в начальном состоянии 50, находясь против самого левого вхождения 1 на ленте, и продолжает до тех пор, пока не закончит ее в выделенном заключительном состоянии 5/?. К этому моменту на ленте содержится цепочка ср, окаймленная символами #, при- причем ср содержит / вхождений символа 1 и А вхождений символа е. Можно перестроить М так, что она не приде! в состояние 5/г, пока не будет /^>1; и без потери общности можно предположить, что, когда М пришла в состояние 5/?, она находится против самого ле- левого символа, отличного от #, и что все вхождения 1 предшеству- предшествуют всем вхождениям е (проще говоря, мы всегда можем добавить к любой машине М добавочный компонент, который автоматически переведет ее в эту заключительную конфигурацию, после того как. она закончит свою работу). Тогда выходом М, если только М дости- достигает состояния 5/?, начиная с выхода Р", будет цепочка V еи(]^>\„ к^О). Мы уже видели (разд. 1.2), что для некоторых (а может быть,, и для всех) входов М никогда не закончит свою работу и что не- невозможен алгоритм, определяющий по правилам М, закончит ли она работу при заданном входе и даже есть ли такой вход, при ко- котором она закончит работу. Если М кончает работу при входе 1* с выходом Р'ек, то мы говорим, что М отображает число I в число /. Это описание носит самый общий характер, и любая машина Тью- Тьюринга, представляющая частичную функцию (т.е. функцию,которая может не быть определена для некоторых элементов области зада- задания этой функции), отображающую целые положительные числа на целые положительные числа, может быть описана таким обра- образом. Хорошо известно, что область определения так описанной машины Тьюринга есть р?курсивно-перечислимое множество и что каждое рекурсивно-перечислимое множество является областью определения для некоторой машины Тьюринга. Заметим, что такая машина Тьюринга никогда не пишет символа #, хотя она может читать и стирать этот символ (расширяя тем са- самым кусок ленты, доступный для вычислений). Следовательно,, если М при входе V кончает работу с выходом Уек, то /+&>-*. Далее, непосредственно видно, чго если, подобно тому как описано в разд. 2, мы построим множество правил подстановки, точно отра- отражающее поведение М, то эти правила будут составлять моногенную грамматику О типа 1. Условие 1 будет выполнено в силу того, что кусок ленты, используемой к данному моменту, никогда не умень- уменьшается. Если М получает выход Р'ек при входе V , то О выдаст (±^501/#)-вывод, заканчивающийся цепочкой #8рУек#> и обрат- обратно. Хотя М может перечислять любое рекурсивно-перечислимое множество (как область определения представляемой ею функции),, множество выходов, которые она порождает, рекурсивно. Предположим теперь, что мы выбираем машину Тьюринга и сопоставляем ей грамматику О только что описанным способом.
164 Н. Xом скип Допустим далее, что мы строим грамматику С*, которая содержит все правила О, и еще следующие четыре правила для порождения «начальных цепочек», необходимых для О: Эти правила позволяют дать законченный (#5 #)-вывод каждой це- цепочки вида #501/#, где ^*>Л, и только таких цепочек. Следова- Следовательно, полная грамматика С* будет давать законченный (#5 # ^вы- ^вывод цепочки #®# тогда и только тогда, когда у=3р\*ек (/^>1), и для некоторого г, М при заданном входе V заканчивает работу с выходом Уек. Итак, для произвольной машины Тьюринга, перечис- перечисляющей рекурсивно-перечислимое множество 2 в качестве своей области определения, мы можем построить грамматику типа 1, которая порождает те и только те цепочки вида #5^срф#, для ко- которых ср^Ё, а ф есть цепочка символов е (длина которой, впро- впрочем, определяется цепочкой ср, где ср ^ И). Известно, что проблема распознавания для произвольной машины Тьюринга, является ли ее область определения пустой, конечной или бесконечной, алгорит- алгоритмически неразрешима. Следовательно, соответствующие проблемы для грамматик типа 1 также алгоритмически неразрешимы. Теорема 9. Невозможен алгоритм, распознающий по произ- произвольной грамматике типа 1, порождает ли она пустое множество, порождает ли она конечное множество или бесконечное множество цепочек [58]. По этой же самой причине невозможен алгоритм, определяю- определяющий, появляется ли данная цепочка как собственная часть строки (#5 #/-вывода в О. Далее, поскольку грамматика не дает никаких законченных (#5#)-выводов тогда, когда она эквивалентна грам- грамматике Спи11 с единственным правилом 5-М51 *), то по теореме 9 невозможно определить, эквивалентна ли грамматика О грамма- грамматике Опии» а значит, и в общем случае. Теорема 10. Невозможен алгоритм, определяющий эквива- эквивалентны ли заданные две грамматики типа 1 [58]. Впрочем, для любой алгоритмически неразрешимой проблемы машины Тьюринга можно найти аналогичную неразрешимую проб- проблему, касающуюся грамматик типа 1. Другими словами, мало что можно узнать о свойствах языка, порождаемого грамматикой ти- типа 1 (кроме того, что этот язык непременно рекурсивен), путем сис- систематического исследования правил этой грамматики. Достаточно было бы 5->-51.— Прим. перев.
Формальные свойства грамматик 165 Условие 1 недостаточно сильно, чтобы позволить установить единообразный метод приписывания С-маркеров порождаемым пред- предложениям, как это было бы желательно. Чтобы обеспечить эту возможность, мы, как было замечено в разд. 4 предыдущей главы, должны потребовать, чтобы на каждом шаге заменялся только один символ (вместе с некоторыми другими ограничениями, которые, как отмечено, не влияют на порождающую способность). Эти сооб- соображения приводят нас к рассмотрению более строго ограничиваю- ограничивающего условия. Условие 2. Если ср->ф есть правило, то существуют це- цепочки Хъ Хг» А, ^ {где А — отдельный символ и со непуста), такие, что <р=хИх2 и ф^Хг^Хг- В грамматике типа 2 каждое правило ср—^ф (т.е. хИХг"^ -*"Х1 ^Ха) может рассматриваться как утверждающее, что А мо- может быть заменен на о в контексте Хг—Хг» ГДе» разумеется, Х\ или Хг могут быть пусты. Мы будем говорить о грамматиках, удов- удовлетворяющих этому условию, как о контекстных грамматиках. Правила этого вида весьма обычны в существующих грамматиче- грамматических описаниях. Они могут использоваться для указания контек- контекстуальных ограничений на выбор определенных элементов или ка- категорий, как об этом говорилось в предыдущей главе. Для кон- контекстной грамматики можно определить класс Уа нетерминальных символов как содержащий все (и только) такие элементы А, для ко- которых С содержит правило хИХг^Х^Хг- В дальнейшем бу- будем предполагать, что это условие всегда выполняется. Из определения ясно, что каждая грамматика типа 2 является грамматикой типа 1, но не наоборот. Тем не менее условие 2 не ог- ограничивает порождающую способность грамматики. Теорема 11. Если С есть грамматика типа 1, то сущест- существует грамматика С типа 2, слабо эквивалентная О. Прямое доказательство этого факта см. в работе [8]. Поскольку соответствие, указанное в теореме 11, эффективно, то сразу видно, что неразрешимые проблемы, касающиеся грамма- грамматик типа 1, остаются неразрешимыми, если ограничиться контекст- контекстными грамматиками. Теорема 12. Не существует алгоритма, определяющего по двум заданным контекстным грамматикам, являются ли эти грамматики эквивалентными, порождает ли какая-либо из них пустое, конечное или бесконечное множество цепочек, появля- появляется ли некоторая произвольно выбранная цепочка как часть строки (#3#)-вывода в какой-либо грамматике или как часть предложе- предложения порождаемого ею языка.
166 Н. Хомский Здесь, как и прежде, мы находим, что мало что можно узнать путем систематического изучения правил подобных систем. Теорема 12 имеет важные последствия для теории грамматик непосредственных составляющих. Любая теория грамматик долж- должна давать общий метод приписывания предложениям их структур- структурных описаний заданной грамматикой, а в случае грамматик непо- непосредственных составляющих это может быть сделано естественным образом лишь в том случае, если каждая грамматика удовлетворяет условию С, гласящему, что не существует символов Л, В и цепоч- цепочки со, таких, что срЛВф и срЛо>Вф являются последовательными строчками вывода терминальной цепочки (ср. сноску 3 к разд. 4 предыдущей главы). Поэтому разумно было бы потребовать от пра- правильно построенной грамматики непосредственных составляющих в дополнение к уже наложенным ограничениям, чтобы она удовлет- удовлетворяла условию С. Тогда из теоремы 12 непосредственно следует, что правильная построенность является неразрешимым свойством грамматик непосредственных составляющих. Этого уже достаточно, чтобы отвергнуть теорию грамматик непосредственных составляю- составляющих в ее настоящем виде как возможную теорию грамматик. Ясно, что общая теория грамматик должна давать рекурсивный класс правильно построенных грамматик как возможных кандидатов на роль грамматик каких-либо естественных языков; другими слова- словами, обязательно должен существовать алгоритм, определяющий, составляет ли данное множество правил правильно построенную грамматику в соответствии с этой теорией. Теория контекстных грамматик в ее современной форме не удовлетворяет этому требо- требованию (хотя она может быть модифицирована так, чтобы ему удов- удовлетворять, см. вышеуказанную сноску). Заметим, что теория транс- трансформационных грамматик не вызывает этого затруднения, если, как предполагается в разд. 5 предыдущей главы, ее НС-компонент порождает лишь конечное множество цепочек (аналогично, если он порождает бесконечное множество достаточно ограниченного|вида; это ограничение может оказаться достаточным, если механизм трансформаций будет в достаточной мере усиливать эту порождаю- порождающую способность). В разд. 3 предыдущей главы мы использовали для примеров три искусственных языка Ьъ Ь.2 и Ь3, все со словарем {а,Ь}, и до- доказали, что Ьг и Ь2 обладают грамматиками, которые сейчас мы на- называем контекстными. (В действительности они обладают грам- грамматиками, удовлетворяющими условию 2 с пустыми Хг и Ъ-) Однако для Ь3 была построена простая грамматика, которая вооб- вообще не является (общей) системой подстановок. Мы знаем, конечно, что грамматика типа общей системы подстановок должна сущест- существовать для языка Ь3, поскольку он, очевидно, представляет собой рекурсивно-перечислимое и даже рекурсивное множество. Инте-
Формальные свойства грамматик 167 ресно увидеть, однако, что Ь3, в самом деле, порождается контекст- контекстной грамматикой, хотя и гораздо более сложной, чем требуется для /,х или Ьг. Это следует из одного общего свойства контекстных грамматик, к рассмотрению которого мы сейчас обратимся. Рассмотрим следую- следующее множество правил (общей системы подстановок): 1 : СО А -> СЕАА; СОВ -* СЕВВ, К2: СЕА-^'АСЕ; СЕВ + ВСЕ, КЗ: Еар-^рЯа, A3) К4: К5: , Кб: А — А] В — В. В этих правилах переменные аир принимают значения из \А,В,Р). Так, например, правило К5 в действительности должно рас- рассматриваться как множество из трех правил: АО-^ОА; АО-кОВ; РО-+ОР. К заданной цепочке СпуР#9 где ф — любая цепочка из Л и В, правила A3) будут применимы в однозначно определенном порядке (за исключением лишь некоторой свободы в применении правил Кб) и в конечном счете дадут цепочку A4) к которой уже ни одно из этих правил не применимо. Короче гово- говоря, правила A3) описывают копирующее устройство. Имея такое копирующее устройство, уже нетрудно использовать его как осно- основу для построения грамматики, порождающей Ь3. Больше того, поскольку все эти правила удовлетворяют усло- условию 1, это будет грамматика типа 1. Из теоремы 11, следовательно, вытекает следующая теорема. Теорема 13. Существует контекстная грамматика, порож- порождающая Ь3 [8]. Эта грамматика будет значительно более сложной, чем грам- грамматика A2), предложенная в разд. 3 предыдущей главы, в частности потому, что она должна включать множество правил, действующих как копирующее устройство правил A3). Грамматика A2) из разд. 3 предыдущей главы легко может быть переформулирована как тран- трансформационная грамматика. Таким образом, мы имеем здесь про- простой искусственный пример того, какие упрощения часто могут быть получены расширением области грамматической теории на транс- трансформационные грамматики, описанные в разд. 5 предыдущей главы.
168 Н. Хомский Важно отметить, что способность контекстной грамматики по- порождать язык Ьъ представляет скорее ее недостаток, чем достоинст- достоинство. Для объяснения этого факта рассмотрим реальное функциони- функционирование контекстного копирующего устройства. Его характерное свойство заключается в том, что оно позволяет получить переста- перестановку типа АВ-+ВА в условиях контекстной грамматики; но если при помощи последовательного применения контекстных правил мы осуществим замену АВ на В А, то оказывается, что соответствую- соответствующий С-маркер символа В в цепочке В А получил тип А (т.е. просле- прослеживается вверх до Л в соответствующем дереве вывода), а символ А в цепочке В А получил тип В. Например, если бы мы захотели ис- использовать подобные правила для преобразования цепочки ЛоЬп \уШ агпуе (Джон придет) в цепочку то11 ЛоЬп агпуе (придет ли Джон), мы были бы вынуждены поставить в соответствие цепочке \уШ ЛоЬп агпуе С-маркер, содержащий структурную информацию о том, что \уШ в этом предложении является группой существитель- существительного (поскольку оно прослеживается вверх к символу АФ, домини- доминирующему слово «1оЬп), а ЛоИп является вспомогательным глаголом, что никак не соответствует нашим намерениям. Если бы мы пыта- пытались строить контекстную грамматику для английского языка, то никаким простым и естественным способом нам не удалось бы из- избежать этих совершенно неприемлемых последствий. (Заметим, что если \уШ «ЬЬп агпуг выводится из ЛоЬп \уШ агпуе при помощи грамматической трансформации вида, описанного в разд. 5 преды- предыдущей главы, то это положение, противоречащее нашим интуитив- интуитивным представлениям, не возникает.) Это замечание предполагает, что было бы важно выдвинуть дальнейшие ограничения для кон- контекстных грамматик, которые исключили бы перестановки и в то же время позволили бы использовать правила, ограничивающие замену некоторых символов наличием определенного контекста. Весьма естественное ограничение, дающее этот эффект, предложил Парих [49]. Условие 3. О есть грамматика типа 2, не содержащая правил вида Х1^Х2~>Х1а)Х-2» г^е ® есть отдельный нетерминаль- нетерминальный символ {т.е. со^1/#). В грамматике типа 3 никакой символ не может быть заменен отдельным нетерминальным символом ни в каком контексте. При этом ограничении невозможно построить последовательность пра- правил, имеющих результатом простую перестановку АВ-^ВА. Следо- Следовательно, копирующее устройство, описанное правилами A3), не может быть построено, и нежелательные последствия не возникнут. Предположительно, Ь3 не может порождаться грамматикой типа 3. Несомненно, он не может ею порождаться тем способом, который описан выше.
Формальные свойства грамматик 169 Условие 3, как оно сформулировано, слишком строго, чтобы выполняться для реальных грамматик естественных языков, но оно может быть слегка изменено так, что, не уменьшая порождающей способности, оно, возможно, окажется небесполезным при постро- построении грамматик для систем, подобных языку. Предположим, что грамматика О содержит правила вида ХгАъ-^Х&Ъ только тогда, когда либо а — терминальный символ (как в условии 3), либо а доминирует лишь над конечным числом цепочек во всем множестве выводов (и, значит, С-маркеров), возможных в О. В ос- основном это сводится к требованию, чтобы если категория разделя- разделяется на подкатегории, то эти подкатегории являлись бы не типами синтагм [рЬгазе 1урез], а словами или классами морфем. Если счи- считать, что системы обсуждаемого здесь вида вообще сколько-нибудь полезны для грамматических описаний, то, по-видимому, именно класс, удовлетворяющий этому ограничению, будет действительно подходящим. Известно лишь одно нетривиальное свойство грамматик типа 3, именно то, которое устанавливается в теореме 14. Тем не менее этот класс грамматик заслуживает более пристального изучения. Похо- Похоже на то, что условие 3 дает адекватную в разумных пределах фор- формализацию для набора лингвистических понятий, содержащегося в наиболее развитых вариантах метода непосредственных состав- составляющих. 4. Бесконтекстные грамматики Рассмотрим теперь класс грамматик, удовлетворяющих следую- следующему условию. Условие 4. Если ср->ф есть правило грамматики, то ср есть отдельная (нетерминальная) буква, а ф непуста. Таким образом, каждое правило грамматики утверждает, что определенный нетерминальный символ может быть заменен цепоч- цепочкой символов независимо от контекста, в котором он встречается. Назовем грамматику, удовлетворяющую уловию4, бесконтекстной грамматикой. Язык, порождаемый бесконтекстной грамматикой, назовем бесконтекстным языком. Отметим, что, хотя правила бес- бесконтекстной грамматики применяются безотносительно к контексту, между элементами терминальной цепочки могут быть — и обычно бывают — довольно строгие ограничения совместной встречаемо- встречаемости. О бесконтекстных грамматиках уже известно довольно много. Мы даем здесь краткий набросок основных результатов, отсылая читателя при случае к более подробным исследованиям, описанным в других работах, за доказательствами и дальнейшим обсуждением. Непосредственно очевидно, что если в условии 4 отбросить тре- требование, чтобы <р была непуста, то порождающая способность бес- 13 Заказ № 563
170 Н. Xомский контекстных грамматик останется неизменной (за исключением того, что будет порождаться «пустой» язык {е}). Доказательство см. в работе [4]. Мы можем также, не уменьшая порождающей спо- способности, потребовать, чтобы грамматика не содержала правила вида А^В [8], так что бесконтекстные грамматики также удовле- удовлетворяют условию 3. Хотя все бесконтекстные языки (языки типа 4) являются языка- языками типа 3, обратное неверно. Теорема 14. Язык #асп}2**пAпЪ^ есть язык типа 3, не порождаемый бесконтекстной грамматикой. Доказательство принадлежит Париху [49]. Гораздо легче най- найти примеры языков типа 2 (языков, порождаемых классом общих контекстных грамматик), которые не могут порождаться бескон- бесконтекстной грамматикой. В частности, среди языков Ьъ Ь2 и Ь3, рас- рассмотренных в предыдущем разделе, хотя Ьг и Ь2 являются бескон- бесконтекстными языками, Ь3, конечно, таковым не является (ср. разд. 3 предыдущей главы). Теорема 15. Язык Ь3 и язык [апЬпап) являются языками ти- типа 2, для которых не существует порождающей их бесконтекстной грамматики [8, 59, 4]. Можно получить С-маркер (ср. с разд. 3 предыдущей главы) для цепочки, порождаемой бесконтекстной грамматикой О, непо- непосредственно путем построения новой бесконтекстной грамматики С со словарем, состоящим из словаря грамматики Си дополнитель- дополнительных терминальных символов: ] и [л Для любого нетерминального А грамматики О. Если О имела правило Л-^ср, то С будет иметь правило Л-Мл?]. Грамматика С порождает цепочку х, содержа- содержащую скобки, задающие структуру составляющих соответствующей цепочки у, порождаемой грамматикой О, причем у может быть по- получена из х опусканием скобок. При некоторых специфических условиях скобка ] может быть опущена без появления неоднознач- неоднозначности, давая своего рода бесскобочную систему записи. Разумеет- Разумеется, система скобок, налагаемая грамматикой О' на терминальную цепочку О, в точности соответствует системе, определяемой из де- деревьев, введенных в предыдущей главе. Итак, мы можем рассма- рассматривать структурное описание цепочки х как цепочку ср в словаре У*, содержащем Ут и новые символы ] и 1а Для каждого А ^ Ул^. Тем же самым методом можно получить С-маркер в контекстной грамматике, если она удовлетворяет условию С, стр. 166. Если кон- контекстная грамматика удовлетворяет условию С, мы говорим, что она правильно построена. Таким образом, контекстная грамматика О правильно построена тогда и только тогда, когда она обладает
Формальные свойства грамматик 171 следующим свойством: если ср, ф суть две последовательные строки законченного (#5#)-вывода в С, то существуют единственные це- цепочки а ^ Ум и XI, Ха» 0)» такие, что <р=Х1аХ2 и ф==Х1а>Х2- Расши- Расширив словарь У так, чтобы он содержал скобки, как это было сдела- сделано выше, определим й(ср) (читай: «ср без скобок» или «дебракетизация ср») для любой цепочки ср в этом расширенном словаре,, как цепочку, полученную опусканием всех вхождений скобок (вместе с их по- пометками) в цепочке ср. Теперь можно определить сильный у-вывод ф как последовательность <Р1,...,<рл» в которой срх=ср, срЛ = ф и для каждо- каждого *>/г существуют цепочки ^1,^2,оK,ш4,оM и символ а, такие, что правило грамматики О. Если ^—сильный (#5#)-вывод ф в О, а й(ф) есть цепочка в Ут, то й(ф) есть терминальная цепочка, порождаемая грамматикой О, и ф может считаться С-маркером, единственным образом сопоставленным этой цепочке при помощи вывода В\ каждая строка которого есть дебракетизация соответ- соответствующей строки вывода В. Далее, для каждого (#5#)-вывода О цепочки хв О существует соответствующий сильный (#5#)-вывод, оканчивающийся цепочкой, которую можно принять за С-маркер, единственным образом сопоставленный выводом 0 цепочке х. Таким образом, для правильно построенных контекстных грамматик мы имеем точное определение порождения сильных С-маркеров. Как было замечено выше, правильная построенность, определен- определенная выше, не является разрешимым свойством для контекстных грамматик. Мы можем определить разрешимое свойство правиль- правильной построенности для этих грамматик следующим образом: грам- грамматика О правильно построена, если она не имеет правила вида фЛБф-><рЛо>Вф. В этом случае сильный вывод не обязательно од- однозначно определяется слабым выводом (как это будет в случае выполненного прежнего определения правильной построенности), но по-прежнему будет однозначно определяться слабым выводом в совокупности с последовательностью правил, использовавшихся при этом выводе (причем в общем случае нельзя обойтись ни без то- того, ни без другого). В действительности, как мы отметили в разд. 4 предыдущей главы, нетрудно выдвинуть эффективные ограниче- ограничения, которые исключат подобную неопределенность, не влияя при этом на слабую порождающую способность (и влияя на силь- сильную порождающую способность только введением некоторой до- добавочной и нигде более не употребляемой категоризации). Однако эти последние условия недостаточно обоснованы. 4.1. Специальные классы бесконтекстных грамматик В этом разделе будут рассмотрены различные подклассы бес- бесконтекстных грамматик, заданные дополнительными условиями на 13*
172 Н. Хомский множество правил. Напоминаем, что каждое правило имеет вид Л->ср, где А — отдельный нетерминальный символ, а ср — непустая цепочка. Мы продолжаем следовать принятому ранее соглашению об обозначениях разд. 4 предыдущей главы. Напомним также, что <р==>>ф тогда и только тогда, когда существует ср-вывод ф. Кроме то- того, нетерминальный словарь Ум состоите точности из тех символов А, которые появляются в левой части правила грамматики Л-^ср. Правило называется линейным, если оно имеет вид А-±хВу. Оно право-линейное, если имеет вид А-±хВ, лево-линейное, если име- имеет вид А-^Вх. Заключительным правилом называется правило вида А->х. В терминах этих понятий мы сейчас определим некоторые виды грамматик. Определение 6. Грамматика О является а) линейной, если каждое ее незаключительное правило ли- линейно; в частности, если оно лево-линейно или право-линейно; б) односторонней линейной, если каждое ее не- незаключительное правило право-линейно или каждое ее незаключи- незаключительное правило лево-линейно; в) м е т а-л и н е й н о й, если все ее незаключительные правила либо линейны, либо имеют вид 5-^ср, и если, кроме того, в ней нет правила вида Л->ср5ф ни для каких А, ср, ф; г) нормальной, если все ее незаключительные правила име- имеют вид А-^ВС, а все заключительные правила — вид А-+а; д) последовательной, если ее нетерминальный сло- словарь может быть упорядочен как А{)...,Ап таким образом, что для всех ь, / из Л;=^срЛу-ф следует, что ]^1. В случае линейной грамматики, если ср есть строка некоторого (#5#)-вывода, тоср содержит не более одного нетерминального сим- символа. Другими словами, имеется лишь одна точка, в которой вывэд может ветвиться на каждом шаге. При первом же применении за- заключительного правила вывод заканчивается терминальной цепочг кой. В мета-линейной грамматике имеется ограниченное число (не более п) точек, в которых вывод может разветвляться. Верхняя гра- граница определяется самым длинным правилом, в котором появляется 5, т.е. максимальным числом появляющихся нетерминальных симво- символов. Если применены п заключительных правил, вывод заканчива- заканчивается терминальной цепочкой. Односторонняя линейная грамматика представляет собой просто конечный автомат в смысле разд. 1.2 (см. работу [7]). Это совершен- совершенно ясно в случае односторонней линейной грамматики, все правила которой право-линейные (либо заключительные). Без потери общ- общности можно предположить, что каждое линейное правило О имеет вид А-±аВ, где В — неначальный символ О, и что каждое за- заключительное правило О имеет вид Л-^а. Пусть А1,...,Ап— нетер-
Формальные свойства грамматик 173 минальные символы С, причем Ах— начальный символ. Мы можем поставить в соответствие грамматике О конечный автомат Р с тем же нетерминальным словарем, что и О, и с состояниями Аъ...,Ап, где Ах—начальное состояние. Правила Р образуются следующим путем. Если А1~>аА;- — правило О, то тройка (а,Аь, А;- ) есть пра- правило Р (понимаемое как команда Р перейти из состояния Аьъ состоя- состояние А], когда он считывает с ленты символ а). Если Аь-±а есть правило О, то тройка (а, Л^Л^есть правило Р. Тогда О и Р кончают работу, породив одну и ту же терминальную цепочку. Точно так же и обратно, правила конечного автомата не- непосредственно задают грамматику с только право-линейными или заключительными правилами. Поскольку, если Ь — регулярный язык, то /.*, состоящий из зеркально отраженных цепочек языка Ь (т.е. содержащий цепочку ап...а1ддя каждой а^.Мп^Ь), также является регулярным языком,, очевидно, что каждая односторонняя линейная грамматика пред- представляет конечный автомат и что каждый конечный автомат может быть представлен как односторонняя линейная грамматика. Нормальная грамматика — это грамматика, обычно имеющая- имеющаяся в виду при обсуждении метода анализа по непосредственным со- составляющим, принятого в лингвистике. Заключительные правила Л->а, составляющие лексикон языка, резко отделены от множества грамматических правил А->ВС, каждое из которых задает разло- разложение на две составляющие. Введение понятия последовательной грамматики мотивировано той легкостью, с которой порождение в этой грамматике может быть осуществлено при помощи технического устройства. После того как правила разложения некоторого нетерминального символа А были применены и таким образом уничтожены все вхождения А в последнюю строку строящегося вывода, можно быть уверенным, что А не встретится ни в какой дальнейшей строке вывода. Ограни- Ограничения этого рода (хотя для более общего случая, включающего тран- трансформационные правила) были предложены и изучены в приложе- приложении к лингвистическому материалу в работе [40]. Определение 7. Введем обозначения: ^={1^11, порождается линейной грамматикой}, \г = {Ь | Ь порождается односторонней линейной грамматикой], Хт={1 | Ь порождается мета-линейной грамматикой], ч={Ь \ Ь порождается нормальной грамматикой], а={Ь | Ь порождается последовательной грамматикой], Ч = {Ь \ Ь порождается бесконтекстной грамматикой]. Таким образом, Хх, например, является множеством регулярных языков, как мы только что видели. С точки зрения порождающей
174 И. Хомский способности эти системы соотносятся друг с другом следующим об разом1) . Теорема 16. а) ^с: Хс-^тс:? [7, 69]; б) ^Т[8]; в) л1Са-т [20]. Языки Ьг и Ь2 порождаются линейными грамматиками, но, как мы уже видели в разд. 1.1, не порождаются конечными авто- автоматами (односторонними линейными грамматиками). Произведение языков Ьг и Ь2 из X принадлежит Хт , но в общем случае не принад- принадлежит X. Множество правильно построенных формул исчисления высказываний в бесскобочной записи является примером языка, который не имеет мета-линейной грамматики, но порождается бес- бесконтекстной грамматикой 8~>У, V ->У\ V -+ р, A5) где р, р', р",...— пропозициональные переменные, С — знак им- импликации, N — знак отрицания. Языки Ь1(={апЬп}) и Ь2(=[хх*\х есть цепочка в алфавите {а, Ь) и х*— зеркальное отражение %)) принадлежат о, но не при- принадлежат Хх. Примером языка из у, не принадлежащего о, является язык со словарем {а, 6, с, й), содержащий предложение ап*к-1й... йЬ йа са йЬ й. . . ЪП2к-2йап'1к-х A6) (симметричное относительно с) для каждой последовательности (к, /2],...,72^-1) целых положительных чисел. Этот язык порождает- порождается грамматикой с правилами 5 -^ айАйа, 8 -> а8а, 8 -> аса, А-^ЬАЬ, А-^Ьй8йЬ A7) (которые, впрочем, линейны), но не порождается последовательной грамматикой. Так как нормальные грамматики могут порождать любой бес- бесконтекстный язык, общее условие, сводящее грамматику к разло- разложению на бинарные составляющие и, отдельно, к лексикону, не ог- ограничивает порождающей способности более, чем ее ограничивает общий класс бесконтекстных грамматик (хотя, конечно, это условие весьма ограничивает системы порождаемых структурных описаний> т. е. ограничивает сильную порождающую способность). Знак с: понимается здесь как строгое включение, исключающее слу- чай равенства.— Прим. перев.
Формальные свойства грамматик 175 4.2. Бесконтекстные грамматики и ограниченно-бесконечные авто- автоматы Мы видели, что бесконтекстные и контекстные грамматики раз- различного вида, рассматривавшиеся нами, по своей порождающей способности превосходят конечные автоматы, но не достигают воз- возможностей общих систем подстановок (машин Тьюринга). В част- частности, мы нашли языки, которые не регулярны, но порождаются линейными бесконтекстными грамматиками (даже с одним нетерми- нетерминальным символом). С другой сюроны, мы заметили, что даже кон- контекстные грамматики могут порождать лишь рекурсивные множест- множества и то не все. Грамматики того вида, который мы сейчас рассмат- рассматриваем, принадлежат к категории ограниченно-бесконечных авто- автоматов (разд. 1.3— 1.7). В случае бесконтекстных языков мы ви- видим, что каждый из них допускается линейно-ограниченным авто- автоматом специального вида, использующим магазинную память (РОЗ) (ср. с разд. 1.4—1.6), и что такими устройствами могут до- допускаться только бесконтекстные языки. Чтобы показать это, ограничимся рассмотрением нормальных грамматик, это не приведет к потере общности [ср. теорема 16 FI. Можно также без потери общности допустить, что если А^ВС есть правило грамматики, то ВфС. Если задана такая нормальная грам- грамматика С, мы можем построить автомат РОЗ М, который будет до- допускать язык Ь{О)у следующим образом. Для каждого нетерминаль- нетерминального символа А из О блок управления М будет иметь два состояния А1 и Аг. Для каждого правила А->а из О автомат М будет иметь команду (а, А19 е)^(А„ е). A8) Для каждого правила А -> ВС из О автомат М будет иметь команды: (е9 Аь е) - (В19 А), (е9 Вг, е)^(С19 е)9 A9) , Сг9 А)-> (АГ9 а), где с — единичный элемент. Следовательно, в общем случае М будет недетерминированным автоматом РОЗ. Его начальное сос- состояние мы обозначим символом И, г.е встречающимся в С. Уст- Устройство имеет команды (е, И, о)—>E/}е) и'(е, 5Г, с)-> (Е, о), где 5 — начальный символ О, позволяющие ему переходить из Е в 5/ и из 5Г в И, стирая с и заканчивая работу. Автомат М допускает цепочку х, порождаемую грамматикой С, систематически обходя кругом дерево, представляющее диаг-
176 Н. Xомский рамму вывода х в С, сверху вниз и слева направо. Для ил- иллюстрации рассмотрим грамматику С с правилами , С -» А8, А->а, В -> Ь, 8 -> с, B0) порождающую язык апсЪп B1) при помощи таких примерно выводов, как тот, который пока- показан на рис. 9 для цепочки аасЪЬ. Соответствующее устройство РОЗ М будет иметь команды B2), соответствующие виду A8), и команды B3), соответствующие виду A9): (а, Аь е) -» (Аг, е), (Ь, В19 е) -± (Вп е), B2) (сУ Зг, ё) -> EГ, е), | 9 5), | /\ Ь (е, С„ е) -* (Ви е), /\ | • (р, Вп 8)-, E„ а), B3) (е, С/5 е) -> (Л^ С), (^, Аг, е) Рис. 9. Типичный вывод предложения в языке B1). (е, 5Г, С)~> (Сг, а). При допущении цепочки аасЬЪ с выводом, показанным на рис. 9, М будет последовательно совершать следующие ша- шаги, где первая колонка представляет входную ленту с рассматри- рассматриваемым символом, выделенным жирным шрифтом, вторая ука- указывает состояние блока управления, а третья представляет со- содержимое ленты памяти. Вход Блок управления Память (РОЗ) 1. аасЬЬ 2 а 2. аасЬЬ 5; а
Формальные свойства грамматик 177 3. аасЬЬ 4. аасЬЬ 5. аасЬЬ 6. аасЬЬ 7. аасЬЬ 8. аасЬЬ 9. аасЪЬ 10. аасЪЪ 11. аасЬЬ 12. аасЬЬ 13. аасЬЪ 14. аасЪЬ 15. аасЬЬ 16. аасЪЬ 17. аасЬЬ 18. аасЬЬ# 19. аасЬЬ# л, с, 4 5Г С, 5, 5, я. 5, о5С а5С о5С5С а5С5С а5С5С а5С5 О/"* О Ос) \_> сЗ а5С а5 а5 а 20. аасЪЪ^Х Е ^ Очевидно, что устройство допускает все (и только) цепочки, по- порождаемые О, используя свою ленту памяти для запоминания той части вывода порождаемой цепочки х, которая понадобится на сле- следующем шаге работы, в то время как оно последовательно воспри- воспринимает цепочку х на своей входной ленте. Кроме того, ясно, что эта конструкция является совершенно общей и может быть использо- использована для любой нормальной грамматики. Отметим также, что авто- автомат РО5, определяемый этой конструкцией в терминах разд. 1.4, является устройством РО5 с ограниченным контролем. Отсюда мы заключаем следующее. Теорема 17. Для любого заданного бесконтекстного языка Ь можно построить автомат РОЗ с ограниченным контролем, допус- допускающий /,. Как показал Мэтьюз [41, 42], этот результат частично распро- распространяется на контекстные грамматики. Если задана контекстная 12 Заказ № 563
178 Н. Хомский грамматика О, мы определяем прямой вывод (а 1е?Ыо-п§Ы с!епуа1юп) [соответственно обратный вывод (а п§Ы>{о-1еЯ;с1епуа{юп)]как вывод, удовлетворяющий следующему условию: если (ср,ф)—последователь- (ср,ф)—последовательные строки этого вывода, то ср=хЛо> и ^=х%и> (соответственно у=ыАх и {^=и>хх)- Таким образом, заменяется всегда самый левый (соответственно самый правый) нетерминальный символ. Мэтьюз по- показывает, что можно построить автомат РОЗ Мх,_#, который будет допускать цепочку х тогда и только тогда, когда в О существует прямой вывод цепочки х, и автомат РОЗ М#_/., который будет допу- допускать цепочку х тогда и только тогда, когда в О существует обратный вывод цепочки х. По теореме 6 разд. 1.6 отсюда следует, что языки, до- допускаемые устройствами Мх,_#и М#_х,, являются бесконтекстными. Следовательно, будет бесконтекстным и их объединение (теорема 20, разд. 4.3). Таким образом, если в контекстной грамматике О име- имеются только прямые и обратные выводы, эта грамматика будет по- порождать бесконтекстный язык1). Мы говорим, что контекстная грам- грамматика строго контекстна, если порождаемый ею язык не явля- является бесконтекстным. Тогда мы видим, что необходимое условие того, чтобы грамматика была строго контекстной, состоит в том, что некоторые терминальные цепочки этой грамматики не имеют ни прямых, ни обратных выводов. Нетрудно показать, что эти соображения останутся в силе, если определить прямой вывод (обратный вывод), как такой, в котором заменяемый символ в каждой строке находится не далее чем на оп- определенном фиксированном расстоянии от самого левого (соответ- (соответственно самого правого) нетерминального символа этой строки (см. Мэтьюз, в печати). Таким образом, грамматика будет строго кон- контекстной лишь в том случае, когда некоторые из ее терминальных цепочек имеют только такие выводы, которые не являются ни пря- прямыми, ни обратными в этом расширенном смысле. Мы говорим, что ^ есть п-вставленный вывод, если п есть наи- наибольшее число, такое, что О содержит две последовательные строч- строчки хАуВ^Су и хАоы^Ву, где из цепочек ср,ф более короткая имеет длину п. Таким образом, в /г-вставленном выводе имеется строка, в которой заменяемый символ стоит на расстоянии п символов либо от самого левого, либо от самого правого нетерминального символа этой строки. Отсюда можно заключить, что для того, чтобы грам- грамматика была строго контекстной, необходимо, чтобы для любого п она могла бы порождать некоторое предложение только при помощи /п-вставленных выводов, где т>/г. Заметим, в частности, что в вы- ) Предложенное Мэтьюзом [41 ] построение эквивалентного автомата РЭ5 не приводит к цели; однако утверждение, сформулированное в этом пред- предложении, верно, как показал А. В. Гладкий (см. его реферат на эту работу в РЖ Математика, 1965, 4В427).— Прим. перев.
Формальные свойства грамматик 179 водах, производимых «копирующим устройством», описанным в примере A3), имеются строки, в которых заменяемый символ от- отстоит сколь угодно далеко и от самого правого, и от самого левого нетерминального символа. При рассмотрении этих вопросов важно не терять из виду того, что вопрос, является ли данная контекстная грамматика строго контекстной, является неразрешимым, как указал Шамир [71 ]. В разд. 1.6 мы показали, что для каждого автомата РОЗ М су- существует преобразователь 7\ обладающий следующим свойством: Т преобразует вход х в цепочку у, которая сводится к е тогда и только тогда, когда М допускает х. Теперь мы видим, что, следо- следовательно, для любой бесконтекстной грамматики О существует преобразователь 71, который преобразует х в цепочку у, сводящую- сводящуюся к е тогда и только тогда, когда О порождает х. Однако можно по- получить несколько более сильный результат, проведя построение Т непосредственно из О. Определим модифицированную нормальную грамматику как нор- нормальную грамматику, в которой нет пары правил вида А-±ВС, Б-^СЕ ни для каких нетерминальных Л, В, С, й, Е; т.е. в моди- модифицированной нормальной грамматике для каждого нетерминаль- нетерминального символа можно однозначно определить, появляется ли он в левой или в правой ветви вывода (никакой нетерминальный символ не появляется и в левой, и в правой ветви). Очевидно, существует модифицированная нормальная грамматика, эквивалентная любой нормальной грамматике, а значит, и любой бесконтекстной грам- грамматике. Допустим, что мы теперь хотим применить конструкцию, анало- аналогичную построению команд A8) и A9), к модифицированной нор- нормальной грамматике О и получить преобразователь Т. Для каждо- каждого нетерминального символа А из О преобразователь Т будет иметь два состояния А1 и Аг Кроме них, Т имеет начальное состояние 2 и команды (^,И)->E;, ё) и (е, 5г)-ЦХ1,а'), где 5 — начальный сим- символ О. Входным алфавитом Т является терминальный словарь Ут грамматики О. Его выходной алфавит содержит, кроме того, символ а' для каждого а ^ Ут, пару символов А, А' для каждого нетерми- нетерминального Л из О и пару о,а'. Если А-±а (а^Ут) естьправило О, то Т будет иметь команду (а, Аг) -* (А„ Ааа'А'), B5) если А-^ВС есть правило О, то Т будет иметь команды (е, Аг) -> (Вг, А), (е, Вг) -^ (С„ е), B6) (е, СГ)->(Л„ А'). 1 /-
180 Н. Хомский Так построенный преобразователь Т будет обладать всеми ос- основными свойствами преобразователя, сопоставленного устройству РЭ5 при помощи построения, приведенного в разд. 1.6, а именно О порождает х тогда и только тогда, когда Т преобразует х в цепоч- цепочку у, сводящуюся к е последовательным выбрасыванием пар а а'. Например, если О такова, как в примере B0), и Т имеет на входе цепочку #аасЬЬ# (с выводом как на рис. 9), Т будет работать в основном так же, как М из B4), и закончит работу цепочкой аЗСАаа' Л' ЗСАаа' А Зсс' 5' С ВЬЬ' В' 5' С ВЬЬГ В' 3' а', B7) сводящейся к е, на ленте памяти. Расширим теперь понятие «сводимости» и определим К как класс цепочек в выходном алфавите Ао , которые сводятся к е по- последовательным сокращением пар аа' или а'(л(/, а' ^ Ао). То есть мы теперь рассматриваем аа' просто как обратные элементы в сво- свободной группе О с образующими а^ Ао . Поскольку грамматика О, исходя из которой был построен 7\ была модифицированной нор- нормальной грамматикой, выходная цепочка Т в действительности никогда не будет содержать подцепочек вида а'хх, где* сводится к е. Поэтому это расширение понятия «свэдимости» не приведет ни к каким осложнениям, и при этом преобразователь Т сохраняет то свойство, что О тогда и только тогда порождает х, когда Т преобра- преобразует х в цепочку у, сводящуюся к е. При этом изложении мы все время предполагали, как это и есте- естественно (ср. с разд. 4 предыдущей главы), что словарь У, в кото- котором строятся все бесконтекстные грамматики, есть фиксированное конечное множество символов, так что К представляет собой неко- некоторый фиксированный язык в словаре V, состоящем из всех сим- символов У, пары а, а' и символа а для каждого а ^ V. Пусть ф — гомо- гомоморфизм (т. е. преобразование, осуществляемое с одним состоянием), такой, что ср(а)-^а для всех а^Ут и ср(а)=^ для о$ут. Пусть V — множество всех цепочек в V. Заметим теперь, что если О и Т тако- таковы, как было описано выше, а Ь(О) — язык, порождаемый С, мы имеем, в частности, что ^((^) = ср[^Сп ТA1) ]. Это непосредственно приводит к построению автомата РОЗ, до- допускающего К\ следовательно, по теореме 6 разд. 1.6 К есть бес- бесконтекстный язык. Как было отмечено в разд. 1.6, 1A1) есть регу- регулярный язык. Ниже будет явно показано, что пересечение бескон- бесконтекстного языка с регулярным языком является бесконтекстным языком и что преобразование переводит бесконтекстный язык в бесконтекстный (разд. 4.6). Если К и ср таковы, как в предыдущем абзаце, определим <1>(Ь) для любого языка /, как ^(Ц = .<(К^\ Ц Подведя итог всему сказанному, мы имеем следующий результат
Формальные свойства грамматик • 181 Теорема 18. Для каждого регулярного языка /? гомоморфизм ф(?) дсет бесконтекстный язык; для каждого бесконтекстного языка Ь существует такой регулярный язык Я, что Ь—'Ъ Таким образом, бесконтекстный язык однозначно определяется выбором некоторого регулярного языка (т.е. конечного автомата), и каждый такой выбор дает нам некоторый бесконтекстный язык при фиксированных /С, ср. Это позволяет определить простые алгеб- алгебраические характеристики бесконтекстных языков. Из теоремы 18 немедленно следует тот результат, что каждый бесконтекстный язык Ь является гомоморфным образом пересече- пересечения К с некоторым 1-ограниченным языком В. (Напомним, что, как было показано в разд. 1.2, каждый регулярный язык есть го- гомоморфный образ некоторого 1-ограниченного языка.) Далее, раз- различные категории бесконтекстных языков, которые были опреде- определены выше, легко определяются простыми условиями, налагаемыми на В (подробнее см. в работе [69]). Из разд. 1.2 известно, что ре- регулярные языки состоят из цепочек в основном с периодической структурой. Из той роли, которую играет К в описании бесконтекстных язы- языков, мы видим, что в некотором смысле структурная симметрия со- составляет фундаментальное формальное свойство цепочек бескон- бесконтекстного языка (и подцепочек, из которых они составлены). Мож- Можно сказать, правда, довольно расплывчато, что в той мере, в какой характер некоторого аспекта упорядоченного поведения определя- определяется условиями, налагаемыми на соседние части (например, ассо- ассоциативные связи), естественно рассматривать организм, имеющий это поведение, в основных чертах как ограниченный автомат; в той мере, в какой это поведение обладает периодической и ритмической структурой (как в случае примеров, приводимых Лэшли [39] в связи с его критикой теории «ассоциативных цепей»), организм ведет себя подобно строго конечному автомату; в той мере, в какой это поведение проявляет иерархическую организацию и симметрию, организм ведет себя подобно устройству, внутренние свойства ко- которого выражаются бесконтекстной грамматикой. Естественно, эта слишком краткая (и неточная) классификация не исчерпывает всех возможностей для комплексных, упорядочен- упорядоченных или сгруппированных актов поведения, и можно только на- надеяться, что по мере того, как будет развиваться теория более бо- богатых порождающих систем (в частности, для языка, теория транс- трансформационных грамматик), будут обнаруживаться и объясняться все более глубокие и далеко идущие формальные свойства такого поведения. Отметим, что цепочка B7) представляет собой структурное опи- описание входной цепочки ^аасЬЬ^ в соответствии с выводом на рис.9.
№ . Н. Хомский Точнее говоря, цепочка B7) превращается в структурное описание вида, описанного на стр. 170, следующим гомоморфным преобразо- преобразованием: ДЛЯ а ^ Ут , /(а) =а и /(а') =е; ДЛЯ а ^ У//, /(а)=[а и/(а')=]. Это сводится к замене Т с командами B5) и B6) преобразователем Г', отличающимся от Г лишь тем, что он не печатает а' для а ^ Ут и печатает ] вместо а' для каждого а ^ У#. Как непосредственное след- следствие теоремы 17, имеем теорему. Теорема 19. Если задан бесконтекстный язык Ь, то можно построить модифицированную нормальную грамматику О, порож- порождающую Ь, и преобразователь Г, обладающие следующим свойством] если О порождает х со структурным описанием <р, то Т преобра- преобразует х в ср; есл^ Г преобразует х в у и у сводится к е последова- последовательными сокращениями подцепочек вида Ц а], где а^ Уг , /по О по- рождает х со структурным описанием ср. Преобразователь Г, о котором говорит теорема 19, представ- представляет собой, таким образом, «алгоритм распознавания» (т.е. модель восприятия), который приписывает любому предложению его струк- структурное описание относительно О. Однако это не есть строго конеч- конечный метод распознавания в силу условия, что выходная цепочка должна сводиться к е. Мы еще вернемся (разд. 4.6) к проблеме по- построения оптимальной строго конечной процедуры распознавания для бесконтекстных грамматик. В силу результатов, установленных в этом разделе, существует технический прием построения алго- алгоритма распознавания с помощью автомата РЕM для каждой нормаль- нормальной бесконтекстной грамматики, а следовательно, для каждого бес- бесконтекстного языка по крайней мере в одном из его грамматических представлений (а также, как можно предполагать, и во всех). Итак, мы имеем следующие результаты. Существует фиксиро- фиксированный гомоморфизм /, такой, что для любого регулярного языка /? можно найти такой 1-ограниченный язык /., что #=[(Ь). Существу- Существуют фиксированные гомоморфизмы §19 ^2, такие, что для каждой дан- данной бесконтекстной грамматики О', порождающей язык Ь(С')> существует модифицированная нормальная грамматика О, порож- порождающая язык Ь(С)—Ь(С) и порождающая множество структурных описаний 11@), и существует 1-ограниченный язык /,, такой, что Ц0)=ё1(К(]Ь) и 11(С)=82(К[)Ц, где ^ — фиксированный бес- бесконтекстный язык, определенный выше. Таким образом, слабая порождающая способность любой бесконтекстной грамматики и сильная порождающая способность любой модифицированной нор- нормальной грамматики однозначно определяются этим способом пу- путем выбора определенного 1-ограниченного языка. Мы уже знакомы с различными свойствами трех искусственных языков, введенных в разд. 3 предыдущей главы. Все три языка
Формальные свойства грамматик 183 находятся за пределами возможностей конечных автоматов. ъ может порождаться контекстной грамматикой, но не ^южет по- порождаться бесконтекстной. /,2 может порождаться бесконтекстной и даже линейной грамматикой, но не может порождаться никакой системой счетчиков (ср. с разд. 1.4). Ьг может порождаться системой счетчиков. Кроме того, язык порождается некоторой бесконтекст- бесконтекстной грамматикой тогда и только тогда, когда он допускается неко- некоторым автоматом РОЗ. Как мы видели в разд. 3 предыдущей главы, основное свойство Ь2 (а именно, что он содержит вложенные зависимости) присуще и естественным языкам. Не мешает отметить, что множество зави- зависимостей такого рода, как в Ь3, также появляется в естествен- естественных языках. Постал [51] нашел развитую систему это- этого рода в языке могаук (МоЬа\ук), в котором из последователь- последовательности существительных произвольной длины может быть образован глагол, причем порядок элементов этой последовательности соот- соответствует порядку последовательности существительных вне глагола. Язык, обладающий таким множеством зависимостей, выходит за пределы возможностей бесконтекстной грамматики или устройства РОЗ безотносительно к любым условиям, налагаемым на структурные описания (ср. разд. 5.1 предыдущей главы) и силь- сильную порождающую способность. Такие подсистемы есть ив англий- английском языке, хотя там они играют менее существенную роль. Так, Соломонов A959, личное сообщение), а также Бар-Хиллел и Ша- мир [5 ] указывают, что слово ге$ресИуе1у (соответственно) дает воз- возможность получить множества зависимостей типа Ь3 (например, ЛоЬп апс1 Магу \уго!е 1о Ыз апё Ьег рагеп!з, гезресЦуе1у — Джон и Мэри написали его и ее родителям соответственно). Аналогично из эллиптического предложения ЛоЬп за^ 1Ье р1ау апс1 зо сКс! В111 (Джон смотрел пьесу и Билл тоже) можно получить ЛоЬп за\у 1Ье р1ау апс! зо сПё ВШ $ее 1Ье р1ау (Джон смотрел пьесу и Билл тоже смотрел пьесу), но,, не ЛоЬп за^ 1Ье р1ау апс1 зо сНё ВШ геас! 1Ье Ьоок (Джон смотрел пьесу и Билл тоже читал книгу), и т. д. В связи с этим можно заметить, что язык также будет находить- находиться вне области действия бесконтекстных грамматик или автоматов РОЗ, если он будет обладать основным формальным свойством до- дополнения к /,3» т-е- если он будет содержать бесконечное множество частей предложения (синтагм) хъ х2,... и все предложения вида ах$Х]*[, в которых I отлично от / (в то время как язык типа Ьъ со- содержит все предложения, в которых ь совпадает с /, как в упомяну- упомянутом примере языка могаук). Но такого рода ограничения весьма распространены (см., например, работу [27] разд. 3.1). Так, в срав- сравнительных предложениях мы можем иметь конструкцию: ТЬа1 опе 15 \У1с1ег 1Ьап 1Ыз опе 13 ОЕЕР (с сильным ударением на слове ОЕЕР) [буквально: та (вещь) более широка, чем эта — глубока],
184 Н. Хомский но не конструкцию: *ТЬа1 опе 1$ шс!ег 1Ьап 1Ы5 опе 15 ШШЕ [бук- [буквально: та (вещь) более широкая, чем эта— широка], так как по- последняя в обязательном порядке заменяется конструкцией: ТЬа{ опе 15 \\чс!ег 1Ьап 1Ы$ опе 15 [та (вещь) более широка, чем эта). Таким образом, для этих конструкций характерно, что повторяю- повторяющийся элемент выбрасывается, а неповторяющийся получает силь- сильное ударение. Неограниченную систему этого рода мы находим при введении групп существительного, как это видно на примере таких сравнительных предложений, как: ЛоЬп 15 тоге 5иссе551и1 аз а ра1*п- 1ег {Ьап ВП1 15 а5 а 5С1Л РТОК (Джон больше преуспел как худож- художник, чем Билл как скульптор), но не: *Ло. п 15 тоге яиссе ^Гш а5 а рат{ег 11:ап ВШ 15 а5 а РА1]\ТЕК (Джон больше преуспел как ху- художник, чем Билл как художник), которое при помощи обязатель- обязательной трансформации выбрасывания сворачивается в предложение: ЛоЬп 15 то1е зиссе5з1и1 а5 а рат!ег 1Ьап ВШ 15 (Джон больше пре- преуспел как художник, чем Билл). Как и в случае наличия подсис- подсистем типа Ьъ, эти конструкции показывают, что естественные языки превышают возможности бесконечных автоматов или устройств РЭ5 безотносительно к любым замечаниям, касающимся сильной порождающей способности. Как показывают рассмотрения этого рода, для того чтобы обога- обогатить лингвистическую теорию и преодолеть слабые места граммати- грамматики непосредственных составляющих (ср. с разд. 5 предыдущей главы; впрочем, отмеченные там недостатки касаются только силь- сильной порождающей способности), необходимо развивать теорию сис- систем, пригодных для изучения бесконечных множеств цепочек, не входящих в область действия слабой порождающей способности тео- теории бесконтекстных грамматик. В этих примерах, как и в приме- примерах предыдущей главы, было бы легко установить требуемые пра- правила в форме грамматических трансформаций и таким образом охва- охватить лингвистические явления, выходящие за пределы теории грам- грамматик непосредственных составляющих. Мы уже почти полностью закончили доказательство теоремы 6 из разд. 1.6, которая утверждает, что с точки зрения слабой порож- порождающей способности бесконтекстные грамматики точно соответству- соответствуют недетерминированным автоматам РОЗ. В разд. 2 мы указали, что общие системы подстановок точно соответствуют машинам Тьюринга, а в разд. 4.1, что односторонние линейные грамматики имеют точно такую же слабую порождающую способность, что и ко- конечный автомат. Как для конечных автоматов, так и для машин Тьюринга недетерминированность не увеличивает (слабой) порож- порождающей способности. Недавно было показано, что любой язык, допускаемый детерминированным линейно-ограниченным автома- автоматом, является контекстным языком [36]. Курода отметил, что это доказательство распространяется и на недетерминированные ли-
Формальные свойства грамматик 185 нейно-ограниченные автоматы, и, кроме того, доказал, что каждый контекстный язык допускается некоторым недетерминированным линейно-ограниченным автоматом. Было также указано в работе [41, что двуленточные автоматы, введенные Рабином и Скоттом [53], соответствуют линейным грамматикам в следующем смысле. Пусть у*—отражение у, а а — заданный символ словаря Уг • Тогда если Т — двуленточный автомат, допускающий множество пар |(*, у){ (где^, у1 — цепочки в словаре Ут—(а)), то сущест- существует линейная грамматика О, порождающая язык {хру^}; и об- обратно, если О есть линейная грамматика, порождающая язык [хау*\ (х , у. — цепочки в Ут—{а}), то существует двуленточный автомат, который допускает в точности множество пар {(*;, */,*)). Подводя итог всему сказанному, мы видим, что с точки зрения слабой порождающей способности имеется довольно близкое соответствие между иерархией различных видов грамматик непо- непосредственных составляющих и некоторой иерархией автоматов, а именно общие системы подстановок соответствуют машинам Тью- Тьюринга, контекстные грамматики — недетерминированным линейно- ограниченным автоматам, бесконтекстные грамматики — недетер- недетерминированным автоматам РОЗ, линейные грамматики — двулен- точным автоматам и односторонние линейные грамматики — ко- конечным автоматам. Курода также показал, что дополнение (по отношению к фикси- фиксированному словарю) языка, допускаемого детерминированным ли- линейно-ограниченным автоматом, есть контекстный язык и что каж- каждый бесконтекстный язык допускается некоторым детерминирован- детерминированным линейно-ограниченным автоматом. Отсюда следует, что допол- дополнение бесконтекстного языка есть контекстный язык. Мы увидим ниже (разд. 4.3), что дополнение к бесконтекстному языку не обяза- обязательно является бесконтекстным языком и (разд. 4.4) что не су- существует алгоритма, определяющего, является ли оно бесконтекст- бесконтекстным языком или нет. 4.3. Свойства замкнутости относительно операций Регулярные языки замкнуты относительно булевых операций (т.е. объединения, пересечения и дополнения по отношению к фик- фиксированному алфавиту), а также относительно отражения (т.е. пре- преобразования каждой цепочки аг...ап в цепочку ач...а^), произве- произведения (т. е. образования языкаЬг-Ь2= 1х х=уг,у ^Ьг, г^Ь2\ ибес- конечного замыкания (т. е. образования языка II пЬп, где Ьп=- = Ь-Ь- ... Ь, п раз). (См. разд. 1.2.) Однако это наблюдение лишь частично оправдывается в случае бесконтекстных языков. Теорема 20. Множество бесконтекстных языков замкнуто относительно операции отражения, произведения, бесконечного замы- замыкания и теоретико-множественного объединения [4 ].
186 Н. Хомский Но пересечение двух бесконтекстных языков уже не обязательно является бесконтекстным языком, а следовательно, и дополнение бесконтекстного языка относительно множества цепочек в фикси- фиксированном алфавите не обязательно будет бесконтекстным языком. Теорема 21. Множество бесконтекстных языков не замкнуто относительно операций теоретико-множественного пересечения и дополнения (относительно фиксированного словаря V) [59,4]. Шейнберг [59] приводит в качестве контрпримера языки Ьх= = {апЬпат} и Ь2={а*пЬпа'г}, каждый из которых есть бесконтекст- бесконтекстный язык, но пересечение которых есть множество цепочек \апЪпап\, не являющееся бесконтекстным языком (пример, приведенный у Бар-Хиллела, Перлса и Шамира [4], в основных чертах совпадает с этим). Пересечение двух множеств может, конечно, быть представ- представлено в терминах объединения и дополнения. Поэтому отсюда следу- следует, что дополнение бесконтекстного языка не обязательно будет бес- бесконтекстным языком, поскольку объединение бесконтекстных язы- языков бес контекстно. Отметим, что языки Ьг и Ь2, определенные в предыдущем абзаце, являются мета-линейными и последовательными языками. Объеди- Объединение мета-линейных языков мета-линейно; объединение последо- последовательных языков есть последовательный язык. Следовательно, этот пример в действительности показывает, что множества \т и а из определения 7 не замкнуты относительно операций пересечения и дополнения, точно так же как и все множество ^, и, кроме того, пересечение двух языков из \т или двух языков из а не обязательно принадлежит у. Шюценберже установил (личное сообщение), что этот результат может быть усилен до линейных грамматик (грамматик класса X по определению 7). Рассмотрим грамматику 0г с правилами 8->»аа8с, 8 -± Ь8с, 8 -> Ъс B8) и грамматику С2 с правилами 8-±а8сс, 3-±аЗЬ, 8-^аЬ. B9) Пересечение языков, порождаемых грамматиками 01 и 02, есть множество цепочек {а2пЬпа2п}, которое не является бесконтекстным языком; но грамматики 01 и 02 линейны. Более того, это грамма- грамматики простейшего типа выше уровня конечных автоматов, а именно линейные с единственным нетерминальным символом. Теперь мы видим, что даже в этом простейшем случае пересечение порождае- порождаемых языков может не быть бесконтекстным, а класс X также не зам-
Формальные свойства грамматик 187 кнут относительно пересечения или дополнения (он замкнут отно- относительно объединения). Свойства дополнения, вытекающие из предыдущих рассуждений о пересечении, не переносятся непосредственно на подтипы множе- множества 7 бесконтекстных языков; хотя из сказанного выше следует, что дополнение языка из X (или Хт , или о) не обязательно принадле- принадлежит X (соответственно Хт или а), но из этого не следует, что оно не принадлежит ^. Однако вполне резонно предположить, что установ- установленный результат распространяется и на эти подсемейства. Очевид- Очевидно, вопрос о том, является ли дополнение линейного языка с един- единственным нетерминальным символом (и с единственным заключи- заключительным правилом 3~>су где с не появляется нигде в остальных правилах) бесконтекстным языком — это очень важный вопрос остающийся пока открытым. Как мы знаем, класс Хх регулярных языков замкнут относитель- относительно пересечения и дополнения (теорема 1, разд. 1.2). Итак, в итоге мы имеем следующее: все типы бесконтекстных языков, установлен- установленные в определении 7 разд. 4.1, замкнуты относительно операции объединения, но только Хх замкнут относительно пересечения и дополнения. Далее, пересечение языков типов X, Хт и а не обяза- обязательно вообще будет бесконтекстным (т.е. вообще будет в у). Интересно отметить, что эти свойства не переносятся на кон- контекстные языки. В частности, пересечение двух контекстных язы- языков является контекстным языком [36]. Но вопрос о дополнении контекстного языка остается открытым. 4.4. Неразрешимые свойства бесконтекстных грамматик В разд. 3 мы показали, что многие проблемы, связанные с кон- контекстными грамматиками, оказываются алгоритмически неразре- неразрешимыми. Некоторые, но не все, из этих проблем являются нераз- неразрешимыми также и в случае бесконтекстных грамматик — в дейст- действительности даже простейшего вида, выходящего за пределы конеч- конечных автоматов. Прежде всего приведем теорему. Теорема 22. Если задана бесконтекстная грамматика О, то существует алгоритм, определяющий, является ли язык, порож- порождаемый грамматикой О, пустым, конечным или бесконечным [4]. Отсюда следует, что систематическое изучение правил дает боль- больше сведений о свойствах бесконтекстной грамматики, нежели кон- контекстной грамматики. Однако во многих других отношениях мы сталкиваемся с сильными ограничениями, наложенными на то, что может быть определено этим способом. В обзоре, касающемся нераз- неразрешимости, мы будем в основном следовать Бар-Хиллелу, Перлсу и Шамиру [4].
188 * Н. Хомский Известные неразрешимые свойства бесконтекстных грамматик следуют из сведения к проблеме алгоритмическая неразрешимость которой была доказана Постом [50]), называемой проблемой соот- соответствия. Это может быть сформулировано следующим образом. Предположим, что нам задано множество Е из п пар цепочек в алфавите из по меньшей мере двух букв. Тогда >•••> (хп, уп)}. Последовательность целых чисел мы назовем последовательностью индексов для Е. Мы говорим, что последовательность индексов / удовлетворяет Е только в том слу- случае, если Проблема соответствия состоит в том, что если задано множест- множество И, то требуется определить, существует ли последовательность индексов /, удовлетворяющая множеству 1. Пост показал, что эта проблема алгоритмически неразрешима, т. е. не существует алго- алгоритма, определяющего по заданной последовательности Е пар це- цепочек, существует ли последовательность индексов, удовлетворяю- удовлетворяющая Е. Заметим, что если / удовлетворяет Е, то // = (/1,...,/т,/1,... ..., 1т) также удовлетворяет Е. Следовательно, либо не существует последовательности индексов, удовлетворяющей Е, либо существу- существует бесконечно много последовательностей индексов, удовлетворяю- удовлетворяющих Е, и в силу этого вопрос, существует ли бесконечное множест- множество удовлетворяющих последовательностей, также алгоритмически неразрешим. Этот факт играет важную роль в последующих рас- рассуждениях. Ограничимся на некоторое время рассмотрением языков в ал- алфавите \а, Ь,с\. Обозначим через Ь(О) язык, порождаемый грам- грамматикой О; через Ь — дополнение к языку Ь (относительно алфа- алфавита {а, Ъ, с\\ через Ьгг Ь2-— пересечение Ьг и Ь2; через Ьг\}Ь2— объединение Ь1и Ь2к через х*— отражение цепочки х. Допустим, что нам задано произвольное множество Е, 2= {(*1, Ух)..--. (Хп> Уп))> C1) где для каждого / х1 и у1 представляют собой цепочки в алфавите (а, Ь\. Пусть О(Е) — множество правил подстановки -* с,
Формальные свойства грамматик 189 порождающих язык ЫС(Е)]. Тогда 0(Е) есть линейная бескон- бесконтекстная грамматика с единственным нетерминальным элементом. Рассмотрим теперь вопрос, порождает ли 0A1) цепочку гсг*. Ясно, что это верно лишь в том случае, когда существует последователь- последовательность индексов A1У...у1т) для множества И, такая, что г — х^... х1/п = у1г ... у1т . C3) 1/п у1г у1т Таким образом, проблема определения, порождает ли произволь- произвольная линейная грамматика О (с одним нетерминальным символом) цепочку вида гсг* для некоторого г, есть в точности проблема соот- соответствия Поста (см. работу [63]). Следовательно, не существует об- общего метода определения, порождает ли заданная бесконтекстная грамматика О (которая может быть даже линейной с одним нетер- нетерминальным символом) некоторую цепочку гсг*, а следовательно, и бесконечное множество таких цепочек (как это было выше замече- замечено), или же она не порождает ни одной такой цепочки. Но пусть теперь 0т есть грамматика -+с, 3-^а5а, 3-^ЬЗЬ, C4) порождающая «зеркальный» язык Ь(От) = {гсг*}. Пусть С(И) задано равенством C_). Рассмотрим вопрос: какова мощность множества Ь @т) ПI* [О B)] ? C5) Но это есть в точности вопрос: сколько цепочек вида гсг* порожда- порождает грамматика 0A1)? Мы знаем, что ответ на этот вопрос таков: либо ни одной, либо бесконечное множество, и мы только что обна- обнаружили, *Гго не существует алгоритма, определяющего, который из двух случаев имеет место. Следовательно, не существует алго- алгоритма, определяющего для заданного множества И, является ли ЦС,л) р ЫС(И) ] пустым или бесконечным. Отметим далее, что никакое бесконечное подмножество языка Ь@т) не является регулярным языком. Поэтому пересечение Ц0т) П Ы0(Т>) ] регулярно только в том случае, если оно конеч- конечно, т. е. пусто. Так как не существует алгоритма, обнаруживающе- обнаруживающего этот факт, то не существует алгоритма, определяющего для произвольного И, является ли Ь(От)[\Ь[О(Е)] регулярным языком. Теорема 23. Не существует алгоритма, определяющего для заданных бесконтекстных грамматик 0г и 02, является ли язык ^@1)п^@2) пустым, бесконечным или регулярным [4]. В действительности, это верно даже в том случае, когда 0х фик- фиксирована и задана соотношением C4), а 02— линейна с единствен-
190 Н. Хомский ным нетерминальным символом (так же, как и О^. Линейные грам- грамматики с одним нетерминальным символом представляют собой в рамках наших исследований простейшие системы выше уровня ко- конечных автоматов; а хорошо известно, что существует алгоритм, определяющий, является ли пересечение двух регулярных языков пустым или бесконечным (оно всегда регулярно). Мы описали грамматику 0т в соотношении C4) как грамматику, порождающую «зеркальный» язык с заданной средней точкой. Пусть 0т2— грамматика, состоящая из правил C4) и правила 5Х -> 5с5. C6) Пусть 5Х— начальный символ в 0т2. Тогда Ь@т2) состоит из всех цепочек вида хсх*сусу*, где* и у— цепочки в алфавите {а, Ь]. Пусть опять И задано соотношением C1); определим Ст(И) как грамматику, содержащую правила C2) грамматики 0A1) и, кроме того, правила ~> а 8га, 8г ~> Ь8гЬ, 8г ~> сЗс, C7) где 5Х— начальный символ. Грамматика 0т(И) вкладывает язык ЫСA>)], заданный правилами C2), в «зеркальный» язык. Это зна- значит, что ЫСт(И) ] состоит в точности из тех цепочек вида хсусгсх*, в которых усг порождается грамматикой 0(И); 6т B) является своего рода «слиянием» грамматик Ст и 0(И). Рассмотрим теперь пересечение языков, порождаемых грамма- грамматиками 6т2 и 0т{Ъ) {так же как раньше мы рассматривали пересе- пересечение ЦСщ) и ЦСA,)]}. Это есть множество Ь(От2)[\Ь [0т(И)], состоящее в точности из тех цепочек х, которые удовлетворяют сле- следующим условиям: A) х = х1сх2сх3сх4: (х1—цепочка в алфавите {а, Ь}), (и) хг = Х2 и х3 = хС (так как х^Ь@2т)) (Ш) хг=х1 и х2сх3^Ь[в(Л)] (так как х^1[вт(Щ. C8) Тогда, в частности, хг=х31 х2=х± и х2=х3* . Следовательно, ЦОщ2) П ^ЮтB) 1 пусто, лишь когда не существует последователь- последовательности индексов, удовлетворяющей И, и бесконечно в противном случае, в точности так же, как и раньше (потому что, как мы уже заметили, вопрос о том, существует ли цепочка х2сх3(^Ы0ф)], где х2=х3* , есть в точности проблема соответствия для И). Следо- Следовательно, не может существовать алгоритм, определяющий, явля- является ли Ь@т2){] Ы0т(И)] пустым или бесконечным (имеются только эти две возможности).
Формальные свойства грамматик 191 Каждая цепочка в Ц0т2) П ^ЛСт(^) 1 имеет вид хсх* схсх* , и легко показать, что никакое бесконечное множество таких цепочек не образует бесконтекстного языка. Следовательно, множество представляет собой бесконтекстную грамматику лишь в случае, когда оно конечно, т. е. пусто, и так как вопрос о непустоте, как было отмечено, неразрешим, то и вопрос, является ли бесконтекстным языком, также неразрешим. Теорема 24. Не существует алгоритма, определяющего по заданным бесконтекстным грамматикам 0х и С2, является ли ЦСх) П ЦСг) бесконтекстным языком [4]. В действительности, это верно даже в том случае, когда 0х фиксирована в виде Ст2 и 02— мета-линейна (заметим, что 0т2 также мета-линейна). Теорема 23, впрочем, следует из рассуждений, доказывающих теорему 24. Мы рассмотрели языки в алфавите {а, 6, с), но при соответст- соответствующем кодировании мы легко можем распространить эти резуль- результаты о неразрешимости на языки в алфавитах из двух или более символов (см. работу [4]). В работе [4] доказательство теорем 23 и 24 состоит в основном в следующем. Рассмотрим множество И, заданное соотношением C1). Пусть Ь%— язык, состоящий из всех цепочек II * * / у аЬ к . .. аЬ1 сх-Ь1 .. . х- су/ ... у-н сЬ *а ... Ь !а, C9) где (*1,...,^) и (/!,...,//) — последовательности индексов для Е- Легко показать, что /,Е является бесконтекстным языком, порождае- порождаемым грамматикой 0Е. Так определенная грамматика 0а будет иг- играть ту роль, которую играла грамматика Ст(%) в кратко описан- описанном выше доказательстве. Рассмотрим теперь язык Ьм, состоящий из цепочек х^сх^сх^схх, D0) где хх и х2— цепочки в алфавите {а, Ь), Язык Ьм также представ- представляет собой бесконтекстный язык, порождаемый грамматикой 0^; эта грамматика будет играть роль грамматики 0т2 в доказательст- доказательстве, приведенном выше. Заметим теперь, что Ьм {] /,Б является множеством всех цепочек • • *. *и • • 11 1 1 аЪ к ... аЪ 1сх. ... х1 су, ... у^сЬа х ... Ъ &а, D1) где Х[х ...х[=у. ...у^у т. е. где 119...,1к есть последовательность индексов, удовлетворяющая множеству И. Следовательно, в силу
192 Н. Хомский рассуждений, приведенных выше, если существует последователь- последовательность индексов, удовлетворяющая И, то ЬмпЬ^ бесконечно и не является ни регулярным языком, ни бесконтекстным языком; если не существует последовательности индексов, удовлетворяющей И, то Ьм П Ьъ пусто (и, следовательно, тривиально, является регу- регулярным языком и бесконтекстным языком). Отсюда следует, что не- неразрешимость проблемы соответствия Поста влечет неразрешимость проблемы определения, является ли/,м П ^з Для произвольного множества I] пустым, конечным, регулярным языком или же бес- бесконтекстным языком (теоремы 23 и 24). С помощью конструкции, слишком сложной, чтобы приводить ее здесь, в работе [4] показано, что для каждого Е дополнение Ьъ языка Ьъ представляет собой бесконтекстный язык. Легко пока- показать, что дополнение Ьм языка Ьм есть бесконтекстный язык. Объ- Объединение двух бесконтекстных языков есть бесконтекстный язык. Следовательно, для каждого множества И язык Ьм Ч Ьц=Ьм п представляет собой бесконтекстный язык. Дополнение этого языка равно /,м О Ь% , а мы уже отметили, что не существует алгоритма, определяющего, является ли это множество пустым, конечным, ре- регулярным или бесконтекстным. Каждый шаг конструктивен. Сле- Следовательно, мы имеем результат в форме теоремы. Теорема 25. Не существует алгоритма, определяющего по заданной бесконтекстной грамматике О, является ли язык Ь{О) (дополнение языка, порождаемого грамматикой О, относительно ал- алфавита {а, Ь, с\) пустым, конечным, регулярным или бесконтекст- бесконтекстным [4]. В частности, не существует алгоритма, определяющего, порож- порождает ли произвольная бесконтекстная грамматика все цепочки в своем терминальном словаре, т. е. является ли она универсальной, и не существует алгоритма, определяющего, порождает ли произ- произвольная бесконтекстная грамматика регулярный язык (так как это верно лишь в том случае, когда дополнение языка, порождае- порождаемого этой грамматикой, является регулярным языком). В конце разд. 4.3 мы заметили, что неизвестно, является ли до- дополнение языка, порождаемого линейной грамматикой с одним не- нетерминальным элементом (простейший тип нерегулярного языка), бесконтекстным языком. Если ответ на этот вопрос положителен, то дополнение языка /Л 0A)], порожденного грамматикой 0(Е), заданной соотношением C2), является бесконтекстным язы- языком. Легко показать, что д пэлнение языка Ц0п), поро- порождаемого О п из C4), есть бесконтекстный язык. Сле- Следовательно, приведенным рассуждением мы можем показать, что не существует алгоритма, определяющего, является ли дополнение
Формальные свойства грамматик 193 бесконтекстного языка (именно объединение дополнений этих ли- линейных языков) пустым, конечным или регулярным. Более того, дополнение языка Ь[0т2] (см. правило 36) есть бесконтекстный язык и дополнение языка /ЛСт(Х))] есть бесконтекстный язык, если дополнение языка Ь[СA>)] есть бесконтекстный язык. Отсюда следует, что мы могли бы полностью доказать теорему 25, не принимая во внимание язык Ь^ , заданный соотношением C9), а также конструкцию, которая дает его дополнение, при условии, что дополнение языка, порождаемого линейной грамматикой с од- одним нетерминальным элементом, есть бесконтекстный язык. Одна- Однако этот вопрос, очевидно, не прост. Построение дополнения языка Ь* , данное Бар-Хиллелом, Перл- сом и Шамиром, приводит к доказательству факта, что для опреде- определенного типа линейных грамматик с одним нетерминальным эле- элементом дополнение является линейным. В работе [69] доказано, что для более общего класса линейных грамматик с определенными центральными символами и одним нетерминальным (именно тем, для которого цепочка, расположенная вправо от центрального символа в порождаемой грамматике, однозначно определяется по цепочке, стоящей слева) дополнение является линейным. Но общий вопрос остается открытым даже для линейных грамматик с единственным нетерминальным символом и указанным центральным символом. Из теоремы 25 немедленно следует теорема. Теорема 26. Не существует алгоритма, определяющего по заданным бесконтекстным грамматикам Сг и 02, имеет ли место равенство Ь(О1)=Ь(О2) [4]. Если бы такой алгоритм существовал, то можно было бы в об" щем случае определить, является ли ЦС^ универсальным языком в противоречие с теоремой 25. Немедленно также следует, что проб- проблема определения, имеет ли место включение ЦС^сЦСг), алго- алгоритмически неразрешима {это, впрочем, следует также из теоремы 23, так как Ь@т) есть бесконтекстный язык и 1^10A,)] включается, в него лишь в том случае, когда его пересечение с Ь@т) пусто}. Заслуживает упоминания еще одно непосредственное следствие этих результатов о неразрешимости. Мы уже заметили (последний- абзац разд. 1.5), что язык Ь регулярен тогда и только тогда, когда существует преобразователь Г, такой, что Г([/)=^, где V есть мно- множество всех цепочек в Ут • Как мы видели, из теоремы 25 следует,, что не существует алгоритма, определяющего, является ли произ- произвольный бесконтекстный язык регулярным, т. е. существует ли пре- преобразователь Г, такой, что Т{11)=Ь. Так как V есть бесконтекстный (даже регулярный) язык, то мы имеем следующую теорему. Теорема 27. Не существует алгоритма, определяющего по заданным бесконтекстным языкам Ьх и А2» существует ли конеч-
Н. Xомский ный преобразователь Т, такой, что Т(ЬХ)=Ь^ (С. Гинзбург, личное сообщение). 4.5. Структурная неоднозначность Мы говорим, что бесконтекстная грамматика С неоднозначна, если она порождает цепочку х двумя существенно различными спо- способами, т. е. если она ставит в соответствие цепочке х два различ- различных структурных описания (см. стр. 170). Вопрос о структурной не- неоднозначности важен с многих точек зрения, и хотя он до сих пор очень мало исследован, все же имеются некоторые результаты в этом отношении. Рассмотрим сначала такой вопрос. Существует ли алгоритм, определяющий неоднозначность бесконтекстной грамматики? Отри- Отрицательный ответ прямо следует из неразрешимости проблемы соот- соответствия. Действительно, предположим, что 1± = {х1,у1\ 1<О'<^/г), где х1 и у{ — цепочки в некотором алфавите, скажем, в алфавите \а, Ь\. Выберем п новых символов й1,...,йп и построим две грамма- грамматики Сх и Су следующим образом: Сх : 5Г -> с, 5^ -> ^1^ХХ1 A < I < п), Су : 8у -±с, Зу-+ й^уу] A < I < '0- Ясно, что Сх и Су однозначны, но заметим, что последовательность 1) х у индексов (*11,...,1т), такая, что хи ...х1т=уи ...у1т, существует тог- тогда и только тогда, когда Сх и Су обе порождают цепочку г, где г = й,и ... А-, СХ{ . . . Х{ = А[ ... &-. си= . . . у; . D3) Ч 1т 1т 11 11 Чп ^Чп ^ ч у ' Таким образом, проблема соответствия для И имеет положитель- положительное решение тогда и только тогда, когда существует цепочка г, ко- которую порождают одновременно обе грамматики Сх и Оу, т. е. если неоднозначна грамматика Сху9 которая содержит правила грам- грамматики Сх, правила грамматики 0^ и, кроме того, правила 5->5г, 5-^5^, где 5 является начальным символом грамматики О . Следовательно, не существует алгоритма, определяющего по произ- произвольному множеству Е, будет ли грамматика Сху, построенная указанным способом, неоднозначной. Теорема 28. Не существует алгоритма, определяющего, яв- является ли бесконтекстная грамматика неоднозначной (Шюценбер- же, личное сообщение). Заметим, что грамматика С принадлежит классу грамматик О, удовлетворяющих следующему условию:
Формальные свойства грамматик 195 О — линейная грамматика, обладающая но крайней мере тремя нетерминальными символами, все заключительные правила D4) которой имеют вид а-^с, где с — символ, не встречающийся ни в одном нетерминальном правиле О. Таким образом, мы видим, что проблема неоднозначности не- неразрешима уже для грамматик, удовлетворяющих этому условию. Недавно было показано посредством обобщения проблемы соот- соответствия, что условие D4) может быть ослаблено для случая одного нетерминального символа, и при этом неразрешимость проблемы неоднозначности остается в силе. Действительно, это обобщение позволяет отождествить 5, 5Х и 5у в грамматике О [23]. Таким образом, теорема 28 имеет место для класса минимальных линей- линейных грамматик О, удовлетворяющих условию: О — линейная грамматика с единствен- единственным нетерминальным символом 5 и единст- единственным терминальным правилом 5->с, где с D5) не встречается ни в одном из нетерминаль- нетерминальных правил О. Предположим, что О — минимальная линейная грамматика с нетерминальным правилом 5-»хру*, 1</<^гс, связанным с мно- множеством пар 2= О неоднозначна тогда и только тогда, когда существуют две пос- последовательности индексов / и 1 г, D6) такие, что х1х...х1рсу*...у1* =х1г..х^ су^...уи*. Это в свою очередь верно тогда и только тогда, когда } Н 1р 11 1д ' D7) («) у и - - - У1Р = у и • - - у \г Но рассмотрим вопрос: Если задано множество И, то существуют ли последовательности индексов / и /, задан- заданные соотношениями D6), которые удовлетво- D8) ряют условию D7)?
196 Н. Хомский Из теоремы 28, распространенной на минимальные линейные грамматики, следует, что этот вопрос, касающийся однозначной, дешифровки, неразрешим. В разд. 1.2 мы отметили, что для каждого конечного автомата мы можем построить эквивалентный ему детерминированный ко- конечный автомат (и, конечно, вопрос об эквивалентности двух конеч- конечных автоматов разрешим). Другими словами, если задана односто- односторонняя линейная грамматика О, то мы можем найти эквивалент- эквивалентную однозначную одностороннюю линейную грамматику. Очевид- Очевидный вопрос состоит в том, верно ли это также для бесконтекстных грамматик в целом. Парих [49] показал, что это неверно. Теорема 29. Существуют бесконтекстные языки, которые не порождаются никакой однозначной бесконтекстной грамматикой^ Парих показал, что язык = [х\х = ап ЪтапЬт или х = ап ЪтапЬт', /?, п\ т, т' > 1), D9) не может порождаться никакой однозначной бесконтекстной грам- грамматикой, хотя он порождается множеством правил А -> аАа> А ->- аВа, С -+ ЬСЬ, С -+ ЪВЪ, E0) В -* Ь, В-^ЬВ, 0~>а, В действительности существует линейная грамматика, эквивалент- эквивалентная грамматике E0). Степень неоднозначности, которой обладают цепочки в этой грамматике, равна 2. Другим примером такого язы- языка является множество [апЬтар\п=т или п=р]. Интересная проб- проблема, остающаяся пока открытой, состоит в том, чтобы найти языки более высокой (быть может, неограниченной) степени неустрани- неустранимой неоднозначности. Много важных и нерешенных вопросов мож- можно сразу поставить в связи с вопросом о неустранимой неоднознач- неоднозначности, например ее масштаб, ее соотношения с разрешимостью про- проблемы неоднозначности, насколько богаты те грамматики, где она возникает (например, существуют ли минимальные линейные язы- языки, которые неустранимо неоднозначны или существует ли неуст- неустранимая неоднозначность на уровне -контекстных грамматик?) и т. д. Из теоремы 29 возникают некоторые предположения. Очень ин- интересен вопрос, почему естественные языки обладают именно такой
Формальные свойства грамматик 197 структурной неоднозначностью, а не другой. Мы можем надеяться получить ответ на этот вопрос в следующем виде. 1. Грамматики естественных языков принадлежат некоторому классу Г порождающих процессов. 2. Язык Ь обладает достаточно богатыми выразительными сред- средствами, чтобы содержать множество грамматических аппаратов А, но не А' (например, класс предложений Е, но не И'). 3. Грамматика О^Г, которая выражает А, но не А' (которая порождает Е, но не Е'), должна быть неоднозначной, т.е. язык, который она порождает, неустранимо неоднозначен относительно Г. Если бы удалось получить некоторое рассуждение такого рода, то оно было бы важным не только как «оправдание» существования структурной неоднозначности в Ь, но также и как поразительное свидетельство независимого (и потому особенно интересного) ха- характера в пользу той общей лингвистической теории, которая пре- претендует на выполнение условия A). Вряд ли нужно подчеркивать, что мы далеки от возможности привести подобное рассуждение для •естественного языка, но теорема 29 может представлять собой пер- первый шаг в этом направлении. 4. 6. Бесконтекстные грамматики и конечные автоматы Мы видели, что конечный автомат может быть представлен как односторонняя линейная грамматика и что у такого устройства го- гораздо более ограниченная порождающая способность, чем это мо- может быть у бесконтекстной или даже у линейной грамматики. Мы видели также, что такие элементарные формальные свойства естест- естественных языков, как рекурсивное вложение зависимостей, делают невозможным порождение их конечным автоматом, хотя эти свойст- свойства не исключают их из класса бесконтекстных (даже линейных) языков. Из этих замечаний мы должны заключить, что способно- способности носителя языка не могут быть охарактеризованы конечным ав- автоматом. Грамматика, хранимая в мозгу, не может быть одно- односторонней линейной грамматикой, что вовсе не удивительно; одна- однако поведение говорящего или слушающего должно быть представи- мо конечным автоматом некоторого вида. Говорящий-слушающий имеет лишь конечную память, часть которой он использует для хра- хранения правил имеющейся у него грамматики (множество правил для устройства с неограниченной памятью), а часть—использует для вычисления, фактически производя предложение или «восприни- «воспринимая» его структуру и понимая его. Приведенных соображений достаточно, чтобы показать, как важ- важно достигнуть более полного понимания источника и объема избы- избыточной порождающей способности бесконтекстных грамматик по сравнению с конечными автоматами (хотя бесконтекстные грамма- грамматики, как может быть доказано, не полностью адекватны граммати-
198 Н. Xомский ческому описанию естественных языков). Обратимся теперь к ис- исследованию этой проблемы. Посмотрим сначала, какие вопросы касаются связи бесконтекст- бесконтекстных грамматик и ограниченно-бесконечных и конечных автоматов. В разд. 1.6 и 4.2 мы получили некоторые результаты (основан- (основанные частично на результатах, которые еще будут доказаны в дан- данном разделе), относящиеся к этим вопросам. В частности, мы пока- показали, что бесконтекстные языки представляют собой множества,, которые допускаются классом ограниченно-бесконечных автоматов,, названных нами автоматами РО8. Как было нами показано, из этого факта следует, что существует чрезвычайно тесная связь между регулярными (односторонними линейными) языками и бес- бесконтекстными языками. Именно расширим словарь У, из которого построены все бесконтекстные языки, до словаря У, содержащего У и а' для каждого а^ V. Определим К как множество всех цепо- цепочек над У, которые сводятся к е последовательным сокращением аа' и а'а (т. е. обращаясь с а и а' как с взаимно обратными эле- элементами). Положим ср(а)=а для а^ Ут , у(а)=е для ос^Ут • Для любого языка Ь определим ф(/.) = ср(/С П Ц- Тогда для каждого ре- регулярного языка Ь $(Ь) является бесконтекстным языком, и каж- каждый бесконтекстный язык определяется как $(Ь) при некотором1 выборе регулярного языка Ь. Следовательно, семейство Хх регу- регулярных языков преобразуется в семейство ^ бесконтекстных языков преобразованием ф. Продолжая исследование соотношений между бесконтекстны- бесконтекстными и регулярными языками, заметим сначала, что существуют бес- бесконтекстные языки, которые в некотором смысле гораздо «больше,»» чем любой регулярный язык. Т е о р е м а 30. Существует бесконтекстная грамматика Оу порождающая Ь(О) и обладающая следующим свойством: если задан конечный автомат Аъ порождаюищй Ь(А1)с2Ц0), то мы можем, построить конечный автомат А2, порождающий Ь(А2), такойу что: а) Ь(А1)с^ЦА2)^ЦО) и б) Ь(А2) содержит бесконечно много цепочек, не принадлежащих ЦАг) [49]. Парих показывает, что этот результат имеет место для бескон- бесконтекстной грамматики, которая дает соотношения (т, п, А>1). E1) [В действительности, это также верно для более простой грамма- грамматики О, порождающей только ЦС) = {апЬтап] т, /г>1} (С. Гинз- Гинзбург, личное сообщение). ] Из теоремы 30 мы видим, что в общем: случае мы не можем получить бесконтекстный язык /, в качестве
Формальные свойства грамматик 199 предела возрастающей последовательности регулярных языков, каждый из которых содержит бесконечное число предложений, не входящих в предыдущий член последовательности, и которые все содержатся в Ь. Предположим теперь, что мы имеем бесконтекстную грамматику О, порождаощуюЦС), и конечный преобразователь Т с начальным состоянием 50. Мы построим новую бесконтекстную грамматику С, которая порождает ТЩС)]. Предположим сначала, что Т ограни- ограничен. Тогда мы можем допустить, что он не содержит правил вида Будем строить новую бесконтекстную грамматику С с выход- выходным словарем преобразователя Т в качестве ее терминального сло- словаря и с нетерминальными символами, представленными тройками E;, а, 5у), где 5г, 5;-— состояния Т и а ^ V1). Начальным символом в С является *$'. Правила в С определя- определяются по следующему принципу: а) 5' -» E0,5,5/) есть правило в С для всех ь\ б) если А -» ах. . . <хк есть правило в С, то для всех I, /, рх,... $к_г грамматика О' содер- содержит правило в) если (а,5^) -^ Eу-,х) есть правило в Г, то С содержит правило EР а, 5у-) -» х. E2) Чтобы сохранить условие, что нетерминальные символы суть те и только те, которые появляются в левой части правила а—>ср, мы можем потребовать также, чтобы С содержала правило а, 5/)-^E/, а, 5у)а E3) у для всех а, I, /, не включенных в пункт в). Терминальные правила в О' представляют собой правила,, заданные в пункте в) конструкции E2). Продолжая вывод из С до тех пор, пока мы можем обойтись без применения любого терминального правила, мы получим в качестве последней строчки цепочку ) Нижеследующее построение принадлежит Бар-Хиллелу, Перлсу и Шамиру [4], которые использовали его только для доказательства факта, который здесь мы приводим в качестве теоремы 32. Наша теорема 31 доказы- доказывается по существу тем же способом у Гинзбурга и Роуза [21 ]. Это построе- построение тесно связано с представлением преобразователей посредством матриц у Шюценберже [611.
200 Н. Хомский 5,о, оь, 5,-х) EA, а2, 5,-2) . . . E, , ай, 5, ) а, E4) где 1'о=0, ау-^ Уг Для всех /и С порождает ах...ак. Кроме того, ес- если С порождает а1...аЛ,(а;^ Ут), то для всех ь19...,1к цепочка E4) пред- представляет собой строчку вывода в С. Но выводы с цепочкой E4) в качестве последней строчки будут оканчиваться терминальной це- цепочкой г тогда и только тогда, когда существуют цепочки х19...,хк, такие, что х1...хк=г и для всех/(ау-, 5.._ )->Eг.,л;у) есть предписа- предписание в Г, т. е. тогда и только тогда, когда Т преобразует входную цепочку ах...аЛ в 2, проходя в процессе этого преобразования че- через состояния 5о, 5^,..., 5/. Таким образом, О порождает язык Р[Ь(О)]. Заметим, что С может иметь правила вида &->е (где х=е в пункте б) конструкции E2)). Однако, как мы видели в разд. 4,правила такого рода не допускают порождения языков, не являющихся бес- бесконтекстными (кроме языка {е}). Следовательно, мы имеем следую- следующий результат, где Т — ограниченный преобразователь. Теорема 31. Если Ь — бесконтекстная грамматика и Т— (ограниченный) преобразователь, то Т(Ь) — бесконтекстный язык (или Т(Ц = {е)). Предположим, что Я — регулярный язык, допускаемый автома- автоматом Р с начальным состоянием 50. Строим преобразователь Г, име- имеющий команду (аг, 5у-)-*EЛ, аг) всякий раз, как Р имеет предписа- предписание (I, /, к), т. е. всякий раз, когда Р переходит из состояния 5;- в состоя] ие 8к, прочитав вход аь. Мы мо^кем предположить, не ог- ограничив; я общности, что Р является детерминированным (см. тео- теорему 1) и что Т ограничен. Пусть О — бесконтекстная грамматика, порождающая Ь@). Построим С при помощи вышеописанной кон- конструкции, но вместо пункта а) в E2) мы имеем единственное правило •5'->E0, 5, 50). Теперь легко показать, используя теорему 31, что С порождает пересечение Я. с ЦС). Т е о р е м а 32. Если Ц — регулярный язык, а Ь — бесконтекст- бесконтекстный язык, то пересечение Ь[\Я есть бесконтекстный язык. Чтобы избавиться от требования ограниченности преобразовате- преобразователя Г в теореме 31, приведем следующую конструкцию. Если задана бесконтекстная грамматика О, порождающая 2,@), заменим снача- сначала каждое правило А^л1ш.лк правилом А->ц^цъгц...цък ц, где ц — некоторый новый символ. Теперь применим конструкции E2) и E3), как прежде, чтобы получить С Определим теперь язык следующим образом: = [г | для некоторого 10,, . . , 1т, хх,. . . , хт, г == хг. . . хт и для всгх к, 1 <; к < /тг, Т имеет правило (е, 31 ) -> E, , хХ где 10 = ь и ьт = /}. E5)
Формальные свойства грамматик 201 Очевидно, что Bу регулярен. Следовательно, мы можем к С до- добавить правила, которые дают соотношения у->е и E,, </, 5,)=** E6) для всех *, / и всех х^ С1и. Расширенная таким образом грамматика С' порождает язык Т[Ь(О)]. Следовательно, теорема 31 верна без ограничения, наложенного на Т. Другие результаты, касающиеся эффекта применения различ- различных операций к бесконтекстным языкам и относящимся к ним сис- системам, см. в работах [21, 69]. Будем теперь рассматривать правила только следующих видов: а) А-+ВС, б) А-±аВ (право-линейное), в) А-±Ва (лево-линейное), E7) г) А -> а. Напомним, что нормальная грамматика содержит только прави- правила типа а) и г); линейная грамматика без ограничения общности мо- может быть описана как грамматика, содержащая только правила вида б), в) и г); конечный автомат содержит только правила вида б), г) или только правила вида в) и г). Напомним также, что нормальная грамматика может порождать любой бесконтекстный язык и что линейная грамматика, хотя и с более ограниченной порождающей способностью, может порождать языки, лежащие за пределами воз- возможностей конечных автоматов (теорема 16). Таким образом, мы получаем порождающую способность, большую, чем у конечных автоматов, разрешая лево- и право-линейные правила, и еще боль- большую, разрешая появление нелинейных правил в грамматике. Конеч- Конечно, некоторые линейные грамматики могут порождать только ре- регулярные языки, хотя ни в том, ни в другом случае не существует алгоритма, определяющего, когда это верно (теорема 25). Остает- Остается решить вопрос, при каких условиях нормальная или линейная грамматика богаче, чем любой конечный автомат, в отношении по- порождающей способности. Чтобы изучить этот вопрос, полезно снова рассмотреть класси- классификацию рекурсивных элементов, данную в разд. 3 предыдущей главы. Конечный автомат содержит либо все право-рекурсивные, либо все лево-рекурсивные элементы. Линейная грамматика мо- может содержать одновременно лево-рекурсивные и право-рекурсив- право-рекурсивные элементы. Кроме того, и линейные, и нормальные грамматики могут содержать самовставляемые элементы. Оказывается, что по- последнее свойство влияет на увеличение порождающей способности по сравнению с конечными автоматами. 15 Заказ № 503
202 Н. Хомский Определение 8. Грамматика называется грамма- грамматикой с самовставлением, если она содержит нетер- нетерминальный символ А, такой, что для некоторых непустых цепочек Другими словами, грамматика с самовставлением содержит са- самовставляемые элементы. Теперь можно показать, что: Если О — бесконтекстная грамматика без самовставления, порождающая Ь@)> то су- существует конечный автомат, который порож- порождает ЦО). E8) Отсюда мы немедленно получаем следующий результат. Теорема 33. Язык Ь не является регулярным тогда и только тогда, когда все его бесконтекстные грамматики являются грамма- грамматиками с самовставлением [4, 8, 9]. Таким образом, Ь является регулярным языком только в том слу- случае, если он обладает грамматикой без самовставления. Ясно, что существует алгоритм, определяющий, содержит ли бесконтекстная грамматика самовставляемые элементы (аналогич- (аналогично содержит ли она право-рекурсивные и лево-рекурсивные элемен- элементы). Если мы испытаем грамматику О и обнаружим, что она не име- имеет самовставляемых символов, то мы можем заключить, что О име- имеет «мощность» конечного автомата (хотя она может содержать и ле- лево-рекурсивные, и право-рекурсивные символы). Если, с другой стороны, мы обнаружим, что С имеет самовстав- самовставляемые символы, мы не будем знать, обладает ли она мощностью конечного автомата. Это зависит от ответа на вопрос, существует ли грамматика С, которая порождает тот же язык, что и О, но не имеет самовставляемых символов. Как мы видели, не существует механической процедуры, с по- помощью которой это может быть установлено для произвольной грам- грамматики О. Таким образом, хотя теорема 33 дает эффективнее дос- достаточное условие эквивалентности бесконтекстной грамматики ко- конечному автомату в отношении порождающей способности (и более того, условие, которому удовлетворяет некоторая грамматика каж- каждого регулярного языка), мы знаем, что оно не может быть усилено до эффективного критерия, т, е. эффективного необходимого и до- достаточного условия. Утверждение E8) непосредственно следует из элементарных свойств конечного автомата. Предположим, что О является грам- грамматикой без самовставления, порождающей ЦО), а нетерминальные элементы О суть Аъ...,Ап. Назовем О сильно связной, если для каж- каждых I, \ существуют цепочки <р и Ф, такие, что А^®А$. Предполо-
Формальные свойства грамматик, 203 жим, что О — сильно связная грамматика. Если существуют *',/, *,/, такие, что Л^^Лусра и Ак^1А1^2, где (р1=^Ц>2, тогда немедленно получаем вопреки предположению, что О обладает свой- свойством самовставления. Следовательно, таких *, /, к, I не существу- существует, и, таким образом, либо каждое нетерминальное правило в О право-линейно, либо каждое правило лево-линейно. В любом слу- случае О порождает регулярный язык. Предположим теперь, что п=\. Тогда либо Ь@) конечен (и регулярен), либо О сильно связна и порождает регулярный язык, как только что было показано. Допустим, что утверждение E8) верно для всех грамматик, со- содержащих менее чем п нетерминальных символов. Предположим, что Аг есть начальный символ в О, которая имеет нетерминальные символы Аъ...,Ап. Мы можем допустить, что О не содержит лишних символов и не является сильно связной. Таким образом, для неко- некоторого / не существует ср, <]ц таких, что А^уА$. Предположим, что ]=/=1. Образуем С' вычеркиванием из О каждого правила Лу-><р и заменой Лу во всех правилах на новый символ а. По индуктивно- индуктивному предположению язык Ь\ порождаемый грамматикой С, явля- является регулярным, так же как и множество К={х\А^ х}. Очевидно, что если Ьг и Ь2 регулярны и Ь3 состоит из всех цепочек, образованных из х^Ьг заменой каждого символа а (если он встречается) в х некоторой цепочкой из 12, тогда Ь3— регуляр- регулярный язык. Ь@) построен таким способом из V и К и в силу этого регулярен. Предположим, что /=1. Пусть срх, —, срг — такие цепочки, что Л1==^ср.. Пусть /С/ =[х\уГ>х) для каждого г. Предположим, что ср2=аг ... агп. По индуктивному предположению множество Ь]={х\(*^х) регулярно. Из теоремы 2 следует, что Кь, а следова- следовательно и /,, также регулярно. Этим доказано утверждение E8). Кроме того, утверждение непосредственно следует из бол ее сильного результата, который будет получен ниже. Мы исследовали так подробно только вопрос слабой эквивалент- эквивалентности грамматик, т. е. вопрос о том, порождают ли они один и тот же язык. Мы определили также понятие сильной эквивалентности двух грамматик, которые не только порождают один и тот же язык, но также одно и то же множество структурных описаний (см. разд. 5.1 предыдущей главы). О сильной эквивалентности известно мало, однако важно отметить, что мы можем расширить утверждение E8) таким образом, что если задана грамматика без самовставления О, то мы можем построить конечный преобразователь Г, такой, что он, в том смысле как это будет уточнено, сильно эквивалентен О. Мы можем также усилить этот результат до любой конечной степени самовставляемости. К отдельным следствиям из этих положений мы вернемся в следующей главе (см. также работу [10]). 15*
204 Я. Хсмский Для уточнения сказанного рассмотрим более подробно класс конечных преобразователей. Мы можем предположить, что вход- входной алфавит каждого преобразователя Т есть подмножество V т (фиксированного и универсального множества терминальных сим- символов для всех бесконтекстных грамматик). Мы предполагаем, что выходной алфавит каждого преобразователя есть подмножество некоторого фиксированного множества Ао. Если задан Г, мы гово- говорим, что Т допускает х и ставит ему в соотве пствие структурное описание у [или коротко: Т порождает (х, у) ] только в том случае, когда Т начинает работу в состоянии 50 с пустой лентой памяти, считывая самый левый символ цепочки х# на входной ленте, и заканчивает работу при первом возвращении в 50, считывая # на входной ленте, имея у в качестве содержимого ленты памяти1). Та- Таким образом, если Т порождает (х, у), то он допускает х как конеч- конечный автомат, не имеющий выхода (см. разд. 1.2), и преобразует его в у как преобразователь. Чтобы сравнить порождающую способность преобразователей, понимаемых таким образом, с порождающей способностью бескон- бесконтекстных грамматик, допустим, что нам задано эффективное взаим- взаимно однозначное соответствие Ф, отображающее множество струк- структурных описаний, порождаемых бесконтекстными грамматиками (задаваемых, скажем, цепочками с системами отмеченных скобок, см. стр. 170) в множество цепочек в Ао. Мы можем теперь опреде- определить строгую эквивалентность как отношение ме^жду бесконтекст- бесконтекстными грамматиками и конечными преобразователями. Определение 9. Если задана бесконтекстная грамматика О и конечный преобразователь Г, то О и Т сильно эквива- эквивалентны тогда и только тогда, когда выполнено следующее усло- условие: Т порождает (х,Ф{у)) в том и только в том случае, когда О порождает х со структурным описанием у. Таким образом, если Т строго эквивалентно О, то Т допускает только цепочки, порождаемые О, и преобразует каждую такую це- цепочку в каждое структурное описание, сопоставленное ей грамма- грамматикой С, и ни во что другое. Мы можем теперь дать точную формулировку обобщения утвер- утверждения E8). Теорема 34. Существует эффективная процедура ЧГ, такая, что если задана нормальная бесконтекстная грамматика без само- самовставления С, то ЧГ(С) есть конечный преобразователь, сильно эк- эквивалентный О [8]. ) Более точно, в соответствии с описанием преобразователей, данным в разд. 1.5, мы будем говорить, что Т начинает работу, наблюдая а на (в ос- остальном) пустой ленте памяти, и заканчивает работу с ау в качестве содер- содержимого ленты памяти.
Формальные свойства грамматик 205 Как было ранее отмечено, эта процедура легко может быть обоб- обобщена на случай любой конечной степени самовставляемости спосо- способом, который мы опишем более тщательно. Очевидно, что утвержде- утверждение E8) и теорема 33 следуют из теоремы 34. Теорема 34 фактически доказана только для нормальных грам- грамматик, удовлетворяющих дополнительному условию, что если А-+ -±ВС есть правило, то В=/=С, и если Л->срВф и А~->уВи> суть пра- правила, то х=сР и Ф=о)- Нетрудно показать, что эти дополнительные условия не влияют на порождающую способность. Кроме того, только от деталей дока- доказательства зависит вопрос об отбрасывании этих ограничений (и даже многих, если не всех ограничений, которые обусловливают нормальность). Доказательство теоремы 34 слишком сложно, чтобы излагать его здесь, но мы опишем процедуру № и проиллюстрируем ее на при- примере. Посмотрим сначала, чем теорема 34 отличается от теоремы 19 в разд. 4.2, которая утверждает, что если задана модифициро- модифицированная нормальная грамматика О, то существует конечный пре- преобразователь 7\ обладающий следующим свойством: Т преобразу- преобразует л: в цепочку г, которая сводится к е тогда и только тогда, когда г есть структурное описание, поставленное в соответствие цепочке х грамматикой С. В этом случае Ф есть тождественное преобразова- преобразование, т. е. выход преобразователя Т имеет в точности вид струк- структурного описания, определяемого грамматикой О. Кроме того, здесь мы не ограничены только грамматиками без самовставления. Однако преобразователь, существование которого гарантиру- гарантируется теоремой 19, не является сильно эквивалентным О в смысле определения 9. Таким образом, Т, имея на входе х, может возвра- возвращаться в 50 и закончить работу с цепочкой у на ленте памяти, ко- которая не сводится к е (и не является структурным описанием, по- поставленным в соответствие х грамматикой С). В действительности, причина, по которой преобразователь Г, сопоставленный с бесконтекстной грамматикой в теореме 19, пред- представляется на первый взгляд более мощным, чем преобразователь 7", сопоставленный с бесконтекстной грамматикой в теореме 33, состоит в том, что 7\ но не Т' эффективно использует потенциально бесконечную память при решении вопроса о допущении цепочки с заданным структурным описанием, так как это решение требует ана- анализа сводимости к е (неограниченной) цепочки на ленте памяти. Из теоремы 33 мы знаем, что теорема 34 является самым сильным воз- возможным результатом, касающимся сильной эквивалентности бес- бесконтекстных грамматик и устройств со строго ограниченной па- памятью. Чтобы проиллюстрировать теорему 34, предположим, что О — нормальная грамматика без самовставления, удовлетворяющая
2С6 Н. Хомский дополнительному условию, приведенному сразу после теоремы 34. Пусть /С — множество последовательностей \{АЪ . . . ,Ат)\, удовле- удовлетворяющих следующему условию: для каждой пары *, у, такой, что 1 <л < у -^ т, имеет место А1 -> 9Л41Ф и Л ^ 4г Теперь мы можем построить грамматику С* с нетерминальными симво- символами, представленными в виде [В1...Вп]1 (^ = 1,2), где В^ — нетерминальные символы С, следующим образом х). Пусть (Въ...,Вп)^К. 1) Если Вп -» а, то [В1. . . В^-^ а[В1. . . Вп]2- 2) Если Вп->СО, где СфВ^п (*<")> а) б) [Вх. . . ВпС}2 -+ [В,. . . ВДК, в) [Вх. . . ВО]2 -ЧВХ. . . 5Я]2. 3) Если Вл -> СО, где В1 = Б для некоторого {^ /г, то E9) а) б) 4) Если ВЛ -^ СО, где В1 = С для некоторого I < /г, то а) [В1...В,]а->[В1...ВлО]11 б) Теперь мы можем доказать, что в С существует 5-вывод це- цепочки г тогда и только тогда, когда в О* существует [5]1-вывод цепочки г[3]2 (теорема 10 в работе [8]), где 5—начальный символ в О. Правила в О все имеют вид А-^аВ, где а^=е, если они не явля- являются правилами, полученными по пункту 1) конструкции E9). Сле- Следовательно, мы можем рассматривать С* как конечный автомат. Предположим теперь, что мы снабдили автомат новым состоянием 5о и дополнительными правилами Ь 15,]-*50. F0) Если 5о считать начальным состоянием, то устройство становится х) Мы можем использовать символ-> одинаково для грамматики О и (?*, так как вид их нетерминальных символов различен.
Формальные свойства грамматик 207 слабо эквивалентным О. Чтобы превратить это устройство в преоб- преобразователь, мы должны снабдить его правилами выдачи выходного символа при переходе из состояния С11 в состояние фу и считывании символа ак. Мы считаем, что выходной алфавит состоит из множе- множества нетерминальных символов О* (т. е. множества символов вида {51...5л]г, которые теперь означают состояния автомата). Мы бу- будем говорить, что когда устройство переходит в состояние ф, оно печатает выходной символ 0. Этим завершается конструкция ЧГ, требуемая теоремой 34, которая связывает конечный преобразова- преобразователь Т с грамматикой без самовставления С. Если О порождает х, то Т преобразует входную цепочку х в выходную цепочку а, где а есть запись последовательных состояний, через которые Т прохо- проходит, допуская (порождая) х. Эта последовательность о в действительности содержит полную информацию о структурном описании, сопоставленном х граммати- грамматикой О, и обратно, для каждого структурного описания, сопостав- сопоставленного цепочке х грамматикой О, существует последовательность состояний а, в которую Т преобразует х и которая точно представ- представляет строение этого структурного описания. Дело в том, что назва- названия состояний в действительности содержат информацию о некотором поддереве размеченного дерева, сопоставленного цепоч- цепочке л: грамматикой О; из данной последовательности состояний это размеченное дерево может быть полностью восстановлено. Мож- Можно построить процедуру Ф такого типа, как это описано в опреде- определении 9, которая будет превращать выход Т в структурное описа- описание (скажем в структуру помеченных скобок) его входа и обратно. Такое построение подробно описано у Лангендоена [37 Р). Следо- Следовательно, преобразователь Т, построенный при помощи процедуры № из конструкций E9) и F0), сильно эквивалентен О. Свойства конструкции ЧР* можно объяснить на примере. Рассмот- Рассмотрим грамматику F1), которая удовлетворяет условиям конструк- конструкции Ч? и теоремы 34: ЛВ, Л->5С, , F1) С-+с, 0й Эга грамматика порождает язык, состоящий из всех цепочек а(с11ЬсУ йк Ъ, и ставит им в соответствие структурное описание та- такого вида, как показано на рис. 10 (для случая ^==/ = 1, к=2). Заме- с 1) Лангендоен, в действительности, строит процедуру Ф, которая рабо- работает в реальном масштабе времени; т. е. скобочная структура цепочки ху порождаемой грамматикой О, выводится процедурой Ф из выхода преобра- преобразователя Г, сопоставленного с О, во время работы Т над х.
208 Н. Хомский А В А а В /\ Л В а в в в тим, что С содержит как лево- леворекурсивные, так и право-реку- право-рекурсивные элементы, хотя она не содержит самовставляемых эле- элементов, и что в данном случае лево-рекурсивный элемент А до- .х , , минирует над право-рекурсив- / \ / \ ным элементом В. Этот пример иллюстрирует положение (часто опускаемое или недопонимае- недопонимаемое), что, хотя конечный преоб- преобразователь Ту который интер- интерпретирует предложения так же, как грамматика О, конечно, чи- читает эти предложения слева на- направо при одном прохождении, отсюда не следует, что должна быть какая-либо лево-правая асимметрия в структурном опи- описании этих предложений. Класс К последовательностей, построенных из грамматики С F1), содержит последовательности E), E, Л), E, Б), E, Л, С) и E, Б, О). Конструкция № производит следующие правила: ■ (шагом 2 конструкции E9)) Рис. 10. Структурное описание предложения, порождаемого грамма- грамматикой F1). [8А]2 -> [5Я]а->[5]2 [8А]г -> а [8А]2 (шагом 1 конструкции E9)) х ' (шагом 4 конструкции E9)) F2) ! -> Ь 1§В]2 (шагом 1 конструкции E9)) [8В)г [8В]Х 11 (шагом 3 конструкции E9)) [8ВО]г ~± а [8Вп] (шагом 1 конструкции E9)) Эти правила образуют грамматику О*, определяемую при по мощи ЧГ. В соответствии с рис. 10 имеем вывод
Формальные свойства грамматик 209 [5]х [8А]г а [8А]2 а[5В]! а [ЗВОЪ ас1 [8ВО]2 аи [ЗВЪ айЪ [8В]2 айЬ [8}2 адЪ \8АС\л адЪс [8АСи аЛЬс[8А]2 айЬс^В]! аЛЬстЭ], а&Ъсд, \8ВВ\г аЛЬЫ [8В]г аАЬсд, [5В^^1 айЬШ [8ВВ\ъ айЬсйй [8В]Л айЬсМЬ [8В]2 айЪсййЬ [8]2 F3) Ясно, что последовательность нетерминальных символов, по- полученных в этом выводе, позволяет нам однозначно восстано- восстановить структурное описание, показанное на рис. 10. Действитель- Действительно, автомат с правилами из примера F2) порождает предложение айЪсййЬ, систематически обходя размеченное дерево рис. 10. Этот пример типичен; он показывает, каким образом устройство с конечной памятью может сопоставлять с каждой цепочкой х> порождаемой нормальной грамматикой без самовставления О, структурное описание, которое грамматика О ставит в соответ- соответствие х, причем это структурное описание может иметь произ- произвольную сложность. Предположим теперь, что нам нужно применить эту конструк- конструкцию к нормальной грамматике О с самовставлением. Будем гово- говорить, что преобразователь Т порождает (х, у) подобно грамматике О, если Т порождает (я, у) в том смысле, как это было определено выше (т.е. преобразует х в у, допуская х как конечный автомат), причем Ф~1(у) есть структурное описание, которое грамматика О ставит в соответствие х. Тогда преобразователь 4^@), построенный, согласно конструкциям E9) и F0), будет, действительно, порождать (л:, у) подобно грамматике О для каждой пары (я, у), такой, что у есть структурное описание, которое грамматика О ставит в соот- соответствие х, и такой, что у не включает никакого самовставления. Кроме того, увеличивая память преобразователя Т (по-видимому, самый простой способ здесь состоит в присоединении ограничен- 14 Заказ № 563
210 Н. Xомский ного устройства РКэ), мы позволим ему переименовать самовстав- самовставляемые символы вплоть до получения любой ограниченной степени самовставляемости и далее работать, как прежде. В этом случае Т может порождать (х, у) подобно О для всех таких пар (х, у), что у есть структурное описание, которое грамматика О ставит в соответ- соответствие х и которое может содержать только ограниченные степени самовставления. Как мы знаем из теоремы 33, это самое большее, чего мы можем достичь при помощи конечного устройства. Из ре- результатов разд. 1.6 и 4.2 следует, что если мы разрешим преобразо- преобразователю использовать неограниченную память РЭ5, то он может быть сделан строго эквивалентным любой нормальной грамматике О; заметим, в частности, что конструкции A8) и A9) из разд. 4.2 на самом деле являются лишь тривиальными частными случаями кон- конструкции E9), содержащими только разделы A) и B). Приведенные рассмотрения четко ограничивают объем, в ко- котором предложения, порождаемые бесконтекстной грамматикой, могут обрабатываться (т.е. допускаться или интерпретироваться) устройством с конечной памятью или человеком, не имеющим (или имеющим весьма ограниченные) вспомогательных средств для ра- работы. Мы снова вернемся к этим вопросам в следующей главе. 4.7. Определимость языков системами уравнений Пусть О — бесконтекстная грамматика; ее нетерминальные сим- символы обозначим по порядку Аъ...,Ап, где Аг— выделенный, на- начальный символ. Каждому А-ь соответствует множество Ег терми- терминальных цепочек, доминируемых символом Л^; т. е. Ъ.ь={х\А-^х\ в наших обычных обозначениях. Сопоставим грамматике О после- последовательность множеств (Х^,...,!^), состоящих из терминальных цепочек, где Ех— терминальный язык, порождаемый граммати- грамматикой О. Мы скажем, что данная последовательность множеств удов- удовлетворяет грамматике О при данном порядке нетерминальных символов. Очевидно, каждый член удовлетворяющей последователь- последовательности будет терминальным языком, порождаемым некоторой бес- бесконтекстной грамматикой, а именно грамматикой, отличающейся от О только выбором начального символа. Предположим теперь, что мы рассматриваем нетерминальные символы О как переменные, значениями которых являются мно- множества цепочек в терминальном словаре. Мы определяем полиноми- полиномиальное выражение над переменными Л1,...,ЛЛ как выражение вида F4) где каждая ср. есть цепочка в У, а единственные нетерминальные символы, встречающиеся в выражении F4), суть Л!,...,ЛЛ. С по- помощью такого полиномиального выражения, как выражение F4), можно задать функцию /, отображающую последовательность мно-
Формальные свойства грамматик 211 жеств цепочек в Ут на множество цепочек в Ут следующим образом. Если дана последовательность (Х^,...,!^), где Ег есть множество цепочек в Ут, то пусть /(ЕЬ...,ЕЛ) будет множеством цепочек, ко- которое получится, если в выражении F4) заменить каждое вхржде- ние А1 знаком Ег, обозначающим множество Е., и затем интерпре- интерпретировать знак + как теоретико-множественное объединение, а сое- соединение (конкатенацию) — как теоретико-множественное (прямое) произведение (т.е. если А и В — два множества, то АВ = \уг\у(^А, г^В}; хА = {ху\у(^А)\ Ах={ух\у ^А}). Например, функция /(Л, В), заданная полиномиальным выражением а+ Аа + ВаА, F5) отображает пару множеств {х,у}, {г, хм) на множество {а,ха,уау гах, гау, шах, ыау). Если дана бесконтекстная грамматика О с нетерминальными Аъ...,Ап, сопоставим каждому Аь полиномиальное выражение ср14- +... + срь где Лг-»ср1,...,Лг-»срй суть все правила О, в которых А встречается в левой части. Рассмотрим теперь систему уравнений F6) п — 1п где 1Ь—функция, заданная полиномиальным выражением, сопос- сопоставленным символу Аь. Известно, что такая система уравнений имеет единственное минимальное решение; иначе говоря, существу- существует единственная последовательность множеств Е1,...,ЕЛ, удовлет- удовлетворяющая этой системе уравнений (в качестве значений для Аъ.,. ...,Ап соответственно), и такая, что если Е'Ь...,Е'Л есть другое ре- решение этой системы, то Е^.сЕ^ для каждого г. Далее, ясно, что по- последовательность множеств, являющаяся минимальным решением для уравнений F6) (в дальнейшем мы будем называть ее просто решением [Ше зоЫНоп]), есть та самая последовательность мно- множеств, которая удовлетворяет грамматике О в смысле первого абза- абзаца этого раздела, а Ех есть терминальный язык, порождаемый грам- грамматикой О. Несколько иначе сформулировав это замечание, мы можем рас- рассматривать уравнения F6) как задающие функцию /, такую, что х,... , Ап) = [[х (А1,... , Ап),... , [п (А1,... , Ап)]. F7) Неподвижной точкой функции / называется такая последователь- последовательность (Е^...,!^), что /(Е1,...,ЕЯ) = (Е1,...,ЕЯ). Тогда у функции / существует единственная минимальная неподвижная точка, совпат И*
212 Н. Хомский дающая с решением уравнений F6); т.е. это последовательность множеств, удовлетворяющая грамматике О. Для нахождения решения уравнений F6) можно определить сле- следующий рекурсивный процесс. Будем строить последовательность а0, а1,..., каждый член которой представляет собой кортеж п мно- множеств, следующим способом: а0 есть кортеж @,...,0), где 0 есть пустое множество. Для каждого *>-() положим а/+1 =/@,.). Если теперь а—(о^,...^^), определим а так: о—Нт о^ где а^^а/1). Эта последовательность а и будет решением урав- нений F6). Она будет также неподвижной точкой для функций / из F7) и последовательностью множеств, удовлетворяющей грамма- грамматике С, а а^ будет терминальным языком, порождаемым С. Будем говорить, что каждое а^ определимо из уравнений F6): определи- определимый язык есть множество, определимое подобной системой урав- уравнений. Очевидно, что определимые языки суть в точности бескон- бесконтекстные языки. Кратко обрисованная здесь схема рассмотрена подробнее Гинз- Гинзбургом и Райсом [20] и служит основой для исследований, прове- проведенных в этой работе и продолженных в статьях [21, 22]. Эта ра- работа первоначально выросла из исследований по языкам вычисли- вычислительных машин (в частности, по АЛГОЛу) и привела к некоторым интересным результатам, касающимся этих систем; к ним мы вер- вернемся в разд. 4.8. Этот подход к бесконтекстным языкам был обобщен Шюценбер- же (см., в частности, работы [63, 65, 69]). Пусть имеется отображе- отображение /, сопоставляющее каждой цепочке х в Ут неотрицательное це- целое число /(х). Можно представить / формальным степенным ря- рядом г. г = ^ ; г, х > *, F8) над элементами а^ Ут , где общий коэффициент < г, х > =!{х). Мы скажем, что формальный степенной ряд г — характеристический, если < г,х > для каждого* равно 0 или 1, т.е. если < г, х > представ- представляет собой характеристическую функцию. Определим основание (зир- рог1) формального степенного ряда г [ = 5ир (г) ] как множество тех цепочек, для которых < г, х>> =^=0. То есть основание можно полу- получить, если рассматривать знак + как обычное теоретико-множест- теоретико-множественное объединение, а пх, где п — коэффициент при х, как х-\-...-}-х п раз (что сводится к отождествлению пх с х при п=/=0). х) Под суммой здесь имеется в виду теоретико-множественное объедине- объединение.— Прим. перев.
Формальные свойства грамматик 213 Заметим, что формальный степенной ряд становится обычным степенным рядом над переменными аг^ Уг,если считать их комму- коммутативными, т.е. если отождествлять цепочки, которые могут быть получены друг из друга перестановкой элементов. Множество формальных степенных рядов замкнуто (среди про- прочих) относительно следующих операций: (а) Умножение на целое число: коэффици- коэффициент < пг, х > при х равен п < г,х > . (б) Сложение: коэффициент <г+г',х>при х в ряде г+г' равен < г, х > + < г', х > . F9) (в) Умножение: коэффициент </т',х> при х в ряде гг' получается разложением х во всевозможные произведения уг=х и суммированием всех членов < г,г/> <г',г>, т.е. < гг\х > =^] < г9у > <г',2> по всем уг, таким, что уг=х. Отметим, что сложение аналогично теоретико-множественному объединению, а умножение — образованию прямого произведения. Таким образом, мы имеем 511р (Г + /) = 511р (г) Ц 511р (г7), 511р (г г') = 511р (г) • 511р (г7). G0) Можно также определить операцию, аналогичную пересечению множеств, как операцию Сх), такую, что г®г' есть степенной ряд с коэффициентом г(х)г' прих, равным < г,х > < г',х ) . Так же легко определяются операции, соответствующие замыканию и — для неко- некоторых случаев — дополнению. Если дана грамматика О с нетерминальными ЛЬ...,ЛЛ, то пусть /; (х) — число структурных описаний, приписываемых цепочке х грамматикой О1У которая получится, если в О принять А-г за на- начальный символ (мы можем для определенности считать, что струк- структурные описания представляют собой системы помеченных скобок, порождаемых грамматикой так, как это описано на стр. 170; в этом случае Д(х) равно числу цепочек, порождаемых грамматикой Ог которые при опускании скобок дают цепочку х). Пусть г1 —фор- —формальный степенной ряд, который каждой цепочке х сопоставляет коэффициент < гьх > =Д(х). Тогда [зир(г1),...,5ир(г/1) ] есть после- последовательность множеств, которая удовлетворяет грамматике О в вышеописанном смысле; 5ир(гх) есть терминальный язык ЦС), по- порождаемый грамматикой О; < гъх > —0 тогда и только тогда, когда х$ЦС); < гъх > — п тогда и только тогда, когда О дает п неэкви- неэквивалентных выводов и, значит, п различных структурных описаний для х. Мы говорим, что последовательность (г19...,гп) удовлетворяет грамматике О. Данное выше определение удовлетворяющей после- последовательности является частным случаем этого определения, при
214 Н. Хомский котором рассматриваются те формальные степенные ряды, которые получаются из определенных здесь рядов отождествлением всех неравных нулю коэффициентов. Последовательность (г19...,гп), удовлетворяющая грамматике С, может быть получена, точно так же как и раньше, методом итера- итераций. Рассматривая О в виде системы уравнений вида F6), мы стро- строим бесконечную последовательность о0эа1,..., где а/ = (г^,...,^), а ^ есть формальный степенной ряд (в действительности имеющий лишь конечное число членов; иначе говоря, г'у будет полиномиаль- полиномиальным выражением над нетерминальными символами С). Как и преж- прежде, считаем, что уравнения F6) определяют функцию /, которая в этом случае отображает последовательность {гъ...уг^ на последо- последовательность [/^/ч,...,г„,),...,/„(/-!,...,гл)]. Функция Д задана, как и прежде, полиномиальным выражением <Рх+... + <р*, где А-±у; A<С/<^) суть все правила С, имеющие А в левой части. Опера- Операции + и соединение интерпретируются теперь не как объединение и произведение, но как соответствующие им операции над степен- степенными рядами (см. определение F9)). Определим о0 как последова- последовательность (г0!,...,г0л), где каждый г0^ есть «пустой» степенной ряд, у которого все коэффициенты равны нулю. Примем с/+1=/(о.). Как и прежде, возьмем а = Нт а~ (г°| ,...,г^), где г/° определен сле- 1-+ОО дующим образом. Пусть х — цепочка длины к, а ф как и выше,— /-й член последовательности ок. Тогда коэффициент при х в степенном ряде гш. определяется следующим условием: < *., х > = < г*, х > . G1) В самом деле, нетрудно показать, что в последовательности о0, ах,... коэффициенты при цепочках длины к не изменяются после ак. Следовательно, о действительно является пределом этой последова- последовательности; гш{ есть формальный степенной ряд, порождаемый грам- грамматикой О, если Ах есть начальный символ О, а его основание, зир^), есть язык, порождаемый О в ранее определенном смысле; гшр кроме этого, ставит в соответствие каждой цепочке х, принад- принадлежащей зир(г^), ее коэффициент < г™ , х > , который представляет собой меру степени неоднозначности, приписываемой грамматикой С цепочке х. В дальнейшем, когда мы будэм говорить о стзпенном ряде, удовлетворяющем О, будет иметься в виду ряд г™. Пусть, например, имеется грамматика О с правилами А-^АА, А-±а, А-*Ь\ G2)
Формальные свойства грамматик 215 ей соответствует система уравнений, состоящая из одного следую- следующего уравнения: А = а + Ь +А\ G3) В этом простейшем случае имеем ^—(г^), где г!=-- а-\~Ь + 02 - а+Ь , г\^ а\-ЪЛ- (г\у = а + Ь + (а + бJ- - а + Ь + а2 + аЬ + Ьа + Ь2 , г\= а + Ь + ( г?J - Ц < г?, л: > х, где G4) < г? , х > =-- 1 для каждой цепочки длины 1, 2 и 4, =2 для каждой цепочки длины 3, А - а + Ь + { г?J и т. д. Коэффициенты при каждой цепочке длины 3 остаются равными 2 в любом г/1(г>3),при цепочках большей длины коэффициенты увели- увеличиваются. Таким образом, в этой грамматике имеется только один А А А а \ А Ь / А /\ А А \ А | а / А 1 а \ А /\ А А а о о а А А А А А /\ /\ / \ /\ / \ А А А А А А А А А А Л /\ /\ I /\ I I /\ I /\ А А А А А А Ь А А Ъ а А А а А А I I I I А I I А I /\ /\ 1 а Ъ а Ь А А а а А А Ь А А А А Ь а Ъ Ъ а а Ъ Ъ а Рис. 11. С-маркеры, иллюстрирующие неоднозначность грамматики G2). способ порождения для каждой цепочки длины 2, ровно два способа порождения цепочки длины 3, пять способов порождения цепочки длины 4 и т.д., как можно видеть из примеров, приведенных на рис. 11. Ряд гъ являющийся пределом так определенных г\, будет
216 Н. Хомский решением уравнений G3). Его основание есть терминальный язык ЦО), порождаемый грамматикой С. В этом случае Ь(О) есть множество всех цепочек в алфавите ), и мы знаем, что существует эквивалентная грамматика С*> имеющая в качестве решения характеристический степенной ряд (т.е. коэффициенты которого равны 0 либо 1 — в данном случае все равны 1, за исключением коэффициента при е) с основанием Ь(О). Примером может служить грамматика О*, заданная уравне- уравнением А Ь А А G5) Как было отмечено выше (разд. 1.2, теорема 1), для каждого конеч- конечного автомата существует соответствующий ему детерминирован- детерминированный автомат. Говоря в терминах этого раздела, каждый регулярный язык порождается грамматикой С, которой удовлетворяет некото- некоторый характеристический формальный степенной ряд. Язык, порож- порождаемый грамматикой из примера G2), регулярен; мы можем это ви- видеть из того факта, что он порождается односторонней линейной грамматикой G5). Однако, как утверждает теорема 29 из разд. 4.5, существуют бесконтекстные языки, которые нельзя представить та- таким способом при помощи характеристического ряда; именно теоре- теорема 29 утверждает существование языка Ь, являющегося основанием ряда г, который удовлетворяет бесконтекстной грамматике, но не являющегося основанием никакого характеристического ряда, удовлетворяющего бесконтекстной грамматике. В качестве еще одного примера для иллюстрации этих понятий рассмотрим следующие грамматики: 8-+а+Ь88, G6) ^ а+ 565. G7) Интерпретируя Ъ как знак импликации и а как переменную, мы ви- видим, что грамматика G6) порождает множество правильно построен- построенных формул импликативного исчисления с одной свободной пере- переменной в бесскобочной записи Лукасевича и соответственно имеет характеристическое решение. Грамматика G7) порождает множест- множество цепочек, получающихся из формул этого исчисления в обычной записи опусканием скобок, и ее решением является степенной ряд,, в котором коэффициент при данной цепочке равен числу различных способов расстановки скобок, превращающих эту цепочку в пра- правильно построенную формулу. Введенное Шюценберже понятие представляющих множеств, перечисляемых порождающим процессом в терминах формальных степенных рядов, обусловлено потребностями изучения языка. Как подчеркивалось не раз, мы в конечном счете заинтересованы в
Формальные свойства грамматик 217 изучении процессов, порождающих системы структурных описа- описаний, больше, чем процессов, порождающих множества цепочек, т.е. в сильной, а не в слабой порождающей способности. Кратко описанный здесь подход является первым шагом в этом направле- направлении, поскольку он учитывает число структурных описаний, припи- приписываемых цепочке (хотя и не сами эти структурные описания). Он также дает нам вполне естественный подход к изучению недетер- недетерминированных преобразователей. Напомним, что преобразователь, вообще говоря, может обла- обладать двумя различными видами недетерминированности. Находясь в состоянии 5^ и считывая символ а, он может иметь право выбрать переход в то или иное состояние. Выбрав переход в состояние 5У-, он может, далее, иметь право напечатать ту или иную цепочку на выходной ленте. Мы скажем, что цепочка х=Ь1...Ьт (где Ь1— сим- символ входного алфавита) переводит преобразователь Т из состояния в состояние 5у с выходом х=х1...хт, если Т имеет правила ' 5**)->E*А+1' Хк) ДЛЯ НеКОТОрЫХ Ч,...,**+! ('1 = 4 *да+1 =/) И для каждого к^т. Тогда цепочка х может переводить Т из 5^ в 5/ со многими различными выходами, и она может переводить Т из 5^ в 5у с выходом х многими различными путями (с различным разложением х). Естественно поэтому попытаться представить результат действия входной цепочки х на преобразователь Т при переводе его из 5^ в 5;- при помощи полиномиального выражения п(х, I, /) =5] < ъ(х, I, /), г} г, где коэффициент < тг(х, /, /), г > представляет собой число различных путей, переводящих Г из 5г в 5у, при которых г по- получается на выходе. Тогда можно представить преобразова- преобразователь Г, имеющий п состояний, при помощи гомоморфизма [л, отобра- отображающего Ут в кольцо квадратных матриц /г-го порядка, элементы которых есть полиномиальные выражения над выходным алфа- алфавитом Т. Матрица \хх с элементами (рх)у — тг(л:, /, /) представляет поведе- поведение преобразователя Т при его переходе из состояния 5/ в состоя- состояние 5;- под действием цепочки х. Многие задачи теории преобразо- преобразований сводятся при этом к проблемам оперирования с матрицами, что позволяет применить хорошо разработанную технику [61, 66]. Более того, при этом общем подходе возникают некоторые новые проблемы. Так, в этом изложении мы ограничились лишь положи- положительными степенными рядами, т.е. рядами с неотрицательными коэф- коэффициентами. Обобщая этот подход, можно рассматривать алгебраи- алгебраические элементы (элементы кольца степенных рядов), имеющие как положительные, так и отрицательные коэффициенты и удовлетворя- удовлетворяющие системам уравнений, которые могут иметь и отрицательные коэффициенты в полиномиальных выражениях.
218 Н. Хомский Степенной ряд г с положительными и отрицательными коэффи- коэффициентами можно представить в виде разности двух положительных степенных рядов г' и г". Коэффициент при цепочке х в ряде г будет при этом равен разности между числом способов, которыми грамма- грамматика, соответствующая ряду г\ порождает цепочку х, и числом спо- способов, которыми порождает эту же цепочку грамматика, соответ- соответствующая ряду г'г. Основание ряда г есть множество тех цепочек, которые порождаются этими двумя грамматиками неодинаковым числом способов. Шюценберже исследовал семейство формальных степенных ря- рядов г=г'— г'\ где г' и г" удовлетворяют односторонней линейной грамматике и, следовательно, основаниями их являются регуляр- регулярные языки ( эти формальные степенные ряды соответствуют рацио- рациональным функциям, если отождествить цепочки, получаемые друг из друга перестановкой их элементов), и охарактеризовал основа- основания этих формальных рядов в терминах допустимости некоторым классом ограниченно-бесконечных автоматов [61 ]. Он показал так- также, что подобный ряд г может иметь в качестве основания язык, не являющийся бесконтекстным, и, с другой стороны, что сущест- существуют бесконтекстные языки, не являющиеся основанием какого-ли- какого-либо подобного степенного ряда [68]. Дальнейшее обсуждение этих и связанных с этими вопросов можно найти в вышеприведенных ра- работах и в работе Шюценберже и Хомского [69]. Чтобы показать на примере использование введенных выше по- понятий, приведем следующий общий результат, относящийся к ре- регулярным языкам и связанный с вопросами неоднозначности бес- бесконтекстных языков, обсуждавшихся в разд. 4.5. Теорема 35. Пусть О — односторонняя линейная грамма- грамматика, которой удовлетворяет формальный степенной ряд г и ко- которая порождает язык ЦС)=зир(г). Пусть Ьк = \х\(г, х)<^к\. Тогда при каждом к Ьк есть регулярный язык (Шюценберже, личное сообщение). Пусть N — множество натуральных чисел, к — фиксированное целое число, а А^— полукольцо квадратных матриц порядка М с элементами из N. Доказано [66], что если О и г удовлетворяют усло- условиям теоремы 35, а V — множество всех цепочек в УТ (т.е. сво- свободная полугруппа с образующими а^Ут), то существует такое М<со и такой гомомор- гомоморфизм [х: и в Ым, что< г, х > =(рх)им- G8) Пусть /С={**!0<7<;&} и [3: N -+К, определенное условиями (/г) = п для п<^к; $(п) = к для п> к. G9)
Формальные свойства грамматик ■ 219 Определим сложение и умножение на множестве /С, положив +Л, »<Е>/= ?(«•/■)• (80) К есть полукольцо и легко показать, что р есть гомоморфизм, отоб- отображающий N на К. Пусть Км будет множеством (даже полуколь- полукольцом) матриц порядка М с элементами из /С. Тогда р естественным образом распространяется в гомоморфизм ^: А^->ЛХ Определим у(х)=$[х(х)], где ^ удовлетворяет условиям предло- предложения G8). Тогда ср(х) принадлежит Км для х(^0. Очевидно, что если < ' > ^' (81) Но /См есть мультипликативная полугруппа конечного порядка, и для &'<& ' = [х\ < г, х здесь первый знак равенства имеет место по определению, а вто- второй — в силу предложения G8); (? есть подмножество множества ср((У), содержащее ср(лг) в том и только в том случае, когда (ух)\уМ^к'. Хорошо известно, что если <Ь — гомоморфизм, отображающий под- подмножество множества V на конечную полугруппу Я, то множество ф~1(Я)= \х;\(х) ^ Я) является регулярным языком. Следователь- Следовательно, Ь/г> также есть регулярный язык. Из того, что при каждом к Ьк есть регулярный язык, в силу ос- основных свойств регулярных множеств, следует (см. теорему 1), что для каждого к множество цепочек х, для которых ( г,х > =к, и множество цепочек, для которых < г, х > >-&, будут регулярными языками. В частности, множество тех цепочек х, для которых < г,х > >-2, также есть регулярный язык. Это—множество цепочек, неоднозначных относительно О в смысле разд. 4.5. Возьмем, в частности, два множества цепочек Х= {хъ...,хп) и ={У1>'">Уч}' Определим Ьх как множество всех цепочек г=х^... *..хк (кЛ^п), т.е. всех цепочек, разлагающихся в соединение элемен- элементов множества X; в терминах разд. 1.2 множество Ьх было бы обоз- обозначено (х1,...,хЛ)*. Аналогично определим Ьу . Назовем Ьх кодом (ср. с разд. 2 предыдущей главы), если каждая цепочка Ьх однознач- однозначным образом разлагается (дешифруется) на элементы из X (ана- (аналогично для V). Рассмотрим теперь грамматику Ох с правилами 5->л:,-5 и грамматику Оу с правилами 5-^5 (и правилом 8->ё). По теореме 35 множество цепочек, неоднозначных относительно Ох (как и относительно Оу), регулярно, и, значит, существует алгоритм для определения того, пусто оно или нет. Следовательно, существу-
220 Н. Хомский ет алгоритм, позволяющий определить, образует ли данное мно- множество цепочек код или нет (см. работу [56]). Однако мы не можем узнать, одинаково ли не являются кодами данные два множества (ср. с разд. 4.5). Пусть теперь О и г удовлетворяют условиям теоремы 35, а СЛ другая односторонняя линейная грамматика, которой удовлетворя- удовлетворяет ряд /*'. Из теоремы Маркова и предложения G8) следует, что не- невозможен алгоритм, определяющий для произвольного случая это- этого рода, существует ли цепочка х, для которой < г,х > = < г', х > . Из теоремы 35 следует, что при любом фиксированном к существу- существует алгоритм, определяющий, когда непусто пересечение Ьк{]Ь\, где Ьк ={х\ < г,х > <;&), Ьк' = \х\ ( г\х > <^}.Отсюда видно, что не- невозможен алгоритм, определяющий, существует ли такое к, для ко- которого Ьк[\Ьк непусто (Шюценберже, личное сообщение). 4.8. Языки программирования Программа цифровой вычислительной машины может рассматри- рассматриваться как цепочка символов в некотором фиксированном алфавите. Язык программирования может рассматриваться как бесконечное множество цепочек, каждая из которых есть программа. Он имеет грамматику, точно определяющую алфавит, и множество правил построения программ. Гинзбург и Райе указывают, что язык АЛГОЛ имеет бесконтекстную грамматику, хотя и не односторон- одностороннюю линейную и не последовательную. Это наблюдение показывает, что интересно попытаться интерпретировать результаты, получен- полученные в общей теории бесконтекстных языков, считая, что они состав- составляют класс потенциальных языков программирования для решения задач. Заметим, в частности, что язык программирования должен иметь однозначную грамматику в смысле, определенном выше в разд. 4.5. Если множество правил, применяющихся при построении про- программ, составляет неоднозначную грамматику, то может получиться что программист составит программу, которую машина должна интерпретировать определенным образом, а машина интерпретирует ее совершенно иначе. Мы, однако, видели, что некоторые бес- бесконтекстные языки существенно неоднозначны относительно класса бесконтекстных грамматик (разд. 4.5, теорема 29). Поэтому имеется хотя бы абстрактная возможность того, что некоторое бесконечное множество «программ» нельзя будет охарактеризовать при помощи однозначной грамматики, если ограничиться теми методами по- построения программ, которые выразимы в пределах теории бескон- бесконтекстных грамматик. Кроме того, мы видели, что невозможен ал- алгоритм, распознающий по заданной бесконтекстной грамматике, является ли она однозначной (разд. 4.5, теорема 28). Следователь- Следовательно, в отдельных случаях задача распознавания однозначности
Формальные свойства грамматик 221 грамматики (т.е. удовлетворяет ли предлагаемый язык программи- программирования минимальным требованиям адекватности) может оказаться весьма нелегкой. Возьмем теперь проблему перевода с одного языка программи- программирования Ьх на другой Ь2 (например, машинный код или другой язык программирования более высокого порядка). Мы можем рассматри- рассматривать ее как проблему построения конечного преобразователя («ком- («компилятора») 7\ такого, что Т(Ь1)=Ь2. В общем случае нет причин предполагать, что такой преобразователь существует. Более того, мы знаем, что общая проблема распознавания по двум бесконтекст- бесконтекстным языкам Ьх и Ь2 существует ли такой преобразователь 7\ что Т(Ьг)=Ь29 алгоритмически неразрешима (разд. 4.4, теорема 27). Отсюда вытекает, что при решении проблемы перевода произволь- произвольных систем этого рода, по-видимому, смогут возникнуть весьма сложные вопросы (Гинзбург, личное сообщение). 5. Категориальные грамматики Основное содержание традиционного грамматического анализа составляет расчленение предложения на все более и более мелкие составляющие его части-синтагмы вплоть до категорий отдельных слов; при этом имеется лишь конечное число типов, к которым при- принадлежат эти синтагмы (именная группа, глагольная группа, имя существительное и т.п.). За последние двадцать лет в дескриптив- дескриптивной лингвистике появились различные попытки более четко и ясно сформулировать этот традиционный подход. Здесь можно прежде всего назвать Харриса (работа [25], переработанная затем в гл. 16 работы [26]), затем Уэллса [76] и недавние работы Пайка и его кол- коллег по тагмемике (т Та^тегшсз) (см., например, работу [18]). По- Порождающие системы, рассмотренные в разд. 3 и 4, дают один воз- возможный метод точного выражения некоторых из этих идей. Но бы- были и другие, более или менее связанные с этим подходы, которые здесь лишь бегло упэмянуты. Были сделаны некоторые попытки развить систематический ме- метод, ведущий от множества цепочек к разбиению подцепочек на ти- типы составляющих (см., например, работы [6, 25, 26, 32]). Эти под- подходы, несомненно, связаны друг с другом и с рассматриваемыми здесь системами, но точная природа этой связи еще не исследована. Несколько отличный подход к систематической категоризации ти- лов составляющих можно найти у Хиза [28]. Другой подход вытекает из теории семантических категорий Лес- невского, которая была развита для нужд изучения формализован- формализованных языков. Некоторая модификация этой теории, основанная на формулировке Айдукевича [1], была предложена Бар-Хиллелом [2] в качестве точного аналога метода анализа по непосредственным
222 Н. Хомский составляющим, разрабатываемого в современной лингвистике» Лам- бек [33—35] также построил несколько систем в общем того же ти- типа, но с некоторыми дополнительными изменениями и исследовал вопрос об их применимости к лингвистическому материалу, Схо- Схожие подходы также имеются в работах [15, 16, 74, 77]. Здесь мы следуем изложению Бар-Хиллела, Гайфмана и Шамира [3]. Система категорий может быть установлена следующим путем. Выберем конечное число простых категорий (например, категория 5 для предложений и категория п для имен и именных групп; это единственные простые категории, рассматривавшиеся в системе Айдукевича). Простые категории суть категории. Если аир — ка- категории, то [а/р ] (читается: «а над [3») и [Др] (читается: «а под [3») также будут категориями — назовем их производными категория- категориями. Таким образом получаются категории, такие, как [п/8\> [з/Ы/з]] или Ип\п]\[8/п]]. Других категорий нет. Каждому элементу терминального словаря УТ присваивается одна или не- несколько категорий. Множество категорий, сопоставленных эле- элементам УТ, вместе со списками членов этих категорий составляет грамматику О. Имеется два правила сведения: а) последовательность двух символов, обозначающих категории, вида [а/C], [3 сво- сводится к а, (82) б) последовательность двух символов, обозначающих категории, вида а, [а\C] сво- сводится к C. Эти правила напоминают правила сокращения дробей в ариф- арифметике, чем и были вызваны такие обозначения. Если теперь дана цепочка х элементов Ут , заменим каждый сим- символ из Ут в этой цепочке символом, обозначающим категорию, к которой он принадлежит, и таким образом получим последователь- последовательность символов категорий. Поскольку каждый член цепочки может принадлежать к нескольким категориям, каждой цепочке ставится в соответствие несколько последовательностей символов категорий. Обозначим эти последовательности С1(х),...,С1 (х). Последователь- Последовательно применяя правила сведения к некоторой СДх), мы получим, что либо СДх) в конце концов сведется к 5, либо она в конце концов сведется к некоторой последовательности одного или более симво- символов, отличной от 5. Если для некоторого I С (х) сводится к 5Г мы говорим, что грамматика О порождает х\ если такого I нет, О не порождает х. Множество цепочек, порождаемых грамматикой 0у есть язык, порождаемый О. Так же как и для других ранее обсуж- обсуждавшихся порождающих грамматик, считать, что С порождает предложения, или считать, что она получает на вход цепочки и ре- решает, являются ли они предложениями (т.е. как распознающий ме-
Формальные свойства грамматик 223 ханизм),— это просто вопрос терминологии. Обычно для только что описанных категориальных грамматик употребляется второй из этих оборотов речи. Функционирование такой грамматики можно пояснить на при- примере. Пусть наша грамматика содержит простые категории п и 5, слова ЛоЬп, Магу, 1оуез, сНес!, 15, оЫ, уегу (Джон, Мэри, любит, умер, есть, старый, очень) и следующее распределение слов по ка- категориям: ЛоЬп, Магу — в п\ сНес! — в [д\5]; 1оуез — в [п\8Упу сЫ — в [п1п]\ уегу — в [п/п ]/[п1п ]; 15 — в [п\8]/[п/п]. Таким образом, непереходный глагол (такой, как сИес!) рассматривается как «оператор», который «превращает» имя существительное, стоя- стоящее слева от него, в предложение; переходный глагол Aоуез) рас- рассматривается как оператор, превращающий имя существительное^ стоящее справа от него, в непереходный глагол; прилагательное рассматривается как оператор, превращающий существительное, стоящее справа от него, в существительное; наречие уегу рассмат- рассматривается как оператор, превращающий прилагательное, стоящее справа от него, в прилагательное; связка 15 рассматривается как оператор, превращающий прилагательное, стоящее справа от него, в непереходный глагол. Цепочки, показанные ниже, сводятся к 5 следующим образом: а) ЛоЬп Лей п [п\з] 8 б) ЛоЬп 1оуе5 Магу , п [П\*] 5 в) ЛоЬп 15 уегу оЫ (83) п, [п\8\/[п/п], [п/п]/[п/п], [п/п] [п/п] П, [П\8\ Грамматика описанного типа называется двунаправленной ка- категориальной грамматикой. Если все производные категории грам- грамматики имеют вид [а\^ ] или все имеют вид [а/(з ], эта система назы- называется однонаправленной категориальной грамматикой. Айдукевич рассматривал только второй вид категорий, поскольку он вна- вначале занимался системами бесскобочной записи, где функторы пред- предшествуют аргументам. Разумеется, можно рассматривать однонаправленные и двуна- двунаправленные категориальные системы как порождающие граммати- грамматики. Встает вопрос об их связях и отношениях друг с другом и с
224 Н. Хомский выше рассмотренными системами. Бар-Хиллел, Гайфман иШамир [3] показали следующее. Теорема 36. Семейства однонаправленных категориальных грамматик, двунаправленных категориальных грамматик и бес- бесконтекстных грамматик слабо эквивалентны друг другу. Если С — двунаправленная категориальная грамматика, то существует бесконтекстная грамматика, порождающая тот же язык, что и С, и если О есть бесконтекстная грамматика, то существует однонаправленная категориальная грамматика, порождающая тот же язык, что и О. Несколько неожиданным следствием этого ре- результата является тот факт, что класс однонаправленных катего- категориальных грамматик эквивалентен по своей порождающей способ- способности полному классу двунаправленных категориальных грамматик. Шамир указал недавно (личное сообщение), что для теоремы 36 существует доказательство, весьма похожее на доказательство эк- эквивалентности бесконтекстных грамматик и автоматов РОЗ. Необходимо подчеркнуть, что отношение, о котором идет речь в теореме 36,— это отношение слабой эквивалентности. Из него не следует, что для любой заданной грамматики одного из этих видов всегда найдется грамматика другого вида, дающая распределение по категориям, сравнимое по сложности или естественности, или дающая такую же систему помеченных скобок (структуру состав- составляющих) для подцепочек. По-видимому, как раз для тех частей реальных языков, которые легкой естественно могут быть описаны при помощи бесконтекстных грамматик, соответствующее описание в терминах двунаправленной категориальной грамматики очень быстро чересчур усложняется, а об естественном описании с по- помощью однонаправленной категориальной грамматики, конечно, не может быть и речи. Системы, предложенные Ламбеком, в некоторых отношениях отличаются от только что описанной; в частности, они позволяют большую свободу в приписывании категорий. Так, его правила све- сведения утверждают, например, что категория а одновременно яв- является и категорией р/ [а\р ], так что этим или иным путем слож- сложность и длина последовательности символов категорий, сопостав- сопоставленных цепочке, может возрастать при применении правил приве- приведения. Поэтому непосредственно не очевидно, как это было в ранее рассмотренных системах, что порождаемый язык представляет со- собой рекурсивное множество. Однако Ламбек показал, что изучае- изучаемые им системы в действительности являются разрешимыми. Не известно, как связаны системы Ламбека с двунаправленными ка- категориальными грамматиками или с бесконтекстными граммати- грамматиками, хотя можно ожидать, что эта связь окажется довольно тес- тесной, возможно даже слабой эквивалентностью.
Формальные свойства грамматик 225 Привлекательность различных видов категориальных грамма- грамматик состоит в том, что они не имеют почти никаких грамматических правил, не включенных в словарь, т.е. если грамматика Сдает рас- распределение слов из конечного словаря Ут по конечному числу ка- категорий, простых или производных, то для каждой цепочки х в словаре Ут возможно определить, верно ли, что О порождает х, при помощи вычислительного процесса, использующего правила приведения, которые одинаковы для всех грамматик заданного типа и поэтому не должны входить в состав грамматики О. Дейст- Действительно, существует традиционная точка зрения, которая отож- отождествляет грамматику с множеством грамматических свойств слов или морфем (ср. [57], стр. 149), и целесообразно будет подчеркнуть, что вышеописанный подход дает точное выражение этих понятий. В последнее время Мэтьюз [42 ] исследовал обобщение теории грамматик непосредственных составляющих, при котором допус- допускаются некоторые типы прерванных составляющих. Продолжая следовать обозначениям, принятым в разд. 4 предыдущей главы, рассмотрим правила вида Л->ср1[п]ср2, где п>Ю. Мы интерпрети- интерпретируем такое правило как в применении к цепочке фЛс^... алх, дающее цепочку фср 1а1... ап<г21 (где а1=/=е)>и в применении к цепочке фЛэ^... ... ат(/п<п), дающее цепочку ф^х^х атУ2- При этих условиях бесконтекстная грамматика может рассматриваться как грамматика, имеющая только правила вида Л-^ср1[0]ср2. Мэтьюз также естест- естественным образом обобщил это понятие на случай разрывных кон- контекстных правил. Для любой грамматики определим теперь прямой вывод, явно определенный в разд. 4.2, стр. 178, и прямую разрыв- разрывную грамматику как грамматику с правилами только что описан- описанного вида (или более общего контекстного разрывного типа) и с ограничением на применение правил, разрешающим только пря- прямые выводы (ср. с разд. 4.2). Мэтьюз показал, что прямые разрыв- разрывные грамматики могут порождать только бесконтекстные языки, так что это обобщение не увеличивает порождающей способности. Очевидно, то же самое верно и для обратных разрывных грамма- грамматик, которые разрешают вывод так, как это описано на стр. 178 (на каждом шаге заменяется самый правый нетерминальный сим- символ), и в которых правило вида А-^у^п ]ср2 понимается так, что нужно поставить срх на п символов влево (или на левый конец) при замене символа А, вместо того чтобы ставить ее на п символов впра- вправо (или на правый конец), как в случае прямой разрывной грамма- грамматики (аналогично для контекстных разрывных правил). Мэтьюз распространил этот результат на правила со многими разрывами и указал, что даже допущение двусторонних разрывных правил не увеличивает порождающей способности контекстных грамматик. Были предложены и различные другие модели лингвистической структуры, но постольку, поскольку они могут быть интерпрети-
226 Н. Хомский рованы как специальный вид порождающих грамматик (т.е. по- поскольку они определяют грамматики, в явном виде выдающие ин- информацию о структуре предложения), они, по-видимому, большей частью попадают в область теории грамматик непосредственных составляющих и даже почти всегда в область теории бескон- бесконтекстных грамматик. Обсуждение этих вопросов см. в работах [24, 52]. Этим заканчивается наш обзор, посвященный формальным свой- свойствам грамматик. Вряд ли нужно специально отмечать предвари- предварительный характер большей части наших рассмотрений. Как явст- явствует из приложенного списка литературы, исследование этих воп- вопросов началось, собственно говоря, всего пять или шесть лет назад, и многие из упомянутых здесь работ еще продолжаются. Важно снова подчеркнуть, что рассмотренные системы, которые так хорошо доказали свою пригодность для абстрактно-математиче- абстрактно-математических исследований, несомненно, недостаточны, чтобы представить ис- исчерпывающим образом всю сложность и богатство синтаксических механизмов, используемых в естественных языках, в особенности из-за того, что, ограничившись системами подстановок, мы не включили в рассмотрение грамматических трансформаций, подоб- подобных обсуждавшимся в разд. 5 предыдущей главы. В то же время эти системы, по-видимому, достаточно широки, чтобы охватить тео- теории грамматической структуры, предложенные в традиционной и современной лингвистике, равно как и в недавних новых работах по автоматическому синтаксическому анализу, так же как и неявно содержащиеся в традиционных или современных описательных ра- работах, за исключением рассмотрения трансформаций. Некоторые характерные черты естественных языков (например, расстановка скобок в запутанных фразах, категоризация лексических типов и типов составляющих, вставленные друг в друга зависимости) по- появляются в системах рассмотренного вида. Поэтому изучение та- таких систем непосредственно связано с изучением природы естест- естественного языка. Далее, очевидно, что плодотворное изучение абстрактных свойств столь богатых и сложных систем, как естественные языки, или организмов, достаточно мощных, чтобы овладевать и пользоваться такими системами, потребует более разнообразных средств и более глубокого проникновения в сущность формальных систем, чем то, которым мы располагаем в настоящее время, а это может быть дос- достигнуто только путем изучения систем, подобных языку, но более простых, чем имеющиеся естественные языки. Но будут ли эти более мощные системы служить объектом для серьезных формальных исследований — это, конечно, вопрос, над разрешением которого мы в настоящее время можем только гадать.
Формальные свойства грамматик 227 ЛИТЕРАТУРА 1. А] 6 и к I е \у 1 с г К., 01е зугйакИзсЬе Коппехйа'1, 81исИа РНИово- рЫса, 1 A935), 1—27. 2. В а г-Н 1 1 1 е 1 У., А ^иаз^-а^й11те^^са1 по1аИоп !ог зугйасИс йезсгорН- оп, 1ап§иа§е, 29 A953), 47—58. 3. В а г-Н 1 1 1 е 1 У., ОаПтап С, 5Ьат1г Е., Оп са1е§опа1 апс! рЬгазе з1гис1иге ^гаттагз, Ви11. Яез. СоипсИ о/ 1згае1, 8Р A960), 1 —16. 4. В а г-Н 1 1 1 е 1 У., Рег1ез М., 5Ьат1г Е., Оп !огта1 ргорегИез о! 51тр1е рЬгазе з1гис1иге ^гаттагз, ТесЬ. Кер1. № 4, ОШсе о! Ыауа1 КезеагсЬ, 1п1огта1юп 5уз1етз ВгапсЬ, 1960; 1еИзсНг1]1 }йг РкопеНк, ЗргаскииьззепзскаЦ ипд, КоттишкаИопзрогзскипд, 14 A961), 143—172. 5. В а г-Н 1 1 1 е 1 У., 5 Ъ. а т 1 г Е., Ртйе з1а1е 1ап^иа§ез: !огта1 герге- зегйаНоп апс! ас^иасу ргоЫетз, Ви11. Яез. СоипсИ о/ 1згае1, 8Р A960), 155—166. 6. Спотзку Ы., 5уз1етз о! зуп1ас11с апа1уз15, /. ЗутЪоНс Ьо§1с, 18 A953), 242—256. 7. СЬотзкуЫ., ТЬгее тос!е1з !ог Ше ёезсПриоп о! 1ап§иа§е, 1ЯЕ Тгапз. оп 1п[огт. ТНеогу, 1Т-2 A956), 113—124. (Русский перевод: Хомс- к и й Н., Три модели для описания языка, Кибернетический сборник, вып. 2, ИЛ, 1961, 237—266.) 8. С п о т з к у N.. Оп сег1ат !огта1 ргорегИез о! ^гаттагз, 1г$огтаИоп апй Согйго1, 2 A959), 137—167. (Русский перевод: Хомский Н., О некоторых формальных свойствах грамматик, Кибернетический сбор- сборник, вып. 5, ИЛ, 1962, 279—312.) 9. Спотзку 1М.,А по1е оп рпгазе з1гис1иге ^гаттагз, 1п[огпгаНоп апй Сопггог, 2 A959), 393—395. (Русский перевод: Хомский Н., Замет- Заметка о грамматиках непосредственных составляющих, Кибернетический сборник, вып. 5, ИЛ, 1962, 312—315.) 10. С п о т з к у N.. Оп Ше по1юп«Ки1е о! ^гаттаг», в сб. ^коЪзоп^. (Ее!.), 51гис1иге ос! 1ап§иа§е апс! Из таШетаИса! азрес1з, Ргос. 121п Зутроз. 1п Арр1. МаШ. РгоуЫепсе, Атег1сап МаШетаИса! 5ос1е1у, 1961; см. также К а I ъ *1., Р о с1 о г *1. (Еёз.), КеасИп^з т 1Ье РЫЬзо- рЬу о! Ьап^иа^е, Ые^ Уогк, РгепИсе-НаП, 1963. (Русский перевод: Хом- Хомский Н., О понятии «правило грамматики», в сб. «Новое в лингвисти- лингвистике», вып. 4, изд-во «Прогресс», 1965, 34—65). 11. СЬотзку N.. Соп1ех1-!гее ^гаттагз апс! ризЬоёо^п з1ога§е КЬЕ, диаг1. Рго§. Кер1. № 65, СатЪпс^е, Мазз., М. I. Т., МагсЬ, 1962. 12. С п о т з к у N.. ТЬе 1о§1са1 Ьаз1з !ог Нп§и15Нс Шеогу, Ргос. 1ХШ 1п1. Соп§. о! Ь1П§и1515, 1962; см. также К а I г *1., Р о с! о г *1. (Ес!з.), НеасИп^з 1П Ше РЬНозорЬу о! Ьап^иа^е, Ые\у Уогк, РгепИсе-НаП, 1963. (Русский перевод: Хомский Н., Логические основы лингвистической теории, в сб. «Новое в лингвистике», вып. 4, изд-во «Прогресс», 1965, 465—575.) 13. С Ь о ш з к у N.. М 1 1 1 е г О. А., Ртйе з1а1е 1ап§иа§ез, 1п[огтаИоп ста* Соп1го1, 1 A958), 91 —112. (Русский перевод: Хомский Н., Мил- Миллер Д., Языки с конечным числом состояний, Кибернетический сбор- сборник, вып. 4, ИЛ, 1962, 231—255.) 14. СйПк К., 5оте по1ез оп Ппйе з1а1е 1ап^иа§ез апс! еуегйз гергезеп1ес! Ьу Ппйе аи1ота1а из1П§ 1аЬе11ес! ^гарЬз, Сазорьз рго рШоъат тагетаИку (Рга^ие), 86 A961), 43—55. 15. С и г г у Н., 5оте 1о§1са1 азрес1з о! §гаттаНса1 з1гис1иге, в сб. ^акоЬ- зоп К. (Ее!.), 51гис1иге о! 1ап§иа§е апс! Из та1Ьета11са1 азрес1з, Ргос. 121п Зутроз. 1п Арр1. МаШ., РгоуЫепсе, Атег1сап МаШетаНса1 5о- С1е1у, 1961. (Русский перевод: К а р р и Г., Некоторые логические аспек- аспекты грамматической структуры, в сб. «Новое в лингвистике», вып. 4, изд-во «Прогресс», 1965, 97—116.)
228 Н. Хомский 16. С и г г у Н., Р е у 5 К.,СотЫпа1огу 1о§1С, Ат51егс1ат, ЫогШ-Но11апс1, 1958. 17. О а V 1 з М., Сотри1аЫШу апс! ипзо1уаЫШу, Ые\у Уогк, МсОга\у-НШ, 1958. 18. Е 1 в о п В., Р 1 с к е I I V. В., Ве^ттп^ тогрЬо1о§у-зуп1ах, Зиттег 1пзШи1е о! Ьт^тзИсз, 5ап1а Апа, СаШ., 1960. 19. Р 1 о у с! К. XV., Ма1Ьета1ка1 тс!ис1юп оп рЬгазе з1гис1иге ^гаттагз, 1п[огтаИоп апй Соп1го1, 4 A961), 353—358. 20. О 1 п з Ь и г § 5., К 1 с е Н. С, Тчуо ГатШез о! 1ап^иа§ез геЫес! 1о АШОЬ, 1. Аззос. СотриИп§. МасЫпегу, 10 A962), 350—371. 21. О 1 п з Ь и г § 5., К о з е О. Р., 5оте гесигз1Уе1у ипзо1уаЫе ргоЫетз 1П АЬСОЬ-Нке 1ап§иа&ез, ]. Аззос. СотриИп§ Маек., 10 A963), 29—47. 22. О 1 п 5 Ь и г § 5., К о $ е О. Р., ОрегаНопз шсЬ ргезегуе йеПпаЫШу т 1ап§иа§ез, 3'. Аззос. СотриНп§ Маек., 10 A963), 175—195. 23. О г е 1 Ь а с Ь 5., 11пс1ес1с1аЫШу о! Ше атЫ^иНу ргоЫет !ог т1П1та1 Нпеаг ^гаттагз, 1п]огтаНоп апк Соп1го1, 6 A963), 119—125. 24. О г о з 5 М., Оп Ше е^и^Vа1епсе о! тосЫз о! 1ап^иа§ез изес! т Ше !1е1с1§ о! тесЬап1са1 1гапз1аиоп апс! 1п!огта11оп ге1г1еуа1, ЛИтео^гарЬес!, Сат- Ьг1с1§е, М. I. Т., 1962. 25. Н а г г 1 з 2. 5., Ргот тогрЬете 1о иНегапсе, Ьап§иа§е, 22 A946), 161 — 183. 26. Нагг 15 2. 5., МеНюсЬ 1П з1гис1ига1 Нп§и1зисз, СЫса^о, 11ту. о! СЫ- са^о Ргезз, 1951. 27. Нагг 15 2. 5., Со-оссигепсе апс1 1гапз!огта11оп 1П Нп§и1зНс $1гис1иге, Ьап§иа§е, 33 A957), 283—340. (Русский перевод: X э р р и с 3., Совмест- Совместная встречаемость и трансформация в языковой структуре, в сб. «Новое в лингвистике», вып. II, 1962, 528—636.) 28. Н 1 2 Н., Соп^гаттаИсаШу, в сб. ] а с о Ь 5 о п К. (Ес1.), 51шс1иге о1 12Ш Зутроз. т Арр1. Ма1Ь., РгоУ1с1епсе, Атег1сап Ма1ЬетаИса1 5ос1е1у, 1961. 29. К а 1 2 I., Р о с! о г *1., ТЬе з1гис1иге о! а зетапИс 1Ьеогу (печатается в журнале Ьап§иаде. Перепечатано в сб. К а I г *1., Р о с! о г Л. (Ес15.), Кеас11п§5 т 1Ье РЫЬзорЬу о! Ьап^иа^е, Ые\у Уогк, РгепИсе-НаП, 1963). 30. К 1 еепе 5. С, Кергезеп1а1юп о! еуеп1з 1П пегуе пе1з апс! !1пИе аи!о- та1а, в сб. 5 Ь а п п о п С. Е., М с С а г I Ь у 3. (Ес1з.), Аи1ота1а 51и- с11ез, Рппсе1оп, Рг1псе1оп 11п1У. Ргезз. (Русский перевод: К л и н и С.К., Представление событий в нервных сетях и конечных автоматах, в сб. «Автоматы», ИЛ, 1956, 15—67.) 31. К б 1 е г Ш., ТЬе р1асе о! уа1ие т а \уог1с! о! Гас1, Nе^у Уогк, Ъ'мег'щЫ, 1938. 32. К у л а г и н а О. С, Об одном способе определения грамматических понятий на базе теории множеств, в сб. «Проблемы кибернетики», вып. 1, Физматгиз, 1958, 203—214. 33. Ь а ш Ь е к Л., ТЬе таШетаИсз о! зегйепсе з1гис1иге, Атег. Ма(к. Моп- (Шу, 65 A958), 154—170. (Русский перевод: Л а м бе к И., Математи- Математическое исследование структуры предложений, в сб. «Математическая лингвистика», изд-во «Мир», 1964, 47—68.) 34. Ь а т Ь е к Л., СопЫЪиИопз 1о а та1Ьета11са1 апа1уз15 о! 1Ье Еп&ШЬ уегЬ рЬгазе, /., Сапай1ап Ып^шзИс Аззос., 5 A959), 83—89. 35. Ь а т Ь е к 3., Оп 1Ье са1си1из о! зугйасИс 1урез, всбЛ а ко Ь зо п К. (Ее!.), 51гис1иге о! 1ап§иа^е апс! 11з та1Ьета11са1 азрес1з, Ргос. 121Ь 5утр. т Арр1. Ма1Ь., Ргоу1с1епсе, Атег1сап Ма1ЬетаИса1 5ос1е1у, 1961. 36. Ь а п с! \у е Ь е г Р. 5., ТЬгее Шеогетз оп рЬгазе з1гис1игез ^гаттагз 1уре 1, 1п}огтаИоп апа1 Соп1го1, 6 A963), 131—136.
Формальные свойства грамматик 229 37. Ьап^епс1реп Т., 51шс1ига1 йезспрИопз 1ог зегйепсез §епега{ес1 Ьу поп-зе1Г-етЪес1сНп§ сопзШиеп! ^гаттагз, ТЬез15, М. I. Т., 1961. 38. Ь а з Ь 1 е у К. 5., Ьеагшп^: I. Ыегуоиз тесЬатзтз о! 1еагпт§, в сб. Миг с Ь 1 50 п С. (Ес1.), ТЬе ГоипсЫюпз о! ехрептеп1а1 рзусЬо1о^у, Шогсез1ег, Маз., С1агк Утуег. Ргезз, 1929. 39. Ь а з Ь 1 е у К. 5., ТЬе ргоЫет о! зепа1 огс1ег т ЪеЬауюг, в сб. ^ е I- ! г е 5 з Ь. А. (Ее!.), СегеЬга1 тесЬашзтз т ЪеЬауюг, Ые^ Уогк, ШПеу, 1951. 40. М а I 1 е \у 5 О. Н., ШсЫза зугйах, ЛИтео^гарЬес!, СатЪпс1§е, М. 1.Т., 1962. 41. Ма Не^з О. Н, О1зсоп1тш1у апс! азутте1гу т рЬгазе з{гис1иге ^гаттагз, 1п[огтаИоп апй Согйго1, 6 A963), 137—146. (Русский пере- перевод: М э т ь ю з Д. Г., Разрывность и асимметрия в грамматиках непо- непосредственных составляющих, в сб. «Математическая лингвистика», изд-во «Мир», 1964, 150—159.) 42. М а I I е \у з О. Н., А по1е оп азутте1гу о! рЬгазе з1гис1иге ^гаттагз, 1п}огтаИоп апд, Согйго1, 7 A964), 360—365. 43. М 1 1 1 е г О. А., 5 е II г 1 с! § е 3. А., УегЬа1 соп1ех1 апс! 1Ье гесаП о! теап1п§1и1 та1епа1, Апгег. У. Рзуско1., 63 A950), 176—185. 44. М у Ъ. [ 1 1 <1., Ь1пеаг Ьоипс1ес1 аи1ота1а, ШАОО ТесЬтса1 по1е 60—165. Шп^Ы А1г Е)еуе1ортеп1 О1У151оп, Шг1§Ы-Раиег5оп, А1г Рогсе Вазе, ОЬю, 1960. 45. МсЫаи^Ь1оп Н., ТЬе 1Ьеогу о! аи1ота1а: а зигуеу, в сб. АН Р. Ь. (ЕA.), Ас1уапсез 1П сотри1егз, уо1. 2, Ые\у Уогк, Асас1ет1с Ргезз, 1961. 46. МсЫаи^Ь1оп Н., У а т а A а Н., Ке§и1аг ехргезз1опз апс! з1а1е ^гарЬз 1ог аи1ота1а, 1КЕ Тгапз. оп Е1ес1гоп1с Сопгригегз, ЕС-9 A960), 39—47. 47. N е \у е 1 1 А., 5 Ь а \у .1. С, 5 1 т о п Н. А., Керог1 оп а §епега1 ргоЬ- 1етзо1у1п§ рго^гат, в сб. 1п!огта1юп Ргосез51П§, Ргос. 1п1егпаНопа1 Соп1егепсе оп 1п1огтаИоп Ргосез51п§, иЫЕЗСО, Рапз, 1959. 48. О е I I 1 п ^ е г А., Аи1отаИс 5уп1асНс апаНз15 апс! Ше ризЬдо^п з1оге в сб. ] а к о Ь 5 о п К. (Ес1.), 51гис1иге о! Ьап^иа&е апс! Из таШета11са1 азрес1з, Ргос. 12Ш Зутроз. 1П Арр1. МаШ., Ргоу1с1епсе, Атег1сап МаШе- таИса1 5ос1е1у, 1961. 49. Р а г 1 к Ь Н., Ьап^иа^е-^епегаПп^ с1еу1сез, НЬЕ ^иа^^. Рго^г. Кер1., № 60, СатЬг1с1§е, Мазз., М. I. Т., 1961, 199—212. 50. Р о з I Е., А уапагй о! а гесигз1уе1у ипзо1уаЫе ргоЫет, Ви11. Лпгег. МаИг. 5ос, 52 A946), 264—268. 51. Р о 5 I а 1 Р., Оп Ше НтйаНопз о! соп1ех1-1гее рЬгазе з1гис1иге йезспр- Поп, КЬЕ Оиаг1. Рго§. Кер*., № 64, СатЬг1с1§е, Мазз., М. I. Т., 1962. 52. Р 6 5 I а 1 Р., СопзШиеп! апа1уз15, приложение к журналу 1п1. /. Апгег. ЫщаЫьсз (в печати). 53. К а Ь 1 п М., 5 с о I 1 Э., Ршйе аи1ота1а апс! Ше1г с!ес151оп ргоЫетз, 1ВМ ^. Кез. ^еVе^ор., 3 A959), 114—125. (Русский перевод: Рабин М. О., С к о т т Д., Конечные автоматы и задачи их разрешения, Кибер- Кибернетический сборник, вып. 4, ИЛ, 1962, 58—91.) 54. Н 1 1 с Ь 1 е К. Ш., С1аззе5 о! гесигз1уе 1ипсИоп5 о! ргесНс1аЫе сотр1е- хйу, Оос1ога1 сИззег^аНоп, Оер1. Ма1Ь., Рппсе1оп ип1у., 1960. 55. К о § е г 5 Н., Кесигз1уе 1исИоп апс! еНесНуе сотри!аЫШу, М1тео§га- рЬес!, рер1. Ма1Ь. М. I. Т., 1961. 56. 5 а г с! 1 п а 5 А. А., Р а Н е г 5 о п О. Ш., А песеззагу апс! зиШаегй соп- с!Шоп 1ог ип^^ие йеарЬегаЫШу о! сос!е<1 тезза^ез, 1КЕ СожепНоп Ке- согйу 8 A953), 104—108. (Русский перевод: СардинасА. А., Пат- т е р с о н Дж., Необходимое и достаточное условие однозначного раз- разложения закодированных сообщений, Кибернетический сборник, вып. 3, ИЛ, 1961, 93 — 102.)
230 Н. Хомский 57. 5 а и з з и г е Р. с!е, Соигз с!е Пп^шз^ие §епега1е, Рапз, 1916. (Русский перевод: де С о с с ю р Ф., Курс общей лингвистики, М., Соцэкгиз, 1933.) 58. 5 с Ь е 1 п Ь е г § 5., 5оте ргорегИез о! сопзШиегй з1гис1иге ^гаттагз, Неопубликованная заметка, 1960. 59. 5 с Ь е 1 п Ь е г § 5., Ыо1е оп 1Ье Воо1еап ргорегИез о! согйехПгее 1ап- ^иа&ез, 1п[огтаИоп апд, СоШго1у 3 A960), 372—375. 60. 5 с Ь и 1 2 е п Ь е г § е г М. Р., \3п ргоЫёте с!е 1а 1Ьёопе с1ез аи1ота1ез, 5ётта1ге ОиЪгеП-Р1зо1, Рапз, 1959. 61. 5сН1гепЬег§егМ. Р.,А гетагк оп ПпНе 1гапзс1исег5, 1п\огтаИоп апй Соп1го1, 4 A961), 185—196. 62. 5 с Ь и I 2 е п Ь е г § е г М. Р., Оп Ше йеНпШоп о! а ГатПу о! аи1ота1а, 1п\огтаИоп апй Соп1го1, 4 A961), 245—270. 63. ЗсЬй^гепЬег^егМ. Р., 5оте гетагкз оп Спотзку'з соп1ех1^гее 1ап§иа§ез, КЬЕ Риаг1. Рго§. Кер1. № 63, СатЬг1с1§е, Мазз., М. I. Т., 1961, 155—170. 64. 5 с Ъ. и 1 2 е п Ь е г § е г М. Р., Оп а ГатПу о! !огта1 ро^ег зег1ез, ЛИтео- ^гарЬес!, 1962. 65. 5 с п и { 2 е п Ь е г § е г М. Р., Сег1ат !атШез о! е1етеп!агу аи1ста1а апс! 1Ье1г с!ес151оп ргоЫетз, Ргос. Зутроз. оп МаШ. ТЬеогу Аи1ота1а, Уо1. XII, МК1 5утроз1а 5ег1ез, 1962. 66. ЗсНиепЬег^ег М. Р., Оп а 1пеогет оп Лип^еп, Ргос. Атег. МагН. 8ос, 13 A962), 885—890. 67. ЗсЬНгепЬег^егМ. Р., Оп соп1ех1-!гее 1ап^иа§ез апс! р аи*ота!а, КезеагсЬ рарег КС-793 о! 1ВМ Кез. ЬаЬ., Уогк1о^п Ые^ Уогк, 1962. 68. 5сНBепЬег^ег М. Р., р1пИе соипИп^ аи!ота1а, 1п[огтаИоп апй Сопгго1, 5 A962), 91 — 107. 69. 5 с Ь и I 2 е п Ь е г § е г М. Р., С Ь о т 8 к у N.. ТЬе а1^еЬга1с 1Ьеогу оГ соп1ех1-!гее 1ап^иа§ез, в сб. Сотри1ег рто^татт\щ апс! !огта1 зуз1етз, Атз1егс1ат, Ыог1Ь-Но11апс1, 1963. 70. 5 Ь а т 1 г Е., Оп зеяиегШа1 1ап^иа§ез, ТесЬ. Кер1. № 7, ОН1се о! Ыа- уа1 КезеагсЬ, 1п!огтаИоп 5уз1етз ВгапсЬ, 1961. 71. 5 Ь а т 1 г Е., А гетагк оп сНзсоуегу а^огНЬтз !ог ^гаттагз. 1п}огта- Поп апй Соп(го1, 5 A962), 246—251. 72. 5 Ь а п п о п С. Е., Ш е а V е г №., ТЬе та1Ьета11са1 1Ьеогу о! соттип1- саИоп, 11гЬапа, 11п1У. о! 11Ппо15 Ргезз, 1949. (Русский перевод: Матема- Математическая теория связи, в кн. Шеннон К., «Работы по теории инфор- информации и кибернетике», ИЛ, 1963, 243—332.) 73. 5 Ъ. е р Ъ. е г с! з о п Л. С, ТЬе гес!ис1юп о! 1^о-шау аи1огпа!а, 1ВМ ^. Кез. Беуе1ор.у 3 A959), 198—200. (Русский перевод: Шепердсон Дж. К-, Сведение двусторонних автоматов к односторонним автоматам, Кибернетический сборник, вып. 4, ИЛ, 1962, 92—98.) 74. 5 и з 2 к о К., ЗугйасИс 51гис1иге апс! зетаписа1 геГегепсе. 1, 81и(Иа Ьо&са, 8 A958), 213—244.- 75. Т о 1 т а п Е. С, Ригроз1уе ЬеЬауюг 1п ап1та1з апс! теп, Nе^у Уогк, Арр1е1оп-Сеп1игу-Сго!1з, 1932. 76. Ш е 1 1 з К., 1ттесПа1е сопзШиегйз, Ьап^иа^е, 23 A947), 81 — 117. 77 Шипс!ЬеПегЬ., Шипс!Ье11егА., 5оте 1о^1са1 сопсер1з 1ог зуп1ах, в сб. Ь о с к е Ш. N.. В о о I Ь А. В. (Ес!з.), МасЫпе 1гапз1а!юп о! 1ап§иа§ез, СатЬг1с!§е; ТесЬпоЬ^у Ргезз апс! ШПеу, 1955. 78. У а т а с! а Н., Соигйт^ Ьу а с1азз о! &пшт§ аи1ота1а, Оос1ога1 сЛззег- 1а1юп, 11п1уег. о! Реппзу1уап1а, РЫ1ас!е1рЬ1'а, 1960.
СОДЕРЖАНИЕ Математические вопросы Точные верхние границы длин минимальных экспериментов, определя- определяющих заключительное состояние, для двух классов последо- вательностных машин. Т. Н. Хиббард. Перевод А. А. Мучника 7 Разрешимость машинных отображений регулярных множеств в регу- регулярные множества. С. Гинзбург, Т. Н. Хиббард. Перевод В. Л. Мурского 24 О реализуемости множества целых чисел степенями вершин графа I. С. Л. Хакими. Перевод В. Я. Ветухновского 40 Динамическое программирование. С. Дрейфус. Перевод В. А. Евстигнеева 54 Оптимальное управление нелинейными процессами. Е. Ли, Л. Мар- Маркус. Перевод В. М. Яковлева и М. В. Яковлевой 86 Математическая лингвистика Формальные свойства грамматик.Я. Хомский. Перевод М. В. Ломковской 121
Кибернетический сборник НОВАЯ СЕРИЯ ВЫПУСК 2 Редактор Б. А. Кушнер Художник И. К. Сапожников Художественный редактор В. И. Шаповалов Технический редактор Л. М. Харьковская Сдано в производство 20/УН 1965 г. Под- Подписано к печати 18/III 1966 г. Бумага 60X90716=7,25 бум. л., 13,44 печ. л. Уч.-изд. л. 14.50. Изд. № 1/3465. Цена 1 р. 22 к. Зак. 563 ИЗДАТЕЛЬСТВО «МИР». Москва, 1-й Риж- Рижский пер., 2 Ярославский полиграфкомбинат «Главполи- графпрома» Комитета по печати .при Совете Министров СССР. Ярославль, ул. Свободы, 97.