Текст
                    В.Б. КУДРЯВЦЕВ
С.В. АЛЕШИН
А.С. ПОДКОЛЗИН
ВВЕДЕНИЕ
В ТЕОРИЮ
АВТОМАТОВ
МОСКВА ’’НАУКА”
ГЛАВНАЯ РЕДАКЦИЯ
ФИЗИКО-МАТЕМАТИЧЕСКОЙ ЛИТЕРАТУРЫ
19 8 5

ББК 22.18 К88 УДК 519.71 Кудрявцев В.Б., Алешин С.В., Подколзии А.С. Введение в теорию автоматов —М.: Наука. Гл. ред. физ.-мат. лит., 1985. - 320 с. Содержит изложение основ теории автоматов, представляющих собой одну из основных моделей управляющих систем. Достаточно широко представлены результаты по теории абстрактных и структурных автоматов, полученные отечественными и зарубежными авторами за последние 30 лет, т.е. за время с момента возникновения и последующего формирования теории автоматов. Для специалистов, работающих в области математической кибернетики и дискретной математики, а также для учащихся вузов, специализирующихся в этих областях; она будет полезна также инженерам, желающим углубить свои знания в кибернетике. Ил. 163. Библиогр. 87 назв. Рецензент доктор технических наук, профессор А.М. Богомолов 1202070000-158 053 (О!)^- 2°-85 ©Издательство ’’Наука”, Главная редакция физико-математической литературы,
ОГЛАВЛЕНИЕ Введение ............................................................... 5 Глава 1. Понятие автомата............................................... 8 § 1. Понятие конечного автомата................................. 8 —§ 2.-Обобщения понятия конечного автомата. . ................. -—31 Глава 2. Абстрактные автоматы. . ...................................... 39 § 1. Ограниченно-детерминированные функции.................. 39 § 2. Эквивалентность конечных автоматов .................... 44 § 3. г-неотличимость конечных автоматов.................... 50 § 4. Отличимость состояний конечных автоматов............... 57 § 5. Кратные эксперименты с конечными автоматами............ 63 § 6. Простые эксперименты с конечными автоматами............ 80 § 7. Конечные автоматы как акцепторы........................ 91 § 8. Конечные автоматы как сверхакцепторы.................... 100 § 9. Конечные автоматы как перечислители..................... 108 § 10. Взаимодействие конечных автоматов и конечные автоматы в ла- биринтах ....................................................... 116 § 11. Оценка числа автоматов приведенного вида. . . . ......... 130 § 12. Конечные автоматы как числовые акцепторы и преобразо- ватели ......................................................... 137 Глава 3. Структурные автоматы......................................... 151 § 1. Ограниченно-детерминированные функции многих перемен- ных 151 § 2. Канонические уравнения............................. 152 § 3. Операции над ограниченно-детерминированными функциями 155 § 4. Схемы. Структурный автомат......................... 161 § 5. Замыкание. Выразимость. Задача о полноте........... 164 § 6. Конечные А--полные системы..............'................ 167 § 7. S-полнота.......................................... 174 § 8. А-замыкание . ........................................... 179 § 9. Предполные классы.................................. 183 § 10. Алгоритмическая неразрешимость задач о К- и Л-полноте . 190 § 11. Разрешимый случай задачи о полноте. Линейные автоматы . 195 § 12. Ограниченно-детерминированные функции одной переменной 224 § 13. Группа AS2............................................. 229 1* 3
§ 14. Гомоморфизм автоматов. Моделирование.................... 236 §15. Задача о выразимости для детерминированных функций...... 247 Глава 4. Однородные структуры........................................ 253 § 1. Определения и примеры................................... 253 § 2. Графы переходов однородных структур..................... 265 § 3. Анализ поведений однородных структур.................... 274 § 4. 'Моделирование в однородных структурах.................. 295 Список литературы.................................................... 311 Предметный указатель............................................... 314 Именной указатель................................................... 317 Список обозначений.................................................. 318
ВВЕДЕНИЕ Теория автоматов представляет собой раздел теории управляющих систем [64], изучающий математические модели преобразователей дискрет- ной информации, называемые автоматами. С определенной точки зрения такими преобразователями являются как реальные устройства (вычисли- тельные машины, автоматы, живые организмы и т.п.), так и абстрактные системы (математические машины, аксиоматические теории и т.д.). Ха- рактерная особенность этих преобразователей — дискретность функциони- рования и конечность областей значений параметров, описывающих их. Теория автоматов возникла в середине двадцатого столетия в связи с изу- чением свойств конечных автоматов. Со временем предмет ее исследований расширился также за счет рассмотрения различных обобщений конечных автоматов. Конечный автомат можно охарактеризовать как устройство, имеющее входной и выходной каналы и находящееся в каждый из дискрет- ных моментов времени, называемых тактовыми моментами, в одном из конечного числа состояний. По входному каналу в каждый тактовый мо- мент в устройство поступают входные сигналы (из некоторого конечного множества сигналов); указываются закон изменения состояний к следую- щему тактовому моменту в зависимости от входного сигнала и состояния устройства в предыдущий момент, а также значение выходного сигнала (из некоторого конечного множества сигналов) в текущий тактовый момент как функции состояния и входного сигнала в тот же момент. Существуют различные подходы к определению понятия конечного автомата, которые могут быть разбиты на группы макроподхода и микроподхода. При мак- роподходе интересуются внешним поведением устройства, тем, как оно осуществляет переработку входной информации в выходную информацию и в последовательность состояний, отвлекаясь от внутреннего его строения. На этом пути приходят к понятию абстрактного конечного автомата. Тем самым абстрактный конечный автомат может быть задан с помощью набора отображений, описывающих его ’’внешнее” функционирование. При микро- подходе учитывается структура устройства, функционирование и связь между собой его частей. На этом пути приходят к понятию структурного конечного автомата, называемого также автоматной схемой или логичес- кой сетью. Структурный конечный автомат задается конечным множеством абстрактных автоматов, конечной схемой их соединения и указанием влия- ния частей схемы друг на друга. Понятия конечного абстрактного и конеч- ного структурного автоматов можно считать составляющими понятие ко- нечного автомата. Обобщения конечного автомата получаются путем обобщения понятий конечных абстрактного и структурного автоматов. 5
Абстрактный автомат получается в результате рассмотрения произволь- ных (не обязательно конечных) множеств входных и выходных сигналов, множества состояний, а также при расширении понятия зависимости состоя- ния и выходного сигнала от входного сигнала и состояния. Структурный автомат получается при рассмотрении произвольных множеств автоматов и схем их соединения. В соответствии с двумя подходами к понятию автомата вся теория авто- матов может быть разделена на теорию абстрактных автоматов и теорию структурных автоматов. С автоматами связывают различные отношения между входной и выходной информацией и состояниями, которые назы- ваются поведениями автоматов. С изучением этих поведений и связана основная проблематика теории автоматов. Можно выделить несколько на- иболее важных видов поведения, которые удобно охарактеризовать приме- нительно к модели абстрактного автомата и изучение которых тем самым составит определенное содержание теории абстрактных автоматов. Это по- ведения автоматов как преобразователей и акцепторов, а также некоторые их модификации. При изучении автоматов как преобразователей интересу- ются отображениями последовательностей входных сигналов в множество последовательностей выходных сигналов, осуществляемыми автома- тами. При изучении автоматов как акцепторов интересуются, какие мно- жества конечных последовательностей входных сигналов можно отличать друг от друга с помощью выходных сигналов автоматов. Основным содер- жанием теории структурных автоматов можно считать изучение свойств отображений, реализуемых автоматами, композиций автоматов относитель- но заданного класса операций, а также алгебр автоматов. К числу важней- ших здесь могут быть отнесены задачи анализа и синтеза автоматных схем, т.е. описание свойств отображений по автоматным схемам и построение автоматных схем по отображениям соответственно; задачи о выразимости и сложности представления одних автоматов через другие с помощью раз- личных операций и др. В целом проблематика. теории автоматов имеет много общего с теорией управляющих систем, хотя, безусловно, имеет свою специфику. Теория автоматов имеет широкий круг применений как внутри мате- матики в различных ее областях (в алгебре, математической логике и др.), так и в решении практических задач (в анализе и синтезе ЭВМ, в распоз- навании образов и т.п.). Понятие автомата может служить модельным объектом в самых разнообразных задачах, благодаря чему возможно при- менение теории автоматов в различных научных и прикладных исследо- ваниях. Предлагаемая книга содержит достаточно обширный материал по теории автоматов и состоит из четырех глав. В первой главе вводится понятие авто- мата, вторая глава посвящена вопросам теории абстрактных автоматов, а- третья — вопросам теории структурных автоматов. В четвертой главе изучаются однородные структуры — одно из важнейших обобщений струк- турного конечного автомата. Рассмотрение этой модели ведется с позиций теории абстрактных и структурных автоматов. Однородная структура пред- ставляет собой бесконечную схему, построенную из копий одного и того же конечного автомата и такую, что правила соединения входов произволь- ного автомата с выходами других автоматов в этой схеме везде одинаковы 6
(однородность строения). Эта модель достаточно универсальна и играет важную роль в теории и в приложениях. В книгу вошли с достаточной полнотой основные результаты по теории конечных автоматов и некоторых их ближайших обобщений, полученные отечественными и зарубежными авторами за последние тридцать лет, т.е. за время возникновения и развития теории автоматов. Структура изложе- ния, а также общая точка зрения на теорию автоматов заимствованы из книг [33, 34] и статей из [39]. При написании книги в значительной мере использовался многолетний опыт чтения авторами специальных курсов по теории автоматов на механико-математическом факультете МГУ им. М.В. Ломоносова.
ГЛАВА 1 ПОНЯТИЕ АВТОМАТА § 1. ПОНЯТИЕ КОНЕЧНОГО АВТОМАТА Многие реальные устройства и процессы допускают, наряду с описанием их непрерывными моделями (например, системами дифференциальных уравнений), также построение дискретных моделей, воспроизводящих основные качественные характеристики этих устройств и процессов и логику их изменения. Зачастую, в силу ярко выраженного ’’переключатель- ного” характера некоторых процессов, дискретные модели более адекват- но описывают суть происходящих изменений, нежели модели непрерыв- ные. С другой стороны, моделирование на ЭВМ процессов с плавно изме- няющимися параметрами также, по существу, является дискретным, так как числа представляются с ограниченным количеством разрядов и в тече- ние одного такта не изменяются. Характерной особенностью дискретных моделей является дискрет- ность ’’времени”, в котором происходит функционирование. При этом выделяются некоторые моменты Tj, т2 > гз, • • • реального времени, в ко- торые рассматривается состояние реального устройства либо процесса, и предполагается, что последовательность заданных тем или иным образом состояний устройства и внешних воздействий на него в моменты tIs т2, т3,.. достаточно полно описывает поведение устройства. Выбор моментов ть т2, т3, ... может происходить из различных соображений: либо это последовательность с постоянным шагом Дт, т, = + Дт(г — 1), i = 1, 2, ..., либо последовательность моментов, соответствующих в неко- тором смысле ’’устойчивым” состояниям устройства, и тогда интервалы между последовательными моментами, вообще говоря, различны, либо моменты Ti, т2, т3, ... соответствуют появлению некоторых внешних со- бытий и т.п. Связанные с моментом г, события при этом могут фактически относиться к временному интервалу [г,-, ту+1) либо некоторой другой окрестности момента т,. При описании поведения дискретной модели существенными являются не сами значения ту, т2, т3, ..., а лишь номера 1, 2,3 ... этих моментов. Второй важной особенностью дискретных моделей является то, что для задания текущего состояния модели используются не количественные, а качественные характеристики. При этом во многих случаях оказывается возможным считать, что состояния модели суть элементы некоторого ко- нечного множества (быть может, весьма большого). Изменения состояния дискретной модели от момента к моменту могут иметь как детерминированный характер (очередное состояние однозначно определяется заданием состояния и внешнего воздействия в предыдущий момент), так и недетерминированный. Последнее означает, что знание со- стояния модели в момент г,- и внешних воздействий на нее в тот же момент 8
еще не позволяет однозначно определить состояние модели к моменту т,-+1, а лишь сужает некоторым образом класс ее возможных состояний. Проиллюстрируем сказанное на ряде простых примеров. Рассмотрим сначала модель телефонного аппарата, способного ’’запоми- нать” некоторый номер и посылать в телефонную сеть соответствующую этому номеру последовательность импульсов при нажатии специальной кнопки. Во избежание громоздкости, ограничимся при этом рассмотрением процесса вызова абонента. Состояние аппарата в каждый момент вре- мени т определяется указанием следующих двух независимых событий: а) ’’помнит” ли аппарат какой-либо номер, и если помнит, то какой именно; б) лежит ли телефонная трубка на аппарате или снята с него. Это состояние может быть обозначено, таким образом, парой (N, а), где N— номер, хранимый в ’’памяти” аппарата (если номер в памяти не хра- нится, то полагаем N = 0), а. = 1, если трубка лежит на аппарате, и а = 0 в противном случав. Для простоты будем считать, что телефонные номера представляют собой натуральные числа от 1 до п. Тогда состояниями рас- сматриваемой модели будут всевозможные пары вида (N, а), где N £ £ {0, 1, ..., п}, а £ {0, 1 }. Внешние воздействия на аппарат разделяем на следующие типы: а) снятие либо опускание телефонной трубки; б) нажатие кнопки набора номера, хранимого в памяти; в) набор посредством номеронабирателя некоторого номера N £ £{1,...,и}; г) нажатие кнопки, ’’стирающей” из памяти аппарата информацию о телефонном номере; д) отсутствие внешних воздействий. Для перечисленных внешних воздействий вводим следующие обозначе- ния: То — трубка снимается, Т\ - трубка опускается, К - нажата кнопка набора номера N, 7V£ {1, ..., л}, — набор телефонного номераN, С — на- жата кнопка ’’стирания” информации, Л — нет внешних воздействий. Счи- таем, что в каждый из выделяемых тактовых моментов Tj, т2, т3, . .. наблюдается ровно одно из перечисленных воздействий, относящихся к интервалу [tz-, т,+1), i = 1,2,... В качестве воздействий телефонного аппарата на внешнюю среду рас- сматриваем последовательности импульсов, поступающие в телефонную сеть при наборе номера; эти воздействия обозначаем 0, 1, . .., п, где 0 обозначает отсутствие импульсов, al...>i последовательности импуль- сов, соответствующих телефонным номерам 1,..., п. Перейдем к описанию функционирования модели. Предположим, что в некоторый момент времени t (t = 1, 2, 3, ... ; по существу, t здесь пред- ставляет собой номер тактового момента т{) модель имеет состояние (N, а), причем внешнее воздействие на модель (будем называть такие воздействия входными сигналами модели) в тот же момент времени есть v, v £ {То, 7\, К, 1,2, ... ,п, С, Л}. Для описания того, в каком состоянии модель оказывается к t + 1-му моменту времени, рассмотрим следующие случаи: 1) v = То. Если а = 1, то модель переходит в состояние (N, 0). Если же а = 0, то полагаем, что состояние модели не изменяется. 9
• 2) v= 7\. Если a = 0, то модель переходит в состояние (N, 1), в против- ном случае состояние модели не изменяется. 3) v = К. В этом случае номер, хранимый в памяти аппарата, остается за- писанным в ней, так что состояние модели к следующему моменту времени не изменяется. 4) v = i, i G {1, 2, ..., п}. Если N = 0, а = 0, т.е. трубка снята и память аппарата не хранит какого-либо номера, то к моменту t + 1 номер i ока- зывается записанным в памяти, и новое состояние модели есть (г, 0). Если N =£ 0 и а = 0 (либо a = 1), то состояние модели в момент t + 1 оста- ется прежним, равным (N, а). 5) v = С. В этом случае аппарат ’’забывает” номер N; модель переходит к моменту t + 1 в состояние (0, а). 6) v = Л. В этом случае состояние модели не изменяется. Аналогичным образом, перечисляя возможные значения и, определим воздействие w модели на внешнюю среду в момент времени t (будем называть такие воздействия выходными сигналами модели; появление выходного сигнала наблюдается в промежутке между моментами rt и 77+1 реального времени и связывается в модели с моментом t дискретного времени): 1) и G { То, Л, С, Л}. В этих случаях последовательность импульсов, соответствующая номеру абонента, в телефонную сеть не посылается, так что полагаем w = 0. 2) v = К. Пусть сначала a = 0. В этом случае происходит посылка импуль- сов, соответствующих номеру N при 0, и наблюдается отсутствие им- пульсов при N = 0. Поэтому полагаем w = N. Если же a = 1, то импульсы отсутствуют и w = 0. 3) v = i, 1 6{ 1,..., л}. Как и в предыдущем случае, при а = 1 полагаем w = 0. Если а = 0, то w = i. На этом описание модели завершается. Приведенное описание модели можно сделать более наглядным, если построить диаграмму, на которой указать ’’переходы” модели из одного состояния в другое под действием различных входных сигналов. Пример диаграммы такого типа приведен на рис. 1.1; для простоты здесь рассмотрен случай и = 2. На pi с. 1.1 каждо- му состоянию (N, а) модели соответствует отдельный кружок, внутри которого изображена пара (N, а). Если модель под действием входного сигнала v переходит к следующему моменту времени в состояние (N', а'), причем выходной сигнал, соответствующий этому переходу, есть w, то от кружка с парой (N~, а) проводится стрелка к кружку с парой (Л^, а'). Этой стрелке приписывается пара (и, w). Если несколько различных стре- лок ведут от кружка к одному и тому же кружку, то эти стрелки объеди- няются в одну стрелку, а соответствующие пары (Vj, Wj), ..., (vk, wk), приписанные отождествленным стрелкам, записываются подряд. Исполь- зуя диаграмму, изображенную на рис. 1.1, нетрудно проследить, что под действием последовательности входных сигналов То, 1, С, 2, К, A.,Tt,K модель переходит из состояния (0,1) в состояние (2, 1), причем возникает последовательность 0,1,0, 2,2,0,0, 0 выходных сигналов. Дискретная модель с равноотстоящими друг от друга последователь- ными моментами т( возникает, например, при описании работы электрон- ных часов со звуковым сигналом. Состояние таких часов может быть опи- 10
Рис. 1.1 сано парой (в, в i), где в — номер текущего момента, 0 G {0,1, 2,..., и — 1} при некотором п, в i - номер момента включения сигнала, 0( G G {0,1,2,... ,и - 1). Входными сигналами модели служат элементы множества {О, — 1, Л}, причем Л интерпретируется как отсутствие каких-ли- бо внешних воздействий, сигнал i, i G { 0, 1, ..., п — 1}, — как установка нового момента i включения звукового сигнала. Выходными сигналами служат пары (0, а), где в G {0, 1, ..., и - 1} - возникающий на цифровом табло номер момента, а = 0 при отсутствии зву- кового сигнала и а = 1 при его наличии. Если в некоторый момент t модель имеет состояние (0, 0j), то состояние ее в момент t + 1 есть (0 + 1 (modл), в'), где в' = в! при равном нулю входном сигнале v и в' = v в противном случае. Выходной сигнал модели в момент t равен (0, а), где а = = 0 при 0 ¥= 0! и а = 1 при 0 = 0 х. На рис.4.2 приведена диаграмма модели, соответствующая случаю л = 2. Уже в случае л = 4 диаграмма модели оказы- вается весьма сложной; поэтому описанный выше способ задания дискрет- ных моделей посредством диаграмм применяется, как правило, лишь для сравнительно простых устройств, имеющих небольшое число состояний. Для сложных устройств более эффективным оказывается указание некото- рой схемы, построенной из ’’элементарных” дискретных моделей (которые в свою очередь могут задаваться схемами либо диаграммами). В качестве примера рассмотрим схему, изображенную на рис. 1.3. Схема состоит из элементов, изображенных на рис. 1.33. Первые три элемента на этом рисун- ке суть функциональные элементы ’’мгновенного” действия, вычисляющие соответственно отрицание, дизъюнкцию и конъюнкцию. Последний элемент на рис. 1.33 представляет собой так называемую задержку. В момент t = 1 значение ее выхода равно некоторой двоичной величине о, oG {0,1}. В мо- мент t > 1 значение выхода задержки равно значению ее входа в момент r ~ 1 • На входы схемы, изображенной на рис. 1.3, поступают двоичные по- следовательности а (1), а (2), а (3), ... и b (1), b (2), b (3),..., на ее выхо- де появляется последовательность с(1), с (2), с(3)...Легко проверить, что схема реализует обычную процедуру сложения двоичных чисел 11
Рис. 1.2 a(ri)a(n - 1) ... а(1) иЬ(п)Ь(п - 1) ... Ь(1): еслиа(и + 1) = b(n + 1) = = q (1) =? 0, то с(п + 1) с(п) ... с (1) представляет собой сумму указан- ных чисел.. Под состоянием схемы естественно понимать функцию, сопоставляющую каждому элементу схемы некоторое ее состояние. Если элементы схемы некоторым образом занумерованы, то такую функцию можно задавать в виде набора состояний отдельных элементов. В нашем примере состояний функциональных элементов предполагаются постоянными (что соответ- ствует отсутствию памяти у этих элементов); состояние элемента задерж- ки можно отождествить со значением его выхода. Поэтому, опуская не изменяющиеся состояния функциональных элементов, описываем текущее состояние схемы единственным двоичным значением — выходным сигна- лом q(t) элемента задержки. Если известны состояния всех элементов схе- мы, а также входные сигналы, поступающие на нее в тот же момент, то оп- ределяются последовательно выходные сигналы элементов схемы и новые состояния этих элементов. Для рассматриваемой схемы имеем q(t+ l) = a(f)-b(t) \l a(t)q(t) \!b(t)q(t), (1) c(t) = a(t) + b(t) + q(t) (mod 2). В рассмотренных примерах наметились два различных подхода к изуче- нию работы реальных устройств. В первых двух примерах мы интересова- лись лишь функциональной взаимосвязью входных и выходных последо- вательностей сигналов, не детализируя структуру устройства. В последнем же примере устройство представлялось в виде некоторой ’’схемы” из от- дельных простых элементов, и описание функционирования устройства возникало как следствие заданной его структуры. Первый подход при- водит к рассмотрению модели, называемой далее конечным абстрактным автоматом, второй подход — к модели, называемой конечным структур- 12
ным автоматом. Модель абстрактного автомата может быть описана сле- дующим образом. Модель имеет конечное множество Q = { qi, q2......qn} ’’внутренних” состояний, конечное множество А = {at... am } возможных входных сигналов и конечное множество В = {61 ... bp } возможных вы- ходных сигналов. Элементы множеств А и В называются соответственно входными и выходными символами модели. Время, в котором ’’работает” модель, предполагается дискретным; последовательные моменты времени обозначаются своими номерами 1, 2, 3, ... (рис. 1.4). Если известны со- стояние <?(?) модели в момент времени t, а также входной сигнал <z(t), М 4(f) i tfCtj Рис. 1.4 Рис. 1.5 поступивший извне (как говорят, поступивший ”на вход” модели) в тот же момент t, то однозначно определяются состояние q(t + 1) модели в мо- мент г + 1 и выходной сигнал b(t), появившийся ”на выходе” модели в момент t. Иными словами, существуют такие функции и 0, что q(J + 1) = - b(t) = ^(q(t), a(t)). При задании множеств A, Q, В и функций <р, 0 оказывается возможным шаг за шагом ’’прослеживать” изменения, происходящие в модели под действием последовательностей входных сигналов. Пусть <?(1) - исходное состояние модели и а(1),а(2),... ..., a(s) — последовательность входных сигналов. Тогда состояние модели в момент 2 равно tp(q(l),а(1)) =<7(2), состояние модели в момент 3 равно <p(q(2), а(2)) = q(3) и т.д. Последнее состояние, которое возможно опре- делить такой процедурой, есть состояние q(s + 1) модели в момент s + 1, q(s + 1) = tp(q(s), a(s)). Последовательность 6(1), 6(2), ..., 6(s) выход- ных сигналов модели в моменты 1,2, ... ,s определяется теперь следую- щим образом: 6(1)= 0(<?(1),а(1)),... ,6(SW(<z(S),a(s)). Таким образом, модель полностью описывается множествами А, О. В и функциями <р, 0. Схематически модель изображается так, как указано на рис. 1.4. Если исходное состояние <?(1) = q модели М раз и навсегда за- фиксировано, то получаем модель Mq инициального абстрактного конеч- ного автомата. Если входные воздействия поступают на рассматриваемое устройство по нескольким различным каналам и информация на выходе устройства ’’считывается” также по нескольким каналам, то входной и выходной ал- фавиты А и В в модели М удобно представлять в виде декартова произве- дения нескольких алфавитов, соответствующих каждый одному из ука- занных каналов: А = А! X ... X APi, B = Bl X ... X ВР1. В этом случае мо- дель изображается так, как указано на рис. 1.5; говорим, что модель име- ет Pj входов и р2 выходов. 13
Модель структурного автомата возникает при рассмотрении схем, пост- роенных из ’’элементов” вида, изображенного на рис. 1.5; каждый такой элемент представляет собой некоторый абстрактный конечный автомат. Различные автоматы из рассматриваемого набора ’’элементов” (этот набор варьируется в зависимости от задач) могут иметь различное количество входов и выходов. При построении схем соблюдается условие отсутствия циклов ’’мгновенной зависимости”, т.е. циклов вида, указанного на рис. 1.6, у которых каждое значение a, + i(O существенно зависит от значения at (t), а значение ^(г) существенно зависит от значения ап(t). Примерный вид Р и с. 1.6 Ри с. 1.7 схемы такого типа указан на рис. 1.7, где значение а2(0 предполагается не зависящим от ^(т), а3(т), а зависящим только от состояния автомата Мх в момент г, т.е. от (г). Схема S из ’’элементарных” абстрактных конечных автоматов сама опре- деляет некоторую модель Af(S) вида, указанного на рис. 1.5. ’’Внутренни- ми состояниями” этой модели являются наборы ’’внутренних состояний” элементов схемы; входными символами — наборы символов, подаваемых на входы схемы; выходными символами — наборы символов, возникаю- щих на выходах схемы. Схема S вместе с моделью M(S), т.е. пара (S, M(S)), и является неформальной трактовкой понятия структурно- го конечного автомата, а пара (S, M^-(S)), где q — некоторое состояние модели М(S), выделенное в качестве начального, — неформальной трактов- кой понятия инициального структурного конечного автомата. Перейдем к формулировке точных определений, связанных с понятием абстрактного конечного автомата. Аналогичные определения, связанные с понятием структурного конечного автомата, приводятся в главе 3. Абстрактным конечным автоматом называется набор V = (A, Q, В, ф), где A, Q, В — конечные множества, <р — функция, определенная на множест- ве Q X А и принимающая значения из б, ф — функция, определенная на множестве Q X А и принимающая значения из В. Множества A, Q, В назы- ваются соответственно входным алфавитом, алфавитом состояний и выход- 14
ним алфавитом автомата V. Функция <р называется функцией переходов, а функция ф — функцией выходов автомата V. В случае, когда функция ф(х, У) фиктивно зависит от второго аргумента, автомат V называется аб- страктным конечным автоматом Мура. Ниже вместо термина ’’абстракт- ный конечный автомат” мы иногда будем использовать термин ’’автомат”. Если в качестве входного и выходного алфавитов, а также алфавита состоя- ния автомата взяты декартовы произведения A i ХЛ2 X ... X Ar , В^У, X X ... X5U, Q, Х& X.. • X Qs соответственно, то функции переходов и выходов автомата становятся вектор-функциями , <Рг> • > V’j) и ф ~ (01,02, • • •, Фц); в этом случае говорят, что автомат имеет г входов и v выходов. Алфавиты Ait А2, ..., Аг и В2, ..., Bv называют соот- ветственно входными и выходными алфавитами автомата, а алфавиты Qi,Q2,... , Qs — алфавитами состояний. Перечислим основные способы задания абстрактных конечных автома- тов. Конечные множества A, Q, В можно задавать непосредственным пере- числением их элементов^ функции и ф — при помощи прямоугольных таблиц с двумя входами. Вид таких таблиц указан на рис. 1.8 и 1.9. Каждая строка таблицы, определяющей либо ф, взаимно однозначно сопоставле- на некоторому символу at алфавита А, А = {ль ..., ат }. Каждый столбец таблицы сопоставлен взаимно однозначно символу алфавита Q\ Q = = {qx, ... ,qn}. Определяющая функцию таблица на пересечении столбца, соответствующего состоянию qt, и строки, соответствующей символу aj, со- держит символ <р(сц, aj ). Таблица для ф на пересечении аналогичных столб- ца и строки содержит символ Ф^д^а]). В некоторых случаях функции и ф задаются одной таблицей, у которой на пересечении строки, соответ- ствующей а/, и столбца, соответствующего qt, расположена пара 0(«<»«/)) •’ Другим способом задания абстрактных автоматов являются диаграммы Мура", примеры диаграмм такого вида уже были рассмотрены выше (рис. 1.1 и 1.2). Для построения диаграмм Мура на плоскости разме- щаются п кругов и внутри каждого круга пишется символ q{ алфа- вита Q = {<7i, ..., qn} состояний автомата К; внутри различных кругов пишутся различные символы. Далее рассматриваются всевозможные пары (д{, aj), где q( G Q, a, G А, А = {а^, ..., ат) - входной алфавит авто- 41 Чг-.- 4/ я, а2 vCaj, aj) 41 4j • • • 4/ Ф (Яря,) Рис. 1.8 Рис. 1.9 15
мата V. Для каждой такой пары от круга, в котором записан символ q(, проводится стрелка к кругу, в котором записан символ а,-). Этой стрелке приписывается пара (а/, ф(сц, а/)). Полученное в результате изображение и называется диаграммой Мура автомата V. Легко видеть, что из каждого круга диаграммы выходит ровно т стрелок. На рис. 1.10 показано, как примерно может выглядеть фрагмент диаграммы Мура. В случае, когда функция 0 зависит от второй переменной фиктивным образом (т.е. V — автомат Мура), вторые элементы пар, приписанных Оз- “1}) Рис. 1.10 Рис. 1.11 стрелкам, выходящим из одного и того же круга диаграммы Мура, одина- ковы. Поэтому можно приписывать стрелкам только первые элементы указанных пар, а второй элемент (символ алфавита В) записывать внутри круга, из которого выходят стрелки. Примерный вид фрагмента такой диаграммы (также называемой диаграммой Мура) показан на рис. 1.11. Иногда для диаграмм последнего типа допускается указание внутри круга лишь соответствующего символа алфавита В‘, используется также упро- щенное изображение диаграмм Мура (любого из двух типов), при котором несколько ’’параллельных” стрелок изображено одной стрелкой. Наконец, упомянем еще об одном варианте диаграммы Мура. Этот вариант возни- кает, когда стрелке, ведущей от круга с символом fy, приписывается толь- ко символ входного алфавита (стрелка по-прежнему ведет к кругу с символом tp(qt, а/)), а функция >jj(qt, х) = ф^Дх) записывается внутри круга с символом qt. Наконец, для задания абстрактных автоматов можно использовать раз- личные операции, выражающие одни автоматы через другие. В качестве примера такой операции рассмотрим сумму V + W автоматов V = = (A, Q, В, <р, ф) nW = (A, Q', В,1р',ф'), где Q Г) Q1 = ф. Полагаем V + W = = (A, Q UQ', В, <р", ф"), где a) = >p(q, a), ф"^, а) = ф(с[, а) при qGQ, a GA и ip"(q,a) = tp(q,d), ф"(q, а) = ф'(q, а) при qGQ', a GA. В качестве примера абстрактного конечного автомата приведем так на- зываемую задержку V = ({аь а2}, {<h, Цг), {Ьх, Ь2}, <р, ф), где и ф определены с помощью таблицы, изображенной на рис. 1.12. Задержка является автоматом Мура, и соответствующая ей диаграмма приведена на рис, 1.13. 16
Введем ряд используемых в дальнейшем понятий и обозначений. Вход- ными словами автомата V, V = (A, Q, В, <р, ф), называем произвольные конечные последовательности символов алфавита А. Для удобства рас- сматриваем при этом также пустое слово, не имеющее ни одного символа алфавита А и обозначаемое Л. Выходными словами автомата V называем конечные последовательности символов алфавита В, словами состояний — конечные последовательности символов алфавита Q (в обоих случаях до- пускается и пустое слово Л). Введем ряд общих понятий, связанных со сло- вами. Пусть С — некоторое конечное множество. Если у = с(1) ... с(п) — конечная последовательность символов с (1),... ,с(л) алфавита С, то гово- рим, что у есть слово в алфавите С. Число п называем длиной слова у и обозначаем | у | . Длина пустого слова равна 0. Если у и 8 - слова, причем 7 = 55z для некоторого слова 8', то говорим, что 8 — начало слова у, 8' — конец слова 7. Если у =# 8, то начало 8 слова 7 называется собственным началом; если 7 =# 8', то конец 8' слова 7 называется собственным концом. Множество всех слов в алфавите С обозначаем С ; множество всех слов в этом алфавите, имеющих длину I - С1. Начало слова у, имеющего дли- ну /, обозначаем 7]. При этом 7] = Л. .1 о Бесконечные последовательности символов алфавита С называем сверх- словами в алфавите С; множество всех сверхслов в алфавите С обознача- ем С°°. Сверхслова в алфавитах A, Q, В автомата V = (A, Q, В, <р, ф) назы- ваем соответственно входными сверхсловами, сверхсловами состояний и выходными сверхсловами автомата V. Число элементов конечного множества М обозначаем далее |Af | (обыч- но из контекста ясно, идет ли речь о множестве М либо о слове М). Функции переходов и выходов автомата V = (A, Q, В, <р, ф) оказывает- ся удобным распространить на множество Q ХА* (сохранив за ними те же Обозначения). Именно, полагаем по определению <р(<7, A) = q, <p(q, аа) = <p(p(q, а), а), где q &Q, а. €Л*, а GA Диалогично, ф(ч, Л) = Л, ф(<7, аа) = ф(<р(<?, а), а), где q - произвольное достояние автомата V, а&А* и а&А. а а 41 чг а1 (<?1- *1) аг 81) (<?з- Ьг) Рис. 1.12 Рис. 1.13 Возвращаясь к содержательной модели абстрактного автомата, заметим, что р (q, а) - состояние, в котором модель, имевшая исходное состоя- ние q, оказывается после поступления на вход последовательности а; Ф(Ч, а) — выходной символ, появляющийся в указанной ситуации на выхо- де модели при подаче на ее вход последнего символа слова а. Для обозначе- ния последовательности состояний и последовательности выходных симво- лов модели в процессе ’’перераЬбтци^'^йурр^-уддршу также следующие 2. В.Б. Кудрявцев I пединститут! I 17
функции f и 0: p(q, a) = p(q, a])p(q, a]) a), о i ф(р, a)= &(q, а])Ф(ц, a]) - Ф(д, a)- 1 2 Здесь q 6 Q, a EA’. Функционирование конечного абстрактного автомата V, V = = (A, Q, В, ч>, ф), есть тернарное отношение F = {(a, <p(q, а), а)) | a G Л*, Фе Q}- Это отношение связывает входные слова автома- та с соответствующими словами состояний и выходными словами; оно яв- ляется основной характеристикой конечного автомата. Пусть V - (A, Q, В, <р, ф) - конечный абстрактный автомат. Для каж- дого состояния q автомата V можно рассмотреть набор (A, Q, В, ф, ф-, q), определяющий автомат V с выделенным начальным состоянием q. Такие наборы (A, Q, В, <р, ф, q) называются инициальными конечными абст- рактными автоматами-, для них используется также обозначение Vq. Функ- циониро'ваниеинициального автомата Vq есть тернарное отношение Fq = ={ (a,<p(q, а), ф(д~а)) | a64’}- На диаграммах Мура начальноё состояние инициальных автоматов обо- значается звездочкой, располагаемой рядом с соответствующим этому со- стоянию кругом. Каждый инициальный конечный автомат Vq, Vq = (Л, Q, В, ч>, фл), определяет некоторую функцию ft А*~>В* f(a) = ф(д, а). Функции такого вида называем конечно-автоматными функциями. Конеч- ный автомат Ven состояниями задает п инициальных автоматов, и наобо- рот, задание этих инициальных автоматов определяет автомат V. Для зада- ния инициальных автоматов и их функционирования могут быть использо- ваны так называемые канонические уравнения. Функционирование Fq ини- циального автомата Vq состоит, очевидно, из всех тех и только тех троек слов (а, к, /3), для которых, во-первых, a = a(1) ... a(ri), (3 = Д(1) ... Д(и), к == к (1) ... к (п + 1) при некотором п, и, во-вторых, для любого t, такого, что 1 <и, имеет место система соотношений к(1) = <7, к(г + 1) = <р(к(г),а(г)), (2) 3(О = Ф(к(Г),а(О), которая и называется системой канонических уравнений автомата Vq. Если Ф = Ф = (УЧ, <РГ), Ф= Ф= (01, 0,), где ..., <рг, Ф1, ..., ф, - функции алгебры логики, то для записи системы (2) можно использовать обычный язык формул алгебры логики. Выделим некоторые важные специальные классы конечных автоматов, определяемые в соответствии с особенностями их функционирования. Конечный автомат V = (A, Q, В, р, ф) называется автономным, если функции <£(z, х) и0|Д(х, х) не зависят существенным образом от перемен- ной х. Как нетрудно провеять, айтоноЛиный конечный автомат преобразует 18 ’ - '
произвольную последовательность входных символов в некоторую фикси- рованную для этого автомата (при фиксированном начальном состоянии) последовательность выходных символов. При задании автономных конеч- ных автоматов в виде диаграмм Мура отметки стрелок можно опускать и проводить из каждого круга диаграммы ровно одну стрелку. Пример такой диаграммы приведен на рис. 1.14. Конечный автомат V, у которого от переменной х не зависит существен- ным образом только функция переходов <p(z, х), называем автоматом-ча- сами. У такого автомата через некоторое конечное число тактов состояния Рис. 1.14 начинают периодически повторяться, что можно рассматривать как ’’отсчет” дискретного времени. Поступающий на вход автомата сигнал приводит к появлению на его выходе в тот же момент времени некоторой информации, зависящей от номера отсчитываемого такта. Конечный автомат V — (Л, Q, Q, ip, ф) называется переходной систе- мой, если выполняется тождественно 0(z, х) = z. Выходные реакции та- кого автомата содержат полную информацию о его внутреннем состоянии в текущий Момент времени. По существу, переходная система сводится к тройке (Л, Q, <р), определяющей закон изменения внутренних состояний автомата под действием входных символов. Конечный автомат, множество состояний которого одноэлементно, назы- вается автоматом без памяти. Для таких автоматов выходной символ одно- значно определяется поступившим в тот же момент входным символом. Эти автоматы называются также функциональными элементами, они широ- ко применяются в задачах синтеза автоматов. Конечный автомат V = (A, Q, В; <р., ф) называется автоматом с конеч- ной памятью, если существует такое натуральное Л_, что для любых слова а длины £из Л* и состояний q, q' совпадение слов ф(д, а) и ф(д',а) влечет за собой совпадение состояний <p(q, а) и <p(q',a). Заключительное состоя- ние такого автомата однозначно определяется'по его входным и выходным символам за последние к тактов. Наименьшее к, удовлетворяющее этому условию, называется порядком памяти автомата V. На рис. 1.15 приведен пример автомата с конечной памятью, а на рис. 1.16 — пример автомата, не являющегося автоматом с конечной памятью. Порядок памятй автомата на рис. 1.15 равен 2. Конечный автомат V = (Л, Q, В, <р, ф) называется автоматом с конеч- ным запоминанием, если существует такое натуральное к, что для любых состояния q автомата V и слов а, а’ из Л*, имеющих одинаковые концы длины Л, выполняется равенство $(q, а) = ^(q, а'). На рис. 1.17 приведен пример автомата с конечным запоминанием. Как нетрудно проверить, авто- мат с конечной памятью, изображенный на рис. 1.15, не является автоматом с конечным запоминанием, а автомат, изображенный на рис. 1.17, не являет- ся автоматом с конечной памятью. 2* 19
Автомат с конечным запоминанием называется самонастраивающимся, если для некоторого к выходная буква в любой момент t > к не зависит от исходного состояния. Автоматы такого типа используются в теории коди- рования. Конечный автомат V = (A, Q,B,<p, ф) называется автоматом без потери информации, если для каждого q из Q функция фч (х) = ф(д, х) опреде- ляет взаимно однозначное отображение множества А на множество В. При фиксации начального состояния такой автомат осуществляет взаимно одно- значное отображение множества А* иа множество В *. Если диаграмма Мура конечного автомата V обладает тем свойством, что любой ее круг достижим из любого другого ее круга в предположении, что переходы допускаются как по направлению стрелок, так и в обратных направлениях, то автомат V называется связным. Если же указанная дости- жимость имеет место при переходах только по направлениям, опреде- ляемым стрелками диаграммы, то автомат V называется сильно связным. Сильная связность автомата V = (A, Q, В, ф) эквивалентна существо- ванию для любых двух состояний q, q' этого автомата такого слова а, а G А*, что q ' = <p(q, а). Пример связного, но не сильно связного авто- Рис. 1.18 20
мата приведен на рис. 1.16, а пример сильно связного автомата — на рис. 1.15. Автомат на рис. 1.17 не является связным. Инициальный конечный автомат Vq = (A, Q, В, ф, &,q) называется инициально связным, если для любого его состояния q * существует такое слово а, а&А*, что q ’ = <p(q, а). В последующем изложении при рассмотрении различных задач будет вы- делен ряд других классов конечных абстрактных автоматов. Проиллюстрируем на примерах основные типы задач, возникающие в связи с понятием конечного автомата. Пример 1. Требуется построить конечный автомат с наименьшим числом состояний, удовлетворяющий условиям: i/'G/o. 010) = 100, ф(Яо, 1011) = 0100, ф(<7о>ОО) = 11, ф(40, 0110) = 1001. Приведенные условия изобразим в виде фрагмента диаграммы Мура так, как указано на рис. 1.18, где каждому начальному отрезку рассматривае- мых входных слов соответствует свое состояние. Далее начнем отож- дествлять последовательно некоторые пары кругов этой диаграммы так, чтобы на каждом шаге возникал непротиворечивый фрагмент некоторой диаграммы Мура. Возможным результатом такой последовательности отождествлений является, например, диаграмма Мура, приведенная на рис. .1.19. Эта диаграмма определяет автомат, имеющий три состояния. Из условий задачи вытекают соотношения Ф(д0, 0) =# Ф(у>(<7о, 01), 0), Ф(Цо, 10) ¥= Ф(<р(Яо, 0), 10), ФОР(.Я0, 0), 10) ¥= H<p(q0, 01), 10), откуда видно, что q0, р (q0,0), <р (q0, 01) — три различных состояния. Отсюда вы- текает, что наименьшее число состояний автомата, удовлетворяющего по- ставленным условиям, равно трем, и автомат на рис. 1.19 является одним из возможных решений задачи. Рассмотренный пример относится к классу задач на синтез абстрактных конечных автоматов при заданных условиях на определяемые этими автома- тами отображения входных слов в выходные слова. Такие условия форму- лируются различными способами: в виде ’’анкет”, на языке логики преди- 21
катов и т.п. Результатом синтеза является задание автомата посредством диаграммы Мура либо таблицы. На первом этапе синтеза, как правйло, по- лучается автомат, не являющийся минимальным по числу состояний, в связи с чем возникает задача минимизации автомата. Рассмотрим, напри- мер, автомат, приведенный на рис. 1.20. Состояния этого автомата разобьем на группы {q2, q4, qs} и {<7i, <h}- Из диаграмм видно, что состояния, при- надлежащие одной и той же группе, определяют одинаковое выходные реакции на одинаковые входные символы, причем ’’переходы” между ука- занными группами осуществляются по входному символу однозначно, вне зависимости от выбора представителя в группе. Поэтому состояния в каждой группе можно отождествить между собой и получить автомат, изображенный на рис. 1.21. Этот автомат, очевидно, реализует то же самое отображение входных слов в выходные, что и автомат, приведенный на рис. 1.20. Рассмотренная процедура отождествления состояний автомата, неотличимых друг от друга никакими входными словами, и называется минимизацией конечного автомата. Конечные автоматы, для которых такое отождествление состояний невозможно, называются приведенными конеч- ными автоматами (или конечными автоматами приведенного вида). Пример 2. Конечный автомат К<71 задан диаграммой, приведенной на рис. 1.22 (начальные состояния инициальных автоматов отмечаются на диаграммах Мура звездочкой). Требуется определить реализуемое этим ав- томатом отображение f входных слов в выходные слова. Из диаграммы видно, что единственной стрелкой, при переходе по которой выходной символ отличен от входного, является стрелка с отметкой (0, 1); ведущая от состояния q2 к состоянию q3. Так как переход в состояние qt эквива- лентен появлению на входе автомата в предыдущий момент единицы, то оп- ределяемое автоматом преобразование входного слова а заключается в за- мене на единицу каждого нуля слова а, расположенного после единицы. Рассмотренный пример представляет собой простейшую задачу анализа поведения конечного абстрактного автомата. В таких задачах обычно тре- буется, исходя из задания автомата Vq = (A, Q, В, <р, Ф, q) диаграммой Мура или таблицей, охарактеризовать в указанных наперед терминах опре- деляемое автоматом Vq отображение/: А*^-В *. В рассмотренных выше примерах 1 и 2 основной характеристикой конеч- ного автомата являлось определяемое этим автоматом отображение вход- 22
ных слов в выходные слова. В этих случаях говорят, что рассматривается поведение автомата V как преобразователя входных последовательностей. Другой важный тип поведения конечных автоматов представляют собой поведения автоматов как распознавателей множеств входных слов (или как акцепторов). Возникающие здесь задачи можно проиллюстрировать следующими примерами. Пример 3. Требуется построить конечный автомат, распознающий наличие во входной последовательности подслова одного из видов 001, 11, 1101 и выдающий на выходе единицу в точности в те моменты, когда на входе появляется последняя буква одного из этих подслов. Рас- смотрим слова 00, 1, ПО, получающиеся из указанных подслбв отбрасыва- нием последней буквы. Для каждого из начал А, 0, 00, 1, 11, 1 ЮЪтих слов выделим состояние автомата, в котором он будет оказываться, как только конец входного слова совпадет с соответствующим началом (выбирается самое длинное из таких начал, если их несколько). Обозначим эти состоя- ния, соответственно q2, Яз, Я*> Яз, Яб- Тогда диаграмма автомата бу- дет иметь вид, приведенный на рис. 1.23. Состояния и<7$ на зтой диа- грамме могут быть отождествлены, после чего получаем минимальный по числу состояний инициальный автомат (рис. 1.24), являющийся решением поставленной задачи. Пример 4. Конечный автомат Vq задан диаграммой на рис. 1.25. Требуется определить множество входных слов, после подачи которых на вход автомата V41 на его выходе (в последний момент) возникает сим- вол 1. Из диаграммы видно, что единица на выходе автомата появляется только при условии, что автомат находится в состоянии q^ и на его вход подается символ 1. Обозначим М множество всех слов, под действием ко- торых автомат из состояния q^ снова переходит в состояние q^, причем все промежуточные состояния отличны от q^ (пустое слово в М не вклю- чается) . Как нетрудно заметить, М состоит из 1 и всех слов вида 0 — 0 1 ... 10, где Hj > 1,^1 > 1. Поэтому единица на выходе автомата Vq t «1 Wj появляется тогда и только тогда, когда входное слово имеет вид 1 ,.Л 0...0 П;Х0 1 ...1 0...0 1 ...1 0... 1 ...1 0...0 L..1 0 1...1 1, ft 1 т л пг т 2 кs п s ms к^н где s > 0, к{ > 0, И/ > 1, mi > 1, i = 1, ..., s + 1 (в случае s = 0 слово имеет вид 1 ... 1 1). fcs+l Поведение автоматов как акцепторов подробно рассматривается в § 7 главы 2, где приводится описание множеств входных слов, распознаваемых конечными автоматами, а также определяется язык для задания таких мно- жеств слов - язык регулярных выражений. Доказательство основной теоре- мы этого параграфа — теоремы Клини о событиях, представимых в конеч- ных автоматах, — содержит в себе способы построения автомата, распознаю- щего множество слов, заданное регулярным выражением, а также нахожде- ния регулярного выражения, определяющего множество слов, распознавае- мое заданным конечным автоматом. 23
(1.0) Конечные автоматы можно использовать для распознавания не только множеств слов, но и множеств сверхслов; в этом случае говорят о поведе- нии автомата как сверхакцептора. При определении множества сверхслов, распознаваемых конечным автоматом, предварительно выбирают некото- рую конечную систему подмножеств выходных символов этого автомата — так называемые выделенные подмножества выходных символов. Для уста- новления того, ’’принимает” либо ’’отвергает” автомат поступающее на его вход сверхслово, в соответствующем выходном сверхслове находятся все символы, встречающиеся бесконечное число раз. Если множество этих сим- волов является одним из выделенных подмножеств, то считается, что авто- мат ’’принимает” данное входное сверхслово, иначе - ’’отвергает” это сверхслово. Пример 5. Пусть Vq t — инициальный конечный автомат, задаваемый диаграммой Мура вида, приведенного на рис. 1.26. Выберем в качестве вы- деленного подмножества выходных символов подмножество {1}. Если автомат V4i ’’принимает” входное сверхслово, то выходное сверхслово, начиная с некоторого момента, должно состоять из одних только единиц. Из диаграммы видно, что тогда и входное сверхслово, начиная с некоторого символа, должно далее содержать одни только единицы. Обратно, каждое входное сверхслово, в котором, начиная с некоторой позиции, далее идут только единицы, очевидно, ’’принимается” автоматом . 24
Поведение автоматов как сверхакцепторов рассматривается в § 8 гла- вы 2, где приводится описание множеств входных сверхслов, распозна- ваемых конечными автоматами (теорема Мак-Нотона). В некоторых случаях (например, в задачах передачи информации) важ- ной характеристикой автомата оказывается множество слов, которые мо? гут быть получены на выходе автомата (как при фиксации начального со- стояния, так и при произвольном его выборе). В таких случаях говорят о поведении конечного автомата как перечислителя (т.е. перечислителя мно- жества входных слов). Пример 6. Пусть V — автомат, диаграмма Мура которого изображена на рис. 1.25 (начальное состояние автомата V не фиксировано). Для опре- деления множества тех слов, которые могут быть получены на выходе авто- мата V (при различных начальных состояниях) построим диаграмму на рис. 1.27, полученную из диаграммы рис. 1.25 заменой отметки (л,-, й,) каждой стрелки на символ Ь/. Те слова, которые возникают при прохожде- нии различных путей на диаграмме рис. 1.27 как последовательности отме- ток стрелок этих путей, и представляют собой элементы искомого мно- жества. Из диаграммы нетрудно установить, что такими словами являются произвольные слова в алфавите{0, 1), не содержащие подслов 101 и 1001. Множества слов, перечисляемых конечными автоматами, как и множест- ва. слов, распознаваемых конечными автоматами, допускают описание в терминах упоминавшихся выше регулярных выражений. Поведение авто- матов как перечислителей рассматривается в § 9 главы 2. Процесс управления схематически может быть представлен так, как показано на рис. 1.28. Здесь V — управляющее устройство; W — управляе- мый объект. Во многих задачах оказывается возможным считать объекты и w Рис. 1.28 V и W конечными автоматами, функционирующими в дискретном времени t = 1, 2,... Во избежание появления цикла ’’мгновенной зависимости” авто- мат W обычно предполагается автоматом Мура. Целью управляющего авто- мата является либо перевод автомата W в некоторое заданное состояние, либо ’’удержание” состояний автомата W внутри некоторого заданного мно- жества, либо оптимизация частоты пребывания автомата W в состояниях 25
из чяданного множества и т.п. В зависимости от различных трактовок про- цесса управления здесь возникают различные задачи синтеза автомат^ V. Особый интерес представляют задачи синтеза универсальных (для некото- рого класса управляемых автоматов) управляющих автоматов. Пример 7. Пусть W = (A, Q, - автомат Мура, диаграмма которого приведена на рис. 1.29. Требуется построить такой управляющий автомат V ,, чтобы при произвольном начальном состоянии автомата W этот автомат через конечное число шагов переходил в состояние q2 и далее неограниченно долго оставался в этом состоянии. Возможная диаграмма автомата V • приведена на рис. 1.30. Если на вход автомата V •, находя? ** I ** щегося в начальном состоянии q i, поступает символ 0, то это означает, что автомат W находится в одном из состояний q2, q3. К следующему моменту времени автомат перейдет в состояние q3, а автомат W — в одно из со- стояний q2, Если при этом на вход автомата Vqi поступит символ 1, то зто означает, что автомат W находится в состоянии q$, а если поступит сим- вол 0, — то в состоянии q2. В каждом из случаев автомат W, как видно из диаграмм, к следующему моменту окажется в состоянии q2, и далее будет находиться в нем постоянно. Аналогично рассматривается случай, когда в начальный момент на вход автомата V > поступает символ 1. 1 Поведение автоматов как управляющих устройств оказывается тесно связанным с поведением автоматов в лабиринтах; зти типы поведений рас- сматриваются в § 10 главы 2. Важным классом задач являются задачи диагностики конечных автома- тов. В этих задачах рассматриваются процессы взаимодействия с конечным автоматом (так называемые эксперименты с конечным автоматом), целью которых является получение информации о тех или иных неизвестных до начала эксперимента характеристиках автомата. Типичной здесь является си- туация, когда для исследуемого автомата V известен некоторый класс априори возможных неисправностей, при возникновении которых автомат превращается в один из автоматов Р), ..., V„. Задача диагностики заклю- чается тогда в отыскании простейшего в некотором смысле эксперимента, позволяющего идентифицировать рассматриваемый автомат с одним из автоматов V, ..., Vn. 26
Пример 8. Автомат Vq задан диаграммой на рис. 1.31. Возможные неисправности этого автомата заключаются в изменении его начального со- стояния. Требуется указать такое входное слово а наименьшей длины, чтобы по реакции автомата на слово а можно было определить неизвестное начальное состояние. Так как автомат V4i имеет три состояния, то длина слова а, очевидно, не менее 2. Нетрудно проверить, что выходные слова, возникающие при подаче на вход автомата V слова 00, различны при раз- личном выборе начального состояния. Поэтому в качестве а можно выбрать слово 00. Заметим, что слово а, позволяющее однозначно восстано- вить неизвестное начальное состояние, существует не всегда, например оно отсутствует для автомата, приведенного на рис. 1.32. Любые два состояния этого автомата отличимы друг от друга некоторым непустым множеством входных слов, но пересечение всех таких множеств входных слов оказы- вается пустым. Задачи, возникающие в связи с диагностикой конечных автоматов, рас- сматриваются в § § 2—6 главы 2. Синтез абстрактного конечного автомата, т.е. задание его посредством диаграммы Мура либо таблицы, является лишь первым этапом при по- строении реальных автоматических устройств. Следующим этапом является синтез структурного автомата, т.е. схемы, построенной из ’’элементарных” автоматов некоторого заданного набора М и реализующей найденный на первом этапе синтеза абстрактный конечный автомат. Пример 9. ПустьМ= {Кь V2, V3, К4}, где V, = (At, Q.it В,,<рt, ti,Si),i = 1, 2,3,4; Br =B2 =B3 = В4 = {0, 1}; 21 = 2г = 2з = Ю}, = {0, 1}; Ai = Л4 = {0, 1}, А2 = А3 = {0, 1} X {0, 1}; <Pi(z,x) = = ^2(2, х) = </>3(z, х) = 0, </>4(z, х) =х; i//1(z>x)=x, ф2 (z, (хь х2)) = = Xi V х2, ф3 (z, (хь х2)) = Xi & х2, i/z4 (z, х) = z. Автоматы Vlt V2, V3, V4 предполагаются инициальными, начальное состояние автомата V4 есть 0. Как нетрудно видеть, Vt, V2, V3 суть функциональные элементы, реализующие соответственно функции отрицание, дизъюнкцию и конъюнк- цию, a V4 есть рассматривавшийся выше элемент задержки. На схемах эле- менты Vi, V2, V3, V4 изображаем так, как указано на рис. 1.33. Построим схему из этих элементов, реализующую абстрактный конечный автомат, диаграмма Мура которого приведена на рис. 1.19. Закодируем состояния
к заданию автомата таблицей (рис. 1.34), в которой состояния переобозна- чены указанным образом. Функция переходов автомата представляется- теперь в виде пары функций алгебры логики: </> ((z ь z 2), х) = (</> t (z ь z2, х), (z!, z2, х)), а функция выходов - в виде одной функции алгебры логики: ’/'((zi, z2),x) = 1^1 (zz2, x) Из таблицы на рис. 1.34 находим </>l(Zl,Z2,x) = ZjZ2X Vztz2x, ^2(Z1, z2, x) = ZtZ2X V ZtZ2X VztZ2X = zxx V ZtZ2X, ’/'1(^1, z2, x) - FJ2x V z,z2x =z\x. Схему для автомата строим с использованием двух элементов задержки; па- ра («1, а2) состояний этих элементов задержки и будет определять состоя- ние автомата. К входу первого элемента задержки присоединяем выход схе- мы из функциональных элементов, реализующей функцию (z ь z2, х); к входу второго элемента задержки — выход схемы, реализующей функ- цию <р2 (z ь z 2, х). Значение на выходе автомата определяется схемой из функциональных элементов, реализующей функцию (z ь z 2, х). Входы z! и z 2 указанных схем из функциональных элементов присоединяются к выходам первого и второго элементов задержки, а вход х есть вход всей схемы. Отождествляя фрагменты из функциональных элементов, вычис- ляющие одинаковые промежуточные результаты, приходим к схеме на рис. 1.35, где у обозначает выход схемы. Заметим, что построенная схема реализует исходный абстрактный автомат лишь в том смысле, что его диа- грамма (т.е. диаграмма на рис. 1.19)является фрагментом диаграммы аб- страктного автомата, определяемого схемой. Состояние схемы, соответст- вующее паре (1,1) состояний элементов задержки, не представлено на диа- грамме рис. 1.19. 28
При синтезе структурных автоматов возникает задача построения схем, минимальных по числу элементов (либо минимальных в смысле какой-ли- бо иной меры сложности). Принципы построения асимптотически опти- мальных алгоритмов для решения этой задачи содержатся в работах [35, 36]. Вопросы синтеза минимальных схем, по существу, относятся к теории сложности и не рассматриваются в данной книге. Другой важной задачей, связанной с понятием структурного автомата, является задача о полноте. В этой задаче исходят из некоторого множест- ва М абстрактных автоматов, рассматриваемых как ’’элементы” схем, причем требуется определить, является ли данный набор ’’элементов” уни- версальным в смысле реализации схемами из них произвольных автомат- ных отображений. В качестве полного набора автоматов можно указать, например, рассмотренный выше набор Vt, Уг, V3, V.4. Разобранный на частном случае способ построения схем из этих автоматов нетрудно пере- нести на общую ситуацию. Вопросам полноты для структурных автоматов и различным их модифи- кациям посвящена глава 3. Ограниченность объема памяти конечного автомата накладывает ряд су- щественных ограничений на вычислительные возможности этого устройст- ва. В ситуациях, представляющих практический интерес, когда требуется реализовать операторы, определенные лишь на конечных множествах, роль этих ограничений невелика, однако они сказываются при теоретическом описании эффективных вычислительных процедур. Поэтому в теории алго- ритмов рассматривают конечные автоматы, снабженные бесконечной ’’внешней памятью” - так называемые машины Тьюринга. Машина Тьюринга представляет собой устройство, состоящее из конеч- ного автомата ,Vq = (A, Q, В, <р, ф, q) и бесконечной ленты, разбитой на квадратные клетки (рис. 1.36); в каждой клетке записан некоторый сим- вол алфавита А. Выходной алфавит автомата Vq представлен в виде А X {5, Л, R}, где S, L, R — вспомогательные символы. Выделен некото- рый символ В входного алфавита автомата Vq, называемый пустым симво- лом; предполагается, что лишь в конечном числе клеток ленты находятся непустые символы. Функционирование машины Тьюринга происходит в дискретном времени t = 1, 2, ... В каждый момент автомат Vq (называе- мый также головкой машины Тьюринга) расположен возле некоторой Рис. 1.36 клетки ленты, причем на вход автомата поступает символ, записанный в этой клетке. Если на выходе автомата в тот же. момент появляется пара (л,-, а), то к следующему моменту в рассматриваемой клетке К оказывает- ся записан символ а{ (ранее записанный в клетке К символ ’.’стирается”), а автомат остается в клетке К, сдвигается на одну клетку влево либо сдви- гается на одну клетку вправо в зависимости от того, равно ли а симво- лу S, символу L, либо символу R соответственно. 29
Таким образом, автомат Vq может перемещаться по ленте, читать записанные в ее клетках символы и делать на ленте различные записи, ’’стирая” при этом ранее хранившуюся в клетках ленты информацию. Вы- делено множество заключительных состояний автомата Vq, если автомат оказывается в одном из таких состояний, то функционирование машины Тьюринга обрывается, и запись на ленте рассматривается как результат проделанных малиной вычислений. Пример 10. Пусть - автомат, определенный таблицей на рис. 1.37, причем исходное состояние машины Тьюринга указано на о 1 («,,(0,5)) («,,(1,5)) («,,(0,5)) («,,(1,Я)) («0,(1,Я)) («,,(1,5)) Рис. 1.37 Рис. 1.38 рис. 1.38; заключительное состояние автомата есть q2. Из таблицы видно, что к следующему моменту автомат перейдет в состояние «1э оставит в клетке К символ 1 и переместится на одну клетку вправо. Далее автомат перемещается последовательно по заполненным единицами клеткам впра- во, переходя поочередно в состояния и qlt При четном числе единиц на ленте автомат окажется в заключительном состоянии «2 > выйдя на пер- вую клетку, хранящую нуль; при этом запись на ленте ие изменяется. Если же число единиц нечетно, то перед переходом в заключительное состояние автомат присоединяет к кортежу единиц справа еще одну единицу. . Введенное понятие машины Тьюринга позволяет дать точное математи- ческое определение алгоритма и далее исследовать вопросы существования и сложности алгоритмов для решения различных задач. Изложение основ теории алгоритмов можно найти в книге [38]. Модель конечного автомата возникает в самых разнообразных задачах, связанных с информационными процессами, и приведенный выше пере- чень таких задач можно было бы значительно расширить. В последующих разделах будут рассмотрены более подробно как задачи упоминавптихея выше типов (кроме задач, относящихся к теории сложности и к вопросам эффективной вычислимости), так и ряд других задач, связанных с поня- тием конечного автомата. 30
§ 2, ОБОБЩЕНИЯ ПОНЯТИЯ КОНЕЧНОГО АВТОМАТА Помимо понятий конечного абстрактного и конечного структурного ав- томатов, являющихся в теории автоматов центральными, существует ряд их модификаций и обобщений. Эти модификации разбиваются на следую- щие основные группы: а) Допускаются бесконечные множества состояний, входных и выход- ных сигналов автомата (некоторые из этих множеств могут быть конеч- ными) . Иногда при этом накладываются дополнительные ограничения на функции переходов и выходов; элементы указанных выше бесконечных множеств, как правило, снабжаются некоторой структурой. б) Допускается недетерминированность при изменении состояния и определении выходного сигнала. При этом вместо функций выходов и пере- ходов автомата рассматриваются отношения, ограничивающие некоторым образом возможности переходов и внешних реакций, либо используются случайные функции. в) Видоизменяется само понятие функционирования автомата. Напри- мер, входная информация предполагается поступающей не в виде слов, а в виде ’’деревьев” (автоматы над термами); либо в определении функцио- нирования автомата не учитываются поступающие по некоторым выделен- ным входным каналам воздействия (автоматы с переменной структу- рой) и т.п. Остановимся подробнее на перечисленных типах модификаций. Бесконечные автоматы, т.е. автоматы вида (A, Q-, В., р, ф), где некоторые (либо все) из алфавитов A, Q, В бесконечны, представляют собой весьма обширный и мощный в функциональном отношении класс автоматов. В связи с большой общностью понятия бесконечного автомата построение общей теории таких автоматов наталкивается на серьезные трудности, и для получения нетривиальных результатов, представляющих содержательный интерес, приходится ограничиваться рассмотрением специальных подклас- сов бесконечных автоматов. Выделим некоторые такие подклассы. Автомат Тьюринга представляет собой бесконечный абстрактный авто- мат V = (A, Q, В, <р, ф), у которого множества А и В конечны, a Q есть множество всех наборов вида (s, ai! * ft, а2 *02,..., а„ *0„), где s - элемент некоторого конечного множества S, а i,..., ая> 01, —, 0П - слова (быть может, пустые) в конечном алфавите L, * — символ, не при- надлежащий S U L, и > 1 (и фиксировано для данного автомата К). Эле- менты множества S называются состояниями головки автомата V, L назы- вается рабочим алфавитом автомата V, п — числом лент автомата F. В £ вы- делен ’’пустой символ” 0; наборы (s, «i *0i.an*0n),получаемые друг из друга приписыванием (либо удалением) в начале слов а/ либо в конце слов 0Z ’’пустого символа” (в произвольных количествах), далее не разли- чаем. С учетом этого замечания слова 0/ можно считать непустыми. Таким образом, в каждый момент автомат Тьюринга V ’’помнит” некоторый вспомогательный символ s, а также п слов «101, ..., ая0„ в алфавите L, в каждом из которых звездочкой отмечена некоторая позиция. Пусть </>((s, * 0!, a„ * 0n), a) = (s', (a'i * 0{, ..., a„ * 0Я)), Обозначим 31
(ft i,Z>„) набор первых букв слов 01,Тогда s * однозначно опреде- ляется значениями s, a, bi,...,bn, s' = ч> * (S, a, bt,b„). Каждое слово a'ify получается из слова ccrft заменой первой буквы слова на букву bf, определяемую однозначно номером i и указанными значениями s, a, bt, b„, b'j = <р- (s,a, bt, ..., bn). Звездочка при этом (в зависимо- сти от значений i, s,a,bi, ••• > bn) может либо остаться на месте, либо сдви- нуться на одну позицию влево или вправо. Значение на выходе автомата V определяется набором (s, a, bt, .... bn). Автомат Тьюринга можно рассмат- ривать как модель устройства, состоящего из конечного автомата V * (го- ловка автомата Тьюринга) и п лент, разбитых на квадратные клетки. В каждой клетке лент записан символ алфавита L, причем непустые симво- лы имеются лишь в конечном числе клеток. Автомат V * имеет на каждой из лент ’’считывающее устройство”, расположенное возле некоторой клетки ленты и передающее на вход автомата V * символ, записанный в этой клет- ке. Анализируя содержимое клеток, автомат V * принимает решение о том, какие новые символы следует записать в этих клетках и в каком направле- нии передвинуть считывающие устройства (каждое - независимо от дру- гих) . Схематически автомат Тьюринга можно изобразить так, как показано на рис. 1.39. Рассмотренная в предыдущем параграфе машина Тьюринга представляет собой автономный автомат Тьюринга без выхода (т.е. авто- номную переходную систему). Автоматы Тьюринга, как и машины Тьюрин- га, рассматриваются в теории алгоритмов. Однородный автомат представляет собой бесконечный абстрактный авто- мат V — (A, Q, В, ф), у которого A, Q, В суть множества всевозмож- ных отображений, имеющих соответственно вид f: Zk -+А1, g: Zk -+Q* и h: Z k -+B*. Здесь AQ', В ' — некоторые конечные множества, к — нату- ральное число, называемое размерностью однородного автомата, Z - мно- жество целых чисел. Элементы множестваZk естественно интерпретировать как точки fc-мерной целочисленной решетки; эти точки называются ячейка- ми однородного автомата V. Если f,g,h — соответственно входной сим- вол, состояние и выходной символ автомата V в момент t, то говорим, что ячейка а в указанный момент воспринимает входной символ /(а), нахо- дится в состоянии g(a) и определяет выходной символ h(a). Функции переходов и выходов однородного автомата V обладают тем свойством, 32
что состояние произвольной ячейки а в момент г + 1 и ее выходной символ в момент t однозначно определяются входными символами и состояниями в момент t ячеек из некоторой конечной окрестности ячейки а. Окрестно- сти различных ячеек получаются друг из друга параллельным сдвигом и в этом смысле одинаковы; локальные законы изменения состояний и выхо- дов (в зависимости от состояний и входов окрестностей) также одинаковы для различных ячеек. Однородный автомат является более мощной моделью, чем автомат Тьюринга, так как позволяет воспроизводить не только информационную структуру процессов, но и их пространственно-временные особенности. При этом поведение автомата Тьюринга нетрудно промоделировать посредством одномерного однородного автомата (или однородного автомата большей размерности). Примером использования однородных автоматов могут слу- жить сеточные методы решения дифференциальных уравнений с частными производными (числа представляются с конечным числом разрядов). Воп- росы диагностики однородных автоматов, а также задача о полноте для них рассмотрены в работе [6]. Важным частным случаем однородных автома- тов являются автономные однородные автоматы без выходов, называемые однородными структурами. Рассмотрение однородных структур в вычисли- тельных целях оправдывается тем, что вычислительные процедуры, при за- дании исходных данных в начальном состоянии однородной структуры, да- лее представляют собой автономные процессы. Более подробное рассмотре- ние однородных структур содержится в главе 4. В качестве примеров бесконечных абстрактных автоматов отметим так- же ряд рассматриваемых в теории алгоритмов модификаций автоматов Тьюринга и их специальных случаев. Таковы, например, счетчиковые авто- маты, у которых вместо лент в качестве ’’внешней памяти” используются счетчики, хранящие целые числа. Изменение состояния счетчика заключает- ся в прибавлении к хранящемуся в нем числу 0, +1 либо — 1. Эти автоматы, как и автоматы Тьюринга, способны осуществлять произвольные алгорит- мические процедуры. При различных ограничениях (ограничения на воз- можность записывать новые символы в клетки ленны, ограничения на ско- рость роста ’’непустой” зоны ленты и т.п.) возникают разновидности авто- матов Тьюринга, более слабые с точки зрения эффективной вычислимости. Рассмотрение таких ограничений позволяет получать различные классифи- кации алгоритмов по их ’’сложности” [54]. Эти классификации определяют лишь грубый порядок сложности (как правило, с точностью до умножения на произвольную константу) и имеют скорее теоретическое, чем приклад- ное значение. Недетерминированные автоматы относятся к следующей груп- пе модификаций понятия абстрактного конечного автомата. Недетермини- рованный конечный автомат представляет собой набор (A, Q,B,x), где A, Q, В — конечные множества; х — функция, определенная на множест- ве Q X А и принимающая в качестве своих значений подмножества мно- жества Q X В. По существу такая функция х может рассматриваться как отношение на множестве Q X А X Л X В. Если для каждой пары (q, а ), где q е Q и а Е А, значение x(q, а) есть одноэлементное множество {(q*, b)}, то можно определить функции Ч>, ф: q>(q, а) = q', ф(с[,а) = Ь. При этом возникает некоторый абстрактный конечный автомат (A,Q,B, у., ф). В указанном смысле конечный абстрактный автомат можно рассматривать 3. В.Б. Кудрявцев 33
как частный случай конечного недетерминированного (абстрактного) авто- мата. Понятие инициального недетерминированного автомата, аналогичное понятию инициального конечного абстрактного автомата, возникает, если выделено некоторое подмножество Q*, Q' Q Q, начальных состояний автомата. Пусть Q * - такое выделенное подмножество и а=а (1) ... a (s) - слово в алфавите А. Определим класс х(<2', а) последовательностей (<?(1), 6(1)), ..., b(s)). Каждая последовательность этого класса удовлетворяет следующим условиям: a) «(l)GG'; б) (q(j + 1),b(i))&x(q(i),a(i)), (в случае j = s рассматривается значение q(s + 1), не включаемое в после- довательность х(<2', а)). Легко видеть, что в том случае, когда недетерминированный автомат сводится к обычному конечному автомату (A, Q, В, у, ф) и Q* = {q’} , класс х(<2', а) состоит из единственной последовательности (<?(!), Z>(1)), ... ...,(<?(5),й(х]),где^(1)...^0)-начало слова^,,а);/?(1) ...b(s)= ty(q', а). Недетерминированный автомат можно рассматривать как модель устрой- ства, применяемого для распознавания входных последовательностей. Ана- логично случаю обычного конечного автомата, при этом выделяется под- множество В * множества В выходных символов. Множество входных слов, распознаваемых автоматом, состоит из тех и только тех слов a, a G А*, для которых в х(<2’, а) существует последовательность (#(1), b(l)),..., (<?(s), b(s)), удовлетворяющая условию b(s) & В'. Оказывается, что классы множеств, распознаваемых недетерминированны- ми автоматами и конечными абстрактными автоматами, совпадают. Вместе с тем в ряде случаев возможно построение существенно меньшего по числу состояний недетерминированного автомата, распознающего то же самое множество, что и конечный абстрактный автомат. Если функция x(q,a) недетерминированного автомата V = (A, Q, В, х) принимает в качестве своих значений либо ф, либо одноэлементное множество, то приходим к понятию частичного автомата. Частичный автомат удобнее определять при этом как набор (A, Q, В, х), где х — частичная функция, отображаю- щая Q X А в QXB. Инициальный частичный автомат есть набор (A, Q, В, X, q), где q G Q. Частичные автоматы возникают, например, в различных моделях процедур решения задач (см. [57]). В таких моделях задачи обра- зуют некоторое множество Q (конечное либо бесконечное), которое можно рассматривать как множество состояний частичного автомата Vq = = (A, Q, В, х, qo)- Обозначим </> и ф частичные функции переходов и выхо- дов этого автомата, определяемые по отношению х так же, как и выше. Каждый входный символ а автомата Vq<i определяет частичный оператор 4>a(q) — ^(q,a)> сопоставляющий задаче q некоторую ’’подзадачу” q', к решению которой сводится решение задачи q. В алфавите В выделен ’’пустой” символ 0. Если значение ф(ц,а) определено и отлично от 0, то оно интерпретируется как ответ на задачу q. Решение исходной задачи q0 представляется как поиск такого входного слова а, по окончании подачи 34
которого на вход автомата на выходе этого автомата возникает ответ на заключительную задачу. Аналогичным образом частичные автоматы возникают в различных моделях теории игр. При моделировании ряда систем в технике и биологии рассматриваются так называемые асинхронные автоматы. Эти автоматы бывают двух типов. Асинхронные автоматы первого типа суть конечные абстрактные автоматы (A, Q, В, 95, ф), у которых функция переходов удовлетворяет тождеству у(х, уу) = <р(х, у), х G Q, у G А. Такие автоматы ’’реагируют” лишь на изменение входного символа, рассматривая цепочки идущих подряд одина- ковых входных символов как один символ. Асинхронные автоматы второ- го типа представляют собой наборы (A, Q, В, у, ф), где A, Q, В — конечные множества, — функция, отображающая Q X А в Q (функция переходов), i// - функция, отображающая Q X А в В* (функция выходов). Отличие та- ких автоматов от конечных абстрактных автоматов заключается в том, что на каждый входной символ асинхронный автомат реагирует, вообще гово- ря, некоторой цепочкой выходных символов (быть может, пустой). Асин- хронные автоматы как первого, так и второго типов находят применение в различных задачах теории кодирования. Вероятностный автомат представляет собой набор (A, Q, В, <р, ф), где A, Q, В — конечные множества, </> — функция, определенная на множестве Q X А и принимающая в качестве своих значений вероятностные меры на множестве Q, ф — функция, определенная на множестве Q ХА и принимаю- щая в качестве своих значений вероятностные меры на множестве В. Так как множества Q и В конечны, то указанные вероятностные мерй задаются векторами (рь ..., р„), (pi, ..., p’m) (IQI =п, \ ВI = m), где р,- > > 0, р'. > 0, причем Pi + .. . +рп =р\ + ... +p'm = 1. Поэтому для задания функции можно использовать систему {Mi, ..., Ms} стохастических матриц размера и X и; матрица Mt = || р^к ||, i = 1, ..., s, соответствует входному символу а,-, А = {а1( ..., as}. При этом значением </>(<?, , а{) служит вектор (д^, ..., д^) (Q = {<?i........«?„}). Величина д^ ин’ терпретируется как вероятность перехода из состояния в состояние qk под действием входного символа а,. Аналогично, для задания функции ф используем систему {Mit ..., Ms} матриц Af, размера п X т, М{ = II Д^р II, где вектор , ..., ду2 ) есть ф(р/-, а{). Величина д^ интерпретирует- ся как вероятность появления на выходе символа Ьк (В = {bi, ..., bm}), если автомат находится в состоянии q, и на вход его поступает символ а,-. С вероятностным автоматом V = (A, Q, J3, <р, ф) связываем следующие функции и ф, характеризующие функционирование этого автомата. Пусть (д!, ..., д„) = д - некоторый вектор; д i + ;.. + д„ = 1, д, > О, i = 1,.. ., и. Вектор д интерпретируем как исходное распределение вероят- ностей, a Pj есть вероятность того, что автомат V находится в состоянии <7/, i = 1,. .., п, <2 = {tfi, ..., qn}. Пусть, далее,а = а(1) ... а(1) - слово в алфавите А, А = {at,..., аг). Рассмотрим систему матриц {Mt,...,Ms}, определяющих функцию ip, и систему матриц { Мt,..., Ms}, определяющих функцию ф. Полагаем по определению £(д, а) - р • Afa(!) ' • • • ’ Д»(/), з* 35
|//(д,а) = м • Л/а(1) • .. . • • Ma(j) (fi рассматривается как вектор- строка). Пусть £(д,а) = (рь . . . ,рп), ф(р,а)= (pi,. .., р'т)- Величина р, интерпретируется как вероятность того, что после появления на входе автомата V слова а этот автомат окажется в состоянии qt, i = 1, ..., п, величина p'j интерпретируется как вероятность появления на выходе авто- мата символа bj, В = {bi,.. . ,bm}, при поступлении на его вход послед- ней буквы слова а. Если функции и ф автомата V таковы, что каждая строка матриц Mj, М{ имеет ровно одну единицу (остальные элементы строки равны 0), то вероятностный автомат, по существу, сводится к конечному абстрактно- му автомату. С другой стороны, произвольный вероятностный автомат можно рассматривать как бесконечный автомат, состояниями которого служат векторы (pi,...,рп),выходными символами - векторы (p'i,...,p'm). На этом пути возникает понятие линейного автомата (см. далее). Заметим также, что автономные вероятностные автоматы без выхода эквивалентны дискретным цепям Маркова. Вероятностные автоматы можно рассматри- вать в задачах распознавания множеств входных слов, выделяя подмно- жество В' выходных символов и число X, 0 < X < 1, и полагая, что автомат распознает слово а, а G А*, если после его поступления на вход автомата с вероятностью, не меньшей X, на выходе возникает символ из В'. Оказы- вается, что класс множеств, распознаваемых вероятностными автоматами, шире класса множеств, распознаваемых конечными абстрактными автома- тами, причем мощность этого класса равна континууму. Вероятностные автоматы допускают декомпозицию в виде конечного абстрактного авто- мата и некоторого генератора случайных последовательностей. Задачи, рассматривавшиеся для вероятностных автоматов, во многом аналогичны задачам, характерным для конечных абстрактных автоматов; определен- ный параллелизм прослеживается и в ряде полученных результатов. Под- робнее с этими результатами можно ознакомиться по книге [11]. Помимо вероятностных автоматов, существуют другие модификации понятия конечного абстрактного автомата, у которых текущее состояние представляется набором (р1г . ‘, рп) вещественных чисел pt, 0 < 1, i = 1, .... и. При этом, вообще говоря, не требуют выполнения условия Pt + ... + рп = 1 и интерпретируют р{ как некоторый вес состояния qit i = 1,.... п, Q = {qt, ..., qn}. Изменение состояний у таких автоматов может происходить по различным, вообще говоря, нелинейным законам. Так возникают, например, нечеткие автоматы, являющиеся моделями некоторых распознающих устройств. Если несколько видоизменить представление о функционировании обыч- -ного конечного абстрактного автомата с двумя входами, то можно полу- чить, например, следующее понятие автомата V = (А X A', Q, В, ф) с пе- ременной структурой. Для определения функционирования такого автома- та выбирается некоторое сверхслово a, a' G (Л,)“, и предполагается, что в каждый момент времени на первый вход автомата V (алфавит А) поступает произвольный входной сигнал, а на второй вход - только очеред- ной символ сверхслова а'. Таким образом, сверхслово а' как бы ’’управля- ет” изменениями структуры автомата V. Под функционированием автомата с переменной структурой (в обозначении его указываем также сверхслово 36
а\ V = (А X А\ Q, В, (р, ф, а')) понимается тернарное отношение {(a,ip(q, аХ af), ^/(q, аХ а)) | q G Q, a G А *}, где а X а — слово вида (а(1),д'(1)) .. . (a(s),a'(s)), а = а(1) ... a(s), а = д'(1)а'(2) ... Конечный автомат над термами представляет собой систему (A, Q, В, о, 1/5, ф), где A, Q, В — конечные алфавиты входных символов, состояний и выходных символов соответственно, о — функция, сопостав- ляющая каждому элементу а множества А целое неотрицательное число, причем так, что существует хотя бы один элемент а из А, для которого о(а) = 0, — функция, сопоставляющая каждому символу а из Л отобра- жение множества QX ... X Q в Q, ф — функция, сопоставляющая каждо- му символу а из А отображение множества Q X ... X Q в В. Эти отобра- жения обозначаем q>a, фа. Автоматы над термами используются для распознавания множеств тер- мов. Под термом понимается конечное ориентированное от корня дерево, каждой вершине которого приписана буква алфавита А, причем число вы- ходящих из вершины стрелок равно о(а), где а - буква, приписанная этой вершине. Выходящие из каждой вершины стрелки занумерованы. Функционирование автомата заключается в сопоставлении каждой вер- шине рассматриваемого терма некоторых состояния из Q и выходного символа из В. В начальный момент каждой концевой вершине терма сопо- ставляются состояние </>а и выходной символ фа, где а — отметка верши- ны (заметим, что о (а) = 0, так что q>a и фа — элементы множеств Q и В соответственно). Пусть некоторой вершине терма и сопоставлен входной символ a, o(a) = m; — все вершины, к которым от и ведут стрелки (перечисляемые в порядке нумерации стрелок). Если вершинам I?!,..., vm уже сопоставлены состояния qit. .., qm, то вершине и сопо- ставляются состояние q>a{q 1,.. . , qm) и выходной символ фа(у i,.. ., qm)- Если корню терма оказывается приписан выходной символ из некоторо- го выделенного заранее подмножества В', то автомат ’’принимает” терм, иначе — ’’отвергает” его. Автоматы над термами используются в математи- ческой логике для доказательства разрешимости некоторых математичес- ких теорий. Конечный абстрактный автомат (A, Q, В, <р, ф) определяется в традиционных для алгебры терминах множеств и операций. Это позволяет устанавливать связь различных понятий и задач теории автоматов с по- нятиями и задачами, характерными для других алгебраических систем. При этом удается иногда использовать результаты, полученные в теории автоматов, для доказательства различных утверждений из других об- ластей математики. Так, например, было получено решение ограничен- ной проблемы Бернсайда из теории групп; установлена разрешимость некоторых арифметических теорий второй ступени. Важной алгебраической характеристикой конечного абстрактного автомата V = (A, Q, В, </>, ф) явля- ется его полугруппа Gy. Элементами полугруппы Gy служат всевозмож- ные подстановки на множестве Q, представимые в виде <pa(q) = <p(q, а), а G €Л*. Умножение подстановок, как обычно, означает их последовательное применение. Единицей полугруппы Gy служит тождественная подстановка |/>л. Легко видеть, что каждая полугруппа с единицей изоморфна полу- группе некоторого автомата. Существующая в алгебре классификация по- 37
лугрупп (свободная полугруппа, абелева полугруппа, циклическая полу- группа, группа и т.п.) порождает соответствующую алгебраическую клас- сификацию автоматов (свободный автомат, абелев автомат, циклический автомат, групповой автомат). Групповые автоматы называются также пе- рестановочными, так как у них каждое отображение есть перестановка на множестве Q. В качестве примера обобщения конечного автомата, возникающего при алгебраическом подходе, определим так называемые линейные автоматы. Линейные автоматы суть автоматы вида (A, Q, В, <р, ф), где A, Q, В — ли- нейные пространства над некоторым полем Р, причем р и ф выражаются через некоторые линейные отображения : Q-*Q, Фг- Q^B, ф2: А-+В, линейным образом: p(q, а) = (<?) + <pj(a), ф (q, а)=ф1(д) + ф2(а). Модификации понятия структурного конечного автомата разбиваются на следующие три основные группы: 1) Рассматриваются бесконечные схемы; элементами таких схем могут быть как конечные автоматы, так и различные их модификации. При этом не допускается изменение схемы в процессе функционирования. 2) Допускается возможность изменения структуры схемы в процессе ее функционирования (схема может быть как конечной, так и бесконеч- ной). Изменение структуры схемы обусловливается ее текущим состоя- нием и внешними воздействиями; возможно как детерминированное, так и недетерминированное изменение структуры. 3) Рассматривается ’’пространственная” реализация схем: каждый эле- мент представляет собой некоторую трехмерную (либо плоскую) геометри- ческую фигуру с заданными размерами; соединения между элементами также рассматриваются как некоторые геометрические фигуры. В качестве примера модификации понятия конечного структурного ав- томата, относящегося к первой группе, рассмотрим так называемые моза- ичные структуры. Мозаичная структура построена из бесконечного числа конечных автоматов вида (A, Q, Q, <р) (т.е. автоматов, выходной сигнал которых воспроизводит текущее состояние). Эти автоматы размещаются в узлах целочисленной прямоугольной решетки (произвольной размер- ности к, к = 1, 2, 3, ...), причем входные сигналы поступают на автомат только из автоматов той же схемы. Внешние сигналы на мозаичную струк- туру не поступают, так что в целом она функционирует как бесконечный автономный автомат. В частном случае, когда все автоматы V в мозаич- ной структуре одинаковы, а соединения между ними однородны (т.е. па- раллельный сдвиг на вектор с целыми координатами преобразует мозаич- ную структуру саму в себя), приходим к понятию однородной структуры (рассматриваемой уже не как абстрактный, а как структурный беско- нечный автомат). Модификации, относящиеся ко второй группе, оказываются полезными при моделировании биологических процессов роста и развития организмов. Наконец, третья группа модификаций характеризуется специфическим подходом к оценке сложности схем; в качестве одной из компонент такой оценки фигурирует объем схемы, что накладывает определенный ’’геомет- рический” отпечаток на возникающие здесь задачи и методы. 38
ГЛАВА 2 АБСТРАКТНЫЕ АВТОМАТЫ § 1. ОГРАНИЧЕННО-ДЕТЕРМИНИРОВАННЫЕ ФУНКЦИИ Пусть A={ai,. . . ,ат}, В = {blt... , bn} - конечные алфавиты. Функ- ции /, определенные на А* и принимающие значение в В*, могут быть ис- пользованы для описания поведения дискретных устройств, изменяющих свои состояния в дискретные моменты t = 1, 2,... При этом слово а, а&А*, интерпретируется как последовательность входных сигналов, поступивших на устройство в указанные моменты времени; слово /(а), f(a)EB*, интерпретируется как последовательность сигналов, возникаю- щих ”на выходе” устройства. Характерной особенностью функций /, возникающих в описанной ситуа- ции, является выполнение следующих условий: а) если a G А* и длина слова а равна I, то длина словаДа) также равна Г, б) если at = д(1) . .. а(к), а2 = У(1) ... а(к), /(at) = ft(l) ... b(k), /(a2) = &'(1) ... b'(k), причем a(l) = a'(l), ..., a(s) = a(s) при некото- ром s, 1 <s to b(V) =b'(l),. .. ,b(s) =b'(s) (здесь <z(i),<z'(z) - сим- волы алфавита A, b(i), b'(i) - символы алфавита В, i= 1,... ,к). Выполнение второго условия означает, что каждый очередной выходной сигнал определяется однозначно последовательностью ранее поступивших входных сигналов и не зависит от того, какие сигналы будут поступать на вход устройства в последующие моменты времени. Функции f: А* -+ В*, удовлетворяющие условиям а) и б), называем детерминированными функциями (сокращенно д.функциями). Для теоретического рассмотрения д.функций удобно задавать их по- средством так называемых информационных деревьев. Информационное дерево в алфавитах А, В представляет собой бесконечный ориентирован- ный граф G, каждому ребру которого приписана пара вида (а, Ь), где аЕА, Ь&В, причем выполнены условия: 1) Существует вершина и 1 (корень информационного дерева), из кото- рой достижимы все остальные вершины графа G. Для каждой вершины v графа G существует единственная последовательность вида i>i, Pi, v2, Р2,--- .. ., Pj, vi+l = v, где i > 0, i?i, v2, .. ., vi+1 - вершины графа G, p. - ребро, ведущее от v, к и;+1, / = 1,... , i. 2) Из каждой вершины и графа G выходит ровно т ребер, которым со- поставлены т пар вида (at, Ь^ ),... , (ат , ), {ц,. . . , im } С {1,.. . ; п}. На рис. 2.1 указан примерный вид фрагмента информационного дерева. Произвольным вершине v информационного дерева G и слову a, a G А*, сопоставим последовательность v = и»!, Pi, w2, ..., ps, и^-и, где s > О, Wi,...,wJ+1 - вершины информационного дерева G, pf - ребро, ведущее от wt к wi+l; отметкой ребра р, служит пара (а (г), b (i)), i = 1, 2,. . ., s, 39
Рис. 2.1 причем а(1) ... а(з) = а. Нетрудно видеть, что такая последовательность определяется по и и а однозначно; называем еегпутем из вершины и дерева G, соответствующим слову а. Говорим также, что этот путь определяет слово 6(1) ... 6(з) в алфавите В. Вершину и\ + 1 называем концом пути. С информационным деревом G в алфавитах А, В свяжем функцию fG: А* -* В*. По определению положим для каждого а из Л* значение /G(a) равным слову в алфавите В, определяемому путем из корня дерева G, соответствующим слову а. Выполнение условий а) и б) для функции fG очевидно, так что каждое информационное дерево определяет некоторую д.функцию. Обратно, пусть задана некоторая д.функция /; /: А* В*. Рассмотрим бесконечный ориентированный граф G, удовлетворяющий при- веденному выше условию 1) и такой, что число выходящих из произволь- ной его вершины ребер равно т. Припишем ребрам, выходящим из корня щ, пары (#1,/(aL)), ..., (om,f(am)) (в произвольном порядке). Если v — некоторая вершина графа G, для которой существует последователь- ность U1, Pi, v2, Рг, • • , Ps, 4s+ i = где s > 1, i>i, .. ., us + 1 - вершины графа G, Pj — ребро, ведущее от и,- к и| + ), имеющее отметку (а; , Ь,), i - 1, 2, . . ., s, причем выходящим из и ребрам еще не сопоставлены ника- кие отметки, то находим значения/(а/ . . -ajsat^ = , • • • ,/(Дд ... Ojsam)= = (Зт. Пусть 6j, .. ., b'm — последние символы слов 01, ... , 0т. Сопостав- ляем выходящим из v ребрам пары (fl|, b\), ..., (ат, b'm). Продолжая указанным образом процедуру сопоставления отметок ребрам графа G, получим, что каждому наперед заданному ребру графа G через конечное число шагов сопоставляется пара вида (a, b), a G А, 6 G В. Таким образом, возникает некоторое информационное дерево. Нетрудно проверить, что это дерево определяет исходную д.функцию/. Итак, класс д.функций совпадает с классом функций, определяемых информационными деревьями. Пусть G - информационное дерево в алфавитах А, В, щ - корень этого дерева, v - произвольная вершина этого дерева. Подграф графа G, образо- ванный всеми вершинами, достижимыми из вершины и (включая и), сам является информационным деревом. Обозначим это информационное де- рево посредством G(u). Установим взаимосвязь между функциями f = fG и f'~fG(v) Рассмотрим путь я из корня щ дерева G, соответствующий тако- му слову a, a G А*, что концом пути я служит вершина и. Определяемое путем я слово в алфавите В обозначим (3. По определению функции/имеем /(а) = /3. Пусть у — произвольное слово в алфавите А. Рассмотрим путь Я1 40
из корня i?i дерева G, соответствующий слову ау, а также путь тг2 из корня v дерева G(u), соответствующий слову у. Обозначим 5 j и 52 определяемые путями ttj и тг2 слова в алфавите В. Легко заметить, что путь тг2 представ- ляет собой концевой отрезок пути л-1, а слово 6 2 является концом слова 61. Так как соответствующий слову а начальный отрезок пути 774 есть путь л, то получаем представление слова 5( в виде 0S2, при этом 6, = f(ay), 82 = - f'(y). Таким образом, получаем тождество/(cry) = f(a)f'(y), где а - оп- ределенное выше фиксированное слово из А*, у — произвольное слово из А*. Функции /', удовлетворяющие этому тождеству для различных слов а из А*, называются остаточными функциями д.функции /. Иногда используют обозначение /'(у) = /«(?)• Приведенные выше рассуждения показывают, что класс остаточных функций д.функции /, определяемой информационным деревом G, совпадает с классом всех функций вида /g(v), определяемых различными поддеревьями G(v) дерева G. Назовем два информационных дерева Gx и G2 в алфавитах А, В изо- морфными, если существуют такие взаимно однозначное отображение множества вершин дерева Gj на множество вершин дерева G2, а также взаимно однозначное отображение в2 множества ребер дерева Gj на мно- жество ребер дерева G2, для которых выполняются условия: а) если р — ребро, ведущее от вершины и дерева Gi к вершине v этого дерева, то ребро 02 (р) ведет от вершины в j (и) дерева G2 к вершине в j (и*) дерева G2; б) если ребру р дерева Gj сопоставлена пара (а, Ь), то ребру 62(р) де- рева G2 сопоставлена такая же пара (а, Ь). Отношение изоморфизма разбивает множество поддеревьев G(u) инфор- мационного дерева G на классы эквивалентности; обозначим эти классы Qi, Q2, Q3, • • • Очевидно, любые два дерева G(u) из одного и того же клас- са Qi определяют одну и ту же д.функцию, а из разных классов Qi - различ- ные д.функции. Пусть G(Wi), G(w2) G Qt- при некотором г; рассмотрим произвольный символ а алфавита А. Пусть w'. — вершина дерева G, к ко- торой от Wj ведет ребро с отметкой (a, с/), j = 1, 2. В силу изоморфизма деревьев G(wj), G(w2) имеем тогда Cj = с2, причем деревья G(wi) и G(Wj) также изоморфны. Последнее означает, что G(w’1), G(w2) принадле- жат некоторому классу Qp. Проведенные рассуждения устанавливают кор- ректность определения следующих функций и ф: ^{Qj, а) = Qp, ^(Qj, а) = = ct. Функция определена на множестве {Qt, Q2, ... } X А и принимает значения из {Qv, Q2, .. .}, функция ф определена на множестве {<21, Qi. X Л и принимает значения из В. Рассмотрим произвольное слово а, а = а(1) ... а(р), a G А *. Пусть i>i, plt v2, р2,..., рр, ир + 1 - путь из корня щ информационного дерева G, соответствующий слову а. Обозна- чим (a(z), b(i)) отметку ребра pf, i = 1,.. . , р, q(i) - такой класс Qj., что G(uz) G Qj., i = 1,р + 1. Согласно определению функций и ф вы- полняются соотношения «о) =ел, 4(г + 1) =1p(Q(r),a(O), Ь(Г) = ф(д(г),а(г)), Г=1,..., р. 41
Если множество Q = { Qi, Q2, • } конечно, то, сопоставляя эти соотноше- ния с системой уравнений (2) из § 1 главы 1, получаем, что рассматривае- мая д. функция является конечно автоматной функцией, реализуемой ини- циальным конечным абстрактным автоматом (A, Q, В, р, ф, Q/ ). Верно, очевидно, и обратное, т.е. каждая конечно автоматная функция представ- ляет собой д.функцию, имеющую конечное число классов Qi, Q2, Q3,.. ., или, что то же самое, конечное число различных остаточных функций. Детерминированные функции, имеющие конечное число остаточных функ- ций, получили название ограниченно-детерминированных функций (о.-д.функций). Как было показано, класс о.-д.функций совпадает с клас- сом конечно автоматных функций. Число остаточных функций о.-д.функ- ции f называется весом о.-д.функции f. Легко видеть, что число состоя- ний автомата, определяющего о.-д.функцию /, не менее ее веса. Каждая д.функция /, определяет некоторое отображение /°° множест- ва А°° в В°°. Именно, если а = а(1)а(2)... — сверхслово из А°°, то рас- сматриваем для каждого 1=1,2,... слово f(a(l)... а(1)). Согласно усло- вию б) из определения д.функпии, эти слова суть начала друг друга; /(а(1). ..а(1)) = 6(1) .. . 6(z), z = 1,2,... , и можно определить сверхслово 9 = 6(1)6(2). .., (3 <ЕВ°°. Полагаем по определению = /3 и говорим, что / преобразует сверхслово а в сверхслово (3. Укажем одно интересное свойство преобразований сверхслов, определяе- мых о.-д.функциями. Сверхслово а, а = а(1)а(2). . . , называем периоди- ческим с длиной периода т и длиной предпериода т (г, т натуральные), если при любом натуральном i, i > т + 1, выполняется all) =а(т + 1). Оче- видно, тит' определяются по а неоднозначно. Теорема 2.1 [63]. О.-д.функция f веса п, f : А* ->В*, преобразует периодическое сверхслово а,а£А°°, с наименьшей длиной периода т в периодическое сверхслово с наименьшей длиной периода вида 9m, где 9 — делитель числа т, m G {1,.. . ,п }.ЕсЛи | А | > 3, | В | > 2, то каждое такое значение вида 9m достигается при некоторых о.-д.функции f и сверхсло- ве а, удовлетворяющих указанным условиям. Доказательство. Пусть KQ| = (A, {qi,.. . , qn}, В, р,ф,дх)~ ко- нечный автомат, для которого /(?)= при всех у из А*; сущест- вование такого автомата установлено выше. Рассмотрим произвольное периодическое сверхслово а из А°° : а = = д(1)а(2). .. Обозначим/°° (а) = 3, 0 = 6(1)6(2)... Пусть наименьшая дли- на периода сверхслова а равна т, длина предпериода равна т . Тогда при всех i > г + 1 выполняется а(/) = а(т+1). Обозначим а, = а(1)... а(т'), а2 =а(т + 1) . . .а(т + г). В последовательности ..., <p(qi, <*iOi2 ...а2) встречается не более чем п различных элементов. п + I Поэтому существуют z1; i2, 1 С?! < i2 + 1, для которых p(qi ,aia2 .. ,а2) = >а1<*2 • • • <*2)- Обозначим q = p(.gi, aia2 . . . 6 'г 6 a3 = a2 ... a2. Тогда q = p(q, a3). Обозначим, далее, q(T) = p(qlt a(l)... G -G .. . a(i — 1)), i = 1,2,. .. Если z> т + z) т + 1, то слово zz(l)... a(i — 1) мож- но представить в виде а, а2 • <*2. аз • • сс3 «з, где / > 0 и а3 - начало ело-
ва а3,а3¥=а3. Тогда имеем q(i) = tP(.qi,a(l). . a(i - l)) = ^(gi,ttitt2 , , ,a2 а.э • а9 a3) = i = <p(q, a3 . .. a3 a3) = <p(q, a3). i Далее, a(l).. ,a(z + r(z2 - z’j)- 1) = aja2 . .. a2 a3 . . . a3 a3, откуда i, /+1 q(z + t(z2 - z’i)) = ^(^, a'3) = q(i). Так как a(i + r(i2 -z'i)) = a(z), то 6(z + r(z2 - z\)) = ф(q(z + r(z2 - ц )), a(z + r(z2 - i2))) = = i/z(q(z),a(z)) = 6(z). Следовательно, сверхслово /3 периодическое с длиной периода t(z2 — Л) и длиной предпериода т' + z\ т. Наименьшая длина периода сверхслова /3 делит величину r(z2 - zt), т.е. представима в виде 6 m, где в делит г, а т делит z2 - it. Но f2 - z'j G {1,. .., н), так что т G {1,.. . , п}, и первая часть ут- верждения теоремы доказана. Пусть А = {ai,.. . , ак}, В ={bi,. . . , bp}, &>3,р>2. Рассмотрим произвольное натуральное т и выберем про- извольно делитель в числа г, а также число т € {1, .. ., п }. Определим ав- томат =(А, {qit .. . , qn}> В, <р, ф, qi) следующим образом: 1) <Р(Яь а/) = qi 2) ak)~qt + i af)=qi+l 4) при z = 1,. .. , m, j = 1,..., к — 1; при i = 1, ... ,m - Г и *p(qm, ak) = qi; при i = m + 1,. .. ,n - 1, j=\,...,k\ при j = 1,. . ., k. Полагаем v(qm, ak) = b2, ф(дп, ) = b2 и ф(д1,а)) = Ьх в остальных слу- чаях. Диаграмма Мура автомата Vq изображена на рис. 2.2. Для любых двух различных состояний qi и qj этого автомата нетрудно подобрать та- кое слово у, что ф^, у) ¥= ф(В/, у) • Отсюда, как легко видеть, вытекает, что определяет о.-д.функцию. f веса п. Обозначим at=ai.. .diak-, в 43
а2 = а2 • ; аз ~ а2 • Сверхслово а = а3а3а3... имеет наи- «Г-1 ' Г' ' — - 1 в меньшую длину периода, равную т. Нетрудно проверить, что / “(а) = = ..., где Pi = bi .. . bib2, так что наименьшая длина периода вт - 1 сверхслова /°°(а) равна вт, и теорема доказана. Нетрудно заметить, что условие |Л 1>2 является необходимым, так как при | А | = 2 и п = 1 невозможно получить наименьший период в выходно- го сверхслова, являющийся собственным (т.е. отличным от 1 и г) делите- лем наименьшего периода т входного сверхслова. Легко привести пример д.функции, отображающей каждое периодичес- кое сверхслово в периодическое сверхслово и не являющейся о.-д.функ- цией. Конечный фрагмент информационного дерева в алфавитах А = В = = { 0,1}, определяющего такую д.функцию, приведен на рис. 2.3. На этом рисунке указаны лишь те ребра информационного дерева, которым припи- саны пары вида (z, 1), а ребра с парами вида (z, 0) опущены. § 2. ЭКВИВАЛЕНТНОСТЬ КОНЕЧНЫХ АВТОМАТОВ Сравнение поведений конечных автоматов, рассматриваемых как пре- образователи входных последовательностей, приводит к ряду отношений эквивалентности между автоматами, а также между состояниями одного и того же автомата. Пусть V = (A, Q, В, ф), V' = (A, Q1, В, <р', ф') - конечные автоматы. Если для любого слова а из Л* выполняется ф (q, а) = ф'(д', а), где q € Q, q 6 Q', то говорим, что состояние q автомата V неотличимо от состояния q' автомата V1. Если же при некотором a, a G А*, имеет место ф(д, а) ¥= ^ф'^', а), то состояние q называемотличм.мы.м от состояния^'. Говорим в этом случае, что состояния q и q' отличимы словом а или что слово а отли- чает состояния q и q'. В частном случае, когда V = V', приходим к отноше- нию неотличимости, определенному на множестве Q состояний автомата V и разбивающему Q на классы попарно неотличимых состояний. Неотличи- мость состояний q и q' далее обозначаем q ~ q’. Если любые два различных 44
состояния автомата отличимы друг от друга, то говорим, что V есть авто- мат приведенного вида. Предположим, что для любого состояния q автомата V существует не- отличимое от q состояние q' автомата V1, и обратно, для любого состоя- ния q' автомата И1 существует неотличимое от q' состояние q автомата V. В этом случае наблюдение за ’’внешними реакциями” автоматов V и V' не позволяет каким-либо образом различить эти автоматы, и с точки зрения преобразования входных последовательностей автоматы V и V ’’одинако- вы”. Говорим в указанной ситуации, что автоматы V и V' неотличимы. Неотличимость автоматов V и V' обозначаем V'. Пусть К (А, В) - класс всех конечных автоматов вида (A, Q, В, ф), где Q — подмножество некоторого фиксированного счетного множества U. Как легко видеть, отношение неотличимости автоматов представляет собой некоторое отношение эквивалентности на множестве К (А, В) и разбивает К (А, В) на непересекающиеся подмножества. Если V G K(A, В), то обозна- чаем Kv (А, В) множество всех автоматов V1 из К (А, В), для ко- торых К'. Нам понадобится еще одно отношение эквивалентности на К (А, В), раз- бивающее это множество на более узкие подклассы, чем отношение не- отличимости. Пусть V = (A, Q, В, р, ф), V' — (A, Q1, В, р , ф') - конечные автоматы, причем существует такое взаимно однозначное отображение £ множества Q на множество Q1, для которого выполняются тождественно следующие соотношения: %(p(q, а)) = а), ф(ц, а) = ф'(%(q), а). Тогда говорим, что автоматы V и V' изоморфны. Легко видеть, что изо- морфные автоматы неотличимы; нетрудно также привести пример неотли- чимых автоматов, не являющихся изоморфными. Класс К у (А, В) может быть охарактеризован следующим утверждением. Теорема 2.2 [40]. Пусть А, В - конечные множества и V &К(А, В). Тогда класс Ку (А, В) содержит с точностью до изоморфизма единственный автомат приведенного вида. Доказательство. Пусть V = (A, Q, В, р, ф). Рассмотрим разбие- ние множества Q на классы Qi, ... ,Qn попарно неотличимых состояний. Пусть q,q & Qi, z'£ { 1, . .., п}, а £ А. Если p(q, а) £ Qj,y(q, а) £ Qj', где j #= j', то существует слово а, а £ А*, для которого ф(р^, а), а) #= ¥= ф(у>(р', а), а). Но тогда ф(д, аа)=ф(д,а) ф(у>(д,а),ау£ ф(д',а)ф(<р(д',а), а) = = ф (q', аа), и состояния q, q оказываются отличимыми. Полученное проти- воречие доказывает, что j = j', и можно положить по определению Qj - - *p'(Qi, а) Таким образом, определена функция *р': {Qi, .. ., Qn} х А -+ {21, . . ., Qn}. Далее, при q, q 6 Qt ,а € A, i € {1,. .. , п}, в силу неотли- чимости состояний q, q' имеем ф(д, а) = ф(д, а) = Ь. Это позволяет поло- жить по определению Ъ = а); в результате имеем функцию ф': (Qi, • • • , Qn} X А -*В. Рассмотрим автомат V'= (A,{Qlt...,Qn}, В, , ф'\ Без ограничения общности предполагаем, что Qi,...,Qn СУТЬ элементы упомянутого выше множества U. Из определения функций р и ф выте- кает, что при q £ Qi, af=A* имеем 0(q, а) = а). Поэтому V V и V GКу(А, В). Если i=£f, i,j £ {1,. .. , п}, то рассматриваем состояния 45
q, q автомата V, q G Qf, q' G 2/, и находим для них слово а из А* такое, что а) =£ ф(д', а). Тогда выполняется и ф'(Qi, а) ф 4/'(Qj, а), так что со- стояния автомата V’ попарно отличимы и V’ — автомат приведенного ви- да. Покажем, что любой автомат К" = (Д, Q",B, ip", ф") из К у (А, В) явля- ющийся автоматом приведенного вида,изоморфен автомату V'. Пусть 2" = ={q"i,.. . , q'm)• Каждое состояние q" неотличимо от некоторого состояния Qj автомата V, причем состояния q",. . . ,q'm попарно отличимы. Поэто- му т Точно так же получаем п^т. Следовательно, т=п и каждо- му состоянию Qi автомата К'соответствует единственное неотличимое от него состояние автомата V", i = 1,.. . ,п. Покажем, что отображение ^со- поставляющее, состоянию Qi, z= 1,... ,и, автомата V' неотличимое от Q, состояние автомата V", устанавливает изоморфизм автоматов V' и V". Оче- видно, отображение £ взаимно однозначно. Так как Qj и £(2,) неотличимы, то для каждого а из А неотличимы также состояния *p'(Qi, а) и <р"(£(2(), а) автоматов V' и К”; это означает, что l-(p'(Qi,а)) ~ ‘P 'CZCQt),а)- Равенство ^(2i,fi) = 0"(£(0z),fl) вытекает из неотличимости состояний Qj, %(Qi). Та- ким образом, автоматы V и К" изоморфны. Теорема доказана. Отношение неотличимости состояний автомата оказывается полезным в различных задачах, связанных с распознаванием неизвестных характе- ристик автомата в процессе взаимодействия с ним. Простейшим приме- ром такой задачи является задача восстановления неизвестного начально- го состояния q автомата V по известным входному слову а и выход- ному слову ф(д, а) (функции переходов и выходов автомата, а также множества A, Q, В входных символов, состояний и выходных символов предполагаются заранее известными). Оказывается, что в общем случае эта задача неразрешима; именно, имеет место следующее утверждение, уточняющее одно предложение из [40]. Теорема 2.3. Для любых' алфавитов A, Q, В, таких, что | А | >2, 121>3, | В | > 2, существует такой автомат приведенного вида V, V = = (A, Q, В, р, ф), что для любого слова а,а&А*, существуют различные со- стояния q, q автомата V, удовлетворяющие соотношению ф(д, а) = ф (q',.a). Доказательство. Обозначим А = {аь . .. , am}, Q = {qi,..., qn}, В = {ЬХ,. .. ,bp}, где т>2, п>3, р> 2. Рассмотрим автомат К = = (A, Q, В, р, ф'), у которого функции риф определяются следующим образом: y)^(Qi,ai)=q2, i = 1, ... ,т, ф^, ai) = b2, ф(р1,а,) = Ь1, 1 = 2,. .. , т. 2)p(q2,ai)=ql, 1=1,.. . ,т, ф(д2, ai) = bi, ф(д2, аф) = b2, i = 2,...,т. 3)p(q3,ai) = qi, p(q3,at) = q2, i=2,...,m, ф (q3, at) = b b i = 1,. . . , m. ^)tP(Qi,aj) = qi + i,i = 4,...,n - 1, p(qn, a,) = q4, /=!,... ,m, Ф(Яп,а,) = Ь2,ф(д1,а/) = Ь1Д= 1,.. .,m, i = 4,. . ., n - 1. Диаграмма Мура автомата V приведена на рис. 2.4. Установим попарную отличимость состояний автомата V. Имеем Ф(Ч1, fli)* Ф(Чг,а1), ф^.а^ ф^3,а1), ф(д2,а2)^ Ф(д3,а2). 46
Если i Е {4, . . . , zz} и a — слово, длина которого более п - 4, a Е А*, то в слове ^(<7,-, а) имеется хотя бы одно вхождение символа Ь2. В то же вре- мя для каждого состояния Qj G {qlt q2, q^} , нетрудно построить слово а,аЕЛ*, имеющее сколь угодно большую длину и такое, что ф(у^,а) не содержит символа Ь2. Поэтому каждое состояние q^, j = 1,2,3, отличимо от любого состояния q(, i Е{4,...,«}. Наконец, различные состояния qjt i = = 4,.. ., и, отличимы друг от друга словом . а, . Таким образом, V п есть автомат приведенного вида. Пусть а ЕЛ*. Если a = А, то в качестве q и q берем, например, состояния q\ nq2. Если а#1 А, то представим а в виде а,а', где iЕ {I, .. . ,т}. В случае z= 1 имеем ф(д2,а)= Ф(В1 ,а')= = ф(<?з, а), так что в качестве q, q' берем состояния q2,q2. В случае z ¥= 1 имеем ф(с/1, а) = ф(д2, а) = ф(д3,а),и в качестве q, q' берем состояния q!, q3. Теорема доказана. Заметим, что условия доказанной теоремы не могут быть ослаблены. Так, необходимость условий | Q | > 3, | В | > 2 очевидна, а необходимость условия |Л1^2 вытекает из того, что при |Л | - 1 словом, отличающим любые два состояния автомата V, будет являться самое длинное из слов, отличающих отдельные пары состояний автомата V. Рассмотрим еще одно отношение эквивалентности на К (Л, В) — так на- зываемую слабую неотличимость автоматов. Автомат V, V = (A, Q, В, р,ф), назовем слабо неотличимым от автомата VV' = (A, Q>, В, ip, ф'), если для любых состояния q,q&Q, и слова a, а ЕЛ*, существует такое состояние q', q'&Q', что ф(д,а)= ф'(д’,а). Слабую неотличимость автомата V от 47
автомата V' обозначаем КС К'. Нетрудно привести пример автоматов V и V, для которых выполняется V < К' и не выполняется V < К. Если од- новременно выполнено КС К' и К'< К, то автоматы К и К' называем слабо неотличимыми. Слабую неотличимость автоматов К и V' обозначаем К~ К'. Очевидно, слабая неотличимость представляет собой отношение эквивалентности на множестве К(А,В). На рис. 2.5 и 2.6 приведены ав- томаты, являющиеся слабо неотличимыми, но не являющиеся неотличимы- ми. Следующее утверждение характеризует различие между отношения- ми С и ~~. Утверждение 1 [40]. Для любого автомата К = (А, О, В, ф), где | В | > 2, существует автомат V' = (A, Q', В, , ф') со следующими свой- ствами : а) К' не является слабо отличным от V; б) каждое состояние автомата V неотличимо от некоторого соответст- вующего ему состояния автомата V ’. Доказательство. Пусть К = (A, Q, В, у, ф), Q = {qi,.. . , qn}, А = = {д1я. . . , ат}, В ={ Ьх,. . . , bp}. Выберем попарно различные элементы q'i,.. . , q„, не принадлежащие Q, и обозначим Q' = Q U{ q'x,.. . , q'n}. Функ- ции и ф' автомата К' = (A, Q', В, р, ф') определяем следующим об- разом: 1) p(pi,a) = <p(pi,a), ф'(р), а) = ф(рь а), где i = 1,..., п, а&А~, 2) ¥’'(q'-,<z) = Q-+] при i = 1,...,п 1 и р(р’п, а) = q'x. Если ф (pit д, . . . Д1) = Ьх, то ф'(ц], а) = Ь2, иначе ф'(<?'., д) = bt. Здесь i а - произвольный символ алфавита А. Проверим выполнение для автомата V' условий а) и б). Для проверки условия а) достаточно установить, что ах . . . <?i) Ф ф(р1г ai... ах) при п п всех i = 1, . . . , п. Обозначим ф'^!, ах . .. ai) = Ci . . . сп, ф (р,, at . .. ) = п п = di .. . dn. Имеем dt = ф(рьах , .. Д]). Если б( = Ьх, то ф,(<?(-, Д1) = Ь2. Но I ф'(р'/, Д1) = ф'(^, Д] . .. Д1) = С/, откуда с, Если же d, bx, то i ф'(р\,а1} = Ь1, и снова получаем с^ФА,. Условие а), таким образом, вы- полняется; выполнение условия б) вытекает из того, что ф(Р/, а) ¥= Ф О?,, а) для всех i = 1,. . . ,п и а из А*. Утверждение доказано. Утверждение 2. Число классов разбиения, индуцируемого на мно- жестве К(А, В) отношением слабой неотличимости, при | В | > 2 счетно. Доказательство. Обозначим В= (Ьх, b2...........Ьр}. Построим бес- конечную последовательность автоматов Kj,K2,K3,... Полагаем К! = = (A, {qi}, В, , ф]), где qx G U, pi(qi, а) = q1( ф1(ц1яд) = й1 для всех д из Л. Если уже построен автомат К,-, то в качестве К, + 1 берем такой авто- мат, что каждое состояние автомата К, неотличимо от некоторого состоя- ния автомата К( + 1, причем не выполняется соотношение К1 + 1 < К,-. Такой автомат Кг + 1 существует согласно утверждению 1. При этом имеет место 48
Vi < Vi + l. Очевидно, всегда можно выбирать автоматы К, так, чтобы их состояния были элементами множества U. Предположим, что V, ~ V, при некоторых /1,/2, /1 </2. Имеем Ид < Ид +1 < . . . < Ид < Ид , Ид < < ИЛ . Отсюда вытекает в силу транзитивности отношения <.,что Ид < < Ид _ j, и приходим к противоречию с построением последовательности Иь И2,... Поэтому при /1 =#/2 автоматы Ид и V^ попадают в различ- ные классы рассматриваемого разбиения множества К(А, В), т.е. множест- во этих классов бесконечно. Так как множество К (А, В) счетно, то счет- ным оказывается и число классов разбиения. Утверждение доказано. Выделим специальный подкласс класса К(А, В), на котором отношения неотличимости и слабой неотличимости совпадают. Пусть V=(A, Q, В, ф)- конечный автомат. Если q = \p(q, a), q,q'& 0, а € А*, то говорим, что состояние q' достижимо из состояния q. Если любые два состояния автома- та И достижимы друг из друга, то этот автомат называется сильно связным. В терминах диаграмм Мура сильная связность автомата означает, что от лю- бого круга диаграммы можно перейти, последовательно перемещаясь вдоль стрелок (в указываемых этими стрелками направлениях), к любому другому ее кругу. Иногда рассматривается более слабое условие возмож- ности перехода от любого круга диаграммы к любому другому кругу при перемещении по стрелкам без учета их ориентации. Такие автоматы, напомним, называются связными. В отличие от условия сильной связности, условие связности автомата не допускает простой формулировки в тер- минах свойств его поведения и является, по-видимому, менее естествен- ным. Класс всех сильно связных автоматов, принадлежащих К(А, В), обо- значим Z(A, В). Теорема 2.4 [40]. Ясям V, V'EZ(A, В)и V< V, то V~V'. Доказательство. Пусть V = (A, Q, В, у, ф), V' = (A, Q', В, у, ф'), V, V' EZ(A, В) и И< V. Рассмотрим произвольное состояние q автомата V и покажем, что оно неотличимо от некоторого состояния автомата V. Предположим, что это не так. Обозначим Q' ={ q\, .*.. ,q'n}. Для каждо- го i= 1,... ,п имеем некоторое слово а,, oq&A*, удовлетворяющее соот- ношению ф(д, а,) ¥= ф'(д'^ а,). Построим последовательность слов /3 ] ,...,Р„. Полагаем Р, = а(. Пусть уже построены слова 01,. . . , /3,-, I < п, причем ф(<7, 0f) {Ф'(я\, Pi), , Ф'(Я1, Pi)}- Очевидно, при i = 1 последнее условие имеет место. Так как автомат V сильно связный, то существует слово 7,-, 7, ЕЛ *, для которого /3,-7,-) = <?. Пусть ,, (3,7,-) = q'-.. Положим по определению 0, + 1 = (3,7,Имеем ф(с/, Р/+,) = ф(д, Р<)ф(^, Pi),7i)$(q, а,-.). С другой стороны, ,/3, + | ) = iJ'(7z+1,/3,-7,)i//'(t/y., а,.), откуда и полу- чаем \jj(q,&i+l) Ф Ф'(я'1+1,(3,+1)• Выполнение условия ф(д, (3, + |) { ^'(q\, Р/ +, ф'(д-,Р,-+1)? очевидно. Таким образом, получаем в результате слово /3„ = /3, для которого ф(д, /3) {^'(q'i, (3),. . . . Ф'(д'п, Р)}, и приходим к противоречию с условием И< V'. Следовательно, каждое со- стояние автомата V неотличимо от некоторого состояния автомата V'. Покажем теперь, что каждое состояние q' автомата V' неотличимо от 4. В.Б. Кудрявцев 49
некоторого состояния автомата V. Пусть q G Q и q" — состояние авто- мата V , неотличимое от q. Так как автомат И' сильно связный, то сущест- вует слово a, a GА*, для которого <p'(q" ,а) = q'. Для произвольного слова 0,0GA*, имеем ф(д, ар) = ф'^", а(3), откуда Ф(*р(я, а), Р) = Ф'(д', Р), т.е. q неотличимо от состояния <p(q, а) автомата V. Итак, V ~ V ’ и теорема до- казана. Как следствие доказанной теоремы получаем, что при V G Z (А, В) в классе К\/(А, В) OZ(A, В) содержится с точностью до изоморфизма един- ственный автомат приведенного вида. §3 . r-НЕОТЛИЧИМОСТЬ КОНЕЧНЫХ АВТОМАТОВ Введенные в предыдущем параграфе отношения слабой неотличимости и неотличимости конечных автоматов были основаны на совпадении результа- тов преобразования этими автоматами, находящимися в некоторых началь- ных состояниях q и q' соответственно единственного слова а из А * и мно- жества всех слов а из А *. Возможно, однако, рассмотрение промежуточ- ных ситуаций, когда сравниваются результаты преобразования автоматами V и V' I множества, состоящего из заданного числа г, г = 1, 2,..., слов, т Q принадлежащих А *. При этом получаем следующее понятие г-неотличимо- сти конечных автоматов. Автомат V = (A, Q, В, <р, ф) называется г-неот- личимым от автомата V' = (A, Q', В, у’, ф’), если для любого- состоя- ния q, q & Q, и любых слов at, ..., аг из А* найдется такое состояние <7 ’» Q' е Q', что $(.q, а,) = ф' (q ', а() при всех i = 1,..., г. При г = 1 введенное понятие г-неотличимости автомата V от автомата V' совпадает с понятием слабой неотличимости V от V '. По аналогии с введенным выше обозначением для слабой неотличимости г-неотличимость автомата V от V' обозначаем V < V'. Автоматы V и V' называем г-неотличимыми, если V < V' и V' < К; r-неотличимость автоматов V и V' обозначаем V ~ V '. Очевидно, что отношение г-неотличимости автоматов является от- ношением эквивалентности на множестве К (А, В), причем из г +1-неотли- чимости автоматов вытекает их. г-неотличимость. Связь между отноше- ниями г-неотличимости и неотличимости автоматов устанавливается в сле- дующей теореме. Теорема 2.5. Автоматы V и V ' из К (А, В) являются неотличимы- ми тогда и только тогда, когда для любого г =1, 2, 3, ... они являются г-неотличимыми. Доказательство, г-неотличимость неотличимых автоматов V, V ' очевидна. Пусть автоматы V и V' являются г-неотличимыми для любого г = 1, 2, ..., но не являются неотличимыми. Тогда у одного из них, напри- мер у V, найдется такое состояние q, которое отличимо от всех состояний автомата V1. Обозначим Q' = {qJ ,..., q’t] множество состояний автома- та V' и рассмотрим для каждого i = 1, ..., п слово аг G А* такое, что ф(д, а(.) ¥= ф' (q. , а,) (здесь ф, ф' — функции выходов автоматов V и 50
V', A - входной алфавит этих автоматов). Тогда не существует состоя- ния q' автомата V ' такого, что ф(у, а,-) = 0' (q*, а, ) при всех i = 1, ...,п, и автомат V ' не является «-неотличимым от автомата V, что противоречит условию. Теорема доказана. Таким образом, неотличимость автоматов есть в некотором смысле ’’предел” их r-неотличимости при г . Как показывает следующая теоре- ма. при различных г отношения г-неотличимости автоматов из К (А, В) различны, так что ’’предельное” отношение неотличимости автоматов не совпадает с отношением /'-неотличимости ни при каком фиксированном г. Теорема 2.6 [50]. Если | А | > 2, | В | > 2, то для любого натураль- ного г существуют такие автоматы V и V' из К (А, В), которые являются r-неотличимыми, но не г + 1-неотличимыми. Доказательство. Обозначим А — {а ь а2,..., ат}, В = {Ьь Ь2, ... ..., Ьр) и рассмотрим автоматы Vt = (A, Qit В, у,, ф[), где Q, = {^(- 0, t, ..., q(- i = 0, 1, ..., г, а функции 0(. определены посредст- вом диаграмм Мура, приведенных на рис. 2.7 (случай i = 0) и рис. 2.8 (слу- чай i ¥=0). Пусть V = Vi + ... + Vr, V 1 = Vo + Vi + ... + Vr. Для установ- ления того, что V и V ' не являются г + 1-неотличимыми, рассмотрим со- стояние qQ г автомата V' и слова а0 = fli ... аха2, tt| = <Zi ... а ха2, ... г г — 1 ..., аг = а2. Обозначим функции выходов автоматов V, V' через ф, ф'. Имеем Ф’ (q0,r’ “о) = Ро = ... г?,, ф' (q0)., а() = = Ьг ... bib2, г + 1 г - i i — 1, .... г. Предположим, что q — состояние автомата V такое, что 0(q, at) = ф' (qO r, а() при всех i = 0, 1, ..., г; пусть q = qs t, где s G {1, ..., г }, t G {0, 1,..., r + 1}. Если t G {0, 1, ...,r - 1}, to 0(q, ttj) = Рис. 2.8 4* 51
= bx ... ¥= |3|; при t = г + 1 получаем у (7, а0) #= (30. Поэтому остается Г возможным лишь случай t = г, причем в этом случае as) = bx ... ... bx ¥= и снова приходим к противоречию. Таким образом, указанного выше состояния q автомата V не существует, и автоматы V, V ' не яв- ляются г + 1-неотличимыми. Установим г-неотличимость этих автоматов. Соотношение V < И7 оче- видно; для установления соотношения V' < V укажем по произвольным состоянию q' автомата V' и словам аь ..., аг из А * такое состояние q автомата V, что 4>(q, а,) = фг (с/r, a,), i = 1, ..., г. Если q' - состояние одного из автоматов V\, ..., Vr, то достаточно положить q = q'. Пусть = Qot’ f е {О, Е •••> г + О• Если t Е {0, 1, ..., г — 1}, то полагаем q = qr t; если t = г + 1, то q = q l r + х. Пусть t = г. Представим каждое слово а,- в виде ах ... а х а'(, где / ( > Ои слово а’ начинается с буквы, от- Ъ личной от a J,. Если {/' 1; ..., j г} = {0, 1,..., г - 1}, то <р0 (q, ) Ф q0 0 ни при каком 1=1, ..., г, и можно положить q = q t r + L. Наконец, в случае {О, 1, ..., г - 1}\{/ ,, ...,! г} Фф выбираем к Е {0, 1,..., г — и полагаем q = qr_k r . Теорема доказана. Как уже отмечалось в предыдущем параграфе, класс Ку (А, В) всех ав- томатов V ' из К (А, В) таких, что V ~ V ', может содержать несколько попарно неизоморфных автоматов приведенного вида. В этой связи возни- кает естественный вопрос о конечности числа таких автоматов, содержа- щихся в Ку (А, В). Для ответа на него введем понятие автомата с конечной памятью. Пусть V = (A, Q, В, <р., ф) — конечный автомат, q Е Q. Если су- ществует такое натуральное к, что для любых слова а, аЕ Ак, а также со- стояния q‘ из Q из равенства ф(д, а) = ф(с[', а) вытекает равенство (q, а) = (q ’, а), то говорим, что q есть состояние с конечной памятью. Порядком памяти состояния q называем в этом случае наименьшее к, для Рис. 2.9 которого из условий ф^,а) = ф(д', а), а Е Ак, q' Е Q, вытекает ^(q,a) = y(q’ ,а). Если все состояния автомата V суть состояния с конечной памятью, то называем V автоматом с конечной памятью; порядком памяти автомата V назовем наибольший из порядков памяти состояний этого автомата. Рас- сматривавшийся ранее автомат-задержка является, очевидно, автоматом с конечной памятью. Пример автомата, не являющегося автоматом с конеч- ной памятью, приведен на рис. 2.9. Если V — автомат с конечной памятью, 52
то информация о входном слове а достаточно большой длины (например, равной порядку памяти автомата К) и выходном слове ф(д, а) позволяет однозначно восстанавливать ’’заключительное” состояние автомата (q, а); для автоматов с бесконечной памятью это, вообще говоря, неверно. Имеет место следующее утверждение, характеризующее отношение 1-неотличимо- сти автоматов. Теорема 2.7 [20]. Для любого автомата V из К {А, В) множество рассматриваемых с точностью до изоморфизма автоматов приведенного ви- да, содержащихся в к} (А, В), конечно тогда и только тогда, когда авто- мат приведенного вида, неотличимый от V, есть автомат с конечной памятью. Доказательство. Пусть V £ К (А, В) и V' — автомат приведен- ного вида, неотличимый от И, V' = (A, Q, В, р, ф). Как легко видеть, Ку (А, В) = Ку, (А, В). Предположим, что V' есть автомат с конечной памятью; пусть порядок памяти автомата V ’ равен к. Установим конеч- ность множества автоматов приведенного вида, содержащихся в К'у, (А, В) (изоморфные автоматы не различаем). Пусть V " ^К'.ДА, В), V" = (A, QВ, «р/, ф’), причем V" — автомат приведенного вида. Рас- смотрим произвольные состояния q, q' из Q’ и слово а, Ak. Предпо- ложим, что ф’(q, а) = ф’(q а). Для произвольного слова /3, (3G А*, суще- ствуют s, s ' из Q, для которых выполняется ф(х, а(3) = ф'^,а(}), ф(х', а(3) = ф’(q', а/3). Из равенства ф(х, а₽) = ф’(ц, а|3) вытекает ф(з, а) = ф'(q, а), а из равенства ф(хг, а/3) = фг^г, а/3) вытекает ф(з', а) = ф'^’, а). С учетом равенства ф'(q, а) = ф'(д’, а) это дает ф($,а) = ф(я', а), и далее <р (s, а) = q>(s а). Теперь имеем ф(з, а(3) = = ф(з, а) ф (р (s, а), (3) = ф(з',а) ф(р>(з',а),(3) = ф(х\а|3), откуда ф'(ц,а0) = фг (q', а(3), Равенство для концов слов ф'(<7, а(3), ф’(q',a(3) имеет вид ф'(q> '(q, a), /3) = ф'(д> \q а), (3). Итак, состояния <р ' (q, а) и Р ’ (q \ а) автомата V " неотличимы; с учетом того, что V " имеет приве- денный вид, эти состояния равны. Таким образом, из равенства ф' (q, а) = = ф’ (q‘, а), где а € Ak, q, q' G Q', вытекает равенство р ' (q, a) = = р ' (q ', a), т.е. V " — автомат с конечной памятью, и порядок его памяти не более к. Оценим сверху число состояний автомата V ". Если q, q' 6 Q1, q ¥= q', причем ф’(q, a) = ф’(q ', a) для всех а из Ak, то для каждого сло- -ва а из А*, длина которого больше чем к, имеем (обозначив а ~ а^, aj € Ак) следующие соотношения: ф'(q, a) = фс (q, a,) ф'(р (q, at), a2) = = фг (q aj) ф'(<р (q aj), a2) = ф’ [q ', a). В результате состояния q и q ' оказываются неотличимыми, что невозможно, Поэтому число состояний автомата V " не более, чем число отображений в: Ак Вк. Число таких отображений в равно |Д | л 1 \ так что 12*1^ Конечность множества автоматов приведенного вида (рассматриваемых с точностью до изоморфизма), содержащихся в Klv,(A, В), является теперь следствием S3
конечности множества попарно нензоморфных автоматов в К (А, В), число fcl Л I состояний которых не превосходит | В | 1 Предположим теперь, что V' не является автоматом с конечной па- мятью. Тогда, согласно установленному выше, каждый автомат приведен- ного вида V " = (4, Q *, В, q> ', ф*)из Ку, ( А, В.) не является автоматом с конечной памятью. Рассмотрим произвольный такой автомат V ”; обо- значим Q’ = {qi, -,Яп}- Существуютq(t, qirj & Qj, i0 0, а также слово 3 e A"2, для которых ф* (qio ,0) = ф' (qf ,,3), y' (fli, ,0) (Я),, 3)- Обо- значим 3= 3(1) ... 3(и2). Для каждого s = 0, 1,..., я2 имеем 3(1) ... ... 3(s)) , 3(1) ... b(s)). При этом, очевидно, существуют sit s2£ £ {0, 1, ..., n2}, sY < s2, такие, что p '(<?(„,3(1) ... 3(sJ = \qie 3(1) ... - 3(s2)), 3(1) ... 3(s0) = p'(qfe 3(1) ... 3(s2)). Обозначив qit = 3(1) ... 3(s,)), qfi = v\qlt, 3(1) ... 3(sx)), y = 3(^ + 1) ... ... 3(s2), будем иметь qti = V»’(«»,, ?)> Qj, = ?); ^’(<71,, ?) = = Ф '(Я)г > ?)• Так как q^ q^ , то существует слово, отличающее друг от друга эти состояния. Пусть 3 — кратчайшее такое слово, 8 = d(l) ... d (г). Если при некотором 8 * выполняется 8 = у 8 ’, то ф'(q^ ,8 ')^ф’ (q^, 8’ ), что противоречит выбору 8. Поэтому существует т, т € {sx + 1, ..., s2}, для которого 3(Si + 1) = </(1), ..., b(m — 1) = d(m — sx - 1), b(m) Ф #= d(m - J,). Обозначим q = </>'(qZj, 3(si + 1) ... b(m - 1)), q' = — '(Bh> 3(sx + 1) ... b(m - 1)), a = b(m) ... 3(s2)Z>(sx +1) ... b(m — 1), a' = d(m - sx) ...d(r). Имеем ip ' (q, a) = p '(q^ ,yb(si +1) ... fe(m-l)) = = <₽'(<?<,, 3(sx + 1) ... b(m - 1)) = q, ^'(q^a) = у , 73(st + l) ... ... b(m - 1)) = q', ф'(я,а) = ф'(<?', a), ф'^, a') = $'(qti, 8) ¥= #= Ф'^Я/^ 3) = Ф* (Я af).’ Обозначим a = a(l) ... a(k), к — s2 — sY, a' = a f(l) ... a '(I), I = r — m + Si +1. Рассмотрим автомат V,n = = (A, Q", B, <p", i//"), у которого Qn = Qr U {q{/- | i = 1, ..., n, j = = 1, ..., к}, где qij — некоторые попарно различные элементы, не принадле- жащие Q', а функции у",#" определяются следующим образом: 1) 4>"(qij,«(/')) = qi,j + \ в случае i е {1.и}и j £ {1, ...,к- 1}; ^"(<?ifc»a(M) = t/i+i.i в случае i £ {1, ..., и-1), <pn(qnk, a (fc)) = q. Для любых i £ {1, ..., и) и j & {1, ..., к } выполняется (дц, а (/)) = = i//’(^,a(l) ...а(/)). 2) Если i £ {1, ..., и) и ^'(qi, ¥= ф1 (q, а‘~1а'), то ^*(qii> а ' (1)) = f'(q,a ’(1)), ^”(QZi, а '(!)) ~ ^'(Я, а *(1)). Если же a/-1a') = i//'(q, a1'—1a'), то pu(qi i,a '(I)) = ^\q',a '(1)), ^Н(Яц> a ’(О) = Ф*(Я Ч1))- (Заметим, что а ’(I) =#а (1), и поэтому значения <pn(qii, а/(1)), фм(яп,а f(l)) в п. 1) не определены.) 3) В остальных случаях <р" Qq(l,a) = <p(q,a(l) ... a (f - 1)<г), ^"(qi/,^) = Ф<Я,а (1) ... a (j - l)a), i = 1, п, j. = 1, ..., к, а £Л. 54
Кроме того, *p"(qi,a) = $"(qita) - ф'(У1,а) при всех i = 1,.... и, а. € А. Пусть i G {1, п}. Если ф’(д{, а,-1а’) =# ф'(q, а‘^}а'), то ^”(<7п, а/-1а’) = ф'(q, а’~1~)ф'(д, а') = ф*(q, а1.~ 1at) Ф Ф ф*(qit а'-1а') = ф"^, а'-1»'). Если же ф’^,, а'_1а') = ^ф'^, а'~1 а'), то находим фп(qt ^а*-1а’) = ф'(д',а‘~1)ф’(qf,а') =£ Ф ф1(д, a*-1af) = ф'^,-, а’~ laf) = ф°(ч,-, а{-1а*). Таким образом, в каждом из случаев состояние qlt отличимо от состояния q,. Поэтому автомат приведенного вида, неотличимый от Vnt, имеет не менее чем и+1 состояние. Покажем, что автоматы Vr" и V” 1-неотличимы. Для этого достаточно установить, что если i G {1,..., п}, j G {1,..., к} и у G А*, то су- ществует i' G{1, ..., п } такое, что tj, 7) = Ф,,(я{ t, ?)• Если у имеет начало вида a(j) ...а(к)а*а *(1),где i — 1и ф*= = ф'(q, a*+ia'),. то в качестве q., берем состояние >р'(д’, а(1) ... ... a(J - 1)); иначе - состояние ... a {j - 1)). Равенство ф"(д^, 7) = ф"^.,, у) проверяется теперь непосредственно по опреде- лению автомата Kw. Итак, V"1 G Ку,(А, В), Обозначим = F(y,t). Автоматы К ”, F(V"), F (F ( VпринадлежатКХу,(А, В); каждый из них является автоматом приведенного вида, причем число состояний ав- томатов в указанной последовательности неограниченно растет. Отсюда и вытекает бесконечность множества автоматов приведенного вида, содер- жащихся в Ку t (А, В). Теорема доказана. Из доказанной теоремы видно, что множество попарно иеизоморфных автоматов приведенного вида, содержащихся в Ку (А, В), может быть как конечным, так и бесконечным. Для произвольного натурального г > 1 обозначим (А, В) класс всех автоматов V из К (А, В) таких, что V ~ V . Следующая теорема характе- ризует отношение г-неотличимости автоматов для случая г > 1; из нее вид- но принципиальное отличие рассмотренного выше случая г = 1. Теорема 2.8 [50]. Для любого автомата V из К (А, В) и любого на- турального г > 1 множество рассматриваемых с точностью до изоморфиз- ма автоматов приведенного вида, содержащихся в Ку (А, В), конечно. Доказательство. Без ограничения общности можно считать, что V — автомат приведенного вида, V = (A, Q, В, у, ф), А = {а 1; ..., ат}, Q = {qi, •••> qn}> В = {Ьг, ..., Ьр}. Обозначим В множество наборов <7= (а1( ..., а„), где a, G Q U {0}, i = 1,..., п, 0 Q, оФ (0,..., 0). Пусть ф — 'ф('о, а.) - функция, сопоставляющая каждому набору о= (аь ..., an), o~G S, и символу a G.A такой символ b€ В, что при некотором i € выполняется о, € Q, Ф(а{, а) = Ь. Определим автомат ^(ф) = (А, В, В, >р., ф) такой, что ^ ((»!,..., a„),а) = (af, ...,о^), где a' = <p(oit а) при выполнении условий о,- G Q, ф((о1, ...,оп),а) = ф(а1га),п = Ов про- 55
тивном случае, i = 1, п. Так как множество различных функций ф ука- занного вида при фиксированном автомате V конечно, то конечным оказы- вается и множеством автоматов И/( ф). Пусть теперь V* = (A, Q', В, р!, ф') - автомат приведенного вида та- кой, что V ~ V', г. > 2. Для произвольных состояния q' С Q' и слова а € А * обозначим а (д *, а) такой набор (oj,..., оп), что о, = (д,, а) при а) = ф'(ч', а) и а, = 0 в противном случае, i = 1, ..., п. Так как V ~ V', то существует состояние q автомата V, для которого ф(д, а) = = ф'(д', а); отсюда вытекает q(q', а) =# (0, ..., 0), т.е. q(q', а) € S. Предположим, что 'otq', ai) = o(q', «г). аь а2 e А*, и покажем, что в этом случае выполняется pr(q', a/) = p'(q', а2). Действительно, в про- тивном случае в силу приведенности автомата V * нашлось бы слово а та- кое, что ф' (р' (д', oti), а) Ф ф'(у>’(д', а2), а). Так как V ~ V' и г > 2, то существует состояние q, автомата V такое, что ф(д,, ага) = - ф'(д' , сца) и Ф(Д[, а2а) ~ Ф'^ч' ,а2а}- Отсюда получаем Ф(Д1>&С) — = ф'(д', aj), ф^, а2) = ф'(д', а2). Обозначив о(д', aj) = 'o(q', а2) = - (ffi,..., а„), находим далее О/ = y?(c7,-,ai) = P(4i> а2). Наконец, полу- чаем ф’&’Сч’, aj), a) = ф(ф(Д{, a,), a) = ф(р(^{) a2), a) = = Ф* G5 f 0? *, “2), a) и приходим к противоречию. Фиксируем теперь состояние q' автомата V1 и обозначим S множе- ство всех наборов из S, представимых в виде о(д', a), а G А*. Согласно доказанному утверждению каждому набору a = o(q', а) соответствует не зависящее от выбора слова а состояние q~ автомата V ' такое, что ai = а ч о = р'(д',а). Определим функцию ф^, = ф^ а, а), так, чтобы при Sq, выполнялось а) = ф '(д~, а) = ф'(р'(ча),а), а в остальных слу- чаях значение функции ф^, выбиралось произвольно с соблюдением приве- денного выше условия на функцию ф. Рассмотрим автомат W( ф^,) = ( A, S, В, Pq>, Фд1) и покажем, что состояние (qi, ..., qn) этого автомата неотличи- мо от состояния q'. Заметим сначала, что для любого а £ А * выполняется соотношение Pq>{(fli, ..., Qn), a) = 5(q’, a). Действительно, при a — Л. это соотношение очевидно. Пусть оно уже установлено для всех слов а дли- ны к - 1 и а — слово длины к, а = а (1) ... а (к}, к> 1. Имеем ..., Qn), a) - ip А а (д’,а ] },а(к}). Обозначим o(q', а ] ) = (Oi, ... 4 к- 1 к- 1 < an),^Pq•(.o(,q,, а ] ), а(Л)) = (_Д1', ..., Gn). Тогда nJ = ^(apa(fc)) к - I при а; £ Q, Фч,((а1, оп), а (к)) = Ф(оь а (к)), и о- = 0 в противном случае; а(- = р(д,, а ] ) при ф(ч,-, a ] ) = ф'(</, а ] ) и о(- = 0 56 к - 1 к - 1 к - 1
в противном случае, i = 1, п. Далее, ф^/ССО], а„), а (к)) = = Ф' ' (q ', « ] ), a (к)). Объединяя перечисленные условия, получаем, к - 1 что o' = <р (q i, а) при ф(сп, а) = ф'^', а) и о- = 0 в противном случае, что и доказывает соотношение ?ч»((41> ..., qn), а) = o(q',a). Предполо- жим, что состояния q' и (<?i, ..., qn) автоматов И* и отличимы. Рассмотрим кратчайшее слово а - а (1) ... а (к), a G А*, различающее эти состояния. Тогда ф <(<р »((q1, ..., qn), а ] ), а (к)) ¥= q к - 1 * Ф’(*Р'^а ] ), а (А)). С другой стороны, ((^i, ••• ,Q„),a ] ), fc- 1 к - 1 а (*)) = ф i (а (q’, а ] ), а (А)) = ф'(у' (д', а ] ), а (А)), и прихо- к—1 fc- I дим к противоречию. Обозначим ()' = {q\, ..., q'n,} . Согласно доказанно- му каждое состояние q\ неотличимо от состояния (qi, ..., qn) автомата IV ( Фо»),- i — 1, •••> п', причем в силу приведенности автомата V' состоя- ния (qi, qn) различных автоматов И/(Ф{/>),1 = 1, ..., п , отличимы друг от друга. Поэтому для любых автомата W( ф ,) и а Е А однозначно м находится автомат aj), состояние (qt, ..., qn) которого неот- личимо от состояния , ((Qi, ..., qn),a) автомата №(ф »), что позволяет Ч(- 4j по множеству {W (ф ), ..., W (ф > СМ однозначно с точностью до изоморфизма восстановить автомат V'. Отсюда и из конечности множест- ва М и вытекает утверждение теоремы. § 4. ОТЛИЧИМОСТЬ СОСТОЯНИЙ КОНЕЧНЫХ АВТОМАТОВ Пусть V = (A, Q, В, *Р, ф) - конечный автомат и М С А *. Состояния qt и q2 автомата V назовем неотличимыми множеством М, если для любого а из М выполняется ф(д1, а) = ф(д2, а), ъ противном случае qi и q2 назы- ваются отличимыми множеством М. Очевидно, неотличимость множест- вом М есть отношение эквивалентности на Q, разбивающее Q на некоторые классы эквивалентности Qi, ..., Qm . Обозначим {Qi, ..., Qm} = Ry (M). Докажем ряд утверждений, устанавливающих возможность различения со- стояний автомата некоторыми специальными множествами входных-слов. Такое различение бывает необходимо при решении задач, связанных с рас- познаванием неизвестного состояния автомата либо некоторых свойств неизвестного состояния. Если Мх, М2 СА‘, то посредством MtM2 далее обозначаем множество всех слов вида а2, где а] 6М,, а2 £ М2. 57
Лемма 1. Пусть V = (A, Q, В, ф) - конечный автомат, MCA*, A G М. Тогда Ry (М U AM) есть некоторое подразбиение разбиения Ry (М). Если Ry (М U AM) = Ry (Af), то любые два состояния автома- та V, попадающие в один и тот же класс разбиения Ry(M), неотличимы. Доказательства. Пусть Ry (М) — {Qi, ..., Qm } . Обозначим М' = М U AM. Если состояния q{ и q2 автомата V неотличимы множест- вом М\ то они неотличимы множеством М, т.е. Rv (Мг) — подразбиение разбиения Ry (М). Пусть Ry (М1) '= Rv (М), т.е. отношения неотличимо- сти множествами М и М' совпадают. Предположим, что существует к € {1, ..., m} , для которого Qk содержит два отличимых состояния 74, q2 автомата V. Выберем класс Qk и состояния qit q2 так, чтобы слово а, раз- личающее 71 и q2, имело наименьшую возможную длину. Обозначим а = а (1) ... а (и). Если п = 1, то а = а (1) € М' и ф(Ч1,а) ¥= ф(у2,а), что невозможно в силу Я r (М1) = Rv (Л/). Пусть п> 1. Рассмотрим состояния q{ = а(1)) И q2 = y(q2,a(\)). Имеем ф^[,а(2) ... а(п)) =# =#= Ф(я2, д (2) а. (п)), и так как а имеет наименьшую возможную длину, то q{,q2 входят в различные классы разбиения Ry (X): q{ G Qk q2 е Qk2> к2. Поэтому существует слово /3 из М, Р = 6(1) ... Ь(пг) такое, что Ф(у/{, Р) ¥= Ф(д2, Р). Но тогда ф(В1,а(1)Ь (1) ... Ь(п')) = = tf/(4i,a(l)) Ф(в’1, Р) ¥= Ф^2,а(1))ф(ц2, Р) = ф(д2, а (1)6(1) ... 6 («')), т.е. слово а (1)6 (1) ... 6(п'), принадлежащее М', различаетqit q2. Это про- тиворечит условию Ry (М) = Rv (М1), так что любые два состояния из од- ного и того же класса разбиения R v (М) неотличимы. Лемма доказана. Лемма 2. Пусть V = (A, Q,B,<p, ф) — конечный автомат, МС А*, Дем, |7? у (М) | = m, [QI = п. Тогда любые два отличимых состояния qi, q2 автомата V отличимы множеством М U AM U А2М U ... U Ап~ тМ. Доказательство. Предположим, что существуют отличимые со- стояния qlt q2 автомата V, не отличимые множеством М U AM U ... ... U Ап~ т М. Обозначим М, = М U AM U ... U А‘М, i = 0, 1, ..., п — т. Тогда для каждого i = 0, 1,..., п— т— 1 состояния^, q2 попадаютв один и тот же класс разбиения Rv(Mj), т.е. по лемме 1 имеем Ry (X+i) * Ф Ry(Mj). Так как каждое 7?K(Mi+1) есть подразбиение разбиения Rv(Mt), то |7?r (Mz+1)| > |Як(ЛТ/)| + 1. Отсюда | Rv (М,) | > т + i, i = 0, 1, ..., п — т, | Rv (Мп_т) \ > п, т.е. Ry (Мп_ т ) состоит из одно- элементных подмножеств и qi, q2 не могут входить в один и тот же класс этого разбиения. Полученное противоречие и доказывает лемму. Теорема 2.9 [40]. Состояния qY и q2 конечного автомата V = - (A, Q, В, у, ф) неотличимы тогда и только тогда, когда они неотличимы множеством А' " С До ка з ате л ьство. Ясно, что если qit q2 неотличимы, то они неот- личимы множеством Предположим, что q^ и q2 отличимы. Рас- смотрим слово а, для которого ф(д2,а) Ф ф^2,а). Обозначим а=а (1)... 58
- а (и), a' = a(l) ... a (n - 1), q\ = a'), q2 = 4>(q2, а'). Тогда Ф(д{,а (ri)) =# ф(д2, a(ri)), т.е. состояния q{ и q2 отличимы множеством A' = A U {Л} и (^4Z) Г 2. Поэтому, согласно лемме 2, состояния Qi, Qi отличимы множеством A U A2 U ... U Л1 -1, т.е. для некоторого слова а длины, не большей \Q\ — 1, выполняется =£ ф(д2,а). Если длина I слова а меньше чем |0| -1, то для слова а' = аа . . . а длины 121—1 (а — произвольный символ из Л) также выполняется Ф^1, а' ) Ф ¥= Ф(&2, а1)- Поэтому qit q2 отличимы множеством и теорема доказана. Заметим, что в общем случае оценка \Q\ — 1 длины слов, отличающих состояния автомата V, не допускает уменьшения. Чтобы установить это, до- статочно рассмотреть пример автомата, диаграмма Мура которого приве- дена на рис. 2.10. Пусть V = (A, Q, В,у, ф), V*= (A, Q', В, у', ф' ) - конечные авто- маты; М С А*. Отношение неотличимости множеством М можно задать также на парах (q, q ' ) состояний автоматов V,V'. Состояния q, q ' при этом полагаются неотличимыми множеством М, если для любого а из М выполняется ф(ц, а) = ф'(q а). Имеет место следующая оценка длины слов, достаточных для различения состояний автоматов V и V1. Теорема 2.10 [40]. Состояния qi и q{ автоматов V= (A, Q, В, ф) и V* = (A, Q* ,В, , ф') неотличимы тогда и только тогда, когда они неотличимы множеством А 1 + 1 ® 1 — 1. Доказательство. Без ограничения общности предполагаем, что Q П Q’ =ф. Пусть V" = (A,Q U Q',B,<fi", ф"), где <fi”(q, а) = = ^(q,a), Ф’’(с[,а) - Ф($,а) при q е Q и <р ”(q, а) = q>’(q,a), ф”(д,а) = - ф’(q, а) при q G Q'. Очевидно, состояние qt автомата V неотличимо от состояния qv автомата V’ , а состояние q\ автомата V — неотличимо от состояния q\ автомата V" . Если q\ и q{ отличимы как состояния автома- тов V и V ', то они отличимы и как состояния автомата V''. По теоре- ме 2.9 они отличимы (в V " ) множеством А' *+' 1 _ 1. Очевидно, они от- личимы этим множеством и как состояния автоматов V, Теорема доказана. Как и в случае теоремы 2.9, оценка | Q | + | Q' | — 1 длин слов, отличаю- щих состояния автоматов Vи V', не может, вообще говоря, быть уменьше- 59
на. Пример автоматов У и V', у которых длина \Q | + 12'| - 1 является необходимой для различения некоторой пары состояний, указан на рис. 2.10 (диаграмма Мура автомата У) и на рис. 2.11 (диаграмма Мура автомата У'); в этом примере предполагается, что т = \Q'\ > \Q\ = п. Если состояния q и q' автоматов V, V' неотличимы (либо неотличимы множеством М), то инициальные автоматы Vq, V'q' называются неотличи- мыми (соответственно неотличимыми множествомМ). Иначе Vq, ^’назы- ваются отличимыми (отличимыми_множеством_М). Если ф, ф — функции выходов автоматов V , V', ц ф(д, а) Ф ф' (q', а), то говорим, что слово а отличает Vq от Vq'. Рис. 2.11 Инициальный автомат Vq = (A, Q, В,<р, ф,q), у которого любые два состояния отличимы друг от друга, причем для любого q'&Q существует а&А* такое, что q' = <p(q, а), называем инициальным автоматом приведен- ного вида. Как легко проверить, для любого инициального автомата Vq существует единственный с точностью до изоморфизма автомат Vq> приве- денного вида, неотличимый от Vq. При этом инициальные автоматы УЧ1, неотличимы (либо неотличимы множеством М) тогда и только тогда, когда неотличимы (неотличимы множеством М) соответствующие им инициальные автоматы приведенного вида. Поэтому при изучении неотличимости инициальных автоматов ограничимся рассмотрением иници- альных автоматов приведенного вида. Теорема 2.10 устанавливает, что для проверки отличимости инициального’ автомата приведенного вида Vq = (A, Q, В, д>, ф, q) от произвольного инициального автомата приведен- ного вида Vq' = (A, Q', В, <р', фq'), у которого | Q'\ (п — некоторое фиксированное натуральное число), достаточно использовать множество Л 1 1 + 1, Покажем, что для решения той же задачи достаточно использо- вать некоторое меньшее по числу»элементов множество слов из Л*, длина которых не превосходит | Q | +« — 1. Ограничимся при этом случаем | Q | < п. Введем ряд необходимых понятий. Пусть Vq = (Л, Q, В, д>, ф, q) — инициаль- ный конечный автомат приведенного вида. Базисом достижимости автомата Vq называем произвольное множество { ai,a2,.. . ,а„) слов в алфавите Л, удовлетворяющее следующим условиям: 1) {^,a,)|z = l,2, ...,п} = 2; 2) если z ¥=/, I, j е {1,2,.. ., п}, то <p(q, af) =# y(q, оу); 3) если а( = а'{а, аЕА, то a/G {a!,...,a„} , z = 1,...,и. Л e м м а 3. Каждый конечный инициальный автомат приведенного вида К, = (Л, Q, В,<р,ф, q) имеет хотя бы один базис достижимости. Доказательство. Положим = А. Пусть при некотором /, j > 1, уже построены попарно различные слова ai,..., су в алфавите Л, причем 60
p{q, д,)#= p{q, д,-) при i ФG {1,. . . ,/}, и для каждого слова д,- такого, что cx-i ¥= Л, а,- = а\а, a G А, выполняется ot\ G {ад,. . . , а;}, z = 1,. . . ... ,j. Если j = п = | Q |, то есть базис достижимости автомата Vq. Иначе рассмотрим такое слово а, что <p{q, а) {p(q, Д,) | i = 1,2,. . . ,/} . Существует начало 0 слова а, а = 00', такое, что ip(q, 3) G {^(^,д()|/ = = 1,2,...,/} (например, Р = Л). Выберем такое начало Р наибольшей воз- можной длины; пусть а — первый символ слова 0' (очевидно, Р #= Л). Тогда p(q, 0а) {y(q, a,) Ii = 1,2,. . . ,/} . Рассмотрим z0 G {1,2,. . . , j}, для которого p{q, Р) = y(q, Д/о), и положим д;- + i = а,0 а. Таким образом, последовательно находим значения , д2,... , ап; в результате и получаем базис достижимости { ,..., дп } автомата Vq. Лемма доказана. Базисом отличимости конечного автомата приведенного вида V = = (А, Q, В, р, ф) называем произвольное непустое множество {од, . . . , Дп } слов в алфавите Л, удовлетворяющее условиям: 1) для любых различных состояний q, q' автомата V существует слово д(-, z G {1,. . . , п} , такое, что ^(q, д() =£ ф (q1, а{); 2) если д(- = аа a G А, то а,- G {«!,..., ап} , i - 1,. . . , п; 3) никакое собственное подмножество множества {од, . . . , д„} не удовлетворяет условиям 1), 2). Лемма 4. Каждый конечный автомат приведенного вида V = = (A, Q, В, р, ф) имеет хотя бы один базис отличимости, число слов в кото- ром не более | Q |. Доказательство. Если все состояния автомата V неотличимы друг от друга, то базисом отличимости этого автомата служит множество { А }. Пусть V имеет хотя бы одну пару отличимых состояний. Полагаем Ол = А. Очевидно, Ry{ {А}) = {Q) , поэтому на основании леммы 1 заклю- чаем, что R [/({ A} U A) =£R [ ({ А} ), т.е. существуют такие состояния q, q' автомата К, что ф&а) Ф ф^а) для некоторого a G А. Полагаем д2 = а. Очевидно, и({ a-j, а2} ) | >2. Пусть при некотором j, 2 < j < | Q |, построены попарно различные слова ai , ...,д;- такие, что |Лр({а1, • • • . . . ,дД )|>/, Rv{ {«!,.. . ,д/+ J )=#=/?r({ai,... , д,-}) для i = 1, . . . . .. ,/- 1, и каждое непустое д,- представимо в видеаД/, а G A, д,- G {од, . . . . .. , д; } , i = 1,. . . ,/. Если каждый класс разбиения R [, ({ Д1( . . . , Д/}) состоит из одного элемента, то { Д[... ., д;-} удовлетворяет условиям 1), 2) из определения базиса отличимости. Поэтому в качестве искомого базиса отличимости можно взять минимальное по включению подмножество множества { ,... , Ду} , удовлетворяющее условиям 1), 2). Пусть теперь существует класс разбиения R (/({ ,. . . , Ду}), состоящий более чем из одного элемента. Тогда/< IQ |. По лемме 1 имеем Rр({ од , . . . , Ду} U U А • { од ,. . ., Ду}) ¥= R г((од , . . . , Ду}), т.е. существуют такие состояния q, qпринадлежащие одному классу разбиения и( { Д],..., Ду}), что при некоторых a G A, i 6 {1,. . . ,/} выполняется ф (q, aoq) #= ф (q', ад(). Полага- ем д/+Тогда |7?,({ Д!,..., д/+,}) | > |/?и({“1 ,•••,“/)) I + 1 > >/ + 1; прочие условия для {Д[,. . . , Ду + J также выполняются. Итак, последовательно находим слова Д],д2,..., причем при некотором/ < IQ | из { Д1,... , Ду} извлекаем базис отличимости. Лемма доказана. Теорема 2.11 [14, 15]. Пусть Mi - базис достижимости конечного инициального автомата Vq приведенного вида, М2 - базис отличимости 61
автомата = (A, Q, В, IQ I < n. Инициальный автома/ Г’ • приведенного вида, = (A, Q', В,р' ,ф', q'i), имеющий не более чем п состояний, отличим от V,, тогда и только тогда, когда он отличим от К. 4 1 Ч j множеством Mi А п “ 1 1 + 1М2. Доказательство. Пусть автомат V’ • отличим от Vcs;; покажем, что он отличим от Kt?j множеством Л/,/1" ’' 1 + 1Л/2 • Без ограничения общности можно считать, что Q П Q' = ф. Обозначим Mi = {а1; . . . , а(q ।} , «1 = А, = = / (а\,оч), i = 1, • ..,121. Предположим, что при некоторых i, j из {1, , | Q I} состояния qt и qj отличимы словом а, а G М2, причем ф (Яь а)=Ф (4/,а) • Тогда ф^\, а,а) = = Ф , ос,Уф Xq't, оГ), = ф'(<?; ,а; )ф' (q-, а), причем ф(д^ а,а) = = Ф(41,<*/“)= ф(Я1,<Х/)ф(Яра),гр.е ФО?,, а) #= Ф(<??,а). Поэтому либо ф (д 1, ауа) #= ф '(q[, ayaj, либо ф (<? j, cqa) Ф ф '(q [, а,а). Как легко видеть, а есть начало некоторого слова из Л'1-|^|+1Л/2 (здесь используется условие 2) из определения базиса отличимости). Поэтому в рассматриваемом случае F^'- отличим от множеством MtA"~ |+ {М2. Пусть теперь для любых состояний <?,-, qj, i,j G {1,. . ., | Q |} , слова а из М2 такого, что ф(Д/, а) ф фф^, а), выполняется ф '(qi, а) =# ф ’(q^, а). Тогда состояния <?/,. . . ,q^Q । попарно отличимы множествомМ2,т.е. | Ry’(AF2) | > > IQ |. По лемме 2 любые два различных состояния автомата V' отличимы множеством М2 U АМ2 U . .. U A SM2, где s = 12 * I ~ I R\-'(M2 ) | < я - | Q |. В силу условия 2) из определения базиса отличимости, каждое слово множества А ‘М2, i = 0, 1,.. ., s, есть начало некоторого слова, принадлежа- щего Ап~^М2. Поэтому любые два различных состояния автомата V’ отличимы множеством А"~1@ !М2. Любые два различных состояния авто- мата V также отличимы этим множеством. Пусть теперь V" — автомат из доказательства теоремы 2.10, V" = (А, Q U Q', В, р", ф"), <p"(q, а) - p(q, а), ф"(д,а) = ф(д,а) при <? G 2 и p"(q, а) = p'(q, а), ф"(д,а) =ф'(ц,а) при q &Q'. Классы разбиенийRv(Ап~ 12}M2),RV’(An~ 1 Q ]Л/2) одноэлементные. Поэтому каждый класс разбиения Ry"(A'’~ 1^1М2) состоит не более чем из двух элементов, причем один из этих элементов принадлежит Q, а другой - Q'. Если состояние <?, принадлежит одноэлементному классу разбиения Ri "(An~' 'л/2), то <?i отличимо от q[ множеством Ап'~^М2. Так как каждое слово множества/1" ^^М2 есть начало некоторого слова, принад- лежащего Ап~ 1 +1М2, то <?[ и qi отличимы и множеством Л" ~ 1 +1 М2, а в силу A G Mi — также множеством MtAn ~ 1 + 1М2. Пусть теперь разбиение RV"(An _| 2 1 М2) содержит класс {q i, q'} , q rG Q'. Если qi и q' неотличимы, то q'^q[, и тогда q[ отличается от q' (а одновременно и от qi) множеством Ап^ 1^1М2. Как и выше, получаем, что qi отличается от <?i множеством 1 + 1М2. Если же t?[ и q' отличимы, то по лемме 1 имеемRV"(An~ 12 'М2 U Ап~ 121+ хМ2) ¥= RV"(An~ ^1М2). Это означает, что существуют два состояния, принадлежащие одному классу разбиенияRi/"(An~ ,М2) и образующие одноэлементные классы разбие- HHaRy"(An~ 'л/2 U Ап~ 1 + 1М2) = Ry"(An~ 1 + ХМ2). Обозначим q 62
то из указанных состояний, которое принадлежит <2-Оно отличимо от каждого состояния q ' из Q' множеством Ап~ 121 + 1М2. Пусть q = <p(q i, а), 6/' = 1, а),а G . Тогда существует а'6/I”'1 1 + 1Л/2, для которого 4/(д,а.') Ф Ф(я', »'), так что ф(^!,аа') Ф ф(q[, аа'), где аа' G еМх Ап - 1 2 1 + 1М2. Теорема доказана. Таким образом, для распознавания отличимости инициального автомата приведенного вида Vq = (A, Q, В, <р, ф,q), IQI п, от произвольного иници- ального автомата приведенного вида, имеющего не более чем п состояний, достаточно рассматривать множество слов М1Ап “ 12 1 + 1М2, где — базис достижимости автомата Vq", М2 — его базис отличимости. Очевидно, 1 - = 121; \М2 |, согласно лемме 4, можно выбрать не превосходящим I Q |. Поэтому |М1 Ап~ 12 | + ХМ2 | < I0I2 IA Г“ 1 2 |+ ‘.что при |Л I > 2,121 > 2 меньше числа\А |” + 121“ 1 всех слов изЛ” + 12 ‘.При этом длина каж- дого слова из Mi не более | Q | — 1; изЛ/2 не более | ЛГ2 I - 1 (так как все начала каждого слова из М2 входят в Л/2), |Л/2 1^121- Таким образом, дли- на каждого слова из Л/,/1” '2' + 1Л/2 не превосходит 2( | Q | — 1) + + п - 121 + 1 =п + 121 - 1. § 5. КРАТНЫЕ ЭКСПЕРИМЕНТЫ С КОНЕЧНЫМИ АВТОМАТАМИ При анализе поведений конечных автоматов часто возникает задача рас- познавания тех или иных свойств изучаемого автомата в процессе ’’экспе- римента” с ним, т.е. подачи на вход автомата различных входных последо- вательностей и наблюдения за его реакцией. Известной до эксперимента является лишь неполная информация об автомате (например, некоторый класс диаграмм Мура, которому принадлежит диаграмма автомата либо известна диаграмма Мура, но неизвестно начальное состояние и т.п.). Зада- ча заключается в таком проведении эксперимента, чтобы необходимая ин- формация возникала с наименьшими (в том или ином смысле} затратами. В настоящем параграфе будут рассмотрены так называемые кратные эксперименты с конечными автоматами, т.е. такие эксперименты, когда возможна одновременная подача различных входных слов на различные ’’экземпляры” одного и того же конечного инициального автомата. Крат- ные эксперименты возникают также при наличии у исследуемого автомата ’’кнопки возврата”, переводящей его в исходное состояние после подачи каждого очередного входного слова. Если экспериментатор до начала эксперимента определяет те слова, которые будут подаваться на вход автомата, и не изменяет,их множества в процессе эксперимента, то получаем так называемые безусловные крат- ные эксперименты. Если же по ходу эксперимента возможно изменение множества предъявляемых автомату входных слов в зависимости от его реакции на предъявленные ранее слова, то говорим об условных кратных экспериментах. Перейдем к формальным определениям. Кратными безусловными экспериментами в алфавите А называем произвольные конечные множест- ва слов в этом алфавите. Результат применения кратного безусловного эксперимента М к автомату Vq = (A, Q, В, £, ф <у ), MQA *, есть множество 63
{(а, ф(<7,а)) | a GM} . Множество результатов применения кратного без- условного эксперимента М к всевозможным конечным автоматам vq с фиксированными входным алфавитом A,MGA *, и выходным алфавитом В обозначаем I (М, А, В). Кратным условным экспериментом в алфавитах А, В называем произ- вольное конечное ориентированное от корня дерево Т, снабженное следую- щей разметкой: 1) каждой вершине и дерева Т сопоставлен некоторый кратный безус- ловный эксперимент Mv в алфавите Л; 2) выходящим из вершины и дерева Т ребрам сопоставлены взаимно однозначно элементы некоторого подмножества множества I(Mv,А,В). Для определения результата применения кратного условного экспери- мента Т к автомату Vq = (A,Q,B,<p.y,q) рассматриваем последователь- ность и!, р!, v2,. •., рп-1, vn, где и 1 - корень дерева Т, pj - ребро, веду- щее от и(- к vp+1,i =А,... . ,п— 1; результат от,- применения к автомату Vq безусловного кратного эксперимента Mvi сопоставлен ребру р(, i = 1,... .1; из vn не выходит ребро, отмеченное результатом тп приме- нения MVn к Vq. Очевидно, такая последовательность всегда существует и единственна. Полагаем по определению результат применения экспери- мента Т к Vq равным объединению m, U... Umn результатов применения к Vq безусловных экспериментов ,... “ Будем рассматривать следующие меры сложности кратных эксперимен- тов. Пусть М— некоторый кратный эксперимент (безусловный в алфавите А либо условный в алфавитах А, В). Обозначим R результат применения эксперимента Мк автомату Vq = (A,Q, В, <р, ф, q). Длина результата R есть величина max lai, кратность результата R есть величина I R I , (a, P)eR объем результата R есть величина S lai (заметим, что для каж- (а, р) е/г дого слова а в R имеется не более одной пары вида (а, $)). Длину, крат- ность и объем результата R обозначаем соответственно / (R), k(R), и (R). Пусть К — некоторый непустой конечный класс инициальных конечных автоматов с входным алфавитом А и выходным алфавитом В. Длина, кратность и объем эксперимента М относительно К определяются соот- ветственно как 1(М,К)- max l(R), k(M,K}~ max &(/?), v(M,k}= ~ r<=r = max и (R), где R - множество всех результатов применения экспери- R £ R мента М к автоматам, принадлежащим классу К (в случае безусловных экспериментов эти величины не зависят от К). При проведении экспериментов с автоматами характерными являются задачи контроля правильности функционирования и обнаружения неисправ- ностей, а также задачи ’’расшифровки” внутреннего устройства автомата. В соответствии с этим выделяются следующие два типа экспериментов. Пусть К - некоторый класс инициальных автоматов с входным алфа- витом А и выходным алфавитом В, М— кратный эксперимент. Если Vq G G К и результат применения М к Vq отличен от результата применения М к любому автомату Vq• из К, Vq' =# Vq, то говорим, что Месть эксперимент тестовый для Vq относительно класса К. Если результаты применения М 64
к любым двум различным автоматам из К различны, то М называем диаг- ностическим экспериментом для класса К. Тестовые эксперименты позво- ляют выделять автомат Vq среди всех таких автоматов Vq' , Vq’ =# в которые может превратиться автомат Vq при появлении в нем неисправнос- тей некоторого априорно допустимого вида; множество всех таких авто- матов V'q' вместе с ’’эталонным” автоматом Vq и образует класс К. Диаг- ностические эксперименты используются для идентификации неизвестного автомата с некоторым автоматом из класса К. Опишем алгоритм, позволяющий находить все диагностические для конечного класса К попарно отличимых инициальных автоматов приведен- ного вида кратные безусловные эксперименты, имеющие наименьший объем [62]. Пусть К ={ ,.. ., V‘r(A, Q(, В^, i = 1,. .., т. Произвольное слово а, а (Е А *, разбивает К на классы . .. ...,Кр, состоящие из автоматов, перерабатывающих а в одно и то же выходное слово. Обозначим это разбиение 7^. Пусть М& Da,M= {V^ 71 < ... < 7S. Обозначаем QM (а) = , (д/,, а),... • • •, fPjs (flj , а)). Слово а из А * называем неприводимым относительно К, если выполняются условия: 1) для любых двух различных начал а и а" словаа, таких, что Da’ = Da", найдется класс М разбиения Da' , содержащий более одного элемента, для которого 2л/(а') Qm(“"); 2) для любого собственного начала а слова а выполняется Da‘ #= £)а. Из определения видно, что в неприводимом слове а, где а = а(1) . .. • •• a(i), при переходе от подслова а(1) к подслову а(1) ... ... a (J +1) происходит либо размельчение разбиения, либо изменение сос- тояния автомата, входящего в группу разбиения, содержащую более одного элемента. Отсюда следует, что длина неприводимого слова не превосходит (т - 1)гт, где г — наибольшее число состояний автоматов из К. Неприво- димое слово а называется максимальным, если любое его продолжение не является неприводимым. Очевидно, что любое неприводимое слово может быть продолжено до максимального и длина максимального слова не более чем (т — 1 )rm. Пусть {«1,... ,oiq} — кратный безусловный эксперимент, диагностичес- кий для А, причем слово а,-, z G{ 1, ...,<?} , не является неприводимым. Если существует собственное начало а/слова а(- такое, что Da\ = Da., то эксперимент {aj,.. ., а;_ х, a(-,az + j,. .., а7} также диагностический для АГ. Если же для некоторых двух начал. а(- = а(1). .. а(у') и а.'-= а(1) . . .a(v") слова а,- = а(1)... а(и) таких, что Da'. =Da"., v' < v", и любого класса М разбиения Da' , содержащего более одного элемента, выполняется 2м(а/) = = 2м(а"), то рассматриваем слово а,- = а(1) . .. а(у')а(у" + 1)...а(р). Очевидно, эксперимент {сч ,.. . , а,-..! ,а,, а, + j,.. ., aq} диагностический для К. Таким образом, в каждом из случаев получаем диагностический для К эксперимент, объем которого меньше объема эксперимента {«!,... • aq}. Поэтому диагностический эксперимент наименьшего объема должен состоять из неприводимых слов. 5. В.Б. Кудрявцев 65
Опишем процедуру, позволяющую находить все максимальные неприво- димые слова (а тем самым и все неприводимые слова). Эта процедура зак- лючается в последовательном построении дерева Т, каждому ребру которо- го приписана буква из Л, а каждой вершине — разбиение Da, где а — слово, образованное отметками ребер пути, ведущего от корня дерева Т к указан- ной вершине. Пусть уже построена некоторая вершина и дерева Т, причем а — соответствующее этой вершине слово из А *. Для каждой буквы а из Л рассматривается разбиение Daa . Если Daa Ф Da, то вводится новая верши- на w дерева Т, к которой от и проводится ребро с отметкой а. Если же Daa ~ Da, то для каждого начала |3 слова а (возможно, совпадающего с а) такого, что Dp =Da, сравниваются наборы QM.(aa) и QM.(/?), где М/, i = = 1,2,...,к, — классы разбиения Da , содержащие не менее двух элементов. Если для каждого i = 1, .. . , к выполняется QM.(aa) = то ребро с отметкой а из вершины не проводится; иначе это ребро проводится так же, как в случае Daa Da. Пусть Т' — дерево, получающееся из дерева Т последовательным отбра- сыванием, пока это возможно, таких концевых вершин и, которым сопос- тавлено разбиение, совпадающее с разбиением той вершины, от которой к и ведет ребро. Из построения ясно, что максимальные неприводимые слова суть все слова а, соответствующие концевым вершинам дерева Т'. Для каждой пары Vq., Vq. автоматов из К, i Ф], составим теперь выражение од V ... Vац где оц— все неприводимые слова а, такие, что Ф/(<7/>а)- Пусть R — формальная конъюнкция всех выражений Rij. Преобразуем ее по дистрибутивности к виду дизъюнкции конъюнкций слов из Л*, после чего упростим по правилам: CVCD-+ С, С CD = CD. Полученное выражение R', как нетрудно проверить, перечисляет все фор- мальные конъюнкции элементов диагностических экспериментов для К, составленных из неприводимых слов и минимальных по включению; из них и выбираем все диагностические эксперименты наименьшего объема. Перейдем к рассмотрению оценок сложности экспериментов. Начнем со случая, когда в качестве множества К берется множество [К] всех инициальных автоматов Vq, получающихся при различном выборе началь- ного состояния у заданного автомата V = (A, Q, В, р, ф). В этом случае неизвестным до эксперимента является лишь начальное состояние автомата. Используя результаты § 4, получаем следующие утверждения. Утверждение 1. Если V - автомат приведенного вида, имеющий п состояний, то для [К] существует кратный безусловный диагностический эксперимент длины и — 1. Утверждение 2. Если Vq - инициальный автомат приведенного вида, имеющий п состояний, то существует кратный безусловный тестовый для Vq относительно [К] эксперимент длины п — 1. Согласно теореме 2.9 в качестве соответствующего эксперимента в этих утверждениях достаточно взять множество всех входных слов длины п — 1. Пример, приведенный после доказательства теоремы 2.9, показывает, что оценка п — 1 для каждого из утверждений, вообще говоря, не может быть понижена. В ряде задач до эксперимента диаграмма Мура автомата неизвестна, а известна лишь верхняя оценка числа состояний автомата. В этих задачах 66
в качестве класса К можно брать класс К (А, В, п) попарно отличимых инициальных автоматов приведенного вида, содержащий для каждого инициального автомата Vq = (A, Q, В, <р, , имеющего не более чем п состояний, некоторый автомат Vq', неотличимый от Vq. Далее предполага- ем, не оговаривая особо, что IА | > 2,\В I > 2. Длина экспериментов, диаг- ностических для К (А. В, п), характеризуется следующим утверждением. УтверждениеЗ. Наименьшая длина кратного (как безусловного, так и условного) эксперимента, диагностического для К (А. В, п), равна 2п - 1. Доказательство утверждения 3 непосредственно вытекает из теоре- мы 2.! О и приведенного после ее доказательства примера. Наименьшие объем и кратность кратного безусловного эксперимента, диагностического для К (А, В, п), обозначаем соответственно иА в (п) икА в (п). Установим ряд оценок этих величин. Т еорема2.12 [15]. Имеют место следующие соотношения (асимпто- тика берется при п-+°°): (2и —1)|А I2" -1 3 —п 2п 1 при \А 1=2, Ю —п 3" 1 при \А | = 3, 9 nlAI"”1 при |A|G{4, 5,6}, п(\А I - I)2"-4 --------------при нечетных | A I, \А | > 7, 22”-5 п\А\п~2(\А\-2)п~2 22"'5 при четных \А IJ А | > 8; 9 — 2"-1 при \А\ = 2, 8 IA I"-1 при | Л | е {3,4, 5,6} , Ml2"’1 >kAtB(n)^ (Ml-l)2"-4 , , ----:-------при нечетных | A I, \А I > 7, 22«-4 1Л Г~2(|л | - 2)"-2 22„-4 пРи четных \А |, | А | > 8. Доказательство. Согласно теореме 2.10 любые два различных автомата из К (А, В, п) отличимы некоторым словом длины 2п — 1. Поэто- му множество М = А2 п ~1 представляет собой кратный безусловный диаг- ностический эксперимент для К (А, В, п). Кратность к (М,К (А. В. п)) его равна \А I2"-1, объем равен (2п-- 1)\А 12"“1. Отсюда и вытекает vAB(n) <(2п - 1)|А \2n~l ,kAfB(n)<\A |2”-1. Перейдем к получению 5* 67
нижних оценок. Обозначаем далееА ={а1; . .. ,ат} , В ={bv,... ,Ьр} . Рассмотрим следующие случаи: Х.т G {3,4, 5,6 }. Обозначим ЦА1) = (А, {<?[} , В, ft, ф!, , где ft (.Я i, ai) = Я i, Ф i (Я i , ai) = b i, i' = 1,. .. , m. Для произвольного слова у из А”^1, у = с(1) .. . с(п -1), определим автомат = (A, {q t,. . ., qn} , В,^2, у, V'2,t><7i)- Полагаем ч>2,у(Я1, с(0) = ?7+i при i= 1,...,я-2 и Ч>2,у(Яьа]) ~ Яп в остальных случаях; Ф2,7(<7и-1, c(h - 1)) = Z>2, а в ос- тальных случаях Ф2,у(Яь aj) =bi - Пусть М — кратный безусловный экспери- мент, диагностический для К (А, В, п). Тогда существует слово а, а Е М, такое, что ф i (<7!, а) ¥= ф2/7(q i, а). Это означает, что слово ф217 (q i, а) содер- жит символ Ь2 , а = а'а", Ь2 = ф(<7i, а'), ф = ф2>7. Пусть а' = d(l) . . . d(n ), 4>~4>2,у Имеем d(n ’) - с(п — 1), ,d(l) .. . d(n1)) = qfty. Далее, d(n'— 1) = c(n — 2), y(qi ,d(V) . . . d(n'~ 2))=qn_2 и т.д. В конце концов получаем с?(1) = с( 1),. . ., d(n') = с{п — 1), т.е. а'= у, и слово у является началом слова а. Таким образом, каждое слово, принадлежащее А"-1, является началом некоторого слова из М; отсюда вытекает, что число слов в Мне мейее |А |"“1, а сумма их длин — не менее (п— 1) IА |"“1. При п ->00 получаем, таким образом, что п \А |"“1, кл,в(.п) IА 1. В случае т = 3установим более сильную нижнюю оценку для Кл,в(я). Обозначим 1£(3) = (А,{<71, <?2, <7з }> В, <£з > Фз ,<7i), где ^{q ь ft) = q2, ^(Bl.ft) = ft(ft,ft) = Яз, ft) = <7з, Ч>з(Я з, at) = Яз при 1= 1,2,3; Фз(?2, ft) ~ Ь2 ив остальных случаях ф3(<7,-, «/) = Ь{. Для каждого слова у изА"-2, у = с(1). . ,с(п — 2,)«,определим автоматы V^,y\ Обозна- чим Уч(',7) = (A,{qt,...,q„ }, В, ^-7, ф,-7, qi), i =4,5. Функции опре- деляем следующим образом: a) ^i,y{4 \,ai}=qi, ft,7(<? i,а2)= ft,7(ft, ft) = Яз; б) ft,7(<?2,c(l)) =^4,</’1,7(<72,а/) =<7з при а;-¥=с(1); в) ft,7(ft,fl/) = ft, /=1,2,3; г) ft,7(Q/,c(/-2)) = <7/ + 1,ft 7(<7/,afc) = ^3 при ак =# c(j - 2),j = 4,.. ., ..., п — 1; Д) <й,7(<7и>с(л - 2)) = <7! при 7 = 4 и 4>i,y(qn, с(п - 2)) = q2 при 7 = 5, ^1,у(.Яп, aj) =Яз при а,- с(п - 2). Полагаем ф(/у(<72,а2) = £2 и ф/>7(<7;, ак) = Ьг в остальных случаях. Для каждого слова S из Ап~3, S = с?(1).. ,d(n — 3), определим автома- ты } = (A, {qi....qn} ,В, (ft- 6,ф,- &,Я1) , i = 6, 7, 8,9. Функции ft-5 определяем следующим образом: а) ^,6(9i’ai) = <72,ft,6(<7i.a2)=<73 при 7 = 6, 7 и ft;s(<7! ,а2) = <7п при i' = 8,9, &'в(я1 Лз) = Яп при 7 = 6,7 и ft,s(<7i ,#з) =Яз при 7 = 8,9; б) ^,8(.Я2,а,) = яп, /= 1,2,3; в) ft,s(<7з,с?(1)) = <?4 и ft,6(<73, я,) =<7и при г) ^(Gj, d{j - 2)) =<7; +i Hft’StapizJ^n npntffc ¥=d(/-2),/ =4,...,я-2; Д) ^i,b (Яп - i,d(n - 3)) = qt при 7 = 6,8, 6 (qn _ j, d(n - 3)) = q2 при 7 =7,9. 68
Если <7,- #= d(n - 3), jG {1,2, 3 } , то (£,-,б(<?„_ i, а,) = qn. е) ^Pi,n\Qn >Gj) ~ Qn > i ~ 1,2, 3. Полагаем i4z,sG?2 , «2) = #2 и Ф,-,й(.<7/, <7fc) = ^i в остальных случаях. Очевидно, все введенные автоматы Vg3\ Vgi,y\ попарно отличи- мы. Каки выше, обозначим через М произвольный уратный безусловный эксперимент, диагностический для К (А, В, п). Пусть фз (q i, а) #= фц y(q j ,а) при некоторых а 6 М, i G {4, 5, ... ,9} .Выберем начало а'слова а, удов- летворяющее условию фз(<?1, а') =# Ф/,7(</1, а') и имеющее наименьшую возможную длину. Рассмотрим следующие подслучаи: 1) I = 4. Для любого (3 GA* имеем ф з(<7з, (3) = Ф4,у(Яз, 0) = bi . . . . Поэтому для произвольного начала а ' слова а , отличного от а', невоз- можно одновременное выполнение условий ip3(qi, а") = <7 з, <£4,7(371 >а") =<7з- Отсюда вытекает, в частности, что а = а1 а[. Если первый символ а слова. <*1 отличен от с(1) (как и выше, 7 = <?(1) .. . с(и - 2)), то <£з(<?1, а{а) = q3, <£4,7(<7i ,aia) = q3, Фз(Я1, aia) = ф4гУ(д1, а^) = b, где b=bi при а Ф а2 и Ъ = Ь2 при а = а2. Поэтому а = с(1). Рассуждая далее аналогично, получаем последовательно, что второй, третий и т.д. символы слова а/равны соответ- ственно с (2), с(3), ... .В результате имеем а' = ai 7а 2 при некотором а2 изЛ*. Очевидно, <£з(<?1 ,<717) = <?з, <£417(<71, <71 7) = <?!. Поэтому первый сим- вол слова а2 есть <71, а'= <?i 7<7i а!). Если первый символ слова аз есть<72, то а'= <71 7<7i а2; в противном случае необходимо а3 = с(1)а4, и снова полу- чаем, что началом слова а'3 должно служить слово 7, т.е. а' = а 17<7i 705. За конечное число шагов получаем, таким образом, представление слова а' В ВИДе (<7i 7)'<7i<72 , г>1. 2) i = 5. Рассуждая аналогично случаю 1 = 4, получаем, что а' имеет вид «17(7)'«г, где />0. 3) i = 6. Легко заметить, что состояния q2, q3 автомата Р, неотличи- Tz(6,8) , _ мы соответственно от состоянии q2, qn автомата и, . Поэтому а - = <72ai для некоторого a'i из Л*. Далее, слово at должно иметь своим на- чалом слово 5, так как в противном случае для некоторого собственного начала а" слова а имели бы <£з(<71, о") = <?3, <£6 g(37i >а") = Qn- Таким об- разом, a'=<725a2 при некотором а2. Имеем ^3(<7i,<72S) = ^3,^6i5(^1,<725)= = Qi. Если первый символ слова а2 есть аг, то необходимо а2 = <?i<?2, и а' представимо в виде a2bala2. Если же первый символ слова а2 отличен от <71, то необходимо а2 = а2а.’з, и снова находим а'з=Ъа4, а =а2да2да4. Повторяя проведенное рассуждение конечное число раз, получаем пред- ставление слова а' в виде (<725)'<7i<72, где 1. 4) i = 7. Рассуждая аналогично случаю i = 6, получаем а' = а2да2. 5)7 = 8. В этом случае получаем представление слова а в виде (<735)'<7]<72, где 1 > 1. 6) 7 = 9. В этом случае а = <735<72. Сопоставим каждому слову 7. из Ап~2 такие принадлежащие М слова 0:4(7), Os(7), что фз (771,0,(7))^ 'bt.-yiQi >а<(7))> 7 = 4,5. Каждому слову S из Ап~3 сопоставляем такие принадлежащие М слова a6(5), a7(S), а8(5), а9(5), что ф3(<71, а,(5)) #= ф(- s(q1, а((5)), i = 6, 7, 8,9. Из найденных выше 69
представлений для начал слов “j(7),“i(5) вытекает, что а, (7) #=«/(5) при всех допустимых i, j, у, 8 (так как отличаются первые символы этих слов), a/(S)#=a/-'(5') при /€{ 6, 7), /'6 {8, 9} и любых 8,8'. Поскольку 07(7) ~ = aty^, а, (8) = aj-8%' при некоторых то “1(7) =#0/(7') при i, j & G {4, 5} и 7 ¥= у', а, (8) #= ау(5') при i, j G {6,7, 8,9} и 5 #= 8'. Если а4 (7) = = “s(7), то рассмотрим начало (а17)'а1а2 слова 0,(7) и начало aiy(y)' а2 слова «5(7), z> 1, />0. Если i= 1 и / = 0, то слова Я17Я1 и «17а2 — на- чала одного и того же слова, что невозможно. Поэтому либо i > 1, либо j > >0, т.е. слово а4 (7) имеет не менее двух непересекающихся вхождений слова7- Если а6(5) = а7(5), то получаем, что слова а6(5) и а7(5) имеют соответственно начала (a2S)'aia2 (z> 1) и а28а2, откуда i > 1, и a6(S) имеет непересекающиеся вхождения слов 8а2,8а1а2. Наконец, случай a8(S) = a9(S) невозможен, так как иначе слова а38а3 иа38а2 являлись бы началами одного и того же слова. Итак, в М можно выделить семейство непересекающихся подмножеств {<*4(7), а5(у)}, {“б(5), а?(5)}, {“8(5)}, {а9(5)},где 7бЛ"-2, 5 ЕЛ"-3, причем a4(7) = a5(7) влечет наличие в а4(у) двух непересекающихся вхождений слова 7, aa6(S)=a7(S) — нали- чие в “б(5) непересекающихся вхождений слов 802,80^02. Поэтому сумма длин слов как в {“4(7), “5(7)}, так и в {а6(5), а7(5)} всегда не менее 2(п - 2). Объем эксперимента М, следовательно, не менее чем 2(п - 2)3"“2+ + 2(н — 2)3" -3 + 2(п — 2)3"-3 = (и — 2)3" ~1. Отсюда и вытекает оцен- 10 -1 ка и^ в(л)— лЗ" . Б. т = 2. В этом случае обозначим /=11,12, yGAn~2, Vq\’S\ /=13,14, 8GAn~3, автоматы, получаемые из Kqj3\ 7,7\ Kq заменой входного алфавита на {ai,a2} и соответствующим су- жением функций переходов и выходов. Очевидно, все такие автоматы попарно отличимы. В произвольном кратном безусловном эксперименте М, диагностическом для К (А, В, п), выделим для каждых 76 Л"-2, 5 G Л"-3 слова ац(7), “12(7), “1з(5), “14(5), удовлетворяющие условиям ^ю(Ч1,“1(7))* ^•,т(<?1,“>(7)), i = 11,12, ^io(^i,“<(5)) * ^i,6(«i,“f(5)), i = 13,14. Как и в случае т = 3, устанавливаем, что “11(7) имеет начало вида (я 17)'я 1Я2, />1, “12(7) имеет начало вида zzi7(7)'^2, />0, “1з(5) имеет начало вида (a28)la3a2, z^l, “i4(5) имеет начало a28a2. Поэтому равенство а,(7) = а,(6)невозможно; если “,(71) =“/(7г), то 71 =72; ес- ли “/(51) = 0/(52), то Si =52. Если “i 1(7) = “12(7), то для некоторых слов имеем (а1у)‘а1а2^ = /717(7)^2^’, 1,/>0. Отсюда (агу)'- ^^2^= = 7/fl2^ - Если i= 1, то либо 7 = 1/1, либо y = aia2y' при некотором 7 G G Л"-4 . Если же z > 1, то Д17 = 7/?1, откуда 7 = (Д1 )"-2. Итак, либо у есть слово (zzi)"-2, либо началом у служит слово а\_а2. Таким образом, в М выделяется семейство попарно непересекающихся подмножеств вида {“и(7),“12(7)}, {“1з(5),“14(5)}, где yGAn~2, 5еЛ"-3. Число двух- 70
элементных подмножеств {«i i (7), «12 (7)) при этом не менее 3-2" 4 - 1 (все слова 7, отличные от (fli)"-2, не имеющие своим началом слово а^)- Поэтому |М| > 2 (3 2"~4 - 1).+ 2”'4+ 2"“3 =9-2”-4 - 2, откуда 9 ^л,в(я)^—2" . Сумма длин слов в каждом из подмножеств 8 {«11(7),«12(7)}, { «1з(5),«14(6)} не менее 2(и - 2) (рассуждения те же, что при т = 3), так что объем эксперимента М не менее 2 {п — 2) X 3 3 X (2" ~2 + 2"~3)= — {п - 2)2п~1. Отсюда находим иА в (п) — п2п~1. 2 2 В. т > 6. Представим т в виде r + s+1, r> 1, х > 1, и обозначим?!, = = {a i...ar}, А2 = (ar+i,..., ar+s). Определим для каждого слова 7,7 G e(Aj ХЛ2)"“2, 7 = (c(l),d(l)).., (с(и - 2),d(« - 2)), автоматы Г^’7) = = (/1, {Qi, ...,qn}, В, <piy, 7=15,16. Функции определяем следующим образом: а) Ф1>7(91,«т) = 92, ^,7(9ь«/) = <7ь / = 1,2,. .. ,т - 1; б) ^у(Д2,ат) = Я2, ^,7(?2.с(1)) = <7з; при az/{am,c(l)} выполняет- ся ^j7(92,<Z/) = 9i; в) у {qj,c(j- 1))= qj +!, </>,• y{qjt d{j - 2)) = qj_ 1, <p{qj, am ) = q2; если ak£ ^{c(j -\),d(j-2),am}, to y{q/,ak} = q1, j = 3, .. . ,n - 1; r) = <72, Щ,у(яп, d{n~ 2)) = 9»-1При i= 15 иy(q„,d(n-2))= = qi при 7 = 16, <pity{qn, aj) = q1 при af am, d{n - 2)} . Полагаем ф(- y{q2, am) = b2 и фг- y{q/, ak) = bi в остальных случаях. Как нетрудно проверить, Ф15>7(41, атс{1). . . с{п - 2)d{n - 2).. .d{V)am) =# * Ф16,7^1’«mc(l). ..с{п- 2)d{n - 2).. .d{l)am), т.е. автоматы v£S,Y> И Vq 16’ 7) при любом 7 ИЗ (А , X А 2)” '2 отличимы друг от друга. Пусть М — произвольный кратный безусловный эксперимент, диагности- ческий для К{А, В, п). Сопоставим каждому слову 7 из {At ХЛ2)"~2 слово 0(7) из М такое, что фг 5,7(91 , «(7))^ Ф 16,7(91, «(7))- Выделим начало «'(7) слова а(у), удовлетворяющее условию Ф15>7(91, «(7)) Ф16,7(91, «'(7)) и имеющее наименьшую возможную длину. Очевидно, последний символ слова «'(7) есть ат, d{-j) = dl{y)am. Если «1(7) не со- держит символа ат, то </>15,7(91,«'1(7)) = <7i, ^16,7(91,«'1(7)) = 91, и при- ходим к противоречию с условием Ф1 5i7(9i , «'(7)) Ф16,7(91, «'(7))_- По- этому а! (у) можно представить в виде «2(7)дт«з(7), где «3(7) не содер- жит символа ат (возможно, 0:3(7) = Л). Так как 5j7(9i,d2{y)am) ~ q2, ^16,7(91;«2(7)^) =92, то Ф15,7(92,«3(7)^) * Ф16,7(92,«3(7)^)- Обозначим «з(7) = я'(1) • • • а'(р), р>0, q(i)= ^5,7(92, «'(1) q'(i) = =‘/’i 6,7(92, и'(1) • • • и'О)), 7 = 0,1,... ,р. Очевидно, q{p)=£q'{p). Рассмот- рим наименьшее z0, такое, что q(io):?t9'Go), 1'0 е {1, •« • > Р) • Имеем q{i0 - l)=<z'(zo - l) = 9n, a'{i0) = d{n-2), q{i0) = qn-\, q'{io) = qi- При всех i e {0, 1,. .. , i0 - 1} должно выполняться q (i) G {q2, , qn}, при 71
i > 0 - a'(J) G {c(J - 2), d (J - 1) } , где q (i) = qf-. Рассмотрим последователь- ность p0, ,... , v(q _i , где v0 = 0, vi+i =Vj+ 1 в случае a'(j +1) G Ai и Vi + i =vt ~ 1 в случае a'(i + 1)ЕЛ2. Тогда как нетрудно проверить,(/) = = qv. + 2, /' = 0,1,...,/0 — 1, откуда р,о _i = л — 2. Поэтому для каждого / из {1,2,.. ., п - 2} существует /,- G {0,1,..., /0 - 1} такое, что v,. = j, -i =j -1. При этом q(if- 1) = <7/ + 1, ?(*/) = ?/+2, т.е. = c(f), j = = 1,2,... , n — 2. Таким образом, по слову <*3(7) оказывается возможным однозначно восстановить слово с(1)с(2) ... с(п - 2). Так как слово <*3(7) не содержит символа ат и </(io)=<7i, то q'(p) = Я 1. Поэтому ^1б,т(<72,аз(7)«т) = £1, >Д15,т(?2,а!з(7)ате) = Й2,и^(р) = q2. Следователь- но, при всех г G {/0, /0 + 1,.. . , р } q(i) G {q2,. . ., qn}, причем, обозначив Я(}) = Я], (c(j - 2),d(j - 1)}. Это позволяет продолжить определен- ную выше последовательность р0,...,р/ _i до последовательности v0,р1;... ...,vp (р,- + 1 выражается через р,- так же, как и выше) с сохранением условия ./?(/) =//р.+гМ = 0, 1,... ,р. Так как р1о = и-2, рр = 0, то для каждого j G {1,2,..., п — 2 } существует i'- G{ i0, i0 + 1, ... ,p } такое,что v.'j = 7 - 1, vt’ri= j. При этом q(/'•) = qf +1, q(i- - 1) = qf + 2, т.е. a'(i- > d(j). Итак, по слову a'3 (7) восстанавливается однозначно как слово с(1)... ... с(п — 2), так и слово d(l) . .. d(п — 2), т.е. восстанавливается слово 7. Заметим, что длина слова «3(7) не менее чем | р0 - р,0 _i I + | р,-0 _i - vp | = = 2(п — 2). Таким образом, каждому слову 7 из (А2 X А2)"~2 можно со- поставить вхождение слова аз(7)аот в некоторое слово из М, причем (так как 7 однозначно восстанавливается по </3(7)) эти вхождения для различ-, ных 7 не пересекаются друг с другом. Объем эксперимента М оценивается теперь снизу величиной (2(п - 2) + l)(rs)"-2 = (2п - 3)rn~2sn~2; от- сюда и вытекает vA B (и) > (2и — 3)ги-2х"-2. В случае нечетного т, т = ... . М|~1 , _ «(Ml “ IА |, выбираем г = s = --— и получаем vA, в (и) >,-~2ЯТ5------; Ml Ml в случае четного т выбираем г = —-— , s = —-—1 и получаем z _ иМ1”-2(М1 — 2)"-2 Z ч _ , в («) >;------------------- (где п °°)• Чтобы оценить снизу чис- 2 (>' v) ло слов в экспериментеМ, рассмотрим автоматы Vq^ = (A,.{qi,... ,qn}, (1 7) (i— 2 7) В, <pty, , qi), / = 17,18. Отличие автомата Vq^ от Vqt ’ состоит в том, что для каждого jG {1,.. ., п} полагается у(qp am) = qi, причем в качестве начального состояния выбирается состояние q2. В остальном эта автоматы определяются одинаково. Нетрудно проверить, что любое tzOT/Y) tz(18,t) Т,(17,т') .,(18,7') слово, отличающее 01 > не отличает от Vq^ ни при каком 7' #=7. Поэтому | Л/ | ~2sn ~2. Выбирая г, s так же, как 72
(I A | - I)2"-4 и выше, получаем kA в(п)^>, ---^i"-4------ ПРИ нечетньк 1^1 и \А |"'2(|Л | — 2)"-2 кА ,в(п)^ --------2п- 4-------- при четных IА । Теорема доказана. Перейдем к рассмотрению условных кратных экспериментов, диагно- стических для К (А, В, п). Обозначим v'A B (и) и к'АВ (п) соответственно наименьшие объем и кратность кратного условного эксперимента, диаг- ностического для К(А, В, п). Теорема 2.13 [15] .Имеют место следующие соотношения (асимпто- тика берется при п ->о°) : п | А 1" 1 при \А | > 4, П £ V А НП)^ IA | -1 А’ВУ И ю — пЗп 1 при \А | = 3, 3 ~ п2п при IА | = 2; 2 IA |"+1 \А "1 при \А | > 3, 9 — 2" -1 при \А | = 2. 8 Доказательство. Нижние оценки устанавливаются с помощью тех же автоматов jz^2,7^ тД12-?) доказательстве предыдущей теоремы. Для получения верхних оценок по- строим некоторый кратный условный эксперимент Т, диагностический для К(А, В, п). Идея построения заключается в постепенном восстановлении некоторых базиса достижимости Mi и содержащего базис отличимости множества М2 для исследуемого автомата. Корню v дерева Т сопоставим множество Ап, положим по определению ={ А}, М/»* = {А}. Пусть уже определена некоторая вершина w дерева Т; обозначим v = -v0,p0,Vi,pi, • • ,Vp-i,Pp-i,vp =w путьоткорня и дерева Г квершине w, 0<р<п — 1. Предположим, что вершине и/ сопоставлен эксперимент £,• = {а1-}Ап~'{13,}, i = 0, 1,.. . ,р, а0 = /30 = А, а,-, /3,- GtT, причем уже опре- делены множества = { а0, од......а,-} и M2V'^ - { 0о, 31, • •, ! = = 0,1,..., р. Обозначим Е'= Ео и ... и Ер _ i (при р = 0 полагаем Е'=ф), m — объединение всех множеств пар, сопоставленных ребрам Po,Pi....Pp-i- Предположим, наконец, что класс S всех автоматов Vq из К(А, В, ri), Vq = (A, Q, В, q), результат применения к которым эксперимента Е' равен m , непуст, и для любого такого автомата Vq вы- полняются условия: а) <р(<7, а,) =# y(q, aj) при /,7 = 0,1,..., р, i =# 7; б) если i G (0,1,.. . ,р - 1} и 17? к ({/31, • < I 21, то Ry ({&!,... ...,0i + 1})*Rv(Wi,...,M)-, 73
в) если а,-= а-д, где а е Л, то a-G {а0,,... , аг_г}. Если /3j=a|3,', где а&А, то /3;G{/30,/3i, • • • ' = b- • • ,Р- Очевидно, в случае w = и перечисленные предположения имеют место. Пусть G — разбиение класса 5 на подклассы автоматов, результат приме- нения к которым эксперимента Ер один и тот же. Класс разбиения G, ре- зультат применения эксперимента Ер к автоматам которого равен т, обозначаем G(m). Покажем, что любые два автомата из G(m) неотличимы множеством Ап~ РМ^^. Для этого достаточно установить, что каж- дое слово, принадлежащее W‘>A"~ РМ3является началом слова, при- надлежащего некоторому множеству Ei} г = 0, 1, р. Пусть у = с^-З/Зу, i €{ 0,1,.. . ,р}, j G{0, 1,. .. ,р}, 8£Ап~р. Если i=j=p, то у^Ер. Пусть i либо j отлично от р. Если i =/ =0, то 7 — начало слова из Ей. Пусть max(z,/)=# 0. Если то а(=АЛ, a( = aj а, а£А, i0 G{0,1, 1}. Получаем в этом случае следующее представление слова 7: у = 8। fy, =а8,81 G Д"-р+1, max(z0,/) - 1. Если же i<j, то /Зу = a/3/Q, а&А, /0 G {0,1,...,/— 1}, и получаем представление у = оег-<82/Зуо, где 32 = За, 526Л"-р + 1,тах(/,/0)<Р — 1- Пусть для некоторого к уже получено пред- ставление 7 в виде аГ1 83/371 , где 83£Ап~к, max(i'i, j\ )<к, к G{0,1,... ,р- — 1}. Если к = 0, то 7 G£o- Пусть к > 1. Если = ji =к, то у G Ек. Если /1 =/1 =0, то 7 = 33, т.е. у есть начало некоторого слова, принадлежащего Ео. ПустьminOb/!)<к, max(il,/1)>0. Если й >/1,10/! #=0 иа(| = а^а при некоторых а GA, i2 G {0,1,ц — 1}. В этом случае находим 7 = = а, 8^ , З4 = а83, 84ел"“*+1, max(i2, Л )<£—!. Если же h</b то, как и выше,получаем7 = ^55^ при 3sG71"_fc+1,max(z1,72)<^-l.’ Таким об- разом, за конечное число шагов либо устанавливаем, что 7 принадлежит некоторому Е(, ( = 0,1,... ,р, либо получаем, что у есть начало слова, принадлежащего Ео. ' Пусть теперь Vq = (A, Q, В, ip, ф, q) - произвольный автомат из G(m). Возможны следующие случаи: 1- I Q I >р + 1. Тогда, как и при доказательстве леммы 3 из § 4, уста- навливаем существование слова а вида а^а, a GA, 6 {0,1,. . . ,р } та- кого, что 1р(д, а)¥= ip{q, at), i = 0,1,... ,р. Предположим, что существует автомат Vq' = (А, Q', В, tp, ^',q') из G(m), для которого </(«?',а)=</(<?'а(о) при некотором i0 € {0, 1,..., р}. Согласно условию б) имеем I ^Р + 1- Учитывая условие в), по лемме 2 из § 4получаем, что любые два различных состояния автомата V отличимы множеством Ап~р~1Мг*\ В частности, существует у&Ап~р~ такое, что — — (yv) ф(<р(д, а), 7) =# ф(<р(д, а,0), 7). Заметим, что a G А, т.е. cry G &MiW^An~pM2W^ и ay) = ф'(д', ay). Отсюда вытекает ф(<^(<7, а), 7) ~ = 4/'(ip(q',ot),y)= ^'(tp'(q', а,о), 7). Далее, % 7) = 'Н<ъ 0% УФ(.ч>(а, д1о), у), Ф'(Я',%?) = ФХч',%),?)= ,ain)^(ip(.q, а),у), 74
откуда ф(д, oqoy) =#= Ф'(я', %?)• Итак, слово а,о7 отличает Vq от V q>. Пусть 7 = 7172,71 GX"~P-1,72 G^w). Если у2 Л, то 72=^72, где а'&А, 72 &M2W\ откуда 7 = 71^72 GAn~pM2w\ Если же у2 =Л, то 7 есть начало слова 71^172, принадлежащего An~pM2w\ В обоих случаях а,о 7 есть начало слова, принадлежащего M\W^An~p M2W^, т.е. множество M^An-pM^w) отличает Vq от Vq'. Полученное противоречие и доказы- вает, что для всех автоматов Vq> из G(m) выполняется <p(q',ci)$ 0 {4>(q', a,) 11 = 0,1,... ,р}. Выберем в качестве ар +1 произвольное сло- во а, определяемое так, как указано выше. Рассмотрим, далее, следующие подслучаи: l.l.|T?r(^2(w))l < lei. Тогда, как и при доказательстве леммы 4 из § 4, устанавливаем существование слова вида ,а GA, i0 G {0, 1,...,р), для которого Яг({0о, ••• ,ft>})- Предположим, что существует автомат V' > = (A, Q1, В, q>, ф', q') из G(m), для которого RV'({$0, • • • ,3p,0}) = «v'({f3o, • • • ,3р))- Таккак Дг({/30,.. . ,ft>,/3}) * #=7?jz({/30, • • • ,ft>}), то существуют такие два различных состояния qY и q2 автомата Vq, что 0(#i ,/3)=£ ф^2 tfr), причем Ф(<?1, ft) = ф(д2 ,ft) при всех 1 = 0,1,. . . ,р. Покажем, что хотя бы одно из состояний qi,q2 отли- чимо от всех состояний автомата Vq> множеством {/30, • • • Если#! неотличимо от некоторого состояния q\ автомата V'q> множеством {ft>,... , ft,,/?), то рассмотрим класс Н разбиения 7?к'({/5о...ft>) ), содержащий q\. Если q GQ \H, то q отличимо от #ь а следовательно, йот #2 множеством{ft>,... ,/Зр}. Пусть q £Н. Тогда i^(#, ft) = ^'(#bft) = ~ Ф(Я1,3)0(#2 >ft), и получаем требуемое утверждение. Обозначим #3 то из состояний #i,#2, которое отличимо от всех состояние автомата Vq' множеством{ft>,.. . , ft,,/?}. Рассмотрим слово a, aGA*, такое, что ip(#, а) = #з. Обозначим а = а(1) .. ,д(г); пусть также 21 ={</>(#, a,)|i = = 0,1,.. . ,р}. Если ни одно из состояний ip(q, а(1) .. ,a(i)), i = 1,... ,г, не принадлежит Qi, то можно считать, что г - р — 1. В противном слу- чае находим наибольшее значение г', такое, что </>(#, а(1) ... а(г')) G (г G {1,. . . ,rj). Очевидно, можно считать, что г —г'^п —р—1. Таким образом, а можно выбрать в М^А7 при некотором т<и-р-1. Обо- значим #3 = tp'(q', а); пусть а G {/?0,..., ft,, /?}, ф^3,а')=£ ^'(#3, а'). Име- ем ф(д, аа') = ф((), а) ф(д3, а') Ф ф'{^ ,а.)ф'{^3,а)~ ф'(д',аа). Очевидно, а есть начало некоторого слова из множества AM2W\ т.е. аа — начало некоторого слова, принадлежащего множеству А М2 , т+ 1 < -р. Используя условие в), устанавливаем далее, что аа есть начало некоторого слова, принадлежащего множеству MiW^An~pM2w\ Таким образом, автоматы Vq и V'q' отличимы множеством M3w^An~pM2и приходим к противоречию. В результате получаем, что для автомата V'q’ 75
также должно выполняться Ry'({0o, • , , £?}) =#= ({/30, • • • ,0Р}), и в качестве /Зр+1 выберем произвольное слово /3, определяемое так, как указано выше. Проведем от w ребро с отметкой т к новой вершине w'; сопоставляем вершине w' эксперимент £р+1 = {ар+1}Ап ~ р ~ 1 {(Зр + х}; определяем m[w * = {a0,O!i,... ,ap+l}, M2(w } ={0o,0i,... ,0p+i} • Вы- полнение условий а), б), в) вытекает из построения слов ар +1 и /Зр +1. 1.2-. |Ry (Af2 w))| = | Q\. Тогда, с учетом разобранного выше подслу- чая 1.1, для любого автомата V'q< из G(m) выполняется | Rv< (М2 ) | = = I Q' I, где Q' - множество состояний автомата V'. Поэтому для любого автомата Vq из G(m) множество M2W^ содержит некоторый базис отличи- мости этого автомата. В качестве /Зр+1 выбираем произвольное слово вида afij, i G {0,..., р},такое, что {(30, .. ., /Зр}. Как и в подслучае 1.1, после этого проводим из w ребро с отметкой т к новой вершине w’, кото- рой сопоставляем эксперимент Ер+1 = {ар+1}Ап~р~1 {Pp+J Множества .,(»') ,r(w) Mi , М2 определяем, как и выше. 2. | Q\ = р + 1. Тогда, с учетом разобранного выше случая 1, число со- стояний каждого автомата, принадлежащего G(m), равно р + 1. Множество ( W ) Mi , таким образом, представляет собой базис достижимости любого автомата Vq из G(m). При этом | Rу (M2W^) I > р + 1, так что М2 содер- жит некоторый базис отличимости автомата Vq. Согласно теореме 2.11 G(m) должно состоять в этом случае из единственного автомата Vq. Таким образом, последовательно определяем вершины эксперимента Т. Пусть Vq G К(А, В, п). Рассмотрим последовательность v = п0, р0> Vi, ,... ..., Ps-i, vs, где и — корень дерева Т, р, — выходящее из и, ребро, отмет- кой которого служит результат т{ применения сопоставленного вершине у,- безусловного эксперимента Е( = {щ} А"~'{0(} к 7q; р, ведет к u(-+i, i = 0, 1, ..., s - 1. Пусть при этом из vs не выходит ребро, отмеченное ре- зультатом ms применения к Vq безусловного эксперимента Es - = {as}An~s{@s}, сопоставленного вершине vs. Согласно построению Т класс автоматов из К(А, В, п), результат применения к которым безуслов- ного эксперимента £’о Cl... равен m0 U... Ums, состоит из единствен- ного автомата, равного Vq. Поэтому Т — диагностический эксперимент для s s . [А I”+ 1 К(А, В, п). Имеем | m0 U... U ms | < S | £,• | = Z | А | п~‘<--------, i=o i=o | А | -1 , |Л|" + 1 так как s — 1. Поэтому &л,в(и) < J” ' Объем результата m0 U.. ,U ms применения Т к Vq не превосходит величины п — 1 S IА |”~'(л + 1) (ибо s < п - 1 и длина слов в Е, не более п + i). Имеем 1 = 0 п-1 п-1 п-1 S \А |”_'(n + z) = n S \А\п~' + S 1 = 0 1 = 0 1=0 76
\А | MI-1 [Х/п ] n-1 «М1” + МГ S i + n S MI"_/ = z=0 /=[^?] + i M I / «Ml” \ -----n\A Iй + O(«2/3M I”) + o - M I - 1 \ \A M l" + 1 MI-1 Отсюда и вытекает v'A в(п)^-п-----, n-+°°. Теорема доказана. М I - 1 В случае тестовых экспериментов предполагаем известным априори класс К(А, В, и), к которому относится исследуемый автомат V’q'. Обозна- чим /л,в(п> Vq), ^А,в(п’ Vq), иА,в(п> К?) соответственно наименьшие дли- ну, кратность и объем кратных безусловных экспериментов, тестовых для Vq относительно К(А, В, п). Займемся оценкой величин lAB (п, t) = = max Vq), кАв(п, t) = max kAiB(n, 7q), Vq^K'(A, B,t) Vq&K'(A,B,t) ьА,в(п<{) ~ max vA,B(n>Vq) (предполагаем t <п). Здесь Vq<=K'(A,B, t) К'(A, B, t) - подкласс класса K(A, В, t), состоящий из всех автоматов, имеющих ровно t состояний. Заметим, что при построении тестовых экспе- риментов условные эксперименты не создают никаких преимуществ (в смысле введенных характеристик длины, кратности и объема), ибо автомат Vq, с которым сравнивается исследуемый автомат Vq>, известен до прове- дения с ним эксперимента, и все ветви дерева Т условного эксперимента, на которых обнаруживается отличие Vq> от Vq можно удалить. Оставшая- ся после такого удаления цепочка вершин определяет безусловный экспе- римент, рассматриваемые характеристики которого (длина, кратность, объем) не хуже, чем у исходного условного эксперимента. Теорема 2.14 [14]. Пусть t Тогда lAtB(n, О = п + t — 1. Если t -> °°, п -> °°, то имеют место соотношения kA,B(n, t)~ t2 ([А |- 1)|Л |й~', vA,B(n, |-l)MI”~f. Доказательство. Пусть Vq = (A, Q, В, <р, q), Vq&K(A,B,n), \ Q \ = t. Рассмотрим произвольный базис достижимости Л/i автомата Vq и такой базис отличимости М2 этого автомата, что | Af2 I Выделим в М\А минимальное по включению подмножество М[, такое, что каждое слово из Mi А является началом некоторого слова из М{. Очевидно, Mi оп- ределяется по MiA однозначно. Пусть Е = М'Ап~ '(М2 \ {Л}) при t > 1 и Е = М[Ап~*М2 при t = 1. Покажем, что каждое слово, принадлежащее мно- жеству МгАп~{ + 1М2, является началом некоторого слова из Е. Пусть a G &MiAn~t+1M2, a = aja2, ai ЕМгА, а2 &Ап ~*М2. Рассмотрим начало а3 слова а2 такое, что &MiA, причем а3 имеет наибольшую возможную длину, а2 = а3а4. Если aja3 ^М[, то существует слово а5, а5 ЕМуА та- кое, что as =а1а3а6,а6 ¥= Л. Очевидно, тогдаajO^ 6 Мг, и в случае а4 #= Л имели бы aia3az 6 MiA, а' — первый символ слова а4. Поэтому либо а4 = 77
= Л, либо o<ia3 EMf.B первом случае а = о^оз G Му А, т.е. а является нача- лом некоторого слова множества М[, а следовательно, и началом некоторо- го слова множества £ Во втором случае, используя условие 2) из определе- ния базиса отличимости, получаем, что а4 есть начало некоторого слова, принадлежащего Ап~*М2, т.е. снова а = (а1а3)а4 — начало некоторого сло- ва из Е. Теперь, используя теорему 2.11, устанавливаем, что автомат Vq отличим множеством Е от любого другого автомата из К(А, В, п), т.е. эксперимент Е тестовый для Vq относительно К(А, В, п). Длина произволь- ного слова, принадлежащего М[, не превосходит t; длина каждого слова из М2 не более t - 1. Поэтому произвольное слово, принадлежащее Е, имеет длину, не превосходящуюю t + (п — Г) + (t — 1) =п +1 — 1, откуда и получаем оценку 1А в (и, 1) + t — 1. Оценим сумму длин слов, при- надлежащих множеству М[Ап~ *М2. Нетрудно заметить, что представление слова a, a Е МуАп~'М2, в виде а^аз, а! G Му, а2 & Ап~*, а3 G М2, на- ходится однозначно (так как никакое слово из М[ не является началом другого слова из м£). Далее, если Ci и С2 — два множества слов в алфавите А, С = СуС2, причем каждое слово а из С однозначно представимо в виде од е Су, а2 Е С2, то сумма длин слов в С равна I 0 I 2(С2) + + I С21 2(0), где 2(0) обозначает сумму длин слов в 0. Поэтому для оценки величины 'E(MyAn~t М2) достаточно оценить сверху 2(Л1(), 2(M2 ) , |Mi 1, 1^21J очевидно, выполняется 2(4”-f) = (п —,t) \А \n~f, | Л'2-г| = = | А | п~{. Имеем при этом | М2 | <1. Для оценки сверху величины 2(М2 ) рассмотрим такое множество С, С Q А", что | С\ < t; из a a G С, a Е А, вы- текает a Е С, причем величина 2(C) наибольшая возможная. Предположим, что С содержит слова aj и а2> ai а2, такие, что XfaJ О С = ф, А {а2}П С=. = ф; обозначим /1 и 12 длины слов а2, а2. Без ограничения общности положим li > 12. Преобразуем С в множество С1 = (С\ {а2}) Тогда 2(С') = 2(C) — 12 + + 1 > 2(0, и приходим к противоречию. Поэтому указанных слов и а2 не существует, т.е. для некоторого слова а = а(1) .. . а(х), S - 1, имеем С= {A,a(s) ,a(s — l)a(s),...» а(1) ... x(s + 1) . t(t - 1) t2 ... a(s)}. При этом 2(C) = ------ <---------- < — , откуда получаем t2 , 2(Л/2) < -у . Оценим сверху величину 2(4^ ). Для этого рассмотрим такое множество С, С £ А *, что | С | < t; из аа 6 С, а&А, вытекает a S С, причем величина 2(С'), где С' — все слова из СА, не являющиеся началами других слов из СА, наибольшая возможная. Предположим, что С содержит слова at и а2, Ф а2, такие, что {} А Ct С = ф, {а2}А С\С = ф. Обозна- чим 11 и 12 длины этих слов; без ограничения общности полагаем 11 > 12. Преобразуем Св множество Су = ((С\{а2}) О {«]«,}); пусть С/ — все слова из Су А, не являющиеся началами других слов из Су А. Имеем 2(0) = 2(С') - (/2 4 1) • IА | + 12 - (/! + 1) + (1у + 2) • \А I = = 2(0) + (Л -12 + 1)(|Л I- 1)>2(С'), 78
и приходим к противерчию. Поэтому должно существовать такое слово а, а = а(1) ... a (s'), s — 1, что С = {Л, д(1), д(1)а(2),.. .,а(1) .. .a(s)}. , (s+l)(s + 2) Г(Г+1) В этом случае S(C ) = (|ЛI — 1)---------+ s + — 1) —- • +t 2 2 и 1) (| А | - 1) ~ (Г -> °°). Аналогичными рассуждениями можно показать, что для оценки сверху величины | Л/1 | достаточно рассмотреть множество С такого же вида. При этом | М j | <Г(|Л | — 1) + 1, \М\ | ^Г(|Л | - 1). Теперь находим t2 Ъ(М{Ап-*)=Ъ(М{)\А \п-* + \М[ (|Л 1)|ЛГ~' + + = |-1)| А |"-г. Далее, (t \ п-—)оА । - ОМ + Г3 + у (IA | — 1)|Л |n-f = 72и(|Л | — 1)|Л|"-Г. Окончательно Пд,й(п, 72н(| А | - 1) |Л Г~г. При этом | М\Ап~*М21 = = \М[ | |Ап - О |М2 | t2 (|А | - 1) |А |" -т.е. кА, в(п, Г) t2 (\А | - 1) |А |"'*. Перейдем к доказательству нижних оценок. Обозначим N= ] log । А11 [. Из- вестно, что существует слово а длины | А + N — 1 в алфавите А, содер- жащее для произвольного слова & из AN ровно одно вхождение слова & (см. [21]). Обозначим 7 начало слова а, имеющее длину t — 1; так как | А 1^ + N — 1 > t, то выбор такого начала у возможен. Пусть у = с(1) ... ... c(t - 1). Рассмотрим автомат = (A, {qx,... <pi, Ф1, q2), у которого c(i)~) = qi+1 при i = 1, ..., t - 1, и $i(qj, ak) =qtB ос- тальных случаях; c(t — 1)) = b2, а в остальных случаях ak) = bi. Очевидно, F^ — автомат приведенного вида. Для про- извольной четверки а= (sit s2, а, 6), где Sj € {1, ..., t — 1}, s2 G G <1,... -N, si +l,...,t-A), a GA, a^c(Si), SGA"-^ 6=d(l)... ... d(n-t), определим автомат F^’a)=(4,{^i,..., q„}, B, <p2,a> Функция q>2 ~ определяется следующим образом: a) = z = l,...,r-i; 6) + B) ¥’2,a(<?r + /»d(0)=?r+/+p z= 1, ...,л-Г-1; r) <^2 ^qn,d(n- t))=qSi2; д) В остальных случаях q>2 -{q^ ak) = qt. 79
Полагаем ф2 ~(Дт-1>с([ — 1)) =й2 и ф2 = ^i в остальных слу- чаях. Пусть М- кратный безусловный эксперимент, тестовый дляИ^р от- носительно К(А,В,п). Для каждой четверки а указанного выше вида рас- смотрим слово £ (а), £ (а) G М, такое, что (q!, % (а) ) =# ф~(q!, % (о) ). Нетрудно проверить, что в случае Si < s2 слово £ (а) представимо в виде с(1) ... <?(ж 1 - 1)а<2(1) .. ,d(n- t) c(s2) • • c(t - 1) £' (a), £'(a) G A *, a в случаеSj > s2 слово £ (а) представимое видеc(l) ... <?(s2 — l)a5 (c(s2) ... .. .c(s!-l)a5) kc(s2) ... c(s1-l)c(s1) ...с(Г-1)|' (a), где (a) G A *, k > 0. Отсюда вытекает, что при выполнении хотя бы одного из условий: Si ^s'j,a Фа’, 5 =А5' — слова |(5)и|(а'), а' = (s\,s2,a, 6'), различны. Пусть s 1 =s 1, а=а', 5 = 5', s2 =# s2 .Имеем % (о) =с(1) . ..с (sj — 1) a8c(s2) ... .. .c(s2 +2V-1) %"(о), %"(о)ЕА *, % (д') =с(Г) .. ,с($! -1) a5c(s2) .. .c(s’2 + + 7V — 1) |"(a'), |w(a') G А *. В силу выбора слова у, имеем c(s2) ... c(s2 + + /V— 1) ^=c(s2) ..'. c(s2 + N— 1), т.е. £ (a) =# £ (a'). Таким образом, различ- ным четверкам а соответствуют различные слова £ (а). При этом длина сло- ва % (о) не менее чем (sj —1) + 1 + (п — t) + (t—s2) = n + Si —s2. Отсюда на- r-1 t-l ходим, что сумма длин слов в множестве М не менее чем X Е (|Л| — J] = l J,=2N r-1 / М t-l / -1)|А | л_*(л+»1 — Sj).Имеем E (и + sj —s2) ~ г («+Sj-1, E I n + S2=2N \ 2/ S;=l \ t \ + s i---1 ~ tn. Отсюда 2/ E1 V (|Л I- 1)|Д Г-г(и+Х1-52)~Г2н(1Л1- 1)1Л l"-f, St= 1 S.-1N и vA_B (n, t) A\ -1)1 A | п~{. Число элементов в M не менее числа различных четверок 'S указанного вида, т.е. |M| >;?2 (I А\ — 1) | Д | "_f, ,в (п> t) (I I —1)1 I n~t Оценка lA iB (п, t) > п + t — 1 получает- ся с учетом примера, приведенного после доказательства теоремы 2.10. Теорема доказана. § 6. ПРОСТЫЕ ЭКСПЕРИМЕНТЫ С КОНЕЧНЫМИ АВТОМАТАМИ Возможность применения к автомату кратного эксперимента обуслов- ливалась либо наличием определенного количества одинаковых экземпля- ров этого автомата, либо наличием у исследуемого автомата ’’кнопки воз- врата”. В тех случаях, когда указанная возможность отсутствует, прихо- дится ограничиваться подачей на вход автомата единственного входного слова, и анализировать автомат только на основании его реакции на это слово. В этом параграфе мы рассмотрим ряд задач распознавания свойств автоматов, которые можно решать подачей единственного входного слова (или, как иначе говорят, проведением простого эксперимента с автома- том) , а также оценим сложность решения таких задач. 80
Как и в случае кратных экспериментов, рассматриваем безусловные ли- бо условные простые эксперименты. При этом безусловный простой экспе- римент в алфавите А есть некоторое слово в указанном алфавите; резуль- тат применения простого безусловного эксперимента a, a G А *, к автомату Vq = (A, Q,B, ip, 0, q) есть пара (а,ф(<?, а)). Условным Простым экспериментом в алфавитах А, В называем конечное ориентированное от кория дерево Т, снабженное следующей разметкой: 1) каждой вершине v дерева Т сопоставлено некоторое слово EV,EV G £ А •; 2) каждому ребру дерева Т, выходящему из вершины и, сопоставлено слово в алфавите В, длина которого равна длине слова Ev, причем различ- ным ребрам, выходящим из v, сопоставлены различные слова. Чтобы определить результат применения условного простого экспери- мента Т к автомату Vq = (A,Q, B,ip, ф, q), находим последовательность и 1, Pi,V2> Р2, • > Рп-1 > vn> гДе и 1 - корень дерева Т, — ребро, ведущее от вершины и,- к вершине и/+ j и такое, что сопоставленное ему слово равно ф(д> (q,EVi .. .Ev._1),EVi),i = 1,...,и—1, причем при i = 1 имеется в виду слово ф(д,Е1) ); из v„ не выходит ребро, отмеченное словом ф(д>(д, Ev t .. .EVn_1'),EVn). Результатом применения Т к Vq называем пару (Ev t . EVn, ф(д, EVi ... Ev п)). В случае простых экспериментов рассмат- риваем лишь одну меру сложности эксперимента — его длину. Длиной ре- зультата (а, /3) применения некоторого простого эксперимента (условного либо безусловного) к автомату Vq называем длину слова а. Наибольшая из длин результатов применения простого эксперимента Е к автоматам не- которого конечного класса К называется длиной эксперимента Е относи- тельно К. Обозначаем эту длину 1 (Е, К). Пусть Е — простой эксперимент в алфавитах А, В, К — некоторый класс автоматов с входным алфавитом А и выходным алфавитом В и Vq G К. Эксперимент Е называется тестовым для Vq относительно К, если резуль- тат применения Е к Vq отличен от результата применения Е к любому дру- гому автомату из К. Е называется диагностическим для К, если результаты применения Е к различным автоматам, принадлежащим классу К, различ- ны. Для простых экспериментов, кроме задач тестирования и диагностики, возникает также близкая к ним задача определения заключительного сос- тояния автомата. Эта задача решается построением установочного для А? экс- перимента Е, т.е. такого, что совпадение результатов (а, ф(д,а)) и (а', ф’ (q , а')) применения Е к автоматам Vq = (A, Q, В, q>, ф, q), V'q' = (А, 0', B,tp'^',q') из К влечет неотличимость автоматов (ч, а) > П/• Ограничение на возможность построения тестовых и диагностических простых экспериментов устанавливается следующим утверждением. Утверждение 1. Для любого натурального н > 3 существует такой автомат Vq с п попарно отличимыми состояниями, что отсутствует простой эксперимент, тестовый для Vq относительна [К]. В качестве Vq достаточно взять автомат Vq* из доказательства теоре- мы 2.3. Небольшим изменением этого автомата можно получить автомат Vq приведенного вида. Очевидно, для рассматриваемого класса [V] будет отсутствовать и простой диагностический эксперимент. Преодоление воз- 6. В.Б. Кудрявцев 81
никающих здесь трудностей, по-видимому, связано с выделением содер- жательно оправданных достаточно узких классов К, обладающих диагнос- тическими и тестовыми экспериментами. В оставшейся части параграфа исследуем возможности построения прос- тых установочных экспериментов. Теорема 2.15 [40, 22]. Если V — автомат с п попарно отличимыми состояниями, то для [F] существует простой условный установочный эксперимент длины п(п — 1)/2, и для некоторого автомата Ven состоя- ниями эта оценка не может быть понижена. Доказательство. Пусть V = (A, Q,B, <р, 0). Если п = 1, то утверж- дение очевидно. Пусть 2. Построим простой условный эксперимент Т, установочный для [К]. Нетрудно установить (см. доказательство леммы 4 из § 4), что существуют состояния <?i, q2 автомата V и символ a G А та- кие, что 0(<7i,a) ¥= 0(<?2,д). Корню v дерева Т припишем слово а. Пусть уже определена некоторая вершина w дерева Т, которой сопоставлено сло- во Ew, Ew f=A *. Рассмотрим путь v = v1,p1,v2,..., ps-1, = w от корня v дерева T к вершине w, s> 1; обозначим EV{ слово, сопоставленное вершине У/, ft — слово, сопоставленное ребру pj, z = 1,..., s — 1. Обозна- чим L(w) = (’4>(q,EVi ...EVs l) | <7G<2,0(<7,E’„i ...E’„s_1)=/31 (при s = 1 полагаем L (w) = Q). Предположим, что в L (w) существуют два состояния, отличимые словом Ew-, если w= v, то зто верно. Рассмотрим все- возможные слова /3 вида $(q,Ew), где qEL(w). Для каждого такого 0 обозначим L0(w)={q>(q,EVi ...EOg)\ q&Q,$(q,EVi. ..E„s) Очевидно, L@ (w) ¥= ф . Если | Lp (и) i = 1, то ребро с отметкой 0 из вершины WHe проводится. Если же | /,^(и) | > 1, то находится кратчайшее слово а', а'б А *, для которого в /,^(и) существуют отличимые этим словом состоя- ния, и от w проводится ребро с отметкой 0, ведущее к новой вершине иД Отметкой вершиныw'становится слово а'. Очевидно, Lp(w) = L(w), причем указанное выше условие для/, (w ) выполняется. Так как I L (w')l < < I L (w) | , то описанная процедура построения дерева Т обрывается через конечное число шагов. Покажем, что эксперимент Тустановочный для [И]. Пусть <7i G Q. Для определения результата применения Т к Vq j рассмотрим последовательность и i, pi, iz2, Pi, • • • > Ps-1, гДе u i — корень дерева T, Pi - ребро, ведущее от v{ к uf+ lt Ev. - слово, связанное с vt, i = 1,... • • • ,s, (qi,EVi .. .EVil),EV{) =0i - отметка ребра p,-,z = l,...,s-l. При этом предполагаем, что из vs не выходит ребро, отмеченное словом 0(<р(</1 ,EV t ...EVs l), EVs) = 0S. Согласно построению дерева Тполучаем Lps (vs) ={<P(<li’EVi ...EVs)} . Так как вершина vs и слово 0S определя- ются по результату (EVi . ..Ev ,02 ...0s) применения Т к Vqi однознач- но, то однозначно определяется и заключительное состояние (fli ,EV, ... ... EVs), т.е. T — установочный эксперимент для [И]. Оценим сверху дли- ну слова EVi .. .EVs. Длина слова EVi, сопоставленного корню дерева Т, равна 1. В случае i > 1 слово EVJ отличает некоторые два состояния, при- надлежащие множеству L (и{), причем является кратчайшим таким словом. 82
Согласно построению дерева Т выполняется п = \L (и i) | > |Z (и 2) I > • • • .. . > \L (у s) | > 1. Обозначим |Л (и,) | = п - ц + 1 / = 1, ... ,s. Тогда 1 = ~fi <f 2 < • <is 1. Используя лемму 1 из § 4, нетрудно получить, что | Ry (А*) | > z + 1, i =1,2,...,и—1. Поэтому наибольший по числу элементов класс разбиения R у (АЧ) содержит не более чем п—ц элемен- тов, i = 1,... ,$. Так как | L (и,)|=и— /,• + 1, то существуют два различ- ных состояния из Z(u,-), принадлежащие различным классам разбиения (И7'), так что длина слова Ev. не более чем j'i,i = 1..s. Окончатель- но получаем, что длина слова Ev .. ,EV не более чем j i + j2 + • • • + fs i /1+/2 + • •- + /s < 1 + 2+. ..+(и-i) =и(н-1)/2, т.е. Z(T, [К] ) <и(и- —l)/2. Приведем теперь пример автомата V с п состояниями, для которого дли- на /(Г, [К]) произвольного установочного условного эксперимента Т не менее чем п(п - 1)/2. Пусть V = ({1, 2,..., и-1}, {<?!,..., qn}, {0,1}, , 0), где функция переходов определена следующим образом: *) = <7i+i, /= 1,2, ...,п - 1; 2)<P(qi, i~ = i= 2, ...,и; 3) j) = q, в остальных случаях. Полагаем при этом 0(<7i, и — 1) = 1 и / ) = 0 в остальных случаях. Пусть Т — произвольный простой условный эксперимент, установочный для [ V]. Рассмотрим путь v i, и2, Pt, •••, Ps-1 > vs в дереве T, начинающий- ся с корня v j, отметкой каждого ребра pit i. — 1, ..., s — 1, которого слу- жит слово, состоящее из одних только нулей, причем из v s не выходит реб- ро, отмеченное словом такого вида. Пусть а^, ..., as — слова, сопоставлен- ные вершинам У1, ..., vs, а = aj ... as. Если не существует состояния q ав- томата V, для которого 0(</, aj ... as_!) = 0 ... О, то можно отбросить вер- шину vs и достижимые из нее вершины, снова получив установочный для [ V ] эксперимент. Так как длина эксперимента при этом не увеличивается, то можно считать, что с самого начала имелось такое состояние а: автома- ____________ 1 *0 та V, что ^(qta, ai ... as-i) = 0 ... 0. В этом случае, очевидно, величина 1{Т, [ F]) не менее длины слова а. Для каждого q G {pj, ..., qn} предста- вим слово 0(р, а) в виде 0 ... 0уч, где j (q) наибольшее возможное, /(<?) j (р) > 0. Обозначим jо = шах /(<?); пусть / 0 = /(<7r)> г G ч е {<z1-<zn} Предположим, что z’j =А z2, z'i, z2 G {1, 2, ..., n}, причем /(<7,- ) = j Если j (q^ ) меньше длины l слова a, то yq. , yq. начинаются c 1, и тогда, обозначив a=a(l) ... a (I ), будем иметь ^(q^, zz.(l) ... a (j (qt))) = = (/’(<7z2, a (l) — a(i (/7/,))) — qi - Вместе с тем нетрудно проверить, что для любого a G {1, 2, 1} и любых z, / G { 1, 2, ..., п}, i .ф j , выпол- няется <р(<?,-, а) =А (/>(<7y,a), так что для любого слова /3 в алфавите {1,2,1} имеем (р(1,/3) =# ,/3). Полученное противоречие уста- навливает, что при < I и q^ =£ qi2 должно выполняться /(q^) =#= 6» 83
Ф j (qi2) . Пусть теперь / (q^) = j (flt2) = l. Тогда результаты применения эксперимента Т к автоматам Vq . и Vq. совпадают, причем' состояния Ч 12 <p(qi , а), , а) различны, и приходим к противоречию с,Тем, что экс- перимент Т установочный. Таким образом, во всех случаях при z'j =# z2 имеет место j (q^) =А j(qt2). Отсюда вытекает, в частности, что при Z Фг выполняется yq. т.е. ^{qita (1) ...a(j (q,))) = qita{j (q,)+ 1) =zz-l. Далее, для каждого i' € {1, ..., z — 1} существует /(q,-, q,» ),/(q,-, q,»)G e {1, ...,/(q,)}, для которого </>(q,,zz(l) q^))) = q,» .причем У (у,, a (1) ... a (J ’)) =# q,-» при j ' < j {q,, qt >).. Нетрудно заметить, что a (J — i*, так что в случае i[ ^i'2 значения j(qf, qj'),/ (qj} qtt) различны. Пусть z’j =# z2, Zj, z2 G {1, ..., r — 1, r + 1, ..., n}, i.' G {1, ... ...,min(z1;z2)-l}. Тогда ^(q^, zz(l) ... л(/(qZj, q?, ))) (q,;, д.(1) ... ... a (j (q^, qz»))), откуда / (q^ (q^ ,qti). Таким образом, значе- ния /(q(-, q(t) различны при различных z G {1, 2, ..., г - 1, г + 1, ...,н}и z G {Г,..., z — 1}. Рассмотрим сначала случай г = п.Тогдаа (j (qj, q^^G G {1,. .., n — 2}и j {qi,qi<) + 1 для всехi" = 1,..., n - 1. Так как каждое j (qjr qti) и / (q(„) + 1 принадлежит множеству {1, 2,... ,1} , то по- лучаем I > Ch _ j + (и - 1) = и (и - 1) /2. Рассмотрим теперь случай г <п. В этом случае из равенства a (J (сц, q(t)) = a (/(qf„)..+ 1) вытекает i' = п — 1, z = п. Следовательно, значения j{qi,qi,)r + 1, где (z^z’) =# (и, и — 1), попарно различны. Число пар (z, Z') таких, что z G {1,2, ..., г -1, г +1, ..., п}, i’. G {1, ..., z — 1}, (z, z) =# (и, и-1), равно Ch — (г — 1) — 1 = С£ — г. Поэтому Z > Ch — г + (и - 1) > Ch ~ = п{п - 1)/2. Итак, в каждом из случаев I > и(и— 1)/2, т.е. Z(£ [ И]) > > Z > и(и— 1) /2, и теорема доказана. Рассмотрим, далее, задачу построения установочных экспериментов для класса К {А, В, и). Как и в предыдущем параграфе, считаем, что \А | > 2, |5| > 2. Обозначаем А = {at, ...,am}, b.= {Ь1г..., bt} . Докажем ряд вспо- могательных утверждений. Лемма 1 [14, 15]. Пусть М - конечное множество слов в алфавите А',КХ, ...,Кр- множества слов в алфавите А, удовлетворяющие условиям'. 1) для каждого а, а G А*, существуют такие слова alt..., ар, принадле- жащие М, что aai G Кг,..., аар G Лр; 2) если a G К, и а - начало слова а , a G А*, то а' принадлежит К,. Тогда множество Кг П ... Г) Кр содержит слово, длина которого не более чем L ] | М\ 1пр[, где L - наибольшая из длин слов, принадлежащих мно- жеству М. Доказательство. Для произвольного слова а, а G А *, обозначим s (а) число множеств ,..., Кр, содержащих а. Согласно условию 1) суще- ствуют слова ai,..., ар из М, принадлежащие соответственно Кх,..., Кр. Слова ai,.. ., ар при этом не предполагаются попарно различными. Очевид- 84
но, среди них найдется такое слово /31, что s(/3i) > р/\М\; величину \М | обозначаем далее через d. Пусть уже построено слово /3,-, i > 1, для кото- рого выполняется s(/3,) > р(\ - ^1 — j j (в случае/ = 1 последнее соотношение, очевидно, выполнено). Если s(/3,) < р, то рассмотрим все множества не содержащие /3,-, /1, ..., G G {1, ...,р}. Согласно условию 1) существуют слова а71, ..., ^jp_s^.y из М такие, что P,oijq G K-j , q = 1, р - s(/3,). Хотя бы одно из этих слов а71, ..., ajp_s({j.) (обозначим его 7, + 1) таково, что /3(у(+1 принадлежит P ~ s( Р ।) не менее чем-------- d множествам К) -’Kip-S(0i)- Тогда>с Учетом ус- P-s(ft) Р ( 1\ ловия 2), получаем s(/3,y,+1) > s(/3,) +—------= - +s(/3,)ll -- I > p ( ( Ц'Л/ Ц / / Ц' + Ч > — + р 1 - II-------Hl-----------1 = pl 1 — 11-I I. Полагаем/3/+1 = d \ \ d j )\ d / \ \ d / / = PiTi + i- Таким образом, последовательно определяем слова /31, /32, ... Так как s(/3, +1) > s (Р/) для каждого i = 1,2, ..., то при некотором /0 имеем /3,-о G Кх П ... Г) Кр, /31о_ i П ...Г) Кр. При этомр>х(/3,0_ i) > 1 / 1 \ 'о -1 , откуда находим — < 11-------- . Далее, Р \ d / IV.-1 --V^- т'о —1 1-----I < e , т.е. Inp >---, i0 - 1 < dlnp, i0 <] dlnp [. d / d Так как /3,о = Piт2 ••• 7/01 0t, •••, 7i0 e M, то длина слова /3(- не пре- восходит величины L ] dlnp [, и лемма доказана. Пусть V = (A, Q, В, <р, 0) — конечный автомат. Компонентой сильной связности автомата V будем называть такое подмножество Q’ множест- ва Q, что для любых q G Q' й a G Л* существует слово а’, а € А*, удов- летворяющее соотношению ip(q, аа') = q. Лемма 2 [14, 15]. Пусть А, В — некоторые конечные множества, п - натуральное. Тогда существует такое слово а, а G А*, что для любого автомата Vq = (A, Q, В, , 0, q) из К (А, В, п) состояние tp(q, а) принад- лежит некоторой компоненте сильной связности автомата Vq. Слово а можно выбрать так, чтобы длина его не превосходила п2 \А | "Inи. Доказательство. Пусть Vqi = (А, Q, В, ф, q^), Vq G G К (A, В, n), a G А*, причем состояние <p(/?i, a) принадлежит некоторой компоненте сильной связности автомата Vq . Если в: Q-^Q' — взаимно однозначное отображение Q на Q', ' (q, а) = (0-1 (q),a)), то для ав- томата V'^ вида (A, Q’, В, q>', ^',qi), где q\ = 0(/?i), состояние ip'(q{, а) также принадлежит компоненте сильной связности. Разобьем множество К (А, В, п) на подклассы, относя к одному и тому же подклассу 85
два автомата V и Vq^ тогда и только тогда, когда они связаны друг с дру- гом указанным выше образом. Обозначим эти подклассы R2, ...» R^. Оче- видно, N Выберем в каждом подклассе Rir i = 1,..., N, произволь- ный автомат = (A, Qh В, ф,, qi). Очевидно, достаточно устано- вить существование слова а требуемой длины, для которого каждое со- стояние а) принадлежит компоненте сильной связности соответст- вующего автомата V . Обозначим Kit i G {1..N}, множество всех слов /3, /3 G А*, для которых </>,• (<?,•, /3) принадлежит компоненте сильной связности автомата V д9 . Так как каждый конечный автомат имеет хотя бы одну компоненту сильной связности, то К,- непусто при всех i = 1, ...,N и, очевидно, для каждого (3 G Л* содержит некоторое слово вида , где /З’ G Л"-1. Полагая теперь в условии леммы 1 М= Л"-1, р = N, полу- чаем, что существует слово a, a G К\ О ... С\ , длина которого не пре- восходит (л - 1)] |Л |1 InTV[(и — 1)]| Л]"«1пи[<л2|Л |"1пи. Лемма доказана. Лемма 3 [14, 15]. Пусть А, В - некоторые конечные множества, п - натуральное. Тогда существует такое слово a, a G А*, что для любого автомата Vqi = (Л, Q, В, <р, ф, qi) из К(А, В, п) состояние q>(q\, а) при- надлежит некоторой компоненте Q' сильной связности автомата Vq , при- чем для любых q' G <2' и a G А существует начало а*а слова а. (быть мо- жет, совпадающее с а), удовлетворяющее соотношению $(qi, а’) = q' Слово а можно выбрать так, чтобы длина его не превосходила (и+1) 2 |Л |"+11п(и +1). Доказательство. Рассмотрим существующее согласно лемме 2 слово а, а G Л*, такое, что для любого Vqt из К (А, В, п + 1), Vq> =? = (A, Q', В,?', ф', <?{),' состояние (q{, а) принадлежит компоненте сильной связности автомата Vqt . По той же лемме длину слова а можно считать не превосходящей (п+ 1) 2 |Л | "+11п(и+ 1). Пусть Vq&К(А, В, и), Pqj = (A, Q, В, q>, 0, qi). Очевидно, 4>(q2, а) принадлежит компоненте сильной связности автомата Vqi; обозначим эту компоненту Q'. Предполо- жим, что существуют q' G <2' ид’ G Л такие, что никакое начало а'а' слова а не удовлетворяет соотношению (<7i, а') = q'. Рассмотрим авто- мат = (Л, Q U {<?*}, В, <р', ф', qi), у которого q*$ Q, q>. (q*, a)=q* при всех a G A, q>'(q\ а ') = q\ (q, а) = y(q, а) в остальных случаях. Значения ф'Ц*, а), а 6Л, выбираем так, чтобы существовал символ а " из А, а" Фа', для которого 0 ’ (q*, а " 0(</> (qt ,а),а") /При q G Q, a G Л полагаем ф'(q, а) = ^(q, а). Некоторые состояния автомата Кд’ мо- гут, вообще говоря, быть неотличимы друг от друга. Пусть Vq' - принадлежащий К (А, В, п + 1) автомат, неотличимый от V' ,V'? = Ч 1 ч 2 = (A, Q, В, , ф, q2) Состояние (q2, а) неотличимо от состояния а), причем а) = q>(qt, а). Пусть /3G Л*, q' ='P(^(<?i,a)rt|3). Состояние y>"(q2, а(5а ') '= q неотличимо от состояния q*. Так- как Vq - автомат приведенного вида, то для любого у из Л* выполняется 86
ip"(q, у) = q. Предположим, что ^"(q't, «) = Я- Тогда ^"(q2, aa")'= = aa") = 0(^(<7i, a), a") =# $'(q*,a")"= ф"(ц,а") = - Ф,Г(.Ч2, aa ”) • Полученное противоречие означает, что <р"{q2, a) ^q, т.е. <p"(q2, а) не принадлежит компоненте сильной связности автомата У”. В силу выбора а это невозможно, так что указанные выше q' и а ’ отсут- ствуют, и лемма доказана. Обозначим 1а, в(п) наименьшую из величин I (Т,'К(А, В, л)), где Т — простой условный эксперимент, установочный для К (А, В, п). Теорема 2.16 [15]. Имеет место неравенство |Л|" в.(и)- Если т,о Iа, в(п) ^ -| М 1"+1 и4 1п(М |и2)- Доказательство. Сопоставим каждому слову а из Ап, a= а (1) ... ...а{п), автомат - (А, {<л,..,qn}, В, <ра, фа, q^. Функция переходов q> а этого автомата определяется следующим образом: а) V’a (<?,-, а(0) = <7,+ 1, / = 1,...,И- 1; б) «(«))=?„; в) Уа(Я1, 4j) = ql в остальных случаях. Полагаем 0а (<7™ я (и)) = Ь2 и Фа(.Яьа/) - bi в остальных случаях. Рассмотрим произвольный простой условный эксперимент Т, установочный для К {А, В, и). Для результата (8а, уа) применения Т к автомату найдем представление слова уа в виде Тц ... bY у’а, где j (a) — наибольшее /(<») возможное. Если уа = Л при некотором а из Ап, то результат примене- ния Т к автомату Vq = (A, {qi}, В, р, ф, q^, у которого ф = Ь2, также равен (8а, 7>1 ... bt), а так как автоматы V и ^(^,ба) отличимы, то /( a ) приходим к противоречию с предположением о том, что Т — установочный эксперимент. Поэтому у'а ¥= Л при всех а из Ап. Допустим, что j (а2) = = j (a2) при ал =£ a2, <*!, a2 G An. Тогда начала длины j (a2) + 1 слов 8 и 8aj совпадают; обозначим зти начала посредством 8 ’. С другой стороны, так как первый символ слова уа] есть Ь2, слово 8’ должно иметь вид S"a'i; аналогично, в силу того, что первый символ слова yaj есть Ь2, сло- во 8* должно иметь вид 8wa2. Но a2 ¥= а2, и приходим к противоречию. Таким образом, при cq #= ct2 выполняется / (cq) ¥=/ (a2). Поэтому сущест- вует а из Ап, для которого / (а) > \А | " - 1. Для этого а длина слова 8а не менее чем \А |”, т.е. длийа эксперимента Т не менее \А | ”, 1А,в(п) > |Л|". Чтобы получить верхнюю оценку величины 1а, в (и), построим простой условный эксперимент Т, установочный для К (А, В, и). По лем- ме 3 существует такое слово у0 длины, не превосходящей (и+1)2|Л|”+1 X X 1п(и + 1), у0 G А*, что для каждого автомата УЧ1 = (A, Q, В, q>, ф, q^} из К (А, В, п) состояние ^(</1, у0) принадлежит некоторой компонен- 87
те Q1 сильной связности автомата Vq , причем слово , у0) содержит все символы вида Ф(<?’, а), где <?’ G Q', a. G А. Это слово у0 и сопостав- ляем корню и о дерева Т. Пусть Wi, a)N — все возможные слова вида 0(<7i, 7о) Для автоматов 7I?1 = (A, Q, В, q>., ф, qt) из К {А, В, п). Для каж- дого такого слова w,-, i = 1.N, проводим из v0 ребро с отметкой со,-, ведущее к новой вершине о,- дерева Т. Обозначим S,- множество символов алфавита В, встречающихся в слове со,-; положим по определению Л/(и,-) = = {A}, I = Предположим, что уже определены вершина w дерева Т, достижимая из некоторой вершины Vi0(io G {1, ..., N}), и вспомогательное множество М(w), но еще не определено слово, сопоставленное этой вершине. Рассмот- рим путь u ,о = w,, 'pi, w2, р2, ..., Ps-1, ws = w, s > 1, ведущий от верши- ны и,в к вершине w. Обозначим у,- слово, сопоставленное вершине w,-, 8,- — слово, сопоставленное ребру р,-, i = 1, ..., s — 1. Пусть L (w) — класс всех сильно связных автоматов из К (А, В, и), неотличимых от таких авто- матов Кр(Ч1>7о71 ... 7j1),4to = (A,Q,B,<f>, G K(A,B,ri), причем Ф(с?1,УоТ1 ... Ts-j) = wi0 51 3S-1 • Предположим, далее, что вы- полняются следующие условия: a) M(w) = {ft,..., Ps },ft = A, s < и; 6) L (w) =#ф. Если Wq G L (w), Wq = (A,Q,B,ip,^,q),i G {1,... ,s—1} , то либо | I =1 <21, либо Rw({Pi,.--,Pi+i})^RwWi,--- ---.ft}); в) если ft = aft, где a G A, to ft G {ft,...,ft_ ,i = 1,..., s. Очевидно, при w= и,- эти условия выполнены. Рассмотрим следующие случаи; 1. Существует автомат Wqj из L (w), Wqi = (A, Q, В, <р, ф, q^, для кото- рого | Rw({fii, • • - , ft}) I <1 QI- Тогда (см. доказательство леммы 4 из § 4) существует слово ft+j =aft,a 6 A, i G{1,2,..., s} , для которого ^iv({ft,... ,ft+i}) =#/?H»({ft,... Если для каждого автомата Wq^ из L (w) и каждого ft+1 , удовлетворяющего указанным условиям, выполняется RW' ({ft,..., ft+1}) i=Rw' ({ft, • • > ft })> то выбираем не- которое такое ft + j, сопоставляем вершине w слово Ли проводим от нее ребро с отметкой Л, ведущее к новой вершине w', для которой полагаем 4f(w') = {ft,... ,ft+i} . Выполнение условий а) - в) для вершины и/ в этом случае очевидно. Пусть теперь существуют ft + ! и автомат из E(w), = (A,Q',B,<p', ф',?1), такой, что Rw^ ({ft,... ,ft + i}) = = R w'q' ({ft,... ,ft }). Обозначим D(W4i, W q^ ) множество всех таких слов a,aG А*, что Ф(<?1,а) Фф Пусть а - произвольное слово из А*. Покажем, что существует такое слово a', a G AnM(w), для кото- рого аа G ^>(И(71, Wq^). Согласно предположению существуют состояния <72,<7з автомата Wq , отличимые словом ft+1 и неотличимые словами Pi,... , ft. Пусть Q"— класс всех состояний автомата Wq' , неотличимых от состояния q3 автомата Wq^ словами ft,..., ft. Если Q"= ф, то q3 отли- чимо от каждого состояния автомата Wq' множеством {j3i,..., ft}. Пусть 88
q G Q". Если 0 (<72,3s+i) =A 0' (q1, 3J+1), to q2 отличимо от каждого состоя- ния автомата Wq' множеством{(Sj,... ,3s+i} ; в противном случае q3 от- личимо от каждого состояния автомата Wq' этим множеством. Таким об- разом, в кавдом из случаев можно указать некоторое состояние q автома- та Wq отличимое от всех состояний автомата W'q> множеством {3i, • .. ..., 3s+i). Выберем теперь слово ai в алфавите А длины, не превосходя- щей и—1, для которого <^(<71,aa'1) =q. Пусть а2 •.., 3s + i) , 0(<7, ai) (q'ltOMi) ,<*2) • Тогда ^(^aaiai) ¥= ф'(q'i, аа1! а2). При этом ai , ai G Л ‘AM(w), где i — длина слова ai, 0 < i < п — 1. Учитывая условие в), получаем, что aia2 есть начало некоторого слова а из AnM(w), 0(<?i, aa') (q'i, aa'), откуда aa' Е D(Wq t, Wq't). Воспользуемся теперь лем- мой 1, в которой положим4f= AnM(w), а в качестве ........Кр возьмем всевозможные множества D(Wqi, Wq't) указанного вида. Согласно лемме 1 существует слово уу, принадлежащее всем этим множествам и имеющее длину, не превосходящую величины (п+ s — 1)] s I А 1п1пр[. При этомр< < (7,- и)21 А 1 ”, где tia =| 5,-о1 <| А | п. Отсюда получаем, что длина слова ys не превосходит (и+ s-1)] 2s | А | "+1 и1п (I А I и2) [. Найден- ное таким образом слово ys и сопоставляем вершине w. Находим далее все возмоядаые слова ^(<?1,у$)> где = (A,Q,B,q>, ф, qt) Е L (w), и для каждого такого слова проводим из w ребро с отметкой 0(<7i,7s), ведущее к новой вершине w'. Согласно построению слова ys, либо для каждого автомата Wqi из L (W), Wqj = (A,Q,B,ip, ^q^, выполняется I Ли'«31, • • • ,3s>) I =1 <21 > либо существует 0s+1 E A{&i,... ,(3S} та- кое, что для каждого Wq из L (w) выполняется ,.... 3s+i}) ,... ,3s)) • В первом случае в качестве 3s+i выбираем произ- вольное слово из (Л •{/?!,... ,/3s})\{31,... ,3s)- В обоих случаях по- лагаем М (у!) ={3i , • • • , 3s+ i) ; условия а) — в) для вершины w при этом будут выполняться. 2. Для каждого автомата Wq^ из L (w), Wqt = (Л, <2,2?, <р, 0, <71), выпол- няется | Rw({^i, • • • ,3s 1) I =1 Q\ , т.е. ... ,3s) содержит базис от- личимости автомата W. Если | L (w) | = 1, то сопоставляем вершине wchobo А и ребра из нее.не проводим. Пусть | L (w) | > 1. Рассмотрим произволь- ную пару (Wqi , ) различных автоматов, принадлежащих L (и»), Wqi = = (A, Q, В, i^,qi), W'q't = (A, Q',B,q>', ^’.q'i). Обозначим Л(И/Ч1, W'q’t) множество всех таких слов а,аЕА*, что либо 0(<?i,a) ¥= ф'(tfi,а), либо автоматы (4l,a) и (q\, а) неотличимы. Установим для произвольно- го слова a, а Е А *, существование такого слова a', а Е AnM(w), что aa' Е ED(Wq ,W'q> ). Если автоматы (Qi и Wp' неотличимы, то а'выбираем в АпМ(w) произвольным образом. Пусть 1и ' (q't, a) отличимы. Обозначим произвольный базис достижимости автомата (Ч >а) • Согласно теореме 2.11 множество ^Л"-1 +1Jlf(w) отличает (q! ,a) от , a); пусть ai Е MiAn- 1 Q 1 +1 M(w) и ,a),ai) #= '(</>'(<?i,a),ai). Поскольку каждое слово из Мх имеет длину, не пре-
восходящую | <21 - 1, то a'i = ai а'3, где а'2 GA', i <и; a3 G 4f(w). С учетом условия в) HaM(w) получаем, что есть начало некоторого слова а', при- надлежащего AnM(w). При этом 0(</>(<?! ,а),а') =# ,а), а'), т.е. аа'е/)(И'Ч1, W'q<1). Далее, как и в случае 1, пользуемся леммой 1,в кото- рой полагаем М= Ап . ,Кр — всевозможные множества D(Wq^, Wq') указанного вида. По этой лемме существует принадлежащее всем та- ким D(Wqt fWq^) слово 73, длина которого не более (n+s — 1)] 2s| А\ "+1иХ Х’1п(| А | п2) [. Сопоставляем слово у3 вершине w. Для каждого слова вида <^(<71, 7s), где Wq^ = (A, Q, В, <р, G L (w), проводим от w ребро с отметкой ^(#1,7s) к новой вершине w'; сопоставляем вершине w слово А и считаем ее концевой. Очевидно, | L (W) | = 1. Покажем, что построенный таким образом простой условный эксперимент Т является установочным для К (А, В, и), и оценим его длину. Пусть Vq = (A ,Q,B,q>,$,q) &К(А,В,п). Для определения результата применения Т к Vq рассматриваем путь v 0 = w0, Ре,w 1, Pi, -_д •, ws -1, Ps -1, ws B дереве T такой, что отметкой ребра р,- слу- жит слово (у? (<?, 7о 71 • • 7;-1), 7/); 7/ — слово, сопоставленное вершине Wj,i = 0,1,..., s -1,7 = 0,1,..., s. Пусть при этом из вершины ws не вы- ходит ребро с отметкой 0(<р(<7,7о • • -7s-i)> Vs)- Очевидно, s <«+ 1. По построению дерева Тимеем ys = A, I L (ws) 1=1. Последнее и означает, что по результату (7о Vi • • • Ъ -1 > Ж То 71 • • • 7s -1)) автомат 7o 71... 7j_ j) восстанавливается однозначно (с точностью до неотличимости), т.е. Т — ус- тановочный эксперимент для К (А, В,п). Длина слова 70 71 • • • 7s не превос- п ходит величины (и+ 1)21 А| "+1 1п(и+1) + S (n+i-1)] 2z |Д|"+1 X z=i X л In (| А\ и2) [,Прии->°° эта величина асимптотически не более чем и2|Л |" + 11пи + 2и1п(|Л | и2)|Л|"+1 S z(n+z-l)~ 1= 1 5 5 ~ 2и |Д |"+11п(| А | и2) —- п3 = — | А |"+1 и4 1п( | А | и2), 6 3 т.е. /а,в(и)-^ — IА | " + 1и41п(| А | и2). Теорема доказана. Перейдем к рассмотрению безусловных установочных экспериментов. Обозначим/^ в (п) наименьшую из величин I (Т, К (А, В, и)), где Т— прос- той безусловный эксперимент, установочный для К (А, В, п). Теорема 2.17 [14,15]. Имеет место неравенство 1'а,в(п)^ < ] 4| А\ 2wzz2ln (2и) [,причем при п-+<*> выполняются соотношения \А\ппри\А1< 5, 1'а, в(п)^ \А |"“2(|Л 1-2)"~2 ” 22"'5 (|Л|—1) 2"~4 п 22п~5 при четных I А I > 6, при нечетных I А I > 6. 90
Доказательство. Построим простой безусловный эксперимент Е, установочный для K(A,{bi, b2}, п). Для каждой пары , V'q' различных автоматов из К (А,{ , b2}, п) рассмотрим множество £)(ИЧ1, Eq't) всех слов а в алфавите А *, для которых либо ф , а) =А ф' (q 1, а), либо автома- ты ^,р(Ч1,а) и неотличимы. Здесь = (A,Q,{bi,b2} ,ip, Ф,Я1), Vq't = (A, Q',{ bi, b2}, ip', фq^). Если a — произвольное слово из A *, то, как нетрудно видеть, найдется слово а из А2п~1, для которого aa'G GD(K4i, V'q[) (см. теорему 2.10). Поэтому, применяя лемму 1 к мно- жеству М= Л2"-1 и семейству К2,..., Кр всевозможных множеств D(Vq , Vq'), где Vqi,V & K{A,{bl,b2},n), V4i ±V'q;, устанавливаем су- ществование слова /3, принадлежащего всем D(Vqi, Vq' ) и имеющего дли- ну I, удовлетворяющую неравенству /<(2и- 1)] \А |2"-1 InC22^)L4 in [; отсюда находим /<] 4|Л | 2"и2 In(2и)[. Слово /3 является безусловным установочным экспериментом для К (А, {bltb2},п). Покажем, что оно является безусловным установочным экспериментом также и для К {А, В, п). Пусть это не так, тогда существуют автоматы Vqi ^(A,Q,B,<р_, ф,д= (A, Q',В, q>', ф',я\) изК(А,В,п), для которых 0(?1,/3) =0'(7i,0), причем состояния </>(<71>Ю и tp' (q'i,0) этих автоматов отличимы друг от друга. Пусть, например, 0(ip(7,0), 7) ¥= =# #(</>'(7,(3), у). Очевидно, у =£А,у = у a,a G А. Можно считать, что сло- во у выбрано наименьшей возможной длины. В этом случае 0(71,07') = - Ф' (<7i ,07) , 0(^ (<7i ,07 ) >«) =А 0'(</(7i, 07'), а). Рассмотрим произволь- ное отображение 0:В->{/>!, 62}, Для которого 0(0(<p(7i,07), a))=Z>i, 0 (0'(/(?i,07' ),a)) =b2. Пусть Wq^ = (A, Q,{bi,b2} ,q>,6 (ф)^1), = ~ (A,Q' Ablfb2} ,ip',0(0'),Q{). Очевидно, Wq , W’q' неотличимы от неко- торых автоматов из К (А, { 6,, Ь2} , п). _При этом, обозначив Ф1 = в (ф), 0'1 =в (0), имеем 01 (71,0) = $) (71,0), 01 (</> (71,0), 7) 0i(</(<7i,0), 7)- Это противоречит тому, что /3 - установочный эксперимент для К(А, {ii,i2} ,и). Итак, /3 — установочный эксперимент для К(А,В,п) и 1'а ,в (п) < <] 4| А | 2"и2 In (2и) [. В случае | А | <5 нижняя оценка для ГА <в (и) полу- чается с учетом ГА в (п) > /л >в (и) > | Л | ”. Если же | Л | > 6, то для полу- чения нижних оценок используются автоматы из доказательства теоре- мы 2.12. Теорема доказана. § 7. КОНЕЧНЫЕ АВТОМАТЫ КАК АКЦЕПТОРЫ Конечный автомат можно рассматривать как устройство, распознающее некоторое множество М входных слов. Поступление на вход автомата последней буквы такого слова вызывает (в тот же момент) особую внеш- 91
нюю реакцию автомата. Займемся исследованием структуры множеств слов, распознаваемых в этом смысле конечными автоматами. Пусть Vq = (A, Q, В, <ф, 0,<?) - инициальный конечный автомат, В' С В. Множество М= {ajaEA*, ф (<7, а) ЕВ'} называем представимым в конеч- ном автомате Vq с помощью подмножества В'выходных символов. Гово- рим также, что автомат Vq представляет М посредством В'. Подмножества множества А * \ { Л } далее называем событиями в алфавите А (или, короче, событиями). Если существует конечный автомат Vq, представляющий событие М посредством некоторого подмножества В', то событие М назы- ваем представимым. Помимо обычных теоретико-множественных операций над событиями, будем использовать следующие две операции: 1) Произведение событий Мх и Л/2 (обозначаем М^Мг) есть множество всех слов вида aj a2, где aj EMt, a2 EM2 2) Итерация события М (обозначаем (МУ) есть множество всех слов видай! .. . ак, где aj ЕМ,..., ак ЕМ, к> 1. Заметим, что ф • М = М• ф = ф,(фУ = ф,(МУ = М > UМ, М(МУ = (МУМ. Лемма 1 [53]. Соотношение Х = Х- С (JD выполняется для событий С, D, X тогда и только тогда, когда X = D < О U D. Доказательство. Если X = D, то X- CU D = D(Cy С U ODCOD=D(C(C)VC) UD = О(СУи D Пусть теперь X = XCOD. Если X <С> U D, то рассмотрим кратчайшее слово а, принадлежащее X\(D (СУUD). Имеем аЕХС(д D,a D, откуда а = а1а2,где ai Е X, а2 G С, причем (так как a — кратчайшее из X\(D <О U D)) ai 6 D < СУ U D. Но тогда a Е D < О - противоречие. Поэтому X С D (СУ U D. Если D <С> U . UD <^Х, то рассмотрим кратчайшее слово а, принадлежащее (D < С) UD) \ X. Имеем а^Х, т.е. a^D. Поэтому a = cq a2> где aj ED (СУ U D, a2 CC. Так как a - кратчайшее из (D (СУС D)\X, то a.^ EX via. EXC, т.е. a EX - противоречие. Лемма доказана. Событие М, MCA*, называем регулярным, если его можно получить из событий вида ф,{а}, аЕА, применением конечного числа операций U, , < >. Более подробно, определение регулярных событий таково: 1) фи {а} , где а - произвольный символ алфавита А, - регулярные события; 2) еслиТ?! иТ?2 - регулярные события, то R1 U R2rRl R2, ( /?1>-регу- лярные события; 3) регулярность произвольного события устанавливается в соответствии с пп. 1), 2) за конечное число шагов. Лемма 2. Пусть Rif;i = 0, 1,.. . ,и, 7 = 1,... ,п,- регулярные события, Х2,... ,Хп — события, удовлетворяющие системе уравнений (Xt =X1R11U...UXnRnl UR0l, ............................ (1) \X„=X1Rln'J...UX„Rn„UR0„. Тогда события Х2,... ,Хп регулярны. Доказательство. Используем индукцию по п. В случае п = 1 имеем Xi =Х17?ц U7?01, и по лемме 1 Xi =7?Oi (Ri! У U7?Oi, т.е. Xi регулярно. Пусть утверждение леммы доказано для некоторого п = к - 1; 92
рассмотрим случай п = К. из последнего уравнения системы (1) получаем U Яо„ = Xt(Rin<Rnn> U Rln) U...U X„_1(7?„_li„<7?„„>U7?„_1„)U U Ron <Rnn >и R0n• Подставляя найденное для Хп выражение через неиз- вестные Xi,..., Хп_! в первые п - 1 уравнений системы (1) и группируя подобные члены, получаем систему уравнений для Xi,..., Хп_ j, вид кото- рой аналогичен виду системы (1), а ’’коэффициенты” при Xi,... ,Xn_Y и ’’свободные члены” регулярны. Согласно предположению индукции отсюда вытекает регулярность событий Хх,..., Хп_!. Так как Хп выражается через регулярные события Йл,.. . ,Хп_у ,Ron>Rtn> • • • >Rnn ПРИ помощи опера- ций < >, •, U, то Хп регулярно. Лемма доказана. Лемма 3. Каждое событие, представимое в конечном автомате, являет- ся регулярным. Доказательство. Пусть Vqi =(А, Q, В, <р, ф^), В'СВ, М = {а\аЕ GA*, ,a)GB'} , Q = {qlt..., qn}. Обозначим М,- = {a|a€zA*,a¥= A, ,a) = q, }, M- = { a \a G A, $(qj, a) E В'} . Как легко видеть, M = = МХМ J U ... UMnMn СобытйеМi = 1,..., п, имеет вид {ai, . . . ..., а3}, где aj Е А, j = 1,. .., s, s > 0. При s = 0 имеем М,'= ф, при s > 0 — = {ail U .. . О }as} , т.е. событияМ{,... ,М'п регулярны. Поэтому для установления регулярности события М достаточно установить регулярность событий М1,.. ., Мп. Обозначим Rq = { а | а Е А, if>(qh а) = q^}, i = 1, s .. ,п, j = 1,... ,п. Очевидно, события Rq регулярны, причем выполняются соот- ношения (Mi =M1RIl U ...UMnRnl Ufln, {М„=М^1п V...UMnRnnURln. По лемме 2 события Мг,... ,Мп регулярны, и лемма 3 доказана. Для доказательства представимости каждого регулярного события введем понятие обобщенного источника. Обобщенным источником в алфавите А назовем конечный ориентированный граф G, у которого выде- лены начальная и финальная вершины v,w, v ¥= w, причем каждому ребру приписано пустое слово А либо символ алфавита А. Допускается наличие в графе G петель и параллельных ребер. Путем в обобщенном источнике G называем последовательность я: vi,pi,v2, Р2,... ,pn,vn + 1, где i>i, . .. . ,vn + ! — вершины графа G, Pj — ребро графа G, ведущее от вершины и,- к вершине и1 + 1, i = 1,... ,п, п > 1. Пути ясопоставляем слово [я] = = Я1 .. ,ап, где а{ — символ алфавита Л либо пустое слово А, приписанные ребру pf, z = 1,.. ., и. Говорим, что путь я ведет от вершины i к вершине ц„ + 1. Пусть аЕА*, а ¥=А, и - вершина обобщенного источника G. Мно- жество всех вершин и' обобщенного источника G, для которых существует путь я, ведущий от и к и' и такой, что [я] = а, обозначаем в (и, а). Каждый обобщенный источник G с начальной вершиной и и финальной вершиной w определяет событие |G|={a|aGX*,a¥=A, wG 0(u,a) } . Лемма 4. Если событие R регулярно, то существует такой обобщен- ный источник G, что R = IG |. Доказательство. Если R = ф либо R = {а} , где а Е А, то искомый обобщенный источник G указан на рис. 2.12, а либо соответственно на 93
рис. 2.12, б. На рис. 2.12 через и обозначена начальная вершина источника G, w — финальная вершина источника G. Пусть R = R2 U R2 и Gi,G2 — обобщенные источники, такие, что Ri = I Gj I, R2 - I G2 I. Можно считать, что множества вершин графов Glt G2 не пересекаются. Объединим графы Gj, G2 и введем две новые вершины v, w. От л проведем ребра с отмет- кой Л к начальным вершинам обобщенных источников Gi, G2; к w прове- дем ребра с отметкой Л от финальных вершин этих обобщенных источни- ков. Получим обобщенный источник G с начальной вершиной v и финаль- ной вершиной w, для которого | G | = R i U R2 (рис. 2.13). г» г» а) б) Рис. 2.12 Рис. 2.15 Пусть К = R 1 • R2 и G \, G2 — обобщенные источники, для которых Ri = | Gi I, Ri = | G2 |, причем множества вершин графов Gi ,G2 не пересе- каются. Проведем от финальной вершины обобщенного источника Gj ребро с отметкой Л к начальной вершине обобщенного источника G2. Получим обобщенный источник G, начальной вершиной которого служит начальная вершина и графа Gi, а финальной — финальная вершина w гра- фа G2. При этом | G | = Ri R2 (рис. 2.14). Пусть R = (Ri) и Gi — обобщен- ный источник, такой, что Ri = I Gt [. Проведем от финальной вершины w обобщенного источника Gj ребро с отметкой Л к начальной вершине v этого обобщенного источника. Получим обобщенный источник G с теми же начальной и финальной вершинами, что и G i, причем IG | = (R i > (рис. 2.15; возможно появление параллельных ребер с отметкой Л,ведущих от w к о). Таким образом, лемма доказана индукцией ”по построению” регулярного события R. Лемма 5. Если G - обобщенный источник, то событие |G | предста- вимо. Д о к а з а т е л ь с тв о. Пусть {uj,..., и„} =М — множество вершин обобщенного источника G, причем —его начальная вершина, и финаль- ная вершина. Обозначим Q множество всех подмножеств множества М (включая ф и самоМ).Рассмотрим автомат =C4,Q,{0,l} ,(p,0,{i/i}). Функции tp и ^/определены следующим образом: ф(д. а) = U 0(и, а), v е q (<?, а) = 1 при vn S а) и а) = 0 в противном случае. Покажем, что для любого непустого слова а, а € Л*, выполняется ,а) = 0(i?i, а). 94
Если а — символ алфавита А, то это верно по определению функции </>. Пусть равенство (р({ , а) = 0(t>i, а) доказано для всех непустых слов а длины I и а — слово длины I +1,а = а1 а, а&А. Тогда <Х {i^} , «) = =</>(</>({ }, аДд) = ,aj),а) = U 0(и,а) .Пусть wG0(uj,а) . V 6 0(и, , Gj ) Тогда существует путь я: Ui, pi, Vj , Pi, vit, . . . ,ps, vis = w такой, что [я] = «1 .. .as = а, а, — отметка ребра pt, i= 1,... ,s. Выберем г , для которого Д1 .. ,ar = a1,ar+1 .. .as = a, г&{1,... ,s - 1} . Тогда vir G G0(ui,ai) и w&6(Vj ,д),т.е. wG U в (у, а). Обратно, если w G ' v £ 0(Ui , “1) G U в (у, а), то выберем v' G в (у2, ), для которого w G в (уа), v £ 0(и, , а, ) и рассмотрим путь Я!: i?i ,pi, Vjt ,р2, , pr, vir - v', [Я1] =&!, а также путья2: v' = vir,pr+1,vif+l, pr+2, • • • ,PS, i>is = w, [я2] = а. Очевидно, путь Л1Я2: Ui,Pi,uZ1 ,p2,... ,ps, = w удовлетворяет условию [я! я2] = = aia =a, т.е, wG0(ui,a). Итак, <p({ui} , а) = в(у1г a), и шаг индукции завершен. Если a G | (71, то G 0 (uj, a) = <р( {i>i} , а), так что по определе- нию функции ф получаем ф( ,а)=1 ; если же IG |, то v„ ^9(yi ,а)и , a) = 0. Таким образом, событие |(7|: представимое автомате Uo} с помощью множества {1} , и лемма доказана. Как следствие лемм 3, 4, 5 получаем следующее утверждение, принадле- жащее Клини [24]. Теорема 2.18. Событие Е в алфавите А представимо тогда и только тогда, когда оно регулярно. Как легко заметить, множество представимых событий в конечном ал- фавите А счетно; в то же время множество всех событий в алфавите А имеет мощность континуум. Поэтому существуют события в алфавите Л, не являющиеся представимыми. Приведем пример такого события. Пусть М — множество всех слов в алфавите {0, 1}, у которых число нулей равно числу единиц. Предположим, что М представимо в автомате Vq = = ({0, 1}, Q, В, <р>, ф, q) посредством В*, В' £ В. В силу конечности множест- ва Q найдутся такие z'iHi2„ *4 =А*2, что q>{q, (У1) = <p(q, 0f’) (где 0* = = 0^0). Но тогда 0(z?, 0f4z*) = 0’>), 1'*) = фЩд, О'2),!'1) = i = 0(</, 0#а1*»), что невозможно из-за ф(у, О*11'1) G В', ф(у, О'31'1) ^В'. Поэтому событие М не является представимым. Перечислим некоторые способы задания регулярных событий. Первым из таких способов, уже рассмотренным выше, является задание регулярно- го события посредством автомата Vq = (A, Q, В, <р>, ф, q) и подмножества В' множества В. Заметим, что для получения всего класса регулярных со- бытий достаточно ограничиться случаем В = {0, 1}, В' = {1}. Действитель- но, указанный выше автомат Vq представляет посредством В* то же са- мое событие, которое посредством {1} представляет автомат Vq = = (A, Q, {0, 1}, <р, ^',q), где ^'(q, a) = 1 при ф(ц, a) G В' и фХу, а) = 0 при ^(q,a)^B'. Другим способом задания регулярных событий, как вытекает из лемм 3, 4, 5, является указание обобщенного источника. Если в обобщенном источ- нике отказаться от приписывания ребрам пустого слова Л и выбирать не 95
одну, а несколько финальных вершин, то получаем граф, называемый источником. Таким образом, источник в алфавите А есть произвольный конечный ориентированный граф G с выделенной начальной вершиной г и выделенным множеством {wj, ..., w„} финальных вершин (возможно, и G {W1, . .. , w„}), каждому ребру которого приписан символ алфавита/!. У источников, как и обобщенных источников, могут быть петли и парал- лельные ребра. Путь л, слово [л] и множество вершин в(и, а), а & А*, а =# Л, определяются для источников так же, как для обобщенных источ- ников. Пусть G - источник с начальной вершиной v и множеством {и»!,..., w„ } финальных вершин. Тогда I G | по определению есть мно- жество всех таких непустых слов а, а G А*, что 6(и, а) содержит хотя бы одну из вершин . .., w„. Построим по источнику G обобщенный ис- точник G , присоединив к G новую вершину w и проведя от »], . . ., w„ к вершине w ребра, отмеченные пустым словом Л; w есть финальная вер- шина обобщенного источника GОчевидно, | G' | = | G |, откуда получает- ся, что каждый источник G определяет некоторое регулярное событие | G |. Покажем, что для каждого регулярного события R существует источник G такой, что | G | = R. Рассмотрим автомат 7с/о = (A, Q, В, <р, ф, q0), представ- ляющий R посредством В1. В качестве вершин источника G выберем эле- менты множества {q0} U {(<?', b') \q' G Q,b' G В}. Из вершины q0 для каждого a G А выходит ребро с отметкой а, ведущее к вершине ((р(<7о, а), 0(<7о, а)); из вершины (q1, b') ,q' G Q,b' G В, для каждого а е. А выходит ребро с отметкой а, ведущее к вершине (y(q', а), ф(ц', а)). На- чальная вершина источника G есть q0; финальные вершины суть все верши- ны вида (</, Ьг), где b' G В'. Как нетрудно проверить, для любого слова а из А*, а =# Л, выполняется 0(<?о, а) = {(</>(<7о, <*), >К<7о, а))}; отсюда и получаем | G | = R. Сравним сложность задания регулярных событий посредством автоматов и источников. Так как без увеличения числа состояний автомата каждое ре- гулярное событие можно задавать автоматом вида Vq<) = (А, Q,{0,1}, ^,0,<7о)> то из предыдущего рассуждения вытекает, что существует источник не бо- лее чем с 2п + 1 вершинами, представляющий то же событие, что и автомат с п состояниями. Рассмотрим обратный переход (т.е. от источника к авто- мату) . Для произвольного источника G обозначим L (G) наименьшее число состояний автомата Vq, представляющего посредством некоторого мно- жества то же событие, что и источник G. Пусть L (т, п) — наибольшее зна- чение величины L (G) для источников G в алфавите {1, ..., т}, имеющих п вершин. Величина L (т, п) характеризует, насколько может усложниться задание регулярного события при переходе от источника к конечному ав- томату. Имеет место следующая Теорема 2.19 [37]. При т > 2, л > 3 выполняется Ь{рт,п) = 2п. Доказательство. Пусть G - источник в алфавите {1, ..., т}, имеющий п вершин; обозначим эти вершины щ, ... , vn. Пусть при этом щ — начальная вершина источника G, F — множество его финальных вер- шин. Рассмотрим автомат Ipj = ({1, . .., т}, Q, {0, 1}, <р, ф,{ v,}), у ко- торого Q ={ q \ q — ( Щ ,, vn}}, ip(q, i) = U 0(v, i~), ф(д,г) = \ тогда ufc q 96
и только тогда, когда ф (q, z) И F ф, q G Q, i {1,..., w}. Нетрудно прове- рить, что j представляет событие | 6|; при этом число состояний автомата } равно 2", откуда и вытекает оценка L (т, п) <2". Для получения нижней оценки величи- ны £ ( т, п) рассмотрим источник Ст,„, указанный на рис. 2.16. Начальная вершина этого источника есть у1э множество фи- нальных вершин — {Di}. Пусть Vq<, = - ({1, .. . ,т}, Q, В, ф, 0,z?o) - автомат, представляющий посредством некоторого множества В' событие | Gm „| . Для каждо- го а Е А * обозначим S (а) = в (v i, а) при а =# Л и 5 (Л) = { Hi} . Обозначим также Е (а) множество всех таких слов /3, Рис. 2.16 (3 Е А*, Р Ф Л, что при не- выполнено О (у , /3) О F #= ф (если 5 (а) = ф, котором п е 5 (а) то F(a) = ф). Как нетрудно проверить, {a)F(a) есть множество всех от- личных от а слов события | Gm>n |, началом которых является слово а. Поэтому F(a) = {/31 0(ф(<7о, а), /3) G В1}, так что £(а) однозначно опреде- ляется по состоянию ф(<7о, а), и число состояний автомата Vq° не менее числа различных множеств Е(а). Таким образом, для получения оценки L(m, и) > 2” достаточно установить, что каждое из 2” подмножеств мно- жества вершин источника Gm>n представимо в виде 5(a) и что различным множествам 5(a) соответствуют различные множества F(a). Произволь- ному непустому множеству М вершин источника Gm п сопоставим тройку к(М) = (Л), к2, к3), где кх — число элементов в М, к2 — разность между наибольшим и наименьшим номерами вершин в М, к3 — наименьший номер вершин из М. Если к(М') = , к'2, к3), причем ki = к\, .. ., к, = к\, к,.^ < Л,- + 1 при некотором i Е {0, 1,2}, то полагаем к (М) < к(М'). Отно- шение < линейно упорядочивает множество троек (kit к2, к3) указанного вида, причем минимальным элементом является тройка (1,0, 1). При этом к(М) = (1, 0, 1) для единственного множества М ={fi), причем {щ} = = 5(A). Рассмотрим произвольное непустое множество М вершин источни- ка Gm n, для которого все непустые множества М' вершин этого источни- ка, удовлетворяющие соотношению к(М') < к(М), представимы в виде 5(a). Покажем, что в этом случае множество М также представимо в ука- занном виде. Обозначим М = (,..., vip}, z'j < ... < ip, к (1И) = (£,, к2, к3). Если ix =1, i2 = 2, то положим Л/' ={ и, _ j,. .. , v, _ 1; и„). Число элемен- з р тов в М' меньше, чем в М, т.е. к(М) < к(М), и при некотором а имеем М’ = 5(a). Но тогда М = 5(al). Если z’j = 1, i2 = 3, то положим М1 = = {и,, v2, vi} _1, ... ,Vj , k(M') = (k\,k2,k'3). Имеем кх = к\,к2 > >к2, т.е. к(М')<к(М') и при некотором a М' = 5(a). Но тогда М = = 5(а2). Если z) = 1, i2 > 4, то положим М' = {v2, и,г _ i, .... -1}, к(М') = (к\, к2, к'3). Имеем kt = к\, к2 > к2, т.е. к(М')< к(М) и при не- v. В.Б. Кудрявцев 97
котором а М' = S(a). Но тогда Л/ = 5(а2). Если z'i >2, то полагаем М' = = {^1 -1-1, • • •, vip-i}, k(M") = (k'ir к'2, к'3). При этом Ад = к,, к2 = = к2, к3>к’3, т.е. к(М')< к(М), и снова М' представимо в виде S(a). Но тогда М = 5 (а 1). Итак, установлена представимость в виде 5(a) всех непустых подмно- жеств вершин источника Gmrl. При некотором а имеем {и„} = 5(а), но тогда S(a 2) = ф, так что пустое подмножество также представимо в указан- ном виде. Пусть S (а) = {и,- ,... ,vt } , ii < . . .<ik. Выделим в Е (а) под- множество Е'{а), образованное всеми словами в алфавите {1} , длины которых заключены между 1 и п (включительно). Как нетрудно заметить, длины слов из Е'(а) равны п + 1 — z'i, п + 1-/2 , • • ,п + 1 — ik при 1к ¥= и и равный + 1 — z'i,.. . ,п + 1 — ik, п при ik = п. Кроме того, Е(а) содержит слово 2 ... 2 1 при i j = 1 и не содержит его при i ] =# 1. Поэтому множество п - 2 5(a) однозначно восстанавливается по множеству £(а), и различным мно- жествам 5(a) соответствуют различные множества £(а). Это и завершает доказательство теоремы. Еще одним средством задания регулярных событий служат так называе- мые регулярные выражения в алфавите А. Эти выражения представляют собой слова в алфавите Ли{ф, V,-,(,>,(,)}, определяемые следующим образом: 1) символы алфавита А и символ ф — регулярные выражения; 2) если а, 0 - регулярные выражения, то (a V 0), (а • 0), (а) - регулярные выражения; 3) каждое регулярное выражение получается в соответствии с п. 1) либо п. 2) данного определения. Событие |Л|, определяемое, регулярным выражением R, есть пустое множество в случае R =ф, множество {а} — в случае R = a, a G А, множество |/?i I U|T?21 — в случае 7? = (7?1 V Т?2), множество |7?! I • |Т?2 I — в случае R = (R i R2) и множество <|Ri |> - в случае R ^R^ В ряде задач теории автоматов возникает необходимость проверять равенство регулярных событий. Пусть регулярные события R, R' заданы представляющими их посредством множества{ 1} автоматами Vq =(А, Q, {0, 1} ,ф, ф, q) и Vq’=(A,Q', {0,1} ,ф',ф' q'~). Пусть сначала R =#/?'; без ограничения общности считаем, что R <£.R '. Выберем а, принадлежащее R \R'. Имеем $(q, a) = 1, ф '(qa) = 0, т.е. состояния q и q' отличимы. Пусть теперь состояния q и /у'отличимы; покажем, что тогдаR R '. Выберем кратчай- шее слово а, для которого ф (q, а) #= ф '{qа); тогда а принадлежит одному из событий R, R' и не принадлежит другому, так что события R и R' раз- личны. Таким образом, события R и R' равны тогда и только тогда, когда состояния q и q' автоматов Vq и Vq' неотличимы. Как установлено выше, отличимость состояний q, q' может быть обнаружена уже на словах длины IQ I + IQ 1 — 1 (если эти состояния отличимы). Поэтому сравнение значений ф(д,а) и ф'(ц',а') для всех слов а указанной длины и дает алгоритм проверки равенства R=R'. Заметим, что трудоемкость процедуры распо- знавания неотличимости состояний q, q' может быть уменьшена, если вместо перебора всех слов длины | Q Н | Q '| — 1 (число которых равно |^|121 + 12 |-1) строить последовательность пар состояний автоматов Vq и 9&
V^’, начиная с пары (q,q') и присоединяя для каждой уже построенной пары (</,, q'i) все отличные от построенных ранее пары вида (чз (<?,-, a), tp(c[j,a)), а&А. Через конечное число шагов приходим к множеству пар {(q\,q[), . . .., (Qs> Qs) }>s IQ I ‘ 12'1, причем состояния q и q' неотличимы тогда и только тогда, когда для любого a G А и любого / €= {1,.. ., s} выполняется а) = Ф'^'с а)- Если регулярные событияR и R' заданы не автомата- ми, а источниками, регулярными выражениями и т.п., то для проверки равенства R =R' предварительно переходим к заданию их автоматами. Возможна и непосредственная проверка равенства регулярных событий, заданных указанными средствами (см., например, работу [53], где приво- дится алгоритм проверки равенства событий, заданных регулярными выражениями. По существу, этот алгоритм осуществляет неявный переход к автоматному заданию, после чего реализует указанную выше процедуру). В заключение параграфа установим ряд простых утверждений о регуляр- ных событиях. Утверждение 1. Если R,. и R2- регулярные события в алфавите А, to(Ri ОR2),(Ri\R2),A*\Ri - также регулярные события в алфавите А. Доказательство. Пусть И1/о = (Л, Q, {0,1} , <р, ф, q0) - автомат, представляющий событие-Ri посредством {1} , Vq'o=(A, Q', {0,1} , <р', ф', qo) — автомат, представляющий событие R2 посредством {1} . Для представления события R ] C\R2 используем автомат V(q q') =(А, Q X Q', { 0,1} , ф", (q0, qo)). Здесь <p'\{q,q'), (j) = (<p(q, a), ip'(q', а)), ф"((q, q’),a)= 1, если ф(q, а) = ф '(qа) = 1, и ф"((q, q'), а) = 0 в противном случае. Легко видеть, что Р]''о,q) представляетR] C\R2 посредством{1} . Для представления события A*\Ri используем автомат Vq” = (A, Q, { 0,1) , <р, Ф qo), где ф'"(с1, а) = 1 тогда и только тогда, когда Ф(ц, а) - 0. Далее, Rt\R2 =Ri C}(A*\R2), и случай события 7? i \Т?2 сводится к разобранным выше. ' Пусть А = А । X А 2. Для произвольного слова a G А *, а = а(1)а (2) . . . .. .a(n),a(i) = (al(i),a2(i)), рассмотрим словааД!)... аДн) и а2(1) . . . ...а2(п), обозначаемые соответственно ргДа) и рг2(а). Если R СА*, то множество {ргДа) |а £R} обозначаем через рг((7?), i = 1,2. Утверждение 2. Если A =A\XA2uR- регулярное событие в алфавите А, то событие рг,(/? ), 7=1,2, регулярно. Доказательство. Утверждение получается несложной индукцией по построению регулярного выражения, определяющего R. При этом используются соотношения рг((7? i U7?2) = pr,(^1)Upr,(7?2), рг/(7?j • R2) = = РД(Я 1) • ргДЯ2), РЧ( <R 1 >) = <рг,(Я!) >, i = 1, 2. Утверждение 3. Если R - регулярное событие в алфавите А, то множество М всех слов вида а(1)... a(n),a(i) GA, i = 1,.. . ,п, у которых каждое начало а(1)... a(i), i = 1,. .. ,п, принадлежит R, является регу- лярным. До казательство. Пусть Vq = (А, Q, {0,1} , <р, ф, qx) — конечный автомат, представляющий событие R посредством {1} . Выберем элемент <7 о, qo 0 2,и построим автомат Vq = (А, Q U {q0} ,{0,1} ,<р', ф', qt), у которого <p'(q, а) = <p(q, а) и ф '(q, а) = 1 в случае q & Q и ф(ц, а) = \ ,<p'(q, а) = = 7о и ф \q, а) - 0 в случае q = qa либо ф(ц, а) = 0. Нетрудно проверить, что ДД представляет М посредством {1} . 7* 99
§ 8. КОНЕЧНЫЕ АВТОМАТЫ КАК СВЕРХАКЦЕПТОРЫ Если рассматривать конечный автомат Vq = (A, Q, В, ср, Ф-q) как устрой- ство, воспринимающее бесконечные входные последовательности (сверх слова), то ’’реакцией” автомата на сверхслово а можно считать множество тех символов алфавита В, которые возникают в соответствующей выход- ной последовательности бесконечное число раз. При этом возникает ана- логичная изучавшейся в предыдущем параграфе задача описания множеств входных сверхслов, для которых ’’реакции” автомата удовлетворяют заданным наперед ограничениям. По существу, здесь речь идет об описании таких входных последовательностей, при которых поведение автомата является в некотором смысле устойчивым: после появления конечного числа ’’недопустимых” значений на выходе далее возникают только ’’допус- тимые” значения, причем каждое из них — бесконечное число раз. Будем называть пределом сверхслова ос, a G А , ос = а(1)а(2) . . ., мно- жество*таких символов a, a G А, что для некоторой бесконечной последова- тельности i [, i2, г'з, • • • выполняется a (if) = a,j =1,2,... Предел сверх- слова а обозначаем lim(a). Пусть Vq = (A, Q, В, ф, ф, q) - конечный автомат. Для произвольного сверхслова а в алфавите А, ос = а(1)а(2) ... , обозначаем через ф(ц, ос) такое сверхслово (3 = b(\)b(2) . . , что b(i) = ф (q, а(1) ... a(i)) ,i = 1, 2, . . . Пусть Bi, В2.Вк - некоторые попарно различные подмножест- ва множества В. Множество М = {а| ос GA°°, Ит(ф(д, oc))G {В1г. .. , Вк.}} называем представимым в автомате Vq с помощью семейства {В\,... ,Вк } подмножеств выходных символов. Подмножества множества А°° называем сверхсобытиями в алфавите А. Сверхсобытие 5 называется представимым, если существует инициальный конечный автомат Vq = (A, Q В, ср, ф, q), в котором это сверхсобытие представимо с помощью некоторого семейства В' подмножеств выходных символов. Говорим в последнем случае, что автомат V^ представляет сверхсобытие 5 посредством В . Рассмотрим следующие две операции, позволяющие получать сверх- события: 1) Произведение события Мх в алфавите А на сверхсобытие М2 в этом же алфавите (обозначается Л/[ -М2) есть сверхсобытие в алфавите А, состоя- щее из всех таких сверхслов а = а(1)а(2) . . . , что при некотором i €= { 1, 2, . . . } слово я(1) ... a(i) принадлежит М , а сверхслово a(i + 1) a(i + + 2) ... принадлежит М2. 2) Сверхитеррация события М в алфавите А (обозначается ЛГ”) есть сверх- событие в алфавите Д, состоящее из всех таких сверхслов ос= д(1)д(2) .. ., что для некоторой возрастающей последовательности i i = 1, i 2, i3,.. . нату- ральных чисел выполняется a(if)a(ij + 1) . . . а(/у + 1 - 1) ^M,j = 1,2,... Заметим, что обозначение м согласуется с введенным ранее обозна- чением А°°. Имеем ф°°=ф и для любого сверхсобытия М выполняется ф- М = ф. Определим класс общерегулярных сверхсобытий в алфавите А: 1) если R — регулярное событие в алфавите А, то R' есть общерегуляр- ное сверхсобытие в алфавите А; 2) если 7?! — регулярное событие в алфавите А и R2 — общерегулярное сверхсобытие в алфавите А, то R2 есть общерегулярное сверхсобытие в алфавите А; 100
3) если Я, и Л2 - общерегулярные сверхсобытия в алфавите А, то В 1 иТ?2 — общерегулярное сверхсобытие в алфавите А; 4) общерегулярность произвольного сверхсобытия в алфавите Л уста- навливается в соответствии с пи. 1), 2), 3) за конечное число шагов. Для произвольного слова а обозначим {/(а) множество символов, входящих в а. Лемма 1. Пусть V = (A, Q, В, ф) - конечный автомат, qi G Q, В' С В. Тогда множество Мвсех непустых слов а в алфавите А, для которых ip{qi, а) = qt и и(ф (<7|, а)) = В', является регулярным. Доказательство. Обозначим М\ = {al a G А *, а #= Л, <р (сц, а) = = qi} . Регулярность множества Mi была установлена при доказательстве леммы 3 из § 7. Для произвольного D QB обозначим R (D) регулярное событие, представимое автоматом = (A, Q, В, V,$,qi) посредством.!). Пусть R' (D) — множество всех слов а таких, что каждое непустое начало слова а (включая само а) принадлежит R(D). Согласно утвержде- нию 3 из предыдущего^ параграфа R' (D) регулярно. При этом R (D) = = {alaG Л*,а#=Л, 17(ф (<7i,a)) CD} . Пусть 5' = {bi, . . . ,bs} и Dj = = В'\ {bj} ,i = 1, . . . , s. Тогда {ala G Д* a!A, П(ф ( a)) = = В'} = R'(B') \ (R’iDr) U . . . U R’(DS)), M = Mi A (R'(B') \ (R'(Di} U . . . . , . U R\DS}}. Для доказательства леммы остается воспользоваться утвер- ждением 1 из предыдущего параграфа. Лемма 2. Если сверхсобытие R представимо, то оно общерегулярно. Доказательство. Пусть Vq t = (A, Q, В, ц>, ф, q{) - конечный ав- томат, представляющий R посредством семейства В' = {В1, ..., Вк } под- множеств множества В. Обозначим Q = { q}, ..., qn}. Рассмотрим для каж- дого i = 1, ..., п множество М, = {a|a G А*, а¥=Л, >p(qi, а) = q,}; регу- лярность множества Mt была установлена при доказательстве леммы 3 из § 7. Обозначим также Mif у-i = 1, ..., п, j - 1, .... к, множество {a|a G G A*, a ¥= E.,q>{qt,a) = qir [/(^(q^a)) = В,); согласно лемме 1, это мно- п к жество регулярно. Пусть М= U О (Mit j )” ; событие М общерегу- ‘ = I i = 1 лярно. Покажем, что R — М. Если a G М, а = а (1) а (2) ..., то для некото- рых Pi G { 1, ..., п}, р2 G { 1, к} и натурального s выполняется Оо = = а (1) ... a (s) G MPi, a (s + 1)а (s + 2) ... - сверхслово, принадлежащее (^Р1,рЗ°°- Последнее означает, что для некоторой последовательности 11 = х + 1, г2, ?’э, ()/ < ij +i при / = 1,2,...) каждое слово а,- = = a (Jj}a {ij + 1) ... a (j, +1 - 1), / = 1,2, ..., принадлежит МР1> р?. Рас- смотрим сверхслово (3 = ФСп.а), (3 = Ь(Г)Ь(2) ... Обозначим 0О = й(1) ... ... b(s}, 3; = b{ij)b{ij + 1) ... b(Jj +i — 1), j = 1,2, ... Имеем (30 = = Ф(^1, a0), flj = &(<P(qi, «004 ... ay_j), ay ) = $(qPi, ay), причем U{^{qPi, а, )) = ВРг. Отсюда ясно, что lim (|3) = BPi, т.е. a G R. Обратно, пусть a G R, a = a(l)«(2) .... причем Нт(ф(^, a)) = Bp, p C { 1, ...,k}. Обозначим ф(<?, a) = (3 = b(l)b(2) ... В силу конечности множества состоя- 101
ний автомата Vq, можно указать такое состояние qr , что qr = <р (qi, а (1) ... ...«(/)) для бесконечного множества значений j. Выберем такое натураль- ное i 1, что qr = (qx, а (1) ... a (ji)), причем b(i) G Вр для всех i > i।. Пусть уже выбраны значенияi.x < ... < im, qr = (qx, a (1) ... ... «(/,)),/ = 1, U(b(ij +1) ... b(ij+l)) = Bp, j = 1, ..., m - 1. Тогда в силу того, что lim(/3) = Вр, можно указать такое значение i'm +1, что U{b(im + 1) ... &(i'm+1)) = Вр\ выбираем значение (m + 1 > i'm + x так, чтобы qr = q>(qx,a(l) ... a (im +1 )). Таким образом, получаем некоторую последовательность iXji2, is, '• Для каждого / = 1, 2, ... имеем a(ij + 1)«(/7- +2) ...a (ij +1) ЕМГ> р, а.(1) ... a (ij ) G М,., Это и означает, что a G Мг (Мг р)°° Лемма доказана. Чтобы доказать представимость общерегулярных сверхсобытий, нам по- надобится понятие сверхисточника. Сверхисточником в алфавите А назовем конечный ориентированный граф G, у которого выделены начальная вер- шина и и множество финальных вершин {их,.... ип }, причем каждому реб- ру приписано пустое слово А либо символ алфавита А (при и = 1 получаем введенное ранее понятие обобщенного источника; если отметки А отсутст- вуют, то - понятие источника) . Допускается и G { Uj, ..., и„}. Сверхпутем в сверхисточнике G называем бесконечную последовательность я: wx,px, w2, р2, w3, ..., где w2, ... — вершины графа G, р, — ребро графа G, ве- дущее от вершины W, к вершине w(+1, i = 1,2,... . Сверхпути я сопостав- ляем сверхслово [я] = а1а2Яз ..., где а, — отметка ребра рх, i = 1, 2, ... Вершину W] называем началом сверхпути я. Вершина w называется пре- дельной вершиной сверхпути я, если w = w, для бесконечного множества индексов z. Множество предельных вершин сверхпути я обозначаем lim (я). Каждый сверхисточник G определяет сверхсобытие R, состоящее из всех таких сверхслов a, a G А°°, что для некоторого сверхпути я с нача- лом v выполняется [я] = а и хотя бы одна из финальных вершин сверх- источника G принадлежит множеству lim (я). Сверхсобытие R будем обоз- начать через II G II. Лемма 3. Если сверхсобытие R в алфавите А общерегулярно, то су- ществует такой сверхисточник G, что R = ||(7||. Доказательство. Докажем лемму индукцией ”по построению” сверхсобытия R при помощи указанных выше операций сверхитерации, произведения и объединения. Пусть сначала R = (/?!)“, где Rx — регуляр- ное событие, определяемое обобщенным источником Gx с начальной вер- шиной v и финальной вершиной w. Тогда G получается из Gx добавлением новой вершины и ' и проведением от w к и ’, а от и ’ к и ребер с отмет- кой А; начальная вершина у G та же, что и у Gx, а финальная вершина есть и ' (рис. 2.17). Пусть R = Rx R2, где Rx — регулярное событие, опре- деляемое обобщенным источником Gx, R2 — общерегулярное сверхсобы- тие, определяемое сверхисточником G2. Можно считать, что вершины гра- фов Gx и G2 различны. В качестве G в этом случае берем граф, получаемый объединением Gx и G2, а также проведением ребра с отметкой А от финаль- ной вершины обобщенного источника к начальной вершине сверхисточ- ника G2. Начальная вершина сверхисточника G та же, что у Gx, финальные 102
вершины те же, что у G2 • Пусть, наконец, R = Rt U R2,rfle R,- - общерегу- лярное событие, определяемое сверхисточником Git i = 1,2, и пусть вер- шины графов G\ и G2 различны. Объединим графы Gi иС2; выберем но- вую вершину и и проведем от и ребра с отметкой Л к начальным вершинам графов G, и G2. Выбирая в качестве начальной вершину и, ав качестве финальных — финальные вершины сверхисточников Gi, G2, получаем искомый сверхисточник G. Лемма доказана. Лемма 4. Если G - сверхисточник, то сверхсобы- тие || О|| представимо. Доказательство. Обозначим 5 = { и i,..., v п} мно- жество вершин сверхисточника G\ пусть и t — начальная вершина этого сверхисточника, F — множество финальных вершин. Для описания автомата Vq = (A, Q, В, <р, Ф, Qi), представляющего посредством некоторого семейства В под- множеств множества В сверхсобытие || (7|| , введем ряд обоз- начений. Пусть Mi — семейство всех непустых подмно- жеств множества 5, М2 — семейство всех подмножеств Рис- 2.17 множества М2 (включая пустое), М3 — множество всех пар (d, е), где d G М2, е G М2. Состояниями автомата явля- ются всевозможные наборы (Р i, • • , Р 2 j где р, U {0 } , причем пары д;- с различными номерами i имеют различные первые элементы. Начальное состояние qt есть набор (({У]}, ф), 0, ..., 0). Для оп- ределения функции переходов введем следующие вспомогательные функ- ции. Если m G Mi, a G А, то х (ш, а ) = U 0(и, а) (здесь 0(и, а) обо- и Е m значает, как и в § 7, множество вершин, к которым от вершины и ведут та- кие пути я, что [я] = а). Если m 1 G М2 и a G Л, то £ (т ',а) = = {х(т, а) \ т G т1, ~х(т,а) #= ф}. Пусть т G Mit т' G М2, а.& А. Если т G т , xkm> а) Ф, то полагаем £((w, т'), а) = (х(ш, а), ф); если Х(т,а) Ф ф и т т', то £((лг, т'), а) = (х (w, а), ^(т',а) U U {{у,}|у(- G F Г1 x(w> а)}). Наконец, при х(т, а) = ф полагаем %((т, т а) = 0, кроме того, £(0, а) = 0. Пусть р=(ръ ...,р2„ ^ G G Q, a G А. Значение ф (р, а) определяется следующим образом: 1) Находится набор р' = (% (р1г а), % (р2„_ t, а)) = (Pi,..., Р2п_1) 2) Находятся все такие / G {1, 2, ..., 2п— 1}, что при некотором i < / первые элементы пар р\ и р' совпадают. После этого пары р' заменяются в наборе р ' на 0. В результате получается набор, который обозначим р" = = (р’;,...,р2п_1). 3) Пусть W], ..., — все финальные вершины сверхисточника G, при- надлежащие первым элементам пар р", i = 1, 2, ..., 2'’-!, причем такие, что {w(), / = 1, ..., s, не есть первый элемент какой-либо пары р", "/ = = I, 2, ..., 2"—1. Тогда первые s нулей набора р" заменяются на пары ({%•} , ф), i = 1, ..., s. Полученный в результате набор и является значе- нием ~р(р, а). Элементами множества В выходных символов автомата Vq являются всевозможные наборы вида ..., /32л?_,), где G {0, 1, 2}, i = 1, 2, ..., 2"—1. Пусть р =(Р i, , р2п_ t ) G Q, a G А. Тогда ф(р,а) = 103
= (31,. . . ,|32п_1),где 31 = о в случаер(. - О, 3,- = 1, если д,- = (т,т')и т G т ', 31 = 2 в остальных случаях, i =1,2,2”-1. В качестве В ' вы- бираем семейство всех таких подмножеств М множества В, у которых при некотором i G {1, 2, .... 2"-1} выполняется рг,-(7И) е {{1}, {1, 2}}. Здесь рг,-(7И) обозначает множество z-x компонент наборов из М. Покажем, что автомат И(?1 представляет сверхсобытие ||G|| посредством В '. Пусть a G А°°. Обозначим а = а (1) а (2) ..., 3 = ^(z/i, о) = Ъ (1)/>(2)..., Я/+ , = <p(<7i, ^(1) • • • «(/)) = (Му + 1.1, • • • , P7 + 1i2«_1)> / = 1. 2, ... Пусть также (/, = (ди, Свяжем с каждым элементом j, отличным от 0, ряд вспомогательных объектов. Положим Ki i = Оь Мц = 1. Пусть при некотором / уже определены значения K.jj,Nji для всех пар р. (. = (т- j, m'j , ас каждым множеством т G т'. связана некоторая фи- нальная вершина (т), причем выполняются условия: a) Njj - натуральное число, N,, </. Если/Vy,- = 1, то к/(- = и,, иначе Kjj - финальная вершина, принадлежащая множеству ... ...zz(7V,-,- - 1)). б) Если Nti < j, то mji = в (к, f, a (Nj,) ... «(/-1)), _ I;Z = N^. Иначе т-{ = {к(), in., = ф. в) Пусть т G ш'у. Если / ' < / наибольшее, для которого *= ф, то для каждой вершины v из т существует ведущий к ней от некоторой вер- шины w, w G т . е., путь л, проходящий через w-(m) и такой, что [л] = = a(j') ...a (/-I). Рассмотрим произвольную пару д, + 1_,-. Если д,-+ 1(- — £ (Д,, ,), то пола- гаем = к.,,'. Nj + i j = Nji- Если mGm’+l . ит= {и},где и G F П С x(mj i, «(/)), то полагаем w; + 1 ,(т) = о; иначе т = х(т, a(j )) для некоторого т G m'- ,.; полагаем в этом случае со,- + (т) = Ы], (т) .При та- ком выборе значений K/ + I,/, jV; + [j, и*. + ijfm) . выполнение условия а) очевидно; условие б) вытекает из т, + |,- = X(mjt, a Проверим вы- полнение условия в). Пусть сначала т G /и*+1 ,- и т = x(z”, «(/)), т е G т'- t . Рассмотрим наибольшее / j ' < j , для которого = ф (оче- видно, такое / существует, так как, например, т N f = ф). Рассмотрим, далее, произвольную вершину v, v G т. Существует вершина v, v G т такая, что и G 0(и, а (/ )). Пусть лу - путь, ведущий от некоторой верши- ны w, и’ G т.е. к вершине и, проходящий через со/+1 ,(ш) и такой, что [Я] ]=«(/’)...« (/ — 1). Пусть также тг2 — путь от и к и, для которого [л2] =<7(/). Тогда путь л = л, л2 (Л|Л2 — последовательность, полученная отождествлением последнего члена Л! с первым членом л2) проходит через + , ведет от w к V, причем [л] =<? (/') ... а (/). Пусть теперь т Gт- и т - {v} , где и G F П х("г ,, «(/ ))• Тогда v G в (к,,-, a (Njj) ... ... a(j )), а так как / ' то для некоторой вершины w из т = = 0(к,а.(1Чц ) ... a(j ' - 1)) (при / ' = N:j - для и’ = к ,- ) выполняет- 104
ся « G в (и; a (J ') ... а (/)), откуда и вытекает условие в). Рассмотрим теперь случай М/ +1, ( = ( {"’} , Ф), где w G F П у (т/f, а ( j )) при некотором i’ Ф i. д,г — 0. Полагаем к, + , = w, Nj +, = j +1. Так как k(.f G 0(1?|,д(1) ... a(N-ii — 1)),и'€ 0(w, «(/)) для некоторого И’ из m..t, И'€0(к..,. fl(yV..») ...a(j - 1)), то w G в (и,, a (1) ... a (j )), и условие а) выполняется. Выполнение условий б), в) очевидно. Итак, каждой паре /т; ,- мы сопоставили некоторые вспомогательные объ- екты к/,-, Nj,, со,, (т); при этом выполняются условия а), б), в). Пусть а принадлежит сверхсобытию, представимому в посредством В'. Так как 1 im ( ф(ц, а)) G В ', то существует такое /0 G {1, 2, ..., 2" - 1}, что /0-я компонента набора й(/), начиная с некоторого / = /0, не принимает значения 0, причем значение 1 эта компонента принимает для бесконечного множества значений /. Это означает, что при / > /0 выполняется д/(- =#0; = (та >т'а ), причем для бесконечного множества значений i имеет место т.^ G т'.. . Пусть / о i < / 2 < ... - последовательность всех та- ких значений больших или равных / 0 Сопоставим каждой вершине и из т j lo (t = 0, 1, ...) некоторый путь я((и) от t>| к и, для которого [ттДи ) ] = а (1) ... д (Д - 1). Как легко видеть, Njiu = Nj , к/(11 = к/• _ j(| для всех / > / о- Если и G , , то и G в (vt, а (1) ...«(/0-1)), и путь я0(и) с указанными свойствами выбираем произвольным образом. Пусть яДи) уже определено для всех v G Рассмотрим произвольную вер- шину v е т. j ; тогда u Gm для некоторого т G т'. . так как т iltin. G т то = Ф- Пусть /' - наибольшее, такое, что / ' < /1+] и т'. i. - ф\ тогда j ' jt + 1. Согласно условию в) существует вершина w, w G т . e для которой существует путь я, ведущий от и’ к v и проходящий через (, ;< (m/(+1( iu ), причем [тт] = а (/ ’ ) ... a (jl+1 -1). Согласно условию б) vv G 0(и-',д(/() ... a(j' - 1)) при некотором vr' G Обозначим я* = яДи') и положим л\ц(и’) ~ я(*я'я, где я' - путь от И-' к w, для которого [я ' ] =а (/t) ... a (j ’ -1). При таком определении путей п*, t = 0, 1, 2, ..., получаем, что все они суть начала не- которого сверхпути я*, [тт *] = д(1)д(2) ... = а. Легко видеть, что'тт*име- ет бесконечное число вхождений финальных вершин (так как каждый путь яД । имеет вхождение финальной вершины u>j ,С1 (iu) в той части, которая присоединяется к пути я(*). Поэтому a G || О’ ||, т.е. представимое в автомате посредством В ' сверхсобытие содержится в || G ||. Пусть те- перь a G || ("г || ; покажем, что lim (ф(р,, a)) G в'. Рассмотрим сверхпуть я* с началом , для которого [я*] = а, причем некоторая финальная вер- шина w принадлежит 11т(я*). Пусть я* имеет вид и । = н,, w2, р2( vv.3,... Тогда Wj G 0(уь а (1) ...alj - 1)), т.е. в (у,, а (1) ... а (/ - 1)) Ф ф, j = =2, 3, ... Отсюда вытекает, что для всех / = 1,2,3,... д;1 ф 0, и-’ G mf-[ . Это означает, что первая компонента набора b(i) для всех / отлична от 0. Если 105
эта компонента равна 1 для бесконечного множества значений /, то 1 im ( ф(р, а) ) G В '. В противном случае рассмотрим такое / 0, что при всех j > j о указанная компонента набора b{j) равна 2. При / > /0 имеем >n,i т.'-,. Рассмотрим /0 > 7 о такое, что w-, = н’. Тогда G т „ т.е. {iv} G т'., и некоторое тесть {w}. Далее, для каждого/>/’+1 / о ,1 / О > ‘ 1 выполняется 0(w, a (J '0 ) ...a(/-l))Gm', и 0(w, a j'o) ... a (j -1)) есть rrij j при некотором i, i < i. При этом можно указать такое i\ < /1, что, на- чиная с некоторого / = j", /" /'0, выполняется т.., = 6(w, a(j'o) ... ... a (j — 1)). Это означает, что i[-я' компонента набора b(j) для всех 7 > / о отлична от 0. Если эта компонента равна 1 для бесконечного множе- ства значений /, то lim (ф^1, a)) G В1. В противном случае рассматри- ваем такое / । , что / i > Д' и для всех / > / г указанная компонента набо- ра />(/) равна 2. Заметим, что при / > j” выполняется myl т'ц, m..t 6 т. ।, т.е. i i Ф 1. Кроме того, т j D w;(», w, е Д/ • Пусть для не- которого s, s > 1, уже найдены такие попарно различные значения Д = = 1, i [, ..., i's, а также натуральное j s, что i'o, [[.,..., i's-e компоненты набора b (j ) при / > j s равны 2 и т л т..» D ... D т ..», .w. G т..,. Тогда 1 lo Jh ~ — Jls ' Jls ттji‘s п₽и i is- Как и выше, выбираем j s > /s, для которого и’.>= и’. Очевидно, и'G л? » .», и некоторое лг.» . , , есть {w}. Для любого 7 > is + 1 имеем 9 (w, a ij's) ... «(/—I)) G 9(w,a(Js)... a (/-!)) = тр при некотором i, i < is + i- Выбираем такие is + iJs, что is + i <is + i, i” > i's и при / > j" выполняется f = = 9(w, a (j') ...«(/ -1)). Очевидно, лг^,.. D j>s.+ 1 ПРИ BCex / > ПРИ этом, как и выше, получаем т.., ф т. ., G лг.'.», иЕсли I's lh 1,‘s-rl )'s -s +1 * ls +1 = ip при p < s, то получаем m ifp того, что i'p Ф ip+l- Итак, io, ..., ij + = m.,i , что невозможно из-за 1 ‘s + 1 попарно различные, т . .> D ... / *0 ... D m.. f^ при всех j > j". Кроме того, для указанных / ну Далее, i'+l-я компонента набора b(j) при / > j" отлична от 0, и если она принимает лишь конечное число раз значение 1 (в противном случае lim (^(<7i, a)) G Д'), то выбираем такое 7i + l. is+i /”> что ПРИ 7 > 7 " эта компонента набора b(j) равна 2. Продолжая указанным обра- зом, либо на некотором шаге получим lim (^(qi, a)) G В', либо устано- вим существование бесконечной последовательности i'o, i[, 1'2, ... попарно различных натуральных чисел, принадлежащих {1, 2,..., 2" - 1}. Последнее невозможно, т.е. lim (ф(q!, а)) G В'. Лемма доказана. , Из лемм 2,3, 4 вытекает Теорема 2.20 [69]. Множество сверхслов является представимым тогда и только тогда, когда оно общерегулярно. 106
В качестве примера сверхсобытия, не являющегося общерегулярным, рассмотрим множество М всех периодических сверхслов в алфавите {0,1} . Предположим, что Vq t = ({ 0,1} , Q, В, ф, q 1) - автомат, представляю- щий М посредством некоторого семейства В' подмножеств множества В. Обозначим 121 = п, N = nl. Пусть = 10 . . .0. а2 = 1,0 0-, Рассмотрим ТГГ TV + и + 1 периодическое сверхслово а = Д] ..., а также произвольное неперио- дическое сверхслово 0 = 0102 03 • • > гДе каждое 0-, есть либо Д], либо а2. Заметим, что для любого состояния q автомата при некоторых i,j, К/,/, /G {1,...,« + 1} выполняетсяц>(q, 10 .. .0) = (q, 10- .0); обоз- i i начим 10 .. . 0) = q', j - i = к. Тогда <p(q', (h . . 0) = q', Ф(д \Q__0) = i к I + 1 ~ ф (q0 , .0), где Г = /(mod к) + 1, <p(qQ_^0) = q' (так как к делит N). Г N Поэтому >p(q, at) = Ч>(ЯQ • • Q) = «Х’РрА 0 0),p ... 0) = <p(<70. .0)= n + l — i TV n + I -i JV +n + 1 — i = >p(q,a2). Далее, ф(д, aO = ф(д, 10 . . . 0) Ф(д',.О . 0), Ф(д, a2) = J n + 1 — i = ф(д, 10 ...0) Ф(д',0 • • P ) = Ф (q, 10 0) Ф (q', 0 • 0) Ф (q‘, i N + n + 1 - i { N 0. . .0), где каждый символ, входящий в Ф(д', 0 . . Q), входит в _п +1 -/ ф (д0 .. . 0), Но к = j - i < п + 1 - /, так что каждый символ слова _ - к _ ф(д', 0 . .. 0) входит в слово ф(д', 0 ... 0), а множества символов, входя- _N _ п + 1-i щих в ф(д, а2) и ф(д, а2), совпадают. Обозначим s(- = <р(<71 > Д]. . . »i), i /=_1,2,... _Тогда^(<?1,а)= ф^а^ф^а^ф^Ш). . . , ф(д, 0) = - Ф(Я1,01)Ф(51,0г)-.• •, так что lim(0(<7i, a)) = lim(^(<71,/3)), чего быть не может, ибо aGM, 0^М. Это и устанавливает непредставимость сверх- события М. Несложно проверить У т в е р ж д е ни е 1. Если Mi, М2 - общерегулярные сверхсобытия в алфавите А, то и сверхсобытия Mi Cl М2, Mi \ М2 общерегулярны. Доказательство. Пусть = (A, Q, В, <р, Ф,д1) — автомат, представляющий Mi посредством некоторого семейства В2 подмножеств множества/?, Vq^ =(А, Q',B',<p', фqi) — автомат, представляющий М2 посредством семейства B'i подмножеств множества В'. Рассмотрим авто- мат К(" n q= (A, Q X Q ВX Вф ",(q!, q J)),у которого q'), а) = = (<р(д, а), (qа)), ф”((q, q'),а) = (ф(q, а), ф '(q а)). Нетрудно проверить, что ^q^ q' ) представляет Мх ПМ2 посредством семейства всех таких подмножеств D множества ВХ В', что pr2 (D) G Bt, pr2 (Z)) G B’i. Далее, автомат V'< представляет А “ \М2 посредством семейства В 2 всех подмно- Ч 1 107
жеста множества В', не принадлежащих В\ . Общерегулярность множества М1 \М2 вытекает теперь из соотношения vW]\Л/2 -Mi Г\(А°°\М2). В заключение параграфа рассмотрим задачу проверки равенства общере- гулярных сверхсобытий. Пусть сверхсобытияМi иЛ/2 заданы представляю- щими их конечными автоматами. Тогда находим автоматы, представляю- щие сверхсобытия Mi \М2,M2\Mi, и проверяем непустоту этих сверхсобы- тий, например, выражая их через регулярные события так, как указано в доказательстве леммы 2. Таким образом, задача проверки равенства общерегулярных сверхсобытий оказывается алгоритмически разрешимой. § 9. КОНЕЧНЫЕ АВТОМАТЫ КАК ПЕРЕЧИСЛИТЕЛИ Подмножество D множества слов в алфавите В будем называть автомат- но перечислимым, если существует такой инициальный конечный автомат 7(?|) = {A,Q, В,(р,^,Чо),что£) = {ф(<70,а!)|аеЛ*,а^Л} . Для произвольного множества слов М, М С_ В*, обозначим через [М] множество всех непустых начал слов, принадлежащих М. Описание класса автоматно перечислимых подмножеств множества В* (В — некоторый конечный алфавит) дает следующее утверждение. Тео рем а 2.21. Подмножество D множества В* является автоматно перечислимым тогда и только тогда, когда выполняются условия: a) Z9 - регулярное множество', б) [£] С D, в) каждое слово р множества D является началом некоторого другого слова рпринадлежащего D. Доказательство. Пусть множество D, D СВ*, является автомат- но перечислимым; рассмотрим автомат Vq = (A, Q, В, р, ф, q0) такой, что £> = {^ (<7о,а) Iа G Л *, а^Л}. Выполнение условий б) и в) для множест- ва D очевидно; установим регулярность этого множества. Обозначим Q' множество всех (включая ф) подмножеств множества Q. Пусть И7^ = = {В, Q', {0,1} , р , ф s0) — автомат, у которого s0 = Q, а функции р' и ф' определяются следующим образом. Функция р'(s, b) есть множество всех таких состояний q' автомата , для которых существуют q G s и 0. G А, удовлетворяющие соотношениям <p(q, а) = q', ф(д, а) = Ь. Функция ф (s, b) = 1 тогда и только тогда, когда <р'(s, В) ф ф. Нетрудно проверить, что автомат И7^ представляет событие Dпосредством {1}, т.е. D регулярно. Пусть теперь D— некоторое подмножество множества В*, удовлетворяю- щее условиям а),, б), в). Так как D регулярно, то существует автомат К(?1 = (5, Q, А, <р, Ф^1), представляющий D посредством некоторого подмножества А' множества А. Обозначим Q = {<?!, . . qn). Пусть q,i ,qt2,- .,qis — bce состояния автомата Vq , представимые в виде p(q i ,р), где либо р = Л,либо pCD,ii ~ 1 • Обозначим М = {it,. .., is} • Еслй / G М, то, согласно свойству в), существует слово pb G D, b В, такое, что Ч’(<71 > Р) ~ Чу ^Р(Чу b) = qy, j’ СМ. В этом случае ф (Ду Ь~)СА'. Сопоставим каждому j СМнекоторый такой символ Ъ, обозначим его />(/’). Выберем некоторые попарно различные элементы 4;'<7не входящие в Q, и обозначим Q' = {qy..qis, qy,. .. ,q'is}- Рассмотрим автомат И7^ = 108
=(B, Q', В, ip’, ф qi), функции <р' и ^'которого определяются следующим образом. Если ф(д^, b)GA\ то ^'(q^, b) - ^(q,-, b), ф '(q^, b) = Ь. Если же Ф(.Я,ГЬ)^А то рассматриваем состояние qik = <р(д^, b(ij)) и полагаем (/5 (Qi-, b) = qik, ф ’(flij, b) = b(ij). Далее, для каждого ijGM рассматриваем состояниеqik = plqi^Mij)) и полагаем ^'(<7,'., Л) = qik, Ф^д'у, b) = b(ij) для всех b G В. Как легко заметить, в случае р GD имеем ф'(<71,р) = р, т.е. D С{ ij/'(<7i, а) |а G В*, а ф Л }. Докажем индукцией по длине непустых слов а, а G В*, что ф,^1,а)Е D, причем, если a D и '(<71л ф '(qi, а)) = q,., то , а) = Если а - слово длины 1, то это верно по построению автомата Wq Пусть это утверждение доказано для всех слов длины т и а — слово длины т + 1, а = а'Ъ, b €= В, а ф. D. Если а' €= D, то ф '(q i, а ) = а , ot') = p)(ql,a'} = qi., ф^., Ь)<£а'.Тогда ф'(Д1гb) = b(ij), ф(д,., b(ij)) G G4', т.е. , а) = a'bfi-) G D. При этом р'(Д\, a bfif)) = b(i,)) = = <р(д,-, b(ij)) = qik для некоторого к и, согласно определению <р’, ф (qt, а) = = <p\qi.,b') ~qik- Пусть теперь а' D. Согласно предположению индукции ф'(Я1,<*')£В- Обозначим <p'(qi, Ф'(а1, &’)) = <7^; тогда <p'(qi, а') = qt.. Имеем ф’(Д1,а) = ф'(Д1,а')ф'(д/ Ь) = ф'(Д1, a')b(ij), а так как ф'(Д1,а’У) = qij и ф(д^, b(ij)) GA то ^'(<?i, a) G D. Далее, <p(fli, а) = =<p'(fl'irb) = q'ik,rp,e qik = ^(qij,b(i/))=ip(ql,^'(q1,a')b(ii))=ip(q1,^'(q1,a))^ = <p'(qi, ф'(<7i, а)), что и требовалось. Итак, D = {ф '(qi, а) | a G В*, а #= Л}, и теорема доказана. При рассмотрении неинициальных автоматов V = (A, Q, В, <р, ф)возникает класс сильно автоматно перечислимых подмножеств множества В*, т.е. подмножеств Овида { ф^, a) IqG Q, a GA*. а#=Л}. Описание таких подмножеств дает Теорема 2.22. Подмножество D множества В* является сильно авто- матно перечислимым тогда и только тогда, когда выполняются условия: а) О - регулярное множество', б) ОФф, каждое непустое подслово слова из D также принадлежит D; в) каждое слово р множества D является началом некоторого другого слова рпринадлежащего D. Доказательство. Если подмножество D множества В* является сильно автоматно перечислимым, то оно есть объединение конечного числа автоматно перечислимых множеств, откуда и вытекает условие а). Выпол- нение условий б), в) очевидно. Обратно, пусть/) С В*, D удовлетворяет условиям а), б), в). Рассмотрим автомат Vq> = (В, Q, А, <р, ф^г ), представ- ляющий D посредством некоторого подмножества А ’ множества А. Пусть ^ = (2?, Q',B, ip', ф) — автомат, построенный по Vq так же, как при доказа- тельстве теоремы 2.21. Выделим подмножество Q" множества Q', состоя- щее из всех состояний вида ^’(q, ,а), a G В (т.е. из всех состояний, достижи- мых из состояния qi; обозначим W' = (В, Q", В, ip", ф"), где <р", ф" - суже- ния tp', ф' на Q" X В. Если р GD, то ф"(ql, р) = р, т.е. D С { ф"(р, a)\q G Q", oiG В*, id ф Л} . Пусть q G Q', a GL В*, аф Тогда существует а': (Ai,oi)=q', при этом (см. доказательство теоремы 2.21) ф"(Д1, a'a) GD. 109
Ho ip "(<?1 ,a'a) = ip"(qi, a') ip"(q, a), т.е. по условию 6) ip "(q, a) G D, и окончательно D = {ip " (q, a) | q G Q", a SB*, а Ф A}. Теорема доказана. Пусть V = (A, Q, В, ip, ip) —конечный автомат; обозначим F(V) = - {ip(q, a)\q GQ, a G A*,a #= Л }. Если F(V) = В*, то автомат V называет- ся генератором выходных последовательностей (или, короче, автоматом-ге- нератором). В случае F(F) #= В* обзначим/ (V) длину самого короткого слова, принадлежащего множеству В*\F{V). Введем функцию L (т,и, р) = = max !(V), где максимум берется по множеству всех \А \ = т, |В| = p,\Q\ = n конечных автоматов V = (А, О, В, <р> ip), удовлетворяющих условиям I А | = = т,\В | =р, |Q | = п и не являющихся генераторами. Значение L (т,п, р) можно использовать при распознавании автоматов-генераторов, так как для выяснения, является ли V генератором, достаточно подавать входные слова длины L(m, п, р). При получении на выходе всех слов длины L (т, п, р) в алфавите В (с различным выбором начальных состояний автомата) можно утверждать, что V — генератор. Если автомат V является генератором, то из мощностных соображений получаем неравенство пт1 ^pl, Z = 1,2,3,... Отсюда т> р, и случай т< р при оценке величиныL (т, п, р) не рас- сматриваем. Для произвольных М Q.Q и 0 G В* обозначим шу(М,$) = ={<p(<7,a)| ip(q,a) = р,q GM, aG А*}.Очевидно, шу(М,^') = шуШу(М, 0),|3’), GB*. Кроме того,/3 F (V) тогда и только тогда, когда coy(Q,(3) = <p. Теорема 2.23 [70]. Имеет место неравенство L (m, п, р)^2п — 1. Доказательство. Пусть V f (A, Q, В, р, ip),\A \ = т, \ Q\ = п, \В \ = = р, причем F(V)^B*. Рассмотрим кратчайшее. слово 0 из B*\F(V), & = b(l)... b(k). Если й(1).. . b(j)) = wy(Q, b(l) ... b(J)) при i #= /, z,/G{O,l,... то ф = Шу (Q,0) = шу(шу(в,Ь(1) . . . b(j)), b(j + 1) .. .b(k)) = Шу(шу((2, b(l).. .b(i)), b(j + 1)... b(k)) = wK(C, Z>(1) .. . .. .b{i)b{j + 1) ... b(k)), так что слово (}не является кратчайшим. Поэтому все множества Mj -Z>(1) ... b(i)), i = 0, 1,... , к, различны, т.е. fc + 1 < 2" и fc < 2" — 1, откуда и вытекает утверждение теоремы. Теорема 2.24 [44].Пусть р > п, т> р + п - 2. Тогда L(m, п, р) = = 2"-- 1. Доказательство. Рассмотрим автомат V = (A, Q, В, ip, ip), А = = {Д1, Q = {qt,... , q„ } ,В = {bi,... , bp} , удовлетворяющий следующим условиям: а) если j < i — 1 либо /> п + 1, то coy({qj}, bj) = {<?, } ; б) если i + 1 п, то шу{ {q,}, b,) = {qj} ; в) ,bj)= {qi,... ,qi_i) . Как нетрудно видеть, для существования такого автомата V достаточно, чтобы входной алфавит А имел не менее р + п - 2 символов. На рис. 2.18 при- ведена диаграмма Мура автомата V в случае р = п = 3, т = 4. Для произ- вольного множества М G Q определим двоичный набор 6 (М) = (51,... ..., S„), где б, = 1 тогда и только тогда, когда qf G М, i = 1,.... п. Набор 8 (М) можно рассматривать как двоичную запись числа d(M) = _ п _ S 2' 8,-. Легко видеть, что в случае /’> п + 1 выполняется i - 1 110
Шу(М,Ь^=М. Пусть /< n; обозначим cjk(AZ, bf) = M', 6(Af') =(5{, .. ., bn). Если i > / + 1, to b'j = 3,; 3y = 1, если хотя бы один из раз- рядов 315..., bj_i равен 1, иначе 3^ = 0. Если 8у = 1 ,тоЗ! =... = 3y_i =1. Отсюда вытекает, что в случае (3lt . .., 5у) ¥=(0,.. ., 0,1) выполняется d(M’)>d(M), ав случае (5х,... ,5у) = (0,.. ., 0,1) - d(M') = d(M) - 1. Имеем d(Q) = 2"-1; если 0 - слово длины к, то d(wv(Q, /?)) > >d(Q)-k = 2п-к — 1,и при к<2п - 1 множество 3) непусто.Вы- бор слова 0 длины 2" — 1, для которого a>^(Q,0) = ф, очевиден (оче- редной символ слова 3 выбирается так, чтобы d(M) уменьшалось на 1). Итак, автомат V не является генератором, причем /(И) = 2”-l nL (т,п,р) > 2”—1. С учетом теоремы 2.23 и получаем требуемое утверждение. Установим нижнюю оценку величины L(m, п, р) в случае р< п. Гр-3 2 , ТО Теорема 2.25. Если 12 / 1 _ Г р —з 1 \ L(m, п, р)> 2"(1 - 2 Г 9 J I 9 р-312 Доказательство. Пусть 12<р<и, лг>р + 16 начим (р —3) = 9Z+Z', Z'G {0,1,. ..,8}, h = 21, (л - 1) = nh + s, s G G {0,1,..., h - 1}, r=n’ - 1, t = h+s. Нетрудно видеть, что h > 2, г > 3, Обоз- t < 2h = 4Z, hr +1 + 1 = n, 2t+l + 3<p. Рассмотрим автомат V=(A, Q, B, p, ф), A= {ai,..., am} , B= bp}, Q= {q0, qOi,..., qOt}k)-{qif\i = = 1,. .., r, j = 1,.. . ,h}, удовлетворяющий следующим условиям: а) Если q &Q, то wK( {q} , bx) = {qr2,. .., qrh). 6) wK({<7o}> b2) = {qr2,..., qrh}, wK({<7//}, b2)= {qri,..., qri, di-i,,} ,i= i,-.., r, j=l,...,h, wF({ qOi },b2)= {qr2,- ,qrh} ,i =1,-Л в) Если/ G{3,... ,Z + 2},T0 Wjz ( {Ч'о},/>;) = Ur2, •• • .Qrh} , ui' feofc), bj) ={Чок} при к =j - Г,/,. .., T и / < t + 2, {{qok},bj) ={q0,j _2}при к = 1,.;. ,j -3 и j >3, {{qOj_2}, bj) ={tzoi>- • ..Qo.i-з}. ({Qtk} , bj) ={qo,Qik} при i = 1,... ,r , к = 1,.. . ,h. Ill
г) Если 7 + 3</ <2г + 2, то wk({<7o},/>7) ={qr2,. . . ,qrh} ,сог ({<zofc}> bj) ={Чок} при к =/-t - 1, j -t, . . . ,t и j < It + 2, ыК ((qOk},bj) = ={q0,j-t-2} при k = 1,.. . ,j-t-3 и j > Г + 3, ({<7o,/_f-2}-*/) = = {«oi. • • • ,«о,/-г-з}при / < Z+Г+З и шу {{q0 j_t_2},bj) ={q02,. . . ... ,q0j-t-3} при j > I + t + 3, {{qik} , bj) = {qik,q0} при i = 1,... .. ,,ги k = 1,... ,1, ((qik},bj) = {qr2,. .. ,qrh} при i = 1,. .. ,r и k = l + 1,. .. ,h. Д) “>v({q0},b2t+3) ={«o}, ^({«ойМзи-з) ={Qik} при k= 1,.. ., h , ({«ffc) > b2 f+з) = {«/+ j, fc.«o i > • • • > «or} при i = 1,r — 1 и к - = 1,. .. ,h,a>v{{qrk},b2t+3) = {p01,... ,qot }при£ = 1,... , I, uv({qrk}, bit+з) = {«oi, • • • ,«or,«r2, • • • ,Qrh} приА; = / + 1,... ,h. e) Если 2Г + 4С/ <2t + 1 +3, то шу ({«м_2г-з} ,bj)={qr2,... ,qrh) и Uy({qlk},bj) ={ <?/ft} для прочих nap (i,k). ж) Если 2t +1 + 4</ <p,q G Q, to шу ({<?}, bj) = {<?}. з) Если q G Q и cojz ({<?}, Z>z), i G{1,... ,p}, не определено условиями а) - ж),то шк({«}.Ь,) =Ф. Можно проверить, что для существования такого автомата V достаточно, чтобы входной алфавит А имел не менее p+2th символов; последнее вы- р-3]2 текает из условия ш>р+16 —-— Для произвольного множестваMQQ определим двоичные наборы 6, (Л/), i =0,1,.. . ,г,Ь0(М) = (бои • • • ,30f), bi(M) = (6, i,..., bifl) при i = = 1,...,г, где bjj =1 тогда и только тогда, когда qq &М. Обозначим t h d0(M) = S 2.,~xbOj, dj(M) = S 2’~l8q ,i = 1,.. .,r,d(M) =d0(M) + /=1 i =i r + 2 2t+ hdj (M). Рассмотрим класс К всех таких множеств' М, МС z = i £=GU«o}> 410 1, • • •,ьг1) #= (1,. .., 1) и (Sr,i+i> • • , brh) (0, • • • ...,0) (где (Зн,...,Згй) = ЗД7И)), причем d (М) <d ({qr2...q;h}) = = 2п~1 -2n~h. Наименьшее значение d(М) в случае МG К достигается для M={qr i + J и равно 2п~ 1~1, наибольшее значение достигается для М = = {«г2, • • • »«гл) • Число множеств в К равно 2"-1 (1 -21-г) + 1. Обозна- чаем далее Л/q ={qr2,... ,qrh}. Пусть М&К, d(M) >2"~1"1,60(М) = (5030f). 3z(iW) = (3;i)... • • .,8/й),г = 1,... ,г. Пусть, далее, d0 (М) =di (М) = . .. = ds'_ i (М) = О, ds'(M) ¥=0,s'> 0. Обозначим N(M) множество всех слов (3, (3GB*, неко- торое непустое начало (}' которых (возможно, (}' =@) удовлетворяет одно- му из условий: а) шу(М,»'.)ЭМ9- б) шу (М,^') Эшу(М,^"), где j8" - некоторое (возможно, пустое) начало слова р', [}' =#= (}"; в) шу (Al,(i') ё К, причем(1(ыу (М, (}')) > d (М). Нетрудно заметить, что из /3 G N(M) вытекает 00' G N(М), где 0' G В *. Имеем Шу (М, br) D Мо, шу (М, bj) =Л1при / = 2t +1 + 4,. .. ,р, так что каждый символ b2,b2t+l +4,. ..,Ьр принадлежит N(M). Рассмотрим 112
сначала случай s'>0. Тогда для /=3, ...,Г+2 находим шу(М,Ь/) = =MU{q0} . При / =t + 3,..., 2r + 2, учитывая условие (6r>; + j,..., brh ) Ф #= (0,..., 0), находим cjjz (М, bj) Э Л/о; точно так же шу (М, b2t+3) Э Мо. При / = 2т + 4,...,2t +1 + 3 получаем, что в случае _2t -з = 1 выпол- няется шу (М, bj) 2.М0, а в случае br,j-2t-3 = 0 — иг (М, bj) =М. Итак, при s' > 0 каждый символ из В, отличный от Ь2, принадлежит N(M). Пусть 1<г <s'—1, причем доказано, что каждое слово /3 вида (Ьг)! bj, где /'б {0, 1,..., i — 1} ,/ Ф 2, принадлежит N(M). Обозначим шу (М,(Ь2)‘) = = Rj', нетрудно проверить, что d0 {Rj) = d, (М), dt (R,) = di + l (М), ... ...,dl.^i(Ri)=dr(M),8r_i+1(Ri) =... = Sr(Ri) = (b J,0,...,0) =5. При этом, так как i <s' - l,d0 (Rt) = 0. Кроме того,<70 Rj. Как и выше, при / = 3,..., t + 2 имеем шу (Rj, bj) =Rj U{<70} Так как (br_lti + l,. .. • • > 5г-/,л) (0> • • •, 0)> причем г - i > г -s' + 1 > 1, то при/ = t + 3,... .. ., 2г + 2 выполняется шу (Rt,bj) 2 MQ. Далее, Шу (Rit b2 f+3) а при j = 2t + 4,. .., 2t + I +3 (^/> bj) ^)M0. Итак, каждое слово (}, имеющее вид (b2)'bj, где / Ф 2, принадлежит /V(M); применяя индукцию, получаем, что каждое слово /3 вида (Ъ2)*Ъ),1 = 0, 1,..., s' — 1,/ #= 2, при- надлежит N(M). Рассмотрим множество Rs‘ = Шу (М, (b2)s ); в случае s' = 0 полагаем Rs' =М. МножествоRs• (как в случае s' > 0, так и при s'= 0) удовлетворяет соотношениям d0 (Rs') =ds'(M), di (Rs ) =ds'+ j (M),... ... ,dr_s'(Rs’) =dr(M) ,br-s’<-i(Rs') = • • = br(Rs') =%. Пусть сначала s'< г. Тогда (6^_y, j+i,... ,&r-s',h)^ (0,... ,0) и при j = t + 3,..., 2t + 2 имеем u>v(Rs', bj) 2 Mo. Так как d0(Rs’) Ф 0, то uv(^s', b2) 2ЛГ0. В случае s'>0 получаем uy(ks', b2t+3) 2 Rs'-i, а. в случае s' = 0 - Шу(Ву, b2t+3) 2M0. Наконец, при j - 2t + 4,. .. , 2t + 1+ 3 имеем либо Шу(Ву, bj) 2Л/0, либо Uy(ks', bj) 2 Rs’. Поэтому каждое слово /3 вида (b2)s bj, где )'ф. (Зъ.. . ,t + 2}, принадлежит N(M). Пусть 7i G{3,... ,t + 2}; обозначим Rs+i = a>v(Rs', bj^ ). Если 6/j = ... .. . = bs'tk_i =0, bs’k = l и j1^=k + 2, to d0(Rs'+1)>d0(Rs'); если же/t= = k+2, to d0(Rs' + l) =d0(Rs’) - 1. В любом случае q0&Rs'+1, di(Rs' + 1) = = dj(Rs’) при i = 1,..., г. Так как qQ GRS’+1, то My(Rs'+1, bj) 2Af0 при всех / ф {2t + 3, 2t + 4,. .. ,p). Пусть сначала s' >0. Тогда {qrl,.. ., C Rs +1, так что при j = 2t + 4,..., 2t + I + 3 выполняется cjk(Rs’+1, bj) 2 2M0. Итак, при s’>0 каждое слово /3 вида (b2)sbj bj, где / Ф 2t + 3, принадлежит N(M). Пусть 1 < i < s' - 1, причем доказано, что каждое сло- во /3 вида (b2)s bj^ (Z>2f+3)' bj, где i' G{0,1,..., i - 1}, / #= 2t + 3, при- надлежит N(M). Обозначим wr(M, (b2)s bji (b2t+3)') = /?5’+/+1 • Имеем q0G ^Rs'+i + l’ ^o(Rs' + i + l) ~ ~ 1, dl(Rs'+i+l) = 2й — 1, . . . , dj_i(Rs'+i + i) = = 2" - 1, di(Rs' + i+1) = d0(Rs' + l),, ,dr(Rs'+i + 1) = dr_i(Rs- + 1). При этом dr__j(Rs’ + 1) =dr_i(Rs')= 2l - 1, так как г - i >r - s' + 1. Получаем, далее, сок(/?5' + 1 + 1> bj) 2 Mo при всех / = 1, 2,..., 2t + 2, 2t + 4,. .., 2t + 8. В.Б. Кудрявцев 113
+1 + 3, т.е. при j Ф It + 3 слово (й2)5 Z>71 (h2f+3)zZ>7- принадлежит N(M). Применяя индукцию, получаем, что.все слова вида (b2)sbji (1>2г+з)^/, г = = 0,1, . .. , s' — 1, / #= 2г + 3, принадлежат N(M). Рассмотрим множество Ris'+i = uv(M, (b2)s Ьц (b2t+3)s )• Множество Т?2у+1 (как в случае s’> О, так и при s' = 0) удовлетворяет соотношениям q0 6Т?2у + 1, ^о(^2? + 1) = = 2'-1, <Л(Я2?+1) = 2Й-1,...,^_1(/?2?+1) = 2й-1, d/(/?2j'+1) = = d0(Rs' + l),ds’+l (^2s' + l) =di(Rs' + i) = ds'+i(M)> ,^(^2s' + l) = *400- Так как (6r>; + 1,. .. , 5^ft) =# (0,. .., 0), то. шк(Я2у + 1,/>2^+з)Э^о- Кроме того, из <7o g^2s'+i вытекает, что шг(/?2у+1, bj)2Л/0 при j = = 1,2,... ,2f+ 2. Если j G {2t + 4,..., 2t +1 + 3}, причем Sr 7_2r_3 = 1, to wr(R2j'+1, bj)2. Mq. Таким образом, каждое слово вида (b2)sb7i(b2r+3)sZ>7 при j {21 + 4,..., 2t +1 + 3}либопри/ &{2t + 4,... ..., 2t +1 + 3} и 5r 7_2f_3 = 1 принадлежит N(M). Пусть /2G{2Z+4,... ... ,2t +1 +3}, причем 5r/- _2f_3 = 0 (такое j2 существует в силу усло- вия (5г1,..., (1,..., 1)). Обозначим /?2s'+2 = wk(^2s'+i , ^/2 )• Не- трудно проверить, что R2s'+2 =^2s'+i\{<7o}- Так как s' <г,то dr(R2s'+2)< <2h -2 и d(R2s'+2)<d(M0), т.е. R2s'+2EK. Если цФк + 2, то <is'(.R2s'+2) = de(Rsr+i)>do(Rs,) = ds-(M), откуда (сучетом dj(R2s'+2) = = df(M), i = s' + 1,... ,r) получаем d(R2s<+2)> d(M). Поэтому при /i #= #=fc + 2 слово (b2f b/i(b2t+3)s b/2 принадлежит N(M). Если же/! = А:+2,то d(R2s'+2) = d(M) - 1, и указанное слово не принадлежит N(M). Итак, при s’ < г каждое слово /3 в алфавите В, имеющее длину 2s' + 2, либо принадлежит N(M), либо удовлетворяет условиям d(uy(M, /3)) = d(M) - 1, wK(Af, /3) &К. При этом для любого слова /3' длины, меньшей 2s'+ 2, при- надлежащего B*\N(M), выполнено 0') Ф ф. Пусть теперь s' = r. Так же, как в случае s'О, устанавливаем, что слова вида (b2)s bj при {3,4,..., 2t + 2 }принадлежат N(M). Пусть j\ G{3,4,.. ., 2t + 2}. Обозначим Rs'+2 = aiv(Rs', bj ), 5rl = ... = 5rk_1 = 0, 5rfc = 1. Очевидно, q0<ERs'+1, 61(Rs- + i) = • • • = 5r(^s' + i) = 5 • Если f2 G {3,4,..., t + 2}, to ^o(^s,+i)>^o(^s') при Л Фк + 2 и d0(Rs'+1) = d0(Rs')- 1 при j2 =k + 2. Если же /1 G {t + 3,..., 2t + 2), то при Ф t + к + 2 выполняется d0(Rs'+1)>d0(Rs'); при/!=г + £ + 2 и выполняется d0(Rs'+1) = = d0(Rj>)-l, апри /1 =t + k + 2 и к>1 - d0(^s'+i) = d0(Rs') - 2. Как и в случае s' < г, устанавливается, что каждое слово вида (b2)s bti (p2t+yfbj, i = 0,1,..., s’ - 1, J¥=2f + 3, принадлежит N(M). Обозначим Rs<+i+i = = ojy(Rs'+2, (b2t+3)i), i= 1,..., s . Тогда q$ &R2s’+2, do(/?2i'+i) — 2 — 1, ^i(^2s'+i) = 2й — 1,.. . ,dr_i(R2s'= 2Й — 1, dr(R2s'+i) =do(Rs'+i). Согласно предположению d(M)> 2n~l~J, т.е. (6r /+1,...,6nft) #=(1,0,... ...,0). Отсюда и из неравенства dr(R2s'+1) >dr(M) — 2 нетрудно получить, что существует j' G{ 1+ 1,... ,h}, для которого q^' G7?2s-+1. Поэтому 114
wr(^2s' + i> Ьц + з) 2M0. Кроме того, cor(T?2i' + i. bj) ^Мо при /=1,2,... . . . ,2t + 2. Таким образом, каждое слово вида (b2)s Ь/ (b2t+3)s bj при ]{2t + 4,..., 2t +1 + 3 } принадлежит N(M). Пусть j2 G{2r + 4,... • • •, 2t + I + 3}. Обозначим7?2i'+2 = wK(^2s'+i> bii); 7 = (b2)s bji(b21+3)s bjz. Если qr>jt-2Г-3 e^2? + i> to R2s' + 2 Ж и у&N(M).Пусть qrJi-2t-3 $ $ R 2 s'+1 • Тогда R 2s>+2 =R 2 s +1 \ {<7o} • Очевидно, при этом либо 7?2j'+22-^o. т.е. у&N(M), либо R2s'+2 Если /1 к + 2, t + к + 2}, то dr(R2s'+2) > ^dr(M), d(R2s'+2)>d(M) ненова y&N(M). Пусть jt G{k + 2, t + k + 2}. Тогда d0(R2s'+2) = 2t- 1, d1(R2s'^) = 2h -l,...,d^1(R2s'+2)^2h - 1, dr(R2s'+2) =dr(M) - 1 при к и dr(R2s'+2) =dr(M) - 2 при к>/.Вкаж- дом из последних случаев R2s'+2 GK, d(R2s'+2)<d(M), причемне сущест- вует множества М' GК такого, что d(R2s<+2) <d(M') <d(M). На этом рассмотрение случая s' = г завершается. Итак, каждое слово N(M) длины 2s' + 2 удовлетворяет ус- ловиям: а) шу(М,$)<ЕК; d(vy(M,0))<d(M); б) не существуетМ' &К такого, что J(wK(Af, /?)) <d(M') <d(M). При этом хотя бы одно слово /3 указанной длины входит в B*\N(M). Кроме того, для любого слова/3' из В \N(M), длина которого не пре- восходит 2s'+ 1, выполняется о>к(ЛГ, /3') #= ф. Установим, что автомат V не является генератором. Имеем uv(Q,bi) = M0. Далее, для каждого множества М G К, удовлетворяющего условию d(M) > 27’~/~1 = = d({ qr }), существует слово /3 такое, что d(GJv(M, fi)) < d(M) и wF(Af, /3)&К. Поэтому существует слово , для которого ^v(Q,bl^1) = = {qr, 1 + 1 } Обозначим {qr l+1 } = М2, , br2bt+ z+3 br2t+3)=M2. Лег- ко проверить,что dn(M2) = 2f - 1,di(M2) = 2r - 1,...,dr_Y(M2) = 2r - 1, dr(M2) = 2l -2. Пусть /367?*, |3) =M3, q0 ^M3, причем 1 < d(M3)< < d(M2). Если б?о(М3) = ...= dki_j(M3) = 0, .dki(M3) ¥= 0, qkil ф $ M3,... , qki>kt_l ^M3,qkik} еЛ£з,тоположим(3-(Ь2)!с1 bki+2(b2t+3)ki и = ыу(М3, p'). Аналогично тому, как это делалось выше, проверяется соотношение d(M4) = d(Af3) - 1. При этом q0 ^М4, и так как d(M4) < <d(M2), то { qri,... ,qri) W4 =£ Ф, и при некотором j G { 2t + 4, ... ... , 2t +1 + 3 } будем иметь bj) =M^\{qQ} = Ms, где d(M3) < <d(M3). При этом Ms = ,($(}'bj) . Таким образом, за конечное чис- ло шагов находим некоторое слово (32, для которого wK(Afi,/32) = = {<7oi} • Так как о>к({ д01 }, Z>3) = ф, то окончательно Z>i/3i/32/33) = 0 и V — не генератор. Для получения нижней оценки величины l(V) рассмотрим кратчайшее слово (3 из В* такое, что /3) = 0, Обозначим Р = ct... ck, cz G В, г=1,..., к. Очевидно, O3V{Q, Cj) D Mq, причем (Q, bY) =Mq. Поэто- му biC2 ...ск) = ф, и можно считать далее, что =ЬХ. Обозначим = ^V(Q, Ci -Cj), к. Если CSjt при j\ </2> то wJZ(Q,Ci-.. 8* 115
... Cj Cj +i... ck) = ф и слово 0 не кратчайшее. Поэтому при Д </2 вы- полняется Sf В частности, при /' = 2,..., к имеет место Мо Sj. Пусть К = { Мо,Mi,. . .,Mv }, d(Mj) >d(Mj + i) при j = 0,-1,.. ., и - 1 .Ус- тановим существование таких чисел /0,Д,.. .,iv, что S^=Mj, i/ + 1 > > ij + 2, / = 0, 1,. . . , и . Имеем Д = 1 • Пусть уже доказано существование чисел Д, . . ,ij и /<v. Как легко видеть, слово с^. + 1сд.+2 ...ск не при- надлежит причем длина этого слова не менее 2s'+ 2, где s' на- ходится по M = Mj указанным выше образом. Поэтому + к ... ... =Щ + 1, № можно положить г; + 1 = Д + 2s' + 2. Таким образом, указанные числа Д,Д,..., Д существуют, т.е. L(m, п, р) > l(V) = к > > 2v= 2”(1 -21-_/), и теорема доказана. §10. ВЗАИМОДЕЙСТВИЕ КОНЕЧНЫХ АВТОМАТОВ И КОНЕЧНЫЕ АВТОМАТЫ В ЛАБИРИНТАХ Пусть 1/(?о и - два автомата, взаимодействующих между собой так, что входной сигнал каждого из них в произвольный момент времени t совпадает с выходным сигналом другого в тот же момент времени. Во избе- жание циклов ’’мгновенной зависимости” считаем, что есть автомат Мура, Обозначим Vt/g = (A, Q, В,<р,ф,q0), Vq = (В, QА, <р', ф', qj ) и оп- ределим поведение пары (^<?0,^0') как последовательность (<7о,<7о> до> М, (<7i><71,01, bi)> такую, что а0 = i//'(<7o), b0 = ф(д0, а0), qi + i = = Ж, <*/), <17+1 = <p'(q'i,bi), ai+l = t'(q'i+i), bi+1 = ^(qi+i,ai+1). В этой последовательности qf есть состояние автомата Vqg в момент t = i, q'j — состояние автомата Vq • при t = i, at и bj — входной и выходной сигналы автомата (соответственно выходной и входной сигналы автомата Vq’) в указанный момент. Одной из естественных задач, возникающих при рассмотрении поведений пар (УЧд, Vq°), является задача такого вы- бора автомата Vq (’’управляющего автомата”), при котором выход- ная последовательность автомата V'q' (’’управляемого автомата”) удов- летворяет некоторым наперед заданным условиям. Типичными здесь являются требование принадлежности для каждого i = 0, 1, 2, . . . выход- ного. сигнала аг автомата Vq^ некоторому множеству А' ’’допустимых”^ значений, А ' С А, либо требование принадлежности хотя бы одного а, множеству ’’целей” Л", Л" С Л. Поведение пары (К^, Vq^) в таких задачах удобно представлять как процесс перемещения автомата VQo по ’’лабиринту”, образованному диаграммой переходов L автомата Vq^. В каждый момент времени t = i автомат Vqg предполагается расположен- ным в вершине и диаграммы L, соответствующей состоянию q , и даль- нейшее его перемещение происходит по выходящей из v стрелке, отме- ченной символом bj. В зависимости от постановки задачи управления автомат Vqg либо не должен выходить за рамки некоторого подмножест- ва М' вершин лабиринта L, либо должен достигнуть в конце концов вер- 116
шины некоторого подмножества М" (’’выхода” из лабиринта). Первая из этих задач сводится, по существу, к нахождению расположенного внутри М' цикла, проходящего через , вторая - к нахождению пути, ведущего от док вершине из М". Рассмотренная здесь ситуация, однако, является простейшей, так как часто требуется построить автомат Vq, управляющий заданным образом не одним автоматом Vq^, а произвольным автоматом из некоторого класса К инициальных автоматов (например, задача пере- вода в фиксированное состояние автомата, начальное состояние которого неизвестно). Содержательные соображения требуют при этом в ряде слу- чаев рассмотрения в качестве элементов класса К частичных, недетерми- нированных, вероятностных и т.п. автоматов. В ’’лабиринтной” интер- претации это приводит соответственно к допущению различных множеств возможных ’’направлений” выхода из различных вершин лабиринта (слу- чай частичных автоматов), к описанию положения автомата в лаби- ринте L посредством подмножества вершин L вместо одной вершины (случай недетерминированных автоматов), к рассмотрению случайных блужданий в лабиринте (случай вероятностных автоматов) и т.п. Труднос- ти, возникающие при решении таких лабиринтных задач, мы проиллюст- рируем в данном параграфе на интересном примере [61, 67, 7] задачи об автомате, находящем выход из произвольного плоского прямоуголь- ного лабиринта. Первоначальное решение этой задачи было получено Л. Будахом в рабо- те [71]. Предложенное там доказательство излагалось на языке теории ка- тегорий и было очень громоздким и длинным. Достаточно отметить, что довольно сжатое изложение доказательства полученного результата зани- мало свыше 170 страниц машинописного текста. Опираясь на работу [71 ], А.С. Подколзин дал существенно более простое доказательство [7], кото- рое и приводится здесь. Как видно, оно использует только собственный язык теории автоматов и занимает объем порядка 10 страниц. Будем называть прямоугольным лабиринтом (или, короче, лабиринтом) произвольный (конечный либо бесконечный) ориентированный граф G, у которого каждому ребру р сопоставлен символ | р | из множества {е, п, w, s}, выделены начальная вершина v' и финальная вершина v", при- чем выполняются условия: 1) если различные ребра Pi и р2 выходят из одной и той же вершины, то | Pl I #= | р21; 2) существует путь, ведущий от и к и”; 3) если Pi — ребро, ведущее от вершины и к вершине w, то от w к и ве- дет ребро р2 такое, что I pi I = | р2 Г1 • Здесь е~1 = w, п~* = s, w~l = е, s~l = п; 4) граф G не имеет параллельных ребер, петель и изолированных вершин. Плоским прямоугольным лабиринтом называется такой конечный прямоугольный лабиринт G, вершины которого суть точки плоскости с це- лочисленными координатами, причем ребро р, выходящее из вершины с координатами (У, /'), ведет к одной из соседних вершин (У - 1,/), (У + 1,/), (У, / + 1), (У, / — 1), определяемой по | р ) так, как указано на рис. 2.19. Если существует бесконечная несамопересекающаяся ломаная, состав- ленная из горизонтальных и вертикальных отрезков с концами в целочис- ленных точках, начинающаяся с финальной вершины v" плоского лабирин- 117
та G и не имеющая других общих точек с G, то плоский лабиринт называет- ся правильным. Правильность лабиринта означает, что ’’выход” из него осуществляется во внешнюю область. Для произвольного лабиринта G обо- значаем [и] множество отметок ребер, выходящих из вершины и лабирин- та G. Будем рассматривать в лабиринтах поведение автоматов Г(?о = = (A, Q, В, tp, ф, <70), удовлетворяющих следующим условиям: 1) А — множество всех непустых подмножеств множества В, В = = {е, п, и’, s}; 2) если q G Q и a G А, то «) G а. a j+i) п (i-t j), ('В rAi+l.n в S a j-o Рис. 2.19 Обозначим М множество всех автоматов указанного вида. Поведе- нием автомата Vqg , VQg G. М, в лабиринте G назовем последовательность (flu, ^о), (<7i, Bi), .. ., где и0 - начальная вершина лабиринта G, qi+l = = <p{qt, [vz]), ui+1 - вершина, к которой от v, ведет ребро с отметкой Ф(<7/> [ty]), i ~ 0, 1,2, ... Последовательность и0, щ, v2,... есть последо- вательность вершин лабиринта G, по которым ’’перемещается” автомат Vqg, <7о, <71, Иг, • - последовательность возникающих при этом состояний дан- ного автомата. В каждый момент времени автомат Vq, находясь в некото- рой вершине и,-, получает входную информацию о множестве [п;] направле- ний выходящих из Vj ребери выбирает то направление i//(<7f, [ц]), по кото- рому он будет двигаться. Если существует такое г, что и,- - финальная вер- шина лабиринта G, то говорим, что автомат Vq выходит из лабиринта G. Оказывается, что задача поиска выхода из произвольного правильного ла- биринта не решается конечными автоматами. Именно, имеет место Теорема 2.26 [7]. Не существует конечного автомата Vqg такого, что Vqg GM и Vqg выходит из любого правильного лабиринта. Доказательство. Зафиксируем произвольный автомат Vqg = = (A, Q, В, <р, $,q0) из М и покажем, что существует правильный лабиринт, из которого Vq не выходит. Введем ряд вспомогательных понятий и обо- значений. Вершины лабиринта G, отличные от начальной и финальной вер- шин, из которых выходит ровно два ребра, назовем простыми, прочие вершины - узловыми. Пусть (i/o.^o), (<7i, ih)., — поведение автомата 118
И(?о в лабиринте G. Подпоследовательность (q0,v0), (q, ,Vj ), (<у;- , v, ),... этой последовательности, соответствующую всем узловым вершинам и,-, называем сокращенным поведением УЧо в G и обозначаем tt(G). Коридо- ром в лабиринте G называем подграф К графа G, вид которого указан на рис. 2.20, где w2, .. ., — простые вершины, причем вершины ivо, w!,..., w„ предполагаются занумерованными в порядке возрастания либо в порядке убывания натуральными числами 1, 2, ..., и + 1 (т.е. каж- дый подграф вида, указанного на рис. 2.20, определяет два коридора, от- личающихся нумерацией вершин). Первая и последняя вершины коридора могут быть как простыми, так и узловыми; допускается совпадение этих вершин. Если вершины н’о, w,, ..., iv„ имеют соответственно номера 1, 2, .. ., п + 1, то коридор на рис. 2.20 называем Х]Х2 ... хп-коридором, иначе - х7;' х~[! ... х? '-коридором. Очевидно, х,+ 1 ¥=х,- 1, i = 1,..., п — 1. Пусть Р, - множество всех слов х, . . . х„ в алфавите В, у которых и > 1 и х, + 1 Ф xf1 при всех / = 1, . . ., п - 1. Будем обозначать (х1 . . . х,г)-1 = = х;,1 . . . хГ1. Пусть 7V= | Q | , X = (N+ 1)!. Покажем, что для любого слова р & Pi при замене в произвольном лабиринте G рХт -коридора К на рХт -коридор К'' (т, т’ = 1, 2, 3,..., первая вершинаХ соответствует при замене первой вершине А"', а последняя - последней) получается лабиринт G’, удовлетворяющий условию tt(G) = tt(G'). Без ограничения общности предполагаем, что т < т'. Обозначим р = Х| . .. хк ; пусть w t. ,wkkm - все вершины коридора К, и’\,. . .; w'kkm' - все вершины коридора К' (ин- декс вершины есть ее номер), w( = w'( = и, wkkm = wkkm' =.w. Рассмотрим подпоследовательности тг । : (с/0, , (я, , ), (<7,2, .. и я2: (qn, п0), (</,-, и,’’), • поведений автомата K(Jo в G и Gобразованные из всех пар (q, и), у которых v - либо узловая вершина, либо одна из вершин и, w. Докажем, что для каждого / =0,1,2,... выполняется (q,., v,-.) = (др , у',) (где in ~ iи = 0). В случае j = 0 это верно. Пусть при некотором / уже Рис. 2.20 доказано (<?, ., у(Д = — I (Ц,'., и,-')- Если vf ф(м, w), то, очевидно, = Пусть и,, -и (случай у,- = w рассматривается анало- гично). Если у (</; . [м]) Ф х, . то также выполняется ql = qj> ,vt = / /И /+1 /+| = f (так как автомат на рассматриваемом отрезке времени пере- мещается по одинаковым частям лабиринтов G и G ). Пусть теперь ^(7,- , |м]) = Х|. Если (q, , у;. ) - конец последовательности Я|, то авто- 119
мат начинает бесконечно долго перемещаться по вершинам коридо- ра К, никогда более не достигая вершин и, w. Если Vq^ при этом достигает некоторой вершины wik, то рассмотрим состояния zq , к2,. . . , к,- автомата Vq, которые он имел, оказавшись впервые (начиная с момента t = i, ) в вершинах wk, w 2k , • • • , wik соответственно. В случае i > N для некоторых S], s2 G {1,. .. . i}, 5] < s 2, выполняется ~Ks, • Рассмотрим поведения автомата , начинающиеся с моментов первого достижения им вершин и\ k Достижимые в этих поведениях окрестности вершин к и ws2k устроены одинаково, так что указанные поведения отличаются лишь сдвигом на (s2 - s i )к вершин. Поэтому автомат Vq через конечное число шагов перейдет из вершины wsk в вершину ws, к + (S, -s, ) к, затем - в вершину ws,k+2(s, -S' )к и т.д. В конце концов Vq достигнет вершины и’, что противоречит сделанному выше предположению. Итак, автомат Vqo в процессе указанного перемещения по вершинам кордиораК не достигает вершины W(N + i)k, т.е. в силу N + 1 < X не достигает тех вершин коридо- ра К, в которых он отличается от К'. Это означает, что и в лабиринте G' автомат Vq неограниченно долго перемещается внутри коридора К1, т.е. (qj:, v'i!) ~ конец я2. Пусть теперь определена пара (q^^^.v^ ^). Тогда G{zz, и’}. Если + 1 = и, то, рассуждая так же, как и в предыдущем случае, получаем, что Е1?о на интервале от момента t = z, до момента r = + 1 не попадает в вершины wik, у которых z> N, т.е. не достигает тех вершин, в которых К отличается от К’. Отсюда и получаем и = и, = = qt . Пусть, наконец, vt. =w. 1 1 i 4. 1 ? + 1 Как и выше, обозначим к, состояние автомата И£/ , которое он имел, оказавшись впервые (на временном ин- тервале { z;. i,• + 1.ij + [}) в вершине wik . Тогда для некоторых S], s2 G G { 1,2, . . . , N + 1}, X] <s2, выполняется Ks = ks , откуда нетрудно по- лучить к, = ks m-s )(mods, -j, ) дая всех z ~ S] + 1,. . . , Xw. Пусть те- перь к'- - состояние автомата , которое он имел, оказавшись впервые (на временном интервале{i'-. i- + 1.......i'- + j}) в вершине w'ik коридора К Так как К есть начальный отрезок коридора К', то «• = /<,• при всех z - = 1 , . . . , X/7Z, И, В частности, К5' = , откуда К,- = К51 + )(mod з, -3, ) для всех z = л ,, Sj + 1..................Xzzz'. При этом Vq ны ’v'\km'=vv коридора К', т.е. v'i' = Vi 7 + i 7 + i достигает концевой верши- = w. Далее, =• <,„ = а так ^з, +(Xm—31)(mod3J-3,)> +(Хт-з, ((modi, - - как Х(т' — т) делится на s2 -Sj (в силу выбора X и условия s2 то / = q( . Таким образом, во всех возможных случаях из совпаде- ния /-Х элементов последовательностей Я| и я2 вытекает совпадение j + 1-х элементов этих последовательностей, причем обрыв последовательностей происходит одновременно, т.е. Я1 = я2 и я(С) = я((7 '). 120
Доказанное утверждение позволяет изменять некоторым образом кори- доры лабиринтов, не изменяя сокращенного поведения автомата в этих лабиринтах. Обозначим Р2 множество всех слов из Pi, имеющих вид х^х2х . . . х£, к > 1, х,- G{ е, п, w, 5}, i = 1, . .. , к. Слова р\, р2 из Р2 называем подоб- ными, если одно из них может быть получено из другого заменами подслов вида х2А“ «—>хЛ, х 6 {е, п, w, s}. Согласно доказанному утверждению мож- но заменить в произвольном лабиринте G р\-коридор К на такой р2 -кори- дор К ’, что слова pi и р2 подобны, и сокращенное поведение автомата Г(?о при этом не изменится. Лабиринт G', полученный из G последовательностью таких замен, называем подобным лабиринту G. Для доказательства теоре- мы построим конечный (вообще говоря, не плоский) лабиринт L, из ко- торого Vqa не выходит, и покажем, что L подобен некоторому правильно- му лабиринту L1. Нетрудно заметить, что необходимым и достаточным ус- ловием существования такого лабиринта L1 является наличие плоской укладки лабиринта L, т.е. такого сопоставления узлам лабиринта £ точек плоскости (не обязательно с целочисленными координатами), а коридо- рам — соединяющих эти точки ломаных, при котором: а) направления отрезков ломаной, сопоставленной р-коридору К, опре- деляются последовательными символами слова р (ломаная проходится в том же направлении, что и вершины коридора К). Длины отрезков лома- ной произвольны; различные ломаные могут пересекаться только в концах; б) финальной вершине лабиринта L соответствует точка т, из которой можно провести горизонтальный либо вертикальный отрезок, расположен- ный во внешней области фигуры, образованной сопоставленными коридо- рам ломаными (длина отрезка может быть сколь угодно малой). Поэтому далее ограничимся установлением существования такой уклад- ки лабиринта L. Введем ряд обозначений. Для произвольных вершины v лабиринта G и слова р - хх .. . х^, р G В*, обозначим 8(ц р) ту вершину лабиринта G, к которой от v ведет последовательность ребер с отметками хь .. . , хк. Произвольное слово р G В* можно преобразовать в слово р' c?h приме- няя к нему последовательно замены подслов вида хх-1 (х G В} на Л. Как нетрудно видеть, такое слово р' определяется по слову р однозначно; обо- значим его у(р). Если определена вершина 3 (и, р), то 3 (и, р) =8 (и, у(р)). Пусть я = (<?о, i>o), (<?i, yi). • • • — поведение автомата Е’Чо в лабиринте G. Обозначим 0,(я) = ^(<?о, [i>o ] Ж<71, [t>i ]) • • • Ф(<7(-, /]), i = 0, 1, 2, ... Имеем и,- = 8(i>0, 0,-1(я)) = 8(и0, у (в, _ i (я))), i = 1,2,.. . Далее обозна- чаем у(0,(я)) = в -(я); тогда ц = 8 (и0, в-_, (я)). Поведения 1гг = (q0,v0), (di, i>i), - • • и я2 = (q0, »о), (qi, vi), • • авто- мата VqQ в лабиринтах G и G' называем неотличимыми, если для каждого i =0, 1,2,... выполняется qt = q't, [17] = [и' ]. Легко видеть, что в случае неотличимости поведений Я1 и я2 выполняется 0,(Я1) = 0;(я2), i = 0, 1,2, . , . Обозначим а = е\ b = п\ с = sK, d = , рх = (abdc)K + x{dbac)\ р2 = = (dcab)x + 1(Hcdb)K, В' ={ Pi, р2, pi1, р2'} При изображении лабиринтов 121
далее указываем только их узловые вершины. Если К есть р-коридор с пер- вой вершиной v и последней вершиной w, то для обозначения К проводим от и к w стрелку, отмеченную словомр; при этом обратную стрелку, отме- ченную словом р-1 и соответствующую р-1 -коридору с первой вершиной w и последней вершиной и, опускаем. Обозначим Н множество всех таких лабиринтов (конечных либо беско- нечных) , у которых для каждого р G В' из каждой узловой вершины v вы- ходит р-коридор, причем последняя вершина этого коридора тоже узловая. Рис. 2.21 Пример лабиринта Li из Н указан на рис. 2.21, где узел-Z является одно- временно начальной и финальной вершиной. Легко видеть, что поведение в £i неотличимо от поведения Kq в произвольном лабиринте из Я. Поведение автомата Kq в L} обозначим через я, тг = (q0, Z), (q4,Ui),. .. Пусть также я' = (р0, Z), (р,^ , Z), (р,-2, Z), .. . — сокращенное поведение Vqa в £i. Если последовательность я* конечна и Z) — ее последний член, то для каждого i = 1, 2, . .. длина слова 0-(я) не превосходит д(£ + 1) — 1,где д - длина слова pi, д = 4Х(2Х + 1). Рассмотрим поведе- ние я4 автомата Kq в бесконечном лабиринте £2, указанном на рис. 2.22 (Z — начальная и финальная вершина). Так как £2 € Н, то я неотличимо от Я1, и вершины лабиринта £2, достижимые автоматом Vq , суть вершины 8 (Z, 0;-(я)), i = 0,1,2,... Но длина слов 0;-(я) не превосходит д(£ +1)-1, т.е. автомат никогда не достигает вершин к + 1-го яруса указанного на рис. 2.22 дерева (Z считается вершиной нулевого яруса). Поэтому в качест- ве £ можно рассмотреть подграф лабиринта £2, ограниченный первыми к + 1 ярусами; начальная вершина £ есть Z, а финальная расположена на к + 1-м ярусе. Автомат 7(?о не выходит из £, причем существование плос- кой укладки лабиринта £ очевидно. Пусть теперь последовательность я' Рис. 2.23 Рис. 2.22 122
бесконечна; тогда она периодическая. Обозначим (<?о, Z), (д, , Z), ... ..., (<7,- , Z) ее предпериод и (<?,. ,Z),..., (<?, , Z) периодически пов- теряющуюся часть, г > 1. Пусть 07 = 0/ (я), с^Дз = 0,- (я), 0(. = 7(а,), i = 1,2. Если /32 = Л, то для каждого i = 1, 2,... длина слова 0'- (я) не пре- восходит p(s + г ) — I, и в качестве L достаточно взять подграф лабиринта £2, ограниченный первыми s+r ярусами; начальная вершина L есть Z, а финальная выбирается на s + r-м ярусе. Пусть 02 Л. СловаQj и а2, а вместе Рис. 2.24 с ними и 01, 02 получены последовательным соединением некоторых слов множества В'. Поэтому 02 можно представить в виде Р;о°Р/‘ • • • ... р.к~1, к > 1, jj G { 1,. 2}, 6; целое, отличное от 0, ¥= j +1, mod к ), г = 0, 1, . . ., к — 1. Пусть сначала к = 1, рассмотрим случай jo = \ (случай jo = 2 рассматривается аналогично). Обозначим L3 бесконечный лабиринт, указанный на рис. 2.23. Начальная и финальная вершина лабиринта L3 есть вершина Z ' = 8(Z, /3Г1) • Вершины, достижимые автоматом в £3, име- ют вид 3 (Z', 0,(тг)), /=0,1,2,... Обозначим s’ = is, г' = is+r —is. Пусть i>s', i - s' = i' • r' + i", i" G { 0, 1, .-.. , r’ - 1} . Тогда 8(Z', 0,(я)) = = 8 (Z', a2 a) = 8(Z', 0t 02 a) = 8 (Z, a), где длина слова а равна i". Поэто- му множество вершин, достижимых автоматом Vq в £3, конечно. Обозна- чим v число таких вершин и выберем в качестве L подграф лабиринта L 3, образованный всеми вершинами вида 3 (Z, х), где х — слово длины, не пре- восходящей v + 1. Начальная вершина лабиринта L есть Z ', финальная — некоторая вершина вида 8(Z, х), где х — слово длины v + 1, принадлежа- щее Р\ и такое,что F, не выходит из L. Для доказательства существования плоской укладки лабиринта L достаточно установить существование такой плоской укладки лабиринта £4, изображенного на рис. 2.24, что из соот- ветствующей Z точки плоскости в направлениях w, s (первые символы слов р2,р2х} можно провести отрезки, расположенные во внешней об- ласти этой укладки. Доказательство существования плоской укладки ла- биринта Е4 (и ряда рассматриваемых ниже лабиринтов) проведем, исполь- зуя следующее утверждение. Пусть G — некоторый конечный лабиринт, причем из вершины и лабиринта G к вершине w ведет р-коридор К, р = = р'хухр", р',р"^В*, х,у&В. Рассмотрим лабиринт G', получающийся из G заменой коридора К на р'хр"-коридор К'. Покажем, что из сущест- вования плоской укладки лабиринта G' вытекает существование плоской укладки лабиринта G. Если х =у, то это очевидно. Пусть х=/=у; в силу 123
симметрии достаточно рассмотреть случай х = е, у - п. Выделим в укладке лабиринта G’ отрезок АХА2, соответствующий указанному вхождению символа е в слово рер"; продолжим влево и вправо этот отрезок до крайних в укладке точек Л3,Л4 (рис. 2.25). Изменяя выделенный фраг- мент укладки так, как показано на рис. 2.26 (8 — некоторая достаточно малая величина), получаем требуемую укладку лабиринта G. Теперь для произвольного слова р G Рх обозначим ( (р) результат последовательного применения к р (пока это возможно) замен подслов вида хх, хух (х, у G Рис. 2.25 Рис. 2.26 GB) нах. Нетрудно проверить, что такой результат не зависит от порядка выполнения указанных замен. Таким образом, для доказательства сущест- вования плоской укладки некоторого конечного лабиринта G достаточно установить существование плоской укладки лабиринта f (G), полученного из G заменой каждого р-коридора на f (р)-коридор. Имеем f(pi) = = f((emvs)x + 1(wHe5)x), и далее индукцией по X несложно установить, что ?(Pi) = enws. Укладка лабиринта Г(14) указана на рис. 2.27, из соответ- ствующей узлу Z точки Z' при этом возможно провести в направлениях и', s отрезки, расположенные во внешней области. Перейдем к рассмотре- нию случая (32 • • Pj£~l ’ к > 1’ Начало периода можно выбрать в этом случае так, чтобы выполнялось /0 =1; тогда=Р^)Р21 •• • Pi/c-2P24~ 1. к = 2к'. Предположим, сначала, что существует такое /, для которого I е, I > 1. Рассмотрим случай, когда i четно (т.е. е, — степень при pi); слу- чай нечетного i в силу симметрии рассматривается аналогично. Начало периода выбираем так, чтобы отличной от ± 1 оказалась степень е0- Пусть сначала е0 > 0. Обозначим Д3 = р2'р\2 .. . р\к ~2р^к, 04 = Р13з(Рг)Х-1Р1. =₽3(₽2)К"‘. Пусть G — произвольный лабиринт, каждый соединяющий узловые вер- шины коридор которого есть р-коридор, где р - слово вида pf'pf2 P/ S. s > 1. lj G{ 1. 2}, г, G{ - 1, 1}, j - 1.5. Рассмотрим множество U вершин лабиринта G, включающее всё его узловые вершины, а также такие вершины каждого соединяющего узловые вершины р-кори- дораК, р=р,' ...piS. которые представимы в виде 8(п, p‘t' ...р}), где и — первая вершина коридора К. /=1,2.....s - 1. Присоединим для каждой вершины w G U к лабиринту G бесконечный граф вида, указанно- го на рис. 2.28 (и , . . ., - все слова v из В , для которых из w не вы- 124
ходит такой р-коридор, что р начинается с и); вершина vv'присоединяемо- го графа отождествляется с вершиной w. Полученный в результате ла- биринт обозначаем £(G). Рассмотрим лабиринт £(£ 5), где L 5 приведен на рис. 2.29 (начальная и финальная вершина есть Z!). Пусть L ь — лабиринт, получающийся из £ (£5) выбором в качестве начальной и финальной вершины Z = 5 (Z j ,07*). Вершины, достижимые автоматом И(?в в L6, имеют вид 8(Z,0,(я)), i = 0, 1, 2, ... Пусть i > sc, 'i - s’ = ir^Xr' + i", i" G { 0, 1, ... Ри с. 2.28 Рис. 2.27 .., 2\r ' - 1}. Тогда 8(Z, 0,(я)) = 8(Z, ага22к1'а) = 8(Z, 0102/z'a) = = 8(Z j, а), где длина слова а равна i" . Поэтому множество вершин, до- стижимых автоматом в£6, конечно. Обозначим число таких вершин v и рассмотрим лабиринт L 7, образованный всеми вершинами лабиринта £ 6, представимыми в виде 3(Z2, х), где х — слово длины, не превосходящей v + 1 (ребра, соединяющие вершины £ 7, те же, что у £ 6) • Начальная верши- на лабиринта £ 7 есть Z, финальная — некоторая вершина вида 3(Z2, 03pei’exi), где длина слова РзР^ехх равна v + 1, &3р\леХх £Р2. Автомат не выходит из лабиринта £7; для построения лабиринта £ преобразуем некоторые коридоры лабиринта £ 7, не изменяя сокращенного поведения автомата . Так как первые (и последние) символы слов ри f(р) одинаковы, то слово f (02) может иметь либо вид (enws)xxl, где х > 0, Xi = e/z при еА_ , > 0 и xt = е при еА_ , < 0, либо вид (eswn)xx2, где х > 0, х2 = Л при , > 0 и х2 = г при еА_ 1 < 0. В первом случае за- меняем pi-коридор с первой вершиной 3 (Z 2, р, 03 (02)А " *) на Р] (dbae)K ^-коридор; при ек1 >0 заменяем также р2-коридор с первой вершиной 3(Z2, (02 )Л ^2pf“P2‘ Ре{с~2р\к~ 1- 1 ) на р2 (acdb) ^-ко- ридор, а при ek-i < 0 — р^1-коридор с первой вершиной 3(Z2, 0з (02) * ”2pVpV • •• p\h~ 2р\к^ 1 + 1) на Р~2 (cdba )Хл-коридор. Во втором случае заменяем рх -коридор с первой вершиной Z2 на (abdc}Kxpx-кори- дор; при ej > 0 заменяем также р2-коридор с первой вершиной Z2 на (dcab) XvP2-коридор, а при е, < 0 - р~2 -коридор с первой вершиной Z 2 на (са bd) Лхр~21 -коридор. В первом случае финальная вершина лабиринта £ есть 8 (Z2,0зре1’’6'-г1). во втором случае -вершина 8(Z 2,(.dcab)Xxp3p\" eXi) 125
при Ci > 0 и вершина 5(Z2, (саМ)при ei < 0. Обозначим в первом случае Z3 = S(Z2, 0зР61°), во втором случае Z3 = 8(Z2, (б?сай)Лх03ре10) при Ci > 0 и Z3 = 3(Z2, (cabd) Xx03pei°) при ei < 0. Для установления существования плоской укладки лабиринта L рассмотрим ла- биринт L*, получающийся из L отбрасыванием ’’деревьев”, возникших при переходе от L 5 к £(L5). В качестве начальной и финальной вершины лаби- ринта L ’ выберем, например, вершину Z j. При построении плоской уклад- ки L1 будем устанавливать возможность проведения из точки, соответст- вующей вершине Z 3, отрезка, имеющего направление е и расположенного во внешней области укладки. Вид лабиринта L' отличается от вида лаби- ринта L s (см. рис. 2.29) только тем, что вместо слов 04, 05рассматриваются следующие слова (}'4 ,f}$: а) если f (02) - (enws)xXi, то 04 = $4(dbac)Kx, 0’5 = 0s(acdb)Kx при et_i >0 и Й = f}s(cdba)Kx при ек_ i < 0; б) если f (02) = (eswn)xx2, то 04 = (аМс)Хх04, 03 = (dcab)Kx0s при £1 > 0 и 05 = (cabd)Kx при < 0. Нетрудно проверить, что в каждом из перечисленных случаев f (04) — = es(w«es)e°-2, f(0s) '= x(wnes)e<,~1x', где х G{A,s0), х' ё G { wn, wne }. Кроме того, £ (р*®~1) = (enws) е’~ 1. Плоская укладка лаби- ринта f (L1) изображена на рис. 2.30. При перемещении по укладке L' от Z2 к Z1 вдоль ломаной, соответствующей 05’, внешняя область остается сле- ва. В точку Z3 этой ломаной, соответствующую вершине Z3, мы приходим, двигаясь в направлении s, а выходим (в зависимости от знака 6j) в направ- лении w либо s, так что в каждом случае H3Z3 можно провести в направле- нии е отрезок, расположенный во внешней области укладки. 126
Случай е0 < 0 рассматривается аналогично случаю е0 > 0- При этом полагаем = р~' ((32)“р”/. 3s = 0з(0г)Л' 1 и в лабиринте L5 на рис. 2.29 заменяем слово ре1"-1 на Р^' '• Пусть теперь 02 — Р()"Р^ ... , где к > 1 и | е, | = 1, i = 0, 1, ..., к — 1. Предположим сначала, что ' к — 1 е0 = £i = ••• = ек_ ! = е. Тогда можно считать, что к = 2. Рассмотрим здесь лишь подслучай е = 1 (в подслучае е = — 1 рассуждения аналогичны). По- ложим &, = (Р1Р2)Л-1 и рассмотрим лабиринт Л8, изображенный на рис. 2.31. Пусть Z 9 — лабиринт, получающийся из '£ (L 8) выбором в качест- ве начальной вершины Z ' =- 8(Z, 0]1-). Вершины, достижимые автоматом Иц в L 9, имеют вид 3 (Z ' , 9, (я)), / = 0, 1,2, ... Пусть i > s', i — s' = = i' -2(X - l)r' + i" , i" G {0, 1, ..., 2 (X - l)r' - 1}. Тогда 8 (Z ’, 9,-(я)) = 8 (Z ’ , О] a2 (Л “ 1 ’'' a) = 8(Z', 0,0*(1 >'‘a) =8 (Z. ah где длина слова а равна i" . Поэтому множество вершин, достижимых авто- матом Иц в L4, конечно; пусть число этих вершин равно v. ОбозначимZ 10 лабиринт, полученный из L 9 удалением всех вершин, не представимых в ви- де 8 (Z, х), где х — слово длины, не превосходящей v + 1. Начальная вер- шина лабиринта Ll0- есть Z; финальная — некоторая вершина вида 8 (Z, пх2), где длина слова пх2 равна v + 1, пх2 G Р \ .. Как и в рассмотрен- ном выше случае, преобразуем L 9 в лабиринт L , заменив р2-коридор с пер- вой вершиной 3(Z, (PiP2)x~2Pi) на р2 (acdb) А -коридор; при этом сокра- щенное поведение автомата Иц не изменится. Далее рассмотрим, как и вы- ше, лабиринт L , получающийся из L отбрасыванием ’’деревьев”, возник- ших при переходе от Z 8 к £ (£ 8). При построении плоской укладки для L проверим, существует ли отрезок, выходящий из соответствующей верши- не Z точки Z в направлении п и расположенный во внешней области укладки. Вид лабиринта L отличается от вида /. 8 (см. рис. 2.31) только тем, что вместо слова 06 рассматривается слово & = (рхр2~)К~1 (acdb)\ При этом f (06 ) = eswii; укладка f (£* ) изображена на рис. 2.32, из кото- рого видно, что проведенный от точки Z ' в направлении п отрезок располо- жен во внешней области укладки лабиринтаL'. Пусть теперь не все значения е0, , • ••, £к- i равны. Предположим снача- ла, что в последовательности ...., ек_ । существует значение е, такое. Р и с. 2.32 127
что e(i-i)(mod а ) и e(l+i)(motlM. отличны от е,-. Рассмотрим случай, когда I нечетно (случай четного i рассматривается аналогично). Начало пе- риода можно выбрать так, чтобы выполнялось = Рг'Р\2Рг3 ... ... р\к~~ гре2~ ’pV - ei е2- Пусть, например, ei = — 1, е2 = 1 (случай в] = 1, е2 = — 1 аналогичен). Обозначим |37 = PiPVpI4 P<2~iPi Рас' смотрим лабиринт L ц, изображенный на рис. 2.33. Пусть L12 — лабиринт, полученный из £(£]]) выбором в качестве начальной (и финальной) вер- шины Z’ = 8(Z,/3711). Вершины, достижимые автоматом И(?о в L12, имеют вид 8 (Z1,0((тт)), i = 0, 1,2,... Пусть i s', i — s' = i' Xr ' +i", i" E {0, 1, ..., Xr' - 1). Тогда 8(Z’, 0,-(я)) = 8(Z', dia^a) = = 8(Zz, /3]/?'2 x a) = 8 (Z, a), где длина слова а равна i". Поэтому мно- жество вершин, достижимых автоматом Vqn в Li2, конечно; пусть число этих вершин равно г. Обозначим L ] 3 лабиринт, полученный из L 12 удале- нием всех вершин, не представимых в виде 8 (Z, х), где х — слово, длина которого не более v + 1. Начальная вершина лабиринта L 13 есть Z, финаль- ная - некоторая вершина вида 8 (Z, ех3), где длина слова ех3 равна р + 1, ех3 Е Р1. Преобразуем L ]3 в лабиринт L, заменяя некоторые коридоры так, чтобы при этом не изменилось сокращенное поведение автомата Vq . Нетрудно видеть, что слово ( (07) имеет либо вид (enws)x, х> 1, либо вид (eswn)xes, х > 0. В первом случае заменяем pi-коридор с первой вер- шиной 8(2, (&2)к~гр1р23 ...р2к~х) нар] (б/8ас)Хх-коридор, во втором случае заменяем р^-коридор с первой вершиной Z на (cabd)xxp~2l -кори- дор. Рассмотрим лабиринт L', полученный из L отбрасыванием ’’деревьев”, возникших при переходе от L ] ] к f (£ 1 ]). При построении плоской уклад- ки для// проверим, существует ли отрезок, выходящий из соответствую- щей вершине Z точки Z ' в направлении е и расположенный во внешней об- ласти укладки. Вид лабиринта L' отличается от вида £ц (см. рис. 2.33) Рис. 2.34 Рис. 2.35 тем, что при £ (07) = (enws)x сопоставленное ведущему к Z ребру сло- во Д7 заменено на /37 = 07 (dbac)Хх, а при f (/37) = (eswn)xes сопостав- ленное выходящему из Z ребру слово /32 заменено на /32 = (cabd)Xxj32. Обозначим в первом случае $8 = /32 (/3?)Л 2, а во втором - /?8 = = Р2 (<3з ) Л 1 • Очевидно, достаточно установить существование плоской укладки для лабиринта L", изображенного на рис. 2.34 и соответствующего ’’основному циклу” лабиринта L1. Имеем в каждом из случаев f (|38) = = swues: укладка лабиринта f (L") приведена на рис. 2.35, из которого 128
видно, что проведенный от точки Z' в направлении е отрезок лежит во внешней области укладки для L . Перейдем к рассмотрению случая, когда не все е0, ei, ..., i равны, причем для каждого i = 0, 1,..., к — 1 одно из значений eo-i)(mod fc)’ eG+i)(modfc)равно е;. В этом случае можно вы- делить в е0, е1( ..., ек_ । подпоследовательность (с точностью до цикличе- ского сдвига) вида 1, -1,..., -1,1,..., 1, -1, где гi > 2, г2~> 2. Рассмотрим '"i Гг случай rj > г2 (случай г2 аналогичен). Изменением начала периода можно добиться, чтобы р2 имело вид р?1 ... рТ1 р. ...р. рГ1 pe.2ri ...р7х . /о !г2-2 !г2-1 )2г2-2 /2г2 -1 !2гг 1к-1 Будем рассматривать случай /0 = ]г 2 = U прочие случаи аналогичны. Обозначим р9 = р\1р~2 Р2Р1Р2 -Pi, тогда р2 = P9Pi0> где Р10 начи- г г - 1 гг — 1 нается и кончается словом р21 Обозначим также р\1р21 ••• P\l ~ Pi 1 • Рас- Г2 - 1 смотрим лабиринт L 14, изображенный на рис. 2.36. Пусть L15 — лабиринт, полученный из £(£14) выбором в качестве начальной (и финальной) вер- шины Z' = & (Z, Р,1). Как и в предыдущем случае, убеждаемся, что мно- жество вершин, достижимых автоматом в L j 5 конечно; пусть число та- ких вершин есть V. Строим далее лабиринт! 16, полученный из LiS отбра- сыванием вершин 5 (Z, х), где х — слово, длина которого более v + 1. На- чальная вершина лабиринта L j 6 есть Z , финальная — некоторая вершина вида 3(Z,sx4), где длина слова sx4 равна v + 1, sx4 G PY. Обозначим Pi 2 = P2 (Рю) 1 • Если f (Pi 2) ~ (swne)x, то заменим в L ! 6 р)1-кори- дор с первой вершиной Z на (bdca) Ххр~^-коридор; если же f (Р)2) = = (senw)Kx se, то заменяем р^-коридор с первой вершиной 9. В.Б. Кудрявцев 129
5 (Z, 02 (0i о)Х 2Р~2Р]1Гг -Р^ 2 ) на р~2 (с<йл)Л*-коридор. Существо- ванне плоской укладки для получаемого в результате лабиринта L доказы- вается так же, как в предыдущем случае. Теорема доказана. § 11.ОЦЕНКА ЧИСЛА АВТОМАТОВ ПРИВЕДЕННОГО ВИДА Обозначим К(т, пгр) множество всех автоматов V = (A, Q, В, та- ких, что А = { 1, 2, ..., т }, Q ={ 1, 2, ..., п}, В = { 1, 2, ..., р}. Очевидно, \К(т, пгр)\ = (пр)тп. Пусть V G К (т; п, р~). Тогда множество состояний автомата V разбивает- ся на классы попарно неотличимых состояний Qi, ..., Qs, Q., С Q, i .= = 1, ..., s. Множество всех таких автоматов V Е К(т,п,.р), у которых max | Qi | = j, обозначим К1 (т, п, р). Легко заметить, что К1 (т, н, р) I < i < 5 есть множество всех автоматов приведенного вида, содержащихся п в К(т, п, р). Имеем очевидное соотношение 2 \К1(гт,пгр)\ = i = 1 = \К(т, п,.р) | = (пр)т,г. Для оценки величины (т, пгр) | установим ряд вспомогательных оценок. Лемма 1 [29]. При любых ш > 2, р > 2, и > 2 и / Е { 2, 3,..., и } имеет место | К\ш, п, р)| <С'п(pnj'Уп(рп)т(п->>. Доказательство. Обозначим Qt, ..., Qi всевозможные j -эле- ментные подмножества множества {1, 2, ..., п}. Пусть К- (т, п,.р) — класс всех содержащихся в К1 (т, п, р) автоматов, у которых состояния подмно- жества Qj попарно неотличимы, i = 1, ..., С'п. Очевидно, \К^ (т, п, р) | = = \К\ (т, п,р) | при любых /ь ii Е { 1, ..., С£), поэтому |Х7 (т, п, р) | < < С>п -1 (т, п,р) |. Без ограничения общности можно считать, что Qi = {1, 2, ..., /}. Разобьем К\(т,п,.р) на классы К1^ i (т, пгр), ПгР), относя к одному и тому же классу автоматы Vr - (A, Q,B,<Pi, Ф1) и V2 = (A, Q, В, ip.2, 02), у которых (q, а) '= = ^2(4,4),0,(4,а)=02(д,а)при любых <7Е{/+1,...,д}, a. Е{1, Очевидно, <7/<(ир)'”(” 7 ),откуда |K/1(m,n,p)|<(np)m("_/) ^max w,p)|. Как легко заметить, любые два автомата из К\ j(m, п, р) характеризуются одним и тем же разбиением множества своих состояний на классы Qi = = Ri,R.2, ...,Rs попарно неотличимых состояний. Пусть V&k\ {(т, пгр), V = (A, Q,B,ip^ 0). Тогда функции и ф удовлетворяют следующим условиям: 1) 0(1, а) = 0(/, а) для любых i G {1, 2,a. G {1, 2,..., т}. 2) Если i G { 1, 2, ...,/}, a G { 1, 2, ..., т}, то (1, а) и а) — со- стояния из одного и того же класса Rt, /. G { 1,..., s). 130
V/ V/ Поэтому для задания автомата И достаточно указать значения 0(1,1),... ..., 0(1, т), а также для каждого a G { 1, 2,..., т} указать класс R{, содер- жащий (1,д), и некоторое отображение {1,2, ->Ri. С учетом соот- ношения |/?;| </ получаем в результате IX7! ,(ш, л, р) I <рт (s|/?z |7 )т < . Окончательно имеем | К' (т , пгр) | К\ (т , п, р) | <С7(ир)ш ("-7 > max IX7, f(zn, и,р) | <С7 (ри/7 )т(ри)т^"-7),илем- 1 < / < ма доказана. Лемма 2 [29]. При фиксированных т, п и р функция F (i ) = = C'n(pnj' )т (рп)т <'п~> от натурального аргумента j, 4 </ <н, обла- дает следующими свойствами: 1) при любых 2, р> 3 и 5 функция F(J ) монотонно убывает; 2) при m > 2, р = 2 и п> 16 функция F(j ) имеет абсолютный макси- мум в точке j = 4. Доказательство. Рассмотрим функцию Ф( / ) = F(J +1) /F(j) = (1 \ m / / / 1 \ j 1 + -r I I (рп) m . Из неравенства 1 + у < е при любом / > 0 следует, что Ф(/ ) < (и — / ) ет (/ + 1) m ~11(рп}т = (n-j)e Ie(J + I )\т-1 = ——— у——--------у . В случае р > 3, 2, 5 (с учетом / +1<и) («-/)<? /е(/ + 1)\т - 1 е / е \т - 1 имеем Ф (/ ) < --— I--------1 < — I — I < 1, т.е. функция Зн \3н/ 3 \3 / \п F(j ) монотонно убывает. Пусть теперь р = 2, 2, 16. Если j < — , 4л2 + 1 [ функция F(j ) J и-1\/ H-1 . . . , (« -/)« / е(/+1)\ -1 e2(w-/)Q+l) е \ 2 А 2 то Ф (] ) <-------- ------- <---------------<-----------т— 2п \ 2п / 4л2 4н2 _ е2(н + I)2 ( Г п — —т-т-2—< 1, так что на множестве] 4, 5, ..., тг 16н ( [ 2 монотонно убывает. Рассмотрим функцию Fi (х) = (2пхх)т (2п)т (п~х). Имеем Fi (х) = (2н)т (F2 (х)) т, где F2 (х) = хх(2п) п~х. Далее, F2(x) = 2 н = F2 (х) । (In х +1 — In (2м)), откуда х = —— единственная точка локально- го минимума функций Fi (х), F2 (х). Это означает, что Fi (х) на множестве ] +1 [- [2 ’ 2 , I « , +2,..., п [имеет локальные максимумы в точках х= у + 1 2 НВ и х = п. Так как F2 (п) = F2^ J = н" и < Хз(и), а одновременно и / I у п 2 п 2 + 11 < Fi (н). Таким образом, при 9 131
+ 1> i +2> п} имеет место соотношение F(j ) =C!nFi (j ) < (2н)т <2«(2н.н«)"’ = (2П)тп~(т_1)п- Для доказательства леммы остается убедиться в том, что отношение А последней величины к величине F(4) меньше 1. Имеем (2н)т"(2н)т _ 2"/ п4 А ~ 2(",-1)”С^(2н-47У"(2н)т(”27) ’ С„4 \2"+4/ ’ 2" Так как при н > 16 выполнено п4 < 2"+1, то А < н8 4!н8 / 16\4 п4 4-4! п4 = -------<-------------< 4! -----1 -----<-----..-----< С42п+Ъ (н-3)42"+8 \ 13 / 2"+8 27 2" + 1 доказана. Теорема 2.27 [29]. Пусть 3, 2, 1, причем т + п + Тогда | К1 (т,п,р) | ~ (пр)тп. Доказательство. Рассмотрим сначала случай Из леммы 1 следует, что S | К’(т, п, д)| < S С/(рл/')'"(рл)т /=2 /=2 По лемме 2 получаем S W)m(pH)m(” “7)< /=2 <С7(4рн)т(рн)т("-2>+С8(27рл)т (рп)т (”~3> + тнС4(44рн)т(рн)т("-4). Имеем следующие оценки трех последних слагаемых: п24т(оп}тп С2(4рпГ(рпГ(п-2} < ------- =о{(рпГп\ 2(рпу п321т(пп'}тп С3п(21рпГ(рпГ{п-3) < 2т =о((рпГп), 6(рп)2т п544т (пп}тп пс4п^4рпг(рпТ(п~4}< - -о{(рПГ,1У 24(рп)зт Таким образом, | Kl(m,n,p) | = (пр)т" — S | Х7(да,л,р)| = (пр)тп— -о{{пр')тп'), и в случае п->°° теорема доказана. Пусть теперь n = const, а т + р^-°°. Рассмотрим множество К (т, п,р) всех таких автоматов VEK(m,n,p), V= (A,Q,B,y, ty, что для любых 132
двух состояний i,f G Q,i =£j, найдется по крайней мере одна буква a G А такая, что i^(/,a) #= 0(/,а). Ясно, что К(т, п, р) СК 1 (т, п, р) .С другой стороны, | К(т,п,р) | = pm (jf - 1) (рт — 2) • ... • (р"1 — п + 1)р'пп, так как приведенное условие на автомат V G К(т,п, р) эквивалентно попар- ному различию функций Ф1 (х) = ф(1,х), ф2 (х) = ^(2,х),..., ф„(х) = = ф(п, х). Поэтому! К 1 (т,п,р) \ > рт (рт) (рт -2) (рт -п+1) X Хптп~ (Пр)тп, так что в рассматриваемой ситуации | К1 (т,п,р) \ ~ ~ (пр) т", и теорема полностью доказана. Теорема 2.28 [29]. Если ,р>2и п>\, причем п + р -> °° , го | К 2(2, п, р) | ~ е~ 1/2p’(np)2". Доказательство. Рассмотрим сначала случай п->°°, р~>°°. Соглас- но леммам 1 и 2 получаем 2 I К>(2, п, р) | < С2 (4ир)2(пр)2("~ 2) + + Cl (21пр)2(пр)2(”- 3) + С4 и(44ир)2 (пр)2(п~4\ Каждое из последних трех слагаемых при есть величина о ((пр)2”),откуда и получаем I Kl(2.n. р)| — (пр)2" - S \ К'(2.п, р)\-(пр)2п. Так как при р-*°° выполняется е~1^2р -*1, то в случае р , п=>°° теорема доказана. Случай п = const, р рассматривается точно так же, как и при доказательстве предыдущей теоремы. Пусть теперь р = const, п -*<». Тогда S | К1 (2,п,р)\ < С3 (27пр)2 (пр)2 (”~3) + пС4(44ир)2(пр)2("-4> = / = з = о((«р)2"), так что I К' (2,п,р) | + | К2 (2,п,р) | = (пр)2”(1 -о(1)). Обозначим Л'2,1 (2, п,р) подмножество множества К2 (2, п,р), состоящее из всех таких автоматов, у которых число пар неотличимых состояний не более [log2и]; К2-2 (2,п,р) = К2 (2,п,р)\К2Л (2, п,р). Построение произ- вольного автомата V G К2,2 (2, п,р) можно осуществлять следующим обра- зом: 1) выбирается число i I [log2п] < i автомата К; и 2 пар неотличимых состояний 2) выбирается подмножество {<?!, цг, ..., q2i }= Q' множества Q = {1, 2, ... , и} ; с/! <q2 < • • • < <72,- (G,2' способов); 3) выбирается первая пара (Pi,qi ) неотличимых состояний автомата V (всего 2i— 1 способов); если уже выбраны первые Л пар неотличимых сос- тояний автомата V, то находится состояние qj с наименьшим номером, не вошедшее ни в одну из этих пар, и выбирается неотличимое от него сос- тояние </, автомата V (всего 21 -2Л-1 способов); 4) для каждого состояния q G Q\Q' и символа a G А, А ={ 1, 2}, опреде- ляются значения функций >p(q,a) и ty(q,a) (всего (пр)2 ^‘~2‘^ способов); 133
5) для каждой пары (q,q') неотличимых состояний автомата V и каждо- го символа a G {1, 2 } определяются значение ф(<?,й) = 0(#',я) и значения ip(c/,a),<p(</',a). Последние значения либо образуют пару неотличимых сос- тояний автомата И, либо совпадают. Поэтому указанное доопределение функций у и 0можно осуществить не более чем (р (н+ 2г))2' способами. Окончательно получаем I«/2 J \К2'2(2,п,р)\< S С2[ (2z-l)(2i-3)• ... • 1 X l = llog2/lj + l X (р(п + 2/))2'(ир)2(" 2,)< 1»/2] S ;=|iog2n] + i п2' ~—(3np) 2i(np)2(n~2i) = 1»/2] S (нр)2п32/ p2'2'z! = о((пр)2п), так что I К\2,п, р) | + | (2,р)|~(нр)2”. Пусть Qi,..., Qc^ — всевозможные пары элементов множества Q = = {1,2,..., и}. Обозначим Р,-(/ = 1,... ,С%) свойство автомата V & G К2,1 (2,п,р), заключающееся в том, что состояния пары Qi неотличимы в этом автомате. Число автоматов V &К2'1 {2,п,р), обладающих свойст- вами Pit,. .. ,Р{. ( а также, быть может, некоторыми другими свойствами Рк,к G{ 1,2,..., Сп }), обозначим jV^ . f.. Если / > [log2«] либо мно- жества Qi(,...,Qi- не являются попарно непересекающиМися, то, очевид- но, zVq. . . = 0. В противном случае, рассуждая так же; как при оценке величины | К2'2 (2,п,р) | .находим (р(п + 2/))2; (нр)2("-2/) <Л^-) < (p(«+’21og2n))2/(нр)2 (”“2/ \ так что при п-*°° имеем ~ ~ (рп)2 . Применяя далее формулу включения и исключения (см., например, [59]), находим | X2,‘(2, н, р) | = S Ni - S Ni i +...+(-l)(log’"l X 1</,<С2 ' "2 X S Nt К q |Og n j < '[log, n ] [ log2n ] S /=1 (-1)'- ’C,,2' (2/ - 1 )(2/- 3)..... 1 • (pn)2<n-'> = Hog2«J . n(n - 1) • .. . • (n - 2/ + 1) .. .. . s (-1)'-1 -3------L----L (pn)2^ /=1 2'/! 134
[log2nj . = («p)2" S (-iy- /=1 1 (2p2)>7! ~(«p)2” S (-1)'-1 /=1 1 (2p2)7/! (oo 1- s /=o (~1/2P2)P /! = (l-e 1/2p’)(нр)2". Отсюда получаем | АГ1 (2, м, p) | ~ (нр)2п - | К 21 (2, n, p) | ~ e~ l/2p\np')2n, и теорема доказана. Автоматы Vi и V2 из К(т,п,р) назовем изоморфными, если каждый из них получается из другого путем некоторой перенумерации состояний. Как нетрудно проверить, каждый класс попарно изоморфных автоматов из К1 (т, п,р) содержит ровно н! элементов. Поэтому, обозначив N(m, п,р) число попарно неизоморфных автоматов V = (A, Q, В, ip, 0) приве- денного вида, таких, что А ={1,... ,т} ,В ={1,. . . ,р}, | Q\ = п, полу- чим следующее утверждение. Теорема 2.29 [29]. Пусть р> 2, п> 1, причем т + п + р^-^. Тогда в случае т> 3 имеет место N(m, п,р)~(пр)тп/п\, а в случае m = 2-N(m, п,р) ~ e-l/2p’ (np)2n/nl. Перейдем к оценке числа 5 (т, п,р) всех о.-д. функций веса п, реализуе- мых инициальными автоматами вида (A,Q, В, у, ф, q), где Л = {1,... ... ,т}, В = {1,... ,р}. Для оценки этого числа рассмотрим класс 5 (т, п,р) автоматов из К(т,п,р}, у которых каждое состояние достижимо из состояния 1. Имеет место следующая оценка величины 1 5 (т, п,р)\ . Лемма 3. Если т log2 п = о (т), то | 5 (т, п,р)\ ~ (пр)тп. Доказательство. Каждый автомат V & К(т,п, p)\S (т, n,p),V = = (A, Q, В, р, 0), может быть получен следующим образом: 1) выбирается число i состояний автомата V, достижимых из состояния 1,1 — 1; 2) выбирается подмножество (У множества Q ={ 1, | (У I =/, 1 € Q' ; элементы Q' суть состояния автомата V, достижимые из состоя- ния 1 (не более способов); 3) функция p(q,a) определяется на состояниях q&Q! так, чтобы ее значения принадлежали множеству 2' (не более чем imi способов); 4) на остальных парах функция р (q, а) определяется произвольным об- разом (nm("-') способов); 5) функция ip(q, а) определяется произвольным образом (всего ртп способов). 135
Таким образом, получаем оценку: \К(т, п, p)\S(m, и, р)| < п-1 . , п-1 . , / j \mi '‘~_.iminm(n^i}pmn =(пр)тп S — .Обозначим ' n / Z = 1 т i a=c„:j- \ п В'. А‘ 1 / п \т — . (-------I , i = 1,. .., п - 2. .А/+1 п - z / 1 \mi \ z + 1 / I 1 +— ni 1 / п \ т п - i ет \ i + 1 / 3m-i ! / 3\ m ——— > —I —) . Таким образом, существует п При 1 < z < —— 1 имеем Bt 1 / п \т-1 i X--- ----- >---------- \ i + 1 / z + 1 т0 такое, что при zzz > zzz0 выполняется В, > 1 (z = 1, 2, ... , [zz/3] — 1). [n/3] . _ / ; \ mi J И Отсюда 2 -------------X (и - I) (z + 1) дим Bj < п с„_. 1 п — | = о(1).При ------1,н>5нахо- п 2 n -1 и получаем S i=[n/21-l \ п 2т 1 ------2Йй~= °U)> так как = ° ("О • ® частности, В{ , (1,5)-2 И - 1 \ ------ X C — cn-l I \ П » / 1 XI — i=o \ 2 П 2ne m = o(l). Наконец, при — (x \mx — I . Эта функция убывает при х < п ) 1 1 Гии < пе и возрастает при х > пе , так что в концах отрезка — — 1,— — 1 она имеет локальные максимумы. Обозначив тах| («/2J / i =A, получим S — i= [n/3] + 1 \ П mi < 2п~1А. Но 1 З"~3 ’ < ~ ^"й-2 ’ так что 2*’ 1А =о(1), и окончательно получаем \К(т,п, p)\S(m, п,р)\= о((пр)тп). Отсюда и вытекает оценка |5(zn, п, р)|~ ~ (пр)тп. Лемма доказана. 136 п-2 т 1 3 3 т i П П 2 — 1, н > 8, / Л т 1 \ п - 1
Т е о р е м а 2.30. Если п т log2n = о(т), го 3 (т, п, р) (пр)тп in - 1)! ’ Доказательство. Как нетрудно заметить, множество всех о.-д.функций веса п, реализуемых инициальными автоматами вида (A, Q, В, р, ф, q), где А = {1, ..., т}, 5 = {1, .. . ,р), совпадает со мно- жеством всех о.-д.функций, реализуемых инициальными автоматами Vx = = (А, Q, В, р, ф, 1), такими, что V = (A, Q, В, р, ф)&К\т, п, р) П5 (т, п, р\ Согласно теореме 2.27 и лемме 3 имеем |№(да, п, р) О S(m, п, р)| ~ ~(пр)тп. Множество всех инициальных автоматов V\ указанного вида рас- падается на классы эквивалентности, состоящие каждый из (п - 1)! авто- матов, получаемых друг из друга перенумерацией состояний {2, 3,... ,п}. Как легко проверить, любые два автомата из одного и того же класса оп- ределяют одну и ту же о.-д.функцию, а из разных классов — различные (пр)тп о.-д.функции. Отсюда и получается оценка 8 (да, п, р) ~ доказана. . Теорема (и-1)! § 12. КОНЕЧНЫЕ АВТОМАТЫ КАК ЧИСЛОВЫЕ АКЦЕПТОРЫ И ПРЕОБРАЗОВАТЕЛИ В этом параграфе мы рассмотрим два подхода к реализации конечными автоматами числовых функций. Первый из них заключается в том, что на вход автомата К, начиная со старших разрядов, последовательно подается Л-ичная запись числа п; на выходе считывается аналогичным образом за- пись числа/(«). Как легко заметить, при таком подходе старшие разряды числа f(n) однозначно определяются,старшими разрядами числа п, что су- щественно ограничивает класс вычислимых указанным образом функций. Этот класс остается весьма узким даже при условии, что значение f (ri) считывается с некоторой задержкой. Особенно наглядно слабость данного подхода проявляется, если автомат используется для распознавания мно- жеств целых неотрицательных чисел, подаваемых на его вход описанным выше образом. Введем ряд вспомогательных понятий, необходимых для описания множеств целых неотрицательных чисел, распознаваемых авто- матами. Множество целых неотрицательных чисел называется заключительно пе- риодическим, если оно представимо в виде Мо U { ni +j | j = .js, i = = О, 1, 2,...}, где Mo — конечное множество, n, /1,... ,js - натуральные, jj /fc(modn) при / =# k. Натуральные числа да и п называются мульти- пликативно независимыми, если для любых целых неотрицательных р, q, не равных одновременно 0, имеет место да р tn4. Множество М целых неотрицательных чисел называется п-распознавае- мым конечным автоматом Vqo = ({0, 1, ..., п - 1}. Q, { 0, 1}, р, ф, q0), если 0(^о, о) ~ 1 тогда и только тогда, когда а = «(1)а(2) .. .a(s) есть и-ичная. запись числа из М. Множество называется да, п-распознаваемым, если оно одновременно да-распознаваемо некоторым автоматом Vq и «-распознаваемо некоторым автоматом ¥’ . Имеет место • Ч о 137
Теорема 2.31 [25]. Пусть М - множество целых неотрицательных чисел, а тп и п - два натуральных мультипликативно независимых числа. Множество М является т, п-распознаваемым тогда и только тогда, когда оно заключительно периодическое. Для доказательства теоремы установим ряд лемм. Лемма 1 [12]. Если множество М является п-распознаваемым, а и b - целые неотрицательные числа, то множество М1 = {х |ах + b G М} также является п-распознаваемым. Доказательство. Пусть VQ = ({0, !,...,« - 1}, б, {0,1), у, ф, qo)~ автомат, и-распознающий множество М. Автомат 1^'' = ({0,11}, Q',{ 0, 1}, <р’, ф',<?о) , «-распознающий ЛТможет быть построен, например, следующим образом. Пусть b (1) . . .Ь(г) - н-ичная запись числа Ь, Ъ (1) = 1 при Ъ Ф 0 и г =1 при 6=0. Множество состояний Q' есть семейство мно- жеств троек (г, /, s) таких, что г €{0,1,2,...,а + b - 1}, /б{0,1,..., г - 1}, s е Q, Я о есть ф, <р (</>, х) есть множество всех троек (z’,/, s), удовлетво- ряющих условиям; а) /€{0, 1,. . . ,г- 1}, zG{0,l,2,...,<z + 6-1}; б) s = p(qo, х) , где х есть n-ичная запись числа ах + i + bj, bj — число, имеющее n-ичную запись 6(1). . .b(f), b0 = 0. Если q'&Q', причем д'^=ф, то <p'(q', х) есть множество всех таких троек (i',для которых существует тройка (i,j,s)&q, удовлетворя- ющая условиям; а) j=£r - 1, j' =j + 1 при / =# 0 и /' G {0,1} при / = 0; . Г ax + i' + bU’) б) i= —-------------- н (где полагается 6(0) = 0); в) s' = <p(s, х'), х' - последняя цифра в n-ичной записи числа ах + + z' + 6(/'). Функция ф определяется следующим образом.: ф '(ф, х) = 1 тогда и только тогда, когда ф<д0,х) = 1, где х—н-ичная запись числа zzx+ 6. Зна- чение ф'(о',х) при q' =#ф равно 1 тогда и только тогда, когда существует тройка ах + 6 (г) п , г — 1, s I такая, что ф (s, х') = 1, где х' — послед- няя цифра в п-ичной записи числа ах +6(г). Проверку того, что действительно «-распознает множество М', не- трудно осуществить, если заметить, что"'р'(ф, х( 1). .. х(к)) состоит из всех таких троек (i,j, s), что s = ip(q0,y), где J = J’(1). . •J'(^/) - старшие раз- ряды n-ичной записи некоторого числа N' = aN + 6, вычисляемые в предпо- ложении, что х(1). . . х(к) — старшие разряды числа N, i -- значение перено- са из младших разрядов при вычислении aN+ 6, причем разряды 1,2,..., / числа 6 попадают в указанные старшие разряды. Не оговаривая специально, далее при распознавании числовых множеств рассматриваем только инициальные автоматы приведенного вида, у кото- рых каждое состояние достижимо из начального. Лемма 2. Пусть Vqo = ({0, 1, . . ., п - 1}, Q,{ 0, 1}, р, ф, q0) - авто- мат, распознающий т,п-распознаваемое множество М, qi G Q. Тогда мно- 138
жество Mq ={р | <p(Qo, (p)n ) = Qi}, где (p)„ - п-ичная запись числаp, яв- ляется m, п-распознаваемьщ. Доказательство. Заменяя функцию выходов автомата на функцию ф '(q, х), равную 1 тогда и только тогда, когда (q, х) = q j, получаем автомат, «-распознающий множество Mq . Установим теперь «г-распознаваемость множества . Обозначим через q произвольное со- стояние автомата Vq , отличное от qi. Пусть а — слово длины I, такое, что $(q, а) =# 0(q4, а). Если 0(<?1,а)=1, то обозначим Г(<7) = {р|р«' + [а]„еЛ/}, где [а]„ — число, имеющее я-ичную запись а. В противном случае обозначим T(q)={p \рп‘ + [а„] $М}. В каждом из случаев, согласно лемме 1, T(q) есть яг-распознаваемое мно- жество. Если ifl(q0, P)' = qi, то ф(у}о,Ра) = ф(д2, а), так что &Млибо [/За]„ ф М в соответствии с тем, равно ли , а) единице или нет. Поэто- му, с учетом = [$]„• п1 + [а] „,в обоих случаях [/3]„ G ?’(?). Если же ^(?о, fi) ~ Q, то аналогичным образом находим [0]„ T(q). Отсюда полу- чаем Mq - A T(q), так что Mq^ /«-распознаваемо как пересечение 1 <? * <?1 «г-распознаваемых множеств. Лемма доказана. Лемма 3.Пусть КЧо = ({0, 1,...,« - 1}, Q, {0,1}, </>, ф, q0 ) -авто- мат, распознающий бесконечное т, п-распознаваемое множество М, причем числа тип мультипликативно независимы. Тогда для любых непустого слова а в алфавите {0, 1,...,«- 1} и целых неотрицательных с, d, с< d, существует слово fi в алфавите {0, 1, ..., п - 1}, удовлетворяющее соот- ношениям ф($о ,Sfi) = 1, l(fi) = с (mod d~), где l(fi) - длина слова fi. Доказательство. Пусть Vq>o = ({0,1,..., яг - 1}, б',{ 0,1}, </, ф', q'o) есть автомат, яг-распознающий множество М. Поскольку множество М бесконечно, существуют слова t, и, v в алфавите (0, 1, ... , m — 1} такие, что ф '(q0 tu‘v) = 1 для каждого г = 1, 2,..., причем t начинается с ненуле- вого символа, а и, v непусты. Обозначим г длину слова и, s — длину слова к. Пусть также а = mr, b = nd, kt = ([а]„ + —\ Ik, k2 =Ца]„ + — ) fk, k = / г i ' 4// V = ml ( ГГ] + «cVJz" Как нетрудно заметить, числа а и b мультипликативно независимы, 0 < ki < k2. Мультипликативная независимость чисел а и b влечет линей- ную независимость в рациональных коэффициентах их логарифмов. Поэто- му для любого е > 0 существуют сколь угодно большие натуральные р и q, такие, что 0 < р log а - q log b < е. Это позволяет подобрать такие нату- ральные р и q, что log ki < р log а - q log b < log k2, или k{ < а p/bq < k2. Последнее неравенство перепишем в виде 1 / [w],„ \mP^s ~ 1 [5]„ +-<( +т• 4 \ яг-1/ я Q 2 139
Так как р uq можно выбирать сколь угодно большими, то выберем q так, чтобы выполнялось неравенство 1 1 ( t 1 \ 1 " 4 ndq+c \ ~ m' - 1 / У Складывая эти неравенства, получаем РГ — 1 [£]Ур+с< [r],„mp' +i+ [«к ~—-ms+ [И,„ <([£]„ + V>ndq+C. т — 1 Далее, трг - 1 [t]mmpr s+ (г/],„----—~ ms + [v]m = [t]mmpr s + m — 1 + [w]m(wr(₽'1) + . .. + mr + 1 )>ns + [н),„ = [П/pi>]m. Следовательно, существует целое число j, 0 < / < ndq+c, такое, что [a] +с + j = [tupv]m. Этому j в алфавите {0, 1,. .., п -1} соответству- ет слово 3, имеющее длину dq + с ияакое.что [tupv]m = [а]Ппdq +с + + Шп = Й1п- Так как ^'(q'o, tupv) = 1, то [tupv]m G М и ^(<7о, оЗ) = 1- При этом !(3 ) = dq + с = с (mod d). Лемма доказана. Состояние s автомата Vqo = ({0,1,..., п — 1}, Q, {0, 1}, q>, ф, q0) будем называть периодическим, если существуют непустое слово а, начинающееся с отличного от 0 символа, и непустое слово /3, такие, что s = q>(qo, а), S = <p(s, 3) - Не оговаривая специально, предполагаем далее числа т, п мультиплика- тивно независимыми. Лемма 4. Пусть = ({0,1,...,п - 1}, Q, {0,1}, ф, q0) - авто- мат, распознающий т, п-распознаваемое множество М. Тогда существует такая константа \ = Х( ), что для любых L> X, периодического состоя- ния s автомата Vg и слова а в алфавите{ 0, 1,. . ., п - 1} найдется слово & длины L в алфавите {0, 1, .. . , п - 1}, удовлетворяющее соотношению ,сф ) = s. Доказательство. Для каждого периодического состояния s ав- томата УЧв рассмотрим множество Ms = {р | у?(<7о, (р)«) = $}• Это множест- во, согласно лемме 2, является т,«-распознаваемым. Кроме того, оно бес- конечно. Выберем произвольное слово х, начинающееся с ненулевого сим- вола и такое, что х) = $; обозначим ds наибольший общий делитель длин всех непустых слов у, таких, что ^(s, у) = s. Если ds > 1, то по лем- ме 3 существует слово z, для которого у>(</0, xz ) = s и длина / слова z удовлетворяет соотношению / == 1 (mod ds). Но ^(s, z) = s, т.е. / делится на ds, и приходим к противоречию. Поэтому <4 = 1. Известно, что множество линейных комбинаций с целыми неотрицательными коэффициентами нату- ральных чисел N ], наибольший общий делитель которых равен 1, 140
содержит для некоторого X все натуральные числа, большие или равные X. Поэтому, обозначив Xs соответствующее значение X для длин Ni, . .. , Nг непустых слов у, таких, что <p(s, у) = s, получим, что при всех £ > Xf су- ществует слово в длины L, удовлетворяющее соотношению <p(s, D) = s. В качестве Х(И ) выберем теперь значение \Q\ + max Х^., где Q' — ° s е Q1 множество всех периодических состояний автомата Vqo. Рассмотрим произвольные состояние s из Q и слово а в алфавите {О, 1, ..., п — 1}. По леммам 2 и 3 существует слово у, для которого ^(<7о, ay) = s. При этом слово у можно выбрать так, чтобы длина его не превосходила IQI ; обозначим эту длину /]. Пусть L > Х(1^ ). Тогда L — Zj > Xs, и существует слово 8 такое, что <p(s, 8) = s, причем длина 12 слова 8 равна L — Ij. Теперь имеем (qo, ау8) = $, длина слова у8 равна L, так что в качестве искомого слова /3 берем слово уЬ. Лемма доказана. Для каждого q = 1,2, ... обозначим через e(q) такое наибольшее целое число, что mq = ne<q)-n', где п' - целое. Очевидно, e(q) < [qlognm], „[Qiogn"»! n^q,°inm l + I >mq. Будем обозначать К(i,N) (N-нату- ральное, i G {0,1,. .. ,N - 1}) класс всех целых неотрицательных чисел /, удовлетворяющих соотношению j = i (mod#). Число различных классов #(/, «^log"m'), содержащих числа вида (jm + \)mq (/-натуральное), обо- значаем R(q). Лемма 5. lim R(q) = °°. q —* о© Доказательство. Пусть mq = ne(q\d(q), mq = ne(q ^d(q'), q<q'. Если d(q) = d(q), то получаем mq ~q -ne(q и приходим к противо- речию с мультипликативной независимостью чисел т, п. Поэтому d (q) =# ^d(q'), т.е. d(l),d(2),... - последовательность попарно различных нату- ральных чисел и lim d(q) = °°. Далее, п >п w,d(q), откуда q —* о© • п14 к>8и,и 1 -е(ч) > —и lim ([</ log„m] - е(</)) = Пустьц ,j2 - нату- П q -»<» ральные, /) < j2, причем для некоторого z0 G {0, 1,.. . , л 4 ,og"m L1} вы- полняется (j\m + l)mq GA'(zo,«‘<? log""’'), (j2m + l)mq GK(i0, n^q log"'n^ Тогда (j\m + 1 }mq = (j2m + 1 )z?z<?(mod n ^q log/,m ।) и (j2 — /j }mq +1 = = (/2 -/1 )d(q)mne{q^ = 0 (mod n^q log"'” '). Число d(q) не делится на n, поэтому для некоторого простого р число Z- -I [<? log П fn I гч , • X (/г -/1 делится на р . Отсюда получаем (/2-/1)^ lognm I e(q'>im^ так чтовсе числа (fm + l)mql /,,/, + 1,. ..+ 1 — Р т )q log„m 1 — е(у) принадлежат различным классам - 1 141
K(i, n k8""7'). С учетом найденного выше соотношения lim ([<7 log„m] — q —> «> - e(q)) = 00 получаем теперь lim R (q) = Лемма доказана. • Лемма 6. Пусть VSo = ({0, 1, ..., п — 1}, Q, {0,1}, ф, s0) —авто- мат, распознающий т, п-распознаваемое множество. Тогда существует на- туральное g, g = g(VSo), такое, что для любого периодического состояния s автомата И5о и любых непустых слов а и 3 одинаковой длины, удовлетво- ряющих соотношению [а]„ = [3]п (modg), выполняется ip(s, a) =ip(s,/3). Доказательство. Пусть Q ={ s0, Sy,. .., _ х} . Обозначим М, = = {р I ip(s0, (р)п) = Sf} и рассмотрим автомат V‘, m -распознающий мно- жество Mj, i = 0, 1, . .., v — 1. Обозначим v( число состояний автомата V* . По предыдущей лемме существует натуральное q, такое, что R(q)> х + 1 1,-1 > п v П Vj, причем X - Х(1^ ) определено согласно лемме 4. т-ич- 1=0 0 ная запись числа (km + \)mq (k — натуральное) имеет вид и 10 ... 0, где <? и — слово в алфавиту {0,1,..., m — 1}, начинающееся с ненулевого симво- ла. Число разрядов в л-ичной записи числа (km + V)mq не менее [<7 log„m] + + 1; эта запись имеет вид ху, где у —. слово длины [<7 log„ m], х — слово в алфавите {0, 1, ..., п — 1}, начинающееся с ненулевого символа. Обозна- чаем далее введенные указанным образом слова и, х, у через и (к), х(к), у(к) соответственно. Пусть Nmiq — множество всех чисел вида (кт + 1)лг<?, Л =1,2,... Рассмотрим разбиение Е множества Nm>q на классы E(s(‘°\ s^l\. . . ,s^), где s^EQ, — состояние автомата V'*1 , i = 1,.. . ,v. Каждый такой класс состоит из всех чисел (кт + \)mq, удов- летворяющих соотношениям ^(s0, х(к)) = s<°>, щ(к.1,и(к)) = s^' + ,\ где (/?,— функция переходов автомата V* ., i - 0, 1,.. ., и — 1. Число классов раз- V — 1 биения Е равно v П р. (некоторые классы могут быть пустыми). Так как i = 0 »- 1 числа множества Nm q принадлежат не менее чем их+1 и П различным 1=0 классам K(i, п *og"m Д то существует класс Ео разбиения Е, содержащий не менее чем п X+1 чисел из различных классов K(i, п log"m '). Далее, очевидно, [у(/с)]„ = (кт + \)mq (mod n^q log"m ’). Поэтому числа (кт + \)mq, принадлежащие классу Ео, определяют не менее лх+1 различ- ных значений [у(Л)]„, так что найдутсярj = (к^т + l)mq, р2 = (k2m + V)mq, р, ,р2 G-E’o, ДЛЯ которых 0 < )]„-[j(A:2)]n < nI<?log"'”l х 1 По- лагаем теперь g= [j'(/fi)]n - [у(^2 )]„. Пусть а , /3 - непустые слова длины I в алфавите {0,1,..., п — 1), [а ]„ = [3 „] (modg) и s — периодическое состояние автомата Vs . Рассмотрим сначала случай [a]„=gr+ [3]„, I < 142
< [<? log„w] - X. Тогда ХС [<7 log„m] - I, и по лемме 4 существует сло- во w длины [<7 1og„ra] - для которого ip(s0, х(к0w)=s. Но ^(s0,x(kl))= = ip(s0, х(к2)), так что *p(s0, x(k2)w) = s. Имеем, далее, Р2 ~Pi + [x^jwajn = = [х(Л2)]„н|’,О8”т1+[}’(Л2)]„-[-г(Л1)]„-н1</1о8'’т1- “[У(Л1)]И + [*(*1)]П nl<?log«"!1 + [w]„ и' + [а]„ = = [^(*2)]и • n[qlotnm 1 -g + [w]„ -П1 + [a]„ = = [x(k2)]„ •«!q log""’’ + [w]„ «'+ [?]„ = [x(k2)wfi ]„. При этом, очевидно, ([x(/cj) wo] n)m = u(ki) dt, (p2~Pi + [x(Xi) X Xw a]n)m =u(k2)dt ,t — некоторое слово длины q, причем d=\ при Pi < [x(&i) wa]„ и d = 0 в противном случае. Так как ^(к,,ы(&1) ) = = ^i(K. i,u(k2)), то ф; (к i,u(ki) dt) = ф; (к iti/(k2)dt) при г =0,1,... . .. ,v — 1. Согласно определению автоматов V'K. это означает ^(s0, x(ki) w a) = ц>(з0,х(к2) w 0). Ho (s0,x(ki) w ) = s; (s0, x(k2) w) = = s, и получаем (s,a ) = ^(s,/3 ). Если вместо соотношения [a]„=g + + [Д ] „ выполнялось [a] п = g • j + [(3 ] „, j — натуральное, j > 1, то после- довательно рассматриваем пары а^Р,-: [a,] „ =g • i + [/3] „, [/3,] „ = g -(i- — 1) + [0] * = 1, • • и снова получаем ^(s,a) = ^(s, /3). Таким об- разом, при дополнительном предположении I < [<? log „/и] —X утвержде- ние леммы справедливо. Пусть утверждение леммы выполненяется при некотором Z > [<? log„ tn] — X и а, /3 — слова в алфавите {0, I,. .., п — 1 }, имеющие длину / + 1, [а] „ = [/3]„(modg), s — периодическое состояние автомата Vs . Тогда a = dx и j Wj, /3 = d2 v2 w2, d2 ,d2 G {0,1,. .., n — 1} , длины слов Pi,p2 равны [7 log,,/и] —X—1, длины слов wt,w2 равны I — [<? log „ tn] + X + 1. Так как g < n^q log nml-X_ 1, то существует слово v’ длины [<?log„wi] — X—1, удовлетворяющее соотношению = = [^2 n(mod#). Слово di i>i имеет длину [<? log„т] -Х,поэтому из разобранного выше случая получаем ^(s,dit?i) = <p(s,d2v'i). Далее, £(s,a) =4j(>p(s,diVi),w1y='P(4’(s,d2w'i), ™i) = (s,d2), v, w,), (s, /3) = ^(^(s,d2), v2 w2). Длины слов i>i Wi, v2 w2 равны l, причем [n'lWi J„= = n (modg). По лемме 4 нетрудно получить, что состояние ^(s, d2) является периодическим. Поэтому, согласно сделанному выше предположе- нию, ip(tp (s,d2), t/'i wj = (^(s,d2), i>2 w2), откуда ^(s, a) = <p(s, fi), и лемма доказана. Перейдем к доказательству теоремы 2.31. Пусть сначала М — заключи- тельно периодическое множество целых неотрицательных чисел. Тогда су- ществуют такие натуральные к, г, что М =М0 UAfj, где Мо — множество всех чисел из М, не превосходящих к, йМх — множество всех чисел х, боль- ших к и сравнимых по модулю г с одним из чисел s i,..., sp. Считаем, Ч1о s j,..., sp — попарно различные элементы множества {0, 1,..., г —1). 143
Автомат H/Q = ({0, 1......п— 1} ,Q, {0, 1 } ,g>, ф,q0), «-распознающий множество М, устроен следующим образом. Множество состояний Q = = {<7о,<71, • • • • • -, а, - г } = qni+j пРии/ +7 и ^(<7,-,/) = = a-m+i (тол,- ) в противном случае, ^(а,-,/) =ani+j(moAr у, ф(<7,, /) = 1, если ni + / &М0 либо если ni + / >'к и ni + j (mod г) G { s j,..., sp}, в противном случае Ф (<?,-, j ) = 0; ф(а,-,/) = 1, если ni + j (mod г ) G {s i,... ..., sp}, ф(а,-,/ ) = 0 в противном случае. Таким образом, заключительно периодическое множество является п-распознаваемым при любом п. Пусть теперь М есть т, n-распознаваемое множество и Vqo = ({0, 1,. . . ..., п - 1 } , Q,{0, 1}, if, ф, <7о) - автомат, «-распознающий М. Рассмотрим величину g=g(Vq определяемую по лемме 6, и покажем, что М = = Af'u{gz + / | / = /j,... ,js, i = 0, 1, 2,... }при некоторых конечном мно- жестве М' и натуральных Л,. • • ,/s. Для этого рассмотрим произвольное / G{0, 1,... ,g - 1}, такое, что множество Mj =МСУ {g,- +/| i = 0, 1, 2,...} бесконечно. Очевидно, достаточно показать, что при некотором /',/ ’= = gi’ + /, выполняется {g, + /' I i = 0, 1, 2,.. ,}QMj. Так как множестваМ и {gi + /1 i = 0,1,2,...} т, «-распознаваемы, то множество Mj также «г, «- распознаваемо. Рассмотрим автомат V'q’ ,«-распознающий множество Mj, Переходя при необходимости от к автомату, состояниями кото- рого служат пары вида (д’ ,i}, где q — состояние автомата V'q>, i G{0, 1), можно добиться, чтобы значение функции выходов ф' (д', х) автомата V’q' однозначно определялось значением gi'(q',x), где — функция пе- реходов этого автомата. Поэтому далее считаем, что Ф'(д , х) = £ (^' (д',х)). Обозначим Q' множество всех таких состояний q' автомата Vq'o, что £ (д') = = 1. Тогда соотношение p&Mj эквивалентно соотношению у' (q'o, (р)я) 6 G Q'. Выберем j' = j (modg), /'^п1^1*^. Пусть p&{gi +j ' I i = 0, 1,2,...). Тогда (p) n. = xy, где x — слово длины I QI, первый символ кото- рого отличен от 0; у — слово длины I, 1>Х. Так как Mj — бесконечное, то существует периодическое состояние s, принадлежащее Q'. По лемме 4 существует слово z длины I, для которого (q'0,xz) = s. Отсюда [xz] „ = = j (modg), а так как [x_y] „ = j (modg), to [z] „ = [y] „(modg). Так как x — слово длины I QI , то <p' (<7o,x) - периодическое состояние автомата V'q’o- Используя лемму 6, получаем (д'0,ху) = р (д>' (q'o, х),у) = = ф'(ф'(<7о> x),z) = ^'(<7o, xz)GQ'. Таким образом, р = [x,v] n^Mj, и теорема доказана. Заметим, что произвольное конечное множество целых неотрицательных чисел распознаваемо автоматом, однако из доказанной теоремы вытекает, что в случае ’’непериодической” структуры этого множества число состоя- ний распознающего автомата растет с ростом числа элементов множества 144
aij(x) = даже при условии, что распознавание требуется осуществлять только на ко- нечных отрезках натурального ряда. Другой подход к реализации автоматами числовых функций заключается в том, что на вход автомата подается ’’случайная” последовательность из ну- лей и единиц, в которой единицы появляются с заданной частотой р. Если различные разряды этой последовательности статистически независимы, то на выходе автомата возникает ’’случайная” последовательность из нулей и единиц, в которой единицы появляются с частотой f\p), где f — некоторая функция. Формальное определение этой функции может быть дано следую- щим образом. С автоматом К=({0,1} ,{Чл, — , <?л ), {0, l}r'P,V') связываем следующие функции а/,- (х), i, j = 1, 2,.... п: О при 0)=#<7у,<р(<?ь 1) *qjt х при ^(<7/, 0) * qj, <7>(<7/, 1) = qj, 1-х при ^(<7;, 0) -qj, <f(qh !)=#<?;, 1 при <7>(<71-,О) = <7>(<71-,1) = <7/. Нетрудно проверить, что цепь Маркова с состояниями qt и вероятностями переходов (х) в случае сильно связного автомата V при всяком х € (0, 1) неприводима [55] и имеет стационарное распределение вероятно- стей pf(x), являющееся единственным решением системы pz(x)= S рДх^Дх), /= 1 1 = 1, п 1 ’ S р;(х)=1. i = I Решая эту систему, получаем где Я,(х) и 5(х) — многочлены с целыми коэффициентами, i = 1, ..., п. Обозначим bt(x) = х- 0(<7Z-, 1) + (1 - х) 0(<7,, 0), i = 1,..., п. Теперь ука- п занную выше функцию f можно определить как /(х ) = S pj(x)bi(x). i = I Функцию f обозначаем далее fy (х) и называем стохастической функцией автомата V. Заметим, что уже очень простые автоматы определяют стохас- тические функции, достаточно сложные для вычисления их другими средст- вами. Так, автомат с двумя состояниями, диаграмма переходов которого приведена на рис. 2.37, вычисляет стохастическую функцию Имеет место следующее описание стохастических функций сильно связных автоматов. 10.В.Б. Кудрявцев 145
Теорема 2.32 [52]. Функция f(x) является стохастической функ- цией сильно связного автомата тогда и только тогда, когда она удовлетво- ряет условиям-. О /(*) определена на интервале (0, 1) и принимает значения из отрез- ка [0,1]-, Q(x) 2) на интервале (0, 1) функция f(x) представима в виде ------, где S(x) Q{x) и S(x) - многочлены с целыми коэффициентами; 5(х) > 0 при лю- бом х из (О, 1); Рис. 2.37 3) если f(x) принимает значение 0 либо 1 на интервале (О, 1), то f(x) есть тождественная константа. Доказательство. Условия 1) и 2) выполняются для всякой сто- хастической функции по определению. Пусть V — сильно связный автомат и fv (хо) = 0 при х0 G (0, 1). Если fv (х) 0, то существует j такое, что bj (х0) >0 (обозначения те же, что при определении функции /у(х)). Вы- берем i такое, что р/(х0) >0. Тогда вследствие сильной связности автома- та V найдется слово а, переводящее V из состояния qt в состояние qj. Имеем fv(x0) > pj(x0)bj (х0) > Pi(x0)xl (l-x)kbj (х0) > 0, где к - число нулей в слове а, а / — число единиц в этом слове. Полученное проти- воречие и устанавливает тождественное равенство функции fv (х) нулю. Аналогично рассматривается случай fv (х0) = 1. Покажем - теперь, что любая функция, удовлетворяющая условиям 1) — 3), является стохастической функцией некоторого сильно связного автомата. Пусть X = (Хо, X1,..., X/ ) — набор действительных чисел. Обозначим i BiTSx^= 2 \Cix'(l-х)1~‘. 1=0 Как нетрудно проверить, из тождественного совпадения функций (х) и В[ ~(х) вытекает совпадение наборов "X и д, причем всякий многочлен степени I с рациональными коэффициентами представим в виде В г (х) для некоторого рационального набора X. В частности, В1 (х) представим в виде В1 + 1 ~(х) при некотором д (это представление нетрудно получить, умножая В1 ~(х) на х + (1 — х)). Докажем два вспомогатель- ных утверждения. 146
4——}-*ki \i+kj к> Лемма 7. Пусть Р (х) = В 1+к \к(х)> к = О, 1,... Тогда lim max к / = 0, 1.........1 + к ^к =( ^кО Ак! , •••, ^к, 1 + к)- = О, Доказательство. В силу линейности достаточно доказать лемму в случае Р (х) = х1. Тогда имеем О при / < I, ^к/ ~ С —Ji— с' Ч+к при / > /. Установим следующее неравенство: I I + к ai, i, к ~ it,/= 1,2,..., / = 0, 1, ...,1 + к. В случае j < I находим aj, I, к / / у \ I + к). I 1+к I 1 + к / I + г \ 1 При / > I, / = I + г, обозначив br i к = а/ i к - I —--------1 — ’ ’ ' \ I + к (г+1). ... (r+Z) --------------------к,1 = 1, 2, ..., г = 0, 1, .... к, проведемдоказатель- (Л + 1).... •(&+/) ство индукцией по I. При I - 1 имеем br t к = 0 < -г--?-. Пусть уже дока- I т К зано br> it.k< ~j~i~k ’ к ~ 1’2.7 = 0,1, к. Тогда, обозначив р= 1+г, к = 1 + к, будем иметь ( 1+1 +г\'+1 (г+1). ... .(г + /+1) I +, к — I I — ’ ,К Xl+1+kJ (к + 1)- ... -(к + 1+1) / I + р\г/ I + р\ (р + 1) • .. . • (р +1) р \/ + к/\/ + к/ (к+1). ... -(к+l) К - h I, К К Р 1 + /(к -р) К l + к (1 + к)к _J__< / +1___ I + к I + к + 1 Лемма доказана. 10* 147
Лемма 8. Если Р (х) — многочлен степени I с рациональными коэф- фициентами, прцнимающий на интервале (О, 1) только положительные зна- чения, то, начиная с некоторого к, все наборы Хк из последовательности Р (х) — (х) = ... = B/ + fc ~^(х) = -имеют только неотрицательные компоненты. Доказательство. Если Р (0) > 0 и Р (1) > 0, то утверждение сле- дует из леммы 7. Если Р (0) = 0, либо Р (1) =0, то Р (х) — = хи (1 — х) WQ (х), где С(х) >0 иа отрезке [0, 1], v > 0 либо w > 0. Пусть Q = В , г» (х), тогда Р (х) = В, , . г (х), где I +k = s+v + w, Sf A ' I । Kf I i-v п₽и v s + v’ \ki = | l0 при i<v или i>s + v. Начиная с некоторого k, все X'k- неотрицательны, т.е. все Xk/ также неот- рицательны. Лемма доказана. Возвращаясь к доказательству теоремы 2.32, установим теперь, что каж- дая функция /(х), удовлетворяющая условиям 1) - 3), может быть пред- ставлена в виде S д;х'(1 -x)s-f ЛХ) ~, S 6;х'(1 -x)s-' i= о где д,, Ь( — целые, b{ > 1, 0 <д;- i = 0, 1,..., s. Согласно условию 2) С(х) f(x) = ——. Так как /(х) ограничена на (0,1), то, считая ее сокращенной о(х) на все множители вида х или 1 — х, можно без ограничения общности пола- гать 5(х) >1 на (0, 1). Если /(х) - 0 или /(х) ~ 1, то утверждение выпол- няется; пусть поэтому 0 < б(х) < S (х) для любого х из (0,1). Обозначим S (х) - Q (х) = Т (х). Согласно лемме 8 для некоторого s имеем S (х)—1 = = Bs,\' (х)> <?(*) = П*) = 5S,^(X)> гДе М/.П,- > 0, X’,., Д/, Hi — рациональные, i = 0, 1, ..., s. Положим X = (Х'о + 1, ..., Х’^ + 1); тогда 5(х) = Вs ~(х). Так как Xf = р. + ц(, то д;- <Xf, i. - 0, 1, s. Поэтому J JoM/C,/x/(l-xr-/ fix') = —------------------, S •X/C/x,‘(l -x)1-' i = 0 где Pi, X i — рациональные, X z- > 1,0 < X it i. = 0,1,..., s. 148
Умножение числителя и знаменателя последнего выражения на общий знаменатель всех X/ и Д/ и позволяет теперь получить представление /(х) в указанном выше виде. Рассмотрим автомат V = ({0, 1} , С,{0, 1} , <р, ф) такой, что Q = {(f, w)I и = 0, 1,. .. , s, w = 1,..., bv}-, ^((п, w), i) = (и, w + 1) при w < bv, (min (s, i> + 1), 0) при w -bv , i = 1, (max (0, v - 1), 0) при w = bv, i = 0; {1 при w < av, , „ ,, i G { 0, 1}. 0 при w > av, Покажем, что /(x) =fv(x). Имеем P(v,i) = • =P(v,bvy =pv. Докажем x индукцией no v, что pu+I (x) = pv (x) -- , v = 0,1,..., s - 1. Дейст- 1-x вительно, x Po(x) = po(x)(l -x) + Pi(x)(l - x), Pi(x)=Po(*) —- • Пусть уже доказано x Pv(x) = ----- Ри-1(Х). 1 -X Тогда Pu(^)=Pv-l(x)x+Pv+l(x)(1 -*)= = Pu(x)(l -x) + pu+1(x)(l-x); / X PV+1(X)=PV(X) — Таким образом, находим / x \v Pv(x)=Po(x){---------) . \ 1 -X / При этом 2 bv(x)pv(x) = po(x) S bv(——\ =1. ' u=0 v=0 \ 1 — X / 149
Окончательно имеем и х 1 Ро (*) =----------------- s / X \« Е by( ~1 ’/ и=0 \ 1 — X / \ 1 -X / ри(х)= -------г s /XV xu(l-x)J-u S Zvxu'(l -x)s~v' и'=0 Z avxv(l—x)s~v v=0 S bvxv(l -x/-u u=0 Теорема доказана. Стохастические функции автоматов позволяют аппроксимировать про- извольные непрерывные функции/(х): [0, 1] -> [0, 1]. Заметим, что раз- личные разряды последовательности, возникающей на выходе автомата, на вход которого подается случайная последовательность со статистичес- ки независимыми разрядами, вообще говоря, не будут статистически неза- висимыми. Поэтому при последовательном соединении автоматов не проис- ходит суперпозиции их стохастических функций. Однако если располагать элементами, сохраняющими в некотором приближении частоту единиц в последовательностях и обеспечивающими также в некотором приближе- нии статистическую независимость появлений единицы на выходе в различные моменты времени, то возможно построение схем из автоматов, приближенно вычисляющих функции вещественной переменной. Такие схе- мы могут Использоваться как для вычислительных целей (например, це- почки одинаковых соединенных последовательно через элементы указан- ного типа автоматов осуществляют приближенное нахождение корня мно- гочлена методом итераций), так и для моделирования непрерывных процес- сов управления.
ГЛАВА 3. СТРУКТУРНЫЕ АВТОМАТЫ § 1. ОГРАНИЧЕННО-ДЕТЕРМИНИРОВАННЫЕ ФУНКЦИИ МНОГИХ ПЕРЕМЕННЫХ Как было показано в первой и второй главах, с каждым инициальным автоматом V= (А,О,В,^,ф,'цо) можно связать о.-д. функцию Fу: Л*-> *, Fy (а) = ф (</о,а). Здесь АиВ— произвольные конечные алфавиты. На практике, однако, удобнее иметь дело не с буквами этих алфавитов, а с некоторыми их кодами. Таким образом, с самого начала можно считать, что имеется некоторый ’’основной” алфавит Т, который используется для коди- рования букв алфавитов A,Q, В. Для простоты (однако не сильно огра- ничивая наши возможности) будем считать, что Г = {0, 1},Л ={0, 1}", Q = ={0,1}г, В = (0,1}т для каких-то п,г и т, т.е. коды букв из одного и того же алфавита имеют одинаковую длину. (Можно, разумеется, рассмат- ривать и более общую ситуацию, когда А = 7\ X Тг X ... X Тп, где 7), во- обще говоря, — разные алфавиты. Это существенно усложняет выкладки и приводит к необходимости рассматривать вместо функций fc-значной логики функции из функциональных систем Р2. Читатель может познако- миться с основными понятиями и фактами оР2 в [31].) Теперь автомат V реализует о.-д. функцию Fv, Fy-. [{О, 1}" ] * -» -> [{О,1}т] ’.Пусть аб A*, 0G В* и Fv(a) = (3. Пусть а = , as, (3=Ь1Ьг... ...bs, at = ..,tin), bj = i,j = l,...,s. За- дадим слова а и /3 в виде таблиц - 'si 1 's2 | • 1,21 • • 1 | hn | ts_ 1 ,tl a = I _ h i । ^12 | • I . I tin ts 2 । ?s-l,2| I I '12 I 151
Обозначим через ак, к = 1,... ,п,к-к столбец первой таблицы и через 0Z, I = 1,..., т, Z-й столбец второй, ак и fa — слова длины s в алфавите 0,1. Таким образом, мы можем считать, что у автомата V имеется п входов и т выходов (рис. 3.1). На каждый вход автомата подается некоторое слово из нулей и единиц, а на выходах автомата также реализуются некоторые слова из нулей и единиц. При этом автомат функционирует только в том случае, когда слова , а2,.. ., ап, подаваемые на входы автомата, имеют Рис. 3.1 одинаковую длину. Очевидно, что такую же длину будут иметь и все выход- ные слова 01,... ,0т. Рассматривая слово 0,-, j = 1,...,т, как значение некоторой (словарной) функции fj (Xi....х„), 0, = fj (cq,. .., а„), полу- чаем, что автомат V реализует словарную вектор-функцию Fv (*i, • • • ,х„) = = (fi (х,,... ,х„),/2 (х1э... ,х„),... (хп ..., х„)),такую, что Fv(ax,... ,a„) = (0i,.. . ,0т). Итак, с каждым инициальным автоматом V = ({0, 1}", Q,{0, 1}m , ^, ф, <?0) можно связать частичную вектор-функцию Fv (хп ... ,х„): [{0, 1},*]" -* -» [{0,1} *] т, определенную только'на таких наборах ai,a2,..., a„ зна- чений своих переменных, у которых слова a/, i = имеют одинако- вую длину. Благодаря детерминированности функции Fv обычным образом может быть доопределена на бесконечных последовательностях. Будем говорить, что автомат V с «входами и т выходами вычисляет (реализует) о.-д. т-функцию Fv (х1(... ,х„) от п переменных. Нас главным образом будет интересовать случай, когда у рассматриваемых автоматов один выход — каждый из них вычисляет некоторую о.-д. функцию многих пере- менных. Множество всех функций (при фиксированном основном алфа- вите {0,1} ), вычисляемых автоматами со многими входами, обозначим через Р. § 2. КАНОНИЧЕСКИЕ УРАВНЕНИЯ Пусть о.-д. функция f(Xj,... ,х„) из Р вычисляется автоматом К = = ( { 0, 1} ", {0, 1}г , { 0, 1} , (/?, ф, q0). Мы можем считать, что функции переходов и выходов ф заданы, например, таблицами, так что для любого входного набора (fli,. . ., ап), G{0, 1} , i = 1,. .., п, и набора (<?i, <?2,. . ..., qr ), qt 6{ 0, 1} , i = \,... ,r , который задает состояние, определены 152
значения Д(<71, • • ><?Д («!, ••• ,^„)) = (<7'1,. .. ,q’r), q't G {0, 1} , i = 1,. .. ,г 0((<7i, • • • ,Qr), (fl!,.. ,,an)) = b, b G{0, 1} . Здесь набор (q\,. .., q'r ) — это код того состояния, в которое перейдет V из состояния (<?1,.. ., q^ под действием входной буквы (<zj,..., ап) и b - выходная буква. Заметим, что значение q'{, i = 1,...,г, мы можем рассматривать как значение некоторой функции алгебры логики (z i,... ... ,zr,x1,... ,х„) в точке (<?1,... ,qr,ax,... ,а„) и b — как значение функции алгебры логики 0(z j,..., zr, Xj,..., x„) в той же точке. Таким образом, система (1) эквивалентна системе i = 1,... , r, Qr> > 0(<7i, • • • ,qr, <Ъ, • .,an) = b. (2) Напомним, что если ввести параметр t, интерпретируемый как номер такта времени или номер очередной буквы, подаваемой на вход автомата, то для описания функционирования автомата можно использовать кано- нические уравнения <?(1) = <7о, <7(г+ 1) = ^(^(0, х(0), . Ь(О=0(<7 (f)’ х(0)- (3) Здесь x(t),q(t),b(t) — соответственно входной символ, состояние и вы- ходной символ в момент t. Теперь, с учетом (2), канонические уравнения примут вид = • • • ,<7г(1)= <7°> qi(t + 1) = <a(<7i(0>. .. ,<7r(0>*i(0, • • ,xn(ty), .............................................................. (4) 4r(t + 1) - ^(<7i (0> • > <7r(0>*i (0, • • • - хп (0), Ъ (Г) = 0 (<? 1 (Г),qr(t), Xi (Г), ...,хп (г)), <7о = (<7ь • • • , <7?)><?(0 = (<7i (0,- • ><7r(0)>*(0 = (*i (0, ••• ,*Л0)-Бу- дем называть qi,... ,qr. внутренними переменными, a xit... ,хп - вход- ными переменными. Соответственно q^ (г), Xj (t) — значения этих переменных в момент t. Итак,о.-д. функцияf (xj,..., х„), вычисляемая автоматом V = ({0, 1} ", {О, 1}г, {0, 1}, 0, <?о), может быть задана с помощью канонических урав- нений (4), где все функции в правых частях суть функции алгебры логики. С другой стороны, для произвольных натуральных г и ли для произволь- ных функций алгебры логики (z j,. .., zr, Xi,.. . ,xn), ir = 1, • • ,r, 153
ф(г i,.. ., zr, Xi,..., х„) система (4) определяет некоторую о.-д. функцию п переменных f(xx,... ,х„). Чтобы убедиться в этом, достаточно взять автомат V = ({0, 1}",{0, 1}г ,{0, 1} , 0,<7о), где функции и ф опреде- ляются очевидным образом: <Х(<71> • • • ,<?Д («1, • • • ,апУ) = = (ч?1(<71,. . . ,qr,ai,... , ап),.. . , qr, <Zj,.. .,<z„)), 0((<7i, • • • ><?Д (fli> • • • ,«n)) = 0(<7i, • ,qr,ai,.. . ,a„). Теперь, чтобы вычислить значение /(а,.......а„), достаточно подать на z-й вход автомата слово a,-, i = 1,. .., п, и вычислить выходное слово. Как уже отмечалось, это выходное слово можно вычислить и непосредственно, ис- пользуя канонические уравнения (4). В самом деле, если at (1), i = 1,... ..., п, - первая буква слова,-подаваемого на z-й вход, то' Z>(1) = 0(<7?, • . ..., <7?, й! (1),...,а„(1)) есть, очевидно, первая выходная буква. При этом автомат из начального состояния (<??,..., q°r) перейдет в состояние (^i (<7?....q°r, (1), • • ,«„(1)), *2 (<7?. • • •, q°r, <h (1),...,а„(1)),... ..., <^г(<71,..., <7?, Л1 (1),..., д„(1))). Зная это состояние и набор (Д] (2),.. .,д„(2)) вторых букв, подаваемых на входы автомата, вычис- лим вторую выходную букву b (2) и новое состояние и т.д. Мы убедились в том, что каждая система канонических уравнений задает некоторую о.-д. функцию. Вообще говоря, разные канонические системы могут задавать одну и ту же о.-д. функцию, как, например, системы <71(0) = 0, <72(О) = О, <7г(Х + О = *(0 V<72(0, <72(t + 1) = х(7) V<7i (О, J’(O = <7i(OV<72(?) Vx(r); ?(0) = 0, <?(Г + 1) = x(7)V<7(7), у(0 = х(7) V<?(7). (5) (6) Нетрудно заметить, что если мы рассмотрим автоматы, соответствующие системам (5) и (6), подобно тому, как это было сделано выше, то у этих автоматов начальные состояния будут неотличимы. Вернемся к канонической системе (4). Если зафиксировать состояние автомата,т.е.набор q,.), то в этом состоянии выходная буква b может рассматриваться как значение некоторой функции алгебры логики, а именно 0($1,. .., (х1;.. . ,х„) = ф(^{,. .. ,q,.,x},... ,х„). Функция алгебры логики ф^......q,)(xi> , х„) называется функцией, реализуе- мой автоматом в состоянии .. ., qr). 154
§ 3. ОПЕРАЦИИ НАД ОГРАНИЧЕННО-ДЕТЕРМИНИРОВАННЫМИ ФУНКЦИЯМИ Рассмотрим две о.-д. функции Go (х) и/+ (Xj, х2), задаваемые каноничес- кими системами (7) и (8) соответственно: <7(1) = 0, ^+1) = х(Г), (7) . У(!) = q(fy, <7(1) = 0, q(t+l)=q(t), (8) . у(?) = X! (?) + x2(t) (mod 2). Нетрудно видеть, что о.-д. функция (7) реализуется ’’задержкой с нуле- вым начальным состоянием”, которая была определена в главе 1 (§ 1). Из системы (7) видно, что функция выходов <70(х)не зависит от переменной х. Соединим выход задержки с одним из входов сумматора (8), как это показано на рис. 3.2. Мы получим устройство Uс двумя входами и одним выходом, которое, очевидно, будет вычислять суперпозицию w(Xj,x2) = =/+(Xj,Go (х2)) двух о.-д. функций/+(х!,х2) и Go (х). При этом функция Go (х2) подставлена в функцию f+ (хг,х2) вместо переменной х2. Так как в каждый момент времени t значение выхода y(t) функции Go (х) поступает на второй вход сумматора, то мы можем это значение, вы- численное в канонической системе (7), подставлять вместо х2 (?) в канони- ческую систему (8). Таким образом, мы получаем каноническую систему для описания функционирования устройства U или, что то же самое, для задания о.-д. функции w(xb х2): ?<7(1) = 0, q(t+ 1) = х2(?), < 7i(l) = 0, (9) < 71 (Г + 1) = <71(0, j(O = Xi (?) + <?(?) (mod 2). Переменная <71 тождественно равна нулю, и мы можем избавиться от нее: < 7(1) = 0, q(t+ 1)= x2(t), (10) T(0 = Xi (?) + <?(?) (mod 2). Заметим, что прежде, чем подставлять значение .у (?) из системы (7) в сис- тему (8), мы присвоили переменным, описывающим состояния о.-д.функ- ции (8), т.е. внутренним переменным, новые наименования (заменили <7 на <71), так, чтобы множества таких переменных,у систем (7) и (8) не пере- секались. Функция выходов 0(Xi, х2, <7) = Xi + <7 (mod 2) в системе (10) не за- висит существенно от переменной х2. В этом случае говорят, что выход 155
о.-д. функции и(хъ х2) со сдвигом зависит от входа х2. Другими словами, значение y(t) выхода функции и(хь х2) в момент t не зависит от значения х2(Т) входа х2 в момент t (хотя, вообще говоря, зависит от значений, которые этот вход принимает в предыдущие моменты). Поэтому мы мо- жем соединить выход устройства U с его входом х2, как говорят, с по- мощью цепи обратной связи (рис. 3.3). При этом получится устройство S с одним входом и одним выходом. Более подробно структура устройства видна на рис. 3.4. Р и с. 3.2 Р и с. 3.3 Рис. 3.4 Устройство S реализует некоторую о.-д.функцию «(х^, про которую скажем, что она получена применением операции обратной связи из функ- ции и(хь х2). Для вычисления функции s(xt) можно воспользоваться ка- ноническими уравнениями функции и(хь х2). В самом деле, работа уст- ройства S (см. рис. 3.3) определена тем, что в каждый тактовый момент t на правый вход устройства U подается значение выхода этого же устройст- ва в момент t. Воспользовавшись тем, что в канонических уравнениях (10) выход y(t) не зависит от х2(г), подставим в этих уравнениях всюду вместо х2(т) выражение Xj(f) + q(f), задающее значение y(t). Получим канонические уравнения, которые и будем считать каноническими урав- нениями s (х!): <7(1) = 0, q(t+ 1)=х1(Т) + <7(0, .^(0 = Xi(T)+<7(T)(mod 2). (И) Диаграмма автомата, вычисляющего «(Xj), приведена на рис. 3.5. Не- трудно заметить, что.у(1) = Х1(1),у(2) = х^1) + xt(2).y(t) =Xj(l) + + X! (2) + .. . + Xj (t) (mod 2). Таким образом, устройство S представляет собой счетчик четности числа поступивших на его вход единиц. Это уст- ройство построено из некоторых ’’элементов” — автоматов из данного на- бора, с помощью операций суперпозиции и обратной связи. Устройство 5 однозначно характеризуется набором элементов, из которых оно построено и способом (схемой) их соединения. Напомним, что 5 мы называем струк- турным автоматом (над данным множеством элементарных автоматов), 156
в отличие от абстрактного автомата (см. рис. 3.5), который естественным образом может быть связан с этим устройством, т.е. от автомата, который вычисляет о.-д.функцию, задаваемую системой (11). Если абстрактный автомат (или канонические уравнения) задает макро- описание о.-д.функции, то структурный автомат дает полное описание элементной базы и схемной реализации. Описание элементной базы — это сопоставление каждому элементу некоторого автомата с соответствующим числом входов, а описание схемной реализации может даваться в виде уо Рис. 3.5 схемы соединений элементов или в виде терма (формулы), позволяющего с помощью соответствующего алгоритма перейти к эквивалентному описа- нию в виде схемы. Теперь мы можем, отталкиваясь от разобранного примера структурной реализации счетчика четности, определить понятия композиции над дан- ным множеством о.-д.функций и структурного автомата. Пусть U- {«!, и2,..., ит,... } — бесконечный алфавит переменных (аргументов). Будем рассматривать над этим алфавитом о.-д.функции /(“/,, «/j, • • > ui„), ui- uit, j & l, аргументы которых определены на мно- жестве {0,1}* и такие, что /(«i,.. . ,а„) определено и принадлежит {О, 1 }*, когда слова a,-, i = 1,..., п, имеют одинаковую длину и принадле- жат {0, 1}* . Всюду в дальнейшем выражение /(а1; ..., а„) = /3 означает, что длины слов О'!.....ап совпадают, и значение функции определено и равно /3. Чтобы избежать сложных обозначений для индексов переменных, будем употреблять в качестве метаобозначений символы х с индексами. Таким образом, запись f(x{.......хп) понимается как запись функции, зависящей от некоторых переменных и^, и,2, ..., щп из U, причем и,. =# =# ui{ при j =# I. Для задания о.-д.функции /(хь ..., х„) достаточно указать систему ка- нонических уравнений (12) или диаграмму (таблицу) автомата сп входа- ми ({0, 1}", Q, {0, 1}, р, 0, <7о), вычисляющего эту функцию: <71(1) = <71, ...,<7Г(1) = <7° <7/(' + 1) = ^(<71(0, • • • ,<7г(0Л1(0, • • • i=l,.:.,r, (12) .. . ,xn(t)). Рассмотрим теперь операции над о.-д.функциями. Первые две операции над функциями — добавление и изъятие фиктивных переменных. Переменная х, о.-д.функции /(хь ..., х<_р х,. xi+1,... , х„) называет- ся фиктивной, если для любых слов a2K...,at _л, а,-, а1+1,..., а„, а- из ра- венства f(a 1,..., Of-i, О/, al + i,.. ., а„) = /3 следует равенство /’(ai,...,aH1 «г,«Z + 1, • .. ,a„)=0. 157
Операция 1. Пусть хп + j - переменная из U, не содержащаяся в мно- жестве переменных {хь ..., хп}. Будем говорить, что функция /'(xi, . .. ..., х„, хи+1) получена из функции /(хь ... , х„) добавлением фиктив- ной переменной хи+1, если для любых слов ajа„, а„+1 имеем /'(«!> • • ,a«,a„+i)=/(o!i, • • • ,ап). Пусть о.-д.функция /(хь ..., х„) задана канонической системой (12). Построим систему канонических уравнений для функции/’'(х1>...,хи,хи+1). Для каждого i = 1, ..., г рассмотрим функцию алгебры логики , • • •, <7,-, хь . .., х„, хи+1), которая получается из функции ^,(<71, ..., qr, хх, ..., х„) добавлением фиктивной переменной хи+1. Рассмотрим также функцию алгебры логики 0 '(<? iх 1(..., х„, x„+1), которая получается из функции 0(<71э ..., qr, xlr ..., х„) добавлением фиктивной переменной хи+1. Тогда система <7i(l)=?i.....<7,(1) = <7?, <?,•(?+ i) = ‘pi(qi(t), • • ,qr(t),xi(t),. .. ,x„(r),x„+1(0), i = 1,... ,r, У(Г) = 0 '(Я i (0.<7,(0, xt (t), ...,xn (f), x„ +1(0) задает функцию f'(Xi,..., x„, x„ +!). Операция 2. Пусть х,- — фиктивная переменная о.-д.функции /(хь ..., x,-._li, х(, х,+1, .... х„). Будем говорить, что функция f'(xlt ..., Xi_!, xi+1, ..., х„) получена из функции f изъятием фиктив- ной переменной, если для любых слов cq, ..., cq_ t, oq + 1, ..., аи, а имеет место /'(«!,... . • .,an) = f(alt... , а,^,а, a/+1,. .. ,а„). - Покажем, что если х,- — фиктивная переменная о.-д.функции f(xi, . . ., х,-!, Xj, xl+i, ..., х„), то f может быть задана системой кано- нических уравнений вида (12), такой, что функции алгебры логики i = 1, ..., г , и 0 не зависят существенно от переменной х;. В самом деле, пусть функция выходов 0(471, ..., qr , хь ..., х„) существенно зависит от переменной xf. Пусть, например,^,...,qr ,аи..., at_Y, ai+i,.’.., ап - такие элементы Е2 ={0,1}, что ч 0(^i,.. . ,qr,a2....ai_1,0,ai+l,. . . ,ап)* =#0(51,.. . ,qr,a!,.. . ,<?/_!, 1,ai+i,.. . ,ап). Тогда, очевидно, состояние (qx, ..., qr) не достижимо из начального со- стояния («у?.....q°r ). Поэтому вместо функции 0 можно взять такую функцию 0 ', что имеет место 0 \<h.....qr,at,. .. .fli-i.a, ai + 1,.. . , a„) = 0, a = 0,1. Поступая так для всех недостижимых состояний, получим функцию выхо- дов, у которой переменная х,- фиктивная. Аналогично, заменим функцию на функцию i = 1, ..., г, такую, что если ... ,qr) не достижимо из начального состояния, то для любо- го набора (Л1,.. ., ап) & (Е2)п выполняется <^[(^ ,...,§)., Ль ..., а„) = 0. 158
Очевидно, что система qf(t + 1) = ^'(<71 (0,..., qr(t), X! (Z),...,х„ (г)), i = 1,.. ., г, ,y(f)= ф '(<71(0,.. . ,qr(t),Xi(t),.. . ,xn(t)) задает о.-д.функцию f(xlt хп). Предположим, что для некоторого / 6 {1,...,г} функция^- существенно зависит от переменной х,. Пусть, например, qltqr, alt..., ai+l,ап — такие элементы из Ег ,что »• • • > ЯГ’а1 > • • ’ а1—1 > 0, аг+1, • • • , Яи) ^(Й, • • ,qr,a\, • • • ,ап). (13) Из определения <р'- следует, что состояние (<7), ..., qr ) достижимо из на- чального состояния некоторым входным словом а = (а1э. .., а„). Нетруд- но видеть, что состояние ($1, ... ,qr, а1у. .., а,_х,0, ai+l.д„),... • Х(<7ь • • • >Qr> ..<z,-i,O,<z/+1,... , <z„)) и состояние (/i(?i, •. . ,qr, ar,.. . l,ai+l.......<z„),.. . • • • ,^г(?1> • • • <?/•> • • • > 1, ai + 1,... ,an)) неотличимы. ЗамениЛ функцию q)s на функцию такую, что ^'(?i>- • • >?,, .........at_i,a,al+i,.. ., ап) = = <p's(4i, ,Qr,- ai,... , ai_1,0,ai+1,.... <z„), a = 0, 1, s = 1....r. Поступая так в каждом случае, когда имеет место соотношение (13), полу- чим систему канонических уравнений с нужным нам свойством. Пусть теперь х, — фиктивная переменная о.-д.функции /(х1( .. ., х„) и система (12) такова, что функции алгебры логики i = 1, ..., г , и ф не зависят существенно от переменной х,. Заменяя зти функции на функции ^'(Х1,..., х,_„ х/+1,..„ х„), i =1,...,г, ф'(хг,..., х;_ь х;+1,..., х„), которые получаются из функций ipt, ф,1 = 1,... ,г, соответственно изъяти- ем фиктивной переменной х,, получим систему канонических уравнений, которая задает о.-д.функцию/'(xj,.. ., х,_1( х/+1,..., х„), получающую- ся из функции f изъятием фиктивной переменной х,-. Операция 3 — отождествление переменных. Будем говорить, что о.-д.функция Л(хь ..., xt, .. ., xz_i, х/+1, ..., х„) получена из о.-д.функ- ции f (хг, , Xj, , Xj, ..., х„) отождествлением переменных xt и ху- (в указанном порядке), если для любых ai, ..., а„.из {0, 1}* имеет место й(ai,--.,а/, ...,a7-i,a, + i, ...,а„) =/(ai,..., Операция 4 — переименование переменных (без отождествления). Пусть xj, Хз, ..., х'„ — разные переменные. Функция h(x\,..., х„) получе- 159
на из f(xi, , хп) переименованием переменных, если для любого набора слов «1, ..., ап имеет место h(ai, ,..,«„) =/(«1,.. ., ап). Эти две функ- ции задают одно и то же отображение [{0, 1}*]" -> {0, 1}* и отличаются лишь названиями переменных. Операция5 — подстановка. Пусть /(хр..., xz х„) и h(x\,..., х'т) — две о.-д.функции, при этом множества {хь .. ., хп} и {х'р .... х'т} пере- менных не пересекаются. Будем говорить, что функция g(xi, ..., xz_1; xz + 1,... , хп, х\, . .. , х’т) получена из функций f и hподстановкой функ- ции h вместо переменной xz в функцию f, если для всякого набора «1, ..., , az + 1, ..., а„, ал + 1, ..., ап+т слов из {0, 1 }* имеет место g(ai,...,aI_i,a/+i,...,a„,a„ + i,...,a„+m)=/(ai ,...,а,_р h(an + l,...,an+m ), а/ + 1,.. . ,а„). В случае операций 3 и 4 в канонических системах производится соответ- ственно отождествление или переименование входных переменных во всех функциях, стоящих в правых частях уравнений. Рассмотрим операцию 5. Пусть функции f и h задаются соответственно системами ?/(Г+1) = <р/(?1(О,-..,?г(О,Х1(Г), ...,х„(г), 1=1,...,г, (14) ЯО = (0- • • > яг(0, *1 (0, • • •, (0); ^(1) = ^?,.. .,и/(1) = ^°, u,(r+l) = (p!(ul(r),. ..,uz(r),xj(r),. ,.,x^(r)), (14') y(t) = Ф '(fl (0. • • • x'dt), ,x'm(r)). В канонических системах (14) и (14') множества внутренних переменных и ,..., и/ не пресекаются. Очевидно, что систему (14) можно всегда подобрать так, чтобы это условие выполнялось. Тогда функция#(хь ..., х,-_ь х1 + 1, .... х„, х'ь ..., х'т) задается ка- нонической системой '9i(l) = ?i,... ,<7r(l) = <7®, ui(l) = u?,. .. ,uz(l) = uz°, ^a + i)=^(ui(r)>--->i;/(r)>-xi(0,---,^(0), s=i...........i, ,15) q^t+ 1) = . .. ,qr(t),Xi(t),. . . ,%z_i(r), ф .. . ,^m(t)),Xi+1(t), . . . ,Хп(Г)), j=l,...,r, y(t) = ^(4i(t), • • • • ,^-iW, . . . . , Xm (/)), xz+ J (f), .. ., xn (t) ) . Операции 1—5 называются операциями суперпозиции. Операция 6 — операция обратной связи. Пусть и > 2 и f (хр ..., х„) — о.-д.функция, которая задается канони- ческой системой <7i(l) = <7i. ,qrW = 4°r, qi(t+l) = >pi(q1(t),...,qr(t),x1(t),...,Xn(t)), i=l,...,r, (16) .у(О = (0, • • •,qr(f), (0, • • •,xn(г)). 160
Пусть/(xj, ..., хп) зависит со сдвигом от какой-нибудь своей перемен- ной. Не ограничивая общности дальнейших построений, положим для опре- деленности, что этой переменной является Xj. Другими словами, выходная функция i// не зависит существенно от переменной хх(т). Мы можем счи- тать, что в системе (16) функция ф обладает этим свойством, в противном случае заменим ее на функцию, равную константе на недостижимых со- стояниях, подобно тому, как это делалось при определении операции 2. Пусть ф' получается из ф изъятием фиктивной переменнойх^т). Тогда о.-д.функцйя f(x2,... , х„), очевидно, задается и системой • Ch(l) = <7,(1) = ^°, «71-(Г+1) = ^.(«71(Г), ...,«7г(Г), Xi(r), ...,х„(Г)), 1=1,..., г, (16') у(Г)= ф'(Я1(.Г),. . . ,qr(t),x2(t),.. . ,х„(г)). Рассмотрим систему (16"), которая получается подстановкой в функции 1=1,..., г, вместо переменной х^г) функции ф': = • • ,Чг(1) = Чг , 4i(t + О = 1 (0, ; • . Ф '(<71 (t), • • • , 4r{t), *2 (О, • • • • • • .*л(0), х2(Г),. . . ,Х„(Г)), i=l,...,r, (16 > у(г) = ф '(<71(0, . . . , qr(f), х2 (Г), . . . , х„ (Г)). Эта система задает некоторую о.-д.функцию/'(х2,... ,хп). Будем гово- рить, что f’(x2,...,xn) получена из /(xi, х2,.. ., х„) применением операции обратной связи (в данном случае по переменной хг). Обратная связь, очевидно, может быть применена к любой переменной, от которой функция зависит со сдвигом. Условие п 2, очевидно, не является ограни- чивающим: если f (х) зависит со сдвигом от х, то, добавляя сначала фик- тивную переменную х', получим функцию f'(x, х'). Применение обратной связи к /'(х, х') дает ’’константу”, т.е. функцию /”(х'), имеющую лишь фиктивную переменную. Пусть MQP — некоторое множество о.-д.функций. Обозначим L(Af) множество всех функций, которые получаются из функций М с помощью суперпозиции, и К(М) — с помощью операций суперпозиции и обратной связи. Каждый элемент S(Af) получается из конечного набора элементов множества М за конечное число шагов,'т.е. применением конечного числа раз операций 1 - 5. То же и для К(М). Будем говорить, что f есть суперпо- зиция над М, если и f есть композиция над М, если fEK(M). Очевидно, что М С S(Af) С К(М). § 4. СХЕМЫ. СТРУКТУРНЫЙ АВТОМАТ При исследовании композиций о.-д.функций наряду с каноническими системами будем использовать язык схем. О.-д.функции вычисляются автоматами, и операциям над о.-д.функциями сопоставляются естествен- ным образом операции над автоматами: выполнение операций в этом случае связано с соединением выходов и входов соответствующих автома- тов. Если мы рассматриваем композиции над некоторым множеством о.-д.функций М='{fi,f2,. ..} , то с каждой функцией ft из М свяжем 11.В.Б. Кудрявцев 161
объект Et -изображенный на рис. 3.6 прямоугольник - с nt входными стрелками (и,- - число переменных fa) и выходной стрелкой (коротко - входы и выход Ef). Входам объекта Е,, который мы в дальнейшем будем называть элементом Е,, приписаны слева направо переменные хь .. ., хп. функции ft. Функционирование элемента Е, — это функционирование инициального автомата V}, вычисляющего функцию /Дхь . .. , х„.). Тем самым мы можем говорить о состояниях, входных словах и т.д. Композициям над «Г *2 »>-Г Рис. 3.6 Рис. 3.7 Рис. 3.8 множеством о.-д.функций М будут соответствовать устройства, полученные соединением элементов. Эти устройства мы будем называть схемами. Да- дим индуктивное определение схемы. Пусть Ем ={£’1, Е2, ..}— множество элементов, сопоставленных функ- циям из М. Оs . Каждый элемент из Ем есть схема над Ем Элементу сопоставлена функция из М, номер которой совпадает с номером элемента. Пусть 5 — схема над Ем, которой уже сопоставлена функция f(xt,.., хп) (таким образом, входам схемы S приписаны слева направо переменные х1( .... х„). Функционирование схемы это функционирование автомата, вычисляющего функцию fa I s (добавление фиктивного входа). Пусть хп+1 — переменная, отличная от переменных хь ..., хп. Тогда объект 5' (рис. 3.7) есть схема над Ем Схеме S' сопоставляется функция f'(xlt .... х„, х„+1), получающаяся из f(xi, ..., х„) добавлением фиктивной переменной; функционирование схемы 5 — функционирование автомата, вычисляющего функцию f'. 2£ (изъятие фиктивного входа). Пусть функция /(хь ..., х„), сопо- ставленная схеме S, имеет фиктивную переменную xt. Тогда объект с и — 1 входом на рис. 3.8 есть схема 5 '. Ее входам приписаны слева направо пере- менные х1? ..., х/_ 1, xi+1, ..., х„, и S' сопоставлена функция f'(xlt. .. .... xt_x, х/+ь ..., х„), получающаяся из/ изъятием фиктивной пере- менной. 3% (склеивание входов). Пусть х,, х/ — переменные, приписанные z-му и /-му входам 5 соответственно. Тогда объект с и — 1 входами на рис. 3.9 есть схема S' над Ем- Ее входам приписаны слева направо переменные хь-... , X/, ..., х;_1, xj+l,..., хп и S' сопоставлена функция /'(xj, ... 162
. .., xit ..., Xj-i, Xj+1, , xn), получающаяся из f отождествлением пе- ременных X, ИХ]. 4s (переименование входов без склеивания). Если х\, .. .,х'п— разные переменные, то объект с п входами на рис. 3.10 есть схема над Ем; ей со- поставлена функция f\x\, ..., х’„), получающаяся из/(хь . .., хп) пере- именованием переменных х{ на х,', i = 1,..., п. 5s (последовательное соединение). Пусть Sx и S2 — схемы на рис. 3.11, причем множества переменных {х\,:.., х'т} и {х1( ...,л^} не Рис. 3.9 пересекаются. Схеме 51 сопоставлена функция h (x’j,. .., х'т) и схеме 5 2 со" поставлена функция/(хь... ,х„).Тогда объект, изображенный на рис. 3.11, есть схема над Ем; ей сопоставляется функция g(xb ..., х(_х, х/+1, ... • • > %п > *! > • • > %т ) ~ f&l > • > xi- 1 > (^1 , • > Хт ), Х/+ j,..., Хп) . 6£ (обратная связь). Пусть и > 2; функция/, сопоставленная схеме S, зависит со сдвигом от переменной xt. Тогда объект с п — 1 входом, изобра- женный на рис. 3.12, есть схема нар Ем- Ее входам приписаны слева напра- во переменные х1( . .., х/_ь xi+l, ..., хп, и этой схеме сопоставлена функция, получающаяся из/(xj, ..., х„) применением операции обратной связи (по переменной х{). Правила 02 — 62 индуктивно определяют для произвольного множества элементов Ем множество схем над Ем Нетрудно видеть, что множество функций, сопоставленных схемам над Ем, совпадает с множеством К (Af) композиций над М. Если при построении схем не использовать обратную 11* 163
связь, то соответствующее множество функций совпадает с Z(Af)- В этом случае схемы над Ем называются схемами над Ем без обратных связей. С каждой схемой мы связали (абстрактный) автомат, вычисляющий функцию, сопоставленную схеме. Напомним, что пара (S, V), где 5 — схема над Ем, V — инициальный автомат, вычисляющий функцию, сопоставленную схеме S, называется структурным автоматом (над Ем ) • Задать структурный автомат над Ем — значит дать описание (диаграмму, таблицу и т.п.) автомата V, а также дать схему над Ем • При этом схема может быть задана непосредственно, т.е. как геометрический объект, или с помощью алгоритма построения этой схемы из элементов. Будем говорить о функции /, сопоставленной схеме S, что схема S реализует функцию f. § 5. ЗАМЫКАНИЕ. ВЫРАЗИМОСТЬ. ЗАДАЧА О ПОЛНОТЕ В § 3 с каждым множеством о.-д.функций М мы связали два множества 2(4/) и К(М) суперпозиций над М и композиций над М соответственно. Тем самым мы определили два оператора, действующие на подмножествах множества всех о.-д.функций Р. Отметим некоторые общие свойства этих операторов. Если О — один из операторов S или К, то для любых под- множеств М, Мх, М2 множества Р имеет место: 1) <9(М)2М; 2) О(О(М)) = О(М)-, 3) если Мх 24f2, то О(М}) □ О(М2). Оператор, определенный на множестве всех подмножеств множества Р и обладающий свойствами 1) — 3), будем называть оператором замыка- ния на Р. Широкий класс операторов замыкания изучен в [31 ]. Введем ряд понятий, изучению которых посвящена настоящая глава. Пусть I — оператор замыкания на Р. Пусть Mlt М2 £ р, говорят, чтоЛ/2 I-выразимо через Мх, если М2 £ ). При этом множество 1(Мх) называ- ется I-замыканием множества Мг. Подмножество М QP называется 1-замк- нутым, если М = 1(М), т.е. совпадает со своим /-замыканием. Так, напри- мер, множество всех о.-д.функций, имеющих не более одной существенной переменной, является S-замкнутым и /f-замкнутым. Пусть М - /-замкнутое подмножество Р нМ1 £ М. Множество М' назы- вается I-полным в М (иногда для краткости просто полным), если 1(М') = М, т.е. если М Z-выразимо через М'. Например, если в качестве оператора замыкания взят оператор К, полнотаМ'ъМ означает, что всякая функция из М может быть выражена (получена) с помощью операций суперпозиции и обратной связи через функции из М Задача о полноте (для различных операторов замыкания) имеет важное прикладное значение. На практике, прежде чем приступить к проектиро- ванию конкретной, часто весьма сложной, схемы, реализующей, например, какое-либо устройство управления, необходимо убедиться, что набор эле- ментов, из которых будет вестись синтез этого устройства, является доста- точным, т.е., например, что та о.-д.функция, которую требуется реализо- вать, действительно выразима через исходные ’’элементарные” функции. 164
При этом условия, в которых предстоит ’’работать” синтезируемому уст- ройству, могут накладывать различного рода, ограничения на сложность (скажем, занимаемый объем) реализации, надежность и т.д. Эти условия, по существу, и определяют тот оператор замыкания, относительно которого необходимо решать задачу выразимости (полноты). В самом деле, если, например, нам заранее известно, что устройство должно проработать надеж- но лишь фиксированное число временных тактов, то вместо /f-выразимости можно рассмотреть более ’’слабое” замыкание. Примеры таких операторов будут в дальнейшем рассмотрены. Оператор замыкания I называется алгебраическим, если для любого множества М Q Р и любого элемента f G Р из того, что f & 1(М), следует существование такого конечного подмножества {/), ..., fs } Q М, что /G G I({fi......Д}). Мы будем в основном рассматривать алгебраические операторы замыкания. С содержательной точки зрения это оправдано, так как выразимость какой-либо функции через М естественно понимать как возможность ее построения из конечного набора элементов множест- вам Непосредственно из определений операторов S и К следует Теорема 3.1. Операторы X и К являются алгебраическими операто- рами замыкания на Р. Со всяким оператором замыкания I на Р можно связать разбиение мно- жества ВР всех подмножеств Р на классы эквивалентности. Именно, два подмножества Мг и М2 из ВР /-эквивалентны тогда и только тогда, когда /(Mi) = Z(M2). Будем говорить, что эта эквивалентность порождена опера- тором /, и для краткости называть ее /-эквивалентностью. Теорема 3.2. Эквивалентности, порожденные операторами S и К, различны. Доказательство. Пусть G0(x) -- задержка с нулевым начальным состоянием. Канонические уравнения функции G0(x) заданы системой (7). Покажем, что Е({0о(х)})#=к({0о(х)}). В самом деле, любая функция из множества Lx = Z({G0(x)}) существенно зависит от одной из своих пере- менных — это нетрудно показать индукцией по числу применений опера- ций суперпозиции. В то же время множество Т2 = К( {Go (х) } ) содержит функцию /о(х) такую, что для любого входного слова a fo(a) = 0__^0, к где к — длина слова а. Схема, реализующая функцию /о(х), приведена иа рис. 3.13. Переменная х присвоена фиктивному входу схемы. Таким об- разом, функция /0(х) имеет только фиктивную переменную, и поэтому /0(х)£/,1. Заметим, что множества {Go(x)} и Lx S-эквивалентны, так как E({G0(x)}) = /,i = Z(/,i). Кроме того, и /,2 не являются S-эквива- лентными. В самом деле, S(Zi )~LX, a S(/,2) 2Т2 #=/,!. Следовательно, {G0(x)} и Ь2 не являются 2-эквивалентными. В то же время {G0(x)} и Ь2 ^-эквивалентны. Теорема доказана. Теорема 3.3. Каждый класс К-эквивалентности есть объединение некоторых классов ^-эквивалентности. ' Доказательство. Нам достаточно показать, что из S-эквивалент- ности двух множеств Мг и М2 следует их .^-эквивалентность. Из свойств операторов К и S имеем К(М^) 2 S(Afx )= Z(4f2) 2Af2, поэтому 165
^М2, следовательно, К(М2) = K(K(Mvy) ^К(М2), т.е. К(МХ)ЭК{М2}. Точно также получаем, что К(М2) 2 К(М2). Теорема доказана. Если I — оператор замыкания, L — некоторый класс /-эквивалентности, то нетрудно описать строение этого класса. Пусть ME L — некоторое под- множество из L . Рассмотрим множество Lo = 1(М), которое, очевидно, тоже принадлежит L. Если М} — произвольный элемент L , то Мt С 1(МХ) = = /(Л/) = Lo. Таким образом, классZ содержит: а) некоторое /-замкнутое множество Lo и б) те подмножества L 0, через которые Zo /-выразимо. Рис. 3.13 Рис. 3.14 Нетрудно видеть, что L 0 - это единственное /-замкнутое множество, кото- рое может содержаться в L. Поэтому справедлива Теорема 3.4. Мощность множества классов 1-эквивалентности равна мощности множества I-замкнутых множеств. Уже из этих рассуждений видно, что задача выразимости (и ее важный случай — задача полноты) связана с изучением структуры замкнутых множеств. Теоремы 3.2 и 3.3 говорят о том, что операция обратной связи, вообще говоря, не может быть заменена суперпозициями. В дальнейшем особая роль этой операции будет подтверждаться. Однако изучение структуры S-замкнутых и /f-замкнутых множеств может быть проведено лишь в определенном смысле. Теорема 3.5. Мощность множества К-замкнутых множеств равна континууму. Доказательство. Так как множество всех О.-д-функций Р счетно, то нам достаточно показать, что мощность множества Х-замкнутых мно- жеств не меньше, чем континуум. Рассмотрим множество Z всех константных функций из Р, т.е. таких функций, у которых каждая переменная является фиктивной. Множест- во Z, в частности, содержит для всякого i функцию С/(х) такую, что для 166
любого к и для любого слова а. длины к значение С/ (a) есть начальный от- резок длины к последовательности периода i + 1: Г,- = 0 ... О 1 О ..Д)1 ... i 1 Схема, реализующая эту функцию, приведена на рис. 3.14. Здесь Gx (х) — задержка с единичным начальным состоянием. Она отличается от задержки Go (х) (см. (7)) тем, что q(1) = 1. Пусть В С С = {С1г С2, ... } и Cj $ В. Нетрудно видеть, что в этом слу- чае С{ К (В), так как любая схема, построенная из схем, реализующих функции из С, будет реализовать функцию ’’самого нижнего” элемента схе- мы, т.е. того, выход которого является выходом всей схемы. Это связано с тем, что все входы элементов фиктивные. Таким образом, разным под- множествам множества С соответствуют разные замкнутые классы, их со- держащие. Отсюда, в силу того, что у множества С существует континуум разных подмножеств, следует утверждение теоремы. Следствие. Мощность множества ^-замкнутых классов равна континууму. § 6. КОНЕЧНЫЕ А-ПОЛНЫЕ СИСТЕМЫ Одним из главных в теоретическом и прикладном аспектах является /f-замыкание. Мы начнем его подробное изучение с рассмотрения вопроса о существовании и свойствах конечных /f-полных систем. Ранее уже была описана функция Go (х) — задержка. Рассмотрим три ’’истинностных” о.-д.функции /v(xbx2), /& (хь х2) и /-|(х), каждая из которых вычисляется некоторым автоматом с одним состоянием (без па- мяти) . Эти функции задаются соответственно каноническими системами <7(1) = О, q(t + 1) = q(t), (17) .y(0=^i(0 Vx2(T); ..<7(1) = О, q(t + 1) = q(f), 0 8) ,y(r) = xi(r)&x2(r); <7(1) = О, <?(Г+ 1) = ^(Г), y(r) = x(r). (19) Теорема 3.6. X’({G0(x),/v (хь x2), 4(хь x2),/-|(x)})=P. Д оказательство. Проведем доказательство в два этапа. Сначала покажем, что всякая истинностная о.-д.функция, т.е. такая, которая вычис- ляется автоматом с одним состоянием, является композицией над множест- вом {G0(x), fij, f.&, /-|}. Мы даже покажем, что любая такая функция яв- ляется суперпозицией над { /у, f&> f-\) • 167
Рис. 3.15 Пусть f(Xi, ..., хп) — истинностная о,.-д.функция. Тогда ее каноническая система имеет вид 4(1) = о/ q(t +1) = где ф(1-2, ..., £п) — некоторая функция алгебры логики. Если ф — функция одной переменной 0, 1, xt или хь то f(xt) реализуется соответственно схе- мой а), б), в) или г), изображенной на рис. 3.15. При 2 разложим ф по первой переменной: Ф&1 , -, {„) = $! • (1, Ь , .... tn ) V Ь • ф(0,Ц2 )• Делая индуктивное предположение о том, что схемы Si и 52 реализуют функции 4(1) = 0, (4(0 = 0, «?(г+1)=4(0> и q(t + l) = q(t), ,y(t)= ф(1,х2(г), ...,x„(t)) (y(t)= ф(0,х2(Г), ...,x„(r)), построим схему (рис. 3.15,Э), которая, очевидно, реализует f(xlt ...,х„). 168
Таким образом, каждая истинностная о.-д.функция принадлежит мно- жеству K({G0(x),fy,f&,f-J). Пусть теперь f(xi, ...,х„) - произвольная о.-д.функция, заданная кано- нической системой < 71(0 = <7?,.... <7,(0 = <7,% + 1) = ^(<71(7),-.<7г(0. ,*i(0> ...,x„(t)), г, (20) *1(0....*п(0)- Построим схему над множеством {Go (х), /v, f&, f-^, реализующую о.-д.функцию f. Заметим сначала, что из Go (х) и /-| можно построить Gi (х)-задержку с единичным начальным состоянием (схема на рис.3.16). Теперь для каждого i = 1,..., г построим схему S,, реализующую истин- ностную о.-д.функцию от п + г переменных, которая задается системой < 7(0 = 0, < ?(Г+1) = <?(0> Я0 = ^(*п+1(0. (0,Х1(г), ...,х„(г)). Соединим выход 5, с выходом задержки G^ (х) с начальным состоянием <7°. Применим операцию обратной связи к 7-му входу (переменная х„+г), получим схему Я/, которую назовем 7-й ячейкой памяти. Схему, отличаю- щуюся от схемы Я/ только переименованием входных переменных, будем также называть 7-й ячейкой памяти Я/. Схему над множеством ячеек памя- ти Яц ,..., Я/х, s>2,ij G {1.г}, j.= 1, назовем правильной, если в этой схеме у каждой ячейки вход с номером if, j. = 1...s, соединен с выходом некоторой ячейки Я^. Например; при s = 2 схема из Я! и Я2 пра- вильная (рис. 3.17); при этом выходом схемы является выход ячейки Я2. Индукцией по числу $ покажем, что для любого набора индексов {71,72,..., is } и для любого 7 из этого набора существует правильная схема, построенная из ячеек Я/х, ..., Я^, выходом которой является выход ячейки Я/. В самом деле, для s = 2 это утверждение следует из рассмотрения схемы на рис. 3.17. Пусть оно верно для s = к — 1. Рассмотрим набор индексов {{7Ь 7.2, ..., ik }\ 7 }. По предположению индукции для любого индекса j из этого набора существует правильная схема S], выходом которой яв- ляется выход ячейки Я, . Подадим этот выход на /-Й вход ячейки Я/, j G {i'i, ..., ik}, j. #= 7. Применяя операцию обратной связи к раз, соединим выход ячейки Я/ с 7-ми входами всех входящих в эту схему ячеек. Мы по- лучили нужную нам правильную сеть. Если теперь отождествить (склеить) те входы всех ячеек, которые соответствуют одинаковым переменным из группы X!....х„ (т.е. склеиваются между собой г + 1-е входы всех ячеек, затем склеиваются между собой г + 2-е входы всех ячеек и т.д.), то систе- ма канонических уравнений функции, реализуемой правильной схемой, по- строенной из Я1, Я2...Яг , выход которой есть выход ячейки Я/, может 169
быть записана в виде 4iW=4°i,-,4r(l) = 4r' 4/(t+ = • .,qr(t),Xi(t), • • • ,xn(t)), /=1,... ,r, XO = Qi(O- Обозначим зту схему через В/. Теперь для завершения построения выходы схем В j, i. = 1, г , подадим на первые входы схемы Во, реализующей истинностную функцию вида <7(1) = О, q(t +1) = <7(0, Я0 = ф(х„+1(г), ...,x„+r(t),x'l(t), ...,Xn(t)). Отождествляя г + 1-е входы блоков Вit i. = 0, 1, г, затем г + 2-е вхо- ды и т.д. до группы последних входов, получим схему, реализующую функ- цию /(*!,..., х„). Теорема доказана. Итак, нами показано, что всякая о.-д.функция может быть получена с помощью операций суперпозиции и обратной связи из конечного набора функций {G0(x), /v, f&, /-]}. Заметим, что в этом наборе функция f& , например, может быть устранена, так как она сама выражается через /v и /-| (рис. 3.18). Заметим, что каждой истинностной о.-д.функции можно поставить в соответствие функцию алгебры логики (а именно, функцию Рис. 3.16 Рис. 3.17 Рис. 3.18 170
выхода). Тогда тройке функций fv, f& и будет поставлена в соответ- ствие тройка функций алгебры логики xt V х2, Xj & х2, х, про которую известно [63], что она представляет собой функционально полную систему в классе всех функций алгебры логики Р2. Так как суперпозициям истин- ностных о.-д.функций будут соответствовать суперпозиции соответствую- щих функций алгебры логики, то ясно, что в наборе {Go (х), /v, f&, тройку истинностных функций можно заменить любым набором истин- ностных о.-д. функций, для которых соответствующий набор функций алгебры логики образует полную в Р2 систему. В частности, можно ограничиться одной о.-д. функцией /ш, у которой функцией выходов является ’’функция Шеффера” [<7(0 = 0, + О = <7(0, j(0=*i(0 Vx2(0- Для дальнейшего примем следующее обозначение. Будем обозначать fh (хь ..., х„) истинностную о.-д.функцию, на выходе которой реализуется функция алгебры логики h (хь ..., х„). Приведенное рассуждение позволи- ло нам сократить число элементов в К'-полном множестве до двух. Естест- венно поставить вопрос о существовании К-”универсальной” функции, иг- рающей ту же роль, что и функция Шеффера в алгебре логики. Первый пример такой функции построен в [32]. Эта функция зависит от трех переменных и имеет два состояния. В [8] построена .^-универсальная функция от двух переменных, имею- щая два состояния. Приводимый здесь пример получен позже [16]; его универсальность устанавливается проще, чем в [8]. Теорема 3.7. Существует К-универсальная о.-д. функция двух пере- менных с двумя состояниями. Доказательство. Рассмотрим о.-д.функцию fu (хь х2), которая описывается следующими каноническими уравнениями: <7(1)= 1, <?(Г+ l) = (xt(r) Vx2(0)<7(0 Vx!(r)^(r), (21) Я0 = (x2(t) V x2(t))q(t) V (x,(Г) V x2(t))q(t). Диаграмма автомата, вычисляющего fu (x1( x2), изображена на рис. 3.19. Нетрудно видеть, что = fu (х, х) — ’’отрицание”, и непосредственно про- веряется, что fUt(xi, (/Ui(xbx2))) = /ш(хьх2) - ’’функция Шеф- фера”. Теперь мы можем считать, что для произвольной функции алгебры логики h (Xj, ..., х„) мы располагаем истинностной о.-д.функцией Д(х15 ..., х„), построенной из /ш (хь х2), а следовательно, из элемента /и (xi> хг) • В частности, у нас есть ’’тождественный нуль” f & _(х), кото- рый мы для краткости обозначим 0. 171
01 01.00 Рис. 3.19 Рис. 3.20 Тогда канонические уравнения функции /2 (х) = (fu (х, 0)) имеют вид q(r + l) = x(r), (22) ,y(r)=x(r)q(r). Канонические уравнения суперпозиции /3 = f- & - (х, f2 (х))) имеют вид (здесь в истинностную о.-д.функцию х& х2 вместо второй пере- менной подставлена функция /2 (/п (х)) (Q(l)=l, ?(Г+1)=х(Г), ,у(0 = *(0?(0- На рис. 3.20 и 3.21 представлены диаграммы переходов о .-д.функций /2 (х) и /з (х) соответственно. Пусть/у (х j, х2) - истинностная о.-д. функция реализующая ’’дизъюнк- цию”. Рассмотрим Щх) = fvtfz (*),/3(х) ) (рис. 3.22). Канонические уравнения /4(х) имеют вид <7!(1) = <?2(1)=1, qi(t+ 1)=х(0, /23) <?2(f + 1) = х(г), у (Г) = х (г) • q! (Г) V х (г) • q 2 (г). Покажем, что для любого t > 2 о.-д.функция /4(х) такова, что y(t) = = x(t- 1). В самом деле, y(t) = x(r)q1(r) V x(f)q2(t) = x(f)x (t - 1) V Vx(r)x(r — l) = x(r — 1). Таким образом, A(x) только при t = 1 отличается 172
от Gi(x). Однако, нетрудно видеть, что Gi(x) = /v(A(0), А(х)). Теорема доказана. Мы показали, что существуют Л-полные системы, состоящие из одного, двух и трех элементов. Эти системы не ’’избыточны”, т.е. из них нельзя выбросить какой-либо элемент, не потеряв при этом свойства Л?-полноты. Такие системы называют базисами. Более точно, если I — оператор замыка- ния на Р, то система М функций из Р называется /-базисом, если а) М - Лнолная в Р система и б) любая собственная подсистема М' С Мне являет- ся /-полной в Р. Для операторов замыкания, рассматриваемых в алгебре и в ряде функ- циональных систем, например в конечнозначных логиках, обычной бывает ситуация, при которой все базисы имеют одинаковую или, по крайней мере, ограниченную в совокупности мощность. Однако в случае /С-полноты для Р имеет место. Теорема 3.8 [32]. Для любого и > 1 существует К-базис, состоящий из п элементов. Доказательство. При п = 1 можно взять fu(xif х2), при п = 2 — систему G0(x) и /ш(х1,х2)- Пусть п > 2. Рассмотрим систему Вп ={бго(х), Ui(xi,x2),... ,un-i(xi,x2), un(x!, х2)} . Диаграмма функции у,(хь х2), i = 1,.. ., п, приведена на рис. 3.23. Автомат, вычисляющий Vjtxi,х2), i = 1,... ,п, — это автомат с безуслов- ными переходами, м состояниями, в z-м состоянии которого реализуется функция алгебры логики Xj Vx2, в остальных - xj. Нетрудно видеть, что /ш(х1г*г) = (и1(х1 >х2)>х2)> • • • ,х2),х2), поэтому система Вп К-полнз. Если из Вп исключить функцию (70(х), то в ней останутся толь- ко автоматы с безусловными переходами, которые, очевидно, не образуют К-полной системы. Если же выброшен элемент у,, и, то оставшиеся автоматы таковы, что все они при t = i обязательно находятся в состоянии, в котором реализуется функция алгебры логики, имеющая не более одной существенной переменной. Любая композиция таких автоматов, будет, очевидно, также обладать этим свойством. Теорема доказана. Можно показать, что для каждого п существует даже счетное семейство /f-базисов, состоящих из п элементов; при этом все функции, входящие в базисы, существенно зависят от всех своих переменных. Рис. 3.23 Рис. 3.22 173
Особую роль конечных X-полных систем показывает Теорема 3.9. Из любой К-полной системы можно выделить конечную К-полную подсистему. Доказательство. Если F = ... } — полная система, то, в частности, fu(x\, х2) G К (F), и в силу алгебраичности оператора К найдется конечный набор {,..., fig } функций из F, такой, что fu G К ,..., }). Отсюда в силу универсальности fu следует Х-полнота набора{/^, Теорема доказана. Следствие. Любая К-полная система содержит конечный К-базис. § 7. s-ПОЛНОТА Здесь мы продолжим сравнительное изучение операторов замыкания К и S, начатое в § 5. Напомним, что для любого множества функций М имеет место S(M) С К(М). Отсюда, в частности, следует, что любая S-полная система является Х-полной. Вместе с тем имеет место Теорема 3.10. Всякое ^-полное множество о.-д.функций бесконечно. Доказательство. Обозначим через Мп, п > 1, множество всех о.-д.функций из Р, вычисляемых автоматами с не более чем п состояниями. Пусть Нп — множество всех периодических (с предпериодами) последова- тельностей из нулей и единиц, у которых длины периодов образуют мно- жество чисел, разложимых в произведение вида , где все Pj, j. = 1, ..., m , — простые числа, не превосходящие п, а > 0, i: - = 1, ..., m, — произвольные целые числа. Покажем, что для любой функции f(xlt ..., xi ) из S(M„) и для любых 7t, ..., yt из Нп последовательность /( 71, •••> Vi ) также принадлежит Нп. В этом случае говорят, что функция f сохраняет множество Нп. В самом деле, если функция f принадлежит Мп, то она обладает этим свойством, так как входная последовательность авто- мата, вычисляющего f, а именно последовательность (*/1 (1) у2 (1) — ... 71 (1)), (71 (2) ... у i (2)), ..., элементы которой есть наборы длины I, имеет период г, равный произведению периодов последовательностей 71, 72, 7/, поэтому г = р\1 ... р^1 для некоторых Sj,..., sm. По теоре- ме 2.1 выходная последовательность имеет период г ' = г п', где п' < п t s' "* о® и, следовательно, г = р,1 р22 •... -р ™, что и требовалось доказать. Теперь индукцией по числу применений операций суперпозиции мы мо- жем показать, что утверждение теоремы выполнено для любой функции /(xj, ..., xk~) из S(A/n). Очевидно, нам достаточно проверить лишь действие операции подстановки. Пусть функции /г(х15 ...,xfci) и g (xki +1,..., xki +ki) сохраняют множе- ство Hk , и пусть у и ..., , 7^ +1 > 7k1 +ki — произвольные последо- вательности из Hk . Рассмотрим функцию /(x1,...,xfci+Jt2) = = h(Xi.., g(xki+l, ...,Xkl +k2), xi+l,..., Xki ). 174
По предположению индукции имеем +15 --> 'Ул, +fc,) = W енп и h(7i,-,7i-i , 7i, 7/+1 ,-,7kl )G/4- Поэтому f(7t, 72,—> 7kl+ki) ^Нп, что и требовалось доказать. Итак, мы показали, что любая функция из S(Af„) сохраняет мно- жество Нп- Пусть имеется конечная система функций F = {/j, — ,fs}. Очевидно, что для некоторого п0 F G Мп>. Поэтому всякая функция из F сохраняет мно- жество Нп<), следовательно, множеству S(F) не принадлежит, например, константная о.-д.функция, на выходе которой реализуется последователь- ность, не принадлежащая НПа. Поэтому F не является S-полной системой. Теорема доказана. Следствие. Существуют К-полные системы, не являющиеся ^-пол- ными. В силу этой теоремы всякий S-базис, если он существует, также бесконе- чен. Если бы имел место аналог следствия из теоремы 3.9, то можно было бы рассчитывать на получение S-базиса как подсистемы произвольно вы- бранной S-полной системы. Однако, справедлива Теорема 3.11. Существует ^-полная система, не содержащая ^базиса. Доказательство. Рассмотрим бесконечную систему функций ф = fj, ...,$2l), 1 = 1,2, ... }. Первая функция в этой системе — ’’функция Шеффера”, а функция i = 1, 2,..., задается канонической системой '?!(]) = О,= О, ?! 5 S 4k(t+ 1)= V (24) j = 1 2 J 5 5 5=1 Здесь мы отступили от правила обозначать переменные буквой х с ин- дексами, чтобы выделить некоторую группу переменных функции /}, и символами £1, ..., £2i обозначили переменные. В записи системы (24) ис- пользованы следующие сокращения. Пусть о1, а2,..., а2' — лексикографи- ческое упорядочение наборов из нулей и единиц длины i; тогда os = = (of, а2, ..., а,) — набор с номером $. Знак V обозначает дизъюнкцию по всем наборам, а qi при а/ = 1, qt при of =0. 175
Мы можем заметить, что переменные разбились на две большие группы: {х1; x{2i} — от этих переменных зависят функции переходов, но не зависит выходная функция, и (Д, ..., £ /} — от этих переменных зависит только функция выходов. Заметим, также, что при фиксированном значе- нии внутренних переменных qx,..., qt выходная буква определяется значе- нием только одной переменной £л, где s — номер такого набора «, ..., о*), что ask=qk, к — 1, i. Таким образом, в каждом состоянии *2=0 Рис. 3.24 автомата, вычисляющего функцию ft, реализуется функция алгебры логи- ки одной переменной. Кроме того, переход из состояния ($,, в но- вое состояние вполне определен значениями не всех переменных из группы {xt, ..., х/2>} , а лишь из подгруппы, состоящей из i переменных, однознач- но определяющихся по состоянию ). Именно, если s — номер на- бора (£t, ..., q{), то искомая группа переменных есть ....х(?-1)1+Д Диаграмма автомата функции j\ (хь хг, Д, ^2) приведена на рис. 3.24. Покажем, что система Ф является S-полной. В самом деле, для любого натурального т множество Д,. ..,fm}) содержит любую о.-д.функ- цию, вычисляемую автоматом с не более чем 2"1 состояниями. Докажем этот факт, из которого и будет следовать S-полнота системы Ф. Пусть /(Xi, ..., х„) вычисляется автоматом с не более чем 2т состояниями. Тогда она может быть задана канонической системой с т внутренними перемен- ными .......qm и начальным состоянием (0, 0,..., 0). Представим функции переходов и выхода этой системы в виде их разложения по переменным <7i> Чт ' Q1(l) = 0,...,Qm(l) = 0, 2m 4k(t+l)= V q°\t)-... q^CO^lCxtCt), ...,x„(0), k = l,...,m, 5=1 2"1 \ s as y(t)= V q°‘(t)-...qmm(f)-tp\x1(f),...,xn(t)). s = 1 (25) Нетрудно видеть, что если мы возьмем истинностные о.-д.функции , Хп) , ^(Xj , ..., х„), у которых выходными функциями являются 176
функции алгебры логики ^(Х],..., x„), i//,s(x1, ..., x„), = 1, ...,т, s. = = 1,2т, соответственно, то f (Х\, ..., Хп) = fm (?1(X!.хп), ... ~1т ~ ~1т ...,‘Рт (хь...,Х„), lh(Xi, ...,х„),1Г (хь ..., х„)), где функция % подставляется вместо переменной а функция ф1 — вместо переменной . Равенство следует непосредственно из рассмот- рения канонических уравнений. Итак, Ф - S-полная система. Предположим, что она содержит S-базис Ф’. Тогда Ф1 обязательно содержит /ш(х1,х2), так как остальные функ- ции вычисляются автоматами, в каждом состоянии у которых реализуется функция одной переменной. Как только что было показано, система Ф об- ладает свойством fi G 2({/ш,/у}) ПРИ г < / • Но Ф’ обязательно содер- жит пару функций ft,fj из Ф таких, что i </.поэтому Ф’ \{ft} — снова S-полная система, что противоречит определению базиса. Теорема доказана. Вместе с системами типа только что рассмотренной Ф можно указать и S-базисы. Преподе чем доказывать зто, введем одно понятие [32], которое нам по- надобится не только для теоремы ‘ о S-базисах. Будем говорить, что пере- менная Xj о.-д.функции /(xi, ..., хп) обладает F-свойством на сверхслове у — 7 CD 7 (2) —, если существует такое t0, что при х/ = у и при любых значениях 71,...,71_ 1;7f+^других переменных значение/(71,... , yi-\, 7/+1,.... Уп) ~ & таково, что (1(f) = y(t) при t > Го- Другими словами, последовательность у, поданная на х/-й вход автома- та, после некоторого числа тактов ’’отключает” все остальные входы и ’’превращает” автомат в проводник, соединяющий i-й вход с вы- ходом. Обобщая зто понятие, скажем, что переменная xt функции f(xlt ...,х„) обладает F-свойством на множестве Г последовательностей, если она обла- дает F-свойством на каждой последовательности из Г. Введенное понятие позволяет рассмотреть одну интересную конструк- цию [32], дающую возможность как бы ’’прятать” один автомат внутри другого, и ’’извлекать” его с помощью подходящего ’’ключа”. Лемма 1. Для любой о.-д. функции f(xit..., хп) и любой периодиче- ской последовательности у существует о.-д.функция f’(xi, .... хп, хп+1) такая, что: a)/'(xi,...,xn,7)=/(xi..х„); б) переменная х„+1 функции f’ обладает F-свойством на любой после- довательности, отличной от у. Доказательство'. Рассмотрим схему (рис. 3.25). Здесь подсхема, отмеченная символом у, реализует константную о.-д.функцию h (х) = у; подсхема, отмеченная символом = , реализует истинностную о.-д.функцию р(хьх2) = XjX2 V XiX2; наконец, символом и отмечена истинностная о.-д. функция о(хь х2, хэ) = xtx3 V х2х3. Схема ’’работает” следующим образом. Пока на вход х„+\ подаются разряды 7(0> 7(2), .... 7($), — по- 12. В.Б. Кудрявцев 177
Рис. 3..25 следовательности р0 = О, следовательности у, на третий вход подсхе- мы v поступает 1 и на выходе всей схемы реализуется значение выхода подсхемы f. Как только значение на п + 1-м входе не сов- пало с очередным разрядом y(t 0) последова- тельности у, начиная с момента t = t0 + 1 и во все последующие моменты на третий вход подсхемы и поступает 0, и поэтому на выхо- де всей схемы реализуется значение п + 1-го входа. Лемма доказана. Будем писать f' = R (/, 7), если /' удов- летворяет доказанной лемме для данных /и 7. Теорема 3.12. В Р существуют h-ба- зисы. Доказательство. Для построения S-базиса воспользуемся системой Ф = = {/ш, Л, А, • • •} из предыдущей теоремы. Рассмотрим систему Ф = где — функция Шеффера, а Д. строятся следующим образом: 1) S-замыкание S( { ^ } ) содержит, оче- видно, две константные о.-д. функции — по- 0, . . . и pi = 1, 1, ... . Пусть Z0 - мно- жество всех последовательностей, отличающихся от р0 и рг лишь в конечном числе разрядов (включая сами последовательности ро и pj). Возьмем последовательность 70 G Z°, а именно 7а = Ро, и рассмотрим 71 =Я(Л,7о), Аеф. Нетрудно видеть, что А е }). 2) Пусть уже построены функции/j,...,/,-. Рассмотрим множество Z' всех последовательностей, реализуемых константными о.-д.функциями, принадлежащими S-замыканию S ({/щ, 71, • • ,//})- Пусть 7,- GZ' и 7, ^Z1-1. Тогда в качестве /, +1 возьмем функцию Л + 1 =Д(Л + 1>%)> Я + 16Ф- Покажем, что Ф есть S-базис. Для любого к fkE S({/m,7i, • - ,7*}), fk G Ф, и в силу S-полноты Ф, система Ф также S-полна. Из Ф нельзя исключить /ш, так как остальные функции из Ф вычисляются автоматами, у.которых в каждом состоянии реализуется функция, имеющая не более одной существенной переменной. Рассмотрим множество функций Ф(- = = {/ш,71,... ,fi } . По определению множества последовательностей Z' каждая функция цз Ф, ’’сохраняет’^'. С другой стороны, каждая из функ- ций множестваФ’. = {А+2х/;+з> • • •} также сохраняет множество Z*. В самом деле, при к > 2 fi + k- R(fi+k, 7i+k), где 7i+k Z‘ + kJi ~и’ следовательно, 7/ +1 4 Z‘. Таким образом, для любого i > 1 система Ф\{ /,•} не является S-полной. Теорема доказана. 178
§ 8. Л-ЗАМЫКАНИЕ Пусть т — натуральное число h/i(xj ,... ,хп) - некоторая о:-д.функция. Обозначим через т [/i (х i,..., х„) —ограничение этой функции на множест- ве слов длины не больше т. Таким образом, для любого набора слов а2, ... длины, не большей т, т [Л («1,..., ап) ап). Считается, что на словах большей длины словарная функция т [/) не определена. С числом т мы можем связать некоторое отношение эквивалентности RT на множестве всех о.-д. функций Л Именно, две функции /1(х1, . . . , х„) и ... ,х„) с одинаковым множеством переменных назовем т-эквива- лентными и обозначим fi RTf2, если т [Л = T[f2. Теперь определим опера- тор замыкания 1Т: для всякого множества М функций из Р, множество 1Т(М) будет содержать все функции, т-эквивалентные функциям из М. Очевидно, что оператор 1Т удовлетворяет требованиям для операторов замыкания. Оказывается, с точки зрения 7-эквивалентности операторы замыкания S и К, рассмотренные нами ранее, совпадают. Теорем а,3.13. Для любого множества М СР и любого т > 1 Г(К(МУ) = = Г(2(Л/)). Доказательство. Очевидно, что достаточно показать, как в этом случае можно ’’устранить” обратную связь. Пусть функция^(х2,. .. ,хп + 2) получается изДх!,.. ., хп, хп +1) применением операции обратной, связи по переменной х j. Рассмотрим суперпозицию вида g'(x2,...,x„ + 1) = = f(f-f{x2,x2,x3,... ,ХП + Х),х2,. .. ,х„ +1),. . ,),Х2, . . . ,Х„ + 1) г раз (26) и соответствующу схему (рис. 3.26). Так как выход f зависит со сдвигом от переменной Xj (условие приме- нимости обратной связи), то на выходах всех элементов, отмеченных символом f (и реализующих функцию /), при 7=1 появится то же значе- ние /3(1), которое появляется на выходе схемы, реализующей функцию g(x2,. .. ,х„ + 1). Это значение /8(1) поступит на входы 7 — 1 нижних эле- ментов. Поэтому при 7=2 они будут работать так же, как элемент f в схеме функции g. Затем значение выходов этих элементов /3(2) поступит на вход т—2 нижних элементов схемы и т.п. Таким образом, на выходе всей схемы (т.е. на выходе самого нижнего элемента) при 7 = 1, 2, . . . , 7 будут реализованы те же значения /3(1), /8(2),.. ., /8(т), которые появляются на выходе схемы g. Следовательно, суперпозиция (26) т-эквивалентна функции g(x2,.. . ,х„ + 1). Теперь, если h(x j,..., х„) — некоторая функция из К (М), то, заменяя всякий раз операцию обратной связи многократными применениями опера- ций суперпозиции так, как это только что было описано, мы получим функцию 7г'(х^ ... ,х„)из ~Е(М), т-эквивалентную функции h(xl,. .. ,х„). . Отсюда 1Т(К(М)) С ZT(S(M)). Обратное включение очевидно. Теорема доказана. Эта теорема говорит о том, что если мы хотим ’’смоделировать” работу автомата V на конечном отрезке времени 1 < 7 < Т, т.е. построить автомат V, который на этом отрезке времени работает так же, как V, то мы 12* 179
можем, вообще говоря, обойтись без операции обратной связи. При этом, конечно, ’’сложность” моделирующего устройства может возрасти — число затраченных на его построение элементов будет расти с ростом Т. Будем говорить, что функция/(xj,...« х„) т-выразима через множест- во М функций из Р, если /G/T(S(Af)) (не путать с /т-выразимостью, порожденной оператором замыкания /т). Скажем также, что М есть т-полное множество, если Р = /T(S (М) ). Таким образом, мы определили оператор замыкания т такой, что т(М) = = /T(S(Af)). Можно показать, что /T(S(Af))= S(/T(Af)). Теперь мы можем ввести новый оператор замыкания, который далее будет изучаться нами наряду с операторами К и S. Скажем, что функция /(xi,... , х„) А-выразима через множество М, если для всякого т > 1 функция f(xi,... ,х„) т-выразимачерезМ. Такое определение выразимос- ти, очевидно, задает на Р оператор замыкания, который мы обозначим через А (от слова аппроксимация). Нетрудно видеть, что А(М)= П Г(£(М)) = П т(М). Т = 1 Т~ 1 Как обычно, скажем, что М есть A-полное множество, если A (Af) = Р. Теорема 3.14. Всякая К- или ^-полная система является А-полной. Справедливость этой теоремы следует прямо из определения Л-полноты и из того, что /т (К (М)) = IT(S (М)). Тео рем а 3.15. Существуют конечные A-полные системы, а также такие бесконечные A-полные системы, которые не содержат конечных A-полных подсистем. 180
Доказательство. Первое утверждение следует из предыдущей теоремы — достаточно взять любую конечную А?-полную систему. Для доказательства второго рассмотрим систему функций Н = - t/ш, i = 1, 2, ...где (а) = 0а(1). . ,а(/ — 1)0 ... 0 для а = = а(1).. ,а(/).. a(S), т.е. hj(x) /-эквивалентна задержке Go(х), но после t = / на выходе /i,(x) появляются только нули. Нетрудно видеть, что систе- ма функций Нт = {/ш, hif ..., hT_i, hT} т-полна, но не является т + 1-пол- ной, откуда и следует утверждение теоремы. Теорема доказана. Заметим, что бесконечная система Н из этой теоремы не является АГ-пол- ной и не Является S-полной. Более того, из существования этой системы следует, что оператор А -замыкания не является алгебраическим. Замечание. Оператор замыкания А не алгебраичен. Действительно, универсальная А"-полная функция fu (xj, х2), сущест- вующая в силу теоремы 3.7, обладает тем свойством, что/U1(xb х2) &А(Н), но для любой конечной подсистемы/7' системы/7имеет место/Ul(x!,x2)^ £ А(Н'). В противном случае такая подсистема была бы Л-полна, так как A({fUi(Xi,x2)})=P. А?-универсальная функция /и1(хь х2), очевидно, является и Л-универ- сальной. Вместе с тем имеет место Теорема 3.16 [9, 17]. Существует A-универсальная функция двух переменных /л(х,, х2) с двумя состояниями, которая не является К-уни- версальной. Доказательство. Рассмотрим о.-д.функцию/л(хь х2), канони- ческие уравнения которой имеют вид </(!)=!, q(t+ l) = (xi(0 Vx2(T))^(r), .Я0 = (*i (О v *2(0) • </(0 v (*i(0 v х2 (t))q(t). Диаграмма автомата, вычисляющего fA(xt, х2), приведена на рис. 3.27. Аналогично доказательству теоремы 3.7 можно показать, что /щ(Х1, х2 )€ G Л({/л}). Покажем, что G\(x) G Л({/л}). Пусть ^(х) = /л(1,х). Под- ставим ifii в истинностную функцию /+(хь х2) - ’’сумматор” - вместо переменной х2: <р2 ~ f+(x, 2 (х)). Канонические уравнения (х) имеют вид </(1)= 1, 4(7+ 1) = х(Т) q(f), y(t) = q(t), а диаграмма переходов изображена на рис. 3.28. Очевидно, о.-д.функция <р2 (х) 2-зквиьалентна о.-д.функции G\ (х). Рассмотрим о.-д.функции цс3 (х), (х),..., построенные по следующим правилам: а) Пусть для некоторого к уже построена о.-д.функция <pfe(x). Рассмот- рим о.-д.функцию ^(х) = х°к V <рк(х), полученную подстановкой о.-д.функции <рк(х) вместо переменной Xi в истинностную о.-д.функцию 181
х°к М Xi, где ( 0 при к четном, °к = - ( 1 при к нечетном. б) Подставим о.-д.функцию ук(х) вместо переменной х в о.-д.функцию 1р2 (х). Получим новую о.-д.функцию Vk+l(x) = t2(v'k(x))- Индукцией по к можно показать, что канонические уравнения о.-д.функции ipk + 1 записываются следующим образом: р1(1) = ^(1)=... = ^(1)=1, Qi(t + l) = x(r) qt(t), q2(t+ 1) = (х(0 V 41(0)42 (О, Qi (t + 1) = V q,_ j (0)^(0, 4*(?+l) = (xa*(0V4*-i(0)4*(0, .^+1(0 = ?*(0- Исходя из канонических уравнений, можно установить следующие свой- ства о.-д.функции tpk +i: 1) если 4,(0 = 0, то q,{t + 1) = 0, i = 1,2,. .. , к; 2) если 41(0= • . = ?/_1(0 = 0, ?,(0= • ••= ?*(')= 1, то при хст,'(0 = 0 41(Г+ 1)= . . . = 4,_1(Г+ 1) = 4,(Г+ 1) = 0, ^+i(r+1)=--. = 4ka+1)=l, т.е. о.-д.функция +1 переходит И новое состояние; при x°l{t) = 1 + 1) = 4/(0, 7 = 1, - • • Л, т.е. о.-д.функция ipk +1 остается в том же состоянии. Используя свойства 1) и 2) о.-д.функции <рк+1, нетрудно убедиться в справедливости следующих свойств автомата, вычисляющего ipk +1: Рис. 3.27 Рис. 3.28 а) автомат имеет ровно к + 1 внутреннее состояние q°, ... , qk, причем одно из них является тупиковым; диаграмма его изображена на рис. 3.29; б) кратчайшее входное слово, переводящее автомат в тупиковое состоя- ние, имеет длину к. Пусть /+(х!,. . . , хк) — ’’сумматор” с к входами: _у(0 = *1(0+ •. . + х*(г). 182
Рис. 3.29 •*-(м рис. з зо Рассмотрим для каждого к = 2,3, 4,... функцию /-I(f+(V52W, • .V’fc + lOO) при к нечетном, при к четном. Диаграмма автомата, вычисляющего, например, функцию Ф3 изображена на рис. 3.30. Заметим, что Фк_ Дх) ^-эквивалентна Gt (х). В самом деле, рассмотрим схему, реализующую ФЛ _ j (см. pic. 3.30). Если х(1) = 1, то все подсхемы останутся в начальном состоянии. Если х(1) = 0, то подсхема <р2 перейдет в тупиковое состояние и на дальней- шую работу схемы не будет оказывать влияния. Вообще, для некоторого t либо все элементы схемы останутся в старом состоянии (при х(т) = = х(Т — 1)), либо очередной элемент перейдет в тупиковое состояние (приx(t) Фx(t — 1)). При этом сумма значений на выходах подсхем <р2,. .. . .., <рЛ+1 поменяется. Так как кратчайшее слово на входе, которое пере- водит все i = 2, 3, .. ., к + 1, в тупиковое состояние, имеет длину к, то Ф^-Дх) ^-эквивалентно G4(x), что и требовалось. Теорема доказана. § 9. ПРЕДПОЛНЫЕ КЛАССЫ Если задан оператор замыкания I, то множество М называется 1-пред- полным, если выполнены условия: а) 1(М)^Р; б) для любой функции имеет место I(M U{/}) = Р. Из определения следует сразу, что /-предполное множество является /-замкнутым. В самом деле, если М =# 1(М), то существует/ / € 1(М) и, следовательно, Р = I(M U { /}) = 1(М) =# Р. Подчеркивая замкнутость 183
/-предполного множества, будем называть его также 1-предполным классом. Рассматривая множество всех /-замкнутых множеств, не равных Р, как частично упорядоченное множество относительно включения (т.е. Aft предшествует М2, если М2 £ М2), мы можем утверждать, что/-предполные классы есть максимальные элементы в этом частичном порядке. Множество всех /-предполных классов мы будем рассматривать в связи с задачей об /полноте. Оказывается, что для некоторых операторов замыкания вместо множества всех замкнутых классов решение задачи о полноте требует рас- смотрения лишь множества всех предполных классов, подобно тому как в алгебре логики для решения задачи о полноте достаточно рассмотреть (ко- нечную) систему предполных классов функций алгебры логики [63]. При этом, как следует из теоремы Поста, множество М функций алгебры логики является функционально полным тогда и только тогда, когда М целиком не содержится ни в одном из предполных классов. В этом случае, как мы видам, система предполных классов дает нам возможность ука- зать критерий полноты. Переходя вновь к о.-д.функциям, рассмотрим для данного оператора замыкания / множество Bj всех /-замкнутых множеств о.-д.функций. Пусть со, со С Bj, — некоторая система /-замкнутых классов. Система со на- зывается I-критериальной, если для произвольного множества М о.-д.функ- ций I(M) = Р тогда и только тогда, когда для любого NE. со имеет место M%N. Оказывается, для некоторых операторов замыкания, в том числе для К и А, множества всех К-предполных и Л-предполных классов соответственно являются критериальными системами. Для оператора S вопрос остается открытым. Вообще, для произвольного алгебраического оператора / имеет место Теорема 3.17 [27]. Пусть I - алгебраический оператор замыкания. Если в Р существуют конечные I-полные системы, то множество всех 1-пред- полных классов образует критериальную систему. Следствие. Система К-предполных классов образует К-критериаль- ную систему. Однако критериальность системы Л?-предполных классов не дает эффек- тивного решения проблемы /С-полноты. Теорема 3.18 [32] .Мощность множества всех К-предполных классов равна континууму. Доказательство. Q.-д.функцию/(х), отображающую всякое сверх- слово в одно и-то же сверхслово у, будем обозначать тем же символом у, если зто не приводит к недоразумениям, и такие о.-д.функции будем назы- вать константными. Если Г — множество периодических (с некоторым предпериодом) последовательностей из 0 и 1, то ]Г[ — множество всех последовательностей, отличающихся от последовательностей из Г в конеч- ном числе разрядов. Таким образом, для любой 0 6 ]Г[ найдется у G Г такая, что /3 и у отличаются в конечном числе разрядов. Пусть Г ={ = 0 ... 010 ... 01 ..., i = 1, 2, 3, .. .}. Нетрудно видеть, что для любых двух подмножеств Tj, Г2 £ Г, если Г1 =# Г2, то ] Ti [ =# 184
=# ] Tj [. Функцию f(xi, ..., хп) назовем почти константой, если сущест- вуют число tf и последовательность 0, 0 = 0(1) 0(2). .. .такие, что для лю- бых входных сверхслов , ..., ап, если f(ar ап) = у = 7(1)?(2).. ., то 7(f) =0(t) при t > tf. Очевидно, всякая константная о.-д.функция яв- ляется почти константной. Пусть Г* С Г, Г'=#= ф, — произвольное подмножество, и В = ] Г' [. Рассмот- рим множество о.-д.функций U(B), которое содержит: а) всякую почти константную функцию, сохраняющую множество В-, б) всякую функцию, которая имеет переменную, обладающую F-свойст- вом на множестве В. Лемма 1. Множество U(B) К-замкнуто. Доказательство. Очевидно, достаточно проверить лишь операции подстановки и обратной связи. Пусть f (хь ..., Xj_j, Xj+j,..., xn,x„+l,... • > ^n+fc) ~ ^(xi, ..., Xj _ j, g (xn+j, . .., xn4-, Xj+j, ..., xn), где h,g G G U(B). Если h — почти константная, сохраняющая В, функция, то, очевид- но,/ обладает тем же свойством. Пусть это не так, тогда у h есть перемен- ная Xj с F-свойством на В. Если / =#= i, 1 </ Си, то у/ есть также переменная Xj с F-свойством на В. Если j = i, то рассмотрим#. Если g — почти констант- ная, сохраняющая В, функция, то / — также почти константная, сохраняю- щая В, функция. Если же g имеет переменную xn+s, 1 <s с F-свойст- вом на В, то переменная xn+s функции / также, очевидно, будет обладать F-свойством на В. Рассмотрим теперь операцию обратной связи. Если f(Xj, .. ., х„) — поч- ти константная, сохраняющая В, функция, то операция обратной связи, примененная к /, даст функцию /', также обладающую этим свойством. Если же переменная х( функции / обладает F-свойством на В, то операция обратной связи не применима к этой переменной. В случае применения об- ратной связи к другой переменной, мы, очевидно, получим функцию /', у которой переменная х,- снова обладает ^-свойством на В. Лемма доказана. По теореме 3.17 17(B) содержится в некотором предполном классе U(B). Покажем, что при Bj ¥= В2 имеет место U(Bj) =#= С7(В2) • Отсюда, очевидно, будет следовать утверждение теоремы, так как множество Г имеет конти- нуальное семейство подмножеств Г' С Г, Г,:# ф и для каждого подмножест- ва Г* С Г взаимно однозначно указывается множество В = ] Г'[- В самом деле, классы U(Bj) и U(B2) содержат множества U(BX) и U(B2) соответственно. Заметим, что для любого элемента у G В2, у $'Bj, K(U(Bj) U{7)) = Р, так как для всякой функции/G Рмножество U(B\) содержит функцию /' =/?(/, 7), и, следовательно, / , 7}). Поэтому у G U(B2), у Ф U(Bj), и U(BX) =#= U(B2). Теорема доказана. Если ограничиться рассмотрением только конечных F-полных систем, то оказывается справедливой Теорема 3.19 [32]. Существует счетная система К-предполных клас- сов, критериальная относительно проблемы К-полноты конечных систем функций, и не существует конечной системы К-предполных классов с этим свойством. Доказательство. Рассмотрим множество L всех F-неполных ко- нечных систем о.-д.функций. Это множество счетно. Для каждой системы 185
S функций, принадлежащей L, найдется /С-предполный класс, содержа- щий S. Очевидно, что, взяв по одному Af-предполному классу для каждой системы из L, получим множество /С-предполных классов, удовлетворяю- щее условиям теоремы. С другой стороны, для любой конечной системы /С-предполных классов { , .. ., irs} найдется /С-предполный класс тг5 + 1, отличный от каждого из классов тг,-, i = 1, ... , s. Для каждого i = 1,..., s класс ns +, содержит функцию тг,-. Поэтому набор функций {f \ ,..., fs} не содержится целиком ни в одном из классов tti , . . . , тг5 и вместе с тем не является /С-полным. Теорема доказана. Как станет ясно из результатов следующего параграфа, нельзя выбрать счетное критериальное для конечных систем функций множество Af-пред- полных классов, которое доставляло бы эффективную процедуру распоз- навания К -полноты конечных систем. Другими словами, если М — крите- риальная система Х-предполных классов, то не существует алгоритма, который бы для любой функции f проверял, содержится ли f хотя бы в одном из классов системы М. Тем не менее понимание того, как устроены /Спредполные классы, дает полезную информацию для решения проблемы /Сполноты с различ- ными ограничениями на выбор систем функций, проверяемых на .К-полноту. Для S-полноты можно также доказать континуальность множества всех S-предполных классов. Однако вопрос о критериальности этого множества остается открытым. В частности, неизвестно, содержится ли всякое S-замк- нутое, отличное от Р, множество функций в некотором S-предполном классе. Оператор Л-замыкания не алгебраичен, поэтому к нему теорему 3.17 применить нельзя. Лемма 2. Если М - A-замкнутое множество, отличное от Р, то для некоторого т найдется т-замкнутое множество, отличное от Р, которое содержит М. Доказательство. Напомним, что т-замкнутое множество D — это такое множество, что D = /T(S(Z))). По определению Л-замкнутого мно- жества имеем М = A /T(S(Af)). Если для всех т I T(S(Af)) = Р, то и т = 1 М-Р, что противоречит условий леммы. Поэтому найдется такое т0, что I т° (Х(М)) Ф Р. Очевидно, что I т° (S(Af)) содержит М и является т0-замк- нутым множеством, так как/T°(S(/T°(S(Af)))) = / Т°(/Т|> (S(S(Af)))) = = /T°(S(Af)). Лемма доказана. Лемма 3. Всякое т-замкнутое множество, отличное отР, содержится в некотором т-предполном классе. Доказательство. Оператор т-замыкания алгебраичен; кроме того, существуют конечные т-полные системы, например любая /С-полная система является т-полной для любого т. Поэтому лемма следует из тео- ремы 3.17. Следствие. Для всякого A-замкнутого множества М, отличного от Р, найдется такое т, что М содержится в некотором т-предполном классе. Лемма 4. Всякое т-замкнутое множество является А-замкнутым. 186
Доказательство. Пусть М - т-замкнутое множество, т.е. М = = IT(S(Af)). Рассмотрим А-замыканиеМ: А(М) = П Ik (S(/r(S(3f)))) = П /*(/т(2(М))). к = \ к = 1 Заметим, что для Л > т, для любого множества^/' о.-д.функций имеет мес- то 1к’(Г(М')) = Г(М'),а дляЛ< т-1к(Г(М')) Э Г(М'). Поэтому А(М) = = 1Т(2(М)) = М. Теорема 3.20 [9] .Для любого т всякий т-предполный класс являет- ся А-предполным и всякий А-предполный класс является для некоторого т' т'-предполным. Доказательство. Пусть М - т-предполный класс. Тогда по лемме 4 А (М) =М. Вместе с тем, можно показать, что из т-предполноты М следует S-предполнотаМ. Таким образом, М - А -предполный класс. Пусть теперь М - А -предполный класс. Тогда по следствию из леммы 3 для некоторого т найдется т-предполный классМ', содержащий М. Как только что было показано, М' - А-предполный класс, поэтому М'=М, что и требовалось. Теорема доказана. Следствие 1. Множество всех А-предполных классов образует А-критериальную систему. Доказательство. Утверждение следует из того, что всякое Я-замкнутое множество, отличное от Р, содержится в некотором Л-пред- полном классе. Таким образом, Л-критериальную систему можно получить, рассмотрев объединение UZ?T систем т-предполных классов RT по всем т. 7 Для дальнейшего нам понадобится следующее понятие [63]. Пусть LQP - некоторое множество функций. Будем говорить, что функция /(%!,.. . , хп) сохраняет множество/,, если для любых п функций Й1(хп,... .. ,,XiWi),. . . ,hn(xnl,.... xnntn) из£ функция f(hx(xXi,. . . , х1Ш1),... ..., hn(xnX,.. ., хпгПп)) принадлежит L. Через PL обозначим множество всех о.-д.функций, сохраняющих множество L. Лемма 5. Для всякого множества L имеет место Z(PL) = PL. Доказательство. Заметим, что Р^ содержит функцию f (х) = х; поэтому достаточно показать^ что функция f(fx,. . . ,fn) принадлежит PL , если f и fi,... ,fn принадлежат PL. Пусть hx j, ..., hnmn — произвольные функции из L. Тогда gj = /[ (йп,... ..., him ,), gn = fn(.hni, •••, hntn „) принадлежат L, и, следовательно, f(g 1, —,gn) ^L, что и требовалось. Будем говорить, что о.-д.функция f т-сохраняет множество L, если для любых hn из L имеет место f(hhn)&r{L). Обозначим через Р[ множество всех функций, т-сохраняющих мно- жество L. 187
Лемма 6. Для любого L 1Т(Р£ ) = Р[ Доказательство. Пусть ip (xj, ...,х„) € 1Т(Р[ ) Можно считать, что в Р£ содержится функция tp'(xi, ..., х„) такая, что ^(х1( ..., х„) € G /Т({(р'(Х1, ..., х„)}). Поэтому для произвольных о.-д.функций ^hx,...,hn)ei\{g>\hx..hn)}). Но если Л1, ..., hn G L, то y\hi, ...,hn) G/T(Z). Поэтому —,h^ G G IT (7T (L)) = 1T(L), и, следовательно, Ir (P^ ) G PLT. Лемма доказана. Лемма 7. Для любого L ^(Р^ ) — Р[ Доказательство. Заметим, что /(х) = х принадлежит PJ. Пусть /; А, .... fn £Р[ ийп> hntnn е L. Тогда fi(hib him.) е r(L). Поэтому в L найдется функция gi(xilt ...) такая, что А(/г,л,-!,...)})• Но тогда л/ь А, •', fn)GiT({f(gi, g2.gn)Y>с /т(Л(£)) =Г(Й, что и требовалось. Замечание. Для любого L множество Р/ является т-замкнутым. Теорема 3.21 [9]. Для всякого т > 1 имеется только конечное число т-предполных классов. Доказательство. Зафиксируем натуральное число т и рассмот- рим множество Fx о.-д.функций, зависящих не более чем от двух пере- менных из набора { хь х2} и таких, что для всякой /(хь х2) из FXlt х2, для всякого t > т и для любой пары слов at, а2 длины t, если f(ax, а2) = = 0 =0(1) 0(2) ... 0(f), то 0(Г) =0. Всякая функция изР^.х, вычисляет- ся автоматом не более чем с 4Т + 1 состоянием. В самом деле, этот автомат при t > т независимо от входного слова оказывается в состоянии, в кото- ром реализуется функция, тождественно равная нулю. Входной алфавит у него состоит из 4 букв, поэтому до момента т автомат может побывать не более чем в 4Т состояниях. Теперь, ’’размещая” всеми способами в этих состояниях 16 функций ал- гебры логики от двух переменных, получим, что । < i64T + i. Пусть V — {vt, ..., Uj} — система всех таких подмножеств множества Fxlt хг,которые удовлетворяют условиям: для всякого i = 1, ...,г. a) Vj С Р„., т.е. каждая функция из и, т-сохраняет множество и,; б) функции gi (хьх2) и g2 (хь х2), т-эквивалентные функциям xt и х2, принадлежат и,-; в) V, ^FXl, х2- Покажем, что если М — т-замкнутое множество, отличное от Р, то най- дется номер i такой, что М СР»., G V. Отсюда в силу конечности V по- лучим утверждение теоремы, поскольку разные т-предполные классы со- 188
держатся, очевидно, в разных PTVи всякий т-предполный класс содержит- ся в некотором Р. Пусть М — т-замкнутое множество, т.е. Г (S(Af)) = МФР. Рассмотрим множество М = /т ( S(М U {g ,, g2})). Очевидно, что М также т-замкнуто и М Ф Р. Пусть теперь М’ ~ М Ci Fx х . Отметим свойства М': а) М' С Р^ i. В самом деле, в силу S-замкнутости множества М каждая функция из М’ сохраняет множество М'; б) М ’ содержит g j и g2; в) М* Ф F* , Хг, в противном случае М = IT (М) = Р, что противоречит условию. Таким образом, М' - одно из множеств системы V, М' = и,- для неко- торого i. Теперь осталось показать, что М С P^t, т.е. что каждая функция из М т-сохраняет множество М*. Действительно, предположим, что для некото- рых h 1, ...,hn £М' и /(%!,. ,.,xn) GM выполнено ф(х2,хг) = В силу S-замкнутости М функция ф(Х1,х2) содержится в М. -В силу /т-замкнутости АГ всякая функция, /^эквивалентная функции ф(Х1,х2), содержится в М, в том числе и функция i//(xb х2) такая, что для любого t > т и для любой пары слов а2 длины t, если а2) = 0 = = 0(1) ... j3(r), то 0(f) = 0. Но такая функция ty’(xXrx2) содержится в Fxl>Xx’ поэтому ф’(*1,х2) М' и ф(х1(х2) /т ({i//'(xi, х2)}) С с/т(м').- Таким образом, f(x2,..., х„) т-сохраняет М', что и требовалось. Теорема доказана. Теорема 3.22 [9]. Проблема т-полноты конечных систем о.-д.функ- ций алгоритмически разрешима. Доказательство. Нам надо указать алгоритм А т, который, бу- дучи применен к произвольной наперед заданной конечной системе о.-д.функций, давал бы ответ на вопрос о т-полноте этой системы. Пусть (fi, ) - некоторая система о.-д.функций. Для данного т в силу преды- дущей теоремы множество т-предполных классов конечно, и они в совокупности образуют критериальную систему. Кроме того, из описания этих классов, которое содержится в доказательстве теоремы 3.21, следует, что для любого т-предполного класса Nи для любой о.-д.функции f эффек- тивно проверяется, содержит класс N функцию f или не содержит. В самом деле, N— это класс Р„. для некоторого i, следовательно, достаточно прове- рить, верно ли, что f т-сохраняет множество и,-. В свою очередь, в силу ко- нечности множества и,, а также в силу того, что /т-эквивалентность двух о.-д.функций проверяется на конечном множестве входных слов длины не более чем т, проверка т-сохранения множества д,- может быть проведена эффективно. Таким образом, конечная система о.-д.функций {/i, f*} полна тогда и только тогда, когда для любого 1 < i <5 найдется 1 </ такое, что /у Р %.. Теорема доказана. 189
§ 10. АЛГОРИТМИЧЕСКАЯ НЕРАЗРЕШИМОСТЬ ЗАДАЧ О К- И А-ПОЛНОТЕ Важнейшим случаем в задачах о полноте является случай конечных си- стем функций. При этом естественно стремиться к тому, чтобы для фикси- рованного оператора замыкания I указывать способ, который поз- волял бы проводить проверку /-полноты любой конечной системы функций. Существование счетных критериальных систем для операторов К и А, казалось бы, не исключает того, что удастся такие способы указать. Осо- бенно это связано с 4-полнотой, поскольку здесь критериальная система является в известном смысле рекурсивно перечислимой, — можно, последо- вательно увеличивая т, давать финитное описание конечных систем RT 4-предполных классов, при этом проблема вхождения в каждый из клас- сов RT для произвольной функции алгоритмически разрешима. Однако, как было показано соответственно в [30] и [9], проблемы /С-полноты и 4-полноты конечных систем являются алгоритмически неразрешимыми. При этом в [9] приведена единая конструкция доказательства обоих этих фактов. Мы докажем алгоритмическую неразрешимость проблемы К-пол- ноты, используя для этого упрощение конструкции [9]. Приведем некоторые факты из теории алгоритмов [38]. Однородная система продукций Поста — это тройка Т = (D, V,w.) , где D= {di, dp} — конечный алфавит, V <ZD'AD*, V = (иi,..., vp }-мно- жество пар вида v( = (d^Rj), d, G D, R{ G D*, w > 1 — натуральное число. Будем говорить, что Т применима к слову £ G D* называть слово G D* результатом применения Т к £ и обозначать %' — T(i-), если £ = d^d^ ... djk> k> w, и g' == d, ... dikRf . Таким образом, у сло- ва £ ’’стираются” первые w букв, и к нему приписывается слово Rt, кото- рое соответствует букве d^ в паре G К Если k< w, то Тнеприменима к слову %. Будем называть слово 1? Т-продукцией слова £, если существует конечная цепочка слов £i, ..., £s, такая, что h = I, = т? и £1+1 = = Hh), i = 1.....s-1. Таким образом, множество т (£) всех Т-продукций данного слова £ об- разует последовательность, первым элементом которой является само слово и каждый элемент последовательности есть результат примене- ния Т к предшествующему элементу. Если эта последовательность конечна (последнее слово имеет длину, меньшую w), то будем говорить, что при применении к слову £ система Т останавливается через конечное число шагов. — Для каждой однородной системы продукций Поста Т можно поставить вопрос о разрешимости ’’проблемы остановки” этой системы: существует ли алгоритм 4 т, который по любому наперед заданному слову £ устанавли- вает, конечно или бесконечно множество Т-продукций слова £, т.е. ’’оста- навливается” ли Т при применении к слову £, или нет. Для некоторых систем соответствующие алгоритмы указать нетрудно. Так, например, если Т = <{ 0, 1}, {(0, 00), (1, 11)}, 2>, то алгоритм Ат весьма прост: Т останавливается тогда и только тогда, когда % состоит из одной буквы. 190
Вместе с тем, оказывается [38], существуют системы с неразрешимой проблемой остановки. Сформулируем этот факт в виде леммы. Лемма 1. Существует система однородных продукций Поста То = = (Do, Vo, w0> , для которой не существует алгоритма АТ), решающего проблему остановки. Перейдем теперь к рассмотрению задачи о /C-полноте. Через Г0 обозна- чим бесконечную последовательность, состоящую из нулей. Для дальнейше- го нам понадобится подходящее кодирование букв алфавита Do из системы То. Пусть Do = {di, dk}. Кодирование проведем наборами длины к + 2 из нулей и единиц по следующей схеме: di *-> 1 . 0 . О 1, i = 1,..., к. (27) i k—i+1 Таким образом, код любой буквы из Do начинается и оканчивается едини- цей и содержит нуль. Код буквы df будем обозначать dit i. = 1,..., к. Если теперь ? G Z>o, ? = dtt — dis, то через £ обозначим слово dit ... d(g. Бесконечную последовательность (сверхслово) а из нулей и единиц на- зовем правильной, если а = 0... 0а'Го, где а' составлено из кодов букв п Do, т.е. а’ =5^(1^ ...dis, п> 0. Рассмотрим для каждого i = 1, ...,к о.-д-функцию /}(х), которая обла- дает следующими свойствами: а,-) если а — правильное сверхслово и а € { 0,1}, 0= а а = а 0 ... 0 d{dj ... п ... djw^ ... d^.To, то при I > Wo ~ 1 /,(0) = а 0 ... 0 0 ... 0 djw* ... ~ ~ п we(fc+2) ...djiRiVo> где Ri е D*, такое, что пара (<7,•,/?.,) принадлежит 70, а при / < w0- 1 /7(0) = аГ0; б,) /НаГо) = В/) если сверхслово а не является сврехсловом вида 0 . .. 00“, где 0°° составлено из кодов 4, г=1, к, и правильным сверхсловом вида а = 0 ... 0 d{dj t ... df-1 Г о, то для некоторого ta имеет место (а а) = у = = у (1) у (2) ... у (Та) 11 ... И ..., т.е. начиная с некоторого разряда, все разряды у (i) сверхслова у равны единице. Для примера на рис. 3.31 приведена диаграмма функции fi (х) для слу- чая к = 2, w = 2, =dt = 1001. Нетрудно видеть, что о.-д.функции ft (х), i =1,...,к, существуют. Рассмотрим еще три о.-д.функции fH(xj, х2), fy (Xj ,х2,х3) иД (х). Диаграмма функции х2) приведена на рис. 3.32. Диаграмма функции fy (xi, х2, х3) приведена на рис. 3.33. Пусть /и(хьх1) -/^-универсальный элемент (§6). Тогда нетрудно ви- деть, что для любых а, Ь,.а с & {0, 1}, а, 0, у € {0, 1}“ из равенства /и(аа, Ь&) = а’у следует /)(яо, Ь0, сГ0) = су. Кроме того, для любого S G {0,1)°°, 8 Ф Го, имеет место /Даа, 80, с8) = у (1), у(2),..., 1,1, 191
Заметим также, что если /°(х) — такая о.-д.функция, что для любых а € {0, 1}, {0, 1}" имеет место f 0 (а а) = дГ0, то fu(Xi, х2)= fy(Xi, х2, х2У)). Пусть теперь £ G D*. Рассмотрим о.-д.функцию (х), такую, что для любых a G { 0, 1}, а 6 {0,1}“ имеет место 4(аа) = а£Г0. Функция Д (х) почти константная и принимает только два значения 0£Го и Ц Го. * Лемма 2. Для произвольного слова % £ D* система о.-д.функций Sj = {fy(xi,x2, х3), fi(x), i = 1, ..., k, /н(хьх2), Д(х)} является 'К-полной в Р тогда и только тогда, когда система Т0-продукций слова £ конечна. Доказательство, а) Пусть множество То-продукций £ конечно. Это значит, что последовательность 7о-продукций % = ->об- рывается на слове длина которого' меньше w. Рассмотрим схему рис. 3.34. Здесь j. = 1, ..., s, выбраны так, что начальная буква слова есть буква dt. /Нетрудно видеть, что f 0 (х) = х (••• (Д (Д (х))) ...)), где /°(х) определялось выше. А так как /и(хь х2 ) = fy(x1,x2, f ° (/я (хь х2))), то А?-полнота системы Sj доказана. 192
б) Пусть система Sj К-полна. Тогда можно построить схему S над 2Д, которая реализует Д(х!,х2). Пусть F — ’’последний” элемент схе- мы S, выход которого является выходом схемы S. Очевидно, что F не есть элемент fH, ft, i = 1, ..., к, и Д, так как на выходах этих элементов не реализуется, например, последовательность вида 1 0 ... О 1 0 ... О 1 ... для до- статочно большою N. Следовательно, F = fy. Будем строить последова- тельность элементов 3j, э2, ... схемы S, начиная с элемента F. Итак, 3j =F. В качестве з2 возьмем элемент, выход которого соединен с третьим вхо- дом 31. Если зто — элемент Д или > закончим построение, если fy, то э3 — элемент, выход которого соединен с третьим входом э2, если э2 — один из элементов Д, то з3 — элемент, выход которого соединен с вхо- дом з2, и т.д. Последовательность з2, э2, ... не может оборваться на элементе Ду , так как в этом случае на выходе всей схемы реализуются только последова- тельности вида аШ «6 (0, 1} , оканчивающиеся бесконечным сверх- словом из единиц. Покажем, что последовательность э2, э2, ... конечна. В противном случае элементы этой последовательности соединены в схему, изображенную на рис. 3.35, чего быть не может, так как выходы всех эле- ментов э1( з2, ... в начальный момент существенно зависят от значений на Рис. 3.35 Рис. 3.34 13.В.Б. Кудрявцев 193
входах, и операция обратной связи неприменима. Таким образом, либо це- почка 3t, э2, ... обрывается на элементе Д, либо вход последнего элемен- та эг является входом схемы S'. В последнем случае, подавая на этот вход последовательность из одних единиц, получим на выходе, начиная с некото- рого момента, только единицы. Это противоречит тому, что S реализует /u(xi, х2). Остается разобрать один случай — когда цепочка элементов Э1, ..., эг оканчивается элементом Д. Тогда, либо идя вниз по этой цепоч- ке, начиная с Д, мы пройдем по цепочке вида S1 (рис. 3.34), и получим при этом . суперпозицию j ( - (А (*)) - )) = f 0 (х),что будет говорить о конечности множества То-продукций слова £, либо на выходе одного из элементов, а следовательно, и всей схемы появится последова- тельность вида all..., содержащая только конечное число нулей, что про- тиворечиво. Лемма доказана. Теорема 3.23. Свойство К-полноты конечных систем алгоритми- чески неразрешимо. До к азательство. Предположим, что существует алгоритм A i для распознавания А?-полноты конечных систем о.-д.функций. Покажем, что тогда существует алгоритм Ат<), решающий проблему остановки в То. В самом деле, если £ — произвольное слово в алфавите Do, то пусть Sf - соответствующая ему система о.-д.функций. С помощью алгоритма A t проверим, К-полная система или нет. Если — Х-полная система, то по лемме 2 множество Го-продукций конечно, если Sj не является ^-пол- ной, то множество Го-продукций бесконечно. Таким образом, существова- ние алгоритма A i приводит к разрешимости проблемы остановки для То. Отсюда в силу леммы 1 следует утверждение теоремы. Теорема доказана. Для рассмотрения проблемы Л-полноты конечных систем о.-д.функций нам потребуется несколько изменить функции /j(x), i = 1, .... к, входя- щие в систему Sf. Именно, рассмотрим функции // (х), удовлетворяющие условиям: aj) если а -сверхсловолида g = 0 ...Od{dit 7>w0 —1, а&{0,1}, m(k + 2) ТО jf'(gd) = g.O . О О . . . QA..,u ^Д-Го; m(fc+2) w9(k + 2) б J) если а — сверхслово вида а = 0 ... О did)t ... dJw Го, а € { 0,1} и Rt — непустое слово, то т(к+2) Л(аа) = д 0 . . О 0 ... О Я,-Го; т(к + 2) w0(fc+2) В/) Л(дГ0) =gr0, а. G{0, 1); 194
г/) если сверхслово а не является сверхсловом вида 0...0/3“, где /3°° составлено из кодов Iit i = 1,... ,к, и не удовлетворяет ни одному из условий а[),б[), в]), а € {0, 1}, то для некоторых т > О, Ьх, ... • • • >^m(fc + 2)€{0, 1} //(аа)=ай1й2 - 6т(к+2)0Г1, где Г! — сверхслово, состоящее только из единиц; д’) если а имеет вид а = brb2 .. bm(k+2) 0Гь а € {0,1), то для некото- рых b\, Ъ'г,..., b'm(k+2) € {0, 1} fi(aa) = ab\ ... йт(к+2)0Г1. Остальные элементы системы остаются без изменений. Полученную систему о.-д.функций обозначим S Аналогично лемме 2 доказывается Лемма 3. Для произвольного слова £ G D* система является A-полной тогда и только тогда, когда множество Т0-продукций слова 0 бесконечно. Таким образом, имеет место Теорема 3.24. Свойство A-полноты конечных систем алгоритми- чески неразрешимо. § 11. РАЗРЕШИМЫЙ СЛУЧАЙ ЗАДАЧИ О ПОЛНОТЕ. ЛИНЕЙНЫЕ АВТОМАТЫ Алгоритмическая неразрешимость Проблемы ЛГ-полноты и А-полноты для произвольных конечных систем автоматов является серьезным препят- ствием для изучения операторов А и А в классе Р всех о..-д.функций. Поэтому особый интерес представляют подклассы Р, для которых эти зада- чи алгоритмически разрешимы. К таким подклассам относится класс ли- нейных автоматов, который интересен и с прикладной точки зрения. Дока- зательство алгоритмической разрешимости задачи о полноте для этого класса было получено в [60]. Ограниченно-детерминированная функция f(xl,...,xn) называется линейной, если она задается системой канонических уравнений вида = • • Лга(1)=?т , qt(t + О =яи 41 (0 + • • • + aim qm (Г) + Ьц xl(f) + ... + binxn(f) + с,-, (28) i = 1,... ,m, ... + dmqm(t') + l1xi(t) +. .. + lnxn(f) + h, где atj,bik,dj,lk,Ci,h G {0, 1}, i = 1.m,j = 1,... ,m, k = 1,... ,n, и сложение понимается как сложение по mod 2. В матричной форме система (28) примет вид <7(1) = <7°> q(t+ l)=Aq(f)+Bx(f) + c, y(t) = (d,q(t)) + (l,x(t))+h. 13* 195
Здесь А, В — матрицы, q = (Дг, • • ,qm)-,x = (хх, . ,Хп),c,d,l — векторы над полем GF (2). Множество всех линейных о.-д. функций обозначим через L. Из опреде- ления следует, что всякая функция f(xx,..., х„) из L однозначно задается семеркой (A,B,c,d,l,h,q°). Нетрудно видеть, что для любого 2 о.-д. функция /+ (х15... ,х„), задаваемая системой ?1(1) = 0, qi(t+ l) = q(t), y(f)=x1(t)+x2(f) + ...+xn(f), т.е. "сумматор с п входами ", принадлежит L. Лемма 1. Если g(xx,... ,х„) EL, то найдутся gj(x) EL, i = 0,1,... ..., п, матрица А, векторы bt,lt,i = d,c,q° uh G{0, 1} такие, что go (х) задается семеркой (A,O,c,d,O,h,q0), gt (х) задается семеркой (А,Ь(,0,д,1{,0,0),1 = 1,2,..., п, и gfxx,...,xn)~ f+ (gi (xl'),g2 (x2),... Доказательство. Пусть g(xi,...,xn) задается системой (28). Для каждого/,/ = 1,..., п, рассмотрим систему qij (t + 1) = aix q 1;(r) + ... + aim qml(t) + by xf(t), (29) dxq\j(f) + ... + dm qmj(f) Обозначим черезgy (Xj) функцию, реализуемую системой (29). Пусть g0 — константная о.-д. функция, задаваемая канонической систе- мой (So): ^0(1) = q°, <7fo(^+l)=aIi?io(C+-+afm9'mo(O + Q, (So) .yo(t') = diqio(t) + -+dm qm0(ty+h. Заметим, что qt0 (1) + qii (1) + ... + tfin(l) = <7;(1),i:= 1, • •., tn. Пусть qi0 (t) + qn (0 + • • + qin(t) ~ qi (0 • Тогда, принимая во внимание систе- мы (28), (29), (So), получаем q,o{t + О + qn (t + О + • • + qin (t + 1) = q,(t + 1), y(t) =Уо(г) +У1 (t) +... +yn(t). Таким образом, имеет место g(xx,. . . ,xn)=/+(g1(xI),. .. ,g„(x„),g0). Лемма доказана. Пусть /+ (Xi, х2) - сумматор, Gx (х) — задержка с единичным начальным состоянием. Нетрудно показать, что справедлива Л емма2./С({/+(Х1,х2), Gj(x)}) = Z. Пусть /(х) EL задается семеркой (А, Ь, 0, d, I, 0, 0). Рассмотрим фор- со мальный ряд д(?) = S (d,Xpfe)^p+1 +/, где | — переменная. Ряд р (?) v =0 называется передаточной функцией о.-д. функции /(х). 196
Для произвольного сверхслова а = а(0) а(1) ... рассмотрим формаль- со ный ряд а(?) =а(0) + S а(р) ?". Ряд а(?) называется изображением V =1 сверхслова а. Очевидно, справедлива . Лемма 3. Если д(?) - передаточная функция о.-д. функции f(x) G G L, а и fi - сверхслова, /(а) =fi, то fia) = p(^)a(^. Пусть теперь f (хх,..., хп~) G L. По лемме 1 функцию f можно предста- вить в виде /(хь... ,х„) =/+(fi (xi),/2 (*г),... ,/„(х„),/0 (*i)). Заме- тим, что для каждого i = 1,2,... ,п для о.-д. функции/,- (xz) можно задать передаточную функцию М/(?), так как //(х?) задается семеркой вида (Т, b, 0,d, I,0,0). Заметим, также, что переменная xt функции /o(xi) фиктивная, поэтому значение /0 (xt) есть некоторое сверхслово т), которое однозначно задается своим изображением т?(?). Поэтому всякой о.-д. функции/(xj,... ,х„) €£ можно поставить в соответствие набор (Д1 (?),... • • • > (£) > Ч (?) ) • Будем обозначать этот факт следующим образом: /(Xi,..., х„)^(р1 (?),..., д„(?)) ® т?(?). При этом М/(?) будем называть передаточной функцией для переменной х{ о.-д. функции /(Xi,... ,xn),z = 1..п, a i?(?) назовем внутренним ходом функции/(xi,..., х„). Лемма 4. Если ц (?) - передаточная функция о.-д. функции f(x) G EL, то ц(Ц) - изображение периодического (с некоторым предпериодом) сверхслова. Доказательство утверждения леммы следует из того, что последователь- ность матриц {Av\ v = 1,2,...} периодическая. Примем для дальнейшего следующие обозначения. Если R — поле, то через /?[?!,...,?„] будем обозначать кольцо многочленов от переменных поле от- ?!,...,?„, а через/?(?!,...,?„) =|- ношений с обычными операциями сложения и умножения. Если д(?) G “(О £/?(?), д(?) = --- , то, когда не оговорено противное, будем считать и (О дробь----- несократимой. и (О Обозначим через PR2 (?) множество ^2(0 = UG)=-^ ««),v«)e I «КО 1 Заметим, что если цг (Х),р2 (О еРЯ2 (?), то (?) + д2 (?) EPR2 (?) и Mi (?) м2 (?) 6РЯ2 (?). Если WQPR2 (?), то через [И7]с обозначим мно- жество всех элементов РР2 (?), которые могут быть получены из элемен- тов W с помощью сложений и умножений. Очевидно, что [ ] с есть опе- ратор замыкания на PR2 (?). 197
Определим еще одну операцию на PR2 (О Частичная бинарная операция «2 (О Q применима к паре (М1,д2), если д2 =------- , где щ, ($) G | Е2 ($); »2 (?) при этом б(МьМ2)= ------— 1 +Д2 Ясно, что б(Д1 ,д2) GP/?2(?)- Если WC. PR2(1-),то через [W] обозна- чим замыкание W относительно трех операций: сложения, умножения и операции Q. Теперь воспользуемся тем, что изображения периодических сверхслов можно рассматривать как элементыPR2 (£). Справедлива Лемма 5. Если а(£) - изображение периодического {с некоторым “(?) предпериодом) сверхслова, то а($) =--- G PR2 ($). ”(?) Доказательство. Пусть т0, Т\ — предпериод и период сверхсло- ва а. Тогда а($) = а(0) + а(1) $ + ... + а(т0 - 1)?т’-1 + + (а(л>)?г’ + • • +а(то +Т1 - 1)Го+’’* 1 2 -1) + Г1 (а(то)Г’ + • • . ,.+а(т0 +ti - 1)?т°+т,-1) + • • • = а(0) + а(1)$ + ... + а(т0-1)?т’-1 + «(tq)F* + ..-+а(т0 +71 - 1)^т»+т>~1 1+$т* Лемма доказана. Следствие. Если f (хг,... ,х„) &L, то для некоторых pt ($)> Мг (?)>•••, Рп (?) > П (?) £ Р&2 (? ) имеет место f(*i, • • •, х„) ЗГ (Д1 ($),..., д„(О) ®!?(?)- Чтобы убедиться в этом, достаточно заметить, что р{ (£) ,' i и 17 (?) — изображения периодических сверхслов. Таким образом, каждой функции /(хь,.. ,х„) GZ сопоставлен набор (Mi, • • • »Mn,i?)> Pi,'Q&PR2 (1;),г При этом, если Xg — фиктив- ная переменная, тоaq = 0, и. если/(х, х„) - истинностная о.д. функ- f 1 1 ция, то р{ &Е2, i = 1,...,п, a t?G|0, -—- |. Если f зависит от Xj со сдвигом, то pt G £PR2 (О. Лемма 6. Пусть /(х2,..., x„),g(x„+1, • • • »xn+s • • •,M?)) ®n(?),g о fe+i (?),..., M„^(?)) ®n'(?)• Тогда 1) если h(xl,...,xi_l,xj+l,...,x„') =/(Xi,.. ,,jq, . .. ,^_1,^,^+1>... ...,%„), го AZ (Mi (O/---.M/-1 (?),M/(?)+М/(?),M/+i (?),-..,Му-i (?), Pj+1 (?)>••> Pn (?)) ®!?(?); 2) если h(xlt, ..,x/_1,x„+I,...,x„+i,x/+1...x„) =/(*!,... ,х{_ t> g(x„+l,...,x„+s),x/+ 1г...,х„),токо: (mi (О, • • •, Pt-1 (?),Pi (?) • Mn+i(?),- •••>m/(?) • M„+s(?),Mi+i(?),...,m„(?))® (»?(?) +tj'(?)-m/(?)); 198
3) если f(x!,... ,х„) зависит от х{ со сдвигом ик(х1г... ,'х{_1,х1+1,... ..., х„) получена из f(xi,..., хп) применением операции обратной связи к переменной х1, то h я (б(Д1 > Pi), , Q(Pi-1, Pi), Q(Pi+i, Pt), ,Q(Pn,Pt))9Q(Ti,Pi). Доказательство. Пусть/(Xj,... ,x„) =f+(fi (x,)». .. ,/n(x„),/0), g(x„+i,... ,x^) =f+(gi (Xn+i).....gs (xn+s),g0). Тогда д, есть пере- даточная функция fi(xt),i =1......п, pn+j есть передаточная функция Sj (xn+/)> 1?(О - изображение/0 и i?'(£) - изображение g0,j - 1,2,..., s. В случае 1) имеем Л(Х!, . . . ,Xj_i,Xj+l, ... ,х„) = =ЛСЛ(Х1), • • ,A-ito-1),//(xO+№), fi+1 (х/+1), • • • , fj- 1 (Xj- 1 ),fj+1 (x/+ ! ).fn (x„ ), /о )• Теперь достаточно заметить, что о.-д. функция </> (х) = /+ (fa (х), fj (х) ) имеет передаточную функцию р{(%) + д/(£). Утверждение 2) следует из того, что о.-д. функция <р'(х) =fa(gk(x)) имеет передаточную функцию ц{ (£) рп+к (£). Докажем утверждение 3). Из условия следует, что pt (?) G£P/?2($). Рассмотрим о.-д. функцию Л] (х1э... ,xt_l,xt,xi+l......Xn+i), такую, что Л1 ©;( 1,..., 1,до 1,..., 1) ® 0. Пусть Л2 (xi,...,xi_l, х/+1,... i— 1 ... ,х„+1) получается из применением операции обратной связи к пе- ременной xt, и Л2 я. (Pi, - ,Pi-i,Pi+i, - ,Рп+1) ®0. • Пусть теперь функция Л'(х) G L такова, что h's (1 + pt) ® 0,,йЛ3 ,... • = Й2(Л'(Г1),...,Л'(Л7_1),Л'(Х/+1),...,й'(Х„+1)). Покажем, что имеет место д'. • (1 + д;) = 1,/ = 1,..., i - 1, i + 1,... ,и+1. В самом деле, найдутся ajk,bj,dk &Е2, j =1.....m; к= 1,..., m, та- кие, что функцияhj задается системой (Si): <7/(1) = 0, qj(t + 1) = Д/1?1(Г) + ... +ajmqm(t) + bjXi(t), / = 1.m, (SJ У (0 = d j q i (0 + ... + dm q m (t) + x j (t) H-.... + xi (t) + .+xf+i(0 + ...+x„+i(r). Рассмотрим систему (S2): ?/(!) = 0, qf{t + 1) = ал qt (t) + . .. + aim qm (t) + + fydi<7i(r) + . . . + bjdmqm (t)^bjXi{t) + . . .+bfxi_1(t) + + bjXj+1(t) + ... + bjXn+1 (t), j = \,...,m, (S2) У (0 = di <li (f) + • + dm qm (f) + + X1 (t) + ... +x,_i (0 +x,+i (f) + . . . +x„+1 (t) . 199
Легко видеть, что (S2) реализует й2. В силу соотношения ht (0, ..., 0, хг, 1-1 0....0) + xr =h'(xr) функция h'(xr) задается системой (S/) : М1)=о, qrj (t + 1) = qrX (?) + ...+ ajm qrm (?) + bf xr (?), j = (S/) . У (?) = rfiQri (?) + • • • + d mqrm (?) +xr(?). Используя операцию подстановки, из систем (S2) и (S/), г = 1,..., i — 1, i+ 1, ..., и+1, нетрудно получить систему (S3), реализующую функ- цию h3: Q/(l) = 0, М1) = 0, j = 1,. .., т, г = 1,..., i - 1, i + 1,..., п + 1, <7/(? + 1) = afl q1(t) + ... + aim qm (?) + + di (?j(?) + qu (?) + ... + qi_ltl(?) + 9f+i, i(?) + ... • • + Qn+i, 1(0) + • • • + bj dm (qm (?) + 91 m (?) + ... + 9r- !.m(?) + "* "* • • • + Qn + l,m(?))"* bjX, (?) + . . . + bj + + ftyxl+1(?) + .. .+Z>yx„+1(?), / = l,...,m, (S3) qrj (? + 1) =ау19н(?) + ... + ajmqrm(t) + Z>yxr(?), j = 1,... ,m, r = 1,..., i -1, i + 1,..., n + 1, у (?) = dr («1 (?) + qu (?) + ... + , 1 (?) + 9i+i, 1 (?) + •• • • • + Q»+i,i(?)) + • • • +dm(qm(f) + 9im(?) + ...+ + Qi-l,m(0 + Qi+l,«(?) + •• .+QnM,m(?))+Xl(?) + ... • • • + 1 (?) + Xi+l (?) + • • • + Xn +1 (?) . Заметим, что 9/(1) + 9i/(l) + • • • + Q/-1,/ (1) + 9/+1,/(1) + • • •+Qn+i,/(1) = = 0. Пусть 9/(?) + ?i/(?)+...+91-1,/(?)+?/+!,/.(?)+- -+?n+i,/(?) =0, j = 1,..., m. Тогда, принимая во внимание систему (S3), получаем 9У(? + 1) + 91/ (? + 1) + • +9.-1,/ (? + О + Qi+i,/ (? + 1) + . • • + + Qn+i=/(? + l)=0, у(?) =х,(?) + ... +х,_1(?) +х,+1(?) + ... +х„+1(?). Следовательно, функция й3 реализует сумматор с п входами, что доказы- вает справедливость равенства дД! +Д;) = 1 для каждого / = 1, ..., i - 1, Таким образом, имеет место / 1 11 1 \ Й25!--------,. . . , --, ----- , . . . , - ) ® 0. \ 1 +д,- 1 1 +Hi 1+Д1/ 200
Для завершения доказательства третьей части леммы осталось заметить, что ....• •>х„) = й2(/1(х1),... /о)22 г(б(Р1, Pi), • ; Q(lin, Д,)) ® <2 О?, Pi)• Лемма доказана. Нетрудно видеть, что справедлива Лемма 7. Для любого набора Pi (£),-••, Pn(t), i? (I) € PR2 (I) найдет- ся о.-д. функция f(xt,..., х^) & L, такая, что Перейдем теперь к построению системы I К-замкнутых классов функ- ций из L, которая, как это будет показано, является /^-критериальной в L. Пусть То, Т] —^классы функций алгебры логики, сохраняющих 0 и 1 соответственно, а То, Tj — классы линейных о.-д.функций, у которых в начальных состояниях реализуются функции из То и 7) соответственно. Нетрудно видеть, что справедлива Лемма 8,К(Т0) =Т0^£, ^(f,) = Т, Ф1. Для дальнейшего нам будет полезен один критерий /^-полноты системы функций из L. Теорема 3.25. Для любой системы функций MQL имеет место К(М) = L тогда и только тогда, когда одновременно выполнены условия: 1) существует ft G М\ То; 2) существует f2 £М\ 7\; 3) существует f (xt ,х2) &К(М) такая, что/ъ. (1,1) ® т?(£), 17G PR2 (|); 4) существует g (х) & К(М) такая, 4TOg^(^) ® i?'(£), t]'€PR2(£). Доказательство. Необходимость условий 1) —4) очевидна. Для доказательства достаточности заметим, что /(xj,/(x2, х3)) Х(1, 1, 1) ® О, т-е. /(хь /(х2, х3)) =/+(х1, х2, х3). Поэтому f+(g(xi),g(x2),x3)^(.^, 1) ® О G К(М). Нетрудно видеть, что h (х) =/(х, х) - константная о.-д.функ- ция. Пусть (х) =/i (х, х, ..., х). Если й(х) G То, то (й(х)) G Т\. Если h (х) G Tt, то рассмотрим >р2 (х) =/2 (х, х, ..., х). Тогда </>2 (й (х)) G G То. В обоих случаях мы получили две константные о.-д.функции </>0, <Ро, реализующие в начальных состояниях 0 и 1 соответственно. Можно “о (I) , 1+1 Ро(0 считать, что 0О Е (0) в® |, <лозг(0) ®----------------—- . Обозначим SMO + 1 1+^о(П “о(1) 1 + $“о($) т?1 (I) = ? ------- , 172 (I) = • 1 ,—- Очевидно, имеет место 1 + (I) 1 + о(1) соотношение (1 + 1^(1)) П2(1) + (I + |«о(|)) (1 + |Уо(0) Пт (I) = 0. (30) Пусть ^0(1) (1 + ^i(D) = +1’’ +... + $\ 0<h < . . .<ik, (1 + ewo(l)) (1 + ^o(f)) = 1 + ^ + ^ + .. . + tls, 0 </. < ... < js 201
и т0 = max(i\, js). Покажем, что для любого г = 1, . .., т0 о.-д.функция *.............*4,-0* ?3,е,е,е,,г,г-1,г, %' *) ® 0 принадлежит К(М). При г = 1, как показано выше, gt (xt , х2, *з)ж (S, 1) ®0, т.е. gi =f+(g(xi) , g(x2), х3) ЕК(М). Предположим, что при г = i — 1 имеет место g^i (xn... , х4/_5) ^К(М). Тогда gz(xi,... . .. , X*f—1) =gi-l (gi (xt, Х4/_4, Х4/-з), gl (X2, X4/_2, X«/-l), X3, . . . -LI'-1 -I, i.r.S.....M'-1 -1, S'"1-S.r-1 • 1) ®0Gtf(M). Теперь мы можем показать, что константная о.-д.функция Го = О,. О, О, ... — сверхслово из одних нулей — принадлежит К (М). В самом деле, если т/i (?) =0, то Го =</>о;вс (0) ®0. Если i?i (?) =#=0, то рассмотрим о.-д. функцию ^(xi.....х4/„ j). Подставим в gm<i функцию </ь вместо перемен- ных х3, х4у1+3, ..., х4/л+з и </>о вместо переменных х4/1 + 1, ..., x4/fc+1 (если I* =т0, то подставим </>о вместо переменной Xj, и если jk = т0, то подставим ip0 вместо переменной xt). Заметим, что в силу (30) у полу- чившейся суперпозиции h внутренний ход равен нулю и h зависит от каж- дой переменной со сдвиюм. Поэтому, отождествляя все переменные и применяя операцию обратной связи, получим Го. Чтобы операция обратной связи была применима, здесь и в аналогичных случаях дальше сначала добавляется фиктивная переменная. Далее/+(х1,х2) =f+(xl,x2, Го) CK(M),G0(x) =gt (х, Г0,Г0) СК(М). Из ’’сумматора” и задержки Go можно получить о.-д.функцию Г(хъ x2)I(l + £iioG), ?«о(О) ® 0. Применяя операцию обратной связи к переменной х2 и подставляя <р0 вместо переменной Xj, получим константную о.-д. функцию Г1 =1,0, 0,..., г;е(0)®1. Теперь Gt (х) =f+(Ge (х), rJ)G^(M). С учетом леммы 2 получаем К (М) = L. Теорема доказана. Рассмотрим еще два класса системы I. Переменная xt о.-д.функции f(xit..., х„) G Z называется непосред- ственной, если /(Хп • • - , Хп) ° (Д1(|), . . . , 1 + |д(О,Дi+i(I),..., Рп(I)) ® nd). Обозначим через V\ CL множество всех линейных о.-д.функций, имею- щих не более одной непосредственной переменной, и через VH множество всех линейных о.-д.функций, имеющих нечетное число непосредственных переменных. Нетрудно видеть, что имеет место Лемма 9. *L, K(VH) = VH*L. Введем понятие типа существенной переменной линейной о.-д.функции. Если f(xlt.... xn)CL - функция, имеющая только одну существенную переменную X/, и xt — непосредственная переменная, то будем говорить, что X/ — переменная функции f типа В. Если /(xt,.... х„) G L имеет только одну существенную переменную X/, которая не является непосред- ственной, то будем говорить, что х{ — переменная функции f типа С. Пусть f(xi,..., х„) G L имеет в точности- одну непосредственную переменную 202
х{ и имеет отличную от xt существенную переменную. Тогда xt — пере- менная функции / типа D. Существенная переменная функции f, не яв- ляющаяся переменной функции f типа В, С, D, является переменной функ- ции f типа Е. Пусть М = .....хт„т) I т &М' }Q L - некото- рое множество функций и fm ° (Рт, (I)....Рт пт (О) ® Пт (I), т^М'. Рассмотрим множество ЩМ) Q PR2(£): ..................................пт}. Таким образом, отображение U ставит в соответствие каждому множест- ву М QL некоторое множество элементов PR 2 (£)• Пусть теперь р G С, D, 2?}. Рассмотрим множество р{М) = { рт]- | дт/€ G U(M), xmf — переменная функции fm типа р}. Таким образом, U(M) Q В(М) U С(М) U D(M) U Е(М) U { 0} . Для дальнейшего нам понадобятся следующие факты из алгебры: Теорема 3.26 [13]. Пусть pi(%)GPRi(£),Pi(t-)fi.E2,Tozdapi транс- цендентен над Е2 и Е2(£) - алгебраическое расширение Е2(ц1). Следствие 1. Если д2 (£) G PR2 (|), д2 Е2, то существует, отличный от нуля многочлен t>(z2)GE2(pi)[z2], такой, что ’5(д2) = 0. Следствие 2. Существует отличный от нуля многочлен y(Zi,^2)G GE2[zt,z2], такой, что ?(Д1,Д2) = 0. Можно убедиться в справедливости следующих двух лемм: Лемма 10. Если ц(0€£2[|], и(|)^|£2[|], то для некоторого i многочлен u(Q делит многочлен 1 + 1/. Лемма 11. Многочлен 1 + 1/ делит 1 + 1/ тогда и только тогда, ког- да i делит j, i,j>0. Теперь докажем теорему о классах и Ун, Теорема 3.27. Пусть М = , fs }С L - конечная система функций с нулевым внутренним ходом, М^.У1г М Ун и Е(М) = = {Д1(£)> • • •, Р*(?)}• Тогда для некоторого натурального. I множество К(М) содержит функцию f(xlt..., x2k) такую, что f 1 (Mi pf (I).....Рк®> Д* «)) ® 0. Доказательство. Во множестве М по условию найдется функция h(xi,...,х„) Уц. Пусть h 1 (х) = h (х,..., х). Нетрудно видеть, что пере- менная х функции /г' (х) не является непосредственной. Если х — фиктив- ная переменная, то Л'(х) = Го - константная функция, равная сверхслову (0, 0, 0, ..,) из одних нулей. Если х— существенная переменная, то, приме- нив операцию обратной связи к х, снова получим Го Если /о(Х1,... ,х„) S' (д0 1, Рог, , Роп) ® 0 G К(М), то для любого набора индексов ij < i2 <... < ik < п функция fo(xil > • • • > 2. ° (До.,, До/, > • •, До*.), ® 0 я /0(Г0, • •, Го, xtl, Го xife, Го.Го) при- надлежит К (М). Заметим, что если f+ (х i, х2 ) е К (М), то все доказано. В 203
самом деле, из f+ (х2, хг ) можно получить сумматор с любым числом вхо- дов. Учитывая, что функцииУ (х) ° i = 1,./.., к, принадлежат К(М), получаем У+(Ух ,У1 ,Уг>Уг..fkJk) г (Pi, Д1,..., Дк,М® ОЕК(М), что и требовалось. Рассмотрим теперь множество Е (М). Предположим, что I ЕЕ (М). Это значит, что найдется функция Л i (xt,... ,х„) ЕМ такая, что Л i (xt,... ... ,xn) Z (gn>. ..,д,_1Д, 1,д1 + 1>1,..., 1 + £дд,. • • ,д„1) ® 0, i ¥= j. Тогда,подставляя Го вместо всех переменных, кроме xf и х,-, в функцию А1,получим h2(Xi,Xi) £ (1,1 + ^n)9QeK(M). Если д/1 =0, то hJ(x/,x/) = /+(X/, Ху), и все доказал). Если Д/х =# 0, то пусть Л3(Х1, х2,Хз, х4) = Л2(Л2 (й2(Х1, *2), х3), х4).Получаем Л3 ° (1,1 + |Дур 1 + |д/1, 1 + |дд ) ® 0. Применяя операцию обратной связи к переменной х функций Л3(х,х, хз,х4), получим функцию/+(х3,х4) я (1,1)®0,чтои требовалось. Таким образом, случай, когда 1 G Е(М), рассмотрен. Пусть теперь 1 0 Е (М). По условию найдется gEM такая, что g V\. (Wi u2 и„ \ — , — ,. . . ,--1 ® 0, где Uj и2 vn / «х, W2,i>i,i>2 GjE’jIf];—- ,— Е 1+£P.R2(|). Как и раньше, избавляемся U1 v2 от других переменных: , _ / W1 w2 \ ?(xi,x2)o — ,— ®оеК(М). \ V1 и2 / ~ “1«2 Положим д(|) ------- . Тогда U1 и2 fi(xi,x2) =^'(?'(r0,x1),g'(x2,Го)) £ (д.д) ® ое К(М). Поэтому g~(x)5 (д)®0£К(М). Для каждой д; (£) G Е(М) найдется faEM такая, что ft существенно зависит по крайней мере от двух перемен- ных. Без ограничения общности можно считать, что это переменные Xi их2 функции /Х-Х1...Хп) °. (д,-, д',-,... ) ® 0. Тогда У'(Х1, х2) =/Xxi, х2, Го.Го)£ £ (Дь м/) ® 0 G K(Af). Если для некоторого 1 < i < к имеет место д/ • д = 1, то А(Х1, х2) = g!(//(Го, Х1), У/(Го, х2)) 6 К(М), и все доказано. Нам осталось рассмотреть случай, когда для всех i =1.....к имеет место д 'у - д #= 1. Из следствия 2 теоремы 3.26 имеем, что для каждого i = в 1....к найдется неприводимый многочлен </>/(zi, z2) Е Е2 [z i, z2 ] такой, что <л(дь д/ д) = 0. Многочлен ipj можно представить в виде 204
<й(*1,*2) = <0?(Z1)+Z2</>}(zi,z2), <P/(zj,z2) e £2[Zi,Z2], <P?(Z1) G£2[zx], ¥7 (z i) ^ О, иначе был бы приводим. Из леммы 10 следует, что найдется такой многочлен i/^z х) G Е2 [zx ], что для некоторых > гь st <rt, имеет место ^/(Z1)^.(Z1) = Z1 +Z?. Обозначим (zt, z2) = (zx, z2 ) . (zx). Тогда ^•(zi, z2) ^/(zt) = z? + z? +Z2£(Zi, z2). Из определения (zx, z2 ) следует, что дР+др + (д/-д) -?,(/*/, д)=о, или д/’ + Др=(Д/ •д)-^/(Д/,Д/-М)- (31) Если дх G %PR2 (I), то обозначим через П/ правую часть (31), т.е. П/ = (Д/Д)-?,(Д1-,Д,:Д). Если щ%PR2 (О, то найдем такое d/, что произведение z^-z** не содержится в z2 -<ft(zi, z2). Перепишем равенство (31) в виде £ + др + др (р Ц)а‘ ~(^н)- (Дд и', д), (32) где (zx, z2 )= <й (zx, z2) + zp z^ . Обозначим через П,- правую часть (32), т.е., ^ = (/4n)^i(Pi,l4 и)- Выражения П/, П/ имеют вид (ц'{ • д) (П(1 +... + П/с<), где П/;- — некоторое произведение (ц > Дг и р * 'fo 2Г° 1 Пусть т0 = 2 S с, и т0 таково, что 2Z 1 > т0. Положим т = 2 . i = i Каждой щ&Е(М) сопоставим о.-д.функцию Ef(xt) следующим образом. Если д/ е %PR2 (|), то возьмем функцию //(fj(fj... (ft (*)) ...), Яд-Сч)), Ifl'o-l lt = r{ - sf. и применим операцию обратной связи к переменной х. Непосред- (ДД/ Ч ------j « О G К (М). lAri> I 1 +Д/ ' Если д1|РЛ2 (|), то возьмем функцию /•;(Л(л--мх)-). ^2 г» -1 giGi( . gi (gg(- • • (gg- (*)) •••)))••• *д)> <Ц2Г»-1 где gt*L (Д;) ®0. Непосредственно проверяется, что, применяя операцию 205
обратной связи к переменной х, получим f - ММ/ \ -------—----------- ФО , L2ro , ,^d.2rv I 1+м/ +(м,м)1 ' и Et(xt)GK(M). Напомним, что П, = (д' • д) (Пп + ... + П/С/), Пустьjty (х) — о.-д.функция, такая, что / G { 1,..., k),j {1,..., %}, ptj г (IJ$° (д') i'9 ~х) ® 0. Оче- видно, что pf/- ЕК(М). О.-д.функция 7 (Xi,.,. ,хж/)х (д2^-1, д2*-1, ... ..., д2 * ~1) может быть получена из^х (хх, х2), и поэтому q (хх,..., хт) G G К(М). Рассмотрим следующую суперпозицию: ?'(хц, xJ2, хм, х22, . . . • • • ’ х*з) = ?(Ри(*и)» • • • > Pic, fan), • • • > РиС^и)» • • •» Pic, (хп), PmC*21), Р1С, (Х11)г P21C*22)j Р1С, (*22)............PklfXklh ••• ,Pkck(xk2'),0.....0).Имеем ?'<Хц,..., хЛ2)1((Йи'1)1Г°-1 • (7i)2\ (MMl)2”"1 • (ъ)2'0,..., (М)2'0-1 • (7J2\ (Й4)2,'”1 • (7*)2'0) ® ф 0, где 7/ = Пн *.., + П<с<, i = 1, ..., к. Подставляя в q’ вместо перемен- ныхх^.х,^ функцииЕ{(хл),£/(х/2) соответственно,получим ? (Х11, • • • , xki) =q (^1> ^1 > • • • ,Ек> ЕкЕ Пусть/ таково, что 21 > max (s/2''«). и l\ = 21 - з1'1г°. Непосредственно / проверяется, что f(Xll> Х12, Х21» Х22 г- • гХк1.1 Хк1) = Ac • .fiM...)........Ac • -Afat)...), >k j j j ..2 .,2 4 ,M1>••>Pk>Pk )• =«’(АС^(хп)...), fkC -fkfXki) • • ))=(M1Z I Теорема доказана. Теорема 3.28.ПустьМ = {fi,... ,ft} С L, М ^Vt, М <^УН и Е(М) = = {М1(5).....Мл(1)1- Тогда для некоторых натурального I и 17(5) G = PRi (?) множество К(М) содержит о.-д.функцию f (xj, ..., x2fe) такую, что Условия этой теоремы отличаются от условий теоремы 3.27 только тем, что в М могут содержаться функции с ненулевым внутренним ходом. Заметим, однако, что всюду в доказательстве теоремы 3.27 вид внутрен- него хода получаемых функций не играет роли. Например, вместо Го можно использовать любую константную функцию- Отсюда следует утверж- дение теоремы. Лемма 12. Если MC_L, f(xi, ..., х„) ^К(М), f(xt, ..., х„) (Д1(?),. - - ,м„(?)) ®n(?),rOma) G [t/(M)],z = 1.n. 206
Доказательство леммы легко проводится индукцией по построению f &К (М) с использованием леммы 6. Перейдем к рассмотрению еще одной серии классов из I. Определим отображение со: PR2 (?) ->£’2 (?) [z], положив /и\ \ “(I) Ц—l = w(z) + u^) —- • \ п / \ и(?) Лемма 13. Для любых ё PR2 (?), о(?, z) ё (? + z) Е2 (?) много- член со (д) делится на а(?, z) в Е2 (?) [z]. Доказательству. Пусть u(?)w(z) = Sai/?’z/GA’2[?,z|i Тогда ,’1 (д (?)) = ( 2ац?’z> + 2aif ?'z *') = п(?) 4/ i,f = 4г( 2 MW"W~') + 2 и(?) i<i i>i Для любого натурального г > 1 выполнено ?r + zr = (z + ?)(?''-1 +z?''-2 + ... +zr~2l+zr~l), откуда и следует утверждение леммы. Лемма доказана. Пусть p(?,z)e'jE'2(?)[zJ, р(?, z)0(? + z)£2(?)U£2(?). Будем говорить, что множество U = {Д1, ..., д,, ...} С PR2(?) обладает в(р)-свойством, если для всякого дё{7 многочлен со(д) делится на р. Пусть f(xi,..., хп) ё L, f £ (Д1, ..., д„) ® 17- Будем говорить, что f обладает б(р)-свойством, если для всякого i = 1,...» л многочлен со(д,) делится на р(?, z), т.е. если множество U(f) обладает свойством 0(р). Множество всех функций из Д, обладающих 6 (р)-свойством, обозначим через в (р). Лемма 14. Пусть U ? {Д2.......д&, . . .}GPR2(?), рг(?, z),p2(?,z)e ё Д2(?)[г] - многочлены с коэффициентами из [17, 1]с. Тогда найдутся многочлены р(£, z), (fafj;, z), ?2(?, z) ё Е2(?)[z] с коэффициентами из [17, 1]с такие, чтор(%,г) есть наибольший общий делитель pi ир2 и prfi + + р2?2 =р. До к а з а т е л ь с тв о. Применяя алгоритм Евклида к многочленам pt и р2, найдем наибольший общий делитель р(?, z) ё Д2(?)[г], а также мно- гочлены $i(?, z), q(?, z) ё £2(?)[z] такие, что &(?, z) = p't + p2z + ... • + ?2(?,z) = p" + pi'z+ ...+ д^1г"‘-1,д;>д1ед2(?), i= 1,... ,m, Pidi +Р1Ъ1 =P- (33) Очевидно, что коэффициенты 9i, q2, p получаются из элементов {17, 1} с помощью сложения, умножения и деления. Домножая обе части равенст- ва (33) на произведение всех знаменателей этих коэффициентов, получаем выражение Pi9i +p2q2 =р, где?1,?2 ир удовлетворяют лемме. Лемма 15. Если U-{д2, Д2,..., Д* } w для всякого р(?, z) G Е2 (?)[z], р(?, z) ^£2(?) U (? + z)£2(?), множество U не обладает в(р)-свойством, то найдется дёР/?2(?), д^О, такое, что дё[17]с и ?д€[17]с. 207
Доказательство. Можно считать, что д t =#= 0. Из условия следует, что наибольший общий делитель </(£, z) G E2(£)[z] набора многочленов {w(Pi), .. ., со(рк)} таков, что d(%, z) G (£ + г)£2(£)/Из леммы 14 сле- дует, что многочлен d(%, z) может быть выбран с коэффициентами из [С7,1 ] с • Таким образом, можно считать, что / rf(<z) = « + z)-д(», д(£)е[1/, 1]с, [U \}c. Тогда в качестве д(£) можно взять Д(£)-Д'1(1), ди)£[17]е, Лемма доказана. / Лемма 16. Для любого р е ], Р U(e + z)E2(О, имеет место i К(в(р)) = е(р)^ь. Доказательство. Учитывая лемму 12, очевидно, достаточно пока- зать, что если &PR2($) и р делит <о(Д1) и <о(д2), то р делит +P2)>w(Pi 'Дг) и, в случае применимости операции Q к паре (Д1,Д2>, Р Делит <4С(Д1.Дг))- U] и2 Пусть Pi =—, р2=—. Тогда для некоторого w^GF^z] «(2)-<о(Д1+д2)= Ui v2 z \ , ГА ГА ГА ГА + «2 (£) ”1 (О = «i(z)u2(z) + W2(z)Uj(z) + Vi(z)v2(z) --------- ----------- = / Wi(£)\ / и2(£) \ = wi(z) + oi(z) ——- + i?i(z)(m2(z) + u2(z) ——-) = и2(г)о>(Д1) + \ 01(1) / \ o2(|) / + Vj (z) ю(д2), так что p делит ш(Д1 + д2). Далее, аналогично показывается, что u'(zya>(pi •д2)=м2(г)со(Д1)+и1(г)Д1(|)ш(д2), т.е.р делит <о(Д1 -р2). Д1 Пусть к паре ( д i, д2) применима операция Q. Тогда Q( д2, д2 )=--- 1+Д2 1 \ ------- . Но 1 + д2 / 1 = Д1 •------. Достаточно показать, что р делит 1 + Д2 / 1 \ о2(О , ч со I-----1= ------------ со(д2), что завершает доказательство леммы. \1+Д2/ МгФ + огС!) Следующий класс из системы I — класс Г1. Степень многочлена п(|) G «(О G Е2[ обозначим через degn(|). Будем говорить, что д($)--------- G о(?) G T’/?2(f) обладает Г1-свойством, если выполнено одно из двух условий: a) и deg и< deg и; б) w(|)^^2[|] и deg и = deg v. Функция f(xi, ..., х„) °. (д15 ..., д„) ® п обладает Г1-свойством, если д, (е) обладает Г Свойством для каждого i = 1, ..., п. Множество всех о.-д.функций, обладающих Г1 -свойством, обозначим через Г1. 208
Ле мма 1?\ А'(Г1) = Г1 ¥=/. Доказательство. Достаточно показать, что если Дх,д2 GPR2(^) обладают Г1 свойством, то дх + д2, Дх • д2 и, в случае применимости Q, С(Дх,Д2) обладают Г1-свойством. Пусть \ ...._ Ц)ft) _ \flio + аи% + +а1к^к Д,() UxG) 1 ... +й1Л-1£к-1 +С ’ „ m - "2ft) - М + д2!?+...+ a2s$s MiVs)-----= -----\------------- 1 — w2(l) 1+Ц$+ ... +b2tS_le~1+е ’ а1/>^1/ ^^2» /= 1,... ,£; a2j, b2j GE2, ]'= 1.s. Так как Дх,д2 обладают Г1-свойством, то аю=а1к, a20=a2s. U]V2 +U2Vi Рассмотрим Дх + д2 = —---------. Имеем U1U2 deg(MiU2 +n2Ui)<max {degMjU2, degn2Ux} <deg(uxu2) = fc + s. Кроме того, если «iU2 + Ui«2 = a0 + e2$ +... + ak+s^k+s, то д0 =аю + a2o> и ak+s = alk + a2s, поэтому a0 =ak+s. Таким образом, Hi + д2 обладает Г1 свойством. Точно так же показывается, что Дх • д2 обладает Г1-свойст- вом. Если операция Q применима, то а20 = 0. Достаточно показать, что 1 , ------ обладает Г свойством. Но deg v2 = deg (и2 + v2) = s, и свободный 1 + Д2 член и2 равен коэффициенту при £ * и равен единице, что и требовалось. Лемма доказана. Опишем еще некоторые классы из системы I. Будем говорить, что м(|) М(О =------ обладает Г2 -свойством, если deg и < deg и. Множество U = «(I) = {/4 > Да > • • • J £ER2 (?) обладает Г2 свойством, если всякий элемент из U обладает Г2-свойством. Функция f&L обладает Гссвойством, если мно- м жество C(/)U£(/) обладает Г свойством и для любого д = — G B(f) U v U D{f) выполнено deg и < deg и. Класс всех функций, обладающих Г ^-свойством, обозначим через Гс. Лемма 18. К(ГС) = ГС¥=/. Доказательство. Пусть f(xt,.. ., хп), g(x„ +1,. .. , х„ +J) G Г с, f ° (Mn + l..Дп+»)®п' И ЛСХх,...,^;,...,^/-!, Xn.l,...,Xn)=f(X1,...,Xi,...,X/_1,Xi,Xf+1,...,Xn), h 3. (Дх,^,... • • > Mi-1, Д/ + Д/, Mi+1.Д/-1, M/+i, • • •, Дп) ® п". Если одна из перемен- ных Х],Х/ фиктивная, то очевидно, что й€Гс. Пусть xisх,- — существен- ные переменные функции /. Так как у/по крайней мере две существенные переменные, то X/ и х;- не являются переменными типа В или С 14.В.Б. Кудрявцев 209
ui uj Предположим, что x{, xf — переменные типа Е, , Д,- = —. Имеем и,- ц degUj <degVj, deg(u{vf+ UjVi) < max(deg wfty, degw;ut) < < deg(u/ty). Таким образом, щ + д,- обладает Г2-свойством. Предположим, что X/ — переменная типа D и х,- —> переменная типа Е. Тогда Д/ = 1 P-j = &}. Поэтому переменная xt функции h непосред- ственная, так как д,- + д, = 1 + £(д'- + Ду). Заметим, что deg w,- < deg vit deg Uj < deg ty. Поэтому deg(wfty + u/Vj) < degfu/ty), так что если x{ - един- ственная существенная переменная функции h, то xt — переменная типа В, и, следовательно, h G Г с. Если же у функции h имеется существенная пе- ременная, отличная от переменной X/, то х( — переменная функции h ти- па D, и для нее нужное неравенство deg(«/ty +«yUy)<deg(uIu/) вьшолнено. Другие существенные переменные h имеют тот же тип, какой они имели у f, а именно, тип Е. Таким образом, йеГс. Очевидно, переменные X/ и х;- функции f не могут быть одновременно переменными типа D, и это завершает доказательство того, что hGfc. Рассмотрим теперь операцию подстановки. Пусть Л(Х1,. .. ,Х,_!,Х^1, ..., х„,х„+1,..., x„+J) = /(хь ..., Х{_1, ^х„+1,...,х„+Дхя-1,... ,х„), тогда h £ (Д1,...,Д/11, д/+1,...,дп,д/-дп+1„.. ... ,Д1 •д„+^)®17",Д1Ди+/=------, / = Если X/ - переменная/ типа С, то deg и,- < deg uf, поэтому для всякого /=!,...,« имеет место deg(uIu„+/)< deg(u, u„+/); при этом все существенные переменные h при- надлежат множеству { х„+1,..., х„ +так что в этом случае h е Гс. Ес- ли X/ — переменная типа Е, то снова для всякого j = 1.s имеет место deg(wlw„+/)< deg(ty+/), поэтому для всякой существенной переменной функции h из множества {х„+1,.. ., xn+s } вьшолнено нужное неравенст- во. Если хк, к ¥= г, — переменная типаD функции/, то после подстановки хк либо сохранит свой тип, либо станет переменной типа В, при этом соот- ветствующее неравенство будет вьшолнено. Если же хк — переменная типа/?, то deg(Wjt)<deg(ufc). Таким образом, в случае, когда Х{ — пере- менная типа Е или D, имеет место h С Г с. Если X/ — переменная функции / типа В, то тип всякой существенной переменной функции h совпадает с типом этой переменной функции g, и соответствующие неравенства, очевидно, выполнены. Наконец, если X/ - переменная функции / типа D и переменная х„+/, /£{1......$}, функции g имеет тип Вили D, то переменная xn+j функ- ции h имеет тип, D. Если же переменная хп функции g имеет тип Е или С, то переменная хп+] функции h имеет тип Е. Нетрудно видеть, что нужные неравенства для степеней многочленов выполняются. Таким образом, операция подстановки не выводит за класс Гс. Рас- смотрим операцию обратной связи. Очевидно, что х, - переменная функции / типа С или Е. Если xf — пе- ременная типа С, то применение операции обратной связи дает функцию без существенных переменных, которая, очевидно, принадлежит Гс. 210
Если х{ — переменная типа Е, то h s- (<2(Mi, Mi), •, 0(Д/-1, Д/)> S(Mi+i, М/), . •, <2(М„, Mi)) ® n'"- Если хк — переменная типа С или Е функции Л, то хк — переменная типа Е цк ukvt функции/. Пусть ------ = --------- . Заметим, что, так как deg«jt< l+Mi vk(Ui + Vj) < deg vk, deg(wk vt) = deg uk(ut + u() < deg vk (ut + u(), to h G Г c. Лемма до- казана. Будем говорить, что функция / &L обладает Г ^-свойством, если мно- и жество£)(/)и£'(/) обладает Г2-свойством и для любого д =— EB(f) и ~ V U С(/) имеет место deg и < deg v. Обозначим через Г25 класс всех функ- ций, обладающих Гр-свойством. Лемма 19. К(Г D) = TD * L, Доказательство. Г^-свойство функции может быть сформули- ровано следующим образом. Если х/ — единственная существенная пере- Щ менная функции f{xv,..., х„), / я(0.....О, щ, 0,..., 0) ® 17, д/ = — , то Vi deg и{ < deg если же / имеет по крайней мере две существенные перемен- ui ные, то для всякого i = 1,..., п если щ ¥= 0, ц{ =—, то deg щ < deg vt. Ч Нетрудно видеть, что операции суперпозиции сохраняют это свой- ство. Рассмотрим операцию обратной связи. Если / имеет только одну существенную переменную, то, применяя операцию обратной связи, по- лучим константную функцию, которая, очевидно, принадлежи^ Гр. Если же у функции / было не менее двух существенных переменных и среди тшх X/, Xj, то после применения операции обратной связи к переменной х(, получим передаточную функцию б(Ду, д;) для пере- менной Ху . М/ « Так как Q{Hi, Hi) =---- = — и deg ut < deg V/, deg uf < deg ly, to 1 +Mi v deg и < deg v, что и требовалось. Лемма доказана. Пусть w(|)G£’2[I], - неприводимый многочлен. Будем гово- рить, что д(|) = 1- ^~ €PR2(g) обладает свойством R(w), если w делит «(I) и($) в Е2 [|]. Множество U={ щ, Мг, • • •} С Р/?г Е) обладает свойством R(yv), если каждый элемент из U обладает свойством R(w). Функция /(Xi,.... х„) а (Д1,... ,Мл)в17обладает Rc(w)-свойством, если .мно- и жество C(f) U E(f) обладает свойством R(w) и для каждого д = — G v G D(f) U B(f) имеет место v т.е. w не делит v в £2Е]. Класс всех функций, обладающих свойством Rc(w), обозначим через Rc(w) . 14* 211
Лемма 20. K(Rc(wJ) =Rc(w) ФЬ. , Доказательство. Пусть f s (Д1, , дл) ® V /l(X1,...,Xf,...,X/_l,X/ + i,...,X„)= / =/(*»' ..., xt,..., Лу_х, xb xi+1 ,...,xn). / Тогда h s (M1>,.. >M/ + ду,д/+1,. .. ,д/_1,д/+1,.. . ,Дл)®тЛ Если одна из переменных хьх/ функции f фиктивная, то h GRe/w). Пусть х{, х, — пе- WlZ WUf ременные типа Е, тогда -Д/ =-- , д,- =--, vt, Vj/ф wF2[|], поэтому Д/ + и,- V/ / WU ; + Ду =--- . Если хк, кФ1, кФ], —переменная/типа D, тохк — перемеи- ViVi ная h типа В или D. Таким образом, h&Rc(w). Пусть теперь х{ — пе- ременная типа D и X/ - переменная типа Е. Тогда xs - переменная типа D или В функции h, и при этом ясно, что знаменатель VjV/ дроби д, + д,- не делится на w. Все остальные существенные переменные функции / ти- па Е. Таким образом, в случае отождествления переменных h &Rc(w). Рассмотрим операцию подстановки. Пусть h=f(xi,. ..,xf_1, g(x„+1,...,xn+s), х/+1,..., х„), h i (Mi.....Д/-1.МГ M/+i> • • • . ,д„)®п". ui , Если X/ - переменная функции / типа С или Е, и д, =—, то ut~wu{, vi u'i [$]• Поэтому для /=1......s передаточная функции д,- • дл+у обла- дает R(w)-свойством. В случае, когда xt — переменная типа С или Е, h GRc(w). Если х,- — переменная / типа В, то при подстановке тип пере- менных х„ +хп +, не изменится. Если же xt — переменная / типа D, то переменная функции g типа В станет переменной функции h типа В илиD. Таким образом, и в этих двух случаях h&Rc(w). Рассмотрим операцию обратной связи. Достаточно рассмотреть случай, fyi'i когда X;, Ху — существенные переменные f(xi, х„) и Д/ = — . Если Ч X] стала переменной типа С или Е после применения операции обратной связи к х{, то Ху — переменная типа Е функции /. Так как X/ — перемен- ная типа Е функции /, то UjVt W - u'i Vi Q(U],Ui)= —P = - , .............-• . Vj(ut + Vi) WUiVj + V{Vj Ясно, что w делит числитель и не делит знаменатель. Таким образом, h&Rc(w). Лемма доказана. Будем говорить, что /(Xi,..., х„) из L обладает RD(w)-свойством,ес- z U ли множество D(f)UE(f) обладает/?^)-свойством, и для любого д = —G v €B(f)V C(f) выполнено v^wE2U], т.е. w не делит v. Множество всех 212
функций, обладающих RD(w)-свойством, обозначим черезRD(w). Анало- гично лемме 19 устанавливается Лемма 21. K(RD(wy) =RD(w)^L. Лемма 22. Если множество UQ.PR2 (?) не обладает Г 1 -, Г 2-свойства- ми и для любого pG£2(?) [zl> Р$ (? + z) Е2(%) UE2(%), для любого w G Е2(£), w $Е2, множество U не обладает в(р)- и R(w)-свойствами, то найдутся такие натуральное kи р= GPR2 (?),что и ?2?2 [?], deg и> > deg v и $к-Д, ?*+^Де[17]. Доказательство. Выберем в U конечную подсистему U2 = {Д1,... ..., д„}, такую, что наибольший общий делитель <7 (?, z) системы многочле- нов^^!), ..., со(д„)} содержится в (? + z) Е2 (?). Это можно сделать, так как Uне обладает в (р) свойством ни для какого р. По лемме 15 найдет- ся p&PR2(%), д^О, такой, что дб [t7i]c £-[^1, е [^i] с £ [^] • ?ku / , и Если д = >-, где и £ ? Е2 [?], то мы показали, что нашлось такое д = — , V V •nou^jM?] и?*д',?*+1д'е м. Если deg u> deg v, то возьмем /Г = д', и все доказано. Если deg и < deg у и г = deg и — deg и, то рассмотрим натуральное s та- кое, что 2* > г. и Так как U не обладает Г1- и Г 2-свойствами, найдутся Д1 = — G U, U2 д2 = — G Uтакие, что выполнены условия: и2 a) (deg Mi > deg ut) или (deg ut = deg yt и ut G ?£2 [?]), или (degut < <degui HUj ^?£2[?J); 6) deg иг > deg u2. ~ Пусть имеет место deg^ >deg и ?2?2 [?]. Тогда возьмем д = = д' • (Д1)г. Ясно, что ?*д,?к+1д G [СТ] и степень числителя дне меньше степени знаменателя. Если degu! > degui и и2 G %Е2 [?], то возьмем д* = и*/v* G U, р $ К(?) . Можно считать, что degu* Cdegy*, тогда д4 =Д1 +д* -u^/v^ таково,что degu4 >degy4, и u4 Ф ?£’2[?]. Таким образом, будем считать, что выполнены условия: a') (deg Uj = deg у 1 и Uj G ?Е2 [?]) или (deg ut < deg ut нщ 0 ?£2 [?]); б1) (deg u2 = deg v2 и щ ?£2 [?]). Если выполнено (deg ut = deg v 1 и ut G ?E2 [? ]), рассмотрим Q (?fc+1 д', (Д1)25 = е*+1(2(д', (Mi)2") G[I/]. Кроме того, 0(?*д', (Mi)f) = р , „s ~ , .S д' U = tkQ(p, (Д1)2 ) G [tT]. Пусть д = е(м',(Д1)2 ) = - z ч2, =-.Тог- l+(Mi)2 v да и ^Е2 [?]. Если выполнено (deg ut < deg vt и u^ ? E2 [?]), то pac- u3 Ui y2 + МцУ! смотрим Дз =Д1 +Д2 =—=--------------— . Нетрудно видеть, что degu3 = У3 l>ll>2 s = deg у3 ,и u3 G ?Е’2 [?]. Снова можно взять д = Q(p.', (дз)2 )• Лемма до- казана. 213
Лемма 23. Если множество UQPR2 (?) не обладает Г 1/, Г 2-свойства- ми и для любого р€Е2(%) [z], р£ (?+z)£"2(?) ^Е2(£), для любого w &Е2 [?], w ^Е2, множество U не обладает в(р)- и R (у>)-свойствами, ~ и ' ~ то найдутся натуральное г и р = — GPR2 (?) такие, что и у £Е2 [|]мйля всех i,j= 1,2,... v (?27(д27 g [i/]. ~ ~ Доказательство. По лемме 22 найдутся к и р = ~е PR2 (?) и такие, что и ф. %Е2 [$], degw>degJ7H %kp , %k+1p G [17]. Пусть w(?) = = l+a1? + ... + aj_ir-1+?,> w(?)1 = 1 + Ы + . .. + bm_am~1 +^m,s> >'m. Если s =0, то p = 1, т.е. ?k, ?k+1 G [CT], поэтому ?T G [C7] для всех T> k2. Если г таково, что 2Г > к2, то (£гГ )* • (12Г); G [СЛ] для всех I,/ =1,2,... Рассмотрим теперь случай, когда s > 1. Определим индуктивно последо- вательность множеств пар целых чисел; Л о = {(с, d) | с>к +s, d> (к + s)k, с - fcCdCc • (fc + 1)), Ai+i =Aj U Kj U Pit где i = 0,1, 2...., Ki = {(c, d)|d = (it + l)c + i + l, c>k + s}, { (c,d)\d=kc - i- 1, c> к+ s, d>(k + s)k} при к > 0, ф при£ = 0. Индукцией по i докажем, что для любой пары (c,d) GXf имеет место i-dpc€[U]. Пусть i = 0. Так как Цкр,Цк+1р G [СТ], то, выбирая €] и е2 такими, что выполняется (кс2 +(к + 1)е2 =d, l€i + е2 =с, и учитывая, что ?d/7с = (%к р)е* (?к+1д) е>, получим, что если (с, d) G Ло, то ?dg с G [СТ]. Пусть утверждение доказано для А/. Докажем его для А(+ j. Так как р = , то очевидно тождество р v= и или и р = Ь^р+... Ьт^1Г'1р + Гр + 1 +«»? + • ..+а,-1Г-1+Г (34) Отсюда ^pc =Md+l рс +- •. +?d+mMc + + |</дс-1 +ai?+1pc-1 +...+as_1i-d+s~1pc-1 +^d+spc-1. Если (c,d) & Pt, to {(c, d + 1),..., (c, d + m), (c - 1, d), (с-1, d + 1),..., (c - l,d + $)} С Л/. В самом деле, d = kc — i - 1, поэтому d + 1 =kc — i,..., d + m = kc — i + + (m — 1). При i >m — 1 (c, a + m) &Pj,j <i —1; если / — 1, to (c, d + 214
+ t) G Ao для\t > i +1. Аналогично рассматриваются пары (с — l,d+ f), Г > 0. Таким образом, если пара: (с, d) £ Р(, то с £ [C7J. Пусть теперь (с, d)GKt. Запишем (34) в виде 1*=д+Мд+-.. + 1 +«!? + • Отсюда ^с- = ^-^с+1 + C+1 +... + $ +... + as_ tf~1 дс. Снова имеем, что множество пар {(d - s, с + 1),..., (d - s + т, с + 1), (d - s, с),..., (d - 1 ,с)}С Ait поэтому ^д с £[{/]. Индуктивный шаг доказан. Теперь заметим, что для любых i,j = 1,2,..., Z> > 0 найдется t такое, что (k(k + s)i , k(k + s)j ) GAf, ((&(& + s) + b)i, (k(k + s) + b)j) GAt. Выберем г такое, что 2r > k{k + s), тогда (g2rf (/Г2Г)7 £ [t7] , что и тре- бовалось. Лемма доказана. Рассмотрим еще одну серию классов из I. Пусть w(?) G Е2 [£] — неприво- и дим или равен |2, w(l-)&E2, w(£)¥=i-. Будем говорить, что ц(%) = — £ v &PR2(£) обладает M(w)-свойством, если выполнено одно из'Условий: а) и е £ £"3 [g], «Sw^afc]; б)и^£2И, u + Множество UQPR2$) обладает М (у>)-свойством, если каждый элемент U обладает M(w)свойством. Функция /(xt,... ,х„) зг (Д1,. • •, Дп) ®т? обладает M(w)свойством, если множество^,... ,д„) обладает M(w)- свойством. Множество всех функций, обладающих M(w) свойствам, обоз- начим через ~ Лемма 24.K(M(w))=M(w)^=L. Доказательство. Очевидно, достаточно показать, что если дъ д2 EPR2 (£) обладают M(w)свойством, то д3 = Д1 + д2, Д4 =Д1 • д2 и, в случае применимости операции Q, д$ = 2(Д1, д2) обладают" M(w)- свойством. _ ui Пусть -----г j = 1,2,... ,5. Для каждого из многочленов Uj, th может Ч реализовываться один из случаев а), б) иэ определения Л/(ш) свойства. Таким образом, возникают четыре случая. Случай первый, щ, «г £ $Е2 [|]; щ, th £ wE2 [5]. Тогда и3 £ £ 1^2 [II > “з € wE2 [$•], так как и3 =thv2 + thvr, Щ £ 1^2 [I], «4 е G wE2 [|], так как щ =UjU2; us £ |£2 [|], Mj £ wE2 [|], так как Us =Uith- Случай второй. G %Е2 [£], щ £ м>Е2 [|], «г ^Е2 [|], щ. + v2 £ GwE2[%]. Тогда и3 =utv2 +u2vl ^Е2 [|], и3 + v3 = Uiv2 + + UiU2 = = thv2 + t>i {щ. + v2) £ wE2 [$], m4 = MiM2G ^E2 [I], m4GwjE'2[?]. Опера- ция Q неприменима, так как th 1^2 [I] Случай третий. + Vi £ wE2 [£], «2 G wE2 [|]. 215
Рассмотрение и3, ил здесь аналогично второму случай; us = UiU2 ф f 1^2 [?] , Ws +VS = MjU2 +Vi(tl2 + U2) = (Wi +U1) U2 + UjUj wE2 [$] . Случай четвертый. Щ, u2 £ %E2 [|], w, + ub th +u2 G wE2 [£]. Тогда w3 = Wju2 + w2Ui G ££2 [£], w3 = (w2 + u2) v2 + (th + u2) u2 G wE2 [£], «4 =«A ^E2 [$], ' th +u4 =Uith +U1U2 = (th +U1) th + (th + u2) »t G G wE2 [g]. Операция Q неприменима. Лемма доказана. Лемма 25. Если множество U С PR2(l) таково, что для любо- го w2 G Е2 [|], U не обладает R(w ^свойством, и для любого w2 G е ^г[1], U не обладает М(м2)-свойством, то для любого неприво- и димого многочлена w0 G Е2 [£], w0 ¥=,>£, найдется р = — G PR2(£) и такое, что и G w0E2 [|] и р G [£/]. Доказательство. Пусть w0 &Е2 [|], — неприводимый и многочлен. Если среди элементов U есть р=— такой, что vEw0E2 [g], v то все доказано. Предположим, что в U такого элемента нет. Покажем, и что в этом случае существует gG [17], g =— такой, что ue^iiei и V и, vf. w0E2 [|]. Так как U не обладает M(w0)-свойством, то в Uнайдется элемент pt = — , для которого выполнено одно из условии: U1 а ) «1 £ к0Е2[$]; б ) Ui SA’jfS], и, +и, £ WoA’jfl]. Если выполнено условие а), то в качестве рможно взять pt — условие Vi WqE2 [£] мы уже предположили выполненным для элементов U. Пусть выполнено условие б). Если ut w0E2 [£], то в качестве двозь- мем Д=Д1 + (gi)2 = —*——— , так как ut (hi +ut) G $E2 [$] и и2, Wi («1 + Wi) £ w0E2 [|]. Наконец, если Ui&w0E2[$], то воспользуемся тем, что U не обладает Я (w0)-свойством и потому содержит элемент р2= th , А =-- такой, что Hj £ w0E2 [£]. Если th 0 %Е2 [|], то в качестве р можно и2г взять pi +д2,так как м^ +MJU1 G %Е2 [£], uiu2, utu2 h-MjUi wo^2 [I]• Если же и2 &^Е2 [|], то в качестве р можно, очевидно, взять р2. ~ и Таким образом, в [СТ] найдется элемент р = — такой, что MG^2[|] hu,v£ w0E2 [£]. V По следствию 2 теоремы 3.26 существует неприводимый многочлен y(Zj, z2) &Е2 [zj, z2] такой, что 7(w0, g) =0. В силу неприводимости у имеем 7 (w0, Р ) = 7i (g ) + w»y2 (w0 , р ) = 0, 7i(z2)GA'2[z2], y2(zi,z2)GE2[zt,z2]. Пусть 7i (z) = z11 + zij + ... +z k, z'i < i2 < ... < ik. Положим g* --- .. v* ~ i —i u = 1 + (p+ ... + (p) k 1 и g** = (g’i) • g* --------. Очевидно, что и** 216
д* + 1 G [Ц]. Так как 71 (д ) = woy2(wo, д),т.е. д** = и’оТа(^о, д),ю m**G h>0F2 [$], v**£ w0E2 [|] Поэтому u*&w0E2 [|], 0* $ w0E2 [J]. Так как и* G w0E2 [|], то&>2; поэтому д* + 1 ¥= 0. Пусть д = Q (д2, ц* + и . + 1) = — . Так; как щ £ w0E2 [£], то д =#= 0. Наконец, так как »* G w0E2 [£], v то и G w0E2 [|], что и требовалось. Лемма доказана. Лемма 26. Если UC_PR2 (|) не обладает Г1- и Г2 -свойствами, и для любого р^Е2 (|) [z], р & (| + z) Е2 (|) U£2 (|), для любого Wi G Е2 [|], для любого w2 € Е2 [ {•], l/не обладает в (р) J?(Wj) - и M{w^-свойствами, то найдется натуральное г такое, что £2 G [I/]. и Доказательство. По лемме 23 найдутся такое г и такое д = — G v G PR2(£), что и ££2 [£], и для всех i, / = 1,2, ... имеет место Ц2'}' 6 [£/]. Обозначим I2' через у. Заметим, что [дС!)]2' = д(у). Поэтому для всех /,/ = 1,2,... имеет место yl(p(y)V е [£Л • В частности, У(Р(У)У, У2(р(У))', ••• G [17]. Поэтому у7 (и (у)) 7 (дОО)7 =/(«О’))/ G [СТ]. Пусть и(у) = (wj О’))'* («2 00)*’ (“* (У)Ук ~ разложение и(у) на неприводимые множители в Ё2 [у], /,- > 0, / = 1, ..., к, щФ щ' при /¥=/'. Покажем, что от одного из множителей можно избавиться в том смысле, что найдется многочлен и* {у) =1^1Ё33 ... ик, 3/ > 0, / = 2, ..., к, такой, что для всех /,/ = 1,2,... имеет место y'(M‘O’))/G[t/]. ~ и По лемме 25 для неприводимого wi (|) найдется д=— G [С7] такой, что v vEu1E2[^]. Заметим, что д(у) = д (£гГ) = (д (|))2Г е [СЛ и “ О') е G щ (у) Е2 [у]. Пусть /1 >0 такое, что (и2 О'))71 Делит п(у), но (wt (у)) А +1 не делит «'О’) » t/О’) в Е2 [у]. Положим д'00 = —-= (« О'))71 (Д 00)• Тогда и (у) не * v делится на Wj О’) в Е2 [у]. Так как у7(и(у))^(д (у))* [СЛ для всех/, / = 1,2,.... ,к, к> 0, то у’(и(у))Ч(« О’))71 • (M(J'))'1 )7 =У/(п'О'))/ е I17! для всех /, / = 1,2,... Пусть и*(у) — наибольший общий делитель и(у) и и'00. Тогда w* (у) = и^ (у) ... и3кк О’) = wj О') и (у) + w2 00 “'00 > wi(y)> w2(y)G£’2[y], у7 (w* О'))7 =yi(w1(y)u(y) + w2 О’) “'О’))7-1 wi О) “ О') + +у/(*10')“0’) + и'20')“'О))/-1 • wzCr) “'О')е [^1 для всех i, / = 1, 2,... Лемма доказана. 217
Лемма 27. Если U Q PR2 (|) и для любого w G Е2 [ |] множество и U не обладает М (w)-свойством, то найдется р = — G PR2 (I) такой, v что р G Доказательство. Так как U не обладает М(£2) -свойством, то выполнено одно из условий: ui / а) найдется Д1 =-- G U такой, что щ G %Е2 [£], ut & % Е2 [£]; при этом, очевидно, Дх удовлетворяет лемме; б) найдется д2 --- G U такой, что щ S %Е2 [£], щ + v2 4 £ Е2 [5]. у2 U3 , В этом случае д2 = 1 +£---, где и3 f %Е2 (€] - Положим д = Д2 + д2 = %u3v3 + $2Пз °3 = ------2--- • Нетрудно видеть, что |м3и3 +12и3 G %Е2 [$] и %u3v3 + Уз + |2м| 0 %2Е2 [|]. Лемма доказана. Теорема 3.29. Пусть UCPR2(£) не обладает Г1- и Г2-свойствами и для любого р&Е2 (£) [z], р^ (g + z) Е2 $•) U2?2 (g), для любого ич G G E2 [ g], для любого w2 G E2 [ $] множество инеобладаетв (p)-,R (wi)-u M(w2)-свойствами. Тогда [t7] =PR2(g). Доказательство. Учитывая леммы 25, 22, 26 и тот факт, что U не обладает 1? (|)-свойством, найдутся такие натуральные г и к и такие Mj М2 U3 j I t к Д1 = --- , Д2 = - , Дз *-- , ЧТО Ml, и2, и3 £ %Е2 [$] и и = Д1, Ui v2 v3 ё*+>Д1, |Д2. £2'дз>С [£/]• Обозначим Д1 = 1*Ц1, g'><*+1gi, Д« =<2 , gi = <Д2 и покажем, что М3 I [t/'] = PR2 ({). Очевидно, что д3 = 1 + 5—7- для некоторых и3 =ль+в1£ +... Уз ...+«т-1Г“1 +S"1, U3= 1+&1S+. . . + +е». Если ui =U, то 1 G [€Л']. Если м'3 =#= 0, то возможны два случая: (t ' \ 2' —=а0$2 +-'-+am~ilm2 +5<m+1)2re [д4]; Уз / , tu' \2Г r б) и'3=# 1, Тогда (—^-) =Q(a0^2' + ••• + «т-15",2Г + t(m+l) 2r fei^ + .-.+^r^G [p4]C[t/'] л г Z 3\ , Таким образом, 1 = (дз)2 +1—,—г Покажем теперь, что \ Уз / {,г*€ [!/'], 52Г*+1 е М- Имеем ^^(Дг)2^^)2^ [{/'], е2''л+1(Д1)2, = (д'1)2,’1д1' е[И- 218
Если Wi = 1 +С1£ + ... + ст^т, Uj = 1 . + ds$s, то (дV)2 = 0(1 + + d^2r + ... + d^s2r, С1$2Г + ...+.стГп2Г) G [77']. Поэтому £2^G [77'], I2''*4’1 = |2Гк+1д^гдХ G [77']. Если k = Q, то {1, £} G [77'], и все доказано. Пусть 1. Так как %2'к, |2 k+1 G [17'], то найдется Т такое, что для всех t>T имеет место 6 [77']. Заметим, что, как следует из леммы 10, существует такое v2 (?) G Е2 [£], что Цг(5) и2 (£) = 1 + 5f‘- Можно считать, что fj > Т. Ясно, что v2 0 %Е2 [|]. । W? (5) 1 Поэтому pi =|дз = |, где u2 = u2v2. Очевидно, что [£]. 1 + £fx Заметим, что gug = (1 + ) д2 G [77'], при этом = £ + %dh (5) для неко- торого d> 1 и некоторого Л(|) &Ё2 [£]. Если Л(|) G %Е2 [£], то и6 = = ji4 = 5 + Л'(£>, где<7' >d. Если h (|) ^%Е2 [£], рассмотрим щ =u6 + i£ = = £ + $dh + (£ + ^dh)d = | + |d+1fc"(£) для некоторого й"(|) G Е2 [|] .^Повы- шая таким образом степень d, получим на некотором шаге uN= 5 + h (?) G G [77']. Но |fx ft (О = +*х + у, + ... + & +*п G [77'] .Поэтому l=uN + + 5Г,Л(5) G [77']. Снова имеем [1,5] G [ 77']. Теорема доказала. Обозначим через < 77) замыкание множества 77 £. Е2 (5) относительно операции сложения, умножения и деления. Лемма 28. Если UQPR2(^),to £ G < 77) тогда и только тогда, когда для любого многочлена р^Е2(5) [z ], такого, что р£Е2 (5) и (5 +z)E2'(g), множество ине обладает в (р)-свойством. Доказательство. Пусть для любого р G Е2 (5) [z ], р £ Е2 (5) и U (5 +z)E2 (5), множество 17не обладает 0(р)-свойством. Тогда, очевидно, найдется конечная подсистема 771 С 77, которая также удовлетворяет этому условию. По лемме 15 найдется д G PR2 ($), д ¥= 0, такой, что 5д, , 5д G [С7']сС<77) .Поэтому ? = -rr- G <77>. Г* Покажем, что если 77 обладает в (р)-свойством, то и < 77) обладает Ui и2 0 (р) -свойством. Пусть Д1 = ~, fa е Т?2 (5), Дг & Непосредствен- но проверяется, что если р делит со(Д1) .и со(д2), то р делит со(Д1 : gj). Заметим, что w(£) = z + 5, что завершает доказательство. Лемма доказана. Лемма 29. Если U^PR2(^), ре [77], то найдутся pit д2 G [77]с Mi такие, что д2 G %PR2 (5), д= --. 1 + Мг I Дз До казательство. Пусть д2 =---------— G [ 77], д3 = —— g [77], 1+Мз Mi, м", Мз, Мз G [ ] с , Мъ Мз' е $PR2 (?). Тогда М2 + Мз = М2 + М2М3 + Мз + Мг'Мэ _ М< 1 + Д2 +д” + Д2д” "1+Д5 219
Нетрудно видеть, что д4, Ms е [^Jc, Ms е^Л2(О- Далее, д2д3 = М2Мз Мб =-------------—— , и снова имеем 1+М2 +Мз +м"мз м^м'з,м’2’ + мз +М2М3 gWL,M2' +м'з +м2'м’з gW2(O- Если к паре (д2, Мз) применима Q, то I . I м • Д2 + Д2 д3 е(м2,мз)= х +д, +д»+дГ+д^’+м^'2’ ’ 1+М7 ’ и нетрудно видеть, что Мб> М7 G [tfjc, М7 € %PR2(g). Теперь доказатель- ство леммы завершается индукцией по построению [{/]. Итак, нами была построена бесконечная система ^-замкнутых классов линейных о.-д.функций /={Т0, Л, Гя,0(р),Г1,Гс,Гр, Rc(w),RD(w),M(w)}. Ниже будет доказана К-критериальность системы I в L. Сначала докажем еще одну лемму. Лемма 30. Если NCL и для любого класса Фе I имеет место N Ф, то существует конечная подсистема N1 С K(N) такая, что для лю- бого класса Фе/ имеет место N' £ Ф, и В (N*) = ф,С(^/') = ф, D(N') = ф. Доказательство. Так как N<£Vt, N$. Vh , то нетрудно показать, что в К (АГ) содержится функция f2 (xlt Xj), у которой обе переменные не- посредственные, и, следовательно, обе типа Е. Пусть f2 (х2, х2).5 5 (Mi, М2) ® П1. Mi =Т~, М2 = -А- Тогда (хиXj,хэ) =/2 (х2, (х2, х3))S wi v2 4i4,iW,M2) Заметим, что если f (xi, ..., х„) 5 (mi , -, Мп) ® П € K(N) > то для всяко- го i = 1..п найдется т?° е РЛ2(О> такая, что /(х) 5 (д,) ® е е "К (W). Это следует из того, что в К (N) имеется константная функция. Выберем в N конечную подсистему N* такую, что для любого класса Фб/ имеет место N * Ф, Это можно сделать, несмотря на то, что система классов / бесконечна. В самом деле, пусть уже выбрано конечное множе- ство ?Vi, которое не содержится ни в одном из классов То, Т\, V2, V.H, Г \ Гс, Г D. Рассмотрим множество U= { д2д2, ..., д^о} СР/?2 ($). Множество общих делителей системы многочленов {ш(дх), .... ш(д^)} с точностью до множителей из Ег (£) конечно, поэтому можно так попол- нить Nt элементами из N, чтобы это множество содержало только делители из (g + г )Е2 (О - Ясно, что полученное при этом множество N2 конечно и не содержится ни в одном из классов 9(р) системы Z. Аналогично можно поступать и для случаев /{-свойства и Л/-свойства. Система N* выбрана. Пусть N* ={ fuf2...../,}, ft 5 (Мл, ..., ntnt) ® п,-. Очевидно, что для/ = 1,...., s, j — 1, ..., л/ в Х(Л0 содержится функция 5 220
5 (д/; д{, ni -Мг, (М2)2) ® Пусть Na = 1, ..., s, j. = = 1, ..., nt }. Нетрудно видеть, что U(N0) \ { 0} = E(Na) и, кроме того, (U(N*')'> С < U(Noy> . Отсюда по лемме 28 получаем, что для любого р, М) £ 0 (Р) • Обозначим ft) (х) 5 (М/у) ® . Далее, если fa не обладает Г1 -свойством, то No £ Г1. Если fa обладает Г1-свойством, выберем рц G U(N*'), которое не обладает Г ^свойством, и рассмотрим /,+1 = Zi (Ziz (JCi), /„г (лг2)) ° O’lMy , РзРц ) ® i?,+ r Ясно, что/J+1 Г1 иП(^+1)=£(^+1). Так как N* ф Гс, N* £ Г23, то возможны два случая: а) Для некоторого I G {1, ..., s}„ fa (х1; ..., х„) ф Гс, и для некоторого 1 < / < п переменная Xj функции типа Е. Если все остальные перемен- ные имеют тип Е, то fa ф Г'0. Если имеет переменную х., типа D, то такая переменная единственная. Рассмотрим функцию fl =fi(xi,..., x.,_rfa (хп+1, хл+2 ),х.,+1,..., хл) ° . (Д/j ,... у которой уже все переменные типа Е. Так как fa ф Гс, то либо д/;.» =^тт такова, что deg и > deg v, либо найдется 1 < j " < п, j." & j ' такое, что Д/у» не обладает Г2-свойством. В последнем случае, очевидно, fa ф Г23. Если deg и > deg и, то пусть fait fa.» (... fa. t (x) ...). Тогда для под- ходящего t обязательно будет fl(xlr... , X.,_t, X .,+1, ..., xn, ), faj '(xn+2 )) ° 5 (дп ,... , ...,pln,li01,p02)^, Ufti ^°‘=иоГ’ degM<H>degU0i, г =1,2. б) Пусть а) не имеет места, тогда для любого I G { 1, ..., s}, если fa ф Г*7, то fa имеет только одну существенную переменную xf. Тогда Р/i = "^такова, что либо deguz/ = deguZ/., но ulf €Е |£2[^], либо deg иИ > deg vH. В последнем случае для подходящего t имеем Л' (4г(^1),^2,^з)^Гс, Л' (fafal),*2, *3) , и при этом все переменные типа Е. Пусть degu/i = deg ог/> G Воспользуемся тем, что в N* имеется функция fa. ф ГD. Так как а) не имеет места, то у fk не все пере- 22)
менные типа Е. Если xj — переменная типа D функции fk, подставим вместо X/ функцию fti о (д/;) ф г)ц. При этом х, превратится в пере- менную типа Е, а полученная суперпозиция не содержится в Гс и не содер- жится в Гр. Наконец, если fk имеет только одну существенную переменную х,, то пусть pkj = -jj-y-. Так как fk $ Г , то degukj > deguk/-. Но тогда. f' (fkj (xi) > х2> *з) Для подходящего t не содержится в Гс и не содержит- ся в ГD, и при этом все переменные типа Е. Таким образом, всегда найдется функция из K(N), у которой все пере- менные типа Е и которая не содержится в Гс, н найдется функция, у кото- рой все переменные типа Е и которая не содержится в Гр. Разложим теперь к/ (?) на неприводимые множители. Пусть к/ = = w'j1 wl* ... Для каждого I = 1,..., т может встретиться один из трех случаев: ф uki а) Существует nkj G U(N ), nkj = —, такой, что vkf G G w,E2 [?]. Bэтом случае функция h(xu x2, x3) - f{(fkj (xj, x2, x3) ° ° 04(Mfc/)’Z> Д1М2. 04)2) ® Vk/ такова, что h G К (N), U(h) = E(h), h ^Rc(wt) 6) Случай а) не имеет места, но fk (х(,..., xn) G N* такая, что xt — пере- менная типа E и ukt 4 wiE2 [?]. Если все переменные fk типа Е, то fk $ Rc(wl ) U RD(wl ). Если есть переменная fk типа D, то, подставляя вместо нее функцию f\ (хь х2), получим функцию fk такую, что Д’ $ Rc(Wl) и RD(wi)- Заметим, что если а) не имеет места, fk (х1, ..., хп) G N*, fk £ Rc (wt ), и имеет переменную типа D, то fk имеет переменную х, типа Е такую, что Uki $ wlE2 [$]• в) Случай а) и б) не имеют места. Тогда найдутся функции Д(Х1, ... ...,xf, ...,хш) £ Ac(wz), fj (xi, ...,xd.x„) ^RD(wty,fk,fj.&N*,Ti- кие, что Xj — переменная типа C, xd — переменная типа D, и uki wz£2[$]> udt wtE2 [?]. Тогда h = ..., xd_lr f^(x„+1, ... > xn+my, xd+l, ..., x„) имеет все переменные типа Е, h fPfwt') и UKD(wz). Наконец, пусть е2....ек — все неприводимые делители многочлена +’ v 1 и д2.fik G U(N*) таковы, что д; не обладает Af(ez)-свойством. Тогда Ду не обладает ЛГ(е,)-свойством, система NM=(fi,fi , (pi)2) ®r?Zl-. 1 = 2,...,к} 222
не обладает M(w)-свойством для любого w и, кроме того, U(NM) = E(NM). Таким образом, мы смогли построить конечную систему N' C.K(N) та- кую, что для любого класса Фе/ имеет место N' Ф н U(N') \ { 0 } = = Е . Лемма доказана. Теорема 3.30. Система классов I является К-критериальной в L. Доказательство. Нам нужно показать, что множество NCL яв- ляется A-полным тогда и только тогда, когда для любого класса Фе/ имеет место ^^_Ф. Необходимость очевидна, так как каждый из классов системы / явля- ется A-замкнутым и не совпадает с L. Докажем достаточность. По лемме 30 найдется конечный набор функций N* CK(N) такой, что U(N') = E(N'),'и для любого класса Фе / имеет место N' Поэтому, если E(N') ={ д1;..., рк}> то по теореме 3.25 най- дется такое натуральное I, что /(хь...,х2к) о (pl,p2t‘,...,р2к1, р2‘) ® Ч е K(N') С K(N). По теореме 3.29 [2Г(2УГ)J = PR2(^) и, в частности 1 е Полем- . <71 ме 29 найдутся <7ь<72е [AC/V )L такие,что 1 =-----.Отсюда 1 = <71+<?2 - 1 +<7г Г = S П;, где Пг — некоторое произведение элементов из E(N’), i = i i = 1, ..., г. Пусть г0 таково, что 2Г’ > 2г. Обозначим т = r0 + I и m = 2Гв - l.B A (7V), очевидно, найдется некоторая константная функция о (х) ° (0) ® т}°, ч° G PR2 (£) Пусть hi(x, х’) =f(fP0(x),^0(x).</>0(х), х, x",Vo(x),..., v>o(x)) 3 ii - 2 7=1, ffix'i......Xjm) = = й1-(й,( ...йДх’1, х2),й/(хз, Х4) ... ), hit hi(x,2m J.x^m 2), hi(x>m_1,x'm))...)s(pT-2l,...,pr2!) и g,-(x'l,..., 4) ,, Xr, <Po, *Po >•••.• s. T .J ~ 5 (Pf > 2 . • • • )®% • Тогда gt GK(N), 7=1.........й.Пусть й(х1;... ,x2kr) =f(gi (xlt.... • • , Xr ) , gi (xr +1 , . . . , X2r ) , . . . , gk (x2r (k_ !) +r ..X2kr)) , Й 2 223
(Mil Mi ,T. • • , Ml T,U-2, .... M2IMil, mD ® <M*/) - (Ml) ® Vi, 2r i = 1,..., k. Ясно, что для некоторых 7?,7?f GP/?2(5) имеет место h, &K(N), i = 1,... ,k. Из функций Л, ip; и </?o с помощью операции подстановки строим функцию h(xi,..., x2r) G К (N) такую, что для некоторой т?’ G G PR2 (? ) имеет место й(%1,. .. ,х2г) 5 (пГ,..., П*Т, пГ,.. ., п/)®ч’. Тогда для некоторого -г?" можно построить функцию /+(^1,^2) S (1, Й(хь...,Х1, Х2, . . ,Х2)&К(1'Г). Г г Далее, £ G [Е (N') ], и из леммы 29 следует, что найдутся q,, q2 G [Е (N’) ]с такие, что / 1 ?=-;—г. 1 + <?2 Так как /+'(xi, х2) уже построен, то для некоторых vi, V2 G PR 2 (?) в K(N) можно указать функции й((х), й2(х), такие, что h{. (х) ° (<?’) ®т?-, 1 = 1,2. Применяя операцию обратной связи к переменной х2 функции /+'(Й1 (xi), й2 (х2)), для некоторого чз получим G'(x) S (?) ® т?з G ДЛ). Таким образом, выполнены условия теоремы 3.25, следовательно K(N)= = L. Теорема доказана. Теорема 3.31. Проблема К-полноты в L конечных систем линейных о.-д.функций алгоритмически разрешима. Доказательство. Пусть N — конечная система линейных о.-д. функций. Из теоремы 3.30 следует, что для проверки А'-полноты достаточно убедиться, что N не содержится ни в одном из классов системы I . Для классов %, 7\, Vi,Vff, Г'1,ГС, fD конечность процедуры проверки вхождения функций из N в эти классы очевидна. Для бесконечной серии классов 0(р) достаточно найти наибольший общий делитель системы { oj(gj), Pj &U(N)} , что делается с помощью алгоритма Евклида. Для бесконечных серийR(w),M(w) достаточно рассматривать только множество неприводимых делителей числителей и знаменателей всех/1,-,д, G U(N), которое, очевидно, конечно. Теорема доказана. § 12. ограниченно-детерминированные функции ОДНОЙ ПЕРЕМЕННОЙ Обозначим через Р1 множество всех одноместных о.-д.функций. Каждая одноместная о.-д.функция задает отображение множества слов {0,1}* в себя. Относительно операции суперпозиции множество Р1 образует полу- группу с единицей, роль которой играет тождественное отображение. Как всякая полугруппа с единицей, Р1 содержит группу, некоторые интересные свойства которой будут изучаться в § 13. Изучение Р1 мы начнем с рас- 224
смотрения традиционной задачи о базисах, а результаты §13 покажут, что изучение Р1 может быть плодотворным не только с точки зрения ’’внутрен- них” задач теории автоматов, но и с позиций других разделов математики. Как было показано, в Р существуют Х-базисы и S-базисы, конечные и бесконечные соответственно. В Р1 нет Х-базисов и S-базисов; при этом достаточно рассмотреть только суперпозицию, так как операция обратной связи здесь существенной роли не играет. Суперпозиция константной о.-д.функции с произвольной функцией из Р1 снова дает константную о.-д. функцию. Если через К обозначить множество всех константных о.-д.функций из Р1, то, как нетрудно видеть, имеет место Лемма1. ЕслиМ^Р1 , S(Af) = P‘, то S(Af\(Af ПХ)) ЭР1\К. Таким образом, всякая S-полная в Р1 система содержит подсистему, состоящую только из неконстантных о.-д. функций, которая порождает суперпозициями все множество неконстантных функций из Р1. Заметим, что применение операции обратной связи к любой функции из Р1 дает константную функцию. Вместе с тем нетрудно указать две неконстантные о.-д. функции из Р1, суперпозиция которых порождает константную. Например, функции F i (х) и F2 (х) , заданные диаграммами (рис. 3.36), таковы, что Fj (F2 (х) ) = Г7, где у = 0, 0, ... , состоит только из нулей. Заметим также, что для любых двух константных о.-д.функций Г71 нГ7] можно указать такую некон- стантную о.-д. функцию F(х) изР1, что Г(Г71(х)) = Г71(х). Отсюда получается следующее усиление леммы 1. Лемма 2. Если S(Af) = Р1, то Ъ(М\(МС\ X)) = Р1. Поэтому, если в Р1 существует S-базис, то этот базис не содержит кон- стантных функций. Аналогично теореме об отсутствии конечных S-полных систем в Р уста- навливается Рис. 3.36 Лемма 3. ВР1 нет конечных ^полных систем. В дальнейшем через Fa (х) будем обозначать остаточную функцию для о.-д.функции F(x), порождаемую словом a G{0, 1} . Через т [F(x) обо- значим ограничение F(x) на словах длины г. Множество всех взаимно однозначных отображений из Р1 обозначим через A S2. Лемма 4. Множество A S2 образует группу относительно операции суперпозиции. 15.В.Б. Кудрявцев 225
Доказательство. Достаточно показать, что для взаимно однознач- ного конечно-автоматного отображения обратное отображение также является конечно-автоматным, т.е. для любой функции Г(х) изА52 най- дется такая о.-д.функция Р"‘(х), что F(F~1(x)) = Е(х), где Е(х) - тождественное отображение. Пусть F(x) реализуется конечным автоматом V= ({0, 1} ,Q, {0,1} ,<р, ф, q). Рассмотрим конечный автомат V’ = = ({ 0,1} , Q, {0,1} ,</?', tp,q) такой, что </?'(<?, х) =</?(<?,х), если ^(<7,х) = = х и </?'(<?,х) =</? (<?,х),если ф(д,х) =х. Очевидно, что для любого слова а е {0,1} * 1 [Яа(х) = x,H = F(G (х)), где G(x) — о.-д.функция, реализуе- мая автоматом VОтсюда и вытекает G (х) = F~l (х). Лемма доказана. Будем называть AS2 группой автоматных подстановок. Нетрудно видеть, что для Р1 справедлива Лемма 5. Если Б(М) = Р1, то S (М O.AS2) =AS2. Нетрудно получить некоторые простые характеристики Р1 иЛ52. Через r [Р1 обозначим множество всех ограничений r [F (х), F (х) G Р1. Множест- во r [Р1 с операцией суперпозиции образует конечную полугруппу, которая является гомоморфным образом полугруппы Р1. Рассматривая последова- тельность г = 1, 2, 3,..., получим последовательность гомоморфизмов Р1 на конечные полугруппы Р \ г = 1,2,..., Р^ = r [Р1. Аналогичную процедуру можно провести для группы A S2, получая в качестве гомоморф- ных образов конечные группы A S/1 \ A s£2>, ... Поэтому имеет место Лемма 6. Группа AS2 (полугруппа Р1) является подгруппой прямо- го произведения П AS^ (подполугруппой П Р^’^). 1=1 1 = 1 Перейдем к задаче о S-базисах в Р1. Будем говорить, что Р(х), F(x) G е Р1, имеет ранг г, если r [F(x) G AS2r^ и г +1 [F(x) ^AS/r + Если F(х) имеет ранг г, то найдется слово а€{0,1)* длины г такое, что 1 [Ра (х) = с>с е(0,1}, и для любого слова а длины t <г функция 1 [Fa (х) существенно зависит от переменной х и, следовательно, есть либо f(x) =х, либо/(х) =х. По определению F(x) имеет бесконечный ранг, если F (х) е € A S2. В этом случае для любого слова а е{ 0,1} * 1 [Fa(x) =fa(х), где ли- бо уа(х) = х,либо/а(х) = х. Таким образом, если автомат ({0,1} , Q, {0,1}, <р, ф, q) реализует функцию из AS2, то в каждом состоянии этого автомата реализуется функция, существенно зависящая от входной переменной х. Ограниченно-детерминированная функция Р(х) называется атомарной, если существует слово а 6 {0,1}* такое, что 1 [Ра (х) = с, с€{0,1},и для любого слова /3 ¥= а функция 1 [Р^ (х) существенно зависит от перемен- ной х. Ясно, что ранг атомарной функции, характеризуемой словом а длины t, есть t. Тождественное отображение Е(х), т.е. единица полугруппы Р1 реализу- ется автоматом ({0,1 },{<?}, {0, 1}, <р, ф, q) с одним состоянием, где 4>(ц,а}~<1, =а, д£{0,1} . Пусть t — натуральное число. Назовем t-приближением о.-д. функции Р(х) о.-д. функцию fF(x) такую, что: а) '[Лх) = '№); б) для любого слова а длины t fFa(x) = Е(х). 226
Назовем t-продолжением о.-дфункции F(x) о.-д.функцию fF(x) такую, что: a) = W); б) для любого слова а длины ttFa(x) = Fa(x). При t = 0 по определе- нию считаем, что 0F(x) = Е(х), oF(x) = F(x). Из определений t-приближения и t-продолжения следует Л е м м а 7. Для любого t > 0 F(x) = fF(tF(x) ). Пусть F(x)- о.-д.функция такая, что существует t (зависящее от F), для которого fF(x) EAS2. Обозначим через D,DCPl, множество всех таких функций. Нетрудно видеть, что A S2 С D, S (Я) = D. Из определения ранга следует Л е мм а8. Пусть F(х), F{(x),i= 1,... ,к, - о.-ц.функции рангов r,ri,i= соответственно (случай бесконечных рангов не исклю- чается) и F(x) = Ft (F2 (.. .(Fk (x)...)). Тогда г = min (г/ }. Теперь наша ближайшая цель — показать, что для любой S-полной в Р1 системы М справедливо T,(MCW) = D. Для этого мы сначала покажем, что с помощью операции суперпозиции из одной атомарной функции ранга г и функций из AS2 строятся все атомарные функции ранга г, любая функция из D строится из атомарных функций и функций из AS2, а далее показывается, что для любого г = = 0,1,... любая полная в Р1 система содержит атомарную функцию ранга г. Этому посвящены следующие три леммы. Лемма 9. Пусть F(x), (7(х) - атомарные функции ранга г. Тогда F (х) е Z(AS2 U{G(x)} ). Доказательство. Из атомарности G(х) следует, что существует единственное слово а длины г такое, что 1 [<7а(х) = с2 = const. Пусть 0 — слово длины г такое, что 1 [F^ (х) = с2. В A Si, очевидно, найдется функция Н(х) такая, что Я(0) = а. Тогда U(x) = G(H(х)) есть атомарная функция такая, Что 1 [Цз(х) = ct. Пусть 1/(0) = у. В AS2 найдется функция Н1 (х) такая, что 1 [Я^,(С1) = с2. Тогда V(х) = Н1 (U(x)) — атомарная функция такая, Что 1 [КДх) = с2. Информационные деревья функций V(x) и F(x) могут отличаться теперь лишь в вершинах, которые соответствуют словам, не равным слову 0. Заметим, что r V(х) е AS2. Возьмем в AS2 элемент Н2 (х) такой, что '•[Я2(х) = '-[Д('-^)Г1)- Элемент (rV(x)) "* существует в AS2 в силу того, что ранг V(х) равен г . Тогда, если И3 (х) = H2(V(x)), то r [F(x) = г [Я3(х). Если при этом выбрать Н2 (х) таким, чтобы 1 [Н\ (х) = х, где 8 = V(0), то Н3 - атомар- ная функция такая, что r [F (х) = г [Я3 (х) и 1 [Я| (х) = с2. Нам осталось ’’исправить” Я3 (х) таким образом, чтобы ее значения совпали со значения- ми F(x) на словах длины, большей или равной г. Пусть £ - произвольное слово длины г, £ =/=/3, F(g) = i? и F(l-a) = ра',аё{0,1}. Рассмотрим функ- цию Т(х) из AS2 такую, что Т^(х) = (Я3)"1(Я?(х)), £ ¥= у, 1 [Т7(х) = х, 7\0(х) = (Я3)”* '(FSa(x)) н для любого слова а длины t, t < г, 1 (Та(х) = х. 15 227
В силу атомарности функций Н3 и F остаточные функции (Я3)^1, F^, H3a'yi.F^a принадлежат AS2. А так как 1 [/^(х) -х, то Т(х) действительно принадлежит AS2. Непосредственно проверкой можно убедиться, что F(x) = Н 3(Т(х)). Лемма доказана. Лемма 10. Пусть F — произвольная функция из множества D. Тогда существует конечный набор атомарных функций Н1, . . ., Нт~1, Нт та- кой, что F ,. .. , Нт } UAS2). Доказательство. Если F& AS2, то лемма доказана. Пусть F $ AS2. Тогда существует такое t, что tF G AS2. Доказательство леммы проведем индукцией по числу t: a) t = 1, тогда F — атомарная функция ранга 0; б) пусть для t<k лемма доказана, и пусть kF&AS2, a F$AS2. По предположению индукции, к - 1-приближение ^k~l^F функции F можно построить из атомарных функций и функций из AS2. Заметим, что для любого слова а длины к — 1 функция Fa либо атомарная (ранга 0), либо принадлежит AS2. В первом случае для слова а можно построить ато- марную функцию Н такую, что: 1) Яа(х) = Га(х); 2) Я7(х) = Е(х), уФа, длина у равна к — 1; 3) 1[Я/3(х) = х, где длина (3 меньше к — 1. Во втором случае возьмем функцию Я, удовлетворяющую условиям 1) — 3), которая, очевидно, будет принадлежать AS2. Нетрудно видеть, что если U = “1 ^F, то £ _ 1 Я(х)=Я(Я‘(Я2(...(Я2 (х))...))), где функция Н‘ соответствует Z-му слову длины к — 1. Лемма доказана. Лемма И. Если U(x) = F(H(x)) - атомарная функция ранга г, то одна из функций F, Несть атомарная функция ранга г. Доказательство. Если одна из функций принадлежит AS2, то другая, очевидно, атомарна. Пусть F ф AS2 и Н AS2. Если ранг Н не равен г, то найдется слово а длины t, t ¥= г, такое, что 1 [Яа(х) = с = const. Тогда 1 [ /7а(х) = с' = const, что противоречит условию леммы. Если сущест- вуют два разных слова а и /3 длины г такие, что 1 [Яа(х) = сх и 1 [Я^(х) = с2, то 1 [Яа(х) = с'1 и 1 [Ц}(х) - с2, что также противоречит условию. Следова- тельно, Н — атомарная функция ранга г. Лемма доказана. Следствие 1. Если Ъ(М) = Р1, то для каждого г = 0, 1,.. . М со- держит атомарную функцию ранга г. Следствие 2. Если S(M) = P1, то S(AJOD) = D. Теорема 3.32 [2]. В Р1 не существует ^-базиса. Доказательство. Достаточно показать зависимость всякой систе- мы М, такой, что S(Af) =Р1. Так как S(Z>) =D, в М найдется элемент F $D. Пусть ранг F есть г. По следствию 2 имеем DCS(M \ F). Возьмем (г + 1)-продолжение (r + i)F функции F. Очевидно, что (r+i)F $ AS2, и ранг этой функции р > г + 1. Если (-r+l^F — (г + 1)-приближение F, то F(x) = <f + 1)F((f + i)F(x)), причем (/" + 1)F GD,и поэтому (-r + 1^F & S(Af\ F). 228
Так как ранг F меньше ранга (r + i)F, то (r + \)F не может быть получена суперпозицией с участиемF (лемма8). Поэтому в силу полнотыМ ^r + lyF& G S(Af\F). Таким образом, F G S(M\F) , и зависимость М доказана. Теорема доказана. § 13. ГРУППАМ, В этом параграфе мы рассмотрим некоторые свойства взаимно одно- значных отображений из Р1. Пример группы AS2 показывает, что конечные автоматы могут служить хорошей моделью для решения задач из других разделов математики. Здесь будет рассмотрена одна проблема из теории групп, известная как проблема Бернсайда [23]. Напомним некоторые определения. Порядком элемента g группы G на- зывается такое наименьшее натуральное число t (если оно существует), что g* = g ... • g = е. Группа G называется периодической, если каждый , - элемент группы имеет конечный порядок. Группа называется конечно- порожденной, если существует такой конечный набор ее элементов gi, g2, . .., gn, что любой элемент группы может быть получен из элементов gi, ..., gn применением конечного числа раз операций умножения и взя- тия обратного элемента. Для периодических групп, очевидно, достаточно использовать только умножение, так как если gt = е, tog'1 =gt~1. Проб- лема Бернсайда состоит в нахождении бесконечной периодической конечно- порожденной группы. Следующая теорема дает положительное решение этой проблемы. Теорема 3.33 [3]. В AS2 существует бесконечная периодическая конечно-порожденная подгруппа. Мы укажем две конкретные о.-д.функции, которые содержатся в AS2 и которые порождают относительно операции суперпозиции подгруппу с указанными свойствами. Заметим, что AS2 является 2-группой, т.е. любой ее элемент конечного порядка имеет порядок, равный некоторой степени числа 2. Лемма 1. Если F G AS2 - элемент конечного порядка, то его порядок есть степень числа 2. До казательство. Индукцией по t покажем, что для любого т > 1 F2 (а) = F(F. .. F(a)... ) = а для любого слова а, а G{0, 1}*, длины Г. 2? а) г = 1.1 [F(x) = х или 1 [F(x) = х . И в том, и в другом случаях 1 [F2 (х) = = 1 [F(F(x)) =х, и,значит, ‘[F2(a) = a, aG{0,1}. б) Пусть а - входное слово длины t - 1, [F„ (х) = oG {х, х}. По 1 предположению индукции, F (а) = а. Из детерминированности F следу- ет, что для любого a G {0, 1} ,r-i of-l of-i F 2 (а«) = F 2 (а) Fa2 (а) = а а(а). Поэтому F2 (aa)=F2 (F2 (aa)) = F2 (ао(а)) = ао(о(а)) = аа. 229
Индуктивный шаг доказан. Если теперь для любого t F F Е, то найдет- ся бесконечно много номеров t\, t2, ... таких, что F2' = F2 г -... . Так как F 2 1 F Е, то для некоторого а е {0,1}* длины г, г > tx, F 2 ‘(а) ¥= а. Вместе с тем, взяв Г, > г, получим F (а) = а, что противоречит равенству 21; - Г i F = F . Лемма доказана. Пусть F, Н — некоторые элементы AS2, П = (F, Я) - порожденная (с помощью суперпозиций) ими подполугруппа группы AS2. Пусть L(x) = = Yl(Y2 ... (Ym(x))...) — элемент П, У,- = F или У,- = Н, i = 1, .. ., т. Для произвольного слова а длины г, г > 3, определим понятие а-ранга элемента Z(x). Составим последовательность Г = yoi, Ti i, • • •, Тот, • • , Ут _ j длины md, элементами которой являются слова Yoi =а, ^ + 1,/ = 0<i<m-2, 7o,/+i =YI(ym_l ), 1</<Я Нетрудно видеть, что у0 . +1 = L (т0/-). В качестве d возьмем наименьшее число, такое, что Ld(a) = а. Выберем в Г подпоследовательность Г, со- стоящую из всех таких слов у^ , для которых: а) Ут_(- =F; б) Т// имеют вид all ... lb, a, b G {0,1). Построим по Г последовательность из 0 и 1, заменяя каждое слово уц его последней буквой. Пусть получилась после- довательность Го = 0s 1 Н’ 0^ . . . 1**, где slj > 0, кроме, быть может s° и з^. Заменяя, наконец, в Го выражения 0 ' на 0 и 1 ' на 1, i = 1, ..., к, получим последовательность $ из 0 и 1. (Если s? = 0, то £ начинается с 1, если = 0, то % кончается 0.) Определим теперь a-ранг L как число f max(£0, kF), если к0 #=0, к{ ¥=0, R(L, а) = . I 0 в противном случае, где к0, кх — число нулей и единиц, соответственно, в последовательности £. Последовательности Г, Г и £ будем называть соответственно (L, а)-, (Л, а)- и сокращенной (L, а)-последовательностями. Поясним содержательно смысл введенного определения a-ранга. Пусть G, V - элементы AS2 и а е{0,1}*. Рассмотрим суперпозицию U(x) = = G(V(х)). Для того чтобы определить, какая функция (х или х ) реали- зуется в начальном состоянии остаточной функции Ua(x), нам достаточно знать следующее. Пусть Oi = 1 [ VJ^x) — функция, реализуемая в начальном состоянии оста- точной функции Va(x), и пусть V(a) = р. Если о2 = 1 [G^(x), то = = O2(CTi(*))- Аналогично мы можем поступить в случае суперпозиции т о.-Д.функций, т > 2. Заметим, что если а1 = о2, то 1 = х> и поэтому, если U(a) = y, то для любого b € {0, 1} U(ab) = U(a)Ua(b) = yb. 230
Таким образом, если 1 = х, то U(x) не меняет последней буквы при применении к слову ab. Если при т > 2 среди соответствующих аг, о2,..., ат четное число индексов i таких, что о, = х , то суперпозиция Щх) не меняет последней буквы при применении к слову вида ab. Будем, далее, рассматривать такие подполугруппы П = (F, И), у кото- рых образующие F и Н обладают следующими свойствами для любого а длины г, г>3; а) Яа(х) = £(х); б) если 1 [Яа(х) = х, то а - а 11 ... 10, a G{0, 1}. Лемма 2. Пусть L £ П, а £ {0,1}*, адлины г,г> 3, Ld(a) = а. Если R(L, а) = 0, то для любого слова 0 L2d(a0) = а0. Доказательство. Пусть R(L, а) = 0. Это значит, что сокращенная (L, а ^последовательность % или пустая, или £ = 0, или £ = 1. 1) £ = А — пустая. Тогда среди слов yt/-, входящих в (L, а)-последова- тельность Г, нет слов вида all ... 10. Из определения (L, а)-последователь- ности следует, что в начальном состоянии остаточной функции Ld реализу- ется х, т.е. 1 [£«(*) = * Поэтому, из того, что Ld(a) = а, для любого a £ £ {0,1} получаем Ld(aa) = аа. Нетрудно видеть, что сокращенная (L, аа) -последовательность снова пустая, и случай 1) доказан. 2) £ = 0. Пусть Г — (L, а)-последовательность. Для произвольного a £ £{ 0,1} построим также (L, аа) -последовательность Га. Нетрудно видеть, что в Га могут войти лишь те слова, начала которых являются элемента- ми Г. Нов Г не входят слова вида fell ... 1, fe £ {0,1}, так как в этом случае $#=(). Следовательно, последовательность Га пустая, а вместе с ней и сокращенная (L, аа)-последовательность пустая. Остается заме- тить, что если Ld(a) = a, то L2d(aa) = аа, и мы пришли к случаю 1) для слова а а. 3) | = 1. Это значит, что Г не содержит слов вида b 11 ... 10 и в силу а) и б) заведомо будет l[La(x)=x. Поэтому для произвольного «£{0,1} Ld(aa) = aa. Кроме того, (L, аа) -последовательность получается из Г при- писыванием ко всем словам Г буквы а. Поэтому сокращенная (L,aa)-по- следовательность £ а есть 0 при а = 0 и 1 при а = 1. По доказанному при а = 0 для любого 0 имеем L2d(aa0) = аа0. К словам вида al мы снова можем применить наше рассуждение, так как Ld(al) = = al и £ 1 = 1. Снова будемиметь L2d(alO0) = alO0, Ld(all) = all,. .. и т.д. Лемма доказана. Следствие. Пусть существуют такие t и d, что для любого слова а длины t Ld(a) = а и R(L, a) = 0. Тогда L2d = Е. Лемма 3. Для любых L, a € {0, 1}*, а длины г, г > 3, а £ { 0, 1} имеет место соотношение R (L, a)>R (L, аа). > Доказательство. Пусть d — наименьшее число, такое, что Ld(a) = a. 1) Пусть 1 [Z-a(x) = х. Если R (L, а) > 0, то в (L, а)-последовательности Г по крайней мере одно слово оканчивается буквой 0. Но никакое такое сло- 231
во не может быть началом слова из (L, аа) -последовательности. Поэтому длина сокращенной (L, аа) -последовательности не больше числа единиц в сокращенной (£, ^-последовательности %. Следовательно, R (L,aa) < <R(L,a). 2) Пусть теперь 1 [Lda(х) = х, и пусть Г = у10 у}. . . . ylm .. . ydm_l- (L, ^-последовательность. Так как Ld(aa)=aa daa, то Г" будет уже иметь длину Imd. Расположим элементы Га в виде матрицы с двумя стро- ками: I 70# 71^1 Im — 1 &т — 1^ли—1 X ЛГ =|l — 112 1 12 222 d d2 I. \7oa y\a\2 .. . a%2 . .. ym_T Заметим, что для всех i,j а[х = а\г Поэтому в Г "-последовательность войдут те слова из Г", начала которых есть слова вида у- =М1 ... 1, у! еГ. При этом, если слово ууО вошло в Г °,то и слово уу1 1 войдет в Г а и наоборот. Кроме того, если ух и уг стоят рядом в Г и оба оканчи- ваются буквой 1, то в Г ° будут стоять рядом слова У10, у20. Поэтому длина сокращенной (В, аа) -последовательности £ " не более чем удвоен- ное число единиц в сокращенной (L, а) -последовательности |. Поэтому длина не превосходит 2R (А, а). Но в число 1 совпадает с числом О (к0 = kt), поэтому R (L, аа) <R(L,a). Лемма доказана. Замечание. Если 1 [В d (х) = х, то ранг строго убывает. Введем понятие типа (А,а)-последовательности Г. Пусть иа — число слов из Г, первая буква которых есть а, а последняя — 0, a С {0, 1} . Будем говорить,’что Г —^последовательность типа{0), если и0 четно, Г — типа {1}, если Ui четно, Г - типа {0,1}, если и0 +ut четно. Последовательность Г, вообще говоря, может иметь несколько таких типов, но ясно, что всег- да — по крайней мере один. Лемма 4. Для любого L G П существует такое натуральное tL, что для любого слова aС {0, 1}*длины г; г > tL,и любого слова (3 R(L,a) = R(L, ар). Доказательство. Пусть ={«!,. .., а21} — множество всех слов длины г. Разобьем В* на подмножества В- (которые мы будем назы- вать г-блоками) таким образом, что для любых двух элементов ,82 из В? найдется такое d, что Ld(fix) = 82. Заметим, что начала одинаковой длины г' слов из одного t-блока Вк принадлежат некоторому блоку В] . Будем говорить, что Вгк содержит В* и писать В/ СВ'. Каждому г-блоку В можно приписать некоторое значение ранга R(B) =R(L, у), у С В, не зависящее от у. Пусть В3 = В3 U... UB3 и R(B3) =Tj. Пусть для определенности С &Bl,Ldi (61)=81. Если1 [Z.d* (х) = х, то для любого а 6 {0, 1} Ld (8 lta) = = 81аиВ(В,51а) <R(L,Si). ' 232'
Если же 1 [Ld' (х) = х, то в Я4 будет лишь один блок, содержащий В\, и при этом R (В 3i) >R (Bt). Продолжая индуктивно этот процесс, мы по- лучаем: либо число блоков В[ из В*, содержащих некоторый блок 5*-1 из Bf~l равно 1, либо таких блоков 2, но тогда их ранги строго меньше R(B/~1). В силу конечности чисел г;-,/ = 1,.. . ,п, существует такое Г, что R(Bi -1) =R(Bs ) для любых блоков В[~1 СВ* , г' >f, откуда и следует утверждение леммы. * Лемма 5. Если для некоторых Z СП, а С {0,1} длины т,г 3, ai, а2 С{0, 1},7?(Z, а) =F (Z,aai) =7? (A, aajа2) > 0, (L,aai)- и (L ,aaia2) -последовательности имеют одинаковые типы. Доказательство. Тип (Z,ааха2)-последовательности Га 1 “2 опре- деляется теми словами в (В,a«i)-последовательности Г"1, которые окан- чиваются буквой 1. Пусть d — такое число, что Ld (а) = а. В силу первого равенства 1 [Ld (х) = х. Поэтому в Г"1 вместе со всяким словом вида т?1 входит слово вида т?0 и обратно. В силу второго равенства это справедливо и для Г а,а2. Следовательно, множество слов из Г^"2, которые оканчи- ваются буквой 0, можно получить из множества слов Га 1, оканчивающихся буквой 0, следующим способом: у каждого слова вида tjO из Г а* заменяем последнюю букву на 1 и приписываем 0, т.е. получаем, что если т?0 С Г01, то т?10с Г"1"2, и таким образом может быть получено всякое слово из Га'а2. Поэтому, если Га‘ имеет тип w С {0},{1 },{0, 1}, то и Г41"2 имеет тип V. Теперь мы можем сформулировать все свойства, которыми, в допол- нение к свойствам а) и б), должны обладать функции Н и F: в) 1 [Я(х) = х, 1 [Я! (х) = х, 1 [Яо (х) = х; г) 2 [F(x) = Е, 1 [Fo 0(х) = х ; д) пусть t = r(mod3), а — слово длины г, а = а11 ... 10, 1 [Fa(x) =х тогда и только тогда, когда первая буква а принадлежит Ат, где Ао ={0}, At = {1},Л2 ={0,1}. Лемма 6. Группа П периодическая. Доказательство.В силу следствия из леммы 2 достаточно показать, что для любого L С П существует такое tL,что для любого слова а длины tL R(L, а) = 0. По лемме 4 существует такое t'L, что для любого слова а длины s > t'L илюбыха!,а2,... С{0, 1} R(L,a) = R(L,aala2...ai) = r, 1=1,2,... Предположим, что г >0. Тогда по лемме 5 типы (L ,ааг,... at)-после- довательностей совпадают для всех i = 1,2,... Из построения F (х) (ус- ловие д)) следует, что для любого типа w найдется tQ>t'L такое, что функциях" реализуется как раз в таких состояниях F, которые являются начальными состояниями остаточных функций Fp (х), (3 = b 11... ... 10 длины г0> b&v. Но по определению типа число вида b 1 ... 10, b&v, в (L,aar .. .а,о)-последовательности четно, если и — тип этой 233
последовательности. Поэтому, если d такое, что Ld (aai . ..aio) = aav ... • • -^i0> и если 0 = aat .. .ate, то 1 [Ld (x) =x. Но тогда в силу замечания к лемме 3 R(L, аа2 ...aio)>R(L, aat ...aio a,o + 1), и наше предположение о том, что г > 0, привело к противоречию. Лемма доказана. Лемма 7. Группа П бесконечная. Доказательство. Индукцией по числу к докажем следующее ут- верждение: для любого 0 и любого а €{0,1} существует элемент Ул>а G е П и такие bi, b2, di, d2 G {0, 1}, что для любого слова 0 Yk,a(did200 .. Од|3) = *1*2О. .^0(3. к к+1 Еслиа = 0, то в качестве Yk<a можно взять Е. Пусть а = 1. 1) к = 0. По построению F имеем Я(001(3) = 000(3, т.е. Уо = F. 2) Пусть утверждение доказано для всех к<*к0. Покажем, что тогда существует такой Yko + l, что для некоторых di,d2,bi,b2 и любого 0 Ykv + i(<M2 0..J) 1 0) = bib2 0 ... 00. ко + 1 к0 + 2 По предположению индукции, существует У*о - i: Yk0-i(d\di 0, , ,0 1 0) = Zi^O^J) 0. к q —1 к Следовательно, У'1 ,(*'1*2 0 .. .0 0 1 0) = d'1d2O . ..0101(3. * *0-1 Заметим, что с помощью подходящей степени Я можно любое слово длины 2 перевести в любое слово длины 2. Переведем с помощью Я слов о dld20... 0101(3 в слово bib2 0 ... 01010 *о —1 так, чтобы можно было применить (существующий по предположению индукции) элемент У*1 _2; 1 013) = d”d2 0 „-9 11 010. *0-1 *0-2 Применяя аналогично подходящие степени Я и элементы У^1 _3, . .. , Уо1, получим элемент TG Я такой, что ° T(did2 0 . . . Ol(3) = cic2 1 ... 1 0 1(3. к о + 1 к Q По построению F (условие д)), для любого ? > 3 существует слово а вида с 11... 10 длины t, такое, что 1 (х) = х. Полагая t0 = к0 + 3, нахо- дим соответствующее слово и с помощью подходящей степени Я перево- 234
дим слово Ciс21.. .1 010 в слово cl.. .1 010. Далее имеем , *o+1 F(c И 1010) = с 1 . . . 1,000. *o + 1 к0 + 1 Переводя с помощью Н слово с 1 в 00 и применяя F, получим слово 0001. .,.100 0. Применяя к этому слову подходящие степени Н и элементы *о-! У1, У2,..., получим слово Z>iZ>20.. .0000. Мы получили, таким образом, /г 0 элемент Yk<> + i такой, что длялюбого 0 У*о +!(<М2 0^. . 0 10) = b 1Ь2 0 . . . 0 0. I о +1 *0 + 2 Требующееся нам утверждение доказано. него сразу следует, что в П для любого к существуют элементы Zk такие, что для любого I l^^l) = 0_0 1 ... 1. к I к I Ясно, что Z, & Zj при i^=j,i,j=i,2,... Лемма доказана. Лемма8. ФункцииF и И ограниченно-детерминированные, при этом f2=e,h4 =е. Доказательство. Непосредственной проверкой можно убедиться, что F и Н, удовлетворяющие условиям а) — д), могут быть реализованы автоматами с 7 и 3 состояниями соответственно, диаграмммы которых приведены на рис. 3.37 (<?0 — начальное состояние). Из лемм 1—8 следует теорема 3.33. Для тех, кто интересуется проблемой Бернсайда, укажем еще книгу [23], где показана связь приведенного нами примера и ряда появившихся позд- нее примеров бесконечных периодических конечно-порожденных групп. 235
§ 14. ГОМОМОРФИЗМ АВТОМАТОВ. МОДЕЛИРОВАНИЕ В начале этой главы мы заметили, что изучение абстрактного автомата V = (A, Q, В, </?, 0), задачу построения этого автомата из других можно в известном смысле свести к изучению некоторой о.-д.функции многих пере- менных и к задаче выразимости этой функции через функции из некоторо- го множества. При этом буквы входного алфавита и алфавита состояний (а также выходного алфавита) заменялись наборами нз нулей н единиц. Нетрудно заметить, что такая замена — кодирование — не определена одно- значно. При этом совсем не ясно, как выбирать подходящее кодирование Ф' , ?' 4' х 0'-—- В' А' х 0 --------- О' 'I I' ♦ I' 'I I- , -I А х 0 —- В А х 0 ----- О aj 6) Рис. 3.38 для достижения той или иной цели. В качестве целей можно было бы ука- зать возможность ’’декомпозиции” автомата на ’’меньшие компоненты” или возможность ’’экономной памяти” и др. Однако в каждом случае мы должны быть уверены, что выбранная о.-д.функция действительно ’’моде- лирует” нужные нам свойства исходного автомата. Для формализации вышесказанного нам понадобятся понятия гомомор- физма и моделирования. Определение. Автомат V = (A, Q, В, <р, 0) гомоморфен автомату V' = (A', Q', В', <р ' 0') (К является гомоморфным образом К'), если существуют такие сюръективные отображения и: А -> A, s: Q' Q, w. В -+В, что диаграммы а) и б) (рис. 3.38) коммутативны. Другими словами, для любых q' G Q, а' G А ' <p(s(q'),v(a')) = s(ip'(q',a')), p(s(q'),v(a'.)) = w(p'(q',a')). Будем говорить в этом случае, что тройка (v,s, w) задает гомоморфизм Гил w автомата V' на автомат V. Гомоморфизм Гил>и, является изоморфизмом, если v,s,w — взаимно однозначные отображения и для любых q G Q, a G А имеет место /(* -1 (<?), и-1 (a)) = s -1 (<p(q, а)), Ф и*1 («)) = w*1 а)). Автомат V = (A, Q, В, <р, ф) называется подавтоматом автомата V' = = (А', Q', В', , tp'), если A CA',QCQ\BCB' н для любых a G A, q&Q, ^(q, a) = ip'(q,a)&Q, ip(q, а)= ip'(q, а) &В. Определение. Автомат V = (A, Q, В, <р, р) моделируется автоматом V' ~ (А', Q',B', <р', р'), если существует подавтомат V" автомата V такой, что V является гомоморфным образом автомата V". Моделирование называется точным, если указанный гомоморфизм явля- ется изоморфизмом автоматов. Таким образом, моделируемый автомат 236
гомоморфен некоторому подавтомату моделирующего автомата. Этот под- автомат будем называть моделью автомата V в автомате V'. Предложение 1. Отношение моделируемости -транзитивно. Доказательство. Пусть тройка (£ i, £2> £з) задает гомоморфизм подавтомата Wi автомата К' на автомат V и тройка (i?i, т?2, Рз) - гомомор- физм подавтомата W2 автомата V" на автомат К.'Пусть IV । = (A, Q, В, 0)и W2 = (A, Q,B,(p,$). Рассмотрим множества А' ={ а|т?1 (а) £ А, а ЕА }, Q' - (q\Pi(q)^Q, {b |т?3(/>)е В, Ь&В}. В силу того, что тройка (т?1,т?2,^?з) задает гомоморфизм, Из = (Ar, Q', В', $?', ф'), где (р, ф' — ограничения <р, фна Q' X А', есть подавтомат автомата W2 и, сле- довательно, автомата V" . Нетрудно видеть, что тройка (£ i t?i , % 21?2,? з %) задает гомоморфизм W3 на V, например, ?2 Ь?2 [£'(«',«')] ] = ?2 1?1(«))] =МЬ(1?2(<7))Л10?1(Я))], где (ро — функция переходов V. Предложение доказано. Если решается задача кодирования алфавитов A, Q, В, например, набо- рами из 0 и 1 длины п, тп, г соответственно, то в алфавитах {0,1} {0,1}m и {0,1} '’выбираются некоторые множества А' С {0,1} ”, Q' С{ 0,1 }т и В' С {0,1}такие, что | А '| > |Л|, 12'|>121, |Я'|>|5|. После этого указываются три отображения (на) и: A'-+A,s: Q-+Q, w: В'-^В и на множествах A', Q',Вгопределяются функции переходов и выходов и 0', так что тройка (v,s, w) задает гомоморфизм автомата (A', Q , В , ip', 0') на автомат V. После этого функции <р'и 0' доопределяют на множествах {0,1}", {0,1} т и {0,1}г. Таким образом, возникает абстракт- ный автомат, моделирующий автомат V. При этом выбор параметров и, т,г, множеств A', Q’, В', отображений и, s, и» и доопределение функций <р' и 0' может быть проведено многими способами. Естественное на первый взгляд стремление к точному моделированию может вступать в противоречие с другими задачами, например, может случиться так, что при точном моделировании невозможна декомпозиция на автоматы с меньшим числом состояний. Поэтому мы будем, вообще говоря, рассматривать гомоморфные моделирования. В случае, когда задача кодирования (основным алфавитом является Т = {0,1} ) алфавитов автомата V решена, возникает моделирующий авто- мат V' с алфавитами {0,1} ", {0,1} т и {0,1}г . Как показано в § 1, Этому автомату, если начальное состояние зафиксировано, однозначно соответст- вует некоторая о.-д.функция (приг> 1 о.-д.вектор-функция (f\,.. . ,fr)), которая может быть задана, например, каноническими уравнениями. Точно так же по о.-д.функции, заданной каноническими уравнениями, может быть однозначно построен абстрактный автомат (инициальный), который вычисляет эту функцию. Поэтому мы можем говорить о том, что о.-д.функция f (xj, . . . ,х„) моделирует инициальный автомат V, если V моделируется автоматом V который вычисляет функцию f, и при этом гомоморфизме начальное состояние V есть образ начального состояния Vf. В предыдущих разделах мы рассмотрели лишь случай г = 1, когда выход- ной алфавит равен {0,1 }. Чтобы оперировать с вектор-функциями, необхо- 237
димо распространить действие введенных операций суперпозиции и обрат- ной связи (соответственно изменятся и операции над схемами). Операция подстановки. Здесь мы разрешим одновременную подстановку нескольких компонент f^, . . . , f{ вектор-функции (/i, • • ,//, > • • ,fik, . ,fr) вместо переменныхx/ t,...,Xjk в функцию (й 1,. .., hs). При этом получится функция (/1, • • ,fit + I, ,fik-l,fik + l, • • > • ,4 , • • ,ftk, • ,xlt,hs(.. .)). Таким образом, выходами получившейся схемы (рис. 3.39) будут все выходы схемы Si, кроме й,...,-ijt, и все выходы схемы S2. Операция обратной связи теперь применима к выходу fj функции/= (Л,.. . ,fr) и входу xh если fj зависит со сдвигом от х,. При этом (рис. 3.40) выход с номером / остается выходом получившейся схемы. Кроме этого, добавим еще две операции. Операция 7 - объединение. Если множества переменных о.-д. функ- ций Л = (f},... ,f} ) и f2 = (f i ,.. • ,frt) не пересекаются, то функция f = (ft,... ,fr ,fi...../г2) получается изД и/2 с помощью операции?. Операция 8 — изъятие выходной переменной. Из о.д. функции f = ~ (fl, • • • ,fr) , r > можно для любого j = 1,. .., г получить функцию f'=(fl,..., fj-l,fj+l,...,f). Операция 7 выводит за класс Р, так как из двух о.-д. функций (с одним выходом) получается вектор-функция. Операция 8 не применима к функ- циям (условие/- > 1) изР. Добавляя эти операции (7 и 8) к операциям суперпозиции, очевидным образом расширяем действие операторов замыкания S и К. Полученные- операторы будем обозначить теми же буквами. Вернемся теперь к задаче моделирования автомата И = (4, Q, B,ip, ф,q0) некоторой о.-д. вектор-функцией. Как было отмечено, моделирую- щая функция может быть выбрана многими способами. Нас будет инте- ресовать следующий вопрос: нельзя ли сначала ’’разложить” V на неко- торые ’’меньшие” компоненты, затем смоделировать каждую из компо- нент некоторой о.-д. функцией, и, ’’соединяя” подходящим образом по- лученные функции, получить искомую моделирующую о.-д. функцию 238
/г? Мы далее будем вместо ’’вектор-функция” писать просто ’’функция”, если это не приводит к неясности. Пусть V = (A, Q, В, (/>, ф) - конечный автомат. Рассмотрим три типа разложения (декомпозиции) автомата V на две компоненты, которые будет называть бинарными декомпозициями. Пусть Vi = (Ai ,(21,51, ipi, V'i), Vi = (Л2, Qi,B2,q>2, Фг) - автоматы. 1°. Пусть Н: Bi ХЛ1 ->Л2 - отображение. Будем говорить, что И = = (Ai, Q, В2, Ч>, Ф) — последовательное соединение Vi и V2 с оператором связи Н если Q = Qi ^02,^'. Q^Ai -^Q,^((qi,q2),a) = (^i(qi>a), #2(q2,H (Ф1(Я1,а),а)У) рря всех qi&Qi, q2 G Q2,a&Ai (рис. 3.41). 2°.. Пусть А, В — конечные алфавиты, Нг: А ->Л i X А2, Н2: Bi X В2 -> ->Л — отображения. Будем говорить, что автомат V = (A, Q,B, ф) есть Рис. 3.43 Рис. 3.41 Рис. 3.42 параллельное соединение V\ и V2 с операторами связи Hi и Н2, если Q = Qi X 0.2> и для всякого а&А, если Нх (д) = (дь а2), ai EAi,a2 G А2, то ^((qi,q2)>a) = (q>i(qi,ai), q>2(q2,a2)) и ^( (<? i, <?2 )»О =H2 (Ф1 (<7i, 01), & (<72, л2)) (рис. 3.42). 3°. Пусть А,В - конечные алфавиты,//1: Bt X А ХВ2 -*Ai, Но: Вх X ХА ХВ2 -+В, Н2- Bi ХА ХВ2 ->Л2 — отображения и Н: BiXAXB2-+ -*Л1 ХВХА2 — такое отображение, что для всякой тройки (bi,a,b2), bi & Bi,a £ A, b2 G52, H(bi, a, b2) = (Hi (bi, a, b2\H0(bi,a, b2),H2(bi, a, b2)), Vi, V2 — автоматы Мура, т.е. ^i(<7i.0i)= M<7i),<7i еЛг, Ф2(Ц2, ‘И^ФгСЧг'), <7з GQ2, а2 €Л2. Тогда автомат V = (Л, Q,B, i/>, ф) называется произведением автоматов Vi и V2'c оператором обратной связи Н (коротко — о.с. произведением), если Q-Qi XQ2 и для всякой тройки (bi,a,b2}, bi &Bi,aEA,b2 &В2, еатН(Ь1,а,Ь2) * (ai,b,a2), Ф1ОЧ1.У =bi^(q2) = b2, то <p((<?i,<?2),0')= = (¥’i(<7i,0i),V’2(<72,02)) и V/( (<? i , <7a ),«) = Ho (^ (<7i),«, Ф2 (<72)) (рис. 3.43). Скажем, что автомат V моделируется бинарной композицией автоматов Vi и V2 (или что автомат V допускает бинарную декомпозицию на автома- 239
ты Kj и К2), если V является гомоморфным образом некоторого подав- томата автомата V’, который получен из l''i и 1'2 с помощью одного из соединений 1°, 2°, 3°. Теорема 3.34. Пусть о.-д. функции f\ и f2 моделируют инициаль- ные автоматы (Vi,q°i) и (Е2>^§), и автомат V допускает бинарную де- композицию 1° или 2° на автоматы Vj и Vг так, что его состояние qо при гомоморфизме есть образ состояния^, <?2). Тогда существет о. -д. функция f, моделирующая инициальный автомат (К,<7о)> такая, что f £ ^({f i, f2> /ш У )>где/ш - истинностная о.-д. функция - "функция Шеффера". Рис. 3.45 Рис. 3.44 Доказательство. Рассмотрим случай 1° — последовательное со- единение. Пусть о.-д. функции fj,i = 1,2, моделируют автоматы (К,-, q’t), i =1,2, соответственно, И; = (Af, Q{, Bj, у{, . Если/,- вычисляется автоматом V; = ({0,1}"', {0, 1} {0,1} 0,-,^/), то можно указать такие подмножества А, С{0,1}"?,Q- С{0, 1}"4, В’{ С{0, 1}г? и такие сюръективные отображения gj; A'i -*-А(,^: Q't -+Qt,%3'- В\ ~>-В(, что ес- ли — ограничения функций на множестве Q't ХЛ'-,то V't = = — подавтомат автомата Vt, и тройка (£ь £2, £з) задает гомоморфизм К,-на К,- такой, что (?(*) = <?“, i =1,2. Пусть схемы 51 и S2 реализуют функции f2 и /2 соответственно (рис. 3.44). Пусть теперь автомат V является гомоморфным образом подавтомата W' некоторого автомата W, который является последовательным соединением Ki и V2 с оператором связи Н. Рассмотрим истиностную о.-д. вектор-функ- цию fH (х?,..., х\, xf,...,x^) = (/?,...,/^), 1}г>Х{0,1}"> -> 40,1)"’ такую, что если Н ((01, - • • ,&,)) = 6i,$l («i,-.-, %)) = а2 и Н(Ь1,а1)=а2, то fH (pi,..., рГ)aR>) = (71,..., , где 11 ( (71 > • • • > 7я2) ) = а2. Таким образом, £] (fH (J3, а)) =Н (£ i (0 ), £} (а) ). Рассмотрим схему на рис. 3.45. Эта схема реализует суперпозицию/0 функций /т,/н,/1, а так как /н может быть построена из/ш,то /° G 240
G L({/] ,/2,/ш }) • Покажем, что /° моделирует автомат (V,q°). В самом деле, о.-д. функция/0 вычисляется автоматом V0 = ({0,1} "*,{ 0,l}m 1+т’, {0,1}^,^°, 0°) с начальным состоянием, которое определяется начальны- ми состояниями автоматов, вычисляющих/1 и/2. Рассмотрим подавтомат Vй автомата Vй: в качестве подмножества входного алфавита можно выбрать Л'1, подмножества состояний — Q\ XQ'2 и входного алфавита - В'2. При этом и 0° ’’сохраняют” выбранные подмножества, т.е. </>° (q, a) G Q\ X Q'2 и 0° (q,a) G В'2, если набор q G X Q2 и a G А\. Это сле- дует иэ определения этих множеств и определения функции /я. Таким образом, V0 = (Л\, Q\ XQ'2,B'2,<p° ,ф°) - подавтомат автомата V 0, вычисляющего /°. Укажем теперь тройку (171,%,1?з) отображений,задающую гомоморфизм К 0 на автомат W, так что q2 ((д°у fq% ) ) = (q°,q2). Для этого возьмем q j = = 5i,t?2 = 5 г Х5Г- Т?2 ((«1, • •• • .,um,)) = (51(«i, •• -,ит>), 51 (Vi, •• • ,vmi)) И7?3 =H- Для функции переходов <pw автомата Wимеем <Pw 6?2 (41,42), i?i (a)) = <Pw({51 ( 4i), 51 (4> )}, 51 (a)) = (</>1 (£2( 4i), 5} (a)), ¥>2 (51 ( 4г ), Я(0 j (Й (4i), 51 (a)), 51 (a)))) = (w,, w2). С другой стороны, i?2(</>°((4i,4),4)) = ’?2(41(41,4),Й(&,/н(01(41,«),д)))=(51(Й(41, a)), 51 (Й(4г, fH(0 1(4i ,a),a)))) = (w'i, w2). Покажем, что wl=w\,w2=w2. В силу гомоморфизма У'1 на V t имеем 51 (<4i (fill ,а)) = ¥>i (51 (41), 51 (а)), в силу гомоморфизма V2 на V2 — =<p2^l(q2),^(fH(^i(qi,a),a)), и нам достаточно показать, что Н(Ф 1 (51 (41), 51 (а)), 51 (а)) = 5? (/н (01 (<7i, а), а). Пусть 01(41,а) =31 тогда 0(£1 (41), 51 («)) = 5з (4), т-е.Я^з1 (4), 51 (а)) = = 5 i (fn 0?> а) ), но это следует из определения///. Таким образом, 1?2 (</>° ((4i, 4г ),а)) = fw (i?2 (41 ,q 2,171 (а)). Аналогично доказывается, что 1?з(0°((41, 4г), а)) = 0W(172(41,4г), 171(a))- Таким образом, тройка (т? 1, т?2 > J/з) задает гомоморфизм У0 на W . Автомат V является гомоморфным образом подавтомата W' автомата W. В силу предложения 1 автомат V является гомоморфным образом подавто- мата К0 и, следовательно, является гомоморфным образом некоторого подавтомата автомата К0, вычисляющего функцию /°. Заметим, что все отображения были определены таким образом, чтобы начальное состояние <?о автомата V было образом начального состояния автомата К0 при этом гомоморфизме. Для случая 1° теорема доказана. 16.В.Б. Кудрявцев 241
Случай 2°—параллельного соединения—рассматривается аналогично. Теорема 335. Пусть о.-д. функции и f2, у которых каждый выход со сдвигом зависит от всех переменных, моделируют инициальные автома- ты Мура (F], q°) и (V2, соответственно, и автомат V допускает бинар- ную декомпозицию 3° на автоматы V\ и V2 так, что его состояние q0 при гомоморфизме есть образ состояния (<71,72). Тюгда существует о.-д. функция f, моделирующая инициальный автомат (V, q°), такая, что f G Доказательство этой теоремы аналогично доказательству теоремы 3.34. Перейдем к изучению бинарных декомпозиций автомата. Предположим, что автомат V допускает бинарную декомпозицию на автоматы и И2; V\, V2 V — автоматы приведенного вида. Рассмотрим случай 1° (см. рис. 3.41). Пусть W — последовательное соеди- нение-автоматов V\ = (Ai, Ql} 0i) и V2 = (A2,Q2,B2,<p2,02) c оператором H,H: Bi XAi ->A2, = (A1, Q’,B', p, Ф*) — подавтомат ав- томата Wn (т?1,7?2,7?з) — тройка, задающая гомоморфизм автомата Wi на автомат V = (А, Q, В, р, ф). Рассмотрим покрытие я множества состояний Q, т.е. такой набор под- множеств (блоков) что Б/ Cg.UB,- =Q,bi . При этом разные блоки, вообще говоря, могут иметь непустое пересечение. Пусть qj G Qi. Для построения блока Б/ рассмотрим множество Б; = ={<? G 21 Я ='n2(q1i,q2),q2 Тогда я = {Б1,... ,Бк} - множество всех таких блоков. Берутся только такие qj G Qt, для которых Б(- . Так как q2 не обязательно взаимно однозначное отображение, то может случиться, что для некоторых io,/o> io ^Jo, существуют такие q2,q2, что (<7,!О,<?2) g Q', &Q' * *12 (fl} ^2) = ’?2 (q}9,q%) = Q- Таким обра- зом, q войдет в оба блока Б1о и Б/ о. Если дополнительно потребовать, что- бы число состояний V1 и V2 было строго меньше, чем число состояний V, то Б; ¥=2, i = 1,. .., к. Заметим, что выбранное нами покрытие я = (Б1,..., Бк) множества Q обладает следующим свойством: (*) для всякого Б, и для всякой входной буквы a G А найдется блок Б;- такой, что если q G Бг, то p(q, a) G Б,-. Следуя [58], назовем всякое покрытие я на множестве состояний, обладающее свойством (*),покрытием со свойством подстановки или с.п. покрытием. Рассмотрим теперь случай 2? (см; рис. 3.42). Пусть W — параллельное соединение V\ и V2 с операторами Н2 и Н2, а и (rji, tj2, i?3) имеют тот же смысл, что и выше. Мы можем теперь рассмотреть два покрытия Я1 и я2 на множестве состояний Q автомата V. Покрытие Я! то же, что и выше: для fl J-G 61, Б/G ffi, Б(- ={q G Q\q = = (q р Qг), q 2 G Q2 } , оно связано с автоматом Vi. Покрытие я2 связано с автоматом V2: для всякого qj G 62 образуем блок Ej'={q G Q lq -rj2(qi, <7/),<7i e Qi J Нетрудно видеть,что покрытия Я1 и я2 есть сл. покрытия. Пусть Я1 = (Bt,__, Бк)., я2 = (Б/, . . . , Б^). Мы можем рассмотреть покрытие я = Я1Я2, которое определим следую- щим образом: я<Я1, т.е. всякий блок я содержится в некотором блоке 242
TTj , Я < Я2 И ДЛЯ любого Я' ¥= Я, такого, ЧТО Я < я' ИЛИ я'^ Я1 , или я' я2. Заметим, что в рассматриваемом случае Я1 я2 ={{ qx} , . . . {qr}}, т.е. каждый блок содержит только одно состояние. В этом случае будем писать Я1 • я2 = 0 и называть покрытия тг1 и я2 взаимно ортогональными. Таким образом, в случае параллельной декомпозиции на множестве состояний автомата можно указать два взаимно ортогональных с.п. пок- рытия. Наконец, рассмотрим случай 3° (рис. 3.43). Предположим, что V моде- лируется точно. Можно заметить, что теперь Я] и я2, вообще говоря, каждое в отдельности не обладает свойством ( *). Рассмотрим теперь покрытия v2 и р2. Для всякой буквы b, G Bj рас- смотрим множество состояний U} = {q \Q=‘n2(q1,q2), Ф1<Л1') = bt,qi &Qr,q2^Q2} Так как V\ — автомат Мура, такое определение корректно. Пусть Pj = = {17},..., U\ } . Аналогично, для всякой буквы bj&B2 рассмотрим 1<?=т?2(<?1,<?2), ^2(q2) = bj,qi &Qi,q2^Q2} и v2 = {ul,... ,U2 } . Заметим, что Я1 < i>i и я2 < i>2, имея в виду, как и выше, что два покрытия я и я' находятся в отношении я < я', если вся- кий блок я содержится в некотором блоке я'. Обратимся теперь к схеме на рис. 3.43. Предположим, что мы знаем, в каком блоке Б,- покрытия Я1 находится состояние V в текущий момент (т.е. в каком состоянии находится автомат Vi). Тогда в силу Я1 < Vi мы знаем выходной сигнал автомата V\, который поступает на вход опера- тора Я. Теперь заметим, что для того, чтобы знать состояние в следую- щий момент времени, нам достаточно знать не состояние К2, а лишь его выходной символ, т.е. блок разбиения v2, в котором сейчас находится состояние V, а также входной символ автомата V. Другими словами, если рассмотреть покрытие pi = Я1 v2 = {Ri, ,Rj} , то два покрытия pi и яь рассматриваемые вместе, обладают свойством: (**) для любого блока Rj покрытия pj и любой входной буквы a G А существует блок Б, покрытия Я1 такой, что если q е 7?,, то <p(q, a) G Бу. Будем говорить, что два покрытия Р1ИЯ1 (в указанном порядке) образуют иокрытий <pi, Я1 >. Проведем теперь аналогичные построе- ния для V2 и получим покрытие р2 такое, что р2 = я2 i>i, причем < р2, я2 > — пара покрытий. Изучение бинарных декомпозиций привело нас к рассмотрению множест- ва покрытий на множестве состояний автомата, а также некоторых бинар- ных отношений на множестве покрытий, например отношение Я1 < я2 или отношение < Я1, я2 >. Сейчас мы введем формальный аппарат — опишем некоторый тип бинар- ных отношений, получивших название алгебры пар [58]. Определение. Пусть L i и L 2 — конечные структуры. Подмножест- во Р С L j X L 2 является алгеброй пар тогда и только тогда, когда: а) Если (яь pi> £ Р и < я2, р.2> G Р, то < Я1 • я2, ру р2} GP и (Я1 + я2, pi + р2> G Р, где Я1 • я2 — наибольшая нижняя грань (н.н.г.) тг1 и я2 в L j, р! • р2 - н.н.г. pi и р2 в L2, nj + я2 - наименьшая верхняя грань (Н.В.Г.) Я1 и я2 В Z1; pi +р2 — Н.В.Г. pi и р2 в Ь2. 16* 243
б) Для любого п EZ] ир £Z2 (я, D.GP и < 0, р) ЕР, где 1 — макси- мальный элемент в L 2, а 0 — минимальный элемент в L х. Пусть теперь Q — конечное множество, Q = (qx,..., qn}, и L — множест- во всех покрытий множества Q, т.е. конечных наборов подмножеств Q. я = = {Bj, ..., Б/}, где Б,- £ Q, Б,- £ Б, при i ¥= /, ОБ,- = Q, Б/ ¥= ф, i = 1,..., I. i В случае, когда для всяких i ¥= / Б,- П Бу = ф, покрытие я называется разбиением. На множестве L покрытий определим отношение частичного порядка <, полагая, что для покрытий я2 ={Б'1Б{ } и я2 ={ Б2,..., Б,2} имеет место <я2 тогда и только тогда, когда для любого i = 1, ..., li найдется такое j G{1,... , Z2}, что Б- С Б 2 . Подмножества Б,, i = 1, ..., I, входящие в покрытие, будем называть блоками. Таким образом, если Я1 < я2, то каждый блок Я1 содержится в некотором блоке я2. Очевидно, что в L имеется единственный максималь- ный элемент 1 = {Q} — покрытие, состоящее из одного блока, которым является само множество Q, и единственный минимальный элемент 0 = = {{«? J , • • • , {qn}} - покрытие, содержащее только одноэлементные блоки. Определим теперь Я1 • я2 как наибольшее покрытие я0, такое, что Яо < < Я1, я0 < я2, и Я1 + я2 как наименьшее покрытие я0, такое, что Я1 < я0 и я2 <я°. Таким образом, L — конечная структура. Точно так же можно считать, что L* — множество всех разбиений на Q — есть конечная структура. Будем говорить, что два элемента q и q' связаны покрытием я (обозна- чается q ~q'), если в этом покрытии имеется блок, содержащий q и q' од- новременно. Пусть V = (A, Q, В, <р, ф) — автомат и L — структура покрытий на мно- жестве состояний V. Будем говорить,-что покрытия я2 и я2 из£ образуют пару < Я1, я2>, если для любых q, q' G Q и для любого a G А имеет место: Я1 , , если q ~ q , то <p(q, а) ~ <p(q , а). Теорема 3.36. Множество пар покрытий множества состояний авто- мата является алгеброй пар. Доказательство. Пусть PQL XL — множество пар покрытий и <Я1, я2> G Р, (рь р2) ЕР. Тогда < Я! • Pi, я2 • р2> G Р. В самом деле, для f я 1 Pl I TT 1 f Pit любых Е0и a EA имеет место: если q ~ q , то q ~ q и q ~ q , тт 1 । Pl f поэтому >p(q, a) ~ >p(q, а) и (<?, a) ~ >p(q, а). Следовательно, <p(q,a) ~ <p(q,a), что и требовалось доказать. Покажем, что + Pi , я2 + р2> € Р. Нетрудно показать, что для любых двух покрытий 7Г ’ +я2 ! ! Я2 I *тт, я2 из £ имеет место: если q ~ q . то q ~ q , или q~ q . Поэтому, если q ~ q , то q ~ q , или q ~ q . В первом случае д) ~<f(q , а), и, следовательно, <p(q. а) ~ 4>(q, а). Во втором Р“2 f 7Г j + Р । случае ip(q, а) ~ <p(q, а), и снова ip(q, а) ~ ^(q, а). Очевидно, что < 0, я> и < я, 1> —пары покрытий для любого покрытия я. Теорема доказана. 244
Аналогично доказывается Теорема 3.37. Множество пар разбиений множества состояний авто- мата является алгеброй пар. С каждым покрытием я из £ можно связать покрытие /л (я) следующим образом: «?(я)= П pt. <я, р,->ер Лемма 1. /л (я) < я тогда и только тогда, когда я - с.п. покрытие. Доказательство. 1) Если я — с.п.покрытие, то < я, я> G Р, поэтому П Р; = ( П Р; ) • я С я. < я, р(- > ер < я, р(.>ер 2) Пусть т(я) < я. Нетрудно видеть, что <я, т(я)> ё Р. Кроме того, < 0, я> е Р. Поэтому < я + 0, те(я) + я> = < я, я> €Е Р, т.е. я — с.п.покрытие. Лемма доказана. Теорема 3.38.Пусть V = (A, Q, В, <р,ф),гг — с.п.покрытиемножества состояний Ф 1. Тогда V моделируется последовательным соеди- нением двух автоматов Vi и Т2 с ni и п2 состояниями соответственно, где «1 — число блоков в гг,а п2 — максимальная мощность блока в я. Доказательство. Пусть я = {Bj, ..., БП1) и п2 = max | Б,-1 . i Так как я - сллокрытие, то для каждого i G {1, ..., «J и каждой бук- вы а найдется номер 0, а) такой, что <р(Б6л)= {<p(q, д)|<? £Б, }С Б^/.д). В качестве значения а) фиксируется один из возможных номеров с этим свойством. Рассмотрим автомат И = (А, {1,2,... ,И1), {1,.. . , 01), где </>] только что определена, a 0i(z, а) = i. Таким образом, автомат V\ ’’следит” за номером блока покрытия, в котором находится состояние ав- томата V. Пусть } — множество из п2 элементов. Рассмотрим автомат V2 = (А2, {и2, ... , и„2), В, <р2, ф2). Здесь А2 = = {1, ХА. Перенумеруем каким-либо способом состояния в бло- ках: Б^ = , qSi, ..., qsls}, ls <n2,s = 1,... , nx. Определим <p2 и ф2 следующим образом: <р2(и,, (s, а)) = и,, если <p(cisi,a) = qs>, s'= <pi(s, а); &2<Ui,(s< a))= &(qsi,a). Теперь, выбирая в качестве оператора связи тож- дественный оператор H(i, а) = (i, а), рассмотрим последовательное соедине- ние К; и И2. Непосредственной проверкой убеждаемся, что если т? х, т?3 - тождественные отображения А ->А тлВ^В, ар2: {1,..X{ui,... ,ип }-> -> Q, т)2 (i, Uj) = qtj G Б/, то тройка (pi, р2, р3) задает гомоморфизм после- довательного соединения Vx и V2 на автомат V. Теорема доказана. Теорема 3.39. Пусть V = (A, Q, В, ф) — автомат, Я!, я2 - с.п.по- крытия множества состояний V, Я] • я2 = 0. Тогда V моделируется парал- 245
’’следит” за тем, в каком блоке покрытия я; 1, 2. Так как по условию rrt я2 = 0, то, зная блоков nj, я2 соответственно, в которых на- _ _ — » . — _ _ I . — дельным соединением автоматов Kj и V2 с щ и п2 состояниями, гдепх - число блоков я1# п2 - число блоков я2. Доказательство. Пусть rri = {Б j,.. ., БП]}, я2 = {Bj,..., Б^} . Рассмотрим автоматы V] = (А, {1, ..., и,}, {1, ..., и, } X А, <р{, ф(), i = = 1,2, у которых функции i/>;, определены следующим образом: Vi (j, л) = /', если </>(Бу, д) С Бу', <p2(j, «) = / ", если (Б,-, a) Q Б’«; при этом фиксируется одно из воз- можных значений /и/", Ф/O', а) = (/, a), i = 1,2. Таким образом, автомат К,- находится состояние V, i = одновременно номера j i, j2 ходится состояние q G Q, имеем q GBy», q GBy", l Бу» (ЛБу» | = 1. По- этому { q} = Бу- П Бу". Таким образом, можно задать отображение т?2: (1____и,} X {1,..., п2 } -+Q такое, что {элемент множества Б.- П Б*,-, если Б; П Б',- = ф, q0 в противном случае. Определим операторы связи и Н2: Н^. А ->А X A, HJ.a) = (a, д), Н2: 11,.. . ,nJX А X {1,... ,я2} ->5, H2(i,a,j)= ф(т]2(1',/),а). Если теперь т?1, т?з — тождественные отображения, т? j: А ->А, т? з: В -+В, то непосредственно проверяется, что тройка (t?i, т?2, т?3) задает гомомор- физм параллельного соединения и V2 с операторами связи Нг и Н2 на автомат V. Теорема доказана. Теорема 3.40. Пусть V = (A, Q, В, Ф, ф) - автомат uni,ir2~ покры- тия множества Q такие, что Я] • я2 = 0. Тогда V моделируется произведе- нием автоматов V\ и V2 с обратной связью, при этом число состояний V} есть число блоков яь число состояний V2 есть число блоков гг2. Доказательство. Пусть я2 ={БЬ ... ,Б„ } , я2 = {Б J,..., Б„ } . Рассмотрим автоматы =(А Х{1......и2}, {1,..., nJ, {1,...,«!},<₽!, ф\), К2 =(А X {1,. .., nJ, {1,... , и2}, {1,.. ., п2}, ф, ф2), где если Б/ Cl Б'. = {q } и ф(д, д) G Бг, в противном случае; если Б^С1Бу = {^} и a) G Bj, в противном случае. Так как Я1 я2 = 0, то </>i и <р2 определены корректно. Кроме того, мож- но определив»отображение т?2: {1,... ,пг} X {1,... ,п2} -^Q такое,что элемент множества Б,- П Бу, если Б, Ci Бу ф, qo в противном случае. 1, 1 (a, /)) = Z, 'РгО'. (а./))= j ! tli (j, f) = 246
Функции зададим следующим образом: ф{ (к, (а, /)) = к, i = 1, 2. Опре- делим теперь оператор обратной связи Н = (Hi, Но, Н2), Hi'. АХ X (1, .. . ,и2}-М X {1,... ,п2) иН2: А X {1.П1} ->А X (1 — тождественные операторы, а Н0'. {1, ..., и ц} X А X {1,..., и2} -►£ такой, что H0(i, a,j) = ф(т?2а). Заметим, что если i?j, т?3 — тождественные отображения, г)1 . А -*Л, т?3: В-*В, то тройка (rji, В2, Вз) задает гомо- морфизм подавтомата W произведения V\ и V2 с оператором обр