Текст
                    

КОНЕЧНЫЕ АВТОМАТЫ: ЭКВИВАЛЕНТНОСТЬ И ПОВЕДЕНИЕ МОСКВА «НАУКА» ГЛАВНАЯ РЕДАКЦИЯ ФИЗИКО-МАТЕМАТИЧЕСКОЙ ЛИТЕРАТУРЫ 1984
32.81 К 64 ’ УДК 62-50 Авторы - 1 ( / \ Н. Il UJU»Q?w ^ЖЛИХАЙЛОВ, ' ' ' В. В. ТУДНЬв; А^А.ТАЛк •r^rXrsvwVT*'i \С V.С С? \ \ у^_ \_ » ' » , V_ . V ч*' \ Конечные автоматм:*кэквиважнтнф!т^ 1СтГО^ед(?ЩТе.— М.: Нау- ка. Главная редакцияуфизико-хлштемкшческай литераторы, 1984.— 192 с. В книге излагаются результаты работы авторов по созданию теории конечных автоматов, основанной на применении отноше- ний эквивалентности. Наряду с традиционными задачами, решае- мыми в теории автоматов, предлагаемый подход позволяет ставить п решать многие новые задачи, например, задачу о реализуемости заданного поведения в автомате определенного класса (инициаль- ном, детерминированном, полностью определенном, автомате с ко- нечной памятью), задачу об эквивалентности двух неипициаль- иых автоматов и др. Книга предназначена для специалистов, работающих в обла- сти исследования и проектирования дискретных управляющих устройств, а также для математиков, специализирующихся в тео- рии автоматов и языков их описания. Илл. 59. библ. 57 наав. Николаи Николаевич Иванов, Геннадий Иосцфович Михайлов, Всеволод Викторович Руднев, Алексей Алексеевич Таль КОНЕЧНЫЕ АВТОМАТЫ: ЭКВИВАЛЕНТНОСТЬ И ПОВЕДЕНИЕ Редактор С. В. Петров Тех. редактор А. П. Колесникова. Корректор М. Л. Медведския ИБ № 11673 Сдано в набор 20.04.83. Подп. к печати 06.12.83. Т-22256. Формат 84хЮ8,А2. Бумага тип. JM5 1. Обыкновенная гарнитура. Высокая печать. Условн. печ. л. 10,08. Условн. кр.-отт. 10,28. Уч.-изд. л. 10,39. Тираж 3600 экз. За- каз Кз 602. Цена 1 р. 60 к. и Издательство «Наука». Главная редакция физико-математической литературы 117071, Москва, Ленинский проспект, 15 Типография № 4 ивд-ва «Наука» 630077, Новосибирск. 77, Станиславского, WTv^TT» / „ 1502000000—012 К 053(02)-84 J30‘84 ПО7ТГГТТЛгёдатёльёт^во «Наука». Т5ШННЙЯ»редакция физико-математической литературы, 1984
ОГЛАВЛЕНИЕ иииийЭи'ДдЧ а ийнк'лРы и.н.пм'К! (ьшил.ншьО Ujiun.iih.uu , Предисловие......................, . ., ,................4 _uiAt Oji » j л i j if sji i‘UJ ih»h ij Ui«biJ 1» i 1» iA V > u x. Введение ... .......................... 7 Общие понятия'им обозначения^’’. •/* \ ‘“х/. 1£ Глава I. Конечный автомат — модель и поведение . . 17 ьииншыл, 1 £Л ;м \нн.н<нн ,иЛН. Z.UP. лкииоян; ii-UliO- § 1. Конечные автоматы................................17 § 2.1ТдйедеШ1ё йРнтЬ^^йтОм^’^А11 rJi?sli'22 ГЛ й й‘аД11Ь ОписДййё1 ^егУлгЯ0^й^ АШЬЖес^ '?4 Л Ji*з£ < ^”§<4/Свойства ^классов ^явноро?Ч)тнвшеяия ’Э^йпвалентио-* А*ч л,', стя^Двдхшат 4«.(Z4 iJitelUU 3 I . 44*« 44л 41> ^ДА !UM 32 ЖЖ." ?ЖР«Е..9ЗДЯЮИй КШЖ<);. пых множеств ....................................3/ ’•1 §’ 3. ‘ЖыШ ^ВвиШЛ^йШйк’ ^еобрйзУвйпйЙ1 ' ’ V”*“У и\ ’ " J41 мн § 4» Ют^юшенж‘^акв1!валентностп-£’^ ».иьоЧи.. е ь ^«.кон^у. л.1. j Д ,Алгоритмы анализа. .и, сцп^еаа. автоматов i. |-4rf<.» ii. 'ai'HJ. «53, r^ABiaoJJI.JfevPWW дополнения дс£теории НЭП........ ^Д.^Тэдремы:о .размерах ЯЭЩ„..о,.»,.;>.*^4 uhwav ч I 2. Язык эквивалентах. 4прербрд^о^дийоД^ДД? л “'ТЗ. Операций над множествами, описанными на ЯЭП 80* Г л’а в а ‘IV.’'Языки ’ эквивалентных йреббразЬванйи и копеч- ° " ’ г iWattTt)5faTHb!ef’Atif6^eiGT‘Ba!; . H. 5!\p ,i/i ? *Г'“УМ\ ?;,iUt‘‘93 s ‘ § 1? РоалйзусАюстВА4 мйбжёё^вим кб^^йй^Н/^ ай¥бМЙШкц J н‘ 33 / Knl^.PoaiWy&MoeTB -множеств^ де<рерйинировантями4 aBMUJU,t ? 4.1.4^ .иЛР^Тамд4 •<! ^МП1Ь#1*Л.. VlAUiWH .<< *i А Улдин 117 § 3. Реализуемость мвджестд ^ue^ijnajibjij,!^, ЭДГрма-:51. тами . . . \ . 109 Г л* а й а1 ’ V.7Мн6>кёс*гваJ с 1ко’нечнЙи ’памятью ? °ь? /. * 112 ^0*д^‘ объекта 'с* кбиечпбйА памятью r“y,Uli‘”4 '•м§"2?Свойств МйожйСтй*^-кбяечШй^йаШ^кГ ’• ./,‘,.“4 ti? / м11§.»3^1С®ойагваиМКП^^реалн8ушмх автоматами^”‘.и н* - И. Л 4* М C.W} Ся ? .ВДМЯТЬЮ Л И14 ЯДЬШИ11 ЭКВИ ВЙ7 4 .мик 4 х 1 -•Ч,'5?'0НрксйЬЖ^Яй&^ Г л а Т^/ЙёкЬ^ЬйШ ^п^Улбжёнпя JA ? У \°? f 14.1U*\ *п<? УГ44 §р 'Г ftfйййм^зйЦпя’ числа!1 ‘ состоянии ’ ъдетермпнйровап- '•‘Ч“ ЬНлЫ^К^Вте^^.Н»)'! blHHMh/Will’jj мп HMiprA h.i §»)2.1 Расшифровка айтоматовмо»«1«мощьюиапкечн®го под-* “ н' “» • * I W Г,’, 1*3^ iHijflbituUM л • <Н pint • A.«il48 § 3. Поведение $вух} взаимосвязаннее автоматов ^Р^це-д t е ,/п • ,s‘ ,J jiifpyid^nx1 ^0,ёму°<<6б1ъёкт,>управленйя — управ- ' ” ляющёё. устройствб^1 *. / м. i, s»;iu > J 7 *Й1 4.?/Язык параллельных 1К©м>по8иций*ч' - у* >•».•*• ч, ♦.< " р,”1164 П,р.И ЛЮ1Ж ОЛЛЬвк» j /мцн'нп лтол.-;«ЫМ1 V'M • v *.«i.,<.»м. н « 184 Дишература у и* i iuni.4i iv.i»cii<”*м. о.<> .га1.> >*чин‘Л ХНМ
ПРЕДИСЛОВИЕ Возникшее сравнительно недавно понятие конечного автомата стало фундаментальным для современной теории и практики управления дискретными процессами. При проектировании и исследовании дискретных уст- ройств (называемых также релейными) центральными являются задачи описания и анализа их поведения, т. е. описания и анализа реализуемых этими устройствами операторов, определяющих соответствие между входными и выходными последовательностями. В общем случае бесконечные множества вход-выходных последовательно- стей, реализуемых этими устройствами, являются регу- лярными, а используемые для их описания средства на- зывают языками описания регулярных множеств. Важ- нейшим из таких средств является конечный автомат, который удобно использовать и в качестве модели диск- ретных процессов. Конечный автомат, а также и такие средства описания регулярных множеств, как язык регу- лярных формул и порождающие грамматики типа 3 по классификации Хомского, образуют группу средств, при- способленных для изучения основных свойств регулярных множеств и потому лежащих в основе их теории, или иначе — теории конечных автоматов. Наряду с названной существует и применяется груп- па языков, более удобных для практики проектирования дискретных управляющих устройств, но менее пригод- ных, чем языки первой группы, для решения основных проблем теории конечных автоматов. В числе таких язы- ков можно назвать языки таблиц включений, графов пе- реходов, логических схем и графов алгоритмов и др. В книге излагаются результаты работы авторов по созданию теории конечных автоматов, основанной на при- менении отношений эквивалентности и возникшего на этой базе нового подхода к описанию регулярных мно- жеств, который по своей природе следует отнести к пер- вой из упомянутых групп. Наряду с традиционными задачами, решаемыми в теории автоматов, такими как исследование теоретико-множественных свойств регуляр- ных множеств, задача об эквивалентности двух конечных
ПРЕДИСЛОВИЕ 5 автоматов, задача минимизации конечного автомата, этот подход позволяет ставить и решать многие новые задачи анализа. К таковым относятся задача о реализуемости заданного поведения в * автомате определенного класса (инициальном, детерминированном, полностью определен- ном, в автомате с конечной памятью и т. д.), задача об эквивалентности двух неинициальных автоматов, задача о минимизации неинициальных автоматов и ряд других. Отправной точкой этой работы послужила известная тео- рема Нироуда — Майхилла. Всякое регулярное множество L можно представить в виде множества слов в соответствующем алфавите. По теореме Нироуда — Майхилла множество L распадается на конечное число классов явного отношения эквивалент- ности QL> что предоставляет возможность конечного опи- сания этого множества путем описания конечного числа его классов. Этим описанием является введенный ав- торами конечный автомат AQ(L\ являющийся инвариан- том, не зависящим от способа описания этого множе- ства иными средствами. Автомат AQ(L) является сред- ством изучения многих важных свойств регулярных множеств. Дальнейшее развитие применения эквивалентности в теории регулярных множеств позволило создать так на- зываемые языки эквивалентных преобразований (ЯЭП), не использующие понятие внутреннего состояния или другое аналогичное понятие (нетерминальные символы и т. п.). Между этими языками и отношением QL существу- ет тесная связь, выраженная в том, что всякий ЯЭП по- рождает разбиение описываемого им регулярного множе- ства L на классы эквивалентности, являющееся подраз- биением разбиения этого множества на классы отноше- ния Ql. В книге описаны основы теории ЯЭП. Наиболее важ- ная составляющая этой теории — алгоритмы анализа ко- нечных автоматов с помощью ЯЭП, т. е. описания пове- дения произвольного конечного автомата на ЯЭП, и ал- горитмы синтеза конечных автоматов по описанию их поведения на ЯЭП — исчерпывающе рассмотрена в книге. Использование ЯЭП оказалось весьма продуктивным при решении некоторых важных вопросов теории копеч-' пых автоматов, таких как, например, реализуемость ре- гулярных множеств различного рода автоматами во вход- выходном режиме.
6 4 ‘J1 АвТОрй^ нН» йрётейдуют^шр’очват' пояющью-разрабо* ТНййОго ЧШТГ аппарата всех задача современной теорию ко- йНчНйХиавтоматЩ^.^Одйакц» тпРих*убеждению, 'предлагав ййй'подчсйгиоэволяег по-новому ®зглянуть-на некоторые, фундамёнтаЯвные11 свойства ^регулярпых '• множеств’пьшро^ бЛейй’«Х‘иё0ледован»ж»’,'п’1 iiiiiii! o,Uji J ),1’> Книга1’ предназначена 5дшг1 специалистов/» работающих, в^ области‘^исследования^ и проектированиям »д<декрегаых’ уТфавляющих*4 устройствам ^автоматов,/а «иске дая *мате^ матиков, специализирующихся -в4 теории»автоматов *и язы- ков 1 йх° описания/' Дли* знакомства С' кцигой^ртмчатаделя Не*требуется‘никакой специальной подготовки^ поскольку вей ^основные' понятия;4 'использу емые в luxury л пей« оп- ределетгьг.>ь ам»ян.п*ш ;ин.‘п,и„ м.» "i,4jABT6pnfjсчитают’! свонм »долгом’=выразить4 искреннюю благо’дйрйосТь4‘Д. А?< Поспелову за сделанные ипьаамеяа-, нйя ‘в’лтроцессе подготовки рукопжи, книбш s bis*» )i n Jit St l4<k it iiiltftUKM* UiUin'jiiHj! -iJiltiHkiii UHMb st i'i»> 4H1U hhUjblti 1 U Ah 3 4 / i t i t M «i «1 лэ», Mi . 4; t} . “Jithti *ih«UUiihH ItHljUUl idfiUil Hl kiiibJMilU Judiil 11 hWIjU’l' iHMUtplUii Viilil/iibii / luljU (Hn'jll 1г »< ii Jill _nt 1:^»! “til j <1 1 jUhiTtbiJ 4 8 ,»х 114.1st t il 1 > il ,»s i ♦ r s /.u/ihT ,iH*i hmbi (it> j ш u u 1,M li ii, И i isii О )'<« 1» (1 |U|I ('Hl.i.ijij M IJ bltUflH1- Al!H>!(!ii<. I /ilAH/UJtj WiОн Д1)i. blit
ВВЕДЕНИЕ 4 УП1НПН1 M »WWtn<« ЧЦ'Г »»♦» ,СТ»"1 tV'V ‘ *\‘\U НТГ »/ <tT(’ tf ’»!♦ » rrt/tiKip П TZ ’ J »' П»1 ’>»» fHV'iqri *un»n’« н Г, 7ЛТПМ4 1» !•»» ‘t'v*« ^Iiniuyifu ** _*?•’/»» qt.inni'A'f / «Л’ЧИШПЛНЧЧ V <,» ’* ОГ’Г, ) <|Г ’»’»>ПГ‘и»'Л J»vr-»«*r-»тт 1ПГ ,<»">»» »» пп ' ‘Джк'ретйт! 'дииамичсская'сйстёма'^'агб'медель многих' ^еяль’иых’устройств — промышлеиимх - объектов,”’техиоло1'. гйчеокйх" уетмпляпг/* ЭВМ, ' устройств’ управления.'‘Если’ для” рсйпстгии задачи,‘'’связаийой'с овивавивм,’ тгроектнро-' йаниокг,” упра’йлеийем ’И'Лй обелужйваиием' рояльного'уст-1 ройства1,”достаточно' приняты во •вниманйе"койвчмве’число' значений конечного числа параметров ‘ устройства ‘ В’ от2’ делъяъге’ (хотя;"'может •быть-, следующие "друг.’-за"другом бЧёНв''б’Ыс'Гро),’МбМейгтьг'1времёни,' то-подходящей-моделью' таяото' устройства в решении поставленной задачи "может слум5и’«б'конечпьтй"авт«мат'2^'иаиболве"простая,фа»иовид“-» ность'дигскретпъ1х 'дипамическйгх'-си<?гем. ’-'-' ' —•••- w • 'Заметим,.,что"коиечный"аптомат —'модель^ 'функциони* рующа-я' как7бдийоё цолое ‘в’ единогм,,врелгени;ш'пригоден' в' Осттонпом "для' решений' 'лишь тех ’ практических - задачу которые' свяланыс* отпоонтельпо простыми устройствами.' Современные" устройства ’управления' -и ’ управляемые.- объм сКГы "йЯСТОИБКО - сложны, "что -пх" трудно-описать- -беа 1 ис- иолБЗОВа'ййй’ 'таких ’свойств'--моделей,' > кан -воз-можноете разбйёння игг отдельные’ блоки"('блочность • модели) "и -дб-’ пустимоств- 'йараллеп<ьного,,'иротека1М1я,-"ПроцессЬв''-в -от*-- дольных "ее 'Составляющих' Чпарнллели-зм -'моделируемых иропёссовк': , - • 'Несмотря -тгя «это; • тгоцечдеий •явтомат^-моделъу.соадаН- иая-,‘&’ бО^Х” тодах,-22- прйдолятегет'-оставаться-актуальной’И- в"настоящев“время;''Этб- имеет 'место-w-оледующим’ при^ Ч'Й’ЙЙ'М? <’’ТПтт1» ЙП'ГРНПНПП'РЩ (W’FnrnvVff.novn - /. rro-Zl,«« «4»‘»г Bo-riepraix, °Дйскртттая тгиташтчеёкаЛл система1 любою койе^шойр сложниста может 'бшть лриюциота^ъшт описана к air™# ечтияй" ’атггомат^то 'дач5Т’^змджиость’^а» основа^ нип исследования" этой, ?мюдели> определять прн’нцийиаль^ пвш'шзможности’такихг систем.’1 Этот ’’подход > имеет^йёсто / в^о’ценке" сложности вычислений; теории !?язьтко®,44диагноз ст1ске”п/т/>п.иг ,г ннгпопн’' л\ V0,(r,0HQonH i f’ Во’-’вторыху^ для”’анализа ^<м‘ног»х**ясторон^гйоведе™я еложной ^ддиймической: ст?етемъг^достаточнойоетед€та№ ееттнао<отэжндииу^ша^иза^укрупнец®ялх^1шраметров-{на^ пример, взаимодействия между блоками), а потЬму‘’Оци«
8 ВВЕДЕНИЕ сать ее как единое целое в едином времени, непосред- ственно используя конечный автомат как математическую модель. И, наконец, в-третьих, каждая система в конце концов состоит из отдельных «кирпичиков», которые также нуж- но описать и спроектировать, даже если это делается нечасто и унифицированные «кирпичики» используются для построения различных систем. Ввиду относительной простоты таких «кирпичиков» и желательности макси- мальной оптимизации их параметров на этом уровне также весьма целесообразным является использование конечноавтоматной модели с ее подробно разработанным аппаратом анализа и синтеза. Заметим, что конечный автомат является моделью конкретного устройства. Если смотреть на устройство как на «ящик», имеющий вход, выход и «внутреннюю кон- струкцию», то конечный автомат как модель такого уст- ройства описывает, несмотря на абстрактную форму, не- которые детали этой «конструкции», такие, например, как состояния и логику переходов между ними. Поэтому, если конечноавтоматная модель устройства известна, можно почти без труда получить его реализацию в виде схемы в том или ином функциональном базисе. Конкретное устройство и его конечноавтоматная мо- дель должны обладать адекватными характеристиками. Важнейшая из них —внешнее поведение, представляю- щее собой множество последовательностей входных воз- действий во времени и множество соответствующих этим воздействиям последовательностей реакций устройства. Поскольку устройства дискретны, пара «входное воздей- ствие — реакция» представляет собой последовательность пар символов «состояние входа — соответствующее состоя- ние выхода» — вход-выходную последовательность (вв-по- следовательность). Поведением дискретного устройства А называется множество ЬА всех реализуемых в нем вв-по- следовательностей (будем при этом говорить, что устрой- ство А работает в режиме «вход-выход»). При таком взгляде на конечный автомат последний может рассматриваться как «черный ящик» с внешним поведением L. Очевидно, одним и тем же поведением L может обладать множество различных (например, по сложности) конечных автоматов. Все они будут эквива- лентны в том смысле, что у всех у них одинаковое по- ведение L.
ВВЕДЕНИЕ 9 Из сказанного совершенно очевидно, что во многих реальных задачах на первом месте стоит не конкретное устройство (или его конкретная конечноавтоматная мо- дель), а внешнее поведение этого устройства. Такое по- ложение может иметь место на начальном этапе проек- тирования устройства, на этапе его оптимизации, на эта- пе составления программ для управляющих ЭВМ, если алгоритм функционирования управляющего устройства реализуется в виде программы для ЭВМ и т. д. Отсюда становится ясным важность умения описать и исследо- вать внешнее поведение будущего устройства до того, как станут конкретизированы особенности его внутрен- него строения. Если, как уже было сказано, под поведением дискрет- ного устройства понимать множество вв-последовательно- стей (слов в алфавите вход-выходных состояний устрой- ства), то задача описания и исследования этого поведения трактуется как задача описания и исследования так на- зываемых словарных множеств. Известно (см., например, [9, 18]), что поведением конечного автомата в режиме его ‘ работы, называемом режимом представления собы- тий, является регулярное множество. Точнее, некоторое множество вв-последовательностей является поведением конечного автомата в режиме представления событий тогда и только тогда, когда оно регулярно. В известных работах, посвященных изучению конеч- ных автоматов (см., например, [1, 9, 19]), чаще всего во главу угла ставится сама модель. Поведение этой моде- ли — регулярное множество вв-последовательностей — считается одним из свойств модели и рассматривается с этой позиции. В настоящей работе авторы придержива- ются иной точки зрения, продиктованной изложенными выше соображениями. А именно, первичным считается регулярное множество вв-последовательностей. Оно явля- ется поведением в общем случае бесконечного множества эквивалентных между собой конечных автоматов. Иссле- дованию будут подвергаться свойства самого этого мно- жества. Конечный же автомат рассматривается лишь как одно (хотя и весьма важное) из возможных средств опи- сания регулярного множества. Каждый конечный авто- мат, поведением которого служит желаемое регулярное множество, сам служит описанием этого множества. В дальнейшем такая форма описания регулярного мно- жества будет называться автоматной.
вййДвнй'Л 'МО ' “ ’Bdd6Hi;‘e ‘ ^бво^й^' Оййсаййё' "ЙрййёйоЛ'ййЬ1Т5"‘ё'йдварНого Wfldjfte'fcMfca — ЬтЬ“'ёТ6 £ёДОраЦ№>Й* н,ёйоТбрбй,'фО|рй'а‘ЛьПОй ’ёй'стёйй.1 ,,ОДЙйЙ,,йй 'ШйбЬЙйё фАЙйрЬсЙрёнёйййД'Вп’ДОЙ ‘Та- кШх‘СЙёДем“ЙйЛЯ(оТс'Я' Т'а'Й ‘ йа&ййЯейЫё ййЧйёйё'йи'я Поста [331Р‘ НИЙбдлёё '‘НдДхЬДйЩёй'' рйЗйоййДйОсТ ьТО"йс»1ЙСМёНйй ТСосТй, иёпйЙЁЧуёМдЙ'ДИЯ дййёйййй фй^ЛИфййх’MfiftOWeMi, ‘йвййкЛ'с'й' ’рёт'уйЙрйкГё' • СйсТёМы ‘ФбО'к' * В' * иШйТсЙёНй ЯХ ’ Пй- ‘Й'Д‘'Й',‘ fe' чнёДноёти,' <й‘’'рёрулЙрЙЫ±'‘ч5йЬ'1*ёЙй1,''Нпи566ГЙа'ёМбё 'ййбййрноб ’ МйЪЖеТНёо' трактуёТхЯ1'' ’как'Х1п0ЖеёТйо“СЛ0й, ЙШЙДЙЙЬЙС Мз 'Ktftfe’ftrtjftf' МПоЖё’Ша ' иСХОД ЙЫХ' 'еж^аи1- ’с'йЬМ)1 е Мб’йдЙД.тб' пр'йййй' ВЫйоДй'из 'Hd'ftofd0d'i'd‘'iJnflCKa. COW‘ВЫВОДИМЫЙ’'ОЛОИЙ 'ДоА^йТТбыТЬ 'оЛбНами в“ТЯк “йа’- зываемом основном (терминальном) алфайКТё,'"ЬДйа’йЬ'“в Яр'оЦёССе ‘'йХ“'в‘ый'ОДй х10СуТ'"йСПОЛь'аЬй’аТь'СЯ' cWMBoW ii из BCWOMdCaTteHtHbCo' ‘ ‘(йёЧ'ёрмЙЙайьййго) “ ‘ ЙЛф'аййТй ” > (d6a* ’ ДЛ- ф’й'вйДа ЙЙЛЙк»ТС‘й,кЬйёЧЯЕ1Мй).""‘ '*-***•.'«-*• <• ... ‘'““РеРуййфйЙё' ХГйбЖё'ётйа’ 'Motyl"‘бы,тЪ'',ой!‘ёсайы''Ь фегу'- ДйрйЙХ 'СЙСТёМаХ,'нак исПОЛбЗуЮЩйк’.'Тай'-Й Пё' йсйдй'Е- ;йу{Ьй^1Д’‘йе'1'ёр^йЙйЯЕГгь1ё rtiWactrftr.’' '*•““ .......- “В ‘кпЦгё’ рёДулйрпЙё'‘ЙйОЙГёсТЯЙ‘‘дЙиёЙ'й’ай/ТСя •рёГ’Улйр- йкгмй сйет'ёйямй ,1бё& йёйерййнайь'йых“сийволбй',(',йазйай‘- ‘йЬ1йй' ‘Ял>1кёйй *'яквййаяё1#ФШ1х 'йрёобразовйнйй“1глй айя- ’лй^йеёйбй фdplt^dй'Oпйc'aйlй*я.l‘ ,... “ ''•• ....... *““’Обё' эти “ формы'’(автоматная 'й айя'лйгйяеояай) ''аде- кватны в том сМйблё; 'ЯТЬ dTtWciUBktoT 'одйй tt'fWHCfe Ялййс ёЯбййрйЫХ1' йшйкё<5Тй‘ — рётуййрй&ё* ’* 'МноДФСТЯЯ? ‘ • ‘ОДйако ‘CbdfitWa; ‘ресУлЯрЯЪгё мкОЖёёТЙЯ ‘ МЙТуТ* ййтГЛ’ЯДёТй • ТТо-раЙ- ЙОЙгу “Й"ёавТГСй’МОСТй‘ df’ XdVb, *‘Й“йаЯбЙ‘ "форхНё,,описййО ~мйЬЖёСТЙд?'Ка'ЖДая',йЗ'‘фор'й' ‘ОЯйЙЙНйя ЙРЖёТ' чУк&затбСя йреДйЬчтитёЛьйё& для, 'айй‘лй'аа“'ТёХ ' йлй wt>i£J 'ейойс'гй рёйуляр'йьТх' W6»ecfB,u‘'tf« йозтому "'»сйЬвйЪ1ё“'сйойстйа 'рёгулярйЯ1Х'“мйбЖестй'‘кяк1’ёйойс1*вй'’’Пойёдй{тий''йОйеЯйых 'ЯЙтОМаТой ‘йссйёдбвййы'’йнйййге?кдлй“ обёй'х,‘форм' зЯИйСй МйбЖёМ^. “ ’ '’><•<»<«>, <О>. .H,,J .... .О.П.КЬ,, . А, *“ * Сйойй" гиа'ййбй1 'peftbto ’дайнам квита41 лееч ’и&‘ 'йракдй'- Чёсйй’е ШДйдДг' йнал,й‘3а’,*й'‘ сййТёёа • ’койёчййпё' автоматов, “й’Мзучеайе'фундамейТйЛЁйЬгЗс ‘СйдйЬГВ'й'ОВеДёнйя 'ЙОйё’ТЙО- 'йвтоматйой 'МЙдеЛи'.'-В'уйазЯЯйбй'-сАСйсЛё йо’‘СЙДержаййЮ 'материала’• кйй,су','МОЖй'о' йчйтатЕ‘“работой“‘по ‘reopini' ittf- 31ёййыХ‘,,айт<уйатой:,'0дййк<У',Мйотйё“Т1ййожёййя * йредстав1- йёйной й 'кнйРё ’Тёйрии' Trtietot йряМ’Оё'*От|йОП1бйи'е''Й' прай- Тйкё.’',В“кйчёСТйё'прй»ера,'М'ОжйО укайатй 'йа Дальнейшее разьйтйе“‘аннотйого> подхода''Hak' языка ббтрепйй’ С’ за- казчиком. UIIIULttUUll. ........ I -де’
вве даяние ''* г»»* н'’Юбрат1™г‘впимаш<е> читателя на^то, Какой «смысл <вл#г -жен’®'слово»^эквивалентность8» з* *заглавии>кн»гш<««п о,?.- -»»»»• Дело в< том,* что < веяное’ < словарное ^множество, иорож- даетм(в- обще ц^елу чае неконструктивно)чвдк» называемое Явное? ’ отношение>' ‘эквивалентности/ 8 * Бел»» >»множество. < р$г гулярпо; то это' отношение» имеет8 конечный»• индекс *) и может* быть» эффективно описано- ?а* потому «самоможет Служить 'конструктивным^ средством задания/’ (регулярного 'множества’ При этом' автоматное «описание регулярного множества* 'В»книге основывйется <на * понимании - классов явного'отношения эквивалентности . как состояний конеч- ного автоматам’При’^налитнчеоной ’формд описание чвся- 4 к ого'регулярного множества «является »описанием «конечг ‘йотой числа<*классов одйоШения эквивалентностиv«порож- даемого множеством п ра в и л.^ыводавл некоторой «регуляр- цой ’ формальной ’Системе^нПри этом»»как-показано->в кни- ге/многие важные* свойства ’регулярного» множеотвагмовут ’ расематриЬадься, й 4 наследоваться^ экак»» .свойства» * этого» * ог- йопгенияэ эквнвал»емтности < и»’разбиения,, универсального «множества «на* класса эквивалентности; он пнин^н'чпт> 'В1 заключение ^коротко остановимся, на «содержании книги? 'Основному ^материалу книги » предшествует крат- кий »перечень?»общих»'’понятий, «различных • разделов ^ма- тематики; дающий 'возможность ччитатрлюоне»-обращаться к специальным'‘источникам^’» »» v»,»<-»«!» /м^н-м,?•»•,<» -°" ^тлаве' I” дается’’общее представление »»о ?»регулярном 1’множестве;5’основанное эиа» ревультатахтНяроудя’>[561гИ Майхилла * [£5]у ’Из^скаванногрэранееооледурт^ что-поено®- /ной характеристикой* регулярного множесиоа^вляетсячко- -нечиость ^пела’{и ’сямо <это‘ чицто> эклаосов явного г qtно- шения эквивалентности.'Это'Делаетмвовмо^ным-шол учить ’ конечное^ описание * этого отношения п®», »®ндо-«некоторой специальной таблицы. Показывается^ гчтоппричшаличии такого»‘описания** «может» быть- кенструктИНно^ «яолучено описание«фегулярного^множества’ нанив-аотоматнойу,<так и4 в? аналитической»форме.”«»'*»-п*л»ич«»пчг 5 -” Поенолъку”конечныйнавтомрт/ как*-модель ледован в литературе весьма подробно (см., цайрйМер, ’ моногра- фии {1,'Ту*#,* ^1^<*все»/’внимапиегв1этой жните Скон- центрировано/* на ’’аиализеюообепностей” яадедонйям ковеч- J » Г» /Я * »Р/ПЧ.-ПП П у тп\ч ,»♦•. /м»»нчи (Mow r-V’» -VU’4 Г»?м П1Н||цМу« И »’»»ц;н».*ги,п / ,»м, .<г 5 *) Индексом отношения эквивалентности называется' число ?ЙДас1ой Ь%'йй^^Л^н^й*6Ьтй,л йа 'котбЬйёЗДУ УтнШЙЙиё ^а^бйвАёГ ^бй- версаль^ёфГйол^сгвор ?» ♦» ?»^15 д’’?1/' <i»tiTi>vGH ; о»ммш
12 ВВЕДЕНИЕ кого автомата. К таким особенностям относится в пер- вую очередь возможность реализации заданного поведе- ния определенным типом конечного автомата, работаю- щего в режиме «вход-выход», например, детерминиро- ванным, неинициальным, частично определенным и т. п. Во II главе вначале показывается, что любое регу- лярное множество вв-последовательностей реализуемо в инициальном детерминированном по парам «вход-выход» автомате. В качестве такого автомата может быть выбран так называемый автомат AQ(L), число состояний кото- рого соответствует числу классов явного отношения экви- валентности QL, определяемого множеством L. Все свой- ства изучаемого регулярного множества L описываются в форме свойств автомата Aq{L), являющегося одним из инвариантов множества L. Поскольку аналитическая форма описания регулярных множеств исследована в литературе главным образом в журнальных статьях (см., например, [17, 20, 50]), авторы сочли целесообразным посвятить большую часть главы II исследованию этой формы описания, называемой здесь языком эквивалентных преобразований (ЯЭП). В этой главе собран основной материал по данному вопросу. В качестве ЯЭП предлагаются симметричные чистые ре- гулярные системы, класс которых сужен авторами до так называемых правильных и нормализованных. Это сужение не уменьшает описательных возможно- стей ЯЭП, но позволяет сделать максимально простыми многие важные процедуры, такие, например, как опреде- ление принадлежности произвольного слова заданному регулярному множеству, эквивалентность двух регуляр- ных множеств, процедуры построения конечного автома- та, представляющего своими финальными состояниями заданное множество, и др. В главе III рассматриваются некоторые вопросы, свя- занные с получением ЯЭП минимального размера, с ос- новными теоретико-множественными операциями над ре- гулярными множествами, а также рассмотрен частный вид ЯЭП — ЯЭП 2. В главе IV содержится материал, связанный с реа- лизацией регулярных множеств различными типами ко- нечных автоматов, работающих в режиме «вход-выход». Глава V посвящена изучению интересного частного случая регулярных множеств, а именно множеств с ко- цечной памятью (МКП). Как и в общем случае, MKIJ
13 может быть описано как в автоматной, так и в анали- тической форме. Решается ряд специфических для МКП задач, даются необходимые и достаточные условия того, что некоторое регулярное множество является МКП. Глава VI содержит решение ряда прикладных задач теории автоматов, иллюстрирующее возможности языков эквивалентных преобразований. К этим задачам относят- ся, в частности, задача о минимизации числа состояний детерминированных автоматов, задача о расшифровке «черного ящика», являющегося неинициальным конечным автоматом, задача о построении управляющего конечного автомата по заданному поведению управляемого конечно- го автомата — объекта управления и задача описания по- ведения системы, состоящей из взаимодействующих па- раллельно работающих блоков. В приложении к книге показывается возможность ис- пользования для описания регулярных множеств исчис- лений, отличных от исчислений Поста, а именно ассо- циативных исчислений. В то время как в регулярных системах правила вывода разрешают производить замену одного на другое лишь начал слов, в ассоциативных ис- числениях эти подстановки могут производиться в про- извольном месте слова. Поскольку не только явное отношение эквивалентно- сти, по и так называемое явпое отношение конгруэнтно- сти, порождаемое регулярным множеством, имеет конеч- ное число классов эквивалентности, это дает возможность любое регулярное множество конструктивно описать как множество слов, выводимых из заданного конечного мно- жества в некотором ассоциативном исчислении. Впервые это было показано в работе [5]. Ассоциативные исчисления, в противоположность ре- гулярным системам, позволяют описывать не только ре- гулярные множества. Это, с одной стороны, дает возмож- ность в некоторых случаях использовать их для описа- ния множеств, более сложных, чем регулярные, но, с дру- гой стороны, делает затруднительным решение задачи синтеза конечного автомата, поскольку в общем случае алгоритмически неразрешима проблема установления эк- вивалентности двух произвольных слов в заданном ассо- циативном исчислении 124],
ОБЩИЕ ПОНЯТИЯ!! ОБОЗНАЧЕНИЯ , о ; г,<’ » ««>» <V4’V, •*<.»»»/ ОЧП(.Ш»7ИП » . ' •• /» »?»♦ rr-М.ЛН »’J ?>Н Н’НМНПЧН « . i (t.,f { ' tilt '» ’ обычно, злаками л ^^будем. обозначать им- пликацню эквивалвитио&ты. п < }> . >» > ниМиожест.воР состоящее-цэ< алиментов..av 6,„ы»„,"0бззна- »чдется 4а,», &,*..* k Jy,a - принадлежность»элемента» анМНОЖ- <ству М» обозначается.a-II у стае множество,щбознача- етея*?$.5 Вхождение, множества-JZi В/ЛГ.обозначается атам случае множество;называется .подмноже- ством и множества »<Ж > Число, .элементов»- множества; JH обозначается \М\. «,ь • (И1?.-чр. ». Vi 11роиввш1ьш)е: -лшожбств0;< пар.»./? МХМ ^определяет бинарное .отношение и на множестве». Ж; aRb .(читается п«а находился*аВ« отношении R.c Ля)(ль b)^R< Диагональ «множества М КМ, »,а\ множества.^Ь(а„ естф отношение,тождества*«или единичное.бниариое..отно- шение^ Обратное бинарное «отнощение йтВ.определяетсд ь-соответствии..с .равенством b)^R}ti^lif Одним из важнейших свойств- бинарных отношений являются .рефлексивность^ транзидавность ть^симметрич- ддм)И]Ь.- Л ^рефлексивно, .еслпЛ^.Д,,т. а М т>Ла„а) ^R. йнтранзитцвно5^если-даяг всщедьхмО^Ж, с^М. имеет» место ^(Rb*MRG^aRc. ^R ,симметрично,. .«ели». R~l^Rri зж е. - tOtRfyrv’v bRdt ш4»» ь »••»» /? ’п»»«> ? ou . ч»» • «»« t' и<.•»i« - < /* u v« .«s ом»Д>ндарш>е. «отношение > называотся-ютиошением »акви- о^алентйостн.«./.обо3‘начаат«ся«. ^)v> если»».оно». одновременно рефлексивно, транзитивно ‘и ‘симметрично^ » *<>ч о* <» пи Ращ0шеннао,.аквивале41тности Д^ А/ Х;М взаимно одно- адаин.о. соожветствуетмразбиение»<М. па.непсресекающиеся классы; аиименно^<^^ тогда‘Щ .только.тогда^когда» а.и b являются» элементам^одного уи.то^го. же класса .этого. раз- биенияЛмМц0жесдво нКлассоВ|<раабие>нц.я .М но. отношению нэквпвалентсности ♦Д.щазываетря»чфакторг.мноя^вствомч M/R -.миржест^а* М но .ртдощанию #»»<*’•»»» .•».»»»-. ,м» В»дальнейшем, при -изучении।«поведения> автоматов»бу- ду®- рассматриваться •1слода41В<а1екожоромчалфавд5те4« Напри- мер, входной алфавит X будеТ' пфедотавлять» собой -непу- стое конечное множество входов Х = {.г(, ..., х^}. Слово v в алфавите X — это цепочка конечной длины из букв этого алфавита — входов хт. Множество всех слов
ОБЩИЕ.ПОНЯТИЯ И .цдлфацнхемХ .(унивйрсальнре^многкество)5‘будет' обовна- -ЭДХМЯ. дареж .БудвАБ-одитать, *чфф члшожесгву^Х*^прис -4ддд^кнт- также муотое^ово. ^^-нмеющее^длину11^ чь"не родерЛ)Дщее> ни одного, .символа» из< алфавита *X. « На ’миго'- жрствех,Х*о определена, юнерацияпрпписыванияслова ‘к сдову^ттюиерадня конкатенации,.например; v = vwv,” ‘где -Сн Дг^ %*< .операции ^авсоциатйжйа,* Д.^уЧ^р^з14*2 17Т7ДЦадэ) =?М>1 v«уР^Еоль.единицы в> полугруппе X* щгра- ^Е.лусдре,слово Д:^Дя^Аи=ьи.^м. >. -л .р, л/.игй?я^ое4.слова я&Х* цредсжапляе^ собой конкатенации некоторых букв алфавита X, т. е. может бытьн&ыражеио ct помрцц>дц конкатенации »нере<Э’<конечвое> множество * эле- ^ментов. Хг-В такомслучас говорят, ‘что1 Х*“ является ^руппой* с кедййицей-А‘Ц‘идбр^Угдй^1^й ХГ*"- Тотпо- сителыю операции конкатенации). Отношение эквивалентности R является правым инва- риантом, если для всяких ж, у, z^M имеет место xRy => => xzRyz. Аналогично, эквивалентность R является левым инвариантом, если для всяких ж, у, z М имеет место xRy => zxRzy. Отношение эквивалентности R является конгруэнтностью, если оно одновременно правый и левый инвариант. Говорят, что существует однозначное отображение h множества М{ па множество М2, если h — функция, ста- вящая каждому элементу (ц е в соответствие един- ственный элемент а2 е М2, причем каждый элемент мно- жества М2 соответствует хотя бы одному элементу мно- жества Мь Такое отображение называется гомоморфным, если не- которая операция ср определена одновременно па М4 и М2 и имеет место Ыср(а, b)) = cp(h(a), h(b)). Если при этом h — взаимно однозначное отображение, то говорят, что Mi и М2 изоморфны. Множество всех подмножеств множества М обознача- ется через 2м. В частности, 2 обозначает множество, состоящее из всех различных (конечных и бесконечных) множеств слов в алфавите X. Такие множества называ- ются также языками. В теории конечных автоматов большую роль играют так называемые регулярные множества (или языки), по- скольку известно, что только такие множества представ- ляются в конечных автоматах. Регулярное множество
16 ОБЩИЕ ПОНЯТИЯ И ОБОЗНАЧЕНИЯ может быть определено итеративно через операции объ- единения, конкатенации и итерации. Эти операции явля- ются операциями над множествами слов в некоторых ал- фавитах, например, X. Пусть Л, В^Х*. Объединение A U -В понимается в обычном смысле. Конкатенация АВ = «{afela^A, fee В}. Итерация*) {Л} = {Л} U A U АЛ U ... Множество Л X* называется регулярным, если опо по- лучается применением конечного числа раз операций объединения, конкатенации и итерации к множествам {Al, {яД, ..., {хт}, которые регулярны по определению. *) Фигурные скобки используются в различном смысле —для обозначения множества и для обозначения операции итерации над множеством. Смысл этих скобок всегда будет ясен из контекста.
ГЛАВА I КОНЕЧНЫЙ АВТОМАТ - МОДЕЛЬ И ПОВЕДЕНИЕ § 1. Конечные автоматы Как уже было сказано во введении, конечный авто- мат является наиболее распространенным средством мо- делирования дискретных процессов в случае, когда число параметров процесса и число различных значений этих параметров конечны. В литературе существует много различных определе- ний понятия «конечный автомат». Смысл, вкладываемый в это понятие разными авторами, различен, хотя во всех случаях поведение описываемой модели представляет со- бой регулярное словарное множество. Это значит, что в поведенческом плане все эти модели эквивалентны, а по- тому мы вольны выбрать любую из них в качестве ос- новной. Диапазон толкований понятия «конечный автомат» можно проиллюстрировать с помощью его определений в виде формальной системы типа «полу-Туэ» [57], огра- ниченно-детерминированного оператора [19], сети из ло- гических элементов [3] и др. В этой книге дается опре- деление конечного автомата в наиболее общей форме. Эта форма соответствует понятию источника [46], а все разновидности конечных автоматов являются частными случаями этой формы. Пусть заданы непустые конечные множества — алфа- вит состояний S = {s0, Si, ..Sn-J, алфавит входов X = = {xh ..., хт} и алфавит выходов Y = {уи ..., ур}. Определение 1.1.1. Конечным автоматом А называется упорядоченная пятерка <Х, S, У, SB, h>, где = 5 — множество начальных состояний, a h — отображение Л: 5ХХ->25ХГ. Конечный автомат можно изобразить в виде диаграм- мы переходов, представляющей собой ориентированный нагруженный граф. Вершины этого графа одно-однознач- но соответствуют состояниям конечного автомата, а на его дугах следующим образом выписываются пары из алфавита XX У. Если хА = ..., (sftr, yqr)}. 2 Конечные автоматы
18 гл. i. конечный автомат — модель и поАеДйййй** 1 с..,и. кбп Г» л о л - H1UU Л||1О/4 то из вершины s, проводятся дуги в .вершины . ^., skr и дуга, ведущая из $< в skt, 1 t r,uxtfafружйетй? парой (ягь #gt)- Очевидно, что ввиду конечности алфавитов 5, X, Y такое представление всегда возможно. Конечный автомат называется инициальным, если множество 5Н состоит из единственного начального со- стояния (считается, что это — состояние $0). Если SH = S, то автомат называется неиницыалъмым* ег’В'Ьяучае/ когда Sn^=S, но 5Н содержит более одного состояния, автомат тыазываетсяреяябо ”°'4* -мм. Ha*** диаграмме14тгёрехо Д6‘в‘ ‘ fcepniiitftf,**‘tfdolW64йуюйще пачаДвишг состояниям’К01ге*тогсУ ,«^0^гй4А7'б^ДУт<оЬ'6дзцА'- ч»аться "двойным ‘кружком. 'Прнйеры^йбйё^ик^'ЪтЬм’Атов с двумя состояниями и алфавитами11 “ip выходов -Х<^,К«40,“1*Ь‘предота»летгы’ifa рйбгТЛ .t>Vi iiu_k.ii. Jo.i y 1 , / i«i tn «. i t\ i inMi 1 u о it in ill* • i MO * к >1 Un 1 nikUi» U nil Ok M ribO W/r**Hl' U «nUun^HlHUM.Jl -‘HtllV lijl O>f UMlUU ^‘‘*U M Ла/Ч 41 HUiKUH. Л4Д Dl’iM /км U4.I ’i : t»uu илилкнш «» hlbtfcWbii» UiUm'lidiH ;лш.1кз 1 Рис. 1.1.1. tlu*» Л» r*A/» 4 luiHili'l/K/W OlUlhUl’hi *'i 4 ,tu 1 HAM b.O «4 1*1 Hiltl >111* 1» i 4 Ul u U41 *4 (UM )>|AU J <l<> у K4411‘;/nv/t U S it UOll t Конечный автомат называетсй‘“*5^рлйУйи/16^яи«йгХ "если'' отображение Л“‘ййПйУ1‘ся''‘Ь‘т'обрЙ/кёНиёй’" множества тгар из’ S1 ХА ж* множество' пар гй' -> S Х Е.> В такой' СлучЯё 'Й “КТоЖё^ 'б^ь" поедетahrtfeно~в впде-еовокупвоетй' Дйух 'фуйНцйй’,6‘? S'XX“J*/,S'>rf4*:i/SX X ¥, которое • НаэЫвагОтсЙ' сд'О^вё’г'МвёЙйЬ' ''фуп’йфйей •пОрехаддавжг'функцйей вйХОДОн;1'' • ну ••> Если отображение Л такого представления пё" допусгФ- •Жгу‘.то1‘жонечввгй“ авто'мйТ ‘пй’.'ЖГЙйётСЙ" Уг’едёт^рмйнйрован- m»Mi <® "этом ’ случае;* 'Очевидно ,** существу tot' тйкйб' сбстбя- ВХОД'1 *аРТОЙа¥А ‘'Aмножество А(х,>’л:)''еодерж11т‘'б051ёё"ОДнОЙ'ТгарДг НД о'Х'УУ’Еб'Лй среди -этих-'пар множества"Ш, э?)‘',суй(е(Л'йуюД' пДры 'ё’ 'рйзлич- гныни<«*-'то •ава'оматм,Я''наДьйаёт(еД 'йеДётв^йййи^бЙанНым
чrniMiT I1$ ^АВПЮМЛаДЫ’’t trq d9 •ши п«р«хо^м:пЕеда^^ак00> щ)^ожеН’Ие й^еад^есдондочо^- ,мдшени«>*<м»«ыходу»^1тоне детерминирован до выхо- . дам.» Вгсдучаё, когда• в ларахумнодедотеа ,х)vсодержат- ся дары ^различными, $ и, пары «с различными автомат А называетсямедетерминировацным, ноиюреходам . д(,вы- ходам.. чнг-мщичн м > и » ч, [;;« нг?м,н \ ,ИН /(((>(< ; . <, < мНа. рие? <Ы4. ’представлены, соответственно? «автоматы: а ^детерминированный); — недетерминированный? тюдщ- релодам' (переХддыно/вход-выходыой-ятаре Л1 изм$Д.& — ннедетермиНированцЬщ по выходам (перехрды.по^вхоД’ВЫ- хаднъш парам 40нп 11 р'з, $i)<<--е^т- недетерминированный по переходам и по выходам одновременно. ‘^'Конечный автоматчявляется,полностью определенным, ; если ^отображение h определено навсем,чм ножест в е S %Х. »8 .противиом-слупа^Аа^томат-называется частично* опре- б’сл-АвтоматЫу нриведеиные ла? рис. 1.1.1, а, в, г, определены «гйолноотыо^ &",,авзюмадг, ^изображенный на рис.? 1ДЛ,нб$г0предеденюЧ.астично? «поскольку не юпреде- «ЛедО %(5Гд4)^М‘»С 11 'Н ( -VI о«,«^ ‘4 ?,В лпторатуре! )маото’^рассматриваются автоматы без выходам Длю таких автоматов h-J S X X ^ 2s. Если в та- ко^5автомате*’Sa* состоит из1 одаото‘состояниями ’задано хптжество,71аклюимтелвий'х состоян’ий 5ф s S, то говорят, что автомат "представляет s> со бытие * в; алфавите* сХА Собы- тием ^называется мйбжество слов- Ь ^А*, переводящих автомат1 из 5 намайЬного ‘ состояния т? одно йЗ фийалъных. «Такоймавтомат считается- работающим/ в фежмме^пред- ставления? событий.^ На диаграмме иерехадов?кружкиг?со- оТвеЬ’Ствуюдцие,; фидалкдым..рррт/оящ1рд1}* будут > штрихо- ваться. На рис. 1.1.2 представлен частично определенный автомат с одним начальным 7$0Г й одним финальным ($1) состояниями.. Он представляет множество слов Л в алфавите'5 W, 1}.V В&ГЙлбва* йз 'Z; 'йачйнйюТёй: й 'дканчи- ‘ ватбтся ! нуЛеМ й’ в ййх 1 йулй” Чёре'дуютсЯ ‘ с' ёдйнирами, либо все слово есть 0 (£ = 0{10}У. /’ м Для автоматов С‘ выходом Ьпределим реализуемые в этих автоматах слова из . (XX У)*,-называемые в даль- нейшем вход-выходными последовательностями (вв^-по- сдедрц^т(?лрцрстжц^)^гсдеду^щцм.образом,t/, ,t ti , / / ,,.;Ввщоследовательность- 1^(х, у) реа^Цг о, зуется в состоянии s автомата Л, если при -------------- подаче па вход автомата, находящегося в ^остоянид^, выходе, та может появиться слово у^У*. Вв-по- ‘рис. 1Л.'2; > 2*
20 гл. I. КОНЕЧНЫЙ АВТОМАТ — МОДЕЛЬ И ПОВЕДЕНИЕ следовательность I реализуется в автомате А, если она реализуется хотя бы в одном из состояний множества SH. Слово I реализуется в макросостоянии ♦) S' 5, если оно реализуется хотя бы в одном из состояний множества S'. Слово I ведет в состояние s{ автомата А, если существует Sj S такое, что I реализуется в и переводит А из в Si. Заметим, что по определению пустое слово реализу- ется в каждом из состояний автомата и ведет в то же состояние, в котором оно реализуется. Слово I ведет в макросостояние S'^S автомата Л, если I ведет во все состояния множества S', и только в эти со- стояния. Некоторое множество вв-последова- O0\Ji) тельностей по определению —// реализуется конечным автоматом, если 77 vvJ^/77 существует конечный автомат А такой, YTQt что L состоит из всех таких и толь- ко таких вв-последовательностей, кото- рые реализуются в автомате А (по 00 определению для всякого такого L имеет место A^L). Такие множества вв-после- Рис. 1.1.3. довательностей будем называть конечно- автоматными. Известно, что любое конеч- ноавтоматное множество является регулярным. В конечном автомате А (рис. 1.1.3) вв-последователь- ность / = 001011, где х = 011, а у = 001, реализуется в состоянии $0. Поскольку $о — начальное состояние, то I реализуется в автомате А. Вв-последовательности Ц = = 10 и Z2 = 1011 реализуются в макросостоянии {s0, при этом Zt ведет в состояние s2> a Z2 — в макросостояние Определим гомоморфизм и изоморфизм конечных ав- томатов. Пусть Н — однозначное отображение множества Si на множество 52, Н: S^S^. Будем использовать обозначение (s', y')=H(s, у), если у' = у и s' = H(s). Аналогично, Н ({(sn yt), (sft, yh)}) = {(s-, !/•) | (y'i = y^x X = i Отображение H называется гомоморфным отображе- нием автомата AV = (X, S^, Y, SBi, на конечный *) Макросостоянием называется подмножество множества со- стряниц автомата 4.
§ 1. КОНЕЧНЫЕ АВТОМАТЫ 21 автомат А2 == S2, Y, SH2, h2>, если одновременно 5н2 = Н (*Shi)i 1 H{hl(s,x)) = h2{H(s).x), \fs^S^ Vxt=X.] (1ЛД) В этом случае автомат А2 называют гомоморфным обра- зом автомата Ль Если положить Н (£) = Н (4) = s0, Н(з2) = то автомат, приведенный на рис. 1.1.1, а, будет гомоморф- ным образом автомата, изображенного на рис. 1.1.3. Не- трудно убедиться в выполнении для этого примера соот- ношений (1.1.1). Например, имеет место я(М41)) = н ({(41), (4,1)}) = {(*», 1)} = = 1) = 7j2 (/7 (s2), 1). Для случая детерминированных автоматов Л4 и А2 соот- ношения (1.1.1) приобретают следующий вид: *9н2 — Н (*?н1), (Н («),«) (1.1.2) VxeX. Если отображение Н является одно-однозначным и выполняются соотношения (1.1.1), то Н называется изо- морфным отображением автомата At на автомат Л2, а ав- томаты Ai и Л2 называются изоморфными. В случае изо- морфизма соотношения (1.1.1) останутся в силе, если в них hi и h2 поменять местами, а Н заменить на Я“\ Аналогично, остаются справедливыми соотношения (1.1.2), если поменять местами б4 и б2, Xi и Х2, а Н заменить па Я-1. Можно показать, что конечный автомат и его гомо- морфный (в частности, изоморфный) образ представляют (или реализуют) одно и то же множество слов, т. е. об- ладают одинаковым поведением. Минимизация числа со- стояний автомата основана на замене данного автомата его гомоморфным образом с меньшим числом состояний. Примером может служить замена автомата, приведенного на рис. 1.1.3, его гомоморфным образом — автоматом, приведенным на рис. 1.1.1, а,
•22 ГЛ. I. КОНЕЧН^^^ВТОМА^^мМОДЕЛЬ И ПОВЕДЕНИЕ § 2v Поведение, конечнбгб автомата,^, Пуоть задан непустой конечной ^алфавит Х = /а=»{я), . ,ф> жт}*^ Под словами в^этом*алфавите будем по- нимать конечные < цепочки ^WboAob ' из Хй^бу^м обо- значать их через v. Длина слова g(v) — количество сим- вдЛоц ' ёЯЬв’ё7’Рйзличй^ё/'й,дйМйд>йёвтйа> ’Мно- жества X* будем обозначать че^рез L. • r<’ 7n’M’r v<v ' <' • По определению Скоййатенации, «если ”’#г*= ад//.‘. ягЛ, t?2 —.'У. 'то =^г*Г?’.. AkXji ‘НаИ^ЙМёр, если p^OlO; af i>2 —Off; ¥0 ^2 = 01001’1:“ *' (‘ 4 '* ’ ’‘и>К0Й1<ЙтёП^ЦйЮ' мдЖйо”с{п1¥Йт¥>? й‘ МпдЗДМУётйбй*’Ойё^М- цпей, полагая А . Рассмотрим теперь произвольное множество слов ^Х* и таблицу* (уа^бл. 1.2Л)^ ^рорнЙ^Ю сл^ДурцЦлРоб- ^азо^:^ строки (и столбцы) таблицы одно-однозначно со- ответствуют сложат" множества X*. Там, где это не тре- бует пояснения, будем строки и столбцы прямо отожде- етавля’ть 'со’ словами из Х**.!‘Например^ говорить'’«строка ‘ { ’ . > S I Г е f ,S ’ I I « I »’ •} ?(,<<’ | t Ч Iff s ( । t ' H H <4'}1Н| ) t Таблица 1.2.1 ( А Х1 (f . •. / \ А < 7 А V. vi" \ '5 V 4 ... А ’ ! Ч 1 /— '+ *' — 'н-1' xi ° И >»;О ии(. — + ИГЛЫ и 1 - « ?Г , 4 , м— О » »г 11 < <г Г + а । н । ц11»* н 5 V- va "г 1 1,п'Гки V? ♦ »' •> >У.\\ » ' + П—нт-4 ” *е е 4Л. ., „ ns S .«jS <. ht> V Ь’ 1 ’И Vh «, : у i, . k JV V '* 4 1 гтг ТГ5—гт? —ГТ Н . f 1 “Г4"?—Г7 f 5 ' < <S -TT-TTT- b ,< Xtfty <’ ’ •’ "Ч4" - /1 < (»:» iXr *' » H ' ’ • f s ! J 1 « 4 < « ; »< f«i,>i>. t * ' «1 » н г \ 94' л t < Н • 5 ’ ’« Ч « Г » <v ♦ т*»ц у । - : гггтгтт "T » 4 ' Г ‘ f . "I'm И "I—" ’gr-- • {111 - а । < ? 4 К ч * <,« • 1 а Г1 !t>4; —J П : • +mi . J 1 и ! 1 •И м и j 1И J ч t 1 If 4 t * «'» * 5‘ 7”” *’*5 < »-« ' it ft If » Il « • t { < > S ‘ 4 ; * Ч* f । >/мт < ’ 4 м < 1» ?« !<П '}'« г 5 « Н । ВЦ П»«! Н I4‘V» « ' « « 4 7 t hi «га? 4 11?ч 5 » 1 < M |-<VI H <J S f ' \ П 1 1 H). t 4 J n—ГГТТГ-ЛТГТ,--e/s ми П” W'4l M» i \ ! J Г<П I IT/-1/' ПТТГП ° ’’Здесь алфавитах*рассмЬтрцва’ется не'Wk' входной'алфавит, . W 'алфавит^данускаюгВДй 'прОй&Вольдое* толкование (ШйТриМёр, как вход-выходной). .*»♦**» т»
АйТОЙАЧЧ'1 1 "’• ‘23 *пОДраОуАГё'й‘ай''СС1‘рока; сОйтЙ'еУСтвуяэ^Й^ JCSOBy' ft*. В табл‘.',,1.2‘.Т“£й‘К ^ak' tf'Мо^цам ^0ЬВа"цЭ“Х* "йрйЦйСкйы *'Й‘иЛё‘йСик(Ц’рафк*1ес1к4м • «прядке1. ‘ БуДЦКС7 эту таблицу обозначать через TL. Таблицы, отличАкЛцЙёСя друг от друга лдадр рер^станрдцор^строц и ртолбцов, раз- личать не будем," поэтому порядок приписывания слов стрркам и столбцам таблицы,TL не имеет значения. По- с’колЬйу' X* — счётное множество;' то 'Таблнца“ содержит Цче^ййё! ШОЯдёСтйГА ttpPK •й'етбЛбЦбй?" ....... ... ''“’"Пуегь'Уо ‘cJ^'X*.",Ha' ncpeCe<remiir ctpoRWUi «“столбца *Ц"‘йб№айЫ''£йай ^“ёсий1'лрр^’г,*;“й ftpomubitf ‘ Случае поставим знак"—.'11'’" “ "* ’А““ ‘ *''• За'йётиМ;''«ёЖДУ“Нро<1Й^ё,'чТО "столбец; 'Л"аада«г'харак- теристическую функцию' -’кШОЖёСтЙё' 11; «ОскО'ЛЪ'ку ‘ й' КЛёТ- <ЙТ>Тгй‘'тбТДй' и^тпЛьНО" ТоТДё",“когда il » ,Д 7^ UiJliHJH.J « / пни КГ, Ml Введем теперь Ha^ridfttdbtBb06Yp6^M(febl<topOB’fii3,4JHii —)йабЛйЦЙ1 Т£ WtfbYtiefcftb ёкЬййайен^йЬс'тйА‘^£;,а Ййё’нно, 4буДОМ, ёййтй1%’ JiV<n 7 I^^йУdДOTCй"'й‘itOtйo^Ii^d- 'II^ПI '& ^ббозйййЙё^сЙ е^йй^ЬЬо^Ёё^йДву^йХйе^йХ! ^ёк'/орй 1 • 4 *'» .м>чвнн. о “ ‘ мВ ‘ Wfcptffype ‘dYiidriieW‘ nbcttf ''йЬз’вЙЙйЬ* ‘rtfrribfo 'Wnoittttittri' эйййвй^еЙ^Йдс^й, *6npe^e^/LeXioro7nai“X*“4tiid- ‘Шд^<лЙч£;<иПо 'бйределёпйЪьу'Й&ра ‘ЬлЬЬ дится в явном отношении экЁЙУйЯёйт^ЪЬМ,1 ЬГгрОДёйяёйо'м f?V'ёЬЯи“дДЙ^Л^обЬМ) б^Х^ ^Дбв^ 1Г[ййй1Дйежат йё‘ йр11^ЙД]гЬжат!ЧЙ107й^С1т,бу £< одйбйрёмёйнЬ*/ liia и ihi Offa ЬйрёД6йййййн!я*Е!йЬГо Wiidffibtiftn 'ййвийййёйтйбстй ‘ЬЬййа{дают?;<|йдёйЪййку,гй ЬйййёайёйтйЪп^ 'tYpdttstt ^рй‘^/“в f ftio'SdW'МЬЙбцё eftiid'fctdHfв#йб(ГЦМ1 'ttftibtа;’’ДибЬ ^й<мМййуса?‘‘‘Пъ^коЛьйу^ бтногйёйй^ §ййийййёй±й6- сти, оно разбивает X* на непересекающиесЙ^Й&ЬёьГЙй- Ptoft ‘т'хй’игё^йву^й'йэт^й мЙЬ^кёбтва, “яв^йt6й^faeeя, йЬЙёДёЙЙЙЙ ttWttHt>i£ ^йтб^Ьв1;1^/’^ фЙ1у- ‘^йрй^ё'^но^еЬ^й.'^П^’йзйёС^йой ^еЬрёМе ‘'НйрдудгГ'1 [50] ^йгулftptfbW “йдто'ЖкЪ1 >рё‘гуЛярйЙё>**1Й&бйы7' 'о'йрё^ёййе^бё “й^ ’йвйбе ’ btlidflifetitie *Ькв^ЬЙЙёй1ЙоёШ' '/гмеёт ^ЬЙе11Йь!й'4'ЙйДёЙ0£ (tfftdftb* ййаЬдов,Апа ^Ьтбрйе 'о^нй- 'шёйиё^^р^бйййёт^йЬ^Ьёт Х*; йойё^й(У)У 4“u о<’ , г Тйкйй ббрайЬ^/^аблй^^ь'ЙАгее! йОйеЭДЬё’^и^д'рай- 1йЙйньТк”>#гро<к 0t‘oгДa’uй0t6лbйo, ‘тЬУДа/ кЬ^Да ‘£ ‘ регуййрйЬ. ^Да’йеё toteefйЪЙё'ФйоеГЧйМб^ра^ ЙйчЙй&‘*ЧгРрО1Г. *И‘§ ^fbfb ёДийс^веЙЙбгд1 yttfomfr сйеДуё*г ‘ЙЬ§Ж^й1Ъ1Цпх'‘‘й€кУ т<ёбЛйцу|‘Т£ив6гСё'тайО‘вй*1кь
24 ГЛ. I. КОНЕЧНЫЙ АВТОМАТ — МОДЕЛЬ И ПОВЕДЕНИЕ по ее конечному фрагменту, т. е. использовать этот фраг- мент в качестве описания регулярного множества L. Свойство 1.2.1. Ql является правым инвариан- том, т. е. ViQbVj => (V v) (у (= X*) (ViVQLVjV). Действительно, пусть v' е X*. Тогда vw' и VjWf од- новременно либо принадлежат, либо не принадлежат L, поскольку ViQLVj и к ним приписано одно и то же слово vvf. Это свойство является свойством явного отношения эквивалентности и от индекса QL не зависит. В следующих двух свойствах явно используется ко- печпость индекса N отношения Ql. Свойство 1.2.2. Если индекс отношения Ql равен N, то для различения строк таблицы TL достаточно не более N — 1 столбцов этой таблицы. Это утверждение докажем индукцией по числу клас- сов эквивалентности QL. Действительно, если столбец А содержит только плюсы, то это означает, что £ = Х*, а если только минусы, то L — 0. В обоих случаях X* представляет собой единственный класс эквивалентности отношения Ql, т. е. А=1. В этом случае, однако, все строки таблицы TL одинаковы и для их различения не требуется ни одного столбца. Поэтому при N > 1 столбец А содержит и плюсы, и минусы, а потому различает между собой некоторые цары строк. Все множество классов отношения Ql рас- падается при этом на два таких подмножества, что пара строк, принадлежащих классам из разных подмножеств, отличима по столбцу А (содержит разные значения в этом столбце). Пусть уже показано, что к столбцов достаточно для того, чтобы множество классов отношения Ql распалось не менее чем на к -В 1 таких подмножеств, что любая пара строк, принадлежащих классам из разных подмно- жеств, отличима по некоторому из выбранных столбцов, и пусть к +1 < N. Если число подмножеств меньше 2V, то хотя бы одно из подмножеств содержит не менее двух классов отношения Ql. Поскольку строки из этих двух классов различны, существует столбец, по которому они отличаются. Добавим этот столбец к выбранным к столб- цам, в результате получим не менее к + 2 подмножеств таких, что любая пара строк, принадлежащих классам
§ 2. ПОВЕДЕНИЕ КОНЕЧНОГО АВТОМАТА 25 из разных подмножеств, отличима по некоторому из вы- бранных к +1 столбцов. Утверждение доказано. Свойство 1.2.2 показывает, что для определения при- надлежности произвольного слова некоторому классу от- ношения Ql не требуется вся таблица, а достаточно не более чем N — 1 ее столбцов. Свойство 1.2.3. Для полного задания таблицы TL достаточно задания ее конечного фрагмента, содержащего не более чем N(m + i) строк и TV—1 столбцов*). Для доказательства этого утверждения сформулируем процедуру выбора строк_ указанного фрагмента, который будем обозначать через TL. _ Процедура 1.1 построения фрагмента TL. 1°. Образовать множество столбцов, различающих между собой все строки таблицы TL. Эти столбцы служат столбцами фрагмента TL, По свойству 1.2.2 их число не превосходит N — 1. 2\ Образовать множество Кь первых N строк таблиц цы TL, взяв по наиболее короткому слову из каждого класса отношения Ql. Если таких слов в классе несколь- ко, взять любое из них,. _ 3°. Образовать остальные строки таблицы TL (множе- ство Kl\ взяв продолжения по каждой букве алфавита X каждого слова, соответствующего строке множества Kl, и не содержащиеся в К^. Очевидно, в Ть будет не более N + Nm =N(m+1) строк. Для доказательства свойства 1.2.3 достаточно приве- сти правило, по которому для каждой пары (pf, Vj) таб- лицы Ть можно эффективно определить, имеет ли место факт v = ViVj е L или нет, т. е. заполнить клетку (иг, Vj) таблицы TL. Факт принадлежности произвольного слова v множеству L может быть установлен по знаку, содержа- щемуся в клетке (р, Л) таблицы TL. Таким образом, для доказательства свойства 1.2.3 достаточно иметь правило, по которому может быть на основании фрагмента TL вос- становлен столбец Л таблицы TL. Пусть произвольное слово и = хц ... ф К\ [J К*. Поскольку имеем хц^Къ[]К1. Если е Kl, то положим = Ха и — v = ... xip. Если же *) m — число букв в алфавите X
ГЛ. I. КОВДЧНЫЙлАДТОМЛТ.гг-, МОДЕЛЬ. И,ПОВЕДЕНИЕ хи-е-ЛГьуто--перейдем’ И 'расом0фр0ви1О'«лов&’«1 ’=’?«п»да. « и .. . я1Р, где-'#;'ЫЛбр'айЙт¥|'Э’'усйЪ,ЬЙйс"1,)'У1 егК1,,'2)' #1Ч?£«нТ’ прй’гэ10М"й ^й1у"Св0йСтвЯ ''1.2.'1' Vit?£U'’'Пусть напекотбром игale' е A^l " Замейя'я' УкХ{(к+^ 'па ^^либо'совпадаю^’ее с-1/)1г:,((1Ч11-);,если,,уА^+1^,^Ь.либ0 выбираемое,,цз- Дь-ири у&иовмп„„.что ,#*<н(21#*да<(м.ц,1,.дерейдам,,.к,,<додх„„у*.ы.=. “ JJk+1 %i(У+2у»« ?> ♦ XiPw ‘Vii'+iQlV* »Я«результате^ р 'Щадрвощцьдеэд, к^елюву такому/ что. ^Р<?гУ.ч©Ф©юда««ио ’Столб- цу Ав строке5 ^находим'ответ на -вопрост©» -принадлежа пости слова v множеству L. Свойство •А.^.& даказаыо/мг ’ Та^ HW 1*.2.‘2т“ '^Пример >> 1.2 Л л - Пример п таблицы- 7\^для жоткретно- ” ”Fd> множеств ar сДО^В^^ваг» п дай дабл.. 4ч2.2л»В этомири^ мерс индекс ^==4,» а^Ам СОг. ’ от,одт .цз^рсеХ’.сдоц^ч таких, vo&TQ^QdXU „„ ... ’,,. r „ Д * Пу-сдъ „ ,, ,за давд \ .v# = 110Q10; ..Jp&Sy&TCftч,дцр&- п др,дать,, ддоеет».лДрАюсто»^ е L. ? Проведем, следующую /гпсериюч переходрви Я рквива? л^нтным* словам, в который • чертой ^сверху' йойеАенб^н'а- ° чало’’ f подлежащёе’ ’’айализу на t щ)^надл^жность ,дабр ^Дибо и замене па. эк- внвалецтпое слото: ДДОО1Р ^»О1ЬщО,0ДяООДО «.’4040^4010^ Ду откуда следует^что t“' ( 2) ПуотЬ’ Требуется”0тветитьг-на т вопрос? чтостоит. в, клешей (р^у ^)птабл«цы-. ^Ьу тде- ^040»* Мкт Пг 4)лтсяедует,^ что^ 410040^ Ь. ^Поэтозму в клетке- ©ле дует доставить тзнак^т Иокажемгчещеръу^о'инфо’рмаци^ о^множсетве 'Ь, ва-; данная к виде * таблтдех ^рдшожет’ €ъгть' представлена * в’ двух формах, непосредственно’ ‘вытекающих чгз табличной? Одйй мз ^йх .форм» которую?»мь1 будем* .называть ррафйче- скррщдц, автоматной, щоответсдауед миШшащщому, дщцщь’ ному автомату А ^представляющему £ своими фтаальны- ми состоДниЯМй; другая’ ^орл/а^ “коТорую ' мы назовем аналитической, представляет собой некоторую формаль- ную систему, в которой L д я оолр _ (. лтт П‘г к./ |а - ' V’ • ;oq ’ К НИ’*»'1 A II “ е.Ю. Ж. 101 И - :l 'i 4- 1 + Г ij г' г 8 1 ] - 00 । V 01 — ‘W Н 1011 - . ”..л * +J l-l (1 1 5 141-+? । < : :
! ki 2^ Oa («I, Xi) = skl Si = Ф (p), Sk = VXjQLWi W > «.M ,a JL Kj^at . fi 'a . * '. ’ “‘П'р'б'ц'ё fry рХ Х2 пЯСурйейий1 'аъ’тймйтд' А 'йо-табли- $$"Ть Н 1 Ч» l-’>s’ Ч ‘HUUVP 144,>ч ‘*"J {‘ХПбёт'Яв'йтХй'ОЙйб-ёдЯРзяйЧйд’ё1 -cttdipfeiCi^iie Л^-'ёлбВ' множеств*^, A^’'cotfTOHHHft‘v-,’so,,''i^" Ьг~» “А6'гдйатйи'Й/ Пр'Й 'э+бмнд’ча'Ььпйе гУстояниеХ о’гож^ёстЬит^ с пуСтЧгм с'ДОвоХ'А. ПустЬ 'соЬ^'вётстйиё’ -сос'гбЯийй' автомата'’А* и. и'‘СЛбЙ' Мно'/ЯестЙ А1'"опйёЁёййётСя'^ym^tiefi )):•,'г; ₽.’ ' u’ ‘‘З’.-'ФуйКЦЙк» йёрёХ&Йбв бл 'аЯто^кта1 А построить ЯП правилу й$ё к£.. ''"З0'.' Фй'паМьйые состояния автомата* X‘ ойредёлйть'как u .4 J A * \ i} , ii >,!’ ч ) if Hi, «j/ — /j»t , WOli.S/41 состояния,f роо^ве^^рг^у^щце сэдюкаад изимеющим + в ‘ ''.'‘Г'Г,Г..? Г,ГЧ. Лемма 1“.2Л« Автомат А, построенный по таблице TL $' помощь^‘‘дййсаннЬи вькше пфбцёДурй 1J2, прёДётавля- сУ сяойМи1 фгйй'льпыМи’Соётойнйймй ’МХ^оИхество L.,ta . >1! '““Дюк*&9а*тел ьство- Покажем сперва; чтоЧлюбое v&X*> феалйзу#тея> вгА- изЗаХ«о','-{v) и *)кИнато‘говоря, введет,в А> в то же самое состояние, что и эквивалентное» ему ело* ййЧЧгз Kl;[ ЦрйЧём* Зто^соётОйййё ОтРЖДествлеид С ^‘при по6трОййШгА.‘0ТдФ';фййт;1 ч^го^Дюбое1 ^‘реализуется в «бр очевиден, поскольку полностью о определенный автомат- по> построению?“Остальную ^часть утверждения докажем индукцией по длине*олов* Л* Отметим-предварю теяьио*,; 4to-‘*b—ч;оотвбтствиЛ " С п»* 1 ьфроцедурвд- 1.2 6д($0, А) =$0 = <ф(А). A^iHbGb.’UH Ча А м..^7 а) В cooTBe,TQjaiHb crJn^_25 процедуры! г!ЛДЛЯ jftp6oii буквъптаной», что*^^^}/й‘Справедливо^А^о, яА = = г|)(я1). Пусть v^X* HMgi(u)^4| ier буква** алфа^ вита X, например, р = х4. В таком случае v — продолже- ние nyctfdrd 'бжййа1 АГ "по 'буквеk£j/ тГе4. Jv — Если -tb ‘ймёйтг йЙс1д'в’А(^‘,н^“61<^у = ^Едли^ зйе / ^ёА'р'^то* 'Ъущёй^ что к^, ”и Ж;*.Эуч^аяит‘2 спрдада^вр ,,Д$У$)'= ,м^ <.н и..„л., ° 1 ,S>* fJ 1 ‘ 8 Kbj« j’ ns‘b< Hi.* ) .ч'^Да1 ное па X .ФУЧКДВДЛ^ >?п₽еД^%
28 ГЛ. I. КОНЕЧНЫЙ АВТОМАТ — МОДЕЛЬ И ПОВЕДЕНИЕ б) Пусть уже показана справедливость утверждения для любого v' такого, что v' g(z/)=fc, и пусть v е X*, g(v) = к +1. Очевидно, v является продолжением своего начала v' по некоторой_букве xj. Тогда. 6A(s0, v') = = 8aU0, г') =s, где и v'QLv'. В соот- ветствии в п. 2_процедуры 1.2 6A(s, х>) = s' = 'ф(у), где и vQlv'xj, а поэтому 6A(s0, v)=s'. Поскольку v'xjQLv'xh то vQlv. В результате справедливо 6A(s0, р) = = гр(г7), u^Kl, и vQlV. Остается показать, что бд($о, я) =г|)(г9. По построению TLi из vQLv следует, что gb) ^к + 1. Если g(v)^k, то требуемое следует из предположения. Поэтому рассмотрим случай, когда g(v) = к + 1. В этом случае v является продолжением своего начала по не- которой букве хк. По предположению, SA(s0, Pi)= = бА(50, vY) =s ='ф(г71), где v1^K1L и vlQlVi. соот- ветствии^ п. 2 процедуры 1.2 SA(J, xh) = 'ф(и), где^еХ/ и v^Qlv. Обратим внимание на следующие очевидные соотношения:—6А($о, г;)=бА(£, Xj); ViXhQLViXk. Из_ них следует, что vQLv, а потому р = и, и SA(s0, v) = ty(v), что и требовалось доказать. Поскольку в соответствии с п. 3 процедуры 1.2 5 яв- ляется финальным в А тогда и только тогда, когда $ = = ,ф(р), где одновременно v^L jiv^Kl, to v^L тогда и только тогда, когда состояние s = 6A(s0, v) является финальным. Лемма доказана. Процедура 1.3 построения формальной системы (ФС) <K0L, KL> по таблице TL. 1°. Положить KqL = {v | v е L, v е K*L} . 2°. Определить KL как множество всевозможных соот- ношений вида Vt -<-> Vj такое, что KL = { р4 -О Vj | pj (= Kl, р {<= Kl, ViQiPj}. Будем говорить, что слово v непосредственно выводи- мо из слова w в ФС <XoL, XL>, если существуют соотно- шение (Vi <-* Vj) е KL и слово и^Х* такие, что u — iw, w = VjU либо, наоборот, v = VjU, w = Скажем, что сло- во v выводимо из ю в ФС <KQLl КтУ (обозначается w»v), если существует конечная последовательность слов (вывод) у = Р1, у2, vh = w такая, что v^ непосредственно выводимо из Vj-i в этой же ФС. Опреде- лим множество LK как множество слов, выводимых в
S 2. ПОВЕДЕНИЕ КОНЕЧНОГО АВТОМАТА 29 ФС <XL, Kl> из слов множества LK = {v|(3ip)(u>e^oL)(»®v)]. Лемма 1.2.2. Если ФС <X0L, KL> построена по табли- це TL с помощью процедуры 1.3, то LK = L. Доказательство. Заметим, что если w р, то wQlv. Отсюда следует, что LK — L. С другой стороны, в доказательстве свойства 1.2.3 был описан процесс поиска для любого по фрагменту TL такого слова р, что vQlv и р е Къ. Очевидно, что если р е L, то v е K0L. Легко заметить, что процесс, об- ратный процессу поиска р, есть вывод слова р из слова р. Поэтому всякое v^L выводимо в ФС <ХОь, Кь> из неко- торого р е KQL, а потому L s LK. В результате LK = L, что и доказывает лемму. _ Пример L2.2. Построим для таблицы TL примера 1.2.1 (табл. 1.2.2) в соответствии с процедурой 1.2 автомат А. Функцию г|? зададим следующим образом: <ф(А)=$0, 4’(0) = $1, i|)(10)=s2, i|)(101)=s3. Множество финальных состояний автомата А содержит единственное состояние $2, поскольку в множестве К\ содержится только слово 10 Lt Построим функцию переходов бА. Для определе- ния Sa($o, 0) следует рассмотреть слово Л0 = 0. Посколь- ку и -ф(0)=$1, то SA($o, 0)=$i. Значение 6а($о, 1) определяется словом Л1 e 1. Имеет место 1(?l0, а потому 6а($0, 1) = $i. Рассуждая аналогично, получим 6a($i, 0)=$2, 6a(^i, 1) = $о, 6а($2, 0) = $з, 6а($2, 1)=$з, 6а($3, О)=$о, 6а($з, 1) = s3. Граф автомата А представлен на рис. 1.2.1. Рис. 1.2.1. Пример 1.2.3. Построим для таблицы TL (табл. 1.2.2) формальную систему <X0L, XL>. В соответствии с проце- дурой 1.2 опа имеет следующий вид: К.ь = {101, KL = {0 1, 10 00, Л ~ 01, 101 ++ 100, Л ~ 1010, 101 1011}.
3$ гл. i. Легко заметить, что’‘между^^ятомалоМ-А Аи^ФС) <ЯОь, KL> сущ^ста^ет с^еду^шеепростое ^соотношение. Каждое слово из*множёства K^L ’сс/ответЛвует кратчай- щеш /простому. пуот Й?А$о, й,\9ДМ>из ^НШ.ЧЧ^ достоя- ний, а левая п,Лравдн<М^Т9 ка^^^одтнрщдииц ?РЧ‘ ;#ества соответствуют путям, ведуцрш из, в одно и то же состояние автомата^? д ° * • * * 7 - .. i.uiJI?, изложенных результатов всйкото редудяррого, множеств.а существую'? две ^)6рмы * прёДстав- ледия этого множества: * графовая й аналитическая^ есте.- ственным образов получаёмке йз'’1Й6лйцьгТе, строящей1 ся^ па' ^бсйове4 явного '‘дТпдгпепйя'' ёКвнйаАёптйости ‘ (?£/ В’ следующих Алабах Kiihfit 'йсёлёДутбГСя- свойства 'регу- лярных мйбжёё^гв,/ описйййыК йтрёфЬвой йлп* АПалйтйЧе- ёкой "форме/"ДляJ некоторых йз этйк’ свопсти сложность исследования примерно одинакова *й обеих формах прёд- ставле'пйя, в то* врёмя ' Как ’длй ^руГЙУ еьойЬтв Аодпа из форм 'прёдпбчтйтельнёё ^руЬоЙ.{е10,СтА1йЬШ(МС^“поДрОбйеё на каждой из этих форй?’“ J *; ‘ \ дальнейшей поД‘графовой '(Автоматной)1 формой- бйй- сапйя рё^улярпбгд Мйо^ёёТёа б^Дей' riOriTttffATB пё4 ТС1ЛЪ1,иУ ЙвУбмаТ' М’,' построенный н соответствии* с процедурой К2,« пё и вообще ’ * всякий чпгнциальный детерминированный койёчйый Автомат; * представляющий множество L своими финальными » состояниями. иЕслдаг, L ^представляет , собой множество вход-выходных\последовательностей Ат, е..слов< буквами которых..являются, пары. «вход-вдаод»\. то.>все состоянии ^такого "автомата ^фццальпы.щ; он детерммрдро- ванмпо -парам «вход^выход»$/а я обынцом^сдтдьсле Только по входам или только по выходам) может быть. ,недете(р7 минированным. Обычно в Ди^ературе объектохсисследовапия является конечный а^томатг а е^с^щоведщще L является одной, хотя, быть моЯ\ет/ ц весьма существенной," из характери- стик этого автомата. Предметом исследования настоящей работы являются регулярное множество и его свойства, а конечный автомат служйллйпй> одной (хотя и наибо- лее общепринятой) из форм описания этого множества. При 1 такой шостадовке; возможность мраалидацщьфегуляр- нщю а множества /той >или иной .разновидностью .конечного автомата является свойством-множества.,/и..исследуется как свойство множества. В рассмотренной постановке ав- торы в первую1 '6гГерёдьиУтрё^йТсй к‘ дбпаружейЙЮ и ис- олеДОвЯгШкУ лакИХ* свойст^ретулярного множества, кото-
§ 2. ПОВЕДЕНИЕ КОНЕЧНОГО АВТОМАТА z .. z 1. 3| рые являют^Я’^ВОйСТШйи^МбПГййиШвтвЗГ И гйнЬа£Ийнт- ны по отношению к конкретному конечному автомату, реализующему заданное множество. Действительно, по- скольку этот автомат представляет собой лишь одну из записей множества в графической форме, то естественно искать свойства множества, не зависящие от этой кон- кретной 'формы 'его представления.sf ’ м <»п’ гт • - Задание "регулярпото» множества "С > помощью конйчнога автомата» общеизвестно; ”а“потому в настоящей работе* свойства^отой ‘моделтг как таковой не*исследуются: В про-' тивотюложность "этому; ‘аналитическая форма* представлен кия» регулярного -множества^с*»помощью*’формальных’ си« сТем'лина 'литературе исследовала гмало\гКро- Me-Bioxn 45(H? ц Кратко ”Е20]у ^ггм’’системы»шсоледстваиьг дишь^в7работах*авторовиастоящей' йнппгН?; 29, ‘40^413 г В* то.’Же*иремяг'*»налитнческяя ’форма записи.основанная’ ыа"'пр1Шснешпг« отношений* эквивалентности,»” позволяет получить ”опис® иле’ * ‘регулярного v множества; * не содержа-* щеё в* явном» виде** состояний/» Это» дает возйджность’’прёд^ ставить’ иепоторые свойства ’ регуляриых'мн6жеств’”в1бо^ лее простом" виде,'” нежели *’ ял случае' ’ автоматной ’’формы описания,’где^явно используется понятие состояния? тг»41оАтомуf ‘Целесообразно ‘изучить, нер только свойства* регулярных множеств, заданных в ’аналитической'форме,’ по и саму эту форму. В книге аналитическая формапюпиеаиия'регулярных множеств пазывает^я^яшьншм^ еквивалеитььхр/преобразо- ваний — ЯЭП. В главах II и III описыуа^дЧя^несколько типов ЯЭП, детально исследуются эти типы и их соотно- шюнто’ме7кдугсобойрп”'п”»ггт,г ”?»рр’\ .. Д fy ,/»»'*Н'гО*1г 1»ГГТ ДХ И’1«|ЦН-ГНЦИРП»|(1Ч«’ Н •» 5 < <\г *’О »» ЛРН’ПТЛ »/ГУ»Ч' <Г ’ П:г|'Г'Т <i pi» f’f' п»ТЛ’» ’H>', * Н”ОЯ» _1»’-<ТГ» J {ytfrbt'i Г» ПА«ШЛПЛ"Г f»»r ^'F ri и v »FT>p О»г v rjcrnnwr Г»тг VI < - СЧ ЧТ’ТЛГ* s' 'Г» J»l>prr«n^ rr‘f\nr/Vino;, »\ n.frf’ri " nV P ТП qif P П < ij irrinn’r-H)ff г. 1;<Ь-1П,)Г<Р’''1'Л?Г ‘ 1 ' x( \ T f r\-r 4 <r м n’ f f »» (nnm»rn>'fP V 1(гптГО»1. Vf ff r .‘n’t »Л о^птптттт>пгтт^ РТР^ЛТЯР уу .(Л т? лттоггглтттп р СТ Т А ТттС f * П’7»’,Э Я Ч ТДЯ1-1 rqacnn’) f ДХ М*НМ.‘Т Г"П * Л ПГГТТАП"тt-n ЕН .ммпнцнуяуп кэтч*'!.»»? ‘Н? Л М/ТО>1
ГЛАВА II ОПИСАНИЕ РЕГУЛЯРНЫХ МНОЖЕСТВ В этой главе излагается основа рассматриваемой в мо- нографии теории — средства описания регулярных мно- жеств: автомат AQ(L) и формальные системы специаль- ного вида, названные языками эквивалентных преобразо- ваний. Регулярные множества могут при этом рассмат- риваться и как множества слов, реализуемые в автоматах без выхода (в автоматах, представляющих события), и как множества вв-последовательностей, реализуемые в автоматах с выходом. Общность подхода объясняется тем, что всякий автомат с выходом можно рассматривать как автомат, представляющий события, если входной X и вы- ходной Y алфавиты автомата представить в виде единого алфавита X X Y и все состояния автомата считать фи- нальными. Поэтому в этой главе не делается различий между теми и другими автоматами, а регулярные множе- ства считаются подмножествами некоторого универсаль- ного множества слов X*, где в качестве алфавита X взят произвольный конечный алфавит. § 1. Свойства классов явного отношения эквивалентности. Автомат Aq(L) Здесь и далее нас будет интересовать такое явное от- ношение эквивалентности Ql, для которого множество L регулярно. Как показано в главе I, в этом случае Ql разбивает X* на конечное число классов, а само L явля- ется объединением некоторых из этих классов. Это фун- даментальное свойство Ql позволяет создать эффективный инструмент (автомат AQ(D) исследования регулярных множеств и конечных автоматов. Рассмотрим некоторые другие свойства явного отно- шения эквивалентности, которые с очевидностью следуют из его определения*). Через Qi, i = 0, 1, ..., будем обо- ♦) Эти свойства отношения Ql и автомата /<?(£), строящегося на основании разбиения X* на классы Ql, справедливы и в случае, когда L не является регулярным.
§ 1. ЯВНОЕ ОТНОШЕНИЕ ЭКВИВАЛЕНТНОСТИ 33 значить классы эквивалентности отношения Ql. По опре- делению, Де Q*. Свойство 2.1.1. Для любого класса Qi справедливо либо Qi L, либо Qi П L = 0. Свойство 2.1.2. Если то Q* содержит все те и только те слова из L, продолжение которых по любому слову множества L вновь дает слова из. L. Свойство 2.1.3. Среди всех классов отношения QL существует не более одного такого класса #♦, что для всякого v е Q* и всякого v' е X* справедливо vv' Ф L. Из свойства 2.1.3 и того, что Л^Х*, следует, что Q*<AL. Очевидно, что если L = X*, то Q* не существует. Свойство 2.1.4. Если всякое начало любого слова из L само является словом из L и L Ф X*, то Q* = Х*\£. Определим для произвольных Qi и Xj^X множество QiXj как множество всех таких и только таких слов vxj, что v е Qu Свойство 2.1.5. Для всякого х^Х и любого клас- са Qi отношения QL существует единственный такой класс Qh этого- отношения, что QiXj Qh. Свойство 2.1.5 является следствием правой инвариант- ности Ql. Пользуясь свойствами классов явного отношения Ql, построим теперь инициальный автомат Лс(£), состояния которого ассоциированы с классами эквивалентности от- ношения Ql. При этом начальному состоянию д0 автомата AQ(L) соответствует класс Q* отношения Ql, а функция переходов естественно определяется свойством 2.1.5 от- ношения Ql- Если 6(я, q) — функция переходов автомата AQ(L), то 8(хь qj) = qk тогда и только тогда, когда QjXi^Qh. Множество финальных состояний автомата AQ(L) со- стоит из состояний, соответствующих классам Qi^L. Будем считать, что классу Q* (если он существует) соответствует состояние q* автомата AQ(L). В дальнейшем чаще используется не сам автомат Aq(L), а автомат Aq(L), который получается, если в Aq(L) удалить состояние q*. Очевидно, в случае, когда класс Q* не существует, Aq(L) совпадает с AQ(L). В общем случае автоматы AQ(L) и Aq(L) могут иметь бесконечное число состояний. Отметим следующие свойства автомата Aq(L). Очевидно, все они относятся и к Aq(L), с той оговоркой, что Aq(L) представляет собой 3 Конечные автоматы
34 ГЛ. II. ОПИСАНИЕ РЕГУЛЯРНЫХ МНОЖЕСТВ полностью определенный автомат, в то время как Aq(L) является частично определенным (если Q* существует). Свойство 2.1.6. Aq(L) — детерминированный и связ- ный. Детерминированность Aq(L) является следстви- ем свойства 2.1.5 отношения QL, а связность следует из того, что любое состояние автомата Aq(L) дости- жимо из состояния по любому слову w е= Qh посколь- ку в этом случае Qow Qi. Свойство 2.1.7. Автомат ^4q(A) представляет мно- жество L своими финальными состояниями. Свойство 2.1.8. Если регулярно, то X*q(L) — конечный автомат. (Его можно считать авто- матом Мура, если рассматривать как автомат с выходом.) Свойство 2.1.9. Если всякое начало любого слова из L само является словом из £, то все состояния авто- мата Aq{L) являются финальными. Замечание. Все изложенное в этом параграфе можно легко перефразировать для L^(XXF!*r где X X Y — вход-выходной алфавит. Свойство 2.1.10. Если L является конечноавтомат- ным множеством, то автомат Лр(£) реализует L в ре- жиме «вход-выход» из начального состояния q^. Таким образом, любое конечноавтоматное множество реализуемо в инициальном, детерминированном по парам «вход-выход» автомате. Рассмотрим теперь задачу построения автомата 4Q(D или Aq(L), если задано регулярное множество L. Есте- ственно, что алгоритм такого построения зависит от того, каким образом описано множество L. В главе_1 Aq(D строится для случая, когда L задано с помощью TL. В гла- ве II даны алгоритмы построения этих автоматов для случая, когда L описано на языке эквивалентных преоб- разований, и для случая, когда L задано представляющим (работающим в режиме представления событий) или реа- лизующим (работающим в режиме «вход-выход») конеч- ным автоматом (алгоритм Я2,о). Прежде чем привести алгоритм й2 о, поясним введен- ное в главе I понятие источника [46]. Если говорить в терминах графов переходов, то источник — это недетер- минированный конечный автомат с несколькими началь- ными сое 1ОЛППЯМТТ. в котором допускаются и пустые ребра (не помеченные символами входного алфавита); можно
§ 1. ЯВНОЕ ОТНОШЕНИЕ ЭКВИВАЛЕНТНОСТИ 35 считать, что такие ребра помечены пустым символом Л. Входное слово, соответствующее некоторому пути из со- стояния qi в состояние qh получится, если выписать под- ряд все ' непустые пометки, встречающиеся на ребрах, составляющих этот путь, а пустые опустить. Лемма 2.1.1. По любому источнику с п состояниями можно построить инициальный детерминированный ко- нечный автомат не более чем с 2п состояниями, пред- ел являющий то же множество входных слов, что и ис- точник. Доказательство. Некоторое множество вершин л источника В назовем замкнутым при выполнении сле- дующего уелрвия: если е д и существует пустое ребро, ведущее из в qh то и д,^л. Замыканием множества л назовем наименьшее замкнутое множество, включающее л. Из этого определения следует, что множество, пред- ставимое источником, не изменится, если множество его начальных состоянии и множество его финальных состояний заменить их замыканиями, поэтому будем считать Qa и замкнутыми. Пусть слово v переводит всевозможными путями некоторое множество состояний л в некоторое множество состояний л', т. е. для каждого q^n. существует л' такое, что из в q^ существует путь, которому соответствует входное слово р, и для каж- дого q^n' существует такое <?<е=л, что из в д, суще- ствует путь, которому соответствует входное слово v. Запишем этот факт в виде произведения лр = л'. Оче- видно, если Р = Р1Р2, то лр=(лР1)р2. Поэтому достаточно рассматривать произведение множеств состояний на од- нобуквенпые слова. Свяжем с источником В конечный автомат 2В следующим образом: 1. Состояниями автомата 2В являются замкнутые мно- жества состояний источника В. При этом начальное со- стояние автомата — Qw, множество финальных состояний состоит из тех и только тех множеств состояний источ- ника 5, которые имеют непустое пересечение с Q$. 2. Функция переходов определяется выражением б(л, хд = ля\, где Xi е X. Покажем,, что поведения источника В и автомата 2В совпадают. Действительно, пусть v представимо в В. Это значит, что существует путь, переводящий q{^Qa в ft е Qq. Следовательно, v переводит QR в множество со- стояний, имеющее в пересечении с элемент qh поэтому v представимо в автомате 2В. С другой стороны, пусть 3*
30 ; ГЛ. II. ОПИСАНИЕ РЕГУЛЯРНЫХ МНОЖЕСТВ для подходящих я и q9 имеем Qav = л и qs е= @ф П л. Это значит, что один из путей, ведущих из qi е Qn в qs, со- ответствует слову V. Следовательно, v представимо в источнике В. Лемма доказана. Алгоритм Я2,0. 1. Если L задано представляющим источником В, то на последующих шагах алгоритма рассматриваем этот источник. Если L является конечноавтоматным множе- ством и задано конечным автоматом А, реализующим L в режиме «вход-выход», то рассматриваем источник В, получающийся из автомата А следующим образом: а) пары «вход-выход», написанные на ребрах графа автомата А, считаем буквами алфавита XX К; б) начальным макросостоянием источника В считаем множество начальных состояний автомата А; в) финальным макросостоянием источника В считаем множество всех состояний автомата А. 2. Производим детерминизацию источника, описанную в доказательстве леммы 2.1.1. В результате получим ини- циальный детерминированный конечный автомат Aq(L). 3. Объединяя попарно эквивалентные состояния авто- мата Aq(L), получим искомый автомат AQ(L). 4. Отбрасывая состояние q* автомата AQ(L), получим автомат Aq(L). Покажем, что в результате применения алгоритма ЗС2.о получим действительно автоматы AQ(L) и Aq(L). 1. Если алгоритм §12.о был применен к источнику В, представляющему своим финальным макросостоянием ре- гулярное множество L, то по теореме Нироуда AQ(L) яв- ляется минимальным по числу состояний, полностью оп- ределенным инициальным детерминированным конечным автоматом, представляющим L своими финальными со- стояниями. 2. Если L является конечноавтоматным мпожеством, реализуемым автоматом А, то для построения AQ(D и AQ(L) Ддя нас важна лишь регулярность L. Утвержде- ние доказано. Автомат Aq(L) по существу является специальным образом построенным по множеству L конечным автома- том Мура, на котором проявляются свойства множества L. Зачастую автомат Aq(L) является минимальным ини- циальным конечным автоматом, представляющим множе- ство L (например, в случае, когда L является конечно-
§ 2. ФОРМАЛЬНЫЕ СИСТЕМЫ 37 автоматным множеством; см. гл. IV), однако подчеркнем еще раз, что главной особенностью является то, что его состояния находятся в одно-однозначном соответ- ствии с классами эквивалентности явного отношения эк- вивалентности Ql. § 2. Формальные системы — аппарат описания регулярных множеств В противоположность автоматной, аналитическая фор- ма описания регулярных множеств мало исследована. По- этому мы считаем целесообразным изложить в этой кни- ге не только результаты, относящиеся к исследованию регулярных множеств, представленных в аналитической форме, но ряд свойств самой этой формы. В этом параграфе показано место, которое среди фор- мальных систем общего вида занимают формальные си- стемы, используемые в книге, и перечислены общие ре- зультаты, относящиеся к изучению таких формальных систем. Естественно, что при изучении словарных множеств в первую очередь возникает вопрос о возможности их кон- структивного описания. В исчислениях Поста, являющих- ся формальными системами, конструктивно описываемое множество слов генерируется как множество теорем, вы- водимых с помощью конечного числа правил вывода из конечного числа исходных слов (аксиом). Исчисление Поста {С, S> представляет собой систему, состоящую из конечного множества аксиом С и конечного множества правил вывода S. Каждое правило состоит из двух частей (левой и правой), связанных стрелкой Как аксиомы, так и части правил вывода есть слова в некотором конечном алфавите X U 8. Множество X со- стоит из основных (терминальных) символов, а элемен- тами множества 8 являются вспомогательные (нетерми- нальные) символы. Среди исчислений Поста значительное место занимают так называемые нормальные системы. В этих системах все правила вывода имеют вид ViV Vv>, где ь\, Vj и V являются словами в алфавите X U 8. Здесь V — так называемая синтаксическая переменная, значе- нием которой может оказаться произвольное слово в этом
38 ГЛ. II. ОПИСАНИЕ РЕГУЛЯРНЫХ МНОЖЕСТВ алфавите. Выводимость слов в системе <С, S> определя- ется рекурсивно: 1) если v С, то v выводимо в <С, S>; 2) если v выводимо и представимо в виде v = ViV, а -> VVj — правило вывода из S, то vf = Vvj также выводимо. Слово v доказуемо в системе <С, S>, если оно выво- димо в этой системе и является словом в основом алфа- вите X. Э. Пост [33] показал, что, несмотря па относительную простоту нормальных систем, любое рекурсивно перечис- лимое множество слов доказуемо в некоторой нормальной системе. Возникает вопрос, какие множества доказуемы в ис- числениях Поста с правилами вывода вида -> р.У, (2.2.1) допускающими изменения лишь в началах слов (р, в на- чале слова заменяется па рД Системы, все правила вы- вода в которых имеют вид (2.2.1), называют правыми ре- гулярными системами. Аналогично, левыми регулярными системами называют системы, все правила вывода в ко- торых имеют вид Vvi -> Fpj. Р. Бюхи [50] показал, что множество слов, доказуе- мых в произвольной (правой или левой) регулярной си- стеме, является регулярным, т. е. представимо финальны- ми состояниями в некотором инициальном конечном ав- томате; этим и объясняется название «регулярные си- стемы». Были исследованы также регулярные системы не- сколько более общего вида, названные обобщенными пра- выми (соответственно левыми) регулярными системами. Подстановки в обобщенной правой регулярной системе имеют вид v^V, pi2V, ..., vihV -> VjV. Это означает, что если слова р', р", ..., р(й) выводимы в системе и представимы в виде р' = ptlV, р" = p<2V, ... ..., p(fc) = PfftP, то слово р = VjV также выводимо в этой системе, т. е. выводимость слова р = PjF определяется вы- водимостью не одного, а нескольких слов вида vitV.
§ 2. ФОРМАЛЬНЫЕ СИСТЕМЫ 39 Соответственно, правила вывода в обобщенной левой регулярной системе имеют вид Vvih Vvi2, ..., Vvik-* Vvj. P. Бюхи [50] доказал, что множество слов, доказуемых в обобщенной правой (или левой) регулярной системе, также является регулярным. Этот результат был обобщен М. И. Кратко [20] на случай смешанной системы с правилами вывода вида VuV, vi2V, ..., vihV -> VjV, Vv^ Vvj2, или с правилами вывода вида v^V-^V, Vpji, Vvj2, ..., Vvjk-+ Vvj. Таким образом, множества слов, доказуемых во всех таких системах, регулярны. Дальнейшие обобщения выводят нас за рамки регу- лярных множеств, давая сразу же класс всех рекурсивно перечислимых множеств. А именно, как отметил Э. Пост, системы с правилами вида VtiP, ViV, Wifa Wvj2 Wv, эквивалентны нормальным системам, т. е. в них доказуе- мо уже произвольное рекурсивно перечислимое словарное множество. Естественно исследовать системы, более простые, чем регулярные, но также порождающие весь класс регуляр- ных множеств. В первую очередь при этом рассматриваются системы, в которых алфавит S пуст, т. е. не используются вспо- могательные символы. Такие (правые или левые) регу- лярные системы Р. Бюхи назвал чистыми. В [50] пока- зано, что всякое регулярное множество может быть пред- ставлено как множество слов, доказуемых в некоторой чистой правой регулярной системе, причем такой, что все правила вывода в ней имеют вид vBiV -* valvKiV, где слово vBt в левой части является собственным
40 ГЛ. II. ОПИСАНИЕ РЕГУЛЯРНЫХ МНОЖЕСТВ началом (pKf имеет ненулевую длину) слова vnivKi в правой части правила. Тот факт, что множество слов, доказуе- мых в произвольной чистой регулярной системе, является регулярным, очевиден, поскольку чистые регулярные си- стемы представляют собой частный случай регулярных систем. Еще одним частным случаем регулярных систем яв- ляются симметричные системы. В них для каждого пра- вила вывода ViV -> VjV содержится также и обратное пра- вило VjV -> ViV. Для такой пары правил вывода в сим- метричной системе в дальнейшем используется обозначе- ние ViV VjV. Для записи регулярных множеств в аналитической форме в этой книге используются симметричные чистые правые регулярные системы, которые для краткости на- зываются просто формальными системами (ФО. Факти- чески используются лишь системы специального вида, названные правильными нормализованными ФС. Поскольку в таких ФС нет нетерминальных символов, то множество доказуемых п множество выводимых слов в них совпадают. Исчисления Поста Нормальные Рекурсивно перечислимые общего вида = системы === множества Обобщенные регулярные системы Регулярные системы Чистые регулярные системы Симметричные чистые регулярные системы у___Регулярные множества Правильные нормализованные ФС Рис. 2.2.1. Тот факт, что множество слов, выводимых в произ- вольной правильной нормализованной ФС, регулярно, яв- ляется очевидным частным случаем соответствующего ре- зультата Р. Бюхи. Обратный результат, а именно: про- извольное регулярное множество состоит из слов, выводи- мых в некоторой правильной нормализованной ФС, до-
§ 3. ЯЗЫКИ ЭКВИВАЛЕНТНЫХ ПРЕОБРАЗОВАНИИ 41 казан авторами книги [17]. Правильность и нормализо- ванность дают возможность сделать предельно простыми процедуры анализа и синтеза регулярного множества, заданного в аналитической форме. Следующие разделы главы II посвящены изучению свойств различных типов правильных нормализованных ФС, свойств регулярных множеств, заданных в аналити- ческой форме, и анализу и синтезу регулярного множе- ства при такой форме задания. На рис. 2.2.1 проиллюстрирована взаимосвязь приве- денных выше результатов. § 3. Языки эквивалентных преобразований Пусть X — фиксированный непустой конечный алфа- вит X = {х^ х2, ..хп}. Под ФС <Ко, К) будем понимать совокупность конечного множества слов в алфавите X, обозначаемого KQ, и конечного множества соотношений (^-набора) К вида v^V — vi2V, /е/=={1, 2, ..., тп), (2.3.1) где Ул, vi2 — фиксированные слова в X*. Здесь V — син- таксическая переменная, другими словами, i-e соотноше- ние A-набора может быть применено к некоторому слову, если это слово может быть представлено в виде либо Univ, либо vi2w, где w может быть произвольным (и пу- стым) словом. В дальнейшем в соотношениях А-пабора для краткости будем опускать синтаксическую перемен- ную V. В ФС <Х0, Х> слово п?2 получается из слова путем левого эквивалентного преобразования, если в fc-паборе К существует соотношение Рц vi2 такое, что = v^w', a w?2 = vi2w'. Если же w2 = v^w', a = vi2w', то в этом случае слово w2 получается из слова путем правого эквивалентного преобразования. Выводом слова w2 из слова ip4 в ФС <Х0, К> назовем цепочку слов Wa, wi2, ..., wip, где wip = w2, a tPt(*+1) получается из wik путем некоторого эквивалент- ного преобразования. Множество соотношений К в ФС <Х0, К> на множе- стве X* порождает отношение эквивалентности Ек, а именно, два слова Wi и w2 эквивалентны в Ек (ицЕкиъ), если существует конечный вывод слова iv2 из Это отношение действительно является отношением эквива-
42 ГЛ. П. ОПИСАНИЕ РЕГУЛЯРНЫХ МНОЖЕСТВ лентности, поскольку: 1) если существует вывод из то существует вывод ш2 из 2) если w2 выводимо из a w3 выводимо из то выводимо ИЗ IPj; 3) по определению, всякое слово w выводимо из самого себя. Дадим определение множества слов, выводимых в ФС <#о, К>; L (Ко, К) {«? | (Зи/ е Ко) (wEKw')}. (2.3.2) Замечание. IAKQ, К) является объединением клас- сов эквивалентности Ек, имеющих своих представителей в Ко. В работе Бюхи [50] показано, что класс множеств, выводимых с помощью рассматриваемых ФС, в точности совпадает с классом регулярных множеств. Там же по- казано, что для описания произвольного регулярного мно- жества достаточно использовать ФС с соотношениями ви- да Vi *-> ViiVi. Однако в этой работе, а также в работе Кратко [20] эти ФС не рассматривались как средство описания регулярных множеств, а исследовались лишь их возможности как частного (и притом весьма простого) вида исчислений Поста. Отметим, что ФС в том виде, в каком они рассматривались в работах [20, 50], не могли служить удобными языками для описания поведения ав- томатов в связи с тем, что в общем случае эти ФС не давали простого (в интуитивпом смысле) алгоритма уста- новления эквивалентности произвольной пары слов и, как следствие, простых алгоритмов синтеза автомата, реали- зующего некоторое 1АК^ К). Однако рассмотренные ФС обладали рядом качеств, которые были весьма привлекательны с точки зрения создания на их основе аппарата для описания поведе- ния конечных автоматов. Таковыми, например, являлись отсутствие нетерминальных символов (аналогов внутрен- них состояний автомата) и наличие одной простой опера- ции, проводимой над словами. В работах [16, 17] пока- зано, что для описания всего класса регулярных множеств достаточно подкласса ФС, исследованных в [50], обла- дающих особым свойством (ниже называемым нормализо- ванностью ФС), определяющим единственность вывода при установлении эквивалентности произвольной пары слов, На этой основе удалось получить простые алгорит-
§ 3. ЯЗЫКИ ЭКВИВАЛЕНТНЫХ ПРЕОБРАЗОВАНИЙ 43 мы анализа и синтеза автоматов, представляющих регу- лярные множества. Это дало основание назвать ФС, об- ладающие указанным свойством, языками эквивалентных преобразований (ниже называемых ЯЭП). Определение 2.3.1. Х-иабор будем называть правиль- ным, если соотношения (2.3.1) удовлетворяют следующим условиям: (*) для любого i^I g(vn) g(vi2), иными словами, правая часть каждого из соотношений (2.3.1) не короче левой при выбранном порядке размещения слов ин и vi2 по обеим сторонам символа не принадлежащего ал- фавиту X; (** ) не существует i, ]^I (i^j) таких, что vi2 яв- ляется началом vj2 ♦). Пусть в выводе w2, ..., wp при р > 3 пе существу- ет ни одной тройки слов Wi, wi+l1 в которой эквива- лентность пар слов Wi и iVi, wi+i устанавливается с помощью одного и того же соотношения путем последо- вательных правого и левого либо левого и правого пре- образований. Такой вывод будем называть несокра- щаемым. Если в ФС <Х0, КУ A-набор К правильный, то всякий несокращаемый вывод w2, ..., wp в такой ФС обла- дает следующими свойствами: 1) если на i-м шаге вывода получается из Wt путем левого эквивалентного преобразования, то все по- следующие преобразования в выводе также могут быть только левыми; 2) при р > 3, если существует, то единственная троп- ка слов w?,, ш<+1, содержащаяся в выводе, в которой эквивалентность пары wt устанавливается с помощью правого эквивалентного преобразования, а эквивалент- ность пары wi+i " с помощью левого эквивалентного преобразования. Вывод, в котором каждое последующее слово получа- ется из предыдущего правым (левым) эквивалентным пре- образованием, называется правым (левым) выводом. Оче- видно, что всякий правый вывод является неудлиняющим, так как для любой пары слов wi+i, содержащейся в выводе, g(iVi+i) g(^i), а всякий левый вывод является неукорачивающим, так как g(toi+i) > g(tOi). *) * *) Если vi2 = Vj2 при / i, то по определению Vi2 является началом Vj2 и наоборот.
44 ГЛ. II. ОПИСАНИЕ РЕГУЛЯРНЫХ МНОЖЕСТВ Будем называть fc-набор нормализованным, если в нем не существует такого соотношения, что эквивалентность левой и правой частей этого соотношения может быть установлена с помощью остальных соотношений, входя- щих в А-набор. Лемма 2.3.1. Правильный fc-набор К нормализован тогда и только тогда, когда для любой пары w2 е X* такой, что ю^Еки)2 и w2 выводимо из с помощью пра- вого вывода, этот вывод единствен. Доказательство. Для доказательства необходи- мости предположим, что существуют и w2 такие, что w{EKw2 и w2 выводится из несколькими правыми вы- водами. В силу правильности /f-набора К каждое правое эквивалентное преобразование на каждом шаге вывода ш2 из Wi единственно. Поэтому неединственность вывода w2 из может иметь место лишь в том случае, если соотношения fc-набора допускают вывод слова w2 из са- мого себя. Рассмотрим кратчайший правый вывод w2, wi2, ... ..w2, в котором ни одно слово, кроме w2, не встреча- ется дважды. Очевидно, что в этом выводе могут ис- пользоваться лишь соотношения, имеющие левые и пра- вые части равной длины, поскольку этот вывод неудли- няющий. У всех слов в этом выводе отбросим максимальный конец, общий для всех слов (возможно, пустой), так что длина полученных слов равна длине самой длинной части участвующих в этом выводе соотношений. Получаемый в результате вывод z, zfl, zi2, ..., z является кратчайшим выводом слова z из самого себя, и поэтому в этом выводе нет слов, кроме z, встречающихся более одного раза. Кроме того, в этом выводе все слова имеют равную длину g(z). Пусть соотношение vk -*-> является одним из самых «длинных» примененных в выводе, т. е. = = g(vh+l) — g(z). Это соотношение может быть применено строго один раз, иначе вывод z, z«, ..., vk+i, vk, zik, ..., z был бы некратчайшим. Но тогда эквивалентность vk и vk+l может быть доказана с помощью других соотношений, используемых в этом выводе: vk, zik, ..., z, ztl, ..., vk+i. Отсюда следует, что fc-набор не нормализован. Достаточность. Пусть в ^-наборе К существует соотношение vk -*-> vk+i, в котором эквивалентность слов vk и vk+l устанавливается без применения этого соотноше- ния. Например, пусть vh, pti, vi2, ..рА+1 — несокращае-
§ 3. ЯЗЫКИ ЭКВИВАЛЕНТНЫХ ПРЕОБРАЗОВАНИЙ 45 мый вывод слова vk+i из слова в котором не исполь- зуется соотношение vk ++ vh+i. Если получается из vk с помощью левого эквива- лентного преобразования, то в силу правильности ft-на- бора все последующие преобразования могут быть только левыми. Следовательно, vk выводимо из vk+l с помощью правых выводов vk+i, vip, ..vi2, vih vh и pa+1, vk, причем последний вывод является просто следствием соотноше- ния vh vk+l. Если на первых I шагах были применены правые эквивалентные преобразования, а последующие шаги являлись левыми преобразованиями, то можно по- лучить следующие два различных правых вывода слова vit из nfc+1: Pfc+1, vk, Pfl, ..vit и vh+l, vip, ..., vi(?+1), vit. В обоих рассмотренных случаях приходим к противо- речию с правильностью ft-набора. Действительно, в ft-на- боре должны присутствовать соотношения vh ++ vh+i и vip рл+1 (Vip^VfX что недопустимо в силу правильно- сти ft-пабора. Таким образом, остается единственная возможность: в рассматриваемом выводе используются лишь правые эк- вивалентные преобразования. Но тогда правый вывод vk, Vh, vi2, ..., vh+l может быть продолжен в силу соотноше- ния vk -*-> пА+1 до правого вывода vh. vt2, ..., vk+1, vK. Отсюда следует, что слово vk выводимо из vk+i по край- ней мере двумя различными правыми выводами: рА+1, vk и, например, vk, vih vi2, ..., vk+l, vk. Таким образом, если для любой пары Wi и w2 такой, что WiEkw2. w2 выводится из Wi с помощью единствен- ного правого-вывода, то ft-пабор нормализован. Лемма доказана. Из леммы 2.3.1 следует простой алгоритм проверки нормализованное™ ft-набора: из всех левых частей соот- ношений, имеющих обе части одинаковой длины, нужно строить правые выводы в ФС <2£0, используя для этой цели только указанные соотношения. Эти выводы следует продолжать до тех пор, пока либо одно и то же слово впервые не встретится в выводе дважды, либо к послед- нему слову в выводе нельзя применить правое эквива- лентное преобразование, не изменив длины этого слова. Если ни один из выводов не приведет к исходному сло- ву, то предъявленный ft-пабор является нормализо- ванным. Назовем ft-набор К* эквивалентным ft-набору от- носительно Ек^ если Ек' — Ек*.
46 гл. II. ОПИСАНИЕ РЕГУЛЯРНЫХ МНОЖЕСТВ Используя процедуру проверки нормалпзованности к- набора, для всякого правильного Ar-набора можно по- строить эквивалентный ему относительно Екх правиль- ный нормализованный Ar-иабор К2. Предварительно разместим соотношения Ar-набора, со- храняющие длину преобразуемого слова, в порядке убы- вания длин правых и левых частей. Для соотношений, имеющих равную длину*), порядок размещения без- различен. Занумеруем соотношения в порядке раз- мещения. Пусть уже произведено i — 1 шагов построения пра- вильного нормализованного Ar-набора. На i-м шаге прово- дится построение из левой части г-го соотношения с по- мощью соотношений, сохранившихся в Ar-паборе после (/ —1)-го шага, правого вывода, продолжаемого до тех пор, пока либо к последнему слову в выводе нельзя при- менить эквивалентное преобразование, пе изменив дли- ны этого слова, либо в выводе некоторое слово впервые встретится дважды. Если в последнем случае таковым яв- ляется исходное слово, это соотношение из Ar-набора уда- ляется п в дальнейших построениях но участвует. После этого можно перейти к реализации (i+D-ro шага по- строения. Очевидно, что па каждом шаге этого построения по- лучающиеся Ar-наборы будут правильными и эквивалент- ными К{ относительно Ekv После того как рассмотрены все соотношения исход- ного А’-набора Кь оставшиеся соотношения объявляются Ar-набором К2, который по построению правильный и нор- мализованный. 3 а м е ч а п и с. Рассматриваемая процедура может быть произведена без упорядочения соотношений Аг-па- бора в порядке убывания их длин, преследующего цель получения Ar-набора К2 наименьшего размера (см. § 1 гл. Ш). Таким образом, можно считать доказанным следующее утверждение. Лемма 2.3.2. Для всякого правильного Ar-пабора Kt существует правильный нормализованный Ar-набор К2, эк- вивалентный Ar-набору Kt относительно Екг ♦) Под длиной соотношения здесь понимается сумма g(t’ii) + + g(^i2).
§ 4. ОТНОШЕНИЕ ЭКВИВАЛЕНТНОСТИ ЕК 47 § 4. Отношение эквивалентности Ек Как уже было отмечено выше, A-набор К определяет на множестве X* отношение эквивалентности Ек и соот- ветствующее ему разбиение X* па классы эквивалентно- сти Ргк. Отметим следующее свойство Ек: если WiEKw2, то для любого w X* имеет место wtwEKwzw, т. е. Ек — правый инвариант. В силу правоинвариантности Ек справедливо следую- щее утверждение: если и\Еки>2, то u\QLw2, где L = = Л(Х0, К). Другими словами, разбиение X* на классы эквивалентности Ек является подразбиением *) разбиения на классы явного отношения эквивалентности QL. Рассмотрим свойства классов отношения Ек, опреде- ляемого правильным нормализованным Zr-набором X, вве- дя предварительно следующее определение. Определение 2.4.1. Слово w е X* называется простым в Ек, если в К нет соотношения, правая часть которого является началом слова w. Другими словами, слово w является простым в £\, если оно не может быть подвергнуто правому эквивалент- ному преобразованию. Свойство 2.4.1. Для всякого класса Рк отноше- ния Ек и любого w е X* существует класс Рк такой, что Это свойство следует из правой инвариантности Ек. Свойство 2.4.2. В каждом классе эквивалентности Рк существует в точности одно простое слово. Свойство 2.4.3. Всякое слово из Рк может быть получено из простого слова с помощью единственного ле- вого вывода. Действительно, факт существования в каждом классе Рк простого слова вытекает из того, что если последова- тельно применять правые эквивалентные преобразования, начиная с произвольного слова е Рк, то на некото- ром шаге приходим к такому слову н?2, которое не может быть подвергнуто правому эквивалентному преобразова- нию. В противном случае, если этот правый вывод бес- *) Разбиение R будем называть подразбиением разбиения Q, если каждый элемент Q есть объединение некоторых элементов Я. ♦*) Здесь = [iw | v s Pg).
48 ГЛ. И. ОПИСАНИЕ РЕГУЛЯРНЫХ МНОЖЕСТВ конечен, то в силу конечности алфавита X и неудлиняе- мое™ слов в выводе некоторое слово и/ должно встре- титься в этом выводе по крайней мере дважды, но это противоречит нормализованности A-набора К. Единственность простого слова п?дР е Рк докажем от противного. Пусть в Ргк — произвольном классе эквива- лентности Ек существуют по крайней мере два про- стых слова: (и*пРУ и (гРдР)\ По определению класса эк- вивалентности, существует вывод (^прУ из (^пр) . Пусть (м^пр) выводимо из (м^прУ с помощью несокращаемого вы- вода (u>Ap) , .. .,(м?АРУ.На первом шаге в этом вы- воде применено левое эквивалентное преобразование, ина- че (н?др) было бы непростым. Но тогда весь вывод должен быть левым в силу правильности А-набора X, и, следова- тельно, к слову (и>дрУ может быть применено некоторое правое эквивалентное преобразование, что противоречит его простоте. Единственность левого вывода произвольного слова w е Ргк из и>др вытекает из того, что этот вывод являет- ся обратным по отношению к единственному правому вы- воду U?Lp ИЗ W. Индекс (число классов) отношения Ек в общем слу- чае может не быть конечным. В этом случае всегда можно построить отношение Ек, имеющее конечный индекс и следующим образом соотносящееся с отношением Ек. Каждый класс Рк отношения Ек такой, что Рк ^Р(Х0,Х), является классом в Ек. Если Pk(£L(Kq, К), но существует w е X* такое, что PrW L (Хо, К), то Рк также является классом в Ек. Все остальные классы отношения Ек образуют один общий класс (обо- значим его Рк) отношения Ек. Очевидно, Ек также является правым инвариантом, а потому для этого отно- шения также имеет место свойство 2.4.1. Класс отношения Ек, содержащий пустое слово, будем обозначать через Рк* Рассмотрим автомат ЛБ(Р), связывая его состояния с классами отношения Ек, причем началь- ное состояние $о этого автомата соответствует классу Р#, а финальные состояния — классам Рк таким, что Рк £ £L(KQ,K). Матрица переходов автомата Л£(Р) строится на основании свойства 2.4.1. Этот автомат представляет
§ 4. ОТНОШЕНИЕ ЭКВИВАЛЕНТНОСТИ Як 49 множество IAKq, К) своими финальными состояниями. В Ae(L) лишь состояние $*, соответствующее классу таково, что из него недостижимы финальные состояния. Его можно удалить, в результате чего получится иници- альный конечный детерминированный (благодаря свой- ству 2.4.1) частично определенный (если Р*£=0=0) ав- томат Ae(L), представляющий IAKo, К) своими финаль- ными состояниями. _ Как же соотносятся между собой отношения Ек, Ек и Ql, а также автоматы Ае (L) и Aq(L)? Ответ па этот вопрос дается следующими двумя леммами. Лемма 2.4.1. Отношение Ql представляет собой гомо- морфный образ любого отношения Ек (а также Ек) тако- во, что L = IAK.q, К). Доказательство. Функцию А,_ отображающую множество классов отношения Ек (или Ек) на множество классов отношения Ql, определим следующим соотноше- нием: Операцией в данном гомоморфизме является конкатена- ция, обобщенная па классы в соответствии со свойством 2.4.1 как для Ек (или Ек), так и для QL, а именно: б(РЪ,и) = Р}к^Р*к1»<=Р*к. Поскольку имеет место соотношение лемма доказала. Замечание Нироуда о том, что среди всех отношений эквивалентности, порождающих регулярное множество L (т. е. таких, что L является объединением классов порож- дающего отношения), явное отношение Ql имеет наимень- ший индекс, следует из этой леммы. Лемма 2.4.2. Автомат Aq(L) представляет собой го- моморфный образ любого автомата Ae(L) такого, что L = L(Kq, К). Доказательство этой леммы аналогично доказательству леммы 2.4.1, если функцию 6 понимать как функцию переходов в рассматриваемых автоматах (для Aq(E) это будет 6f, а для Ae(L)—S2). В этом случае будет иметь место соотношение fe(62(s, ы?)) == 8Sh{s), w). Конечные автоматы
50 ГЛ. И. ОПИСАНИЕ РЕГУЛЯРНЫХ МНОЖЕСТВ Как следствие леммы 2.4.2, можно рассматривать тот известный факт, что из всех инициальных детерминиро- ванных конечных автоматов, представляющих L своими финальными состояниями, автомат Aq(E) является ми- нимальным по числу состояний. Из рассмотренных выше свойств Ек вытекает простой алгоритм установления эквивалентности произвольной пары слов ъЕк: Wiiiiv2 эквивалентны вЕк тогда и только тогда, когда правые выводы, началами которых являются iVi и п?2 (единственные в силу нормализованности и пра- вильности Л-набора К в ФС <KQ, К», заканчиваются одним и тем же простым словом ^inp- В дальнейшем ФС </<0, К) будем называть нормализо- ванной, если /с-набор К — правильный и нормализован- ный, а Кь состоит лишь из простых в Ек слов. Нормализованные ФС <Х0, К) будем называть языка- ми эквивалентных преобразований (ЯЭП). Определим ча- стные случаи ЯЭП, а именно ЯЭП 1 и ЯЭП 2 [28J. Определение 2.4.2. Назовем ФС <Х0, ЯЭП ] {ЯЭП 2), если все соотношения /с-пабора К имеют вид ^нг vHivoi (^кг где Voi^A и для соотношений ЯЭП 2 pHi А. Для ФС такого вида будем применять обозначения <KQ, K>i для ЯЭП 1 и <KQ, К>2 для ЯЭП 2. Очевидно, что-правильные fc-наборы в ФС <Х0, и <Х0, К>2 являются нормализованными, поскольку вся- кий правый вывод в этих ФС является укорачивающим и, следовательно, единственным (см. лемму 2.3.1). Поэтому разбиение X* на классы эквивалентности Ек обладает свойствами 2.4.1—2.4.3, определяемыми правильным нор- мализованным ^-набором К. Лемма 2.4.3. Пусть fc-набор К содержит только такие соотношения, у каждого из которых левая и правая части находятся в некотором отношении эквивалентности R, являющемся правым инвариантом. Тогда разбиение X* на классы Ек является подразбиением разбиения X* на классы R (в дальнейшем это будет обозначаться EK=>R). Доказательство. Каждая пара слов и w2, выводимых одно из другого с помощью соотношений fc-на- бора К, находится в отношении Ек со всеми словами, об- разующими вывод Wt из w2 (и наоборот). Отсюда в силу транзитивности R имеем wj{w2. Лемма доказана. Следствие. Если Кл — К2, т. е. все соотношения Л-набора Кх входят в Л-набор К2, то Е^^Е^.
§ 4. ОТНОШЕНИЕ ЭКВИВАЛЕНТНОСТИ Е К 51 В дальнейшем будет использована следующая лемма, доказательство которой опускается ввиду его очевидности. Лемма 2.4.4. Пусть /с-наборы Ki и К2 определяют такие ЕК1 и Ек2, что EKl = Е«2. Тогда для произволь- ного соотношения ++ v2 имеет место равенство Е^ = ^Ек2, где Ki — Ki U {Vi ++ v2} и К2 — К2 U {vt ++ v2}. Определение правильного нормализованного А-пабора не препятствует наличию в нем соотношений, левые ча- сти которых не являются простыми в Ек словами. Пусть, например, в A-наборе К имеются соотношения рй ++ vi2, i'ji vj2 и Va = vi2v'. Заменим в К второе из этих со- отношений соотношением ptlp' vi2 *) и полученный в результате этого A-набор обозначим К'. Покажем, что Ек = Ек'- Положим Рдр' = Рд и рассмотрим две пары соотноше- нии: {Va Vi2, Vji ++ vj2} — К и {рд vi2, Рд^-> Рд1 = —К'. Очевидно, что разбиения X* па классы и E^f совпадают, т. е.2?к = Ек>, в силу леммы 2.4.3, поскольку эквивалентность левых и правых частей соотношений A-набора К' может быть выведена с помощью соотноше- ний A-набора К и, наоборот, эквивалентность левых и правых частей соотношений A-набора К следует из соот- ношений A-набора К'. Добавление к К и К' одного п того же множества соотношений, дополняющего их до А-паборов К и К' соответственно, в силу леммы 2.4.4 приводит к равенству ЕК = ЕК,. Пусть теперь в соотношении Рд -<-> pj2 правильного нормализованного A-набора К слово Рд, не являющееся простым, эквивалентно в Ек некоторому 1РПр= Уд. По- строим А-пабор К', состоящий из всех соотношений A-на- бора X, кроме соотношения Рд vj2, вместо которого в К' включается Рд -<-> Рд. Поскольку пеудлппяющий пра- вый вывод Рд из Рд конечен, можно индукцией по дли- не вывода показать, что Ек = Ек1. Таким образом, спра- ведлива следующая лемма. Лемма 2.4.5. Для всякого правильного нормализован- ного A-набора К существует эквивалентный ему отно- сительно Ек правильный нормализованный А-пабор К', *) В силу нормализованности К vuv' =^= pj2. 4*
52 ГЛ. II. ОПИСАНИЕ РЕГУЛЯРНЫХ МНОЖЕСТВ все соотношения которого имеют левые части, являющие- ся простыми словами. Определение 2.4.3. Формальные системы <Х0Ь А\>, <Х02, К2У назовем эквивалентными относительно L X*, если Л(Х01, = IAKvl, К2) = L. При описании регулярных множеств с помощью ЯЭП возникает вопрос: не содержит ли ФС <7<0, Ю лишние элементы в своих компонентах Ко и К? Если ФС <Х0, К) — нормализованная, то в соответствии с ее опреде- лением невозможно построение ФС <Х0ДО» эквивалент- ной ФС <Ло, КУ относительно Л, такой, что Kf cz К. Если же пытаться удалять слова из Хо, удаляя одновременно с этим некоторые соотношения из Аг-пабора К и получая /г-набор К', то ФС </<0» К’У по будет эквивалентной ФС<Х0, КУ относительно L. Действительно, поскольку все слова из Хо, простые в Ек, будут также простыми в EKt и, следовательно, удаление слов из Ко невозможно. Остается последняя возможность: удалять только соотношения из /с-набора К. Очевидно, из К мо- гут быть удалены только такие соотношения, которые не используются при установлении эквивалентности слов, образующих входящие в 1АКп, К) классы Ек. Выявле- ние этих соотношений можно проводить с помощью про- цедуры, описываемой ниже и основанной на том факте, что если обе части некоторого соотношения содержатся в Q*, то это соотношение не используется в выводах слов из IAKq, К). Первоначально рассмотрим эту процедуру применительно к ^-наборам, в которых все левые части соотношений являются простыми словами. Упорядочим соотношения некоторого Zc-набора К, при- своив всем соотношениям различные номера из некоторо- го множества 7V, так что не существует ни одной пары соотношений с одинаковыми номерами. Соотношение с номером п имеет вид vni *-> vn2. Образуем множество No, состоящее из номеров тех соотношений, левая часть каж- дого из которых является началом некоторого слова из К{}. Пусть уже построена цепочка множеств No, N{, ... ..., Л\-1. Множество Nh строится по следующему алго- ритму: 1. N' = {п I (л €= N) (э« е= Nk-i') (рщ = )}. 2. i=0 .
§ 5. АЛГОРИТМЫ АНАЛИЗА И СИНТЕЗА АВТОМАТОВ 53 Здесь р~2— некоторое начало слова р~2. Построение цепочки завершается, как только некоторое Nr = 0. Рас- смотрим N = (J Ni. Соотношения, номера которых не во- 1=0 шли в 7V, могут быть удалены из fc-набора К, поскольку они никогда не будут использованы в выводах из слов, входящих в Ко. Для произвольного правильного нормализованного к- пабора К, в котором существуют соотношения с левыми частями, не являющимися простыми в ЕК, процедура пре- дусматривает предварительное преобразование ^-набора К (в соответствии с леммой 2.4.5) в fc-пабор К', в кото- ром все левые части являются простыми и который эк- вивалентен К относительно Ек. § 5. Алгоритмы анализа и синтеза автоматов Как отмечалось выше, регулярность множества 1АКо, X), порожденного произвольной ФС </<0, КУ (в том чис- ле, конечно, и нормализованной), была установлена еще Бюхи L50J. В этом параграфе будет рассмотрен более простой, чем у Бюхи, алгоритм построения автомата, представляющего 1АКо, К), и тем самым будет решена задача синтеза автомата, представляющего заданное ЯЭП регулярное множество. Простота этого алгоритма сравни- тельно с алгоритмом Бюхи определяется простотой уста- новления эквивалентности слов в Ек. При решении за- дачи синтеза будем строить автомат AQ(L), полагая, что L задано нормализованной ФС <Z<0, КУ произвольного вида. Предварительно по ФС <KQ, КУ образуем множество SW, состоящее из всех собственных начал правых частей соотношений й-набора К, из всех слов К9 и их собствен- ных начал. В дальнейшем нам понадобится следующая лемма. Лемма 2.5.1. Если w е X* — простое в Ек и то w<=Q*. Доказательство. Из условия леммы следует, что w не содержится в 1АКо, К). Пусть существует и/^Х* такое, что . е К). Слово ww' не может быть подвергнуто правому эквивалентному преобразованию, поскольку не содержит своим началом правой части со- '.отношеция ^-набора К, иначе по построению Зй.
54 ГЛ. II. ОПИСАНИЕ РЕГУЛЯРНЫХ МНОЖЕСТВ Следовательно, ww' — простое в Ек, а так как wiv' е ZL, то ww'<= KQ. Но тогда по построению 2)1 ip^2R, что про- тиворечит условию леммы. Отсюда следует, что ww' Ф А, откуда w е (7*. Лемма доказана. Следствие. Для построения автомата AQ(L) доста- точно рассмотреть отношение QL на множестве 2)1. Действительно, описать отношение Ql па X* можно, рассмотрев это отношение лишь па множестве простых в Ек слов, поскольку, если некоторое простое слово и4р входит в некоторый класс Qj отношения QL, то весь класс Pi также содержится в Qj (см. § 4 гл. II). В общем случае множество простых в Ек слов может быть бесконечным, но из леммы 2.5.1 следует, что лишь конечное их число, а именно слова из множества 2)1, мо- гут иметь продолжения, приводящие к словам из множе- ства Ь(К0, К). Таким образом, все простые в Ек слова, не вошедшие в 2)1, войдут в особый класс Q* отношения Ql. Этому классу соответствует состояние д* автомата Aq(L), все переходы из которого ведут в это же состоя- ние. Операция разбиения множества 2)1 ’па классы QL аналогична процедуре разбиения множества состояний произвольного автомата па классы неотличимости. Опишем коротко эту процедуру применительно к рас- сматриваемому случаю. Первоначально множество 2)1 раз- бивается па два непсресекающихся подмножества и такие, что s L (Ко, К), SDl^1’ (£ L (Ко, К). В со- ответствии с этим предполагаем, что существуют три класса явного отношения Ql' Q^^Q^i\Q^ такие, что 2)11^ ^iX), 2)?21) Q^. На первом шаге рассматриваются продолжения слов из 2Я(11) и по всем буквам алфа- вита X. Если в одном из множеств 2Ri1) найдется пара слов и ip2, для которых продолжения их по некоторой букве х X: w{x и w2x содержатся в различных классах из (?*, С??*, то множество 2Л(/) должно быть раз- бито на подмножества, число которых не превосходит трех (по числу возможных переходов из 2Я|1) в Q*, Q^ И Qn Продолжая эту процедуру, на i-м шаге рассматриваем подмножества 2Я1 \ ..., 2Яр > п соответствующие классы Q*, Qi*\ • • •, Измельчение подмножества 2Я^ дол- жно быть произведено в том случае, если в нем най-
§ 5. АЛГОРИТМЫ АНАЛИЗА И СИНТЕЗА АВТОМАТОВ 55 дется пара слов и w2, продолжения которых по не- которой букве х^Х содержатся в различных классах из Q*,Qi\ Если впервые па А-м шаге процедуры ни одно из множеств ., SD?rfe) не подлежит разбиению, т. е. для любого х X выполняются условия (2.5.1) либо <=(?*, (2.5.2) где 1 s? у «S г, 1 < г, то полагаем Q^ = Qi для всех i, 1 i г, где Qi — классы отношения Ql- Процедура заканчивается построением матрицы переходов автомата Aq{L\ каждое состояние q$ которого отождествляется с классом Qi, а функция переходов определяется в соответ- ствии с условиями (2.5.1) и (2.5.2). Финальными состоя- ниями автомата AQ(L) назначаются те состояния, кото- рые связаны с подмножествами содержащимися в Kq. Начальное состояние qQ автомата AQ{L) связано с под- множеством 2Rift), содержащим пустое слово А. Очевидно, что для осуществления процедуры понадо- бится не более чем |ЗИ| — 1 шагов, причем достижимость этой оценки может быть показана на примере ФС </l0, &>, в которой /Го={ОО...О}, А =-- {А +-> 00 .7 0). П-1 Множество 2R в этом примере и всех слов, состоящих из ну- лей, длины не более п — 1, l2R|=n. Рекомендуем читате- лю провести самостоятельно по- строение автомата AQ(L), пред- ставляющего заданное К). Граф автомата представлен на рис. 2.5.1. Финальное состоя- ние автомата — qn-i- Для числа состояний п ав- томата Aq(L), получаемого из ФС <К0, К> в соответствии с
56 ГЛ. II. ОПИСАНИЕ РЕГУЛ ЯВНЫХ МНОЖЕСТВ описанной процедурой, очевидно, имеет место следующая оценка: п !Ф1| + 1. Замечание. Продолжения некоторых слов из 2Й могут приводить к непростым в Ек словак. В этих слу- чаях, используя тот факт, что если два слова находятся в отношении Ек, то они находятся в отношении QL, в описанной выше процедуре будем рассматривать про- стые слова, эквивалентные указанным продолжениям, Если допустимо построение частичного автомата, пред- ставляющего заданное множество 1АК0, К), то в постро- енном автомате AQ(L) можно отбросить состояние, соот- ветствующее классу Q*. Описанная процедура синтеза не зависит от вида ЯЭП, используемого для описания L(K^ К). Эта процедура мо- жет рассматриваться как алгоритм, в дальнейшем назы- ваемый Теперь задача состоит в том, чтобы показать, как для произвольного регулярного множества L построить ЯЭП <Я0, КУ такой, что L = L{K^ К). Известны алгоритмы построения ФС <7<0, КУ, описанные в работах [20, 50], которые в общем случае дают Л-пабор, по являющийся правильным. Отметим также, что алгоритм построения ФС <Хо, К> (типа ЯЭП 1) в работе [20J требует описа- ния множества L регулярной формулой. Ниже приводятся алгоритмы построения ФС <Х0, КУ по произвольному источнику (определение источника да- но в главе I), представляющему некоторое множество L. Начнем с алгоритма построения ЯЭП 1, описывающего множество А(Л), представляемое финальными состояния- ми 8Ф S некоторого источника Л, множество начальных состояний которого 5П 8 (8 — множество состояний источника А *)). Представим множество всех слов из X*, допустимых из макросостояния 8Н источника, в виде дерева. Назовем букву х. е X допустимой в макросостоянии Sj = pjp .. •,если существует по крайней мере одно состояние е 5^ дЛЯ которого определено отобра- жение h па паре Дерево источника Л — это ориентированный мульти- граф, каждая вершина которого помечена некоторым мак- росостояпием 8,^8 источника Л (в дальнейшем для ♦) Предполагается, что в источнике А отсутствуют состояния, из которых недостижимы финальные состояния.
§ 5. АЛГОРИТМЫ АНАЛИЗА И СИНТЕЗА АВТОМАТОВ 57 обозначения вершины будет использоваться обозначение соответствующего ей макросостояния Sj), а ребро, веду- щее из некоторой вершины Sj в вершину Sk, нагружено буквой допустимой в Sjt При этом Sh — макросостоя- ние, в которое ведет буква Xi из макросостояния Sj в со- ответствии с отображением h. Начальной вершиной (вер- шиной ранга 0) дерева является начальное макросостоя- пие источника SH. Из каждой вершины ранга i в вершины ранга i + 1 ведут ребра, помеченные всеми допустимыми в рассматриваемой вершине ранга i буквами. Каждому слову w, ведущему в источнике А из на- чального макросостояния в макросостояние Sj, на дере- ве соответствует ветвь, ведущая из начальной вершины в вершину Sj и имеющая длину (длина ветви — количе- ство образующих ее ребер), равную g(w>). В общем слу- чае дерево источника А может иметь ветви бесконечной длины. Для источника А построим так называемое укорочен- ное дерево, обрезая, когда это возможно, ветви дерева по следующим правилам: 1) каждая укорачиваемая ветвь переводит источник из множества Su в множество состояний Si, в которое также ведет и некоторое собственное начало рн/ этой ветви (таким образом, очевидно, что 2) никакую ветвь укороченного дерева нельзя более укоротить с соблюдением правила 1). Очевидно, если п — число состояний источника А, то длина укороченного дерева не превосходит 2п — 1. Если А — инициальный детерминированный автомат, то эта оценка может быть понижена до п. Обозначим через множество ветвей укороченного дерева, полученных в результате укорачивания (В{ = {fej), а через В2 — множество остальных ветвей, т. е. ветвей, которые не подвергались укорачиванию. Условимся, что концы ветвей укороченного дерева, получившиеся в ре- зультате укорачивания, будут на этом дереве подчерки- ваться.. Построим ФС К) по укороченному дереву источ- ника А. Множество KQ образуем из всех слов множества НА), являющихся началами ветвей множества В2 и соб- ственными началами ветвей множества В^). При этом *) Слова, принадлежащие множеству £(Я), соответствуют вет- вям, ведущим из начальной вершины в вершину, в которой хотя бы одно состояние финальное.
58 ГЛ. II. ОПИСАНИЕ РЕГУЛЯРНЫХ МНОЖЕСТВ возможно A е Ко, если 8Н Л 5Ф =/= 0. Каждой ветви Ьг е поставим в соответствие соотношение vRi -«-* В по- лученном таким образом /с-наборе К могут встретиться и соотношения вида А ++ vOi, если voi переводит источ- ник А из начального макросостояния в это же состояние. Из построения следует нормализоваппость ФС <Х0, K>i. Рассмотренную процедуру в дальнейшем будем именовать алгоритмом Я2.2. Докажем теперь, что множество £(Ю, K)i = IAA). а) Пусть некоторое К\. Тогда существует w' Ко такое, что w'EKw\ w'^L(A) по построению ФС (Ко, K>i. Заметим, что если слово подвергается эквива- лентному преобразованию, то в результате получается слово, ведущее из $а в то же множество состояний, что и исходное слово. Отсюда получаем, что iv^L(A) и, сле- довательно, L(Ko, K)i IAA). б) Пусть произвольное w^LAA). Если w Ко, то по построению u? е L(X0, Иначе найдется соотношение, правая часть которого совпадает с началом слова и?, и слово w может быть подвергнуто правому эквивалент- ному преобразованию. Полученное в результате такого преобразования слово Wt принадлежит L(A) по построе- нию ^-набора. Продолжая этот процесс, если это необ- ходимо, получим слово w* такое, что w*EKw и w* е Ко. Следовательно, w <= £(Х0, K)i и IAA) s L(Z<0, К\. Отсюда следует, что LAA) = К\, Итак, доказана следующая теорема. Теорема 2.5.1. Для всякого регулярного множества L существует нормализованная ФС <Х0, A>i такая, что L = UKo, Юр Алгоритм Я2.2 уже дает описание произвольного регу- лярного множества на ЯЭП, поскольку всякий ЯЭП 1 является ЯЭП. Однако ниже приводятся алгоритмы Я2.3 и Я2.4, которые по произвольному источнику, представля- ющему множество L, позволяют получить ФС </<0, КУ та- кую, что 1/(Х0, К) = L, а соотношения в этой ФС не обя- зательно ИМеЮТ ВИД Гн/ РщРоь Алгоритм $12.з построения короткого дерева по ис- точнику А. В отличие от укороченного дерева, вид короткого де- рева и наличие в нем тех или иных ветвей зависят от порядка выписывания слов одинаковой длины. Будем при- держиваться так называемого лексикографического поряд- ка. При этом предполагается, что алфавит X произвольно
§ 5. АЛГОРИТМЫ АНАЛИЗА И СИНТЕЗА АВТОМАТОВ 59 упорядочен, а при продолжении уже построенной ветви к ней пристраиваются буквы алфавита X в том же по- рядке. Вершине ранга 0 короткого дерева соответствует на- чальное макросостояпие 5Н источника А. Вершинам ранга к соответствуют макросостояния, в которые из $я ведут слова длины к, допустимые в источнике А из 5Н. Каж- дая ветвь продолжается до тех пор, пока впервые на ней не встретится вершина, уже имеющаяся на дереве среди вершин меньшего ранга либо среди уже построен- ных вершин данного ранга. Такие вершины подчер- киваются и соответствующие ветви далее не продол- жаются. Если некоторая ветвь, содержащая па конце еще не подчеркнутую вершину, не имеет допустимых в А про- должений, то она будет называться простой и соответ- ствующая вершина не подчеркивается. Алгоритмы $22 п $2.з позволяют доказать следующую лемму. Лемма 2.5.2. Короткое дерево полностью содержится в укороченном, если оба они построены по одному и тому же источнику. Алгоритм $2.4 построения ФС К> по коротко- му дереву источника А. 1. KQ образуем из всех слов v^L(A), являющихся: а) простыми ветвями короткого дерева; б) собственными началами простых ветвей; в) собственными началами подчеркнутых ветвей. 2. A-набор К образуем из всех соотношений вида Vn *-> р12, где vi2 — подчеркнутая ветвь, а — собствен- ное начало одной из ветвей короткого дерева или простая ветвь, такие, что и vi2 ведут из вершины ранга 0 в вершины, которым соответствует одно и то же макросо- стояние источника А. Лемма 2.5.3. ФС <Х0, построенная по алгоритму $24 для источника Л, является нормализованной, и ’ШГо, К) = 1АА). Доказательство. 1. Поскольку никакая подчерк- нутая ветвь не является началом другой подчеркнутой ветви короткого дерева, а всякая подчеркнутая ветвь яв- ляется правой частью лишь одного соотношения Л-пабо- ра К, последний является правильным. 2. Из того, что никакая подчеркнутая ветвь не явля- ется простым в Ек словом, а левые части соотношений
ПО ГЛ. ТТ. ОПИСАНИЕ РЕГУЛЯРНЫХ МНОЖЕСТВ A-набора К являются простыми в £*к, следует, что правая часть любого соотношения не может быть началом левой части никакого соотношения /с-набора К, Этого достаточ- но для нормализованное™ A-набора К. 3. Поскольку /С — LG4), а для всякого соотношения -<-> vi2 /г-набора К vt[ и vi2 ведут пз SH в одно и то же макросостоянпе, то L(KQ, Обратно, пусть w е е£(Л). Здесь могут быть следующие случаи: a) но тогда /<); б) w является подчеркнутой ветвью или продолжением подчеркнутой ветви короткого дерева. В этом случае существуют wf X* и соотношение ptl -<-> pi2 ^-набора К такие, что w = vi2w'. Но тогда по построению ФС </l0, К> имеем Vaiv' & ЦЛ). В силу един- ственности правого вывода в нормализованной ФС <Я0, К) получим за конечное число шагов v* KQ и v*EKw, откуда w^L(Kq, К), следовательно, IAA) IAKQ, К). В итоге имеем А(Л) = L(Z<0, К). Лемма доказана. В дальнейшем ФС <Z<0, К>, построенные в соответ- ствии с алгоритмами Я2.2 и по автомату Aq(L), бу- дут обозначаться соответственно KL)r и KL), а множество всех начал слов из Kq и собственных начал правых частей соотношении /^-наборов KL будем обозна- чать в зависимости от типа ЯЭП пли SD?L. Исключительность ФС <7<о»KL) (пли любой другой ФС такого типа, получаемой с помощью алгоритмов $2.з и SU.4 по автомату Aq(L) при какой-либо другой упоря- доченности алфавита X) по сравнению с другими ФС, эквивалентными ФС <#о, относительно L, опреде- ляется тем, что последняя позволяет получить разбиение X*\Q* па классы Екъ, совпадающее с разбиением Х*\@* па классы QL *). Действительно, пусть два слова w2<£ &Q* и w{QLw2. Тогда и w2 ведут в автомате Aq(L) из начального в некоторое состояние По построению ФС , KLy тогда найдется единственное простое слово г^пр е Этакое, что одновременно wvEklw^ и поскольку в коротком дереве ни одно состояние автомата *) Исключение составляет лишь класс Q*, разбиение которо- го может содержать более одного класса Е L (вплоть до беско- нечного их числа).
§ 5. АЛГОРИТМЫ АНАЛИЗА И СИНТЕЗА АВТОМАТОВ 01 Aq(L) не встречается дважды среди вершин, которы- ми оканчиваются слова из множества Зйь. Поэтому из u\QLw, следует и\Ек11У2, если ш2 Q*. Но поскольку в § 4 гл. II была показана справедливость обратного утверждения, получаем, что Екь совпадает с Ql на X*\Q*. Поскольку в SDlL содержатся все простые слова из X*\Q*, и только они, получаем, что индекс QL не превосходит |SJILI + 1. В заключение параграфа рассмотрим некоторые при- меры, иллюстрирующие наиболее важные алгоритмы и теоремы анализа и синтеза. Пример 2.5.1. Задана ФС <ЛГ0, К> (табл. 2.5.1). Таблица 2.5.1 Ко к 0 ->01 2< —>12 2<- ->22 1 2<- ->02 0< ->20 00 0*- ->10 1< —>21 Построить автомат А такой, что НА) = НК0, К). Вы- писываем множество Зй, состоящее из всех простых начал слов из KQ и простых собственных начал правых частей соотношений К: Зй = {А, 0. 1, 2, 00).
62 ГЛ. II. ОПИСАНИЕ РЕГУЛЯРНЫХ МНОЖЕСТВ Разбиваем ЭЛ на два класса: {Л, 2} s 00}^$ по принципу Qq<£L. Предполагаем, что сло- ва, допустимые в А, состоят из двух классов отно- шения QL. Убеждаемся, что слова 0; 1; 00 не могут вхо- дить в один класс QL, так как 00 е $, 10Ек0,0^ 000 Поэтому слова, допустимые в А, состоят не Рис. 2.5.4. менее чем из трех классов QL. Предполагаемые классы: {Л,2}<=$, {0,1} = <??,{00}<= Поскольку 00€=$, а 10£*к0, 0 е Qi, то слова 0 и 1 не могут быть в одном классе Ql. Таблица 2.5.2 ко к II К' 0 2—22 2—202 021 10^1020 21—2101 1 0—010 2—212 100 1—1021 2—2102 00 0—020 0—0120 120 102—1022 01 02—022 01— 0121 200 1—1201 10 1— -101 012—0122 201 12—^1202 20 1*—121 0—0210 210 20—2010 21 12*-->122 02—0212 1200 2—2012 | 2100 Разбиение {Л, 2}^(>о, {0} (?i, {1} (?’, {00} удовлетворяет условию Qlx^Qj для всякого х е X, где Q\, Q] — классы Ql. В результате получим граф пере-
§ 5. АЛГОРИТМЫ АНАЛИЗА И СИНТЕЗА АВТОМАТОВ 63 ходов искомого автомата А (рис. 2.5.2). Финальные со- стояния А — $3- Пример 2.5.2. Задан источник А (рис. 2.5.3). Построить укороченное дерево и ФС такую, что Ь(К0, К'\ = L (Л). Укороченное дерево источника А представлено на рис. 2.5.4. В соответствии с алгоритмом Я22 получим ФС <АГО,Я'>1, представленную табл. 2.5.2. Пример 2.5.3. Для источника А (см. рис. 2.5.3) по- строить короткое дерево и ФС <Z<0, К> такую, что 1АК0, K)=L(A). Рис. 2.5.6. Короткое дерево источника А представлено па рис. 2.5.5. В соответствии с алгоритмом §С2.4 получим ФС Ю из примера 2.5.1. Таблица 2.5.3 *0 KL 0 Л«*2 0<- *10 1 1 01 л « *12 00 Л <*02 Пример 2.5.4. Для источника А (см. рис. 2.5.3) по- строить ФС <^о,/<ь>. Как следует из примеров 2.5.1 и 2.5.3, автоматом Aq(L) для IAA) является автомат, изо- браженный на рис. 2.5.2. Построив для этого автомата короткое дерево (рис, 2.5.6), получим ФС <А’о, К1'} (табл, 2.5,3),
ГЛАВА HI НЕКОТОРЫЕ ДОПОЛНЕНИЯ К ТЕОРИИ ЯЭП § 1. Теоремы о размерах ЯЭП Поскольку существует возможность получить описа- ние одного и того же множества различными ФС <Ло, К>, естественно возникает задача получения наиболее про- стого описания заданного регулярного множества L. Введем обозначения г(кй)= 2 gH, (3.1.1) g(ci2), ' (3.1.2) i—1 где п — число соотношений ft-набора К. Назовем размером ФС </<0, К> число г(Х0, Ю=г(Я0) + г(Ю. (3.1.3) Теорема 3.1.1. Для любой нормализованной ФС <К0, К>ь эквивалентной относительно L ФС <#о, KLyu имеет место г (Ко, К) г (Kq , KL). Доказательство. Построим по ФС <К0, К\ мно- жество 51, состоящее из всех начал слов из KQ и всех начал правых частей соотношений ft-набора К. По мно- жеству й составим дерево ФС <Х0, конечной длины, начальная вершина которого является исходной для всех ветвей, а ребра дерева помечены буквами алфавита X. Между ветвями дерева ФС <К0, К\ и словами множества St существует взаимно однозначное соответствие, так что по каждому слову w 51 можно, двигаясь из начальной вершины дерева, вычитать по пометкам на ребрах слово w, и, обратно, каждое слово п?, состоящее из пометок на ребрах, выписываемых по мере удаления от начальной вершины, содержится в St. Справедливо следующее утверждение: укороченное дерево, построенное по автомату ^q(L), целиком по- гружено в дерево ФС </<0, Действительно, если пред- положить, что некоторая ветвь w укороченного дерева имеет большую длину, чем некоторая ветвь дерева ФС <Х0, /<>!, то это будет означать, что некоторое собствен-
§ 1. ТЕОРЕМЫ О РАЗМЕРАХ ЯЭП 65 ное начало слова w находится в отношении Ек со своим собственным началом и/ и, следовательно, wQLw'. Но по свойствам автомата и по построению укорочен- ного дерева ни у одной ветви этого дерева не существу- ет собственных начал, находящихся в отношении QL. Отсюда немедленно следует, что Kq^Kq и г(Хо)^ ^.г(Кц). Кроме того, очевидно, что число сотпошений в А-наборе KL не превосходит числа соотношений в А-на- боре К и для каждого соотношения A-набора KL найдет- ся соотношение в A-наборе К, правая часть которого пе короче правой части рассматриваемого соотношения. От- сюда r(KL) ^г(К). Теорема доказана. Решая задачу описания заданного множества L s X* ФС минимального размера, нужно выяснить, существует ли возможность найти такую ФС в классе нормализован- ных ФС. Ответ на этот вопрос дает следующая теорема. Теорема 3.1.2. Для любого (может быть, неправильно- го) A-набора К существует эквивалентный ему относи- тельно Ек правильный нормализованный А-пабор та- кой, ЧТО г(Х1) < г(К) *). Доказательству этой теоремы предпошлем лемму. Лемма 3.1.1. Для всякого неправильного A-набора К', каждое соотношение которого имеет правую и левую ча- сти равной длины, существует эквивалентный ему отно- сительно Ек' правильный нормализованный А-пабор К", в котором каждое соотношение также имеет левую и пра- вую части равной длины и г{К') >г(Х"). Доказательство. Пусть Lo — множество начал всех слов, образующих соотношения A-набора К', a L' — множество всех слов, выводимых в ФС <Ь0, Х'>. L' — конечное множество, поскольку ни одно из соотношений A-набора К' не удлиняет слова из Lo. Обозначим через р длину самого длинного слова из Lo (и соответственно из L'). По А-пабору К' построим граф детерминированного автомата Л' без выхода с помощью следующей про- цедуры: 1°. Вершину, которая принимается за начальное со- стояние, нумеруем 0 и присваиваем ей ранг 0; полага- ем £ = 1. *) Здесь предполагается, что если 7с-пабор неправильный, то условие (*) (стр. 43) тем не менее выполнено. 5 Конечные автоматы
66 ГЛ. Ш. НЕКОТОРЫЕ ДОПОЛНЕНИЯ К ТЕОРИИ ЯЭП 2°. Из каждой вершины ранга i — 1 (i = l, 2, ..., р) выведем дуги, помеченные буквами, так чтобы образо- вались все существующие в Lo продолжения слов из Lq, ведущих из начального состояния в рассматриваемую вершину ранга г — 1. 3°. Образуем вершины ранга f, в которые введем дуги, выходящие из вершин ранга i — 1, так что в каждую вер- шину ранга i войдет ровно одна дуга. 4°. Любые две вершины ранга i объединим в одну вершину, если в них ведут слова, являющиеся частями какого-либо одного соотношения в A-наборе К'; к остав- шимся вершинам снова применим п. 4; если вершин, ко- торые можно объединить в соответствии с п. 4, больше нет, то перейдем к п. 5. 5.°. Пронумеруем вершины ранга i различными но- мерами, не использованными для нумерации вершин меньшего ранга. 6°. Если i < р, то перейдем снова к п. 2, приняв за i его предыдущее значение, увеличенное на 1; если же ъ = р, то процедура построения автомата А' па этом за- канчивается. По построенному автомату А' с использованием алго- ритмов З123 и §С2.4 построим fc-пабор X", который будет правильным и нормализованным. Из построения автома- та А' следует, что любое соотношение /^-набора К" так- же имеет левую и правую части равной длины. Пока- жем теперь, что Ек> = Ек» и г(Х') > г (К"). Заметим предварительно, что если в автомате А' все состояния считать финальными, то он этими состояниями представляет множество L'. Действительно, если v Z/, то возможны два случая: a)i?Gi0, но по построению автомата A' L0^L(Af) и, следовательно, v^L(A')* но тогда сущест- вует w е Lo такое, что vEK'W и w = и?п, и?12, ..., wlm == = V — вывод v из w\ при этом и?ие IAA'). Пусть уже доказано, что wih е L{A'\ к<т\ покажем, что u?i(fe+1) <= еШ'). Слово гР1(/1+1) получается из wih путем некото- рого эквивалентного преобразования с использованием соотношения а (J, так что u>lft = au/, wl(h+l} = [Ju/. Слова аир ведут в одно состояние q по построению ав- томата А'. Следовательно, слово tu1(ft+1) е IAA'). Таким образом, v е= Л(Л'). Из пунктов а) и б) следует, что L' LC4').
§ 1. ТЕОРЕМЫ О РАЗМЕРАХ ЯЭП 67 Если реА(Л'), то либо v е Lq и, следовательно, v е L', либо v ф Lq. Пусть рн — собственное начало сло- ва v максимально возможной длины, такое, что рн '<= Lo Обозначим состояние, в которое ведет рн, st. По построе- нию автомата А' существует слово длины g(pH), так- же. ведущее в и такое, что wLXi е Lo, где Xi —- буква алфавита X, по которой продолжается рн в слове v. По построению автомата, у^Ека^ и, следовательно, vE^'W^v*, где рк —конец слова v длины g(p) — g(pH). Рассмотрим теперь слово v2 == wYvK Л(Л'). Оно имеет начала длины, большей, чем g(pH), содержащиеся в Lq. Если само слово vr е Lo, то L', поскольку vEK,vu В противном случае рассмотрим vf— начало макси- мально возможной длины, такое, что vf ge LQ. Продолжая рассуждения аналогично тому, как это было сделано для рн, получаем, что существует iv2 длины g(t>i), такое, что ViEicw^vf, где vf— копец слова v длины g (у) — — g 1) < g (уК)> W2XJе а хз— продолжение vf в 1\. На Z-м шаге этих рассуждений придем к тому, что су- ществует Wi длины g(p)I_1), такое, что Vi^Ej^wyf^, где Wivf-t ~ vt содержится в Lq. Таким образом, можно по- строить вывод v из Vi при помощи соотношений К', и, следовательно, v^L', L(A')^L'. Суммируя ска- занное, получим, что L' = L(A'). Кроме того, очевидно, L" = L (L’o, К") - L (А'), откуда L' = L". Для доказательства равенства E&f = Ек» достаточно показать, что это равенство имеет место па множестве 2/, поскольку разбиение X* па классы EKf и Ек>> целиком определяется разбиением L'. Два слова v2^L' нахо- дятся в отношении ЕКг тогда и только тогда, когда су- ществуют uh, w2 е L' такие, что v{ = Wiv\ v2 == iv2vf и wtEKfw%. Аналогично, щ, v2 Ф Lf находятся в отношении EKtf тогда и только тогда, когда существуют w2 е L' такие, что Vi = w^v', v2= w2v' и w^Ek^w^ поскольку каж- дое соотношение ^-набора К" составлено из слов, вхо- дящих в L'. Пусть теперь Pi, v2 & Lr. Поскольку слово, получающееся в результате эквивалентного преобразова- ния в ФС <£0, К"> ведет в то же состояние в автомате А', что и исходное слово, Vi и v2 ведут в одно состояние. 5*
68 ГЛ. Ш. НЕКОТОРЫЕ ДОПОЛНЕНИЯ К ТЕОРИИ ЯЭП Но, как это следует из построения автомата Л', слова, ведущие в нем в одно состояние, эквивалентны в -Е’кь Таким образом, EK»^EKf, Обратно, пусть ухЕк^^ рх, L'. Из построения автомата Af следует, что п у2 ведут в одно состояние. Как следует из алгоритмов 5С2.з и St2.4 построения ФС ти- па ЯЭП по источнику (в данном случае по детерминиро- ванному инициальному автомату), слова, ведущие в ис- точнике в одно макросостояние (в детерминированном инициальном автомате соответственно в одно состояние), эквивалентны в получаемой ФС относительно Ек». Итак, получаем Ек^Ек*. Требуемое равенство E&f — EKn. доказано. Будем рассматривать теперь вершипы автомата Л', в которые входит более одного ребра, поскольку каждо- му соотношению й-набора К" соответствует вершина с некоторыми двумя входящими в нее ребрами. Назовем эти вершипы узлами. Каждому узлу с к входящими в него ребрами можно поставить в соответствие не менее к — 1 соотношения в /с-паборе К'. Этому же узлу в /с-на- боре К" соответствует ровно k—i соотношение. Длина правых и левых частей соотношений обоих /с-наборов рав- на i — рангу рассматриваемого узла. Из этого следует, что г(К') > г(К"). Лемма доказана. Доказательство теоремы 3.1.2. В неправиль- ном fc-паборе К выделим подмножество соотношений К' с правыми и левыми частями равной длины. Построим эквивалентное относительно Ек' множество соотноше- ний К" в соответствии с леммой 3.1.1. Если теперь fc-на- бор К, в котором соотношения К' заменены соотноше- ниями К", правильный, то доказательство закапчи- вается, поскольку оба A-набора эквивалентны относи- тельно Ек. В противном случае рассмотрим пару соотношений Ун vi2, (3.1.4) Гл ++ v& (3.1.5) такую, что vj2 s vi2v'. Такая пара найдется всегда в силу неправильности К, Очевидно, что УцЕкУцу'. Возможны следующие ситуации: 1. g(y.i) <g(vi2), g(vjt) ^g(vj2). Если g(.Vn) gtvnv'), то вместо пары соотношений (3.1.4), (3.1.5) включим в
8 1. ТЕОРЕМЫ О РАЗМЕРАХ ЯЭП 69 Л-набор К эквивалентную ей пару, состоящую из соотно- шения (3.1.4) и соотношения и,! vuv\ (3.1.5') при условии, что Vji Vnv\ иначе в fc-наборе вместо па- ры соотношений (3.1.4), (3.1.5) оставляем только соотно- шение (3.1.4). Если g(vji) > g(p<ip'), то в Л-набор К включим пару (3.1.4), (3.1.5"), где последнее соотношение имеет вид vnvr Pji. (3.1.5") В обоих случаях величина = i g(va) + g(vi2) i=i вновь получаемой системы соотношений становится мень- ше*). В случае равенства g(pH) и g(vnv') нужно лишь будет снова применить лемму 3.1.1 с целью получения правильного нормализованного подмножества соотноше- ний с равновеликими правыми и левыми частями. 2. g(Pfi) = g(pi2), g(Vji) < g(vj2). Рассмотрим теперь со- отношения (3.1.4) и (3.1.5'), эквивалентные паре (3.1.4), (3.1.5). При такой замене величина R(K) остается неиз- менной, однако пара (3.1.4), (3.1.5') — правильная пара. Если соотношение (3.1.5') в совокупности с соотношени- ем, отличным от (3.1.4), дает неправильную пару, то в ситуации, описанной в п. 1, снова можно уменьшить ве- личину ЯСК), а возникновение ситуации, описанной в п. 2, возможно лишь при условии, что в соотношении образующем с (3.1.5') неправильную пару, g(vkl) = g(vh2) > g(vn) = g(p<2). Действительно, соотноше- ния ptl vi2 и vki vh2 в соответствии с доказательст- вом леммы 3.1.1 получены с помощью алгоритмов й2.з и 8(2.4, которые не допускают построения пары соотноше- ний, у которых правая часть одного соотношения явля- ется началом левой части другого. Таким образом, ситуа- ция, описанная в п. 2, может появиться лишь конечное число раз, после чего либо Л-набор К станет правильным, *) Легко видеть, что при всех действиях с ^-набором К в ется Доказательстве РазмеР г (if) по крайней мере не увеличива-
70 ГЛ. TH НЕКОТОРЫЕ ДОПОЛНЕНИЯ К ТЕОРИИ ЯЭП либо снова окажется возможным уменьшить величину R(K). Поскольку уменьшение R(K) изложенным спосо- бом не может продолжаться неограниченно долго, в кон- це концов придем к правильному нормализованному Z-набору эквивалентному К относительно Ек, для ко- торого r(Kj ^г(К). Теорема доказана. Выше было показано (см. теорему 3.1.1), что ФС <^o,^L>i обладает наименьшим размером среди всех ЯЭП1, описывающих произвольное регулярное множест- во Л. Аналогичное утверждение имеет место для произ- вольных ЯЭП. Теорема 3.1.3. Если ФС <Л’О, К> и <Ло, KL) эквива- лентны относительно L, то г (Kq, Kl) г К). Доказательство. 1. На основании теоремы 3.1.2 можно считать, что ФС <KQ, К> является нормализован- ной, так как переход к К{], состоящему из простых слов, может лишь уменьшить размер r(KQ, К). 2. Если собственное начало v правой части какого- либо соотношения Л-набора К эквивалентно в QL слову v' меньшей длины, то, удалив из К все соотношения, правые части которых содержат началом у, и добавив по- вое соотношение vf <-> р, получим правильный fc-пабор К' такой, что £(Я0, ZC) = L, а г(Я0, К')^г(/<о, Ю. Действительно, если некоторое слово может быть под- вергнуто правому эквивалентному преобразованию в то оно допускает также правое эквивалентное преобразо- вание в Кроме того, как из wEKw\ так и пз wEkiw1 следует wQLw't Если теперь w е L, то либо iv ^KQ и, следовательно, iv 1АК0, К'), либо существует и/ е= Хо такое, что wEKw‘, причем iv' получается из w путем правого вывода. Применяя к w правое эквивалент- ное преобразование с помощью соотношения, содержа- щегося в К', не выходши за рамки L. Продолжая далее применять к полученным словам правые эквивалентные преобразования с помощью соотношений fc-набора К' и при этом оставаясь в рамках L, придем в конце концов к некоторому слову w" KQ. Таким образом, iv^ ^L(K0, К') иЬ^ЦК», К'). Обратно, пусть К'). Тогда либо w е Ко и, следовательно, w L, либо существует wf е такое, что юЕк»и>'. По тогда в силу того, что wQLw\ w содержится в L. Следовательно, ТАК^ Kf) s L. Суммируя сказанное, получим, что L = L(K^ К').
§ 1. ТЕОРЕМЫ О РАЗМЕРАХ ЯЭП 71 Если каждый раз полагать, что Ко состоит лишь из простых в Ек слов, то, опираясь на пи. 1 и 2, можно считать, что ФС <7<0, КУ является нормализованной и в A-наборе К не существует соотношения, правая часть которого содержит собственное начало, эквивалентное в Ql более короткому слову. 3. Пусть в множестве 5ЭТ есть несколько слов одинако- вой длины, эквивалентных относительно QL: vi2, ... ..., vir. Введем в К соотношения •*-> pi2, ... ..., Va ++ vir и удалим из К все соотношения, правые ча- сти которых содержат собственными началами слова yfl, vi2, ..tfi(j-i), vir. Кроме того, удалим из Ко все слова, для которых vib vi2, ..., ию+1}, ..., vir являются началами. В результате получим ФС {Ко, К'У такую, что L(k'0,K') = L и г(К'о, К')^г(К0, К). Для доказательства равенства L{K0,K') — L могут быть проведены рассуждения, аналогичные приведенным в и. 2. При оценке размера получаемой ФС К') следует учитывать, что возможное увеличение г(К') по сравнению с г(К) компенсируется не мепьшим уменьше- нием г^К'о) в сравнении с г(Ко). Заметим, что выбор числа / из чисел 1, 2, ..., гв последнем построении зна- чения пс имеет. В результате получим ФС, у которой в Ко содержится лишь по одному слову из каждого класса эквивалентности Ql] поэтому в получеппой системе по- казатель г(Ко) минимален для всех систем, эквивалент- ных заданной относительно L. То же, с точностью до по- рядка выбора чисел / в утверждении п. 3, можно сказать и о г(К). Легко заметить, что ФС, построенная по алго- ритму 9С2.4, примененному к короткому дереву автомата Aq(L), будет иметь именно указанные особенности. Тео- рема доказана. Вернемся к примерам, рассмотренным в § 5 гл. II. Так, для ФС {Kq, KLy (табл. 2.5.3), построенной в при- мере 2.5.4 по источнику, изображенному на рис. 2.5.3, r(^,/fL) = 13. Для сравнения в примере 2.5.2 ФС <K0,K'>L (табл. 2.5.2), построенная по этому же источ- нику, имела размер г (KQ, К') — 120, а в примере 2.5.3 ФС <Ко, КУ, построенная по этому источнику в соответ- ствии с алгоритмами 8t2 з и Я2 4, имела размер г(Ко, К) = 18. Эти примеры являются хорошей иллюстрацией ми- нимизации размера ФС при использовании ЯЭП общего
72 ГЛ. III. НЕКОТОРЫЕ ДОПОЛНЕНИЯ К ТЕОРИИ ЯЭП вида и в особенности ЯЭП, строящихся по автомату 4(b). Из теоремы 3.1.2 следует, что если ФС <Х01, К{У та- кова, что /с-набор Ki — неправильный, то существует правильный Л-набор К2 такой, что L(X01, К2) = L(X01, KJ. Справедливо также, что для всякой ФС <XOi, Xj>2 с не- правильным ^-набором Ki существует эквивалентная ей относительно L ФС <XOi, Х2>2, где К2 — правильный на- бор (см. ниже лемму 3.2.1). Рассмотрим вопрос о возможности построения ФС <Х0, K>i, эквивалентной ФС К{Уи где Xt —непра- вильный, а X — правильный fc-наборы. Из первого, при- веденного выше утверждения следует, что такое построе- ние всегда возможно. Действительно, пусть имеется ФС <Х01, X4>i. Очевидно, что можно построить ФС <Х01, Х2> общего вида, эквивалентную ФС <XOi, K^i и такую, что Х2 — правильный fc-набор. Построим по ФС <XOi, Х2> ав- томат Aq (L), представляющий £(Х01, Х2), а по нему можно легко построить ФС <Х0, Х\, где X — правиль- ный Л-набор. Однако вытекающий отсюда алгоритм по- строения ФС <Х0, Х>! по ФС <Х01, Xi>i является чрез- мерно громоздким. Рассмотрим случаи, когда эта про- цедура может быть упрощена. Пусть имеется ФС <Х0Ь К{УЬ где Х4 — неправильный fc-пабор. Пусть следующие два соотношения ^-набора Х4: Vai РнгГ’ог, (3.1.6) Vaj VnjVoj (3.1.7) таковы, что vHjvoj является началом слова Рассмот- рим все возможные ситуации, где g(l) означает длину слова I. 1. В этом случае Заме- нив соотношение (3.1.6) в Ki соотношением vnjv' VvjV'vM, (3.1.8) получим fc-пабор Х2, который либо является правильным (тогда Х01 = Х0, а Х2 = Х), либо имеет меньший размер. При этом ZXXoi, Xi)i = L(X01, Х2)4. Действительно, приме- нение соотношения (3.1.6) к некоторому слову дает тот же результат, что и последовательное применение соот- ношений (3.1.7), (3.1.8), (3.1.7), а применение соотноше- ния (3.1.8) дает тот же результат, что и последователь- ное применение соотношений (3.1.7), (3.1.6), (3.1.7).
§ 2. ЯЗЫК ЭКВИВАЛЕНТНЫХ ПРЕОБРАЗОВАНИЙ ЯЭП 2 73 2. g(vaj) > g(vai), g(vajVoj) ^g(vHivoi). В этом случае vBj = vBiv', voi= v'vQjv". Заменив соотношение (3.1.6) в А'1 соотношением vBi vniv'v", (3.1.9) получим /с-набор /<2, который либо является правильным (тогда Я\)1 = ^о, Х2 = Х), либо имеет меньший размер. При этом L(Koi, Ki)^ == L(2f01, К2)ь Действительно, при- менение соотношения (3.1.6) к некоторому слову дает тот же результат, что и последовательное применение соотношений (3.1.9), (3.1.7), а применение соотношения (3.1.9) дает тот же результат, что и последовательное применение соотношений (3.1.6), (3.1.7). 3. g(vHj) < g(pHi), g(vHi) <g(va}voj) <g(vH^o<). В этом случае преобразования, аналогичные преобразованиям пц. 1 и 2, не приводят к уменьшению размера ФС <KOi, Xi>i, поэтому процедура построения правильного Лг-набора К не упрощается. § 2. Язык эквивалентных преобразований ЯЭП 2 Из изложенного выше следует, что всякое L(KQ, К)2 регулярно. Одпако, как будет показано, в отличие от ЯЭП и ЯЭП 1, применение ЯЭП 2 не позволяет описать произвольное регулярное множество. Цель исследования ЯЭП 2 состоит в выяснении вопроса о том, чем отлича- ются множества, описываемые с помощью ЯЭП с различ- ными типами подстановок в ^-наборах. В этом параграфе будут рассматриваться лишь такие ФС <Х0, Х>2, в которых й-наборы К являются правиль- ными. Использование таких ^-наборов не ограничивает возможностей ЯЭП 2 в силу следующей леммы. Лемма 3.2.1. Для всякой ФС <КОь А\>2, где Кх — не- правильный fc-набор, существует ФС <К02, Х2>2, эквива- лентная <Х01, #i>2 относительно LCKoi, #1)2 и такая, что А 2 правильный Л-набор. Доказательство. Рассмотрим два соотношения из Кс. vKi (3.2.1) Vuj (3.2,2) такие, что vajvK} является началом слова гнг^к<, т. е. суще- ствует слово v' (возможно v' = Л) такое, что vBivKi =
74 ГЛ. III. НЕКОТОРЫЕ ДОПОЛНЕНИЯ К ТЕОРИИ ЯЭП = . Вследствие правой инвариантности £'я1 имеет место Ек^крцр' или v^vfEK1vuiv^ Отсюда в си- лу соотношения (3.2.1) получим Vi<jV'EK1vKi. Заметим, что одно из слов vKi пли v^v' является концом другого, поскольку оба эти слова — концы одного п того же слова Если ик< = РкД/, то очевидно, что соотношение (3.2.1) является следствием соотношения (3.2.2), а потому оно может быть опущено и IAK*h Х,)2 при этом не из- менится. Пусть для определенности рк< является собственным концом uKjp'. Заменим тогда в fc-паборе Kt соотпошепие (3.2.1) соотношением vKi ++ v^v'. (3.2.3) В результате получим Л-пабор К^. Применение соотно- шения (3.2.1) в эквивалентном преобразовании слова даст тот же результат, что и последовательное примене- ние соотношений (3.2.2) и (3.2.3). Наоборот, применение соотношения (3.2.3) даст тот же результат, что и после- довательное применение соотношений (3.2.1), (3.2.2). От- сюда следует, что L (/f01, = L(X01, Х*)2. Заметим, что размер ФС <ЛГ01,/<1>2 меньше размера ФС <Xoi, Kt>2, поскольку К* либо есть Kt без соотноше- ния (3.2.1), либо получается из К{ после замены соотно- шения (3.2.1) на соотношение (3.2.3), имеющее мепыппп размер. Это означает, что, не изменяя IAKoi, К{)2, можно за конечное число шагов прийти к ФС <7<о2, К2У2, в кото- рой К2 — правильный Л-набор, К02 = KQl и L(KQ2, К2)2 = = 1АКои Kt)2. Лемма доказана. Для решения вопроса о том, какие регулярные мно- жества могут быть описаны на ЯЭП 2, введем некоторую новую характеристику регулярного множества Л, кото- рую определим на явном отношении эквивалентности QL, порождаемом множеством L на X*. Определение 3.2.1. Некоторое произвольное множест- во L X* обладает ц-свойством, если существует такое число Ць, что всякое слово этого множества, длина кото- рого больше Ць, имеет собственный конец, принадлежа- щий этому же множеству, и в L существует слово длины Pl, ни один собственный конец которого не содержится в этом множестве.
§ 2. ЯЗЫК ЭКВИВАЛЕНТНЫХ ПРЕОБРАЗОВАНИЙ ЯЭП 2 75 Будем также говорить, что регулярное множество L обладает р-свойством относительно QLl если каждый класс, кроме, быть может, обладает р-свойством. Замечание. Любое конечное множество обладает ц-свойством. Лемма 3.2.2. Если множество L обладает ц-свойством относительно Ql, то Pl = maxuQ.< п2п, где п — число со- стояний автомата Aq(L}. Доказательство. Все построения иллюстрируют- ся примером, приведенным на рис. 3.2.1. Ссылки на при- мер даны в скобках. Пусть задано множество 'L X* и соответствующий ему автомат Aq(L} имеет п (четыре) состояний. Возь- мем любое допустимое в нем слово I = рг ... pi ... pn2n (Z = 10011 ...) и будем рассматривать, в какие состояния переходит автомат Aq(L) из начального состояния q0 при подаче па его вход конца 1{ слова Z, начинающегося с pi, 1 i п2п. Для удобства рассмотрения будем запол- нять таблицу (табл. 3.2.1), в которой в клетку (Z, у), сто- ящую на пересечении строки i и столбца у, где п2п, юрое автомат слова li, окан- о L \z о вписываем символ состояния qr, в ко ?1q(Z/) переходит под действием начала чивающегося символом р,. Исключим из рассмотрения случаи, когда 1) со- держимое клетки (1, у) равно qQ и 2) содержимое клетки (Z, у) равно содер- жимому клетки (1, у), так как в этих случаях получение оценки тривиально. < Если слово Ц (ООН...) недопустимо в автомате, то заполняем лишь клетки, соответствующие самому длинному до- пустимому началу (001) слова Z,-. Если Рис. 3.2.1. следовало бы занести в клетку (Z, у) (клетку (3,3)) символ Qr, который уже содержится в клетке (&, /) столбца у, то эту клетку не заполняем и переходим к заполнению сле- дующей строки; это вызвано тем, что /с-я и Z-я строки продолжались бы далее одинаково, а для получения оценки достаточно найти хотя бы один из концов слова I, удовлетворяющий условию леммы. Поскольку есть всего п различных состояний и по способу заполнения в каждом столбце может быть не бо-
76 ГЛ. III. НЕКОТОРЫЕ ДОПОЛНЕНИЯ К ТЕОРИИ ЯЭП лее п заполненных клеток, то, очевидно, при достаточно большом количестве столбцов найдутся два одинаково заполненных столбца с номерами v и w (4 и 5). Рассмот- рим слово /' = р, ... p„{pv+1 ... рю}‘ (Г = 1001{1}‘). Не- Таблица 3.2.1 i j 1 2 3 1 4 5 1 71 7з 72 72 72 2 7о 7о 71 3 4 5 71 состояние, что и все слово Но трудпо убедиться в том, что при попытке за- полнить таблицу для слова J' в таблице не найдется таких z, /, что- бы клетка (г, /) была заполнена так же, как и клетка (1, /), следо- вательно, как бы ни бы- ло велико t, не найдет- ся такого собственного конца слова Г, который ведет автомат в то же в автомате Aq (L), пред- ставляющем множество L, обладающее ц-свойством отно- сительно Ql, этого не может быть по определению, т. е., заполняя таблицу для такого автомата Aq(L), придем к одному из двух исключенных выше случаев, до того как появятся два одинаковых столбца. Остается определить, при какой длине g(Z) слова I в построениях появятся два одинаковых столбца, так как Pr<g(Z). Если не рассматривать первую строку таблицы, то не обязательно требовать, чтобы символы в столбцах v и w были расположены в одинаковом порядке, доста- точно, чтобы в этих столбцах были одинаковые множе- ства символов. Всего из п символов можно составить п 2 Сп = 2я различных столбцов, но поскольку в каждом i=l столбце не может быть по условию меньше двух симво- лов и, кроме того, в клетках (1, г) и (1, w) должны быть п одинаковые символы, то, очевидно, Hl 2 Сп, или i=2 < и2п. Лемма доказана. Как следует из леммы 3.2.2, ц-свойство множества L относительно Ql всегда может быть эффективно провере- но на автомате Aq(L), для этого достаточно убедиться, что каждое слово длины §(1)^п2п переводитAq(L) из начального состояния в то же состояние, что и некото- рый конец слова I.
§ 2. ЯЗЫК ЭКВИВАЛЕНТНЫХ ПРЕОБРАЗОВАНИЙ ЯЭП 2 77 Теорема 3.2.1. Для того чтобы множество опи- сывалось па ЯЭП 2, необходимо и достаточно, чтобы L обладало ц-свойством относительно QL. Доказательство. Необходимость. Постро- им по данному 1АКц, К)2 автомат AQ(L). Пусть М* — длина самого длинного из всех слов Ко и правых частей соотношений /с-набора К. Очевидно, что длины всех про- стых слов, допустимых bAq(L), не больше М*. Пусть слово w не является простым и переводит автомат Aq (L) в состояние Пусть v — простое слово такое, что vEKw. а значит, vQLw. Отсюда следует, что v перево- дит автомат Aq(L) в то же состояние qh что и w. По- скольку все соотношения й-набора К имеют вид рк( vUiVKi, то и есть собственный конец слова w. Таким образом, любое допустимое в Aq(L) слово w длины более М* имеет собственный конец, переводящий авто- мат Aq(L) в то же состояние, что и слово и?, т. е. L обладает ц-свойством относительно Ql* При этом имеет место неравенство М* Достаточность. Пусть L обладает ц-свойством относительно Ql* Построим по Aq(L) укороченное де- рево следующим образом. Каждую ветвь и соответствую- щее ей слово w будем продолжать (если это возможно) до тех пор, пока на ее конце не появится то же состоя- ние qi, которое уже было па конце ветви, соответствую- щей какому-либо собственному концу vi{i слова w. Тогда w = vaivKi. Обозначим это множество ветвей Bt. Осталь- ные ветви дерева образуют множество В2. Выпишем со- 01 ношения vKi Pni^K<- Из определения ц-свойства ясно, что высота дерева не превышает Из выписанных со- отношений образуем &-набор К. По построению он пра- вильный. Ко образуем из всех слов множества ветвей В2 и их собственных начал, ведущих в финальные состоя- ния, а также из всех собственных начал ветвей множест- ва ведущих в финальные состояния автомата Aq(L). Докажем теперь, что L = Ь(К0, К)2. Пусть слово w переводит автомат Aq(L) из началь- ного состояния 7о в финальное </ф. Тогда либо w е К0 (а тогда w е L(/f0, Ю2), либо w можно подвергнуть укора- чивающему эквивалентному преобразованию, после кото- рого снова получится слово, ведущее в г/ф. В результате конечного числа таких шагов получим слово w'^Ko
78 ГЛ. Ш. НЕКОТОРЫЕ ДОПОЛНЕНИЯ К ТЕОРИИ ЯЭП такое, что w'EKw и, следовательно w^lAK^, К)2. Отсюда получаем, что L 1АК0, К)2- Обратно, пусть w е L(K0, Ю2. Если w е Ко, то оно переводит автомат Aq(L} из начального состояния в финальное п, следовательно, w^L. Если же w не явля- ется простым, то оно имеет собственный конец w' е Ко. Следовательно, w переводит автомат Aq(L) из началь- ного состояния в то же финальное состояние, что и слово и/, а значит, w s L и IAKq, К)2 L, Отсюда L = IAKQ, К)2. Теорема доказана. Лемма 3.2.2 и теорема 3.2.1 дают эффективное сред- ство для решения вопроса о том, можно ли заданное ре- гулярное множество описать с помощью ФС </<0, К>2. Для этого достаточно по автомату Aq(L), однозначно соот- ветствующему заданному регулярному множеству L, про- верить, обладает ли это множество ц-свонством относи- тельно Ql, для чего следует проанализировать все допу- стимые в Aq (L) слова, длина которых не превышает п2п (п — число состояний Aq(L}). Теорема 3.2.1 для случаев, когда заданное регулярное множество обладает ^-свойством относительно QL, дает алгоритм (алгоритм 9С3.1) составления о О11псапия этого множества па ЯЭП 2 ---Доказательство достаточности). Нетрудно видеть, что множество, Рис. 3.2.2. представляемое автоматом ^q(L) (рис. 3.2.2), не обладает ц-свойст- вом и не может быть описано на ЯЭП 2. Таким образом, класс регулярных множеств, описываемых па ЯЭП 2, является подклассом всех регу- лярных множеств. Однако класс множеств, описываемых на ЯЭП 2, как показывается ниже, шире класса определенных событий (ОС), относящихся, как показано в § 2 гл. V, к классу множеств с конечной памятью. Определение 3.2.2. Определенным событием (ОС) на- зывается множество, описываемое выражением Х*А, где А — конечное множество слов в алфавите X. Другими словами, всякое 1^Х* принадлежит опре- деленному событию Х*А тогда и только тогда, когда концом слова / является некоторое слово из множества А. Теорема 3.2.2. Для всякого ОС R существует ФС <KQ, К>2 такая, что IAKQ, K)2 = R.
§ 2. ЯЗЫК ЭКВИВАЛЕНТНЫХ ПРЕОБРАЗОВАНИЙ ЯЭП 2 79 Доказательство. Пусть Х*А — ОС, в котором длина слов из А не превосходит q. Будем строить Ко из всех слов длины не более q, принадлежащих Х*А. Аг-на- бор построим так: левой частью будет слово vq, где vq — слово длины q, принадлежащее X*, а правой частью бу- дет слово XiVq, где Xi — буква алфавита X (Z = 1, ..т). Таким образом, для каждого vq будет построено т соот- ношений. Заметим, что получающийся A-набор пра- вильный. Пусть слово w^X*A-, тогда, если %(w)^q, то оно принадлежит 7<0, а если g(w)>g, то его можно подвер- гать эквивалентному преобразованию до тех пор, пока длина получающегося в результате этих преобразований слова не станет равна q. Поскольку при этом конец сло- ва w длины q не менялся, то получившееся слово при- надлежит Следовательпо, любое w Х*А эквивалент- но в Ек некоторому слову из Ко и Х*А <=IAK^ Х)2. Пусть теперь некоторое w & L(K0, К)2, т. е. существу- ют v е KQ и wEKv. Поскольку v е Х*А по построению, a w = v'v (это следует из способа построения А-пабора /С), то w^X*A и, следовательно, 1АК0, К)2~Х*Л. Тео- рема доказана. Таким образом, класс определенных событий содер- жится в классе событий, описываемых на ЯЭП 2. Чтобы показать, что эти классы пе совпадают, рассмотрим автомат, представляющий о о множество Л, нс являющееся опре- деленным событием (рис. 3.2.3). Дей- ствптельпо, если предположить, что рис 3 2.3. L — ОС, то поскольку 1 следова- тельпо, и X*1^L, по уже слово 11 е Х*1 не содержится в L. Поэтому L — пе ОС. Вместе с тем L = L(K0, К)2, где Ко = {!}, Х = {Д^0, 0-> 10). Ответ на вопрос, как по множеству, заданному на ЯЭП 2, узнать, принадлежит ли оно классу ОС, дает теорема 3.2.3. Однако предварительно приведем лемму, которая пе только необходима для доказательства этой теоремы, по и представляет некоторый самостоятельный интерес. Лемма 3.2.3. Если L = IAKQ, К)2 X* является ОС, то L = Х*Х0. Доказательство. Пусть L = Х*4. Будем пола- гать, что никакой собственный конец слова из А не явля- йся словом из А. Если это не так, то, пользуясь опреде-
80 ГЛ. III. НЕКОТОРЫЕ ДОПОЛНЕНИЯ К ТЕОРИИ ЯЭП лением ОС, все такие слова можно удалить из А, пе ме- няя при этом L. Такое А далее будем называть простым. Покажем, что А^К^ Пусть zz?^A, но w&K0. Так как w L, то существуют zz/ ¥= А и некоторое zz?i Ко такие, что zp = w'wt. Очевидно, что L, следователь- но, либо zz^^A, либо существуют такие слова w", zz?2e е=Х*, что Wi = w"w2 и z/;2^A. Но в этом случае А пе является простым. Поэтому w е Ко и, следовательно, А^4 Пусть w L\ тогда существуют w' и wa^A такие, что w = w'ivA. Так как wA Ко, то w & X*KQ. От- сюда L s X*KQ. Обратно, пусть w^X*KQt Тогда существуют w" и zz7K^K0 такие, что w — w"wK*). Так как wK^L, той w" wK е L и, следовательно, Х*К0 s Е. Таким образом, L=X*X0. Лемма доказана. Теорема 3.2.3. Множество L=L{K^ К)2^Х* являет- ся ОС тогда и только тогда, когда одновременно выпол- нены следующие условия: 1) всякое w^X* длины p,L + l не является простым в Ек] 2) если w^X*, длина которого меньше 2рь, оканчи- вается словом из KQi то w L. Доказательство. Необходимость. Пусть L описывается па ЯЭП 2 и является ОС. Тогда по лемме 3.2.3 L = X*K0. Выполнение условий 1), 2) в этом случае является очевидным. Достаточность. Пусть для множества L « •=1АКо, К)2 выполнены условия 1), 2). Покажем, что £ = Х*Х0. Пусть w е Х*7<о. Здесь возможны два случая: a) g(zz?) < 2p,L. Тогда w е L в силу условия 2). б) g(zp)>2p,L. Тогда в силу условия 1) существуют w' еХ* и и\^Ко такие, что g(w'wj < 2ць и wEKwfw^ Но в силу условия 2) w'w{ е L, откуда w <= L. Следова- тельно, Х*К0 L, С другой стороны, всякое L(K0, К)2 s ^Х*К0. Таким образом, L — X^Ko. Теорема доказана. § 3. Операции над множествами, описанными на ЯЭП В этом параграфе рассматриваются процедуры, с по- мощью которых может быть получен ответ на вопрос о включении одного регулярного множества в другое и о *) Здесь wK — конец слова w.
§ 3. ОПЕРАЦИИ НАД МНОЖЕСТВАМИ 81 равенстве двух регулярных множеств, описанных на ЯЭП. Рассматриваются также алгоритмы построения описания на ЯЭП пересечения и объединения двух регулярных множеств и дополнения регулярного множества до уни- версального. Во всех случаях регулярные множества счи- таются заданными па ЯЭП: Li~L(Koi, ZQ, L2 = ••= £(Хо2, К2); при этом предполагается, что /с-пабор Ki (i = 1, 2) не содержит соотношений, не используемых для установления эквивалентности слов из Koi и слов множе- ства Ц (например, в ФС (К о, KL) для регулярного мно- жества L пет липших соотношений). Лемма 3.3.1. Если для ^каждого соотпошенпя (vu ++ vi2) е К{ имеет место ицЕк^*), или и Aoi — L2, то Li — L2. Доказательство. В силу леммы 2.4.3 имеет ме- сто ЕК1^ЁК^ или EKj=>Ql2. Отсюда следует, что каждый классEKl, входящий в Lh содержится в некото- ром классе 2?к„или Ql2> входящем в L2. Лемма доказана. Лемма 3.3.2. Если для каждого соотношения (vu ++ vi2) ^Ki имеет место РцЕк2и&, для каждого со- отношения (Vji -<-> Vj2) К2 имеет место VftEK1V.2 и Х01<= с— Z>2, Kq2 Li) то L{ == L2. Эта лемма является следствием леммы 3.3.1. Лемма 3.3.2 дает достаточные условия эквивалетностп двух формальных систем <К01, К^ и <Х02, К2У относи- тельно L. Приведем пример, показывающий, что условия леммы не являются необходимыми для равенства Li = L2. Пусть К{ и К2 состоят из соотношений: (Ку) (к2) Х-у <-> Х]Х2Х&, х± ЗДжз» ЯД ZlOI - К$2 --- {#1, #1Х2» ^1^4}. Построив и Лф(£2), можно убедиться, что они совпадают с точностью до изоморфизма и, следовательно, Li — L2. Однако выражение х^Е* неверно. *) Отношение Ёк описано в § 4 гл. II. Конечные автоматы
82 ГЛ. ТТТ. НЕКОТОРЫЕ ДОПОЛНЕНИЯ К ТЕОРИИ ЯЭП Следующая теорема дает необходимые и достаточные условия эквивалентности двух формальных систем отно- сительно L. Теорема 3.3.1. ФС <Х0Ь и <Я02, А2> эквивалентны относительно L тогда и только тогда, когда одновременно выполнены следующие условия: 1) если (va ++ vi2) е то и, наоборот, если (ул •<-> vj2) ^К2, то 2) Kqi CZ Z/2, Ko2 Ei* Доказательство. Пусть = L2. Тогда, очевидно, условие 2) выполнено. Поскольку при этом Qlx = Qlv а из ЕК{ следует (/ = 1,2), имеет место и условие 1). Необходимость условий теоремы доказана. Достаточность следует из леммы 3.3.1. Теорема доказана. Как известно, регулярные множества замкнуты отно- сительно основных теоретико-множественных операций: объединения, пересечения и дополнения. При описании регулярных множеств различными средствами алгоритмы получения описания объединения и пересечения двух произвольных регулярных множеств па том же языке могут отличаться различной сложностью. Например, если нам заданы две регулярные формулы, описывающие не- которые регулярные множества, то получение описания регулярной формулой объединения этих множеств три- виально: достаточно связать эти две формулы символом дизъюнкции. В случае же необходимости получить какое- либо регулярное выражение, описывающее пересечение двух регулярных множеств или дополнение регулярного множества, такого простого алгоритма пет. Можно, на- пример, следуя В. М. Глушкову [9], построить полностью определенный автомат, представляющий оба события раз- личными группами состояний и пересечение этих собы- тий общей частью N этих групп, и затем, используя ал- горитм анализа автоматов, построить регулярное выра- жение для события, представленного в этом автомате множеством N его состояний. Алгоритм построения регу- лярного выражения для дополнения некоторого регуляр- ного множества, заданного регулярной формулой, также предусматривает построение полностью определенного автомата, представляющего это множество, и последую- щий вывод регулярной формулы по не финальным состоя- ниям этого автомата, которыми он представляет дополне- ние регулярного множества.
§ 3 ОПЕРАЦИИ НАД МНОЖЕСТВАМИ 83 Вообще говоря, для любого средства описания регу- лярных множеств можно получить описание результата основных теоретико-множественных операций путем по- С1 роения соответствующих автоматов, поскольку основ- ные операции теории множеств просто интерпретируются в автоматах или представляющих эти множества источ- никах [46]. В ряде случаев другого пути и не существу- ет. Ниже показано, как по заданным на ЯЭП двум про- извольным регулярным множествам прямо построить (без промежуточного перевода на язык графов автоматов пли таблиц переходов) описание па ЯЭП нх объединения и пересечения, а также описание дополнения произвольно- го регулярного множества. Начнем с пересечения Li Л Ь2. По ФС </<Oi, и </<02, К2У построим конечные множества SRt и ЗЛ2 (% со- держит все собственные начала всех слов из Koi и всех правых частей соотношений из Кг; см. § 5 гл. II, стр. 53). В Х*\(>* существует не более I3RJ классов отношения Ql± и соответственно в Х*\(?2 существует не более !SOT2I классов отношения Ql2- Аналогичные оценки имеют и количества состояний автоматов Aq(L1) и Aq(L2). Если бы эти автоматы были в пашем распоряжении, то для описания пересечения L = Л /2 достаточно было бы рассмотреть прямое произведение А этих автоматов, рассмотренное в [37.]. Автомат А — это инициальный де- терминированный автомат, состояниями которого являют- ся упорядоченные пары состояний автоматов Aq(Lv) и Aq(L2), начальным состоянием — пара начальных со- стояний и финальными состояниями — достижимые пары финальных состояний этих автоматов. Функция перехо- дов автомата А определена па некоторой паре (</;, р>) со- стояний автоматов ^(/q) и Aq(L2) по букве х^Х, если определены функции переходов 6i(r/t, х) и 62(pj, х) автоматов Ар(Лх) и Aq(L2) соответственно. При этом б((^/, pj), х) = х\ хУ). Число состояний автомата А, очевидно, не превосхо- дит ITIJ |Ш12| = т. Но тогда длина короткого дерева, по- строенного по автомату А в соответствии с алгоритмом $2з, по превосходит т. Таким образом, если~ построить пересечение SDlt П ЗЛ2 = Э? конечных множеств и Ш12, яв- ляющихся началами всех слов из П (Д*\(?г) 6*
84 ГЛ. III. НЕКОТОРЫЕ ДОПОЛНЕНИЯ К ТЕОРИИ ЯЭП длины не более т, то все слова, образующие короткое дерево автомата А, попадут в SW. Разобьем теперь множество ЗЭТ па подмножества Я?/, каждое из которых включает в себя только слова, содер- жащиеся одновременно в одних и тех же классах Q^i и Ql2, Если в некотором ЭЬ содержится более двух слов, то выберем из них самое короткое слово*) Vi и построим все возможные соотношения <-> vih где е Постро- ив соотношения по всем подмножествам 91,, получим (в общем случае неправильный) A-набор R. Очевидно, что если бы производилось построение fe-набора К по ко- роткому дереву автомата А в соответствии с алгоритмом ?12.4, то все соотношения из К содержались бы среди со- отношений R. Построим теперь ФС <А"0, А*>, где RQ состоит из слов множества Ш1, содержащихся в П L2. Очевидно, что мно- жество Ко, получаемое в соответствии с алгоритмами Я2.3 и 312.4 по автомату Л, содержится в RQ и, следовательно, Ko^IARq, R). Тогда в соответствии с леммой 3.3.1 Li A L2 s R). Поскольку П ^2= U {Qu П ^UQ.L1^2jQ.L2 где Qu и QZj — классы отношений эквивалентности Qlx и Ql2 соответственно, справедливо и обратное включение: IARq, R) £ Li П L2. Действительно, пусть w е L(Rq, R). Если w? е Rq, то w Li(} L2 по построению R<>. В против- ном случае существует v^R0 такое, чтом^у и, следо- вательно, wQnV и wQlj) по построению R. Но это означает, что для некоторых i и / we Qu A Q2j sL4 A L2. Суммируя сказанное, получаем Li A L2= L{R^ R). В общем случае ФС <А"0, R) не является нормализо- ванной. Процедура получения из ФС <А"0, R) нормали- зованной ФС <2Г0, К') состоит в отбрасывании из fc-на- бора R тех соотношений, правая часть которых содер- жит в качестве своего пачала правую часть какого-либо другого соотношения А-набора R, и в последующем по- строении множества получаемого пз R^ отбра- ♦) Среди слов равной длппы выбираем то слово, которое при заданной упорядоченности (нумерации) алфавита X имеет мень- ший номер в лексикографическом порядке.
§ 3. ОПЕРАЦИИ НАД МНОЖЕСТВАМИ 85 сыванием тех слов, каждое из которых содержит в каче- стве начала правую часть какого-либо соотношения fc-на- бора К' (иными словами, из отбрасываются непро- стые в ЕКг слова). Покажем, что К' = К. Предварительно заметим, что по построению в fc-наборе К присутствуют только такие соотношения, у которых правая часть содержит в каче- стве своего начала правую часть какого-либо соотноше- ния Л-набора К. По этой причине все соотношения, не вошедшие в К, будут удалены из К и К' £ К. Пусть теперь в некотором f-м соотношении (рн ++ vi2) е К правая часть pi2 является началом правой части j-го соотношения (ря pJ2) ^К. Очевидно, что оба соотношения не могут одновременно содержаться в А, поскольку К — правильный fc-набор. Пусть г-е соотно- шение содержится в A, a J-e соотношение не содержится в А. Тогда v<2 = ^2 —правая часть некоторого соотноше- ния fc-набора A, a = ^2^» где — правая часть не- которого соотношения й-набора А, в силу сделанного вы- ше замечания. Но Vj2 = vt2v, откуда v^w ~ v^v. Это равенство противоречит правильности /с-набора А. На ос- новании этих рассуждений можно сделать вывод о том, что из А не может быть удалено ни одно соотношение /с-набора А. Таким образом, A s А', и в итоге А = К'. Замечание. Разобранную процедуру можно было бы упростить, если проводить разбиение множества ЗЛ на подмножества 5Л<, каждое из которых состоит только из слов, одновременно содержащихся в одних и тех же классах Е^ и А#2, а не в одних и тех же классах Qlx и как это было рассмотрено выше. Однако при этом ФС <А0, А'> может оказаться большего размера, неже- ли в результате процедуры, описанной в тексте. Рис. 3.3.1. о 1 Рис. 3.3.2. Пример 3.3.1. Построить пересечение А Е2, где и ^2 — регулярные множества, представленные автоматами и 42, изображенными на рис. 3.3.1 и 3.3.2 соответ-
86 ГЛ. III. НЕКОТОРЫЕ ДОПОЛНЕНИЯ К ТЕОРИИ ЯЭП ствепно, и описанные ФС <Ко1, КС> и <#0., К2>: #Oi == {0}, /<1 = {0^00, А ^>01}, К 02 = {А, 0), К2 = {А <-> 00, 0 ++ 01}. Множества SJli и ИЯ2 для и L2 совпадают: 2R, = S3l2 = {Д, 0). _ связи с тем, что т = I2RJ |3)?2| = 4, множества SD?i и 9Я2 содержат все слова из и соответ- ственно длины не более 4: Ш?! = {А, 0,00,01,000,001,010,0000,0001,0010, 0100, 0101}, Ж2 = {А, 0,00,01,000,010,011,0000,0001,0100, ОНО, 0111}, В == 2», П ЗЙ2 = {А, 0,00,01,000,010,0000,0001,0100}. Разобьем теперь множество 2R па подмножества каждое из которых состоит из слов, одновременно содер- жащихся в одних и тех же классах Ек, и Ек2. Резуль- тат такого разбиения представлен в таблице (табл. 3.3.1), в которой второй и третий столбцы содержат простые слова в Ек^ и Ек^ эквивалентные соответствующим словам из множества 5DI; в четвертом столбце указан по- Таблица 3.3.1 мер i подмножества 91г, в которое — цопало соответствующее слово ял г из ЭД. Ki к2 Выпишем в соответствии с 4-м столбцом табл. 3.3.1 все возмож- А о А о А 0 1 2 ные соотношения по правилам, V 00 V 0 А 3 описанным па стр. 84: 01 А 0 4 0 — 000, 000 010 0 0 0 А 2 3 0 0100, 0000 0 А 3 00 +-> 010, 0001 А 0 4 00 0000, 0100 0 0 2 01 <-> 0001, что составит /с-пабор К, Множе- ством Кц является {0, 00, 000, 010, 0000, 0100}. По ФС <^0, КУ построим ФС <Z£0,7£'> (табл. 3.3.2). В соответствии со сказанным выше К') — = (] L2 = L. На рис. 3.3.3 изображен автомат Aq(L), представляющий своими финальными состояниями s2 и $4 множество Lx 0 L*. Для поиска описания объединения L = U L2 рас- смотрим инициальный детерминированный автомат В,
§ 3. ОПЕРАЦИИ НАД МНОЖЕСТВАМИ 87 строящийся по автоматам и Aq(L2) следую- щим образом: состояниями автомата В являются упоря- доченные пары состояний автоматов Aq{L^) и Aq(L^ пли пары, состоящие пз состояния одного из этих авто- матов и специального символа *, начальным состоя- нием — пара начальных состояний и финальными состоя- ниями — пары, в которых хотя бы одно состояние явля- ется финальным в каком-либо из автоматов Aq(L^ и 4q(Z/2). Функция переходов автомата В определяется Таблица 3.3.2 ко К' 0 0^000 00 00*-*010 на паре (7/, р;) по букве х^Х, если определена хотя бы одна из функций переходов бДф, х), Mpj, х) автоматов Aq(L^ или Aq(L^ соответственно. На парах (*, рр, (г/,, *) функция переходов определена по букве х^Х, если определена 62(р;, х) или х) соответственно. Если на парах (gf, р;), (д», *) или (*, р,) определена только х), то по букве х^Х из первых двух пар переход осуществляется в пару (б(^, х), *), из третьей пары переход по х не определен. Если же определена только ,62(рь х), то по букве х^Х из первой и третьей пар переход осуществляется в пару (*, б2 (pj, ж)), из вто- рой пары переход не определен. Такая конструкция позволяет описать Li U L2. Дей- ствительно, автомат В своими финальными состояниями представляет L{ U £2, поскольку всякое слово, ведущее из начального состояния автомата В в некоторое финальное, ведет в каком-либо пз автоматов Aq^LJ или Aq(L2) из начального состояния в финальное. Верно и обратное: всякое слово, ведущее в каком-либо из автоматов Aq(Li) «лп Лр(£2) из начального состояния в финальное, ведет в автомате В из начального состояния в некоторое фи- нальное.
ГЛ. III. НЕКОТОРЫЕ ДОПОЛНЕНИЯ К ТЕОРИИ ЯЭП 88 Справедлива следующая оценка сверху числа состоя- ний автомата В: 151 ISWJ|SW2I +тах{|Ш11|, |%|}-1 = г. Тогда длина короткого дерева, построенного по автома- ту В, не превосходит г. Как и выше, рассмотрим множе- ства слов ЯЙ1 и 2)?2являющихся началами всех слов из X*\<2* и Х*\(7* длины не более г. Тогда все слова ко- роткого дерева, построенного по автомату В в соответ- ствии с алгоритмом З(2.3, попадут в ЗИ* = SDli (J SD?X. Разобьем множество 2R* па подмножества , каждое из которых состоит только из слов, одновременно содер- жащихся в одних и тех же классах Qli и Qlz. Построим ФС <К0,Х*> по правилам, аналогичным тем, в соответ- ствии с которыми строилась ФС <2t0, описывающая 54 П 52. В отличие от R^ множество Ко включает в себя все слова множества 8Я*, содержащиеся в 54 U 52. Заме- тим, что множество получаемое в соответствии с ал- горитмами 8t2.3 и 8(2.4 по автомату В, содержится в и, следовательно, Ко — 5 (/<*» К*). Поскольку при этом все соотношения й-пабора К, построенного с помощью алго- ритма 3(2.4 по короткому дереву автомата В, содержатся в X*, в соответствии с леммой 3.3.1 LY (J L2 = L(K^ К)^ £=L(K*o,K*\ Представим теперь множество 54 U L2 так: 5Х [J 52 = и * «?и П &;)] и Г и (Qu П . Если w^L(К*, К*), то возможно: a) и, следовательно, w 54 U 52; б) w ф /<*. В последнем слу- чае существует w ф Ко такое, что wEK*v и, следователь- но, wQL1v и wQl2v. Но это означает, что либо w е G Qu П Q2h либо w e= Qri f) @2> либо w 6= ()* fl Q23 для не- которых s 5i и Q2j s 52 и, следовательно, w e ZqII 52. Отсюда L(Cr)^51UL2. Окончательно получаем Л и l2 = l(k0*,^*). Замечание. Разбиение множества ЭД* на подмно- жества 91* можно проводить таким образом, что в одно
§ 3. ОПЕРАЦИИ НАД МНОЖЕСТВАМИ 89 подмножество StJ попадают те и только те слова из которые одновременно содержатся в одних и тех же классах отношений Екг и Однако при этом возможно увеличение размера ФС Таблица 3.3.3 да* ЕК2 i да* Екг i Л Л Л 1 00000 0 0 2 0 0 0 2 00001 Л ♦ 5 00 0 Л 3 00010 0 Л 3 01 Л 0 4 00011 * 0 6 ООО 0 0 2 00100 0 * 7 001 Л * 5 00101 Л * 5 010 0 Л 3 01000 0 Л 3 он * 0 6 01001 Л 0 4 0000 0 Л 3 01010 0 * 7 0001 Л 0 4 01100 * 0 6 0010 0 * 7 01110 * Л 8 0100 0 0 2 они * 0 6 0101 Л * 5 оно ♦ Л 8 0111 * 0 6 ко к* Л 0111 0 00000 00 00010 01 00011 000 00100 010 01000 011 01001 0000 01010 0001 01100 0010 OHIO 0100 они оно 0<—>000 001 «-->00001 0«->0100 001 «—>00101 0«—>00000 011**0111 00«—>010 011 «->00011 00«->0000 011«->01100 00«->00010 ОН*->01111 00«->01000 0010**00100 01«--»0001 0010*-->01010 01<—>01001 0110**01110 001 «—>0101 Таблица 3.3.4 Таблица 3.3.5 ко К' Л 0^000 0 оо^->ою 00 001 *-*00101 01 011^-4)1100 011 ОН*—>0111 0010 0010*->00100 оно Дальнейшие действия по получению нормализованной ФС <7v0, К'у полностью соответствуют описанным выше для пересечения Д П L2.
90 ГЛ. III. НЕКОТОРЫЕ ДОПОЛНЕНИЯ К ТЕОРИИ ЯЭП Пример 3.3.2. Построить объединение U L2 для мно- жеств Li и L2 из предыдущего примера. В соответствии с правилами, изложенными выше, по- строим множества SD?i и Зй2< включающие в себя все слова, эквивалентные словам из SWi и SM2 и имеющие длину, не превосходящую 5, поскольку г = I2RJ |Э12| + + шах{|2»11, 1 = 5: < = и {00000, 00001, 00010, 00100, 00101,01000, 01001, 01010}, а»2 = и {ооооо, ооою, ооои, оюоо, oiooi, оиоо, ОШО, 01111}, SM* = < и 24* = {А, о, 00,01, 000, 001, 010, 011, 0000, 0001, 0010, 0100, 0101,0110,0111,00000, 00001, 00010, 00011,00100,00101, 01000, 01001, 01010,01100, OHIO, 01111}. Процедура разбиения множества SW* на подмножества Sli, каждое из которых состоит из слов, одновременно содержащихся в одних и тех же классах Ек^ и ЕКг, пред- ставлена таблицей (табл. 3.3.3), по которой построена ФС<Хо,К*> (табл. 3.3.4). ФС построенная в соответствии с правилами, изложенными выше, пред- ставлена таблицей (табл. 3.3.5), автомат ^q(L), пред- ставляющий L == Li U L2 своими финальными состояниями 51, $2, $з, 55, s6, $7, $8, изображен на рис. 3.3.4. Рис. 3.3.4. Рассмотрим теперь построение описания дополнения регулярного множества L = L(Kq, К): £ = Х*\Л. Посколь- ку L имеет простую интерпретацию в автомате AQ(L) — это множество слов, представляемое в нем пефинальпыми
§ 3. ОПЕРАЦИИ НАД МНОЖЕСТВАМИ 91 состояниями,—построение ФС <Я0,Я'>, описывающей Z, будем иллюстрировать на AQ(L). По ФС {Ко, КУ построим множество ЭД и по нему множество W слов Wi SR, являющихся продолжениями по буквам из X слов 9ЭТ и пе являю- щихся правыми частями соотношений ^-набора К. Иными словами: W = {wi | (wi = wx) (w e 2R) (u?i SD?) X x(^eX)(v/) (u>i=#^2)}, где vj2 — правая часть /-го соотношения /с-пабора К. Таблица 3.3.6 к. к 1 001 1<-> 01101 1^ 10 1^ 11 В автомате AQ(L) каждое слово Wi ведет из началь- ного состояния в q*. Среди слов W выберем слово ip*, являющееся самым коротким*). Построим теперь /с-на- бор К, который состоит из всех соотношений /с-набора К и всех соотношений вида ZP* Wi, Wi W, w* ++ w*x, х^Х, а_ Ко — (%Я\Ко) U {w*}. Если же Wj= то К~К, а Ко==№\Ко. По построению, ФС <А0, КУ — нормализо- ванная система. _ _ __ _ Ясно, что 1ЛКо, К)=£. К ФС </Го, КУ может быть применена процедура, рассмотренная в § 4 гл. II, в ре- зультате чего получим ФС (KQ,K'), которая не содер- жит соотношений, пе используемых для установления эквивалентности слов из К$~ К$ и слов множества Z. Пример 3.3.3. Построить дополнение Z множества L = L(Ko, К), где ФС <7<0, КУ задана табл. 3.3.5. Множество ВИ = {1, 01101). По множеству W построим ФС (Ко, КУ (табл. 3.3.6). ФС {Ко, КУ пе может быть подвергнута процедуре свертывания, рассмотренной в § 4 гл. II, поэтому, пола- гая Ко = Ко, К = К',_получим ФС (Кц, К') такую, что L(K’q, К') = X*\L —L. Автомат, представляющий Z своими финальными состояниями s2 п s3, изображен на рис. 3.3.5. *) См. сноску на стр. 84.
92 ГЛ. ITT. НЕКОТОРЫЕ ДОПОЛНЕНИЯ К ТЕОРИИ ЯЭП В заключение этого параграфа определим необходи- мые п достаточные условия вложения одного регуляр- 0Ч1 ного множества, описанного на ЯЭП, в другое множество, также 1 пУг описанное на ЯЭП. Теорема 3.3.2. L2 тогда п --х z? - только тогда, когда в ФС < К*, К*}, описывающей L{ U L2, множество К* содержится в £2. Доказательство. Необхо- димость условий теоремы стано- вится очевидной, если учесть, что из Li s L2 следует равенство L{ II U L2 = l2. Достаточность. В соответ- ствии с алгоритмом построения ФС <Я*, К*>, описывающей U L2, каждое соотношение из /<* состоит из пары слов, находящихся в отношении пли Ql2> Следовательно, по лемме 3.3.1 Lr (J L2 = = L(K*o, K*)^L2. Но в силу обратного включения L2 = Li U Z/2, откуда следует Д s L2. Теорема доказана.
ГЛАВА IV ЯЗЫКИ ЭКВИВАЛЕНТНЫХ ПРЕОБРАЗОВАНИИ II КОНЕЧНОАВТОМАТНЫЕ МНОЖЕСТВА Результаты, получсппые в предыдущих главах, оди- наково касаются автоматов без выхода (представляющих события своими финальными состояппяни) и автоматов, работающих в режиме «вход-выход» (см. введение к гла- ве II). В этой главе в качестве частного случая рассмат- риваются автоматы с выходом и описание ла ЯЭП реа- лизуемых ими множеств. С формальной точки зрения это значит, что алфавит, в котором задаются словарные множества, непроизволен, а является прямым произведе- нием некоторых двух алфавитов (входного X и выходного У). На протяжении всей главы эти алфавиты считаются фиксированными. По определению, всякое множество слов (множество в-в последовательностей), реализуемых некоторым автоматом, принадлежит (XX У)* и содержит пустую последовательность е = (А, А). В главе исполь- зуются формальные системы <Х0, Х>, в которых все элементы Кй, правые и левые части соотношений из К являются в-в последовательностями из множества (XX У)*. § 1. Реализуемость множеств конечными автоматами Известно, что если некоторое множество L есть мно- жество в-в последовательностей, реализуемое некоторым конечным автоматом, то это множество регулярно. По- этому при постановке задачи о реализуемости произволь- ного множества L конечным автоматом можно говорить лишь о реализуемости рсгулярпого множества и, следо- вательно, множества, описываемого па каком-либо из языков эквивалентных преобразований. Пусть задано множество в-в последовательностей — (XX У)*, выводимых в некоторой нормализованной ФС <Х0, К>. Как показал М. А. Спивак [42], одной ре- гулярности недостаточно для того, чтобы это множество реализовывалось каким-либо инициальным детерминиро- ванным конечным автоматом (ИДА). Развивая этот результат, покажем, что одной лишь регулярности недостаточно для ответа и на более общий
94 ГЛ. IV. ЯЭП И КОНЕЧНОАВТОМАТНЫЕ МНОЖЕСТВА вопрос о реализуемости множества конечным автоматом произвольного вида. Поскольку в § 1 гл. II было показано, что регулярное множество, реализуемое конечным автоматом произволь- ного вида, всегда реализуется инициальным (и в общем случае недетерминированным) автоматом Aq(L) (свой- ство 2.1.10), то приводимые нами необходимые и доста- точные условия, при выполнении которых множество L реализуется конечным автоматом произвольного вида, будут являться также необходимыми и достаточными условиями реализуемости множества инициальным (в об- щем случае недетерминированным) конечным автоматом. Определение 4.1.1. В ФС <К0, К> множество Ко на- зывается согласованным с k-набором К при одновремен- ном выполнении следующих условий: 1) если некоторая в-в последовательность v входит в Ко, то Ко содержит и все ее начала гн; 2) Ко содержит все собственные начала правых ча- стей соотношений /с-пабора К. Замечание. Множество Ко согласовано с /с-пабо- ром К, если Ко = 2Й (определение множества Зй приведено в § 5 гл. II)’. Теорема 4.1.1. L реализуемо конечным автоматом тог- да и только тогда, когда существует ФС <7£0, К> такая, что L= 1АКо, К) и множество KQ согласовано с Аг-па- бором К, Доказательство. Необходимость. Пусть L реализуется некоторым конечным автоматом. Тогда (по свойству 2.1.10 автомата Aq(L)) множество L реализу- ется Aq(L) из начального состояния qo. Пользуясь алго- ритмом S(22, по A*q(L), представляющему множество L, построим ФС <Х0, КХ такую, что L = L(K0, К\. Посколь- ку все состояния автомата Aq(L) являются финальными (свойство 2.1.9 автомата ^q(L)), то все собственные начала правых частей соотношений fc-пабора К и начала слов из Ко будут являться словами из L. Но поскольку все эти слова просты в Ек, то все они должны содер- жаться в Ко. Отсюда следует согласованность KQ с fc-на- бором К. Достаточность. Пусть нам задана нормализован- ная ФС </С0, К>, L = L(Ko, К) и Ко согласовано с /^-на- бором К. Пользуясь алгоритмом Ski, построим автомат
§ 1. РЕАЛИЗУЕМОСТЬ МНОЖЕСТВ АВТОМАТАМИ 95 4q(L), представляющий множество L. В силу согласо- ванности Ко с К множество 3R, используемое в этом ал- горитме, совпадает с Ко, следовательно, все состояния автомата (L) являются финальными. Теорема до- казана. Таким образом, если множество L^(XXY)* реали- зуемо конечным автоматом, то существует описывающая L ФС <А^о, К>, в которой множество KQ согласовано с ft-набором /<. Но пусть теперь нам предъявлена такая ФС, в которой Ко не согласовано с ft-п-абором. Можно ли утверждать в таком случае, что L не является конечно- автоматным множеством? Ведь можно предположить, что существует ФСЬ эквивалентная заданной относительно А, в которой Ко согласовано с К. Ответ па этот вопрос даст следующая теорема. Теорема 4.1.2. Пусть <Х01, Л\> —ФС, в которой XOi Тогда не существует ФС <Х02, #2^пе согласовано с Kt. такой, что К02 согласовано с К2, и эти ФС эквивалентны относительно L. Доказательство. По ФС <ЯОь используя ал- горитм построим автомат Aq(L). При этом из несогласованности K0J с следует, что в Aq (L) суще- ствует хотя бы одно нефинальпое состояние q. Пусть I ведет в автомате Aq(L) в состояние q; тогда существует V такое, что IV е £, Поскольку в L существует в-в по- следовательность IV, начало которой 1ФЬ, то L нереали- зуемо никаким конечным автоматом. Отсюда в силу тео- ремы 4.1.1 вытекает утверждение теоремы 4.1.2. Теорема доказана. Рассмотрим вопрос о реализуемости заданного мно- жества полностью определенными автоматами. Определение 4.1.2. Будем называть множество Ко в ФС {Ко, К> полностью определенным, если для всякого Iе Ко и всякого Xi X существует символ y^Y такой, что IV g= IAKo, K)v V = (Xi, yX Очевидно, что в этом определении IV == Ikxi, yj) либо является элементом множества Ко, либо является правой частью какого-либо пз соотношений ft-набора К. Лемма 4.1.1. Пусть IAKQ, К) реализуемо конечным автоматом. L(KQ, К) может быть реализовано полностью определенным конечным автоматом тогда и только тогда, когда множество Ко является полностью определенным. Доказательство. Необходимость очевидна.
96 ГЛ. IV. ЯЭП И КОНЕЧНОАВТОМАТНЫЕ МНОЖЕСТВА Достаточность. Пусть условия леммы выполне- ны. Тогда, очевидно, автомат Aq(L) является полностью определенным, так как каждому состоянию автомата Aq (L) соответствует класс эквивалентности отношения Ql, а из полной определенности множества Ко следует, что для всякого состояния qh автомата Aq(L) и всякого Xj X существует У такое, что в-в последовательность Xii/j реализуется в состоянии qk. Лемма доказана. Замечание. Если KQ полностью определено, то всякая в-в последовательность 1^К0 является собствен- ным началом правой части некоторого соотношения Л-на- бора К.{ Действительно, в полностью определенном Ко всякое I е Ко может быть продолжено по любому входному сло- ву причем это продолжение, дополненное выход- ным словом, будет элементом L. Каждое достаточно длин- ное такое продолжение должно, очевидно, содержать в качестве начала правую часть соотношения из &-набо- ра К, что и доказывает утверждение. Замечание. Из леммы 4.1.1 следует, что L реали- зуемо полностью определенным конечным автоматом тог- да и только тогда, когда автомат AQ(L) является пол- ностью определенным. Это замечание может рассматриваться как условие, эквивалентное условию полной определенности множе- ства Ко. Поэтому при построении автомата, реализующего Таблица 4.1.1. Рис. 4.1.1. е 00 01 10 01<+ 00 01 10^> 00 10 00<-> 01 и 00-» 10 00 заданное множество L, условие леммы 4.1.1 может про- веряться попутно установлением полной определенности автомата Aq(L). Пример 4.1.1. Пусть заданы множества Кп и А;-на- бор К (табл. 4.1.1). Необходимо проанализировать воз- можность реализации множества L = L(KQ, К) конечным
§ 2. РЕАЛИЗУЕМОСТЬ ДЕТЕРМИНИРОВАННЫМ АВТОМАТОМ 97 автоматом. Представим К(] и правые части соотношения /с-набора К в виде дерева (рис. 4.1.1). Это дерево нагляд- но показывает, что множество Ко согласовано с /я-набо- ром К. Условие теоремы 4.1.1 выполнено, а потому L реализуемо конечным автоматом. В качестве этого авто- мата может быть взят инициаль- ный автомат Aq(L). Построим этот автомат. Убедимся, что все в-в последовательности множест- ва Ко находятся в разных клас- сах эквивалентности отношения QL. Действительно, все они про- должаемы различными способа- ми, что хорошо видно по дереву (см. рис. 4.1.1). В соответствии со свойством 2.1.5 отно- шения QL, считая, что Qo^le, ...}, Qi = {00, ...}, (?2 = -= {01, ...}, Qa = {10, ...}, получим <2оОО <= Qt, Q000 <= Q2, (МО с Q3, Qoii^L, <2101 с q2, QiiO<=Q3, <2,11 <£L (?200 £ L, <2з00 <= Ql, (?201 <£ L, &01 = {1001, &10 Ф L, (МО = {1010, (Ml = {Ю11, Граф автомата 4q(A) представлен на рис. 4.1.2, В этой же ФС <К0, К> " Ко не является полностью определенным, поскольку, например, слово 01 не имеет продолжения по входной букве 0^Х—{0, 1). По лемме 4.1.1 А(Ко, К) нереализуемо полностью определенным конечным автоматом. § 2. Реализуемость множеств детерминированными автоматами Пусть уже выяснено, что заданное множество L, опи- санное на ЯЭП, может быть реализовано конечным авто- матом. Сразу же возникает вопрос, нельзя ли множество L реализовать детерминированным конечным автоматом. 7 Конечные автоматы
98 ГЛ. IV. ЯЭП И КОНЕЧНОАВТОМАТНЫЕ МНОЖЕСТВА Очевидно, условия теоремы 4.1.1 необходимы и для возможности реализации L в детерминированном авто- мате. Однако, как это будет показано в теореме 4.2.1, они не являются достаточными. Как и условия теоремы 4.1.1, условия теоремы 4.2.1 являются существенно необходимыми в том смысле, что их выполнение не зависит от конкретной записи множе- ства L на ЯЭП. В § 1 гл. IV было отмечено, что реализуемость множе- ства недетерминированным автоматом равносильна его реализуемости инициальным недетерминированным авто- матом. При реализации множества детерминированными автоматами положение иное, так как множество, реали- зуемое детерминированным конечным автоматом, может не допускать реализации инициальным детерминирован- ным автоматом. Возможность такой реализации будет рассмотрена отдельно. Для доказательства теоремы 4.2.1 удобно использовать некоторое свойство автомата Aq(L) (безвозвратность [26D, равносильное условию реализуемости множества Л, заданного на ЯЭП, детерминированным автоматом. Это свойство представляет и самостоятельный интерес. Определение 4.2.1. Состояние s конечного автомата А назовем недетерминированным, если на графе автомата А из $ выходит более одной дуги, помеченной одной и той же буквой хг е X. Дуги, выходящие из неде- терминированного состояния и помеченные одной и той же буквой Xi е X, также назовем недетерминиро- ванными. Определение 4.2.2. Конечный автомат А обладает свойством безвозвратности, если для любого недетерми- нированного состояния s^SA ни одно слово, реализуемое в этом состоянии и начинающееся с пометки на детерми- нированной дуге, не ведет в 5. Для проверки свойства безвозвратности достаточно проверить все слова длины не более п, реализуемые в каждом из состояний автомата А, где п= |5А1. Самостоятельное значение свойства безвозвратности иллюстрирует следующая лемма. Лемма 4.2.1. Конечноавтоматное множество L реали- зуемо в детерминированном конечном автомате тогда и только тогда, когда A*q(L) обладает свойством безвоз- вратности.
§ 2. РЕАЛИЗУЕМОСТЬ ДЕТЕРМИНИРОВАННЫМ АВТОМАТОМ gg Доказательство. Н е о б х о д и м о с т ь. Пусть мно- жество L реализуемо детерминированным конечным ав- томатом Л, по AQ(L) не обладает свойством безвозврат- ности. Тогда, в Aq(L) существует хотя бы одно недетер- минированное состояние (пусть таковым будет q). При этом h е L ведет из qQ в q, а /2у начинающееся с пометки на недетерминированной дуге, реализуется в q и ведет снова в q. Очевидно, IJ2QL1^ откуда Ц(12У L для любого целого t. Обозначим через Sl SA множество состояний, в ко- торое в-в последовательность Ц(12У ведет из начального множества состояний Sa автомата А. Поскольку А—де- терминированный автомат, а 12 в автомате Aq (L) начина- ется с пометки па недетерминированной дуге, то IS/+11 < <15*1 для любого £>1. Но IS'I > 1 для любого а в силу предыдущего неравенства при достаточно большом t окажется, что |S/+1I < 1, что невозможно. Таким образом, Aq(L) обладает свойством безвозвратности. Достаточность. Пусть некоторое множество L ре- ализуется автоматом Aq (L), обладающим свойством без- возвратности. Обозначим через А2 конечный детермини- рованный автомат, представляющий собой прямую сумму всех возможных инициальных подавтоматов А/ автомата Aq(L), которые удовлетворяют следующим условиям: 1) граф каждого А< является подграфом графа Aq(L), получающимся из последнего удалением в каждом неде- терминированном состоянии всех недетерминированных дуг, кроме одной, для каждой буквы х^Х; 2) начальное состояние $о каждого автомата At полу- чается из состояния д0 автомата Aq(L}\ 3) множество начальных состояний As: = [J sj. i Обозначим через Д множество в-в последовательностей, реализуемое ИДА А<. Соответственно, Lz реализуется авто- матом As. Очевидно, что ~ (J Lit i По построению А2 имеем Л2 L. Пусть I е L. Рассмотрим последовательность St состоя- ний автомата Aq(L), через которые ведет в-в последова- тельность /. Так как Aq(L) обладает свойством безвоз- вратности, то каждое недетерминированное состояние мо- жет встретиться в St не более одного раза. Но отсюда 7*
100 ГЛ. IV. НЭП И КОНЕЧНОАВТОМАТНЫЕ МНОЖЕСТВА следует, что I реализуется по крайней мере в одном из подавтоматов Л<, а потому Отсюда L^L^. Таким образом, L = Ls, а это означает, что L реализуется детер- минированным конечным автоматом Л2. Лемма доказана. Дополнив алгоритм построения автомата Л % процеду- рой минимизации числа его состояний, можно считать, что из доказательства леммы 4.2.1 может быть получен также алгоритм Й4Л построения детерминированного конечного автомата AL, реализующего Z, для которого автомат Aq(L) обладает свойством безвозвратности. Пример 4.2.1. Если обратиться к автохмату Aq(L), по- строенному по ФС К> в примере 4.1.1 (см. рис. 4.1.2), можно заметить, что единственным недетерминированным состоянием этого автомата является состояние qQ, посколь- ку из пего выходят недетерминированные дуги, соответ- ствующие х = 0. Поскольку ни одна в-в последователь- ность не ведет в состояние д0, автомат Aq(L) обладает свойством безвозвратности. Отсюда по лемме 4.2.1 полу- чим, что 1АК^ К) реализуемо детерминированным конеч- ным автоматом. В соответствии с алгоритмом 9С4Л построим этот автомат. Он представлен на рис. 4.2.1. Легко видеть, что состояния 1 и 5 неотличимы никаким экспериментом, и их можно объединить. В результате получим детерми- нированный конечный автомат А (рис. 4.2.2) с начальными состояниями 1 и 4, реализующий Л(Х0, К). На самом деле можно было бы еще упростить автомат А, отбросив состо- яние 4 и считая начальными состояниями состояния 1 и 3, но это выходило бы за рамки регулярного синтеза. Перейдем теперь к условию реализуемости в детерми- нированном автомате для случая, когда L задано на ЯЭП.
§ 2, РЕАЛИЗУЕМОСТЬ ДЕТЕРМИНИРОВАННЫМ АВТОМАТОМ ДО1 Пусть L задано нормализованной ФС <Х0, К\ в которой /<и согласовано с К. Определение 4.2.3. Конечноавтоматное множество L удовлетворяет условию Д по отношению к ФС <Х0, К>, если L = IAKq, К) п для всякой в-в последовательности такой, что g(Z) С 1К0|, /2 = (я, у) и IQJu имеет место следующее: в множестве L не существует в-в после- довательности yi) такой, что является началом слова X, но yi пе является началом слова у. Содержательно условие Д означает однозначную про- должимость в-в последовательностей множества L по их циклическим продолжениям. Теперь можно сформулировать теорему, которая дает необходимые и достаточные условия реализуемости мно- жества L, описанного на ЯЭП, детерминированным конеч- ным автоматом. Теорема 4.2.1. L реализуемо детерминированным ко- нечным автоматом тогда и только тогда, когда оно может быть описано с помощью ФС <7С0, К>, у которой Ко со- гласовано с К, и при этом выполняется условие Д. Доказательство. Очевидно, что для доказатель- ства этой теоремы достаточно показать, что для произволь- ного копечноавтоматного множества L условие Д эквива- лентно тому, что реализующий L автомат Aq (L) обладает свойством безвозвратности. Необходимость. Пусть L реализуется некоторым детерминированным конечным автоматом; при этом в си- лу леммы 4.2.1 автомат Aq (L) обладает свойством без- возвратности. По автомату Aq(L) в соответствии с алго- ритмом ®2.2 построим ФС <#0, К> такую, что L = == L(Kq, Kl\. Предположим, что условие Д не выполня- ется. Тогда существует Z = Zt(x, y)^L такая, что IQJu и V == Ц(х', у') е L, причем х' = xil, но у' уи. Можно счи- тать тогда, что l = li(xi, yi)U2, у2) и I' = Цхь yJGr", у"), где хп = я", а у" отличается от у2 уже первой буквой. Пусть /1(х4, yj ведет в автомате Aq(L) в состояние q. Тогда, очевидно, q является недетерминированным со- стоянием, причем Г = Cr2, y2)(^i, У1), начинаясь с пометки на недетерминированной дуге, выходящей из состояния у, снова ведет в это же состояние, откуда следует, что А<№) пе обладает свойством безвозвратности. Это про- тиворечие показывает, что условие Д должно иметь место.
102 ГЛ. IV. НЭП И КОНЕЧПОЛВТОМЛТНЫЕ МНОЖЕСТВА Достаточность. Пусть L задано нормализованной ФС <Ки, К>, у которой Кй согласовано с К, и выпол- нено условие Д. Предположим, что Aq(L) не обладает свойством безвозвратности. Пусть qi — недетерминированное состояние автомата Aq(L), в котором реализуется в-в последовательность Z2, начинающаяся с пометки на недетерминированной дуге н ведущая снова в qh и пусть Ц — в-в последова- тельность, ведущая из qQ в qit Всегда можно считать, что существует такая в-в последовательность Ц, которая не содержит циклов, а в-в последовательность 12 явля- ется простым циклом, т. е. циклом, в котором пи одно состояние не встречается дважды, за исключением на- чального состояния цикла. Если при реализации Ц12 в автомате A'q(L) ни одно состояние, кроме q^ не проходится дважды, то g(ZiZ2) < где п — число состояний автомата Лр(Л). В этом случае условие Д не выполнено из-за существо- вания в IAKq, К) в-в последовательностей Ц и Ц12. Пусть при реализации Ц12 в автомате Aq(L) прохо- дится последовательность состояний д0, ..., q, ..., q^ ... ..., q, ..., qh в которой q — первое состояние, не считая qi4 в цикле дг, ..., д, ..., q^ которое дважды проходится при реализации Ц12 (таковым может оказаться и q0). Тогда = ZiZi, Z2 = Z2Z2, где в-в последовательность lr ведет из в q, 1Х — из q в qh 12 — из дг- в q, a Z2 — пз q в qit Будем рассматривать в-в последовательности Zj и Z1ZJ2. По построению имеем п | Ко |, при этом в-в последовательность l\h содержит пометку на недетерминированной дуге (с этой пометки начинается в-в последовательность Z2). Это озна- чает, что условие Д не выполнено из-за существования в 1ЛКо, К) в-в последовательностей 1\ и Z^Z*. Это про- тиворечие позволяет утверждать, что Aq(L) обладает свойством безвозвратности. Отсюда с учетом леммы 4.2.1 и теоремы 4.1.1 следует, что L реализуемо конечным детерминированным автоматом. Теорема доказана. *) Здесь использована оценка чпсла состояний п автомата Лф(Ь) | ЭД |), преобразованная с учетом условия согласованно- сти Ко с К (Ко = ЭД).
§ 2. РЕАЛИЗУЕМОСТЬ ДЕТЕРМИНИРОВАННЫМ АВТОМАТОМ ЮЗ Если конечноавтоматное множество L описано с по- мощью ФС <А0, КУ, по отношению к которой условие Д пе выполняется, то возникает вопрос: существует ли ФС эквивалентная ФС <К0, КУ относительно L, по отношению к которой условие Д выполнено? Отрица- тельный ответ на этот вопрос дает приводимая ниже теорема. Теорема 4.2.2. Пусть L = 1АКЦ, К) — конечноавтомат- пос множество и условие Д по отношению к ФС (К(}, КУ не выполняется. Тогда L не реализуется детерминиро- ванным конечным автоматом. Доказательство. Из условия теоремы следует, что автомат Aq(L) не обладает свойством безвозвратности (доказательство этого читатель может найти в доказа- тельстве теоремы 4.2.1). Тогда в силу леммы 4.2.1 мно- жество L нереализуемо в детерминированном конечном автомате. Теорема доказана. Если множество L задано на ЯЭП 1, то процедура проверки реализуемости этого множества детерминиро- ванным автоматом упрощается. В этом случае в условии Д подлежат проверке лишь слова, являющиеся правыми частями соотношений й-набора К, Видоизменим для этого случая условие Д. Определение 4.2.4. Конечноавтоматное множество L удовлетворяет условию Д{ по отношению к ФС <^0, КУ1Ч если для всякого соотношения vai УпщОг (где voi = (х, у)) Zr-пабора К имеет место следующее: в множестве L не существует в-в последовательности У1) такой, что Хг является началом слова х, но yL не является началом слова у. Теорема 4.2.3. L реализуемо детерминированным ко- нечным автоматом тогда и только тогда, когда оно может быть описано с помощью ФС </<0, у которой Ко со- гласовано с К, и при этом выполняется условие Доказательство. Необходимость. Пусть L реализуемо детерминированным конечным автоматом. Рассмотрим ФС (KTQ , KL'y1 (см. § 5 гл. II) такую, что L = ДА^о, Кь)х. Так как для любого соотношения /с-набора KL имеет место g <|4Щ)| = |я0£|*) и L'niQ ТО, ПОСКОЛЬКУ ИМввТ место условие Д, условие & выполнено. *) Здесь и ниже (£) | — число состояний автомата AQ(L).
104 ГЛ. IV. ЯЭП И КОНЕЧНОАБТОМАТНЫЕ МНОЖЕСТВА Достаточность. Пусть L = IAK^ — конечно- автоматное множество и по отношению к ФС <7С0> выполнено условие Д4. Предположим, что ^q(L) не об- ладает свойством безвозвратности. В этом случае суще- ствуют недетерминированное состояние q автомата Aq(L)' п в-в последовательность Z, реализуемая в q, начинаю- щаяся с пометки на недетерминированной дуге и веду- щая в q. Из всех в-в последовательностей Z, обладающих этими свойствами, всегда можно выбрать такую, при реализации которой ни одно состояние автомата Aq(L) (кроме q) не будет встречаться дважды. Пусть I' — крат- чайшая в-в последовательность, ведущая пз q0 в q, при реализации которой ни одно состояние автомата Aq(L) не проходится дважды. Поскольку 1'1^ L и имеем Г11 е L. Выберем t таким, чтобы выполнялось неравен- ство gtl'l*) > \KQ\. Тогда к VI* применимо правое экви- валентное преобразование. Пусть v -<-* vw — соотношение, с помощью которого это преобразование производится. Поскольку vErVW, выполняется vQ{vw и слова и и vw ведут в автомате Aq(L) в одно и тоже состояние q. Поскольку I' ведет через отличные друг от друга со- стояния, имеет место g{vw) > g(V). Если при реализации w из q встречается состояние q или q совпадает с q, то условие Д1 не может иметь места. Поэтому существует s, s=CZ, такое, что gtvw) С g(l'l8\ g(p) > gtl'l8-1). В этом случае в цикле I дважды встречается состояние д, отлич- ное от д, что противоречит условию выбора I, Теорема доказана. Условия Д и Д4 являются существенно необходимы- ми. Действительно, при их невыполнении оказывается, что автомат Aq (L) не обладает свойством безвозвратности, откуда следует нереализуемость L никаким детерминиро- ванным конечным автоматом, а потому не может суще- ствовать ЯЭП, описывающий L, в котором имело бы ме- сто условие Д (или Д4). Замечание. Если, пользуясь алгоритмом 5С2.2, ко автомату Aq(L) построить ФС ,Z<L>1? то, очевидно, длины правых частей соотношений ^-набора KL не пре- восходят числа |Aq(L)|. Таким образом, проверка усло- вия для такой ФС является в общем случае не более трудоемкой, чем проверка условия Д для произвольного ЯЭП, описывающего L. Поскольку некоторые соотношения
§ 2. РЕАЛИЗУЕМОСТЬ ДЕТЕРМИНИРОВАННЫМ АВТОМАТОМ Ю5 имеют в KL и более короткие правые части, удобно поль- зоваться системой <^о, KL\ при решении задачи о реа- лизуемости множества L детерминированным автоматом. Пример 4.2.2. Пусть Л-набор К и множество Ко за- даны следующей таблицей (табл. 4.2.1). В данном примере мы пмеем дело с ЯЭП 1, посколь- ку левые части всех соотношений й-набора К являются собственными началами правых частей. Представим Ко и правые части соотношений fc-набора К в виде дерева (рис. 4.2.3). Таблица 4.2.1 00 01 00 10 01 10 10 00<-> 00 00 00<-» 00 01 01<-> 01 00 01«-> 01 01 00<-> 00 10 00 00^ 00 10 10 01 <+ 01 10 00 01<-> 01 10 10 Из рассмотрения этого дерева видно, что множество Ко согласовано с fc-набором К. Условие теоремы 4.1.1 вы- полнено, а потому L(KQi К) реализуемо в инициальном автомате Aq (А) (рис. 4.2.4). Условие Д1 в данном слу- чае не имеет места, так как в й-наборе К есть соотноше- ния 00 0000 и 00 +-> 0001. Здесь в-в последователь- ность 00 продолжаема по входной букве цикла 0 не- однозначно. Поэтому L(KOi К) нереализуемо в детерми- нированном конечном автомате. В этом можно также убедиться, обратив внимание на то, что Aq(L) не обла- дает свойством безвозвратности — из недетерминирован- ного состояния qi можно выйти по недетерминированной дуге (например, по 00) и снова вернуться в q{. Пусть множество L нереализуемо детерминированным конечным автоматом (не выполнены условия теоре- мы 4.2.1). Возникает вопрос о возможности реализации этого множества так называемым покрывающим детер- минированным автоматом, т. е. таким детерминирован-
106 гл. TV. ЯЭП И КОНЕЧНОЛВТОМЛТНЫЕ МНОЖЕСТВА ным автоматом А, что L^LA, где LA — множество в-в последовательностей, реализуемое автоматом А. Такая задача была поставлена и решена в [Ц]. Здесь будет дано значительно более простое решение Рис. 4.2.4. этой задачи в терминах настоя- щей главы. Кроме того, будет по- казано, что возможность реализа- ции множества L детерминирован- ным конечным автоматом и воз- можность реализации L покрыва- ющим детерминированным конеч- ным автоматом существуют или пе существуют одно- временно. «!|емма 4.2.2. Для всякого недетерминированного ко- нечного автомата А покрывающий его детерминирован- ный конечный автомат В существует тогда и только тогда, когда автомат Aq (La) обладает свойством без- возвратности. Доказательство. Необходимость. Пусть ука- занный в теореме детерминированный автомат В суще- ствует, но Aq (La) свойством безвозвратности не обла- дает. Это значит, что в Aq(La) существуют недетерми- нированное состояние q и в-в последовательности Ц и /2=(^, у) такие, что Ц ведет в q из д0, а 12 начинается с недетерминированной дуги, реализуется в q и ведет при этом слова в q. Таким образом, во-первых, для лю- бого целого £>0 имеет место уУ^ЬА и, во-вторых, существует в-в последовательность (xh уА такая, что /Дя, уУ(Л1, yA^LA, причем £1 = ян, но у^у11. Так как LA s то для всякого Z >0 имеет место /Дя, уУ <= LB. Поскольку LB реализуемо в конечном ав- томате 5, оно состоит из конечного числа классов эк- вивалентности явного отношения эквивалентности QLB. Отсюда следует, что существуют такие t2, t2>th что Zi (х> y^QbBli (я, У)*2-Пусть будет Zx (х, г//1 = Z', а (z, У)*2 = Тогда VQlbI'I", причем 1) /" — цикл в состоянии в которое Aq(Lb) переходит из началь- ного состояния при реализации /'; 2) поскольку Z'Ui, i/i) LA, то 1'(хи yA^LB, а потому ^ — недетерми- нированное состояние автомата Лр(Лв), в котором реа- лизуется в-в последовательность I", начинающаяся с не- детерминированной дуги и при этом ведущая вновь в q.
§ 2. РЕАЛИЗУЕМОСТЬ ДЕТЕРМИНИРОВАННЫМ АВТОМАТОМ ДО7 Из леммы 4.2.1 следует, что в таком случае автомат В нс может быть детерминированным. Противоречие пока- зывает, что автомат Aq (La) обладает свойством безвоз- вратности. Достаточность. При выполнении условия леммы множество La в силу леммы 4.2.1 само реализуемо конеч- ным автоматом, который и может быть взят в качестве покрывающего. Лемма доказана. Следствие леммы 4.2.2. Детерминированный ко- нечный автомат, реализующий конечноавтоматное мно- жество L, и детерминированный конечный автомат, по- крывающий это множество, существуют или не существу- ют одновременно; необходимыми и достаточными усло- виями такого существования являются условия теоре- мы 4.2.1. В заключение параграфа рассмотрим вопрос -о реали- зуемости множеств инициальными детерминированными автоматами. Предварительно заметим, что если некоторое множе- ство L реализуется ИДА, то (инициальный) автомат Aq{L) также является детерминированным и при этом Aq (L) совпадает с минимальной формой автомата, реа- лизующего множество L. Автомат Aq(L) может быть построен обычпой минимизацией числа состояний какого- либо ИДА, реализующего множество L. Отсюда становится очевидным, что некоторое множе- ство реализуется ИДА тогда и только тогда, когда L мо- жет быть описано ФС <KQ, КУ, в которой Ко согласовано с К, и автомат Aq{L) в режиме «вход-выход» является детерминированным. Для того чтобы сформулировать условие реализуемо- сти в ИДА множества А, описанного на ЯЭП, введем следующее понятие детерминированности можества KQ. Определение 4.2.5. В ФС <К0, КУ множество Ко явля- ется детерминированным, когда для всякой в-в последо- вательности I е Ко и всякого Xi е X, если существует, то единственный символ z/, s Y такой, что либо Кх{, z/j) е Ко, либо в /с-наборе К существует соотношение, для которого yj) является правой частью. Отметим, что если Ко является детерминированным, то условие Д, рассмотренное выше, выполняется авто- матически, а потому в теореме 4.2.3 пе требуется в явном виде выполнения условия Д.
108 ГЛ. IV. ЯЭП И КОНЕЧНОАВТОМАТНЫЕ МНОЖЕСТВА Теорема 4.2.4. Множество L тогда и только тогда реа- лизуется ИДА, когда L может быть описано ФС <Ао, КУ, в которой Ко является согласованным с ^-набором К и детерминированным. Доказательство. Необходимость. Пусть L реализуется ИДА. Без потери общности можно считать таковым -4q(Z/) Используя алгоритм 5t2 2, построим по Лр(£/)ФС <KL., KL}r, у которой, очевидно, К о будет со- гласованным с /г-набором Кь и детерминированным. Достаточность. Пусть L = IAKo, К) и Ко удов- летворяет условиям теоремы. В автомате Aq(L), постро- енном по ,ФС <KQ, КУ с использованием алгоритма 5t21, все состояния будут финальными, и, кроме того, он будет детерминированным в режиме «вход-выход». От- сюда следует, что множество £(/<0, К) реализуется ИДА. Теорема! доказана. Если нам задано L(K0, К) и Ко не является детерми- нированным, то это множество не может быть реализо- вано ИДА. Действительно, если, пользуясь алгоритмом St2.i, построим по ФС <Х0, КУ реализующий L автомат Aq(L), то он окажется недетерминированным в режиме «вход-выход». По в этом случае и по существует ника- кого ИДА, реализующего это множество 1ЛКо, К), Рис. 4.2.6. е 00 10 00 01 Таблица 4.2.2 10<+ 00 01 00 00 10 10<-> 10 01 00<-> 10 10 Пример 4.2.3. Пусть L = L(K0,K), где Ко и К заданы таблицей (табл. 4.2.2). Как всегда, представим Ко и правые части соотноше- ний /с-набора К в виде дерева (рис. 4.2.5). Легко видеть, что имеет место согласованность Ко с ft-набором К, а по- тому L реализуемо в Aq(L). Кроме того, выполняется
§ 3. РЕАЛИЗУЕМОСТЬ НЕИНИЦИАЛЬНЫМИ АВТОМАТАМИ Ц)9 условие теоремы 4.2.4 (множество KQ детерминировано). Поэтому L реализуемо в инициальном детерминирован- ном автомате, каковым является Aq(L) (рис. 4.2.6). § 3. Реализуемость множеств неинициальными автоматами Не всякое множество L в-в последовательностей, реа- лизуемое конечным автоматом, реализуется псипициаль- ным конечным автоматом, что подтверждается следующей леммой. Лемма 4.3.1. Конечноавтоматное множество L тогда и только тогда реализуется неппициальпым автоматом, когда это множество реализуется автоматом Aq(L), рас- сматриваемым как пеинициальный. Доказательство. Необходимость. Пусть L реализуется пеинициальным конечным автоматом. Вве- дем в рассмотрение множество L*, реализуемое автома- том Aq(L), рассматриваемым как пеинициальный. Оче- видно, L L*. Пусть I реализуется в состоянии автомата Aq(L). D силу связности автомата -4q(L) (свойство 2.5.6 ав- томата Aq(L)'), существует в-в последовательность Z', реализуемая в состоянии q0 и ведущая при этом в со- стояние q{. Поэтому в-в последовательность Г1^ L, а по- скольку L реализуемо неинициальным автоматом, то и I е L. Следовательно, L* s L. Отсюда следует L = £*. Достаточность очевидна. Лемма доказана. Для того чтобы сформулировать условия реализуемо- сти пеинициальным конечным автоматом множества L, заданного па ЯЭП, опишем следующее условие Н. При этом символом Z(1) будем обозначать в-в последователь- ность, являющуюся концом в-в последовательности Z и имеющую длину g(Z(1)) = g(Z) — 1. Определение 4.3.1. L(KQ, К) удовлетворяет условию Н, если для всякой в-в последовательности Z е L(K0, К) та- кой, что g(Z) iT^ol2 — + 1, в-в последовательность Z(i) содержится в 1АК^ К). Теорема 4.3.1. Множество L реализуемо неинициаль- ным автоматом тогда и только тогда, когда L может быть описано с помощью ФС У которой Ко согласо- вано с Я, и одновременно выполняется условие Н.
110 ГЛ. IV. ЯЭП И КОНЕЧНО АВТОМАТНЫЕ МНОЖЕСТВА Доказательство. Необходимость условий теоре- мы очевидна. Достаточность. Предположим, что условия тео- ремы выполнены. При этом L(K0, К) реализуется иници- альным автоматом Aq(L). Покажем, что автомат Лр(Л), рассматриваемый как неинициальный, реализует то же множество L(K$, К). Обозначим множество в-в последо- вательностей, реализуемое неинициальным автоматом Aq(L), через L*. Очевидно, IAKq, К) ^L*. Из условия Н следует, что все в-в последовательности длины не более |Ло12 — 17<01, которые реализуются из со- стояний автомата Aq(L), достижимых из qQ в-в последо- вательностями длины 1, также содержатся в L. Пред- положим, что существуют состояние q, достижимое из q0 в-в последовательностью I' длины 1, и в-в последова- тельность Z, реализуемая из этого состояния, такая, что g(l) > IAol2'— IXol и 1&L (т. е. I не реализуется из q0). Кроме того, будем полагать, что среди в-в последователь- ностей, реализуемых из состояния q и обладающих та- кими же свойствами, не существует более короткой, чем в-в последовательность I. Рассмотрим реализацию последовательности I из па- ры состояний (g0, q). Если некоторая в-в последователь- ность I реализуется в q (и ведет при этом в q) и не реализуется в q^ то пара, в которую ведет I из (g0, q\ будет обозначаться (*, q). Очевидно, что среди множе- ства пар, через которые I ведет при реализации из (g0, д), нет пар вида (qk, qk\ так как иначе I реализовывалось бы из q0. Кроме того, очевидно, лишь последняя пара из этого множества имеет вид (*, q), где £ —состояние, в которое I ведет из д0. В противном случае существовал^! бы в-в (последовательность, реализуемая в q, не принад- лежащая множеству L и более короткая, чем в-в после- довательность I (некоторое собственное начало в-в после- довательности I). Рассматривая начало Z(1) в-в последовательности Z, имеющее длину g(ZU)) = g(Z) — 1 > |7Г0|2 — |#0| > п2 — п (п — число состояний Aq(L), и множество пар состояний, через которые Z(1) ведет из (g0, q\ обнару- живаем, что среди этих пар по крайней мере одна пара встречается не менее двух раз. Пусть таковой является пара (д„ д;). Выбрасывая из Z ту часть, которая ведет в (дй qj) из (gf, q^, получаем в-в последовательность,
§ 3. РЕАЛИЗУЕМОСТЬ НЕИНИЦИАЛЬНЫМИ АВТОМАТАМИ Щ которая реализуется в q, по не реализуется в qQ и имеет длину, меньшую, чем g(Z). Это противоречит определе- нию I. Отсюда следует, что множество в-в последователь- ностей, реализуемых пз состояний Лр(А), достижимых из до в-в последовательностями длины 1, содержится в L. Из доказанного следует, что для любого l^L Z(1) так- же содержится в L, по это означает, что любой конец в-в последовательности пз L сам содержится в L. Отсюда в-в последовательности, реализуемые из произвольного состояния автомата Hq(L), будут являться концами в-в последовательностей из L и, следовательно, сами будут принадлежать L (реализовываться из qQ). Таким образом, L* s L. Суммируя сказанное, получаем равенство L = L*. Теорема доказана. Пример 4.3.1. Для множества L = IAKq, К), рассмот- ренного в примере 4.2.2, выполнено условие Я, а пото- му справедлива теорема 4.3.1, и автомат Aq(L) (см. рис. 4.2.4), рассматриваемый как неинициальный, реали- зует то же самое L.
ГЛАВА V МНОЖЕСТВА С КОНЕЧНОЙ ПАМЯТЬЮ § 1. Модель объекта с конечной памятью I Из определения конечного автомата следует, что в за- дании зависимости между входными и выходными пере- 1 менными необходимо участие еще одной переменной — «состояния». В то время как входные и выходные пере- менные при исследовании объекта, являющегося «черным ящиком», можно наблюдать и установить их природу, состояние объекта ненаблюдасмо, и определить его при- роду весьма затруднительно. Аналогичная ситуация воз- никает при синтезе дискретных управляющих устройств t по диалогу между «заказчиком» и «исполнителем»: о том, что подается па вход устройства и что при этом должно наблюдаться па выходе, «заказчик» сообщает «исполни- телю», а о состояниях устройства в процессе переработ- ки входных слов в выходные он не имеет представления. Теоретически можно записать зависимость между вход- ными и выходными переменными без привлечения поня- тия «состояние», например, в виде дерева, но это дерево будет бесконечным. Очевидно, что понятие «состояние» । дает возможность конечным образом описать зависимость между бесконечными множествами входных и вы- ходных слов. В этом его положительное значение, ни в какой степени, однако, пе облегчающее положение ис- ; • следователя в упомянутых выше двух ситуациях. По- ; : этому попытаемся рассмотреть автоматную модель тако- го объекта, зависимость между входными и выходными переменными которого можно записать как функцию ко- нечного числа переменных без привлечения каких-либо ; ‘ переменных, принимающих значения, отличные от вход- ных и выходных символов [271. Иными словами, для та- кого объекта существует функция y(z) =/(#U-t]), ..., x(t-i), x(t), yU-Tp, ..., yU-D), где y(t) — значение выходной переменной в момент вре- |р меня t; x(t) — значение входной переменной в момент |
§ 1.МОДЕЛЬ ОБЪЕКТА С КОНЕЧНОЙ ПАМЯТЬЮ ЦЗ времени t\ ц — целое положительное число. Любой из аргументов функции /, кроме какого-либо одного значе- ния входной переменной, может быть несущественной переменной. Абстрагируясь от частностей, можно сказать, что предметом нашего изучения будет поведение автомата Г, изображенного па рис. 5.1.1. Этот автомат состоит из управляющего устройства, являющегося функциональ- ным преобразователем (ФП), ленты ввода (ЛВ), с кото- рой только считываются написанные на ней символы из алфавита X, рабочей ленты (ЛР), с которой управ- ляющее устройство считывает и па которой пишет сим- волы из алфавита У. Автомат одновременно считывает т| + 1 символов с ленты ввода и т] символов с рабочей ленты и пишет один символ в текущую ячейку t рабочей лепты, после чего обе ленты сдвигаются па одну ячейку влево. Работа всегда на- чинается из начального состояния, в котором ав- томат имеет возможность прочитать лишь символ па ленте ввода, а рабо- чая лепта при этом пуста. Работа прекращается, ког- да if-я ячейка па лепте ввода является пустой, либо когда (£—1)-я ячейка па рабочей лепте является пустой, а (Z — 1)-я ячейка па лепте ввода непуста, т. е. либо когда прекращается по- дача входного слова, либо когда это слово недопустимо в автомате. По любой функции / всегда можно построить авто- мат Т и, наоборот, наблюдая работу всякого автомата 7, можно выписать функцию /. Определим Т как тройку Т == {X, У, /}. Определение 5.1.1. Множество L^X* представимо в автомате Т множеством Уф — У, если оно состоит из та- ких и только таких слов, что автомат 71, прочитав слово I е L на ленте ввода, напишет в ячейке с номером t = == g(Z) рабочей ленты символ из множества Уф. Сопоставив автомат Т с машиной Тьюринга [33], можно сделать заключение о том, что в таком автомате множеством Уф У представимы только регулярные мно- жества в алфавите X L43J. Это позволяет сделать вывод, что моделью автомата Г, представляющего некоторое 8 Конечные автоматы
114 ГЛ. V. МНОЖЕСТВА С КОНЕЧНОЙ ПАМЯТЬЮ множество L символами на выходе, всегда может быть конечный автомат. С другой стороны, для любого регулярного множе- ства L, очевидно, можно построить автомат Г, в котором оно будет представимо. Более того, соответствующим подбором алфавита У и множества Уф можно добиться, чтобы для автомата Г, представляющего Л, число ц было равно 1. Этого можно достичь, например, положив |У| == == д, где п — число состояний автомата Aq(L), По всякому конечному автомату Л, в котором неко- торое множество L представимо множеством Уф, можно построить конечный автомат В, в котором L представимо финальными состояниями (автомат Мура). Можно ска- зать, что переход от автомата А к автомату В сопровож- дается переходом от множества Уф к множеству Уф = {1) с У = {О, 1), так как финальному состоянию можно по- ставить в соответствие выходной символ 1, а кофиналь- ному 0. При таком ограничении на алфавит У и мно- жество Уф уже не по всякому регулярному множеству можно построить автомат Г. Пример 5.1.1. На рис. 5.1.2 изображен автомат Aq{L) с начальным состоянием д0 и финальными q2, такой, что множество L, представимое в нем финальными со- стояниями, непредставимо в .автомате Т при условии, что У = {0, 1), Уф = {1}, поскольку при любом фиксиро- ванном числе т] невозможно по концу 1 ... 10 допусти- мого в Aq(L) и поданного на вход автомата Т слова определить, какой символ будет на- 7 печатан в ячейке t рабочей ленты. /Л Определение 5.1.2. Множество, представимое в автомате Т с выход- ил ным алфавитом У = {0, 1} множе- р/Х* \ ством Уф = {1}, назовем множеством 1 _/ 1' с конечной памятью (МКП). Определение 5Л.З. Конечный ав- томат, в котором представимо или Рис. 5.1.2. которым реализуется МКП, назовем автоматом с конечной памятью (АКП). Далее, везде, говоря об автомате Г, будем иметь в виду, что у него У = {0, 1}, а Уф = {1}. Рассмотрим подробнее функцию /, определяющую ра- боту автомата Т. Если £ £ X* представимо в автомате Г,
§ 1. Рюдель объекта с конечной памятью 115 то y(g(Z)) = 1 (последний выходной символ равен 1) тог- да и только тогда, когда поданное на вход автомата Т слово l^L. Если g(l) г|, то считаем, что па вход авто- мата Т подано слово А ... А1 длины ц + 1. Кроме того, ясно, что если функция / для слова 1^Х* не определе- на, то опа пе определена и для любого слова Г е X*, началом которого является слово I. Определение 5.1.4. Число ц назовем памятью МКП (пли АКП), если пе существует для этого МКП автома- та Т с параметром гр < ц. Будем в дальнейшем считать, что параметр ц функ- ции f удовлетворяет приведенному определению. Поскольку представимое в автомате Т множество L регулярно, то L представимо и в копечпом автомате. Ниже дан алгоритм построения графа автомата Aq(L) по автомату Т (пли по функции /). Входной X и выходной У алфавиты некоторого про- межуточного между автоматом Т и автоматом Aq (L автомата А совпадают с соответствующими алфавитами автомата Т. Множеством состояний автомата объявим все множество слов длины не более ц в алфавите X X У. Начальным состоянием считаем слово (А, А). Отображение h (см. § 1 гд. I) определяется следую- щим образом. Каждой паре ($, х), где $ = (zi ... Z/i ... Z/n), ставится в соответствие пара ($', у') такая, что у' есть значение функции / при x(t — ц) = ... ..., x(t — 1) = x^ x(t) = х, у (Л — ц) = i/ь ..., y(t — 1) = Уъ a s' — конец длины ц слова / = (#! ... х,}х, у{ ... уцу'). Если же g(Z) т), то s' = Z. С учетом указанного выше соответствия между состояниями и словами можно ска- зать, что области определения функций f и h совпадают. В получившемся автомате А, по построению, множество L представимо единицей. Очевидно, что в любое состоя- ние (xt ... Хть yi ... уц) — s ведут из начального те и только те слова, концом каждого из которых является слово 1К = (xi ... хц, у{ ... уп). Следовательно, всякое со- стояние s автомата А обладает тем свойством, что либо все слова, ведущие в 5, представимы в А единицей, либо все они представимы в автомате А нулем. Все состояния, для которых у' = 1, объявим финальными. Автомат Aq(L), очевидно, получится, если в построенном авто- мате: 1) отбросить состояния, недостижимые из началь- ного; 2) отбросить те нефинальпые состояния, из которых 8*
116 ГЛ. V. МНОЖЕСТВА С КОНЕЧНОЙ ПАМЯТЬЮ недостижимы финальные; 3) объединить неотличимые состояния. При этом можно считать, что L представимо в Aq(L) не только финальными состояниями, но и еди- ницей па выходе. Пример 5.1.2. Проиллюстриру- ем алгоритм построения автомата Aq(L) по функции /, заданной в виде следующей таблицы (табл. 5.1.1). В ней выписаны лишь те наборы аргументов, для которых / определена. Таблица 5.1.1 (г—л» 7 'и X (О 04 (1— 1 у (О Л Л 0 Л Л 1 Л Л 1 Л Л 0 Л 0 0 Л 1 1 Л 1 0 Л 0 1 Л 1 1 Л 0 0 0 0 0 0 1 1 0 0 0 1 0 1 0 0 0 1 1 0 0 0 1 1 0 0 0 0 1 1 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 0 0 0 0 1 1 1 1 1 1 0 0 0 1 1 1 0 0 1 0 1 1 0 1 1 0 0 1 1 1 0 0 0 1 1 0 0 0 1 1 1 1 1 1 1 1 1 0 1 1 0 Рис. 5.1.3. В строящемся автомате А X = {0, 1), У = {0, 1). В ка- честве состояний, очевидно, можно взять не все слова длины не более Рис. 5.1.4. 2 в алфавите XX У, а лишь те, для которых функция / определена. Авто- мат А изображен на рис. 5.1.3, где начальному состоянию соответствует двойной кружок, а финальные состоя- ния заштрихованы (па рис. 5.1.3 отсут- ствует переход по вход-выходной паре 00 из состояния (01, 11) в состояние (10, 10)). Объединив неотличимые состояния и переобозначив их, получим граф автомата Aq(L), изображенный па рис. 5.1.4.
§ 2. СВОЙСТВА МНОЖЕСТВ С КОНЕЧНОЙ ПАМЯТЬЮ Ц7 § 2. Свойства множеств с конечной памятью В этом параграфе будут выявлены некоторые свой- ства множеств и автоматов с конечной памятью. Необходимое и достаточное условие, при котором ре- гулярное множество является МКП, сформулировано в теореме 5.2.1. Но предварительно дадим определение мо- нопетелыюго автомата и докажем лемму 5.2.1. Определение 5.2.1. Назовем автомат монопетельным, если не существует такого слова I в алфавите XX К и таких состояний s„ Sj автомата ($£=/=<$;), что I перево- дит этот автомат из Si в st, а из Sj в Sj. Замечание. Для того чтобы можно было приме- нить приведенное определение к автомату, представляю- щему множество L финальными состояниями, будем счи- тать, что каждому финальному состоянию приписан вы- ходной символ единица, а каждому нефинальному — нуль. Алгоритм проверки монопетельности следует из лем- мы 5.2.1. Лемма 5.2.1. Автомат с п состояниями является моно- петельпым тогда и только тогда, когда всякое слово I е е= (XX У)* длины g(Z) = п(п — 1)/2, переводящее автомат из состояния Si в Sj, таково, что если оно переводит авто- мат ИЗ СОСТОЯНИЯ Sh В Sr, ТО Sr = Sj. Доказательство. Необходимость. Пусть ав- томат с п состояниями является монопетельным. Пред- положим, что существует слово I длины лг(лг— 1)/2, пере- водящее автомат из состояния в состояние Sj, такое, что оно переводит автомат из состояния sk в состояние sr, но sr ¥* Sj. Рассмотрим пары состояний, через которые проходит слово I, исходя из пары (Si, sk) и закапчиваясь в паре (sj, Sr). Поскольку число неупорядоченных пар состояний равно п(п —1)/2, то среди рассматриваемых нар хотя бы одна пара встретится по крайней мере два раза. Пусть это будет пара (sa, sb). Тогда, очевидно, су- ществует слово V, переводящее автомат из состояния sa в sa, а из состояния sb в sb, т. е. автомат не является мопопстсльпым, что противоречит условию. Достаточность. Пусть выполнены условия лем- мы, и предположим, что при этом автомат не является монопетельным. Тогда существуют слово I п такие со- стояния Si и Sj автомата (s^Sj), что I переводит автомат из в s^ а пз Sj в Sj. Слово I по условию не может иметь длину п(п —1)/2. Но если оно имеет длину, отличную
118 ГЛ. V. МНОЖЕСТВА С КОНЕЧНОЙ ПАМЯТЬЮ от п(п— 1 )/2, то, очевидно, существует слово V длины тг(лг —1)/2, переводящее автомат пз состояния $t в со- стояние sj и из состояния sh в состояние sr такие, что 5r=#5j. Это противоречит условию. Лемма доказана. Теорема 5.2.1. Множество L^X* тогда и только тогда является МКП, когда Aq(L)— мопопетельпый автомат. Доказательство. Необходимость. Пусть L^X* является МКП, т. е. оно представимо единицей в автомате 7, работа которого определяется функцией /. Предположим, что AQ(L) — по мопопетельпый. Тогда (поскольку L представимо в Aq(L) не только финаль- ными состояниями, по и единицей) существуют слова (х'х, у'у) и (х” ху у"у) в алфавите XX У, где g(x, у) > > т] и х'¥*х", переводящие Aq(L) из начального состоя- ния соответственно в такие состояния qt и qj (qj^qd, что реакция автомата Aq(L), находящегося в состоянии q^ на некоторый символ Xi будет отличаться от реакции на этот же символ автомата Aq(L), находящегося в со- стоянии qj. Значит, не существует функции / с памятью т), а это противоречит условию. Достаточность. Пусть Aq (L) — мопопетельпый автомат. Тогда для всякого слова Ле(ХХУ)*, перево- дящего Aq(L) из начального состояния в состояние qi4 и всякого слова Ле(ХХУ)*, переводящего Aq(L) из начального состояния в состояние q^ где g(Z) 1)/2, в соответствии с леммой 5.2.1 справедливо равенство = = qj. Следовательно, по L всегда можно построить функ- цию / и автомат Т. Теорема доказана. На основании теоремы 5.2.1 будем считать, что пред- метом нашего исследования в этом параграфе является всякое такое регулярное множество, для которого Aq (L) — мопопетельпый автомат. Из леммы 5.2.1 и теоремы 5.2.1 вытекают следствие 5.2.1 и алгоритм установления величины памяти ц. Следствие 5.2.1. Если МКП представимо финаль- ными состояниями в автомате с п состояниями, то п n(n— 1)/2. Очевидно, что основным этапом определения памяти ц некоторого автомата является проверка того, является ли он АКП. Удобным средством для этого является пм- пликативный граф, с помощью которого устанавливается
§ 2. СВОЙСТВА МНОЖЕСТВ С КОНЕЧНОЙ ПАМЯТЬЮ ЦО монопетелыюсть автомата. Однако следует помнить, что это средство безоговорочно может быть применено лишь к автомату Aq(L), поскольку ниже будет показано, что произвольный АКП может и не быть монопетельным. Определение 5.2.2. Импликативный граф состоит из вершин и дуг, определяемых следующим образом: 1) Вершина (j, ;), i¥*j\ соответствует неупорядочен- ной паре состояний $г, sjt 2) Ребро, помеченное вход-выходным символом од, направлено из вершины (г, /) к вершине (р, q), если в автомате либо из состояния существует переход по ху в sp и из Sj в sq, либо из состояния S» существует переход ПО Ху В Sq И ИЗ Sj в sp. Ориентированные пути в импликативном графе могут образовывать циклы. Из предыдущего ясно, что автомат Aq(L) является АКП тогда и только тогда, когда в его импликативном графе нет циклов. Память же АКП равна числу вершин в наиболее длинном ориентированном пути. Отметим важное для дальнейшего свойство МКП: если бесконечное множество L является таким МКП, что функция / определена на всех наборах входных перемен- ных, то в этом случае всякое слово I е X* является на- чалом некоторого слова из L, а автомат Aq(L) является полностью определенным. Это свойство следует из определения МКП. Теперь рассмотрим частный случай МКП. Определение 5.2.3. Будем говорить, что МКП не за- висит от выхода, если работа автомата Т определяется функцией y{t) = /Сг(£ — т|), ..., x(t — 1), x(tY). Определение 5.2.4. Назовем автомат монопетельным по входу [54], если не существует такого слова I в алфа- вите X и таких состояний s, и Sj (Sj Ф Sj) автомата* что I переводит автомат из состояния в состояние $<, а из Sj В Sj. Теорема 5.2.1'. Множество А^Х* тогда и только тог- да является МКП, не зависящим от выхода, когда авто- мат Aq (L) — монопетельный по входу. Доказательство аналогично доказательству теоремы 5.2.1. Очевидно, что всякий монопетельный по входу авто- мат является монопетельным, но не наоборот.
120 ГЛ. V. МНОЖЕСТВА С КОНЕЧНОЙ ПАМЯТЬЮ Теорема 5.2.2. Если не зависящее от выхода МКП представимо в полностью определенном автомате -4q(L) с п состояниями, то Т] п — 1. Доказательство. Оно по сутп дела совпадает с доказательством леммы 11 в [221. Будем говорить, что состояния qi и автомата Aq(L) неотличимы словами длины к (/ь = 0, 1, ...), если любое входное слово I дли- ны к переводит Aq(L) как из состояния qh так и из состояния q, в одно и то же состояние qk* Очевидно, что бинарное отношение неотличимости состояний словами длины к есть отношение эквивалентности. Следовательно, этому отношению соответствует некоторое разбиение Pk множества состояний S автомата Aq(L) на непересекаю- щиеся классы. Поскольку состояния, неотличимые слова- ми длины к, неотличимы словами длины к + 1, то раз- биение Ph является подразбиением разбиения Мож- но считать, что т] > 1 и и > 2, так как в противном слу- чае лемма очевидна. Покажем, что для любого к {к == = 0, 1, ..., t — 1) существует пара состояний, которые неотличимы словами длины к + 1, по не являются неот- личимыми словами длины к. Согласно определению па- мяти т] и условиям т] > 1, п>2 существуют состояния qh qj и слово 1 = Хц ... такие, что I переводит автомат Aq(L) из состояния qi в qh, а из состояния в qr, и qk^qr. Рассмотрим при произвольном к (&== = 0, 1 ..., 1) состояния qk и qr> в которые переходит Aq(L) соответственно из и д, при подаче на его вход слова Г = хц ... Xi{t-k-i}, являющегося началом слова I. Очевидно, что состояния qk и qr неотличимы словами длины к + 1, но не являются неотличимыми словами дли- ны к.* Таким образом, разбиение Pk является собственным подразбиением разбиения Ph+i U = 0, 1, ..., t — 1). Раз- биение Рп состоит из одного класса, так как любые два состояния находятся в отношении неотличимости словами длины т). Разбиение же Ро состоит из п одно- элементных классов. Таким образом, т] С п — 1. Теорема доказана. Рассмотрим, как соотносятся МКП и определенные события, введенные в § 2 гл. III. Очевидно, что всякое ОС является МКП, не завися- щим от выхода, и представимо в полностью определенном автомате. Но не всякое такое МКП является ОС.
§ 2. СВОЙСТВА МНОЖЕСТВ С КОНЕЧНОЙ ПАМЯТЬЮ 121 Теорема 5.2.3. Если множество L X* является МКП, не зависящим от выхода и представимым в полностью определенном автомате, то оно является ОС тогда и только тогда, когда выполняется следующее условие: для вся- кого 1&L длины g(Z) =С т) всякое длины g(Z) +1 принадлежит L. Доказательство. Необходимость. Пусть мно- жество L с памятью т) является ОС Х*А. Множество L, очевидно, не изменится, если из множества А удалить такие слова Ц12, что Ц^А и 12^А. Тогда L будет опи- сываться выражением Х*Л' таким, что у всякого слова 1^А' его конец длины g(l) — 1 пе принадлежит L. В этом случае ц = £(?), где Г —самое длинное слово из Л', и необходимость условий теоремы становится оче- видной. Достаточность. Пусть выполнены условия тео- ремы. Тогда множество L можно описать выражением Х*Л, где А — множество слов длины не более т], принад- лежащих L. Теорема доказана. Аналогично тому, как определялись монопетельный по входу автомат и МКП, не зависящее от выхода, можно определить монопетельный по выходу автомат и МКП, не зависящее от входа. МКП не зависит от входа, если функция / имеет вид z/(i) = y{t — тр, ..., y(t - D). Рассмотрим связь между множествами, представимы- ми в автономных автоматах, и МКП. Напомним, что автономным называется конечный автомат, у которого значение входной (переменной фиксировано [1], иными словами, для такого автомата |Х| = 1. Интересно отме- тить, что автономные автоматы — это те и только те автоматы, которые могут быть построены из одних задержек, без использования логических преобразовате- лей [51]. Теорема 5.2.4. Множество L представимо в автоном- ном автомате тогда и только тогда, когда для L суще- ствует функция y(t) = f(y(t — ц), ..., y(t—D). Доказательство. Необходимость. Если L представимо в автономном автомате, то этот автомат, очевидно, является монопетельным. Следовательно, для
122 ГЛ. V. МНОЖЕСТВА С КОНЕЧНОЙ ПАМЯТЬЮ L можно выписать функцию /, в которой значения вход- ной переменной несущественны. Достаточность. Если для L существует указан- ная в условии теоремы функция /, то в построенном по ней автомате входным символом в каждый момент вре- мени является весь алфавит X, т. е. можно считать в автомате входным алфавитом X' = {X} мощности IX'I == 1. Теорема доказана. В заключение отметим тот очевидный факт, что конеч- ное множество всегда является МКП. § 3. Свойства МКП, реализуемых автоматами Если множество L реализуется автоматом, то всякое начало слова пз L само является словом пз L. Если же при этом L является МКП, то при подаче любого I <= е(ХХУ)* на вход автомата 7\ представляющего L, на его выходе либо появится единица, либо ничего не по- явится. (Здесь и далее считаем, что входной алфавит ав- томата Т есть XX У.) Поэтому справедливо утверждение, что МКП, реализуемое конечным автоматом, является не зависящим от выхода МКП, представимым в частично определенном автомате Ал(Л).В этом случае Т = {XX У, {О, 1}, /}. Ниже у* — некоторое подмножество У, т. е. г/* е 2У. Определение 5.3.1. Для автомата, реализующего мно- жество L, существует функция памяти F, если существует целое положительное число ц, не зависящее от х, у, t, такое, что зависимость между входными и выходными символами в этом автомате можно записать в виде y*(t) = F(x(t — ц), ..., x(t — 1), x(t), ytt — ц), ..., y(t — 1)). В дальнейшем предполагаем, что число ц является минимальным из множества чисел, удовлетворяющих при- веденному определению. Замечание. Функция F внешне очень похожа на функцию /, однако, в отличие от функции /, аргументами которой являются символы, написанные как на ленте ввода, так и на рабочей ленте автомата Г, аргументами функции F могут быть лишь символы, написанные па ленте ввода этого автомата. Функция F позволяет по концу ..., х^ уь ..., г/ц) любого слова I L и символу х определить все множе- ство реализуемых автоматом слов вида Z (я,//$), где у\^ у* = {yi, ..., I/'], a если положить х{ =
§ 3. СВОЙСТВА МКП, РЕАЛИЗУЕМЫХ АВТОМАТАМИ 123 ~ х(1 — ц), ..., л:ц = х(г—1), x = x(t), Vi =* y(t — |1), ... • ••, Z/b = y(t— 1), y* = y*(t). При g(Z) < ц полагаем, что значение функции F определяется по слову А ... А длипы ц п некоторому символу х^Х. Функция памяти F является скорее характеристикой множества, реализуемого автоматом, чем самого этого автомата, так как очевидно, что если для некоторого ав- томата, реализующего множество L, существует функция памяти F, то эта функция существует и для любого автомата, реализующего L. Теорема 5.3.1. Реализуемое автоматом множество L тогда и только тогда является МКП, когда для этого автомата существует функция памяти F. Доказательство. Необходимость. Пусть L есть МКП, т. е. Aq(L)- монопетельный автомат. Тогда существует число ц < п(п — 1 )/2, где п — число состоя- ний автомата Aq (L) такое, что по концу длины ц всякого слова L при g(Z) > ц или по самому слову Z при g(Z) < т| можно однозначно определить состояние д, в которое переходит Aq(L) из начального состояния под действием слова Z. Следовательно, по концу длины ц сло- ва Z и следующему входному символу х можно опреде- лить все множество возможных выходных реакций авто- мата, находящегося в состоянии д, на символ ж, т. е. для Aq(L) существует функция памяти F при ц = ц. Достаточность. Пусть для автомата, реализую- щего L, существует функция памяти F. Предположим, что не является монопетельным автоматом. Тогда существуют слова Ц и ZjZ, где g(Z) > ц, переводящие A*q(L) из начального состояния в отличимые состояния qh qh причем реакцией автомата, находящегося в состоя- нии qh на некоторый символ х е X является множество z/i, а реакцией автомата, находящегося в состоянии q^ на символ х является либо либо А, т. е. функ- ции F пе существует. Противоречие, доказывающее теорему. Из доказательства теоремы 5.3.1 следует, что множе- ство, реализуемое любым монопетельным автоматом, яв- ляется МКП с памятью р, где ц — число, фигурирующее в определении функции F. Пример 5.3.1. На рис. 5.3.1 изображен автомат Aq{L) с начальным состоянием qQ, реализующий некоторое
124 ГЛ. V. МНОЖЕСТВА С КОНЕЧНОЙ ПАМЯТЬЮ множество L. Этот автомат пе является монопетельным, поэтому L не является МКП и, следовательно, для этого автомата не существует функции памяти F, Действитель- но, по концу (00)г, где 0<г<°о, слова Z(00)r е L (напри- оо оо меР> ПРП / = или /=1011) невозможно ЛА ЛЛ определить, принадлежит ли множеству L 10 слово Z(00)r10 или слово Z(00)rll. Однако не всякий автомат, реализующий МКП, является мопопетелытым. На рис. 5.3.2 Рис. 5.3.1. приведен пример неипициальпого пе мопо- петелыюго детермшшроваппого автомата, которым реализуется множество L, являю- щееся МКП. Действительно, построив по этому автомату автомат (рис. 5.3.3), убеждаемся, что он монопе- тельный. Функция памяти F, так же как и функция /, может рассматриваться в качестве средства описания МКП, реа- лизуемого автоматом. С помощью алгоритма, аналогично- го алгоритму построения конечного автомата по функ- ции /, можно построить по функции F автомат, для кото- рого функция F является функцией памяти. Теорема 5.3.2. Для того чтобы МКП, реализуемое ав- томатом, было реализуемо инициальным детерминирован- ным автоматом, необходимо и достаточно, чтобы областью значений функции памяти было множество У. Рпс. 5.3.2. Рис. 5.3.3. Доказательство. Необходимость. Пусть МКП L реализуется инициальным детерминированным автоматом; тогда и автомат Aq(L), является инициаль- ным детерминированным автоматом, реализующим L, т. е. любое слово I L, если продолжается в L по неко- торому символу х, то единственным образом. Следователь-
§ 3. СВОЙСТВА МКП, РЕАЛИЗУЕМЫХ АВТОМАТАМИ 125 но, значениями функции F, построенной по Aq(L), мо- гут быть лишь y(t), но не Достаточность. Пусть значениями функции па- мяти F, описывающей множество L, реализуемое автома- том, являются символы y(t), а не y*(t). Тогда при по- строении конечного автомата по функции F пе возник- нет ситуации, когда из одного и того же состояния будут выходить дуги, помеченные одним и тем же входным символом. Таким образом построенный инциальный авто- мат окажется детерминированным. Теорема доказана. Рассмотрим оценку памяти для частного случая МКП, реализуемых автоматами. Теорема 5.3.3. Если для полностью определенного де- терминированного автомата Лр(А), реализующего неко- торое множество Z, существует функция памяти F, не зависящая от выхода, т. е. такая, что y*(t) = F(x(t — yi),... ..., x(t — l), x(t)\ то —1, где ft —число состояний автомата Доказательство. Предварительно покажем, что из условия теоремы следует мопопетельпость по входу автомата Aq(L). От противпого, тогда из определения автомата, монопетельпого по входу, следует, что суще- ствуют два слова Ц1^Х* и Z2Z^X*, где и Z2 не нахо- дятся в отношении QL и g(l) > n(n — 1)/2, переводящие Aq(L) из начального состояния в состояния qi и соответственно. Причем при подаче па вход ав- томата Aq(L), находящегося в состоянии gf, некоторого символа х^Х па выходе появится символ а при по- даче того же символа на вход автомата, находящегося в состоянии qh на выходе появится символ у* (у^^уТ) т. е. функции F пе существует, что противоречит усло- вию теоремы. Таким образом, Aq(L) является монопе- тельным по входу. Вычеркнув все выходные символы, которыми помечены дуги Aq(L), получим некоторый автомат Л, обладающий тем свойством, что он является мопопетельпым по входу и полностью определенным. Из этого следует, что для того, чтобы знать, в каком состоянии находится автомат Л, достаточно знать конец длины ц слова, поданного на вход автомата Л. Длина этого конца, очевидно, не зави- сит от расстановки финальных состояний или выходных символов, и в соответствии с теоремой 5.2.1' и теоремой
126 ГЛ. V. МНОЖЕСТВА С КОНЕЧНОЙ ПАМЯТЬЮ 5.2.2 — 1. Кроме того из теоремы 5.3.1 следует, что р = 1]. Теорема доказана. Далее,' в этом параграфе рассматриваются лишь такие МКП, которые могут быть реализованы пеиницпальнымп автоматами. Теорема 5.3.4. Множество Z, реализуемое автоматом и являющееся МКП с памятью ц, тогда и только тогда может быть реализовано непницпальным автоматом, ког- да конец Г длины g(l) — 1 всякого слова l^L длины g(l) С ц + 1 принадлежит L. Доказательство. Необходимость очевидна. Достаточность. Пусть выполнены условия теоре- мы. Тогда из алгоритма построения автомата Aq(L) по функции F следует, что и слово h длины ц + 1, и слово Г ведут из начального состояния в одно и то же состо- яние автомата Aq(L), т. е. hQbl'- Поскольку отношение Ql является правым инвариантом, то для любого Z" е(ХХК)* имеет место IiTQlI'I". Следовательно, любой конец слова hl" L сам принадлежит L. Так как h — произвольное слово длины ц +1, такое, что hе Л то теорема доказана. Определение 5.3.2. Неинициальный детерминирован- ный полностью определенный автомат назовем G-автома- том, если для пего существует функция памяти F такая, что областью значений этой функции, при условии при- менения ее к реализуемым этим автоматом словам длины не менее ц, является Y. Если в этом определении снять требование полной определенности автомата, то получим определение ча- стичного G-автомата. Замечание. G-автомат назван в [7] автоматом с конечной памятью. Теорема 5.3.5. Неинициальный детерминированный автомат является частичным G-автоматом тогда и только тогда, когда он является монопетельным. Доказательство. Необходимость. Предпо- ложим, что частичный G-автомат, реализующий множе- ство Z, не является монопетельным. Тогда существует слово I е L длины более ц, такое, что значением функции F на множестве таких аргументов, из которых составлен конец длины ц слова Z, будет некоторое что про- тиворечит определению частичного G-автомата. Достаточность. Пусть неинициальный детерми- нированный автомат является монопетельным. Тогда су-
§ 3. СВОЙСТВА МКП, РЕАЛИЗУЕМЫХ АВТОМАТАМИ 127 ществует такое число ц, что, какое бы слово I е Л, где g(Z) > р, реализуемое этим автоматом, ни взять, оказы- вается, что если I переводит автомат из состояния Si в Sj, а из состояния в то т. е. для этого ав- томата существует функция памяти F, фигурирующая в определении частичного G-автомата. Теорема доказана. Рассмотрим вопрос о том, когда некоторое множество реализуется в G-автомате. Интересно отметить, что эта задача решается с помощью так называемого свойства полной безвозвратности, являющегося усилением свойства безвозвратности (см. § 2 гл. IV). Определение 5.3.3. Множество L называется гилловым, если оно реализуемо в пеинпциальном полностью опре- деленном автомате и одновременно существует целое ц такое, что для всякой в-в последовательности L длины более ц и для всякого Xi X существует единственный Y такой, что Кхц yj) содержится в L. Замечание. В G-автоматах реализуются все те и только те множества в-в последовательностей, которые являются тилловыми. То, что множество, реализуемое в G-автомате, является тилловым, очевидно. Обратно, пусть L — гпллово множество. Тогда автомат Aq (L) как не- иницнальный также реализует L, но в этом случае он обладает свойством безвозвратности, иначе в L были бы сколь угодно длинные неоднозначно продолжаемые в-в последовательности. Отсюда в силу леммы 4.2.1 следует, что L реализуемо в детерминированном автомате, а имен- но в G-автомате, поскольку иначе в L были бы сколь угодно длинные неоднозначно продолжаемые в-в после- довательности. Определение 5.3.4. Автомат А обладает свойством пол- ной безвозвратности, если в нем не существует состояния s такого, что одновременно: 1) существует в-в последовательность 1^е, которая реализуется в s и ведет при этом снова в $; 2) $ является недетерминированным состоянием или существует недетерминированное состояние s', достижи- мое из s. Очевидно, если А обладает свойством полной безвоз- вратности, то А обладает свойством безвозвратности. Лемма 5.3.1. Множество L, реализуемое неинпцпаль- ным автоматом, реализуемо в G-автомате тогда и только тогда, когда автомат Aq(L) обладает свойством полной безвозвратности и является полностью определенным.
128 ГЛ. V. МНОЖЕСТВА С КОНЕЧНОЙ ПАМЯТЬЮ Доказательство. Необходимость. Пусть L реализуемо в G-автомате. Тогда L реализуемо в автомате Лр(£), рассматриваемом как неиппциальпый. Если авто- мат Aq(L) пе обладает свойством полной безвозвратно- сти, то в L существуют сколь угодно длинные неодно- значно продолжаемые в L в-в последовательности, а по- тому L пе может быть гилловым множеством. Это про- тиворечие показывает, что автомат Aq (L) обладает свой- ством полной безвозвратности. Полная определенность автомата AQ(L) является следствием полной определен- ности G-автомата. Достаточность. Пусть L реализуется в неипици- альном автомате и автомат Aq(L) обладает свойством полной безвозвратности и является полностью определен- ным. Отсюда следует, что для всякой в-в последователь- ности /<=£ такой, что g(Z)>ra—1 (п — число состояний автомата Aq(L)\ и для всякого Xi^X существует един- ственный y^Y такой, что у^\ поэтому А — гиллово множество, откуда следует реализуемость L в G-автома- те. Лемма доказана. Из доказательства леммы 5.3.1 вытекает, что для мно- жества А, реализуемого частичным G-автоматом, выпол- нено неравенство ц я, где п — число состояний Aq{L). Ранее было установлено, что ц п(п — 1)/2, где п — число состояний АКП. Покажем, что эта оценка дости- жима в классе G-автоматов, а кроме того, не может быть понижена за счет уменьшения мощности входного или выходного алфавита до |Х| = |У| =2 [36, 53]. В табл. 5.3.1 представлены таблицы переходов и вы- ходов АКП с п > 4 состояниями и, как будет показано, памятью ц = п(п,— 1)/2. В таблице к, если к есть целое число, [Л] = 7 . 1 7 + если к не есть целое число, и Покажем, что существует направленный путь, соединяю- щий п(п — 1)/2 вершин имплнкативпого графа. Этот путь будет построен в четыре шага п будет показано, что ой не образует цикла. Каждому шагу построения будет пред- шествовать лемма. Лемма 5.3.2. Существует ветвь, идущая пз вершины (/, /) к вершине (Z + 1, / + 1), для Z, / таких, что i < / < п. Эта ветвь помечается нулем. I J
§ 3. СВОЙСТВА МКП, РЕАЛИЗУЕМЫХ АВТОМАТАМИ 129 Доказательство. Рассмотрим табл. 5.3.1. Так как Л(г, 0) и %(/’, 0) одинаково определены для всех Z, j и так как б(г, 0) = г + 1, б(/, 0) = / + 1 для всех г</<п, то существует ветвь, ведущая из вершины (г, /) к вершине (г + 1, 7 + 1), для всех г, /, удовлетворяющих неравенствам i < / < п. Лемма доказана. Таблица 5.3.1 к вершинам U+1, п) для г, удовлетворяющих неравен- ствам [(п — 1 )/2] С i С п — 2. Лемма 5.3.3. Существует ветвь, идущая из вершины (г, п) к вершине (i +1, п), для всякого i, удовлетворяю- щего неравенствам 1 С i п — 2. Эти ветви отмечены нулем. Доказательство. Рассмотрим табл. 5.3.1. Так как Мг, 0) и Z(n, 0) одинаково определены для всех I и так как б(г, 0) = г+1, 6(n, 0) = п, то существует направлен- ная ветвь из вершины (г, п) к вершине (г+1, п) для всех г = 1, 2, ..., п — 2. Лемма доказана. Шаг 2. Соединяем ветвью вершину (г, п) с вершиной (г+1, п) для всякого г, удовлетворяющего неравенствам [ (п — 1 )/2] i < п — 2, и помечаем ее нулем. Лемма 5.3.4. Существует ветвь, идущая из вершины (г, п) к вершине (1, г+ 2), для всякого I такого, что 1< С i С [(п~ 3)/2]. Такие ветви отмечены единицей. Доказательство. Рассмотрим табл. 5.3.1. Так как A(i, 1) и Мп, 1) одинаково определены для 1^г^ ’С [(п — 3)/2] и так как б(г, 1) = г + 2, б(п, 1) = 1 для 9 Конечные автоматы
130 ГЛ. V. МНОЖЕСТВА С КОНЕЧНОЙ ПАМЯТЬЮ 1 2 [(72 — 3)/2], то существует ветвь, идущая из вер- шины (ц п) к вершине (1, i + 2), для всякого i такого, что 1 С i [(72 — 3)/21. Лемма доказана. Шаг 3. Соединяем ветвью вершину (г, п) с вершиной (1, i + 2) для 1 С i [(тг — 3)/2]. Помечаем такие ветви единицей. Лемма 5.3.5. Существует ветвь, идущая из вершины (г, n — 1) к вершине (i + 2, 1), для всякого 2, удовлетворя- ющего неравенствам [(n — D/21 2. Эти ветви от- мечены единицей. Доказательство. Рассмотрим табл. 5.3.1. Так как Х(тг — 1,1) и X(i, 1) одинаково определены для всякого i такого, что [(п — 1 )/2] i п — 2, п так как 8(п — 1,1) = = 1, 6(2, D — Z + 2, то существует ветвь, ведущая из вер- шины (Z, гс —1) к вершине (1, i + 2), для всякого i тако- го, что [(п — 1 )/2] i п — 2. Лемма доказана. Шаг 4. Соединяем ветвью, помоченной единицей, вер- шины (г, тг—1) и (1, i + 2) для всякого г, удовлетворяю- щего неравенствам [(п — 1 )/2] С i п — 2. Поскольку, начиная с вершины (1, 2) и копчая вер- шиной (т2 —1, 72), все п(п — 1)/2 вершин импликативного графа упорядочены направленными ветвями так, как это требуется в четырех шагах рассмотренной процедуры по- строения, то справедливо следующее утверждение. Лемма 5.3.6. В импликативном графе каждого авто- мата табл. 5.3.1 существует направленный путь, соеди- няющий 72(т2—1)/2 вершин. Построенный импликативный граф является непол- ным, и поэтому остается показать, что опущенные при построении ветви пе образуют циклов. Первая вершина построенного пути есть (1, 2); последняя есть (п — 1, 72). Будем говорить, что вершина (2, /) меньше (<), чем вер- шина (р, q), если число вершин в пути между вершинами (1, 2) и (2, /) меньше, чем между вершинами (1, 2) и (р, д). Для того чтобы любой автомат табл. 5.3.1 был АКП, очевидно, достаточно, чтобы каждая ветвь, опущенная при построении импликативного графа, вела из некото- рой вершины (2, ]) к некоторой вершине (р, q), где (г, /) < (р, д). Были опущены следующие ветви, обозначенные нулем: а) начинающиеся в вершине (г, п — 1) п оканчиваю- щиеся в вершине (i+l, тг) для всякого г, удовлетворяю- щего неравенствам [(п — 1 )/2] i п — 2, и
§ 3. СВОЙСТВА МКП, РЕАЛИЗУЕМЫХ АВТОМАТАМИ 13 1 б) начинающиеся в вершине (г, п) и оканчивающиеся в вершине (г + 1, п) для всякого г, удовлетворяющего не- равенствам 1 i С [(п — 3)/2]. Лемма 5.3.7. (г, п — 1)<(г + 1, п) для всякого г, удов- летворяющего неравенствам [(/г — 1 )/2] г С п — 2. Доказательство. Из четырех шагов построения, в частности из шага 2, следует, что (п — 11 \ -у-< • • • < (п “ 2, n) < — 1, и). Так как (п — 1, п) есть конечная вершина, то при р < q < <п имеем (р, #)<(г + 1, п) для всякого г такого, что [(тг — 1)/2] i п — 2, и, следовательно, (г, п — 1)<(г + + 1, п) для всякого г такого, что [(тг — 1)/2] i п — 2. Лемма доказана. Лемма 5.3.8. (г, п) < (г + 1, ri) jsjlh. всякого г, удовлет- воряющего неравенствам 1 г [(и — 3)/21. Доказательство. Из третьего шага построения имеем (1, п — г) < (2, п — г + 1) < ... < (г + 1, п) для всякого г такого, что 1 г [(тг — 3)/2]. Отсюда на- ходим (г, п) < (г + 1, п) для всякого i такого, что 1 i ^[(п —3)/2J. Лемма доказана. Таким образом, ветви, опущенные при построении им- пликативного графа, соответствующие входу 0, ведут из вершины (г, /) к вершине (р, q), где (г, /) < (р, q), и, сле- довательно, пе образуют циклов. Опущенные в графе ветви, соответствующие входу 1, начинаются в вершине (г, /) и оканчиваются в вершине (г + 2, у + 2). Лемма 5.3.9. (г, /)<(г + 2, J + 2) для всех г, j таких, что г < j < п — 1. Доказательство следует по транзитивности из (г, /) < <(г+1, ; + 1)<(г + 2, J + 2) для всех г, ] таких, что г < / < тг — 1. Из лемм 5.3.7, 5.3.8 и 5.3.9 вытекает следующая лемма. Лемма 5.3.10. Каждая ветвь, не включенная в постро- енный по описанным выше шагам путь, направлена из вершины (г, /) к вершине (р, $), где (г, j) < (р, q\ и, следовательно, полный имплпкативпый граф не содержит путей, образующих циклы. Из лемм 5.3.6 и 5.3.10 вытекает следующая теорема. 9*
132 ГЛ. V. МНОЖЕСТВА С КОНЕЧНОЙ ПАМЯТЬЮ Теорема 5.3.6. Каждый автомат табл. 5.3.1 есть АКП с памятью т) = п(п — 1)/2, где д —число состояний этого автомата. Таким образом, для любого п существует АКП с п состояниями, двумя входами, двумя выходами и памятью 1) ==. п(п ~ 0/2. Установим соотношение между неинициальными де- терминированными АКП и частичными G-автоматами. Определение 5.3.5. Будем говорить, что автомат, реа- лизующий некоторое множество L, представим в виде прямой суммы некоторых автоматов Л и если реали- зуемые ими множества Li и L2 соответственно таковы, что L = Li I) L2 и Li ф L2, Ij2 £Li. Не всякий инициальный автомат можно представить в виде прямой суммы пеинициальных автоматов. Лемма 5.3.11. Сильно связный неинициальный авто- мат непредставим в виде прямой суммы неинициальных автоматов. Доказательство. Пусть дан сильно связный не- инициальпый автомат, реализующий множество L. Пред- положим, он представим в виде прямой суммы неиници- альных автоматов А{ и А2, реализующих соответственно множества Li и Ь2. Тогда существуют слова L и Z2 из L такие, что h е по Zt Ф L2, и l2 L2, но 12 Ф Lit По- скольку исходный автомат сильно связпый, то существу- ет слово Z ==* liVl2 L. Если Z Lu то и Z2 е Li, так как все рассматриваемые автоматы пеипициальные. По такой же причине, если Z е £2, то и h е £2. Обе эти возможно- сти противоречат предположению. Лемма доказана. Теорема 5.3.7. Любой пеинициальный детерминиро- ванный АКП, реализующий некоторое множество £, ли- бо является частичным G-автоматом, либо представим в виде прямой суммы частичных автоматов. Доказательство. Если неинициальный детерми- нированный АКП является монопетельным, то по теоре- ме 5.3.5 он является частичным G-автоматом. Если же он не является монопетельным, то по теореме 5.2.1 мо- нопетельным является построенный по нему автомат AQ(£), который, очевидно, можно рассматривать как не- иницпальпый недетерминированный мопопетельпый ав- томат, реализующий L. Применив к Aq(L) процедуру, аналогичную процедуре построения автомата А, описан- ную в доказательстве леммы 4.2.1, получим прямую сум- му частичных G-автоматов. Теорема доказана.
§ 4. МНОЖЕСТВА С КОНЕЧНОЙ ПАМЯТЬЮ И ЯЭП 133 Из леммы 5.3.2 и теоремы 5.3.7 вытекает следствие. Следствие 5.3.1. Любой сильно связный неиници- альный детерминированный АКП является частичным ^-автоматом. Рис. 5.3.6. Утверждение, обратное теореме 5.3.7, неверно. В ни- жеследующем примере показано, стичных G-автоматов может быть, а может и пе быть АКП. Пример 5.3.2. Автомат, приве- денный на рис. 5.3.2, тривиаль- ным образом представим в виде прямой суммы G-автоматов, изо- браженных на рис. 5.3.4 и 5.3.5. Но прямая сумма G-автоматов рис. 5.3.4 и 5.3.6, которой реали- зуется множество L, не является АКП, так как автомат Aq (L) (рис. 5.3.7) с начальным состоя- что прямая сумма ча- 00 Рис. 5.3.7. пием пе является мопопетель- пым. Действительно, в этом ав- томате существуют два состояния q^ и q$ такие, что сло- во (00)г переводит автомат из состояния qi в q^ а из состояния q$ в q$. § 4. Множества с конечной памятью и языки эквивалентных преобразований Как было показано в § 2 гл. III, класс множеств, опи- сываемых на ЯЭП 2, уже класса всех регулярных мно- жеств, но шире класса определенных событий. Среди множеств, реализуемых конечными автоматами любого вида (инициальными или неипициальпыми, детерминиро- ванными или недетерминированными, полностью или ча- стично определенными), существуют как описываемые па ЯЭП 2, так и не описываемые на нем. При этом, по- скольку ЯЭП 2 является частным случаем ЯЭП, для
134 Гл. V. МНОЖЕСТВА С КОНЕЧНОЙ ПАМЯТЬЮ реализуемости L =* L(Ko, К)2 необходима и достаточна согласованность Ко с ^-набором К. Пример 5.4.1. На рис. 5.4.1 дан пример недетермини- рованного автомата с начальным состоянием $1} такого, что множество, им реализуемое, не описывается па ЯЭП 2. Действительно, никакое слово 10 (00)*1 не экви- валентно в отношении QL никакому своему концу (00) 2, где > 1 и t2 > 1 означают число повторений Слова, за- ключенного в скобки. На рис. 5.4.2 дан пример недетерминированного ав- томата с начальным состоянием такого, что реализу- емое им множество описывается на ЯЭП 2. Если на рис. 5.4.1 исключить из рассмотрения символ 01, то получится инициальный (с начальным состояни- ем 51) или пешшцпальпый детерминированный автомат такой, что множество, им реализуемое, не описывается на ЯЭП 2. Если же аналогичную операцию проделать па рис. 5.4.2, то получится такой инициальный или неипи- циальный детерминированный автомат, что реализуемое им множество описывается на ЯЭП 2. Каждый класс явного отношения эквивалентности QL, кроме Q*, обладает ц-свойством, где L — множество, опи- сываемое на ЯЭП 2. При этом каждому из классов Qi соответствует свое число наибольшее из которых обо- значим буквой uL. Обозначим М* длину самого длинного слова из всех правых частей соотношений fc-набора К и всех слов Ко. Как следует из теоремы 3.2.1, имеет место следующая оценка: if* > pL. Теорема 5.4.1. Множество L==L{K^ Ю2, реализуемое автоматом, реализуется неинициальпым автоматом тогда и только тогда, когда для всякого l^L такого, что g(Z) С 24/*, конец слова I длины g(l) — 1 принадлежит L.
§ 4. МНОЖЕСТВА С КОНЕЧНОЙ ПАМЯТЬЮ И ЯЭП 435 Доказательство. Необходимость условий теоре- мы очевидна. Достаточность. Предположим, что L нереализу- емо пеинициальным автоматом; при этом существует слово l = L такое, что gtt) >2Л/*, g(l') = 1 и 1(1} Ф &L. Кроме того, будем считать, что не существует слова короче Z, удовлетворяющего этому предположению. По- скольку начало длины 2ЛР слова I принадлежит L, то по условию теоремы начало длины 27И* — 1 слова Z(1) при- надлежит Z. Значит, и слово Z, и слово Z(1) можно под- вергнуть укорачивающим эквивалентным преобразовани- ям. Пусть в результате первого эквивалентного преобра- зования слова Z получилось слово Z. Очевидно, что l^L. В результате нескольких эквивалентных преобразований слова Z(1) получится слово так как Z(i)^L. Могут встретиться следующие ситуаций: а) I является собственным концом слова I (равенство I ~Т невозможно, поскольку I L, a 1&L); б) I является собственным концом слова Z. В случае а) в слове I существует начало Тн длины §(?Н)>7И*, содержащееся в L. Это означает, что Т может быть снова подвергнуто укорачивающему эквивалентному преобразованию, в результате чего рано или поздно при- дем к ситуации б). Наконец, случай б) означает, что у Z е L его конец Г не содержится в L. В этом случае, если рассмотрим ко- нец слова Z, имеющий длину g(D + 1 и принадлежащий, очевидно, Л, то придем к противоречию с определением I как самой короткой в-в последовательности такой, что Z(i)^Z/. Значит, для всякого слова l^L конец его длины g(Z) — 1 содержится в L, и при этом выполнены условия теоремы 4.3.1. Отсюда множество L реализуемо в неини- циальном автомате. Теорема доказана. Теорема 5.4.2. Множество, реализуемое неинициаль- пым автоматом, описывается па ЯЭП 2 тогда и только тогда, когда оно является МКП. Доказательство. Необходимость. Пусть некоторое множество L описывается на ЯЭП 2 и реализу- ется пеппициальпым автоматом. Пусть Z = ZiZ2Z3 е L и l3QLl. Такое 13 всегда найдется, поскольку L обладает ц- свойством относительно QL. Обозначим множества воз- можных продолжений в L слов Z, Z2Z3, Z3 через £0, Ли, Л. Поскольку L реализуется неинициальным автоматом, то Lq — L23 s Л, но так как l3QLl, то Л = L3, значит, L23 = L3.
136 ГЛ. V. МНОЖЕСТВА С КОНЕЧНОЙ ПАМЯТЬЮ Отсюда следует, что всякое слово I е L находится в отно- шении Ql со своим концом длины М*, т. е. для Aq(L) всегда можно построить функцию памяти F с памятью Л/*, т. е. L есть МКП. Достаточность. Пусть множество £, реализуемое неннициальным автоматом Л, является МКП с памятью ц. Вследствие того, что А — неинициальный автомат, вся- кое IJ2^L такое, что g(Z2) = Ц, обладает следующим свой- ством: Таким образом, L описывается на ЯЭП 2. Теорема доказана. В § 3 гл. V показано, что для G-автомата, реализую- щего множество Л, память ц п, где п — число состояний автомата Aq(L). Отсюда и пз того очевидного факта, что если L описано на ЯЭП 2, то |Х01, следует спра- ведливость следующего утверждения. Теорема 5.4.3. Множество L — Л(Х0, К)2, реализуемое неинициальпым автоматом, реализуется G-автоматом тогда и только тогда, когда для любого l^L длины |Ао1 и любого Xi е X существует единственный yj е У такой, что l(Xi, yj) L. Очевидно, справедливым является утверждение, что если МКП описывается на ЯЭП 2, то 71/* = ц. Из изложенного в этом параграфе и в § 2 гл. III сле- дует, что класс МКП и класс множеств, описываемых на ЯЭП 2, пересекаются, причем оба эти класса уже класса Приводимый ниже пример КП, не являющиеся мно- ЭП 2, и существуют мно- жества, описываемые па ЯЭП 2, пе являющиеся МКП, т. е. эти два класса не находятся в отношении включения. Пример 5.4.2. Множе- ство L, реализуемое авто- матом (рис. 5.4.3), очевидно, является МКП. Однако L не описывается па ЯЭП 2, так как никакой ко- нец (01)г слова 10(01)г не переводит Лд(Л)из начального состояния в то же состояние, что и слово 10(01)". На рис. 5.4.4 изображен автомат Aq(L\ не являю- щийся монопетельпым, так как слово (0000)г переводит всех регулярных множеств, показывает, что существуют жествамп, описываемыми на Рис. 5.4.3. Рис. 5.4.4.
§ 4. МНОЖЕСТВА С КОНЕЧНОЙ ПАМЯТЬЮ И ЯЭП 137 Aq(L) из состояния qQ в q0, а из состояния q{ в Зна- чит, L не является МКП. Но L описывается на ЯЭП 2. Действительно, построив укороченное дерево, можно вы- писать KQ и К: Ко = {00, И, 11 11}, К = {Л «->00 00, Л «-> 00 10, 00 ^>11 00, Л *->11 И 00, Л «-> 111110). Очевидно, что любое МКП, как и всякое регулярное множество, может быть описано на ЯЭП. Условия, при которых множество, описываемое на ЯЭП, реализуется в G-автомате, формулируются в теореме 5.4.4. Определение 5.4.1. Множество L = lAK^ К) удовлет- воряет условию Г, если для всякой в-в последовательно- сти l^L такой, что g(Z) = |К01, и для всякого х^Х су- ществует единственный символ y^Y такой, что l(xh у^ содержится в L. Теорема 5.4.4. Множество L реализуемо в G-автомате тогда и только тогда, когда оно может быть описано с помощью ФС <К0, К>, у которой полностью определен- ное множество Ко согласовано с К, и одновременно вы- полнены условия Я*) и Л Доказательство. Необходимость условий теоре- мы следует из леммы 4.1.1, теоремы 4.3.1 и того, что т]<тг^|К01. Достаточность. Пусть выполнены условия теоре- мы. Тогда А(К0, К) реализуемо в пеипициальпом авто- мате и, следовательно, любой конец произвольной в-в по- следовательности из Л(К0, К) содержится в Z(K0, К). По- кажем, что любая в-в последовательность I из Z/(K0, К), имеющая длину, большую, чем |К01, однозначно продол- жаема. В силу того, что Ко — полностью определенное множество, I продолжаема по любой входной букве х{^ Пусть I по Xt продолжается неоднозначно. Предста- вим в-в последовательность I как Z'Z", где Z" —в-в после- довательность, у которой g(Z") = |Kol. Как было отме- чено, Г ^1АКь, К). Кроме того, в L, очевидно, должны содержаться все продолжения в-в последовательности Г' по являющиеся концами продолжений 14" по х^ Таких продолжений больше одного, что противоречит условию Г. *) См. § 3 гл. IV.
138 ГЛ. V. МНОЖЕСТВА С КОНЕЧНОЙ ПАМЯТЬЮ Следовательно, для всякой в-в последовательности Z, у которой g(Z) > |Л^о1, и для всякого Xi X существует единственный y^Y такой, что Кхь у,)^ЦК0, К), Отсюда 1АК0, К) реализуется в G-автомате. Теорема доказана. § 5. О расшифровке «черного ящика», являющегося АКП Задача расшифровки «черного ящика», являющегося конечным автоматом, на принципиальном уровне ста- вится следующим образом: распознать конечный автомат (уметь строить его в виде графа, таблицы переходов и т. п.), если известны входной алфавит X, выходной ал- фавит Y и конечное множество Lc слов, реализуемых этим автоматом. Известно [46], что если нет никаких дополнительных данных, то «черный ящик» не может быть расшифрован. Если же в дополнение к имеющимся данным известна оценка числа состояний автомата, который должен быть синтезирован, то этот автомат может быть построен (см. § 2 гл. VI). Однако нельзя требовать от кого бы то ни было сведений о внутреннем устройстве «черного ящика», так как одно и то же множество L может быть в общем случае реализовано бесконечным множеством конечных автоматов, причем таких, что в каждом из них все состо- яния попарно отличимы. Пример, подтверждающий спра- ведливость этого утверждения, приведен ниже в § 1 гл. VI. Более естественно поэтому требовать дополнитель- ную информацию о множестве, реализуемом предполага- емым автоматом. В предположении, что реализуемое «черным ящиком» множество является МКП, для расшифровки «черного ящика» достаточно знать оценку памяти МКП. Действи- тельно, зная множество Lc всех слов длины не более ц +• 1, реализуемых «черным ящиком», можно составить функцию F и по пей построить автомат, реализующий то же множество Л, которое реализуется «черным ящиком». Таким образом, справедлива следующая лемма. Лемма 5.5.1. Автомат, в котором реализуемо МКП с памятью ц, может быть расшифрован по конечному множеству всех слов длины пе более ц +1, реализуемых этим автоматом.
§ 5. О РАСШИФРОВКЕ АКП 139 Рассмотрим далее такие частные случаи АКП, для расшифровки которых нет необходимости знать число ц. Очевидно, что всякий автомат, в котором реализуемо конечное множество, может быть расшифрован, так как для такого автомата легко построить функцию памяти F. Определение 5.5.1. Некоторое слово l^-L, где Л—- множество, реализуемое конечным автоматом, является .., С тхт)-продолжаемым 9 если для всякого х^Х существует ровно G символов г/д, ... Jjc. е У таких, что слова где 1 i тп, О Ci р, т = |Х|, р ~ |У|. Определение 5.5.2. Реализуемое автоматом множество L будем называть {С^хи ..., Стхт\-множеством, если су- ществует такое число у, что все слова из L длины не менее у являются .., С тХт)-продолжаемыми. Очевидно, что если L является (Сл, ..., С™£т)гмно- жеством, то в общем случае чисел у, удовлетворяющих приведенному определению, бесконечное множество. Да- лее, под у имеется в виду наименьшее из них. Теорема 5.5.1. Всякое реализуемое неинициальным ав- томатом ..., Ст^т^-множество является МКП с па- мятью ц = у. Доказательство. Предположим, что реализуемое неинициальным автоматом (CiXi9 ..Стхт)гмножество L не является МКП, т. е. для автомата, реализующего Z, не существует функции памяти F. Тогда для любого v> >у существуют в L слова IJ, и IJ,, где g(Z) = y, g(M) = = = v, и символ Xi е X такие, что слова IjXxi, уи),... ..., i/ю.), • • •> принадле- жат L, но У1= {yn, ..., y1Ci] ^У*г = [У21, • • •, Угс*) - Отсюда следует что слово l^L продолжается по Хг более чем Ci способами, что противоречит условию. Значит, L есть МКП, и из изложенного с очевидностью следует, что т] == у. Теорема доказана. Однако не всякое реализуемое непнициальпым авто- матом МКП является ..., Ст£т)т-множеством. Пример 5.5.1. Множество L, реализуемое автоматом приведенным па рис. 5.3.3, является МКП, но не является (Сххх, ..., СП}.тт)т-мпожеством, так как при любом т слово (00)т является (1-0, 2 • 1)-продолжаемым? fl слово (01)т является (1 -0, 1 • 1)-цродолжаемьщ?
140 ГЛ. V. МНОЖЕСТВА С КОНЕЧНОЙ ПАМЯТЬЮ Очевидно, что множество, реализуемое автоматом, яв- ляется конечным множеством тогда и только тогда, когда оно является (О#!, ..., 0^т)гмпожеством. Теорема 5.5.2. Всякое множество, реализуемое неини- циальным полностью определенным автоматом, тогда и только тогда реализуется G-автоматом, когда оно явля- ется (1^!, 1^гп)гмножеством. Доказательство. Необходимость. Пусть некоторое множество L реализуется G-автоматом. Тогда автомат Aq(Z/) обладает свойством полной безвозврат- ности и является полностью определенным, вследствие чего для некоторого у все слова из L длины не менее у продолжаются по каждому входному символу единствен- ным образом, т. е. L является (1хъ ..., 1жт)гмножеством. Достаточность. Пусть некоторое множество L реализуется неинициальным полностью определенным ав- томатом и является (1^4, ..., 1ят)гмножеством. Тогда все слова из L длины у продолжаются по каждому входному символу единственным образом. Предположим, что суще- ствует слово ZiZ^L, где g(Z) = у, такое, что по некоторо- му символу Xi оно продолжается не так, как слово Z, ко- торое принадлежит L в силу того, что автомат, реализу- ющий L, неинициальный. Тогда слово Z продолжается в L по символу Xi не единственным образом, опять-таки из-за неинициальности автомата, что противоречит усло- вию. Поэтому для этого автомата можно построить функ- цию памяти F такую, что областью значений ее будет множество У, т. е. L реализуется G-автоматом. Теорема доказана. Теорема 5.5.3. Неинициальный автомат, реализующий некоторое множество L, может быть расшифрован по конечному подмножеству Lc множества L, если 1) L есть (C^i, ..., Ст^т)т-множество; 2) не существует такого Yi < *у — 1, что всякое слово l^L длины g(Z)-=,y1 является (Ci^i, ..., Сm.rw)-про- должаемым. Доказательство. По теореме 5.5.1 L есть МКП. Значит, по множеству Lc^ L слов длины не более *у + 1 можно выписать функцию памяти F и по ней построить автомат, реализующий L. Условие 2) теоремы позволяет определить число у, последовательно проверяя все слова длины 1, 2, ..., g до тех пор, пока не окажется, что для некоторого g все слова длины g являются (C^i, ..., Стхт)^ продолжаемыми. Теорема доказана.
§ 5. О РАСШИФРОВКЕ АКП 141 Подчеркнем, что для расшифровки множества L, удов- летворяющего условиям теоремы 5.5.3, нет необходимости знать число у, достаточно знать, что такое число суще- ствует. Как показывает пример 5.5.2, условие 2) теоремы 5.5.3 ото оо Рис. 5.5.1. 5з 10 существенно необходимо в общем случае. Пример 5.5.2. Проиллюстрируем необходимость усло- вия 2) теоремы 5.5.3. Изобразим множество слов длины не более 4, реализуемых пепнициальпым автоматом, изображенным на рис. 5.5.1, в виде ветвящегося де- рева (рис. 5.5.2). Очевидно, что все слова, реализуемые автоматом, длины не менее 7 = 3 являются (1-0, 1 • 1)-продолжаемыми. В то же время из-за нарушения усло- вия 2) теоремы 5.5.3 (все слова длины 1 также (1-0, 1 • 1)-продолжаемы) за у может быть ошибочно принято , число 1. Однако существуют классы АКП, для расшифровки которых достаточно выполнения условия 1) теоремы 5.5.3. Теорема 5.5.4. G-автомат может быть расшифрован по конечному подмножеству Lc реализуемого им множества L. Рис. 5.5.2. Доказательство. Из теоремы 5.5.2 следует, что L есть (Ixj, ..., 1-Гт)гМножество. Предположим, что усло- вие 2) теоремы 5.5.3 не выполняется, т. е. существует 7i<7~-l такое, что все слова из L длины являются ..., Ст^гп)-продолжаемыми. Никакое слово /^4
142 ГЛ. V. МНОЖЕСТВА С КОНЕЧНОЙ ПАМЯТЬЮ длины g(Z) == У! + 1 пи по какому символу xi4 пе продолжается менее чем = 1 способами, так как G-автомат является полностью определенным автоматом. Не продолжается оно по Xi и более чем Ci способами, так как в этом случае из-за того, что G-автомат является пеиппциальным, нашлось бы слово l^L длины про- должающееся по. х{ более чем Ci способами. Таким обра- зом, все слова из L длины 4-1 являются (С{х^ ... ..., Ста:т)-продолжаемыми. Из этого следует, что L явля- ется (l^i, ..., 1хт)У1- множеством, что противоречит усло- вию. Значит, условие 2) теоремы 5.5.3 выполняется. Тео- рема доказана. Теорема 5.5.5. Неипициальный сильпо связный авто- мат может быть расшифрован по конечному подмноже- ству Lc реализуемого им множества L, являющегося (С^!, ..., Ст£гп)т-множеством. Доказательство. Для доказательства, очевидно, достаточно показать, что для множества L выполняется условие 2) теоремы 5.5.3. Предположим, что это не так, т. е. существует такое < у — 1, что всякое слово длины g(ZJ = yi является (Ctxu ..., Сгпжт)-продолжаемым. Но поскольку у — минимальное число такое, что все сло- ва из L длины не менее у являются (Сл, ..., Cmrrm)-npo- должаемыми, то существует число у2 такое, что •у1<у2< < у, и среди слов длины у2, принадлежащих L, есть хотя бы одно слово, не являющееся (Сл, ..., Сгпжт)-продол- жаемым. Пусть таким словом будет Z2, и пусть оно по некоторому символу х< продолжается С^ способами (С|=/= Поскольку автомат, реализующий Z, неинициаль- ный, то концом длины Yt слова Z2 является некоторое сло- во li е L. Но li по символу Xi продолжается Ct способа- ми, следовательно, Z2 не может по Xi продолжаться более чем Ci способами. Значит, для С^ остается одна возмож- ность: Но поскольку автомат, реализующий L, сильно связный, то существует слово Г12 такое, что g(Z'Z2) > Y- Слово Г12 продолжается по х^Х ровно С,- способами. Значит, слово 12 должно продолжаться не ме- нее чем Ci способами по символу xh а это противоречит тому, что Ci<zC{. Таким образом, С$= что противо- речит предположению. Теорема доказана. Определение 5.5.3. Множество L, удовлетворяющее ус- ловиям теоремы 5.5.3, назовем расшифровываемым .., СтХт\-множеством,
§ 5. О РАСШИФРОВКЕ АКП 143 Естественный интерес вызывает вопрос о реализуемо- сти расшифровываемого (C^i, ..Ст^гД-множества де- терминированным автоматом. Теорема 5.5.6. Расшифровываемое (CtXh ..Стхт)г множество тогда и только тогда может быть реализовано детерминированным автоматом, когда значением С, 1 i т, может быть лишь 0 или 1. Доказательство. Необходимость. Пусть расшифровываемое (CiXh ..., Ста:т)гмпожество L реали- зуется детерминированным автоматом. Предположим, что некоторое С\>1. Построим автомат Aq(L). Он обладает свойством безвозвратности (см. § 2 гл. IV). Рассмотрим путь в этом автомате, соответствующий входному слову (хдп, где п — число состояний автомата -4q(L). Этот путь проходит исключительно по недетерминированным дугам, так как Сг>А. Но, очевидно, на пути длины п ка^ кое-то состояние автомата встречается дважды. Отсюда следует, что не обладает свойством безвозврат- ности. Это противоречит тому, что L реализуется детер- минированным автоматом. Достаточность очевидна. Теорема доказана.
ГЛАВА VI НЕКОТОРЫЕ ПРИЛОЖЕНИЯ § 1. Минимизация числа состояний детерминированных автоматов Пусть нам заданы конечный автомат А и тем самым его поведение L = L(A). Обозначим через C(L) класс ав- томатов, состоящий из всех автоматов с попарно отличи- мыми состояниями, реализующих поведение Л: С(Ь) = {В\ЦВ)=*1А. Задача минимизации. Задан- конечный автомат А. Найти автомат A*^C(L) такой, что для всякого В^ е C(L) имеет место | SB | | SA* | = nmin. Заметим, что в случае, когда автомат А является ча- стично определенным, иногда в задаче минимизации мно- жество C(L) расширяют до множества, содержащего так- же и все автоматы, неотличимые от А па допустимых в А входных словах, т. е. па входных словах множества L. Мы здесь пе будем использовать такого расширения и ограничимся рассмотрением задачи о минимизации чис- ла состояний в нашей постановке. Известно, что задача минимизации для случая, когда L реализуемо полностью определенным инициальным де- терминированным автоматом, решена Э. Ф. Муром [35J, и это решение сводится к разбиению множества состоя- ний SA на подмножества попарно неотличимых никаким экспериментом состояний. Для случая, когда L реализуе- мо детерминированным конечным автоматом общего ви- да, нам неизвестен какой-либо регулярный, отличный от перебора метод полной минимизации числа состояний, хотя и известны некоторые приемы (см., например, [11), позволяющие иногда уменьшить это число. Используя явное отношение эквивалентности, мы опи- шем метод, позволяющий регулярно построить автомат, имеющий «близкое к минимальному» число состояний и реализующий в точности то же самое L, что и заданный детерминированный конечный автомат. Ниже описан ал- горитм 9l6.i построения такого автомата Al^C(L). Для всякого L, реализуемого детерминированным конечным
§ 1. МИНИМИЗАЦИЯ ЧИСЛА СОСТОЯНИЙ 145 автоматом, автомат Аь является единственным, с точ- ностью до изоморфизма. Поэтому nL — число состояний автомата Аъ — является инвариантом множества L. Пусть п — число состояний произвольного автомата A^C(L). Если L нереализуемо G-автоматом, то, как бы велико ни было целое N>0, существует A^C(L), все состояния которого попарно отличимы, и такой, что ^N. Примером, иллюстрирующим это утверждение, мо- гут служить цеипицпальпые автоматы 44 и Ап (рис. 6.1.1). Легко убедиться в том, что 1АА"&*= L(An). Действительно, состояния $1 и $2 с исходящими из них ребрами состав- ляют подавтомат, изоморфный автомату Что же ка- сается остальных состояний Ап, то из произвольного со- стояния 5г, ? = 3, ..., п, этого автомата реализуются: а) в-в последовательности (00)АШ, где I — произволь- ная в-в последовательность, реализуемая в автомате 44 из s2, 0 J — 2; б) в-в последовательности (00)1-Ч и их собственные начала (здесь I имеет тот же смысл, что и в п. а)). При нечетном к или i эти в-в последовательности реализуют- ся в автомате At из а при четном — из Покажем теперь, что все состояния автомата Ап по- парно отличимы. Действительно, состояние s{, i = 2, ..., тг, от состояния 5;, 1 i — 1, отличается по входному сло- ву 0J-il. При этом из Si реализуется в-в последователь- ность (ООР’ЧО, а из s} — в-в последовательность (00);-111. Рассмотрим теперь алгоритм §(6Л, позволяющий по любому детерминированному конечному автомату А по- строить детерминированный конечный автомат AL, неот- личимый от А никаким простым экспериментом и имею- щий число состояний, «близкое к минимальному». Ю Конечные автоматы
б ГЛ. VI. НЕКОТОРЫЕ ПРИЛОЖЕНИЙ Алгоритм §1б1. 1. Если £(А) реализуемо инициальным автоматом, то задачу минимизации решаем по Муру [35] и автомат Aq(L) полагаем автоматом AL. 2. Если L(A) нереализуемо в инициальном автомате, то построим автомат Aq{L). По этому автомату в соот- ветствии с алгоритмом 1 построим автомат AL. Очевид- но, Al^C(L). Если в автомате AL число состояний мень- ше, чем в исходном автомате А, то цель минимизации достигнута. В противном случае алгоритм не позволяет провести минимизацию. Пример 6.1.1. Пусть автомат Ап с Sa = 5, п > 3, задан графом рис. 6.1.1, б. Минимизировать, если это возмож- но, число состояний этого автомата. Построим укорочен^, ное дерево этого автомата (оно представлено на рис. 6.1.2л Таблица 6.1.1 Рис. 6.1.2. 10 11 00 (00)2 (00)"-2 11<-> 10<-> 11 10~ 10^ 11~ и и И 00 10 00 10 10 00 10 00 и ю«. (00)п'210 !!«• (00)”’2И (()0)п’2«(00)п'1 По этому дереву в соответствии с алгоритмом Я2 4 получим ФС (Ко, К> (табл. 6.1.1). По одинаковой продолжаемости словами длины 1 разбиваем Ко па три класса: Q^le, 00, ..., (ОО)"-2}, <?1=>{Ю}, Q\ =>{11}. Проверяем, удовлетворяет ли такое разбиение свойству
§ 1. МИНИМИЗАЦИЯ ЧИСЛА СОСТОЯНИЙ 147 2.1.5 явного отношения эквивалентности*): <2100 zd (00, ..., (00)п-1) - {00, ..., (00)п~2) с $, $10 => (10, ..., (00)п-2101 ~ {10} CZ $, $11 о (И, ..., (00)п~211} ~ {11} с $, $00 о {10 00} ~ {11} с $, $10 => {10 10} ~ {10} с $, $11 о {10 11} фЬ, $00=5 {И 00} ~ {10} <= $, $10 => {И 10} ф L, $11 о {И 11} ~ {!!}<=$. Проверка показывает, что $, $, $ представляют собой классы явного отношения эквивалентности Ql> При- веденные соотношения определяют функцию б для авто- мата Aq (L), граф которого представлен на рис. 6.1.3; в соответствии с алгоритмом 311л построим детерминиро- ванный автомат AL (рис. 6.1.4) такой, что L(Al) = L. Рис. 6.1.3. Рис. 6.1.4. Этот автомат имеет nL — 4 состояний. Правда, легко ви- деть в данном случае, что из автомата AL можно удалить состояния (fa и до, не изменяя его поведение, по это вы- ходит за рамки регулярного метода минимизации. *) Ниже символ ~ означает эквивалентность множеств в смысле отношения Е к* М{ ~ М2, если для каждого элемента х е найдется х' е М2 такой, что хЕкх', и, наоборот, для дого у е найдется у' М\ такой, что J0*
148 ГЛ. VI. НЕКОТОРЫЕ ПРИЛОЖЕНИЯ § 2. Расшифровка автоматов с помощью анкетного подхода Представим себе ситуацию, когда к исполнителю при- ходит заказчик и просит его синтезировать конечный ав- томат, о котором заказчик знает, как этот автомат рабо- тает. Последнее следует понимать в том смысле, что исполнитель может предъявить заказчику любую в-в по- следовательность Ze (XX У)* любой длины и задать за- казчику вопрос о том, реализуется ли предъявленная в-в последовательность в задуманном заказчиком автомате. Задача исполнителя состоит в том, чтобы, задав заказ- чику конечное число таких вопросов (называемых вопро- сами 1-го типа), синтезировать нужный заказчику конеч- ный автомат. Описанная постановка задачи была предложена в свое время А. А. Талем [13, 45] и названа «анкетным под- ходом». В терминологии настоящей работы эта задача может быть описана следующим образом. Пусть (XX У)* — конечноавтоматное множество. 1. Можно ли, зная подмножество Ln^L, состоящее из всех в-в последовательностей множества L, имеющих длину, не превосходящую п, синтезировать какой-либо детерминированный автомат из множества CXD? 2. Если ответ на первый вопрос положителен, дать оценку числа п. Если оценка числа состояний какого-либо Л gC(L) заранее неизвестна, то в общем случае ответ на первый вопрос отрицателен [44]. Поэтому мы будем полагать, что такая оценка заранее известна, и покажем, что ответ на первый вопрос в этом случае положителен, а также да- дим оценки числа п для случая, когда никакой иной ин- формации об А не имеется, а также для некоторых слу- чаев, когда имеются дополнительные сведения о некото- рых свойствах автомата А. Заметим, что в случае, когда заказчиком задуман ини- циальный автомат, анкетный подход сводится к расшиф- ровке автоматов, подробно описанной в [46]. Поэтому анкетный подход в рассматриваемом нами случае пред- полагает, по существу, расшифровку автомата, не явля- ющегося инициальным. В решении этой задачи нам неиз- вестны какие-либо результаты, кроме цзлощенных в [45, 52], . . . .. .
§ 2. РАСШИФРОВКА С ПОМОЩЬЮ АНКЕТНОГО ПОДХОДА 149 Поскольку в излагаемом далее подходе много общего с подходом, описанным в [46], мы везде, где это возмож- но, будем придерживаться принятой в [461 терминологии. Согласно этой терминологии нашу задачу можно назвать «анкетной расшифровкой относительных «черных ящи- ков». Заметим, что для всех автоматов из множества C(L\ и только для них, существует единственный автомат Aq(L). Поэтому задачу об анкетной расшифровке отно- сительного «черного ящика» мы можем свести к задаче о расшифровке соответствующего инициального недетерми- нированного автомата Aq(L). Если этот автомат рас- шифрован, то, используя алгоритм 314Л, всегда можно построить автомат AL. Это решает поставленную задачу, поскольку Al С(А). Если известна оценка nQ числа состояний автомата то Для синтеза этого автомата достаточно знать подмножество LQ множества Л, состоящее из всех таких в-в последовательностей I е L, что g(Z) С 2nQ — 1. По усло- вию задачи известно, что существует автомат Л^С(Ц имеющий не более чем п состояний. В этом случае nQ^ C2n — 1, поскольку число nQ состояний автомата Aq(L) пе превышает числа различных непустых подмножеств множества SA состояний автомата А. Покажем, что для любого тг > 1 эта оценка достижима, для чего рассмотрим автомат А сп состояниями и 5Н = = SA, граф которого представлен на рис. 6.2.1. Заметим, что автомат А обла- дает следующими свой- ствами: 1. Любое состояние Si автомата А отличи- мо одновременно от всех остальных состоя- ний. Действительно, в-в последовательность (00)*~f10 реализуется лишь в состо- янии Si. 2. Пусть Si s SA, S2 s SA, Si S2,— два различных подмножества множества состояний автомата А. Тогда существует в-в последовательность l^LA, реализуемая в одном из этих подмножеств и нереализуемая в другом. Действительно, существует такое Si е SA, что, например (для определенности), имеет место Si^Sh Si^S2. Тогда
150 ГЛ. VI. НЕКОТОРЫЕ ПРИЛОЖЕНИЯ в-в последовательность (ООУ-ЧО реализуется в 51 и не реализуется в S2- 3. Для любого множества 5, s SA существует в-в по- следовательность, которая ведет на укороченном дереве автомата А из начальной вершины (соответствующей множеству SA) в вершину, которой соответствует множе- ство Si. Действительно, пусть 5г s SA. Искомую в-в после- довательность получим, расположив все состояния SA в естественном порядке s2, ...» sn и заменив все Si^Si на в-в последовательность 00, а все Sj Ф на в-в после- довательность 11. Таким образом, из свойства 3 следует, что на укоро- ченном дереве будет 2П — 1 различных вершин, попарно отличимых в силу свойства 2, что и доказывает утверж- дение. Используя терминологию [46], получим, что любой от- носительный «черный ящик» А с верхней оценкой п чис- ла состояний может быть анкетно расшифрован с по- мощью следующего алгоритма. Алгоритм §162. 1. Опрашивая заказчика вопросами о допустимых в-в последовательностях I, имеющих длину g(l) 2П — 2, со- ставляем из них множество L'. 2. Разбиваем L' на классы одинаковой продолжаемо- сти этих в-в последовательностей в А, для чего достаточно опросить заказчика вопросами о допустимых продолже- ниях этих в-в последовательностей в L до длины 2п — 1. 3. По результатам разбиения строим автомат Aq(L). 4. Поскольку L реализуемо в детерминированном ав- томате, строим таковой согласно алгоритму §14Л. Таким образом, справедлива следующая теорема. Теорема 6.2.1. Существует алгоритм 3(6 2 с сигнализи- рующей функцией 31в.2 (п) = 2n+1 — 3, который анкетно расшифровывает любой относительный «черный ящик», имеющий пе более чем п состояний. Под сигнализирующей функцией алгоритма St6.2 по аналогии с [46] мы понимаем функцию ®в.2(л), равную максимальной длине входных слов, которые во время ра- боты алгоритма 3162 подаются на вход «черного ящика» с оценкой п числа состояний, находящегося в начальном состоянии,
§ 3. ПОВЕДЕНИЕ ДВУХ ВЗАИМОСВЯЗАННЫХ АВТОМАТОВ 151 § 3. Поведение двух взаимосвязанных автоматов, моделирующих систему , «объект управления — управляющее устройство» Программное управление дискретными объектами, как правило, осуществляется с помощью управляющего уст- ройства (УУ), образующего с объектом управления (ОУ) замкнутый контур (рис. 6.3.1). В тех случаях, когда ОУ представляет собой конечный автомат (или возможно описание его конечноавтоматной моделью) и задано множество вход-выходных последо- вательностей, которое должно быть в нем ОУ реализовано в автоматическом режиме, воз- никает задача синтеза УУ с различными ограничениями на его структуру, папример, УУ должно быть конечным автоматом, как правило, детерминированным, синхронным Рис. 6.3.1. или асинхронным, автоматом Мили или Му- ра и т. д. В этой связи возникает задача о поведении двух конечных автоматов, образующих замкнутый контур, в котором вход и выход одного из пих отождествляются соответственно с выходом и входом другого. Частный случай этой задачи для УУ, представляющего собой де- терминированный асинхронный автомат, рассмотрен В. В. Рудневым [38], где выведены достаточные условия реализуемости заданного множества вход-выходных по- следовательностей в ОУ и предложен алгоритм синтеза УУ — конечного автомата Мура с указанными ограни- чениями. В этом параграфе рассматривается поведение в замк- нутом контуре двух синхронных конечных автоматов (по- нятие синхронного автомата для этой задачи определя- ется ниже), на которые не наложено никаких ограниче- ний. При этом в задаче синтеза УУ множество в-в после- довательностей, которое должно быть реализовано в ОУ, предполагается заданным на ЯЭП. Выводятся необходи- мые и достаточные условия реализуемости заданного множества в ОУ как для общего случая, так и для част- ного случая детерминированного управляющего автомата в форме Мили. Предложены алгоритмы проверки реали- зуемости заданного множества в-в последовательностей в ОУ в автоматическом режиме и синтеза управляющего автомата с указанными ограничениями. Ниже показано, что инструментом решения поставленных задач могут
152 ГЛ. VI. НЕКОТОРЫЕ ПРИЛОЖЕНИЯ служить ЯЭП, дающие возможность строить простые эф- фективные процедуры анализа и синтеза [15). Два конечных автомата Ai п А2 образуют замкнутый контур (рис. 6.3.2), так что выход автомата А{ является входом автомата Л2 и выход автомата А2 является входом автомата At. Назовем соответствующие точки отождеств- ления входов и выходов узлами конту- ра У12 и У2Ь С узлами У12 и У21 связа- ны соответствующие конечные алфави- ты X и Z, а именно, Z — алфавит выходов автомата и входов автома- та Л2, X—алфавит выходов автомата А2 и входов автомата Оба автомата Рис. 6.3.2. описываются как пятерки: (Sif X, Z, S1It, kA и (S2, Z, X, 5h2, h2), где 8< — внутренний алфавит автомата А{; Sni s — множе- ство начальных состояний автомата Ah i = l, 2; hi — отображение SjXX в 2 1Х ; h2 — отображение S2XZ 2szxx. Оба отображения hi и h2 могут быть частич- ными. Автоматы Ai и А2 работают в режиме побуквеппого обмена, который характерен для работы ОУ и УУ в замк- нутом контуре: с выхода УУ выходной символ Zi^Z по- ступает па вход ОУ, который в качестве реакции на па своем выходе образует выходной символ .г^Х, по- ступающий па вход УУ п вызывающий появление на его выходе некоторого и т. д. Для такого режима работы может быть предложена модель «синхронного» режима работы автоматов At и Л2, определяемая следу- ющим образом: синхроимпульсы, вызывающие переклю- чение состояний, поступают на автоматы поочередно; при этом па выходе каждого автомата после очередного синхроимпульса сохраняется выходной сигнал, образо- вавшийся как функция входного сигнала в момент пода- чи синхроимпульса и состояния, в котором находился автомат до переключения. Считается, что если на вход какого-либо автомата Ai поступил входной сигнал, для которого hi пе определено, то автоматическая работа кон- тура прекращается. Запуск контура в автоматический режим происходит, когда оба автомата находятся в одном из возможных для них начальных состояний, а первый синхроимпульс приходит па автомат па входе кото- рого к этому моменту подготовлен выходной сигнал авто-
§ 3. ПОВЕДЕНИЕ ДВУХ ВЗАИМОСВЯЗАННЫХ АВТОМАТОВ 153 мата Л2, соответствующий тому начальному состоянию, в котором он находится. Поведение L(A^ и Л(Л2) каждого из автоматов Ah а А2 считается заданным с помощью нормализованной формальной системы (ФС) <Х0, К>, где Ко — конечное множество слов в алфавите XX Z или ZXX; К — конеч- ное множество соотношений (й-пабор) вида Рд ++ vj2, где Pjt и Pj2 — фиксированные слова в (XX Z)* или (ZXX)*. При этом L (Лд) = L (кго, К1), a Ш2) считается задан- ным как объединение конечного числа конечноавтомат- ных множеств L2j = L (Xqj, 7 = 1, ..., тп, каждому из которых соответствует некоторое множество началь- ных выходных символов Х^Х автомата Л2, Х,-ПХА = 0, i=£k. Поскольку L(Ai) и L2j являются конечноавтомат- пыми множествами, в ФС <Xj, К1} и множе- ства К\ и Koj являются согласованными с ^-наборами К1 и К* соответственно (см. теорему 4.1.1). Поведение каждого из автоматов в контуре в автома- тическом режиме будем обозначать Lai и La2 соответствен- но для автоматов А{ и А2, Ясно, что L^LUJstXXZ)* и La2==L(A2)s=(ZXX)*. В дальнейшем множества, определяемые в алфавитах ZXX и XXZ, будут рассматриваться также и в алфа- вите X U Z. Очевидно, что если множество регулярно в алфавите XX Z (ZXX), то оно регулярно и в алфавите XUZ. _ Рассмотрим алгоритмы З(63 и 5С6 3, которые преобразо- вывают пару (X, L), где Х^Х, a L s (Z XX)* — произ- вольное конечноавтоматное множество, в некоторые мно- жества L' s (X X Z)* и L' (X X Z)* соответственно. Алгоритм St6.3. 1. L* = {хи? | w е L, ух^Х]. 2. Lf = {и? | и?х е Л*, х е X}. А л г о р и т м 916 з. 1. L* = {хи? | w е L, \/х е X). 2. L' — {u?z | и? ge £*, yz е Z}. Введем также в рассмотрение алгоритм 3t6.4, преобра- зующий конечноавтоматное множество L^(XXZ)* в множество L" £ (Z X X)*.
154 ГЛ. VI. НЕКОТОРЫЕ ПРИЛОЖЕНИЯ л : Алгоритм 516,4. 1. L* = {wx | w е А, ухе!}. 2. L" = {w | xw е L*, х е X}. На первом шаге алгоритмов 916.3, З16.3 и $U.4 множества Z* считаются заданными в алфавите X U Z. Второй шаг алгоритмов предусматривает построение L', L' и L" и последующий их перевод в алфавиты XX Z и ZXX со- ответственно. Справедливо следующее утверждение: L', L' и L" являются конечноавтоматными множествами. Действительно, регулярность L\ L' и L" в алфавите X U Z очевидна. Кроме того, в каждом слове из Lf, L' и L” буквы алфавитов X и Z строго чередуются, что предопределяет возможность представления L'\ L' и L" в (XXZ)* и (ZXX)* соответственно. Поскольку алго- ритмы сохраняют за множествами L', I/ и L" свойство содержать вместе с любым словом все его собственные начала (множества при этом рассматриваются в алфави- тах XX Z и ZXX соответственно), то копечноавтомат- ность £', Г' и L" становится очевидной. В дальнейшем приписывание штриха (или штриха с тильдой) к обозначению множества, имеющему в нижнем индексе символ /, будет означать результат применения алгоритма 916 з (или З16.3) к паре, состоящей из этого мно- жества и^мпожества X,. Например, 9С6.з (Aj, или — Z/2j. Имеет место следующая теорема. Теорема 6.3.1. ^ai ~ U ^alj = U (^1) П ^2})? J=1 т т / п ч Д12 = U = U П ^2} )• 5=1 Доказательство. Обозначим Zaij и множества слов, реализуемые в автоматах и А2 в контуре в авто- матическом режиме и соответствующие множеству Xj на входе в автомат At в начальный момент. Пусть в автомате Ai в контуре реализуется ело- во l=[x,zi^xh,zi2)...(xjk,zili+1)^Lal}sL(A1), где х s Kj. В автомате А2 этому соответствует реализация в коптуре либо слова . .&к,Х}к), либо слова
§ 3. ПОВЕДЕНИЕ ДВУХ ВЗАИМОСВЯЗАННЫХ АВТОМАТОВ <55 ^(2гА+1, ^‘й4-1)р, где v может быть и пустым словом. В обо- их случаях w L2j. Но тогда I е Z2j и, следовательно, L (.4J П Z2j. Обратно, пусть I е L (Л2) f] L2j. Отсюда следует, что a iv^L2j. Но тогда очевид- но, что I реализуется в автомате Ai в контуре и, посколь- ку I начинается с символа х е Xj, I содержится в Laij. Отсюда £(Д) П Lalj. В итоге Lalj = Л(Л2) Q Ь2з, Поскольку поведение автомата At в контуре Lai есть U ^aijt получаем, что ^al == U (^1) П j=l Пусть теперь слово м>= х^ реализу- ется в автомате А2 в контуре и х Xj— выходной сим- вол автомата Л2 в момент включения контура в автома- тический режим. Тогда в автомате в контуре реали- зуется Либо СЛОВО S = (#, ZjJ zi2) • • • Zik)> либ° слово где t может быть и пустым словом. В обоих случаях s LaiJ, так как множества Xj не пере- секаются, и, следовательпо, w €= Lalj. Отсюда w е Lal$ П П Z/2j И La2j LaU П ^2? Обратно, пусть w e La^j fl ^2j* Тогда w e L2j и s e Lalj для некоторого x e Xj, что будет означать реализуемость слова w в автомате А2 в контуре. Таким образом, w е Z/a2j и Lalj Q L2j S Za2j. Отсюда La2j = Laij П и, поскольку La2 = J Z/fl2j, ^a2 = U \^alj П L2j). Теорема доказана. Поскольку класс конечноавтоматпых множеств замк- нут относительно операций А и U, множества La^ La2i, Lai и La2 являются конечноавтоматными. Из теоремы 6.3.1 следует, что множества La2j обладают следующими свойствами по отношению к множеству L2j: 1) La2j — L2j*, 2) если некоторое w = (ziv х^ ... Ьа2;} то в La2j входят также все слова вида ( Zh’ (Z»A’ ’ допустимые в L2j.
156 ГЛ. VI. НЕКОТОРЫЕ ПРИЛОЖЕНИЯ Таким образом, конечноавтоматность множеств La2j и соблюдение для них свойств 1) и 2) являются необхо- т димым условием реализуемости некоторого La2 = U La2j 7=1 в автомате Л2, находящемся в контуре. Покажем теперь достаточность этих условий для реализуемости задан- ного L в качестве поведения автомата А2 в контуре. Теорема 6.3.2. Пусть задана конечная совокупность пар (X, Lj), у = 1, ..., тп, где Х^Х, XriXfe = 0 для i¥=k\ Lj(Z X X)* — конечноавтоматные множества, об- ладающие по отношению к множествам L2i следующими свойствами: (*) Lj Z2j; (** ) если некоторое n?=(zip ... (zi/p xjh} т0 в Д входят также все слова вида XjJ, до- пустимые в L2j. Тогда существует автомат Aif в контуре с которым т автомат А2 имеет поведение La2 = |J Lj. 3=Tl Доказательство. Пользуясь алгоритмом St6.3, по каждой паре (Xj, L;), построим копечпоавтоматные мно- жества Lj, j = 1, ..., т. Рассмотрим инициальные авто- маты Sj, поведение каждого из которых во вход-выходном алфавите XX Z есть В качестве В} можно взять, например, автоматы Aq(Lj). Образуем прямую сумму В2 автоматов Bh приняв за начальное состояние В2 мно- жество начальных состояний В,. Составим контур из автоматов В2 и Л2, приняв В2 за автомат На основании теоремы 6.3.1 и свойств (*) и (**) множеств Lj получим т т / т f Lai - U Lalj - и и 7=1 7=1 \г~1 m m Г/ fxff 1 m La2 = U La<ij = U [(^j) П L2j] = J Lj. 7=1 7=1 7=1 Теорема доказана. Замечание. Реализуемость заданного множества т L = J Lj в автомате А2 понимается следующим образом: 7=1 для всех х Xj, и только для них, в качестве начальных т t П L2j = (J Lj,
§ 3. ПОВЕДЕНИЕ ДВУХ ВЗАИМОСВЯЗАННЫХ АВТОМАТОВ 157 символов на входе в автомат At поведением автомата А2 в контуре является L,. Автомат At будем называть «покрывающим» управля- ющим автоматом, если Lal^ L(At). Метод построения ав- томата At, использованный при доказательстве теоре- мы 6.3.2, позволяет построить по заданному поведению La2 автомат At такой, что Lal = L(Ai). При этом автомат At будет в точности реализовывать заданное поведение La2 в автомате А2 в том смысле, что если на каком-то шаге работы в контуре на вход автомата At поступит выход- ной символ автомата А2, не соответствующий его задан- ному поведению La2, автомат Ai остановится. Такой метод построения УУ соответствует практическому требованию к этим устройствам быть пе только устройством, пра- вильно реагирующим на правильный сигнал от ОУ, но и контролирующим его. Действительно, заданное поведение L = La2 автомата А2 в контуре при том методе построения автомата Aif который использован при доказательстве теоремы 6.3.2, т t однозначным образом определяет L (Аа) = J Если J=i на /t-м шаге (не являющемся последним шагом в соответ- ствии с заданным поведением Ьа2) на вход автомата Ait начавшего работу после подачи на его вход некоторого х X» поступил символ х$к такой, что последователь- ность w = (ziv х^ ... х^ ф Lh то это будет озна- чать, что в Lj и, следовательно, в Л(А4) пе найдется пи одной последовательности вида (я, ZiJ z^ ... [xjk, z). В случае же «покрывающего» автомата At его работа в рассматриваемой ситуации может продолжиться, что при- ведет к реализации в А2 множества, отличного от задан- ного множества Lj. Пусть теперь множества Lh удовлетворяющие услови- ям (*) и (**) теоремы 6.3.2, заданы на ЯЭП совокуп- ностью ФС <Koj, j = 1, ..., т, в которых множества KOj согласованы с соответствующими ^-наборами Kjt Рас- смотрим алгоритм, который по заданному на ЯЭП пове- дению автомата А2 в контуре позволяет получить описан- ное также на ЯЭП поведение управляющего автомата At и минимальную форму его инициальной реализации. Алгоритм $16.5. 1. Полагаем j = 1.
158 ГЛ. VI. НЕКОТОРЫЕ ПРИЛОЖЕНИЯ 2. Для каждого соотношения строим множество соотношений вида v^z pi2z (полагая Az = z), где для каждого z е Z существует буква (z, х) е Z X X такая, что vi2(z, х) L(Koh К,). Если же vi2 не имеет про- должений в IAKqj, Kj), то данное соотношение в дальней- шем не используется. Полученные соотношения считаем составленными из слов над алфавитом X U Z и объявляем /с-пабором Xj. 3. Для каждого из соотношений е К jis. каж- дого х е Xj строим множество соотношений вида хшн *-> xwi2. Полученные соотношения считаем составленными из слов над алфавитом XX Z и объявляем fc-набором Xj. 4. Аналогичные действия производим со словами мно- жества XOj, в результате чего получим множество XOj, добавляя к которому пустое слово е = (А, А), строим мно- жество XgjCz(XxZ)*. 5. По ФС <7<0j,Xj>, пользуясь алгоритмом 312Л, по- строим инициальный автомат реализующий 6. Если / = пг, переходим к п. 7, в противном случае принимаем за j его предыдущее значение, увеличенное на единицу, п переходим к п. 2. 7. Построим прямую сумму автоматов п, рас- сматривая ее как источник [46] с множеством начальных состояний, представляющим собой множество начальных состояний всех автоматов с помощью алгорит- мов St2.3 и 312.4 построим ФС <Х0, Х> такую, что Ь(Х0, Х)=? т , , = и J—1 8. По ФС <Х0, Х> построим в соответствии с алгорит- мом 512л инициальный автомат Лр(Х2), реализующий Этот автомат полагаем автоматом Лемма 6.3.1. Множество L (К^, Xj), получаемое из пары (Xjt Lj) в результате пп. 2—4 алгоритма 916.5, явля- ется множеством Lj, получаемым из этой пары в ре- зультате алгоритма 916.3. Доказательство. Рассмотрим произвольное w е = Lj, которое можно представить как xv, где x^Xj, a v может быть продолжено до слов из Lj приписыванием справа некоторых букв алфавита X. Пусть их' = u(z', х') — одно из таких слов. Поскольку Д — копечноавтоматное
§ 3. ПОВЕДЕНИЕ ДВУХ ВЗАИМОСВЯЗАННЫХ АВТОМАТОВ 159 множество, и также содержится в Lj. Рассмотрим вывод и из некоторого и0 е К^: и{, ..uk = и. Так как и имеет продолжение в Д (по букве (z', х'У), то в этом выводе не могут быть использованы соотношения fc-пабо- ра Kj, правая часть которых не имеет продолжений в Lj. Но тогда, полагая u^xu^z', построим вывод р0, иъ ..., uf'if в котором эквивалентность щ и щ+1 обусловлена применением к слову Uj соотношения из fc-пабора Kj, получающегося следующим образом. К обеим частям соот- ношения Va ++ Vj2 ^-набора Kj, примененного к слову щ при выводе из него uf+1, приписываются слева х и справа некоторый символ z, который либо является z', если щ = == Pji, либо по которому Гд продолжается в щ. Поскольку подстановки не изменяют последний символ z', получим, что uh — xuz'. Вследствие того, что и^Ек.и, а и продол- жаемо по букве z\ щ также продолжаемо по z', следо- вательно, xuQz' е KOj. Таким образом, xuz' е L (KOj, Kj) И Ljs Л «;,<•)• Обратно, пусть w L (A’oj, Kj) и w = xvz', где х s Xj. Покажем, что существует символ xf е X такой, что p(z', х') ^Lj. Для этой цели предварительно докажем, что v содержится в Lj. Рассмотрим вывод в ФС <К0;, К^): u0, X, • • •» иь == где и0 е KQj. По построению KjUQ = = xvQzf, и тогда р0 е KQj. Составим вывод р0, i>i, ..vh, где слово vi+i выводится из Vi с помощью подстановки ptl -<-> vi2 из fc-набора Kj, являющейся прообразом (в смысле алгоритма 316 5) подста- новки *-> xvi2z)^ Kj, которая была применена при выводе ui+l из щ. Отсюда следует, что vk = v и v^Lj. Поскольку v0EK.v, a v0 имеет продолжение в Д по неко- торой букве (z', х') Z X X (иначе xvoz' не вошло бы в K'Qj), слово v(z', х') содержится в Lj. Отсюдаxvz' е Ь'$ и, следовательно, L (к'^, Kj) включено в Lj. Суммируя, получим равенство L(K'Oj, К\) == L'j. Лемма доказана. Таким образом, алгоритм Й6 5 позволяет получить уп- равляющий автомат Al9 поведение которого L (Л^ = т t = J Lj, и, следовательно, Lai = L(Ai). 3=1 Вопрос о том, удовлетворяет ли некоторое конечноав- томатное множество Lj = L(KQj, Kj)^(ZXX)* условиям
160 ГЛ. VI. НЕКОТОРЫЕ ПРИЛОЖЕНИЯ (*) и (**) теоремы 6.3.2 по отношению к = L(Kh, Kf) s(ZX.X)*, может быть конструктивно решен с по- мощью результатов, полученных в § 3 гл. III (проверка условия (*)), а также на основе следующих построений (с целью проверки условия (**)). По Lj и L2j построим нормализованную ФС описывающую Lj A L2i (см. § 3 гл. III). Если условие (*) выполнено, то Lj A L2j = Lj, Таким образом, получаем описание Lj ФС <Я0;,^>, в которой каждое соотно- шение fc-пабора Kj состоит из пары слов, находящихся в отношении Ql^ или и, следовательно, или Е '=>Е %. Kj Kj Рассмотрим множество 7?j, состоящее из всех слов KOj и всех правых частей соотношений Л-набора Kj, Пока- жем теперь, что условие (**) выполнено (при условии, что выполнено условие (*)) тогда и только тогда, когда вместе с каждым словом Rj в R, входят все слова вида Xj^ ... допустимые в L2j. Необходимость этих условий очевидна. Чтобы пока- зать достаточность, рассмотрим произвольное слово v = = (*ip ^i) • • • Xjm) e Lj ^L2j такое, что в L2} суще- ствует слово и = Xj^ ... не содержащееся в Lj. Если v содержится в 7?j, то наше предположение противоречит условию; поэтому будем считать, что v не содержится в Rj, Тогда, применяя к v левые эквивалент- ные преобразования, получим через некоторое количество шагов первый раз слово v' ^ Rj. Поскольку каждое такое преобразование не выводит за рамки Lj и L2j, получаем, что существование в L2j слова и', выводимого из и с по- мощью той же последовательности левых преобразований и отличающегося от слова v' только по последней букве Противоречит УСЛОВИЮ. ТаКИМ обра- зом, достаточность выполнения условия (**) на конечном множестве Rj для его выполнения на всем множестве Lj доказана. Замечание. Может оказаться, что описание Lj ФС (Koj, Kj> таково, что для любого соотношения (ри vi2)^
§ 3. ПОВЕДЕНИЕ ДВУХ ВЗАИМОСВЯЗАННЫХ АВТОМАТОВ 161 ® К) справедливо либо v^Ql-.v^, либо VuE 2vi2. Тогда 3 кэ в качестве Rj может быть взято множество всех слов из KQj и всех правых частей соотношений fc-набора Kj. На практике при проектировании управляющих авто- матов требуется, чтобы УУ было инициальным детермини- рованным автоматом. Рассмотренный выше алгоритм Я6.5 в общем случае может привести к построению автомата Aq(Lz), не являющегося детерминированным. Как следует из теоремы 4.2.4, для того чтобы ФС <Х0, К> задавала множество L<= (XXZ)*, реализуемое инициальным детерминированным автоматом, необходимо и достаточно, чтобы Ко было согласованным с /с-набором К и детерминированным. Напомним, что детерминирован- ность KQ означает, что для всякой w е KQ и всякого Xi е е=Х, если существует, то единственный z^Z такой, что либо w(xi, Zj) содержится в Ко, либо в й-наборе К суще- ствует соотношение, для которого w(x{, Zj) является пра- вой частью *). Теорема 6.3.3. Если А{ — детерминированный ини- циальный конечный автомат, то каждое La2$ = Lal$ П является конечноавтоматным множеством, обладающим свойствами (*) и (**) по отношению к соответствующему множеству L2h и для любого w е и любой пары слов ^(zi2, xj ), содержащихся в если таковые пары существуют, z^ совпадает с Теорема 6.3.3 вытекает из теоремы 6.3.1 и из того факта, что всякое в силу детерминированности и инициальное™ вместе с любым w содержит w(zivXj^ w(zi2, ^2)’ • • • ’ w (если таковые продолжения в Lalj- существуют), в которых = zi2 = ... = zik. Следующая теорема является обратной к теореме 6.3.3, если учесть, что для всякого L = 1АК0, К) (Z X X)* не- обходимым и достаточным условием однозначной продол- жаемости любого слова w L по буквам входного алфа- вита Z является однозначная продолжаемость по буквам Z слов, принадлежащих Хо. Теорема 6.3.4. Пусть дана конечная совокупность пар (Xj, Lj), 7 = 1, ..m, где Xj £ X, Xf П ХА = 0 для I к; *) Иными словами, если существует, то единственный символ Zj (=Z такой, что zj) содержится в L(X0, X). И Конечные автоматы
162 ГЛ. VI. НЕКОТОРЫЕ ПРИЛОЖЕНИЯ L, = Kj) — конечноавтоматные множества, обладаю- щие по отношению к множествам L2j свойствами (*) и (**), и для любого w е KQj и любой пары слов ^(zivXjty w(zt2,Xj2}, содержащихся в LtKoj, Kj), если таковые пары существуют, zi± совпадает с zi2. Тогда существует ини- циальный детерминированный управляющий автомат Ah в контуре с которым автомат Л2 имеет поведение Ьа2 = Доказательство. Построим в соответствии с ал- горитмом Ste.5 множества В(к'^, Xj) = Lj. Нетрудно за- метить, что К$-3, по построению, в силу однозначной про- должаемости слов множества Lj по буквам входного алфа- вита Z будет детерминированным и согласованным с Kj. Таким образом, для каждого Lj существует детермини- рованный инициальный автомат Bj, поведение которого есть Lj. Точно так же, как это было сделано при дока- зательстве теоремы 6.3.2, построим прямую сумму автоматов Bj. Автомат в силу того, что X П == 0 для i Ф к, будет инициальным и детерминированным. Теорема доказана. Пример 6.3.1. На рис. 6.3.3. представлен граф ОУ — автомата А2, поведение которого L(A2) требуется реализо- вать в автоматическом режиме. Другими словами, задана пара (trj, В), в которой L = L(A2), и требуется построить управляющий автомат Ah в контуре с которым автомат А2 имеет поведение £а2 = Ш2) (переход 10—11 пуст).
§ 3. ПОВЕДЕНИЕ ДВУХ ВЗАИМОСВЯЗАННЫХ АВТОМАТОВ 163 Множество L(A2) может быть описано с помощью ФС <2f0, КУ, где KQ состоит из слов е, 21^2» Z[X2 ^3*^5, z^x2 z3x$ z^x3, ... Z1&2 ^3*^5 ^4^3 <^1^2 *3*6, Z]X2 Z3Xg Z[X2 Z3Xg Z^Xi z^x^, Z^X2 Z3Xg Z^X{ Z^ z6x7, Z^X2 Z3Xg ZjjXi ZyX^ ZgXg, Z\X2 Z3Xg Z$Xi ZyX^ ZqXq ZiX2, Z{X2 Z3Xg Z^X{ ZqX^ Z^Xq z^x2 z3Xg, Z\X2 Z3Xg Z$Xi Z<jX^ ZqXq ZjX2 Z3Xg Z$Xi, Z[X2 Z3Xg Z$Xi Z'jX^ ZqXq Z±X2 Z3Xg Z5X1 z^x^, а Л:-набор К — из соотношений Z1^2 -<-* *1*2 Z3Xg Z5Xi ZiXi ZgXi *1*2, Z\X2 Z3X$ *-* Z\X2 Z3Xg Z$Xt ZqX^ ZqXq z^x2 z3x3, € Z}X2 Z3Xg Z3Xi Z1X^ ZqXq Z^X2 Z3Xq ZgX^ Z’jX^ Z2X3» В соответствии с алгоритмом 9le 5 по ФС <Ко, КУ по- строим ФС (Kq'K'}, множество в которой состоит ИЗ СЛОВ е, •^8^1, #8^1 *^2^3, •^8^1 *^2^3 •^'5^’4, #8^1 «^2^3 «^5^4 ^3^5» 3?8^1 «^2^3 *^6^5» #8^1 ^2^3 «^6^5 •^'1^*7) XgZ{ X2Z3 XgZ3 XiZ? X^Zg^ XgZi X2Z3 XgZ3 X{Zi X^Zg XyZi) *^8^t ^2^3 #6Z3 X^Zy X^Zg XgZij *2^8^i «^2^3 *^6^5 X^Z>j X^Zg X^Z[ X2Z3j XgZi X2Z3 XgZ^ XfZj X^Zg X^Zf X2Z3 XgZ^f X3Zi X2Z3 XgZ^ XfZi X^Zg XqZ{ X2Z3 XgZ3 X^Zq4 ^8^1 #2^3 ^6*^5 «^1^7 ^^Zg XgZi X2Z3 XgZ3 X^Zq Х^2, a K' — из соотношений XiZi X2Z3 XgZi X2Z3 XgZ3 XiZ-1 XiZg XtZi x2z3^ X3Zi X2Z3 X3Z^ XgZi X2Zg XgZg XiZ’j X^Zg XgZ\ X2Z3 X3Z^ *^8^1 * *Е3%1 *^2^3 ‘^’6^’5 *£1^7 *^4^6 •^'9^1 «^2^3 *^6^5 *^1^7 *^8^i* 11*
164 ГЛ. VI. НЕКОТОРЫЕ ПРИЛОЖЕНИЯ Поскольку множество KQ удовлетворяет условиям тео- ремы 6.3.4, автомат Aq(L'), где L' = Ь(К'^ К'), бу- дет детерминированным. Разбивая множество KQ на Рис. 6.3.4. классы Ql4 построим управляющий автомат Aq(L'), состояния которого отождествим с классами отношения Ql^ входящими в L' (рис. 6.3.4). § 4. Язык параллельных композиций Известные средства моделирования параллельных про- цессов с взаимодействием, как правило, основаны на ис- пользовании графов. В графовой форме описываются при этом как независимо протекающие параллельные процес- сы, так и механизмы их взаимодействия и синхрониза- ции. К числу таких средств относятся сети Петри, било- гические автоматы, системы взаимосвязанных графов (СВГ) [39], языки ОСПАП [6, 14], ЯРУС [21], ФОРУМ [2] и др. Поведением перечисленных средств при соответ- ствующей интерпретации (маркированных сетей Петри — при условии ограниченности) являются регулярные мно- жества, а потому для решения проблемы эквивалентности графически различных моделей достаточно установить равенство регулярных множеств — поведений этих моде- лей. В ряде случаев такое решение проблемы эквива- лентности (принципиально возможное) весьма затрудни- тельно из-за чрезвычайно большой размерности конечных автоматов, представляющих поведение моделей. Между тем установление эквивалентности различных моделей является весьма важной практической задачей, особенно из-за необходимости обоснования методов преобразования моделей, сохраняющих их поведение. t
§ 4. ЯЗЫК ПАРАЛЛЕЛЬНЫХ КОМПОЗИЦИЙ 165 В настоящее время в качестве абстрактной математи- ческой модели параллельных процессов с взаимодействи- ем широко распространены сети Петри. Однако описание с помощью сетей Петри таких процессов, которые явно делятся на отдельные компоненты (блочность), не всегда отражает эту особенность процесса. В связи с этим развиваются методы и средства математического моде- лирования, непосредственно отражающие структурные особенности процессов, связанные с их блочностью. Подавляющее большинство языков первичного описания параллельных процессов содержат в себе понятие блочно- сти. В качестве примеров достаточно привести языки опи- сания дискретных устройств УСЛОВИЕ, ЯРУС, ФОРУМ, ОСПАП. Поэтому необходимы математические модели, в полной мере несущие в себе структурные особенности как самого процесса, так и его описания на первичном языке высокого уровня. Одной из наиболее общих моделей такого типа явля- ются системы взаимосвязанных графов (СВГ), описанные в [39]. В этой модели свойство блочпости моделируемой системы непосредственно отражено ее представлением в виде совокупности конечного числа взаимодействующих гиперграфов. Существенные теоретические результаты получены для частных видов СВГ — простейших систем взаимосвязанных графов (ПСВГ) [30, 31] и автоматных систем взаимосвязанных графов с простейшими связками (АСВГПС) [32]. В этих моделях отдельным компонентам моделируемой системы соответствуют инициальные ко- нечные автоматы, взаимодействие которых осуществляется в виде «связок». По определению, «связка» — множе- ство состояний некоторых графов ПСВГ или АСВГПС, обладающее той особенностью, что если граф попал в со- стояние некоторой связки, то он не может выйти из этого состояния, пока остальные графы также не попадут в со- стояние этой связки, после чего все графы, состояния которых находятся в связке, одновременно переключают- ся (это требование равносильно тому, что на входах всех этих графов одновременно — в одном такте — появляются соответствующие входные сигналы, вызывающие переклю- чение из связанных состояний). Такое условие переклю- чения является некоторым ограничением при моделиро- вании достаточно широкого класса процессов. В этом параграфе рассматривается языковая модель параллельного процесса с взаимодействием, в которой
166 ГЛ. VL НЕКОТОРЫЕ ПРИЛОЖЕНИЯ указанное ограничение отсутствует, а ее поведение опре- деляют следующие основные принципы: 1) Количество компонент (составляющих, блоков и т. п.) конечно. 2) Наступление некоторого события в ряде компонент (аналог «связки») является разрешающим условием для продолжения процесса не только в этих же компонентах (в отличие от ПСВГ и АСВГПС), а возможно, и в других компонентах. Наступления события («связки») может быть также запрещающим условием для продолжения процесса в некоторых (возможно, и во всех) компонентах, определивших это событие. 3) Продолжение процессов в компонентах после на- ступления разрешающего условия может осуществляться только покомпонентно, т. е. тактом для всей системы в целом считается момент времени, когда происходит реализация вход-выходной буквы ровно в одной ком- поненте. Существенным в модели является понятие элементар- ного процесса. Элементарный процесс состоит в реализа- ции в одной компоненте ровно одной вход-выходной бук- вы в промежутке автоматного времени между двумя разрешающими условиями для продолжения процесса в даппой компоненте. Модель по существу является формальной системой для описания композиции взаимодействующих элементар- ных процессов с параллелизмом, что и определило ее наз- вание-язык параллельных композиций (ЯПК). 1. Синтаксис ЯПК. Пусть задано п конечных алфавитов Xb i=l, = .. .,ximi},Xi(]X^0 для г=/=/. Имеется конечный алфавит тг-ок Х={(аю, ... ..., an0), ...,(air, ..., flnr)}, в каждой из которых коорди- ната представляет собой либо некоторую букву из ал- фавита либо прочерк; при этом может быть с по- меткой или без пометки. Помеченная координата обозна- чается сверху «птичкой», например, xi} или^ . Если ко- ордината ац есть прочерк (с пометкой или без нее), то она называется пустой. В тех случаях, когда наличие или отсутствие пометки у координаты ац несущественно при ее рассмотрении, это координата будет обозначаться или Назовем n-ку ^в(а^, ..., anj)^X: 1) запускающей i-ю компоненту, если имеет пометку; 2) блокирующей j-ю компоненту, если аъ- есть Хц&Хц без пометки;
§ 4. ЯЗЫК ПАРАЛЛЕЛЬНЫХ КОМПОЗИЦИЙ 167 3) безразличной к i-й компоненте, если ai5 есть прочерк без пометки. Для каждой n-ки х е X введем в рассмотрение мно- жества N(x), М(х) {1, ..п): N(x)= {i|ay = М (х) - | (йу = ху) V (®У = )}• Иначе N(x) — множество непустых координат n-ки х; М(х) — множество запускаемых n-кой х компонент; В алфавите X не содержится n-ки, безразличной ко всем компонентам, и существует единственная так назы- ваемая начальная n-ка х0, для которой N(xQ) = 0, |Л№о)1 > 1. Пусть Y = Х\{х0). Любая n-ка x^Y обладает следу- ющим свойством: N(x) Ф 0. Над алфавитом X определено универсальное множе- ство ll-x^Y*, Если w — слово из С7, то назовем i-й со- ставляющей слова w = xQXjx... xih результат удаления из слова aioa<4 • • • avk всех прочерков без пометок; i-ю со- ставляющую слова w будем обозначать мА Модулем I шЛ i-й составляющей слова w назовем слово из по- лучаемое в результате удаления из w* всех пометок и прочерков и операции конкатенации над оставшимися непустыми координатами. Если w? заканчивается коорди- натой с пометкой, то будем говорить, что слово w запус- кает г-ю компоненту, в противном случае w блокирует i-io компоненту. Пусть задано некоторое регулярное множество L^U. Будем называть L правильным множеством, если выпол- няются следующие условия: 1°. Со всяким словом w в L содержатся все начала w. 2°. Для всякого w L и для любого г, 1 i n, wi либо пусто, либо либо Vil ... vip, где для к<.р Vik есть или#ил, или a ViP есть пли я^или » ИЛИ Хгзр- 3°. Для всякого Z, 1 i С п, в L существует по край- ней мере одно слово ы?, для которого w* непусто. 4°. У всякого слова wx е L, имеющего продолжения в L, хеХ, W)¥=0.
168 ГЛ. VI. НЕКОТОРЫЕ ПРИЛОЖЕНИЯ Замечание. Всякое слово wx L, заканчивающее- ся тг-кой х, у которой == 0, не имеет продолже- ний в L. 5°. Если некоторое слово w^L закапчивается тг-кой, запускающей г-ю компоненту, то найдется слово е У* такое, что wwt содержится в L и gUurwi)1] = gkw*) + 1 *). _ Замечание. Всякое слово wx<=L, не имеющее про- должений в L, заканчивается n-кой х, у которой М(х)=&. Способы проверки выполнения условий 1° — 5° для множества L зависят от того, как задано L. Если L зада- но правильной нормализованной формальной системой (ФС) <К0, Ю, т. е. L = lAKt, К\ то условие 1 ° выполняет- ся, если и только если Ко согласовано с й-набором К**). Пусть условие 1° выполняется. Тогда справедливы следующие утверждения. Для выполнения условия 2° в К) достаточно, чтобы условие 2° было выполнено для всякого слова из Ко и всех правых частей соотношений fc-пабора К и чтобы для всякого соотношения из К левая и правая части этого соотношения запускали совпадающие множества ком- понент. Обозначим K0=K0(J{u; J (v+-*w) е К}. Для выполнения условия 3° необходимо и достаточно, чтобы для всякого г, 1 i тг, среди слов из Ко суще- ствовало по крайней мере одно слово w, у которого w* непусто. Для выполнения условия 4° необходимо и достаточно, чтобы это условие выполнялось для всех слов из множе- ства Ко, имеющих продолжение в L. Условие 5° выполняется тогда и только тогда, когда для всякого г, 1 С i С п, и всякого w е Ко, заканчивающе- гося тг-кой, запускающей f-ю компоненту, среди всех слов wWi^L, g(Wi) < |К01, пайдется по крайней мере одно слово ww{ е L такое, что g[(u?ur1)<] = g(w*) + 1. Определение 6.4.1. Правильное множество L, задан- ное правильной нормализованной ФС <К0, К>, будем на- зывать описанием на ЯПК. *) Здесь —длина w'. Если w* пусто, или^{ = —, то g(ipf) =о. В общем случае длина равна числу n-ок, входящих в и? и имеющих непустую i-ю координату. ♦*) Здесь предполагается, что в К нет ни одного «лишнего» соотношения, у которого левая часть не является началом ни од- ного слова из KQ.
§ 4. ЯЗЫК ПАРАЛЛЕЛЬНЫХ КОМПОЗИЦИЙ 169 2. Семантика ЯПК. Правильное множество L, построенное в соответствии с условиями 1°—5°, изложен- ными в первом разделе, можно интерпретировать как структуризованное описание поведения некоторой систе- мы. При этом, если система начинает функционировать из начального состояния, то каждой возможной траекто- рии системы соответствует некоторое слово w из L. Вооб- ще говоря, это соответствие может и не быть однознач- ным; для произвольного правильного множества L каж- дой траектории системы соответствует более одного слова, но для описания такой траектории системы достаточно каждого из этих слов. Содержательно предлагаемый язык может быть ис- пользован для описания поведения системы, имеющей п компонент (блоков, каналов и т. п.). Пример 6.4.1. На рис. 6.4.1. показано короткое дерево множества Ю, для которого Ко = {Л, х0, x0^i, xQXixJ, K=*{xq ++ x0XiX3, XqXi -*-* x0x2}, Xi = {a, b}, X2 = {c, d}, Xs = {el. Вершины дерева, являющиеся последними n-ка- ми слов, находящихся в одном классе эквивалентности Ек, помечены соответствующим количеством звездочек. Не- трудно убедиться, что приведенное множество L удовлет- воряет условиям 1° — 5° синтаксиса. В начальный момент в соответствии с я0 запускаются 1-я и 2-я компоненты, и тогда в соответствии с тем, что х0 может быть продолжено в L по буквам х^ и х2, в 1-й компоненте может наступить со- бытие, описываемое или как а, или как &, во второй компоненте может наступить событие, описы- ваемое или как с (в соответствии с тем, что XtXiX3^L\ или как d (в соответствии с тем, что eL). Обе компоненты после за- пуска функционируют независимо одна от другой; при этом предпо- лагается, что никакие два события в различных компонентах не могут наступить одно- временно. Пусть, например, произошли события Ъ и d\ тогда счи- тается, что реализовалось слово х^х^ запускающее все три компоненты, и система снова будет функционировать покомпонентно независимо до тех пор, пока не наступят события &, с V d, е и т. д. (bce)3 Рис. 6.4.1.
170 ГЛ. VI. НЕКОТОРЫЕ ПРИЛОЖЕНИЯ Из начального положения возможно также наступле- ние событий Ъ и с. При этом не смогут быть реализованы ни слово ни слово — система попадает в тупико- вое состояние. Перейдем теперь к формализованному описанию пове- дения системы, заданной некоторым правильным множе- ством L. Рассмотрим произвольное слово w = L, где xi± = xQ, xik e Y для к == 2, ..., p. Для всякой пары целых чисел (г, /), удовлетворяющих неравенствам 1 i < j р, построим множество = = {тп1, ..тг}, состоящее из номеров тех и только тех компонент, которые одновременно удовлетворяют следу- ющим условиям: а) Мц (zZ{) П б) все тг-ки xift для любого к, удовлетворяющего не- равенствам Кк<] (если такое к существует), безраз- личны к компонентам с номерами mi, ..., тг. Если то пара (£, /) определяет фрагмент I рода <pw(j, /) формулы F(w) (сама формула F(w) будет определена ниже): •фю(^> ji) = (#mi, • • • "#mr, fcr)i, где xmq, kq e Xmq — координата п-ки Xi$ с номером mq e= при этом, если y = i+l, то в <pw(f, ;) опуска- ются внешние скобки и индекс i. Фрагмент <р»(г, /) строится на основе операции II — параллельной компози- ции (в зарубежной литературе известной как concurrent composition, shuffle product, die Verzahnung). В частно- сти, если рассматривается параллельная композиция ajl... На*, где щ — слова длины 1, а^=/=а,, то она задает множество всех слов длины к, имеющих ровно одно вхож- дение каждой из букв ак. Для всякого i, 1 i < р, построим теперь множество Mikw) = {ni, ..., тг$}, состоящее из номеров тех и только тех компонент, которые одновременно удовлетворяют сле- дующим условиям: a) Mi (w) s М (xZ{), Мр (w) = М (xZp); б) все и-ки Xik для любого к, удовлетворяющего не- равенствам i < к р (если таковые тг-ки существуют в слове w), безразличны к компонентам с номерами ni, . ,.ns.
§ 4. ЯЗЫК ПАРАЛЛЕЛЬНЫХ КОМПОЗИЦИЙ 171 Если то можно определить фрагмент II ро- да -фш(г) формулы F(w)*): фш (0 = (Г1 \ / Г8 \ U 1 II • • • || I U xnstmt I 9 t=l ' \t=l /Ji rg где U xnqtmt — объединение непустых координат с номера- ми nq последних тг-ок всех возможных в L продолжений слова ip? — начала w длины f, имеющих n^-ю составля- ющую длины, большей на единицу, чем длина ng-й со- ставляющей слова . При этом, если i = р, то в обозна- чении ipw(p) опускаются внешние квадратные скобки и индекс р. Нетрудно убедиться в том, что для поиска по L(KQ, К) rq множества U xnqtmt достаточно рассмотреть все возмож- но ные в L продолжения слова ip”, длина которых не пре- восходит + I |, имеющие nq-ю составляющую длины, больше на единицу, чем длина nq-й составляющей слова w”. Обозначим конкатенацию фрагментов I рода <pw(Z, /) при фиксированном / и всех i, для которых =/= 0, через Очевидно, что для всякого /, 2^/^р, ¥= 0, поскольку все и-ки xik для & > 2, содержа- щиеся в слове ш, имеют не менее одной непустой коор- динаты. Конкатенацию всех фрагментов II рода слова w обозначим *ф(и?). Порядок фрагментов в фДи?) и вообще говоря, безразличен, однако будем придерживать- ся правила: фрагменты выписывать в порядке убывания параметра i. Формула F(w) строится по фрагментам I и II рода с помощью следующего алгоритма Я6 б. Алгоритм $(6.б построения формулы F(ip). 1. Если р=1, то F(w) :== Lifwd) и перейти к п. 7, иначе к п. 2. 2. k:=i. 3. k:=k+i. *) Параллельная композиция Vil|V2ll ... IIVn, где Vk — ко- нечное множество букв ahi есть множество всевозможных слов внда a lix j а91в] ... | anin, где <= Vh.
172 ГЛ. VI. НЕКОТОРЫЕ ПРИЛОЖЕНИЯ 4. Fft(w) :=Fk-Aw)qk(.ufilft. 5. Если к<р, то перейти к п. 3, иначе к п. 6. 6. F(w) :=FP(w)^(.w). 7. Конец. Пример 6.4.2. Пусть множество L описывается, как в примере 6.4.1. Рассмотрим w = х<>Х1Х3х2 s L. Тогда F(w) = I l3blld|4&llrtlle, где rt — {с, <Й. Формула F(w) для всякого w^L задает некоторое / п \* множество L (w) (J I , состоящее из всех слов, \ 1=1 / которые допускаются формулой F(iv). Слово I допускает- ся формулой Г(и?), если I построено по F(iv) в соответ- ствии с приводимым ниже алгоритмом 9Сб.7. Предварительно определим процедуру растворения не- которого слова veZi в слове wgZ2, где Z{ и Z2— два непересекающихся произвольных конечных алфавита. В результате этой процедуры получается слово и = w ф © ие (Zj (J Z2)*такое, чтоuZ1 = р, uz^ = w *). Иными словами, w ф v = w\\v = v Ф w. Алгоритм Яв.7 построения слова допускаемо- го формулой F(ip). 1. Если р==1, то Z(ip):=Z, где / — произвольное на- чало любого слова из 4»w(l), и перейти к п. 10, иначе к п. 2. 2. /с:-1, Z(1): = |rZ(1) |2, VZ(1> <= ф2 (w) = <pw (1, 2). 3. к : = к + 1. 4. ZiA): = Z(A-1) Z(ft), V <pw(k — 1, к), если выполня- ется <рш(& — 1, к) 0, иначе Zift): = Z(ft-1\ 5. Из всех фрагментов <pw(Z, к) Ф 0, i < к — 1, выбрать по одному произвольному слову из каждого <pw(Z, к) и расположить их в произвольном порядке. Растворить первое слово Г(<| к) в той части 1^ = 1$ | i 1$, которая находится правее вертикального штриха с номером i, В результате 1^'- = и перейти к следу- ющему слову из набора l{i>k\ Продолжать эту операцию, пока не будут исчерпаны все слова Г(<’ю. *) Здесь uz^ и uz% — проекции и в Z\ и Z2 соответственно.
4 § 4. ЯЗЫК ПАРАЛЛЕЛЬНЫХ КОМПОЗИЦИЙ 173 6. 11»: = П- 7. Если к < р, перейти к п. 3, иначе к п. 8. 8. Из всех фрагментов образующих i|;(w?), выбрать по одному произвольному слову Ц из каждого ipw(f) =/= расположив их в произвольном порядке. Ра- *V(i) 7Н 7 м створить произвольное начало I = ч первого из Ц в той части 4Р) = It? |i которая находится правее верти- • ?(р) кального штриха с номером г, в результате . == = «”!<(«’вТ°) и перейти к следующему слову из на- бора Ц\ продолжать эту процедуру до тех пор, пока пе будут исчерпаны все слова Ц. 9. Опуская в 4Р) все вертикальные штрихи и круглые скобки, получаем слово l(w\ допускаемое формулой Ftw). 10. Конец. Пример 6.4.3. В обозначениях примеров 6.4.1 и 6.4.2 слово acbedbc допустимо формулой А(ш), w = х^х^х^ Определение 6.4.2. w^L}, 8= U L(w). Множество 8 есть, таким образом, поведение системы, заданной множеством L. Иначе: множество L есть струк- туризованное описание поведения 8 системы. Теорема 6.4.1. Всякое 8, порождаемое правильным 1АКо, Ai), является регулярным множеством. Доказательство. Пусть задано правильное ре- гулярное множество L(A0, А). Построим по ФС <А0, А> безопасную сеть Петри (СП), имеющую своим поведением множество 8' — некоторое регулярное множество, но от- ношению к которому 8 является гомоморфным образом п 8' в алфавите U Х{. Тогда 8 — регулярное множество. г=1 Построение сети осуществляется в соответствии с ал- горитмом $(6,8. Алгоритм §С6.8 построения СП по ФС <А0, А>. 1. Построим автомат Aq(L) представляющий всеми своими состояниями множество 1АК^ К). При этом счита- ется, что если какая-то пара вершины sif s3 соединяется ребром, нагруженным дизъюнкцией тг-ок Xi19 • • • ’ то это соответствует наличию в автомате Aq(L) к ребер, соединяющих s{ с Sj, каждое из которых нагружено един- ственной re-кой. Занумеруем ребра числами i = 1, ..N.
174 ГЛ. VI. НЕКОТОРЫЕ ПРИЛОЖЕНИЯ 2. Поставим в соответствие Z-му ребру автомата Aq(L), не ведущему в тупиковое состояние, некоторый символ Р{, так что различные ребра имеют различные Pi. 3. Построим по Aq(L) вспомогательную сеть Петри, которую в дальнейшем будем именовать скелетной СП. Для этого на каждом ребре автомата Aq(L), пе веду- щем в тупиковое состояние, построим черточку, помечен- ную соответствующим Р^ тупиковые состояния и веду- щие в них ребра удалим и оставшиеся состояния Aq(L) объявим кружками скелетной СП. 4. Дополним скелетную СП построением набора круж- ков и черточек по следующим правилам: а) если n-ка соответствующая некоторой черточке Pi (нагружающая Z-e ребро), запускает к компонент (|jf(xj)| = к), то для каждой черточки Р< построим к кружков, каждому из которых одно-одпозпачпо поставим в соответствие некоторую из запускаемых компонент; б) из каждого такого кружка, соответствующего тп-й компоненте, как из начального состояния построим звезд- ный граф, у которого имеется I черточек, 21 ребер и I +1 кружков; при этом каждая пара ребер ведет из началь- ного состояния в некоторую черточку и из нее в тупико- вый кружок звездного графа; I — число различных букв алфавита Х?п, по которым строится фрагмент II рода ipwCp) любого слова w L длины р, оканчивающегося n-кой х/, в) каждую черточку построенных для всех Pi звездных графов пометим некоторым символом Qh так что ни одна пара черточек не имеет одинаковых пометок; при этдм устанавливается некоторое отображение множества поме- п ток {(М в множество U i=i г) введем из каждой черточки Р< во все начальные кружки звездных графов по одному ребру; д) для каждой черточки Pi построим тгц кружков (кружков условий) соответственно числу непустых коор- динат тг-ки х} {тпг = l2V(#j)l) и из каждого такого кружка введем по одному ребру в черточку Pi. 5. Пусть для пары СР<, Р3) на графе скелетной СП су- ществует путь 5, ведущий из Pi в Pj. При этом n-ка xk, соответствующая Pi, запускает Z-ю компоненту, для тг-ки Хт, соответствующей Pj, множество N(xm) содержит номер Z, и каждая тг-ка слова w, соответствующего пути 5, кро- ме хк и хт> безразлична к Z-й компоненте, Тогда из тупи-
§ 4. ЯЗЫК ПАРАЛЛЕЛЬНЫХ КОМПОЗИЦИЙ 175 нового кружка звездного графа, соответствующего букве Хи, которая является l-й координатой n-ки хт, выведем ребро и через черточку введем его в соответствующий 1-й координате кружок условий черточки Р}. Вводимое таким образом множество черточек пометим символами П„ не входящими ни в {PJ, ни в Очевидно, что из всех путей, ведущих из Р{ в Ps, для реализации и. 5 алгоритма &б,8 достаточно просмотреть лишь пути без циклов, длина которых не превосходит |А01. 6. В кружок построенной СП, соответствующий началь- ному состоянию автомата Aq(L), поместим одну мет- ку — тем самым определяется начальная маркировка СП. 7. Конец. В качестве примера на рис. 6.4.2 представлена СП, получаемая по алгоритму й88 для 1ЛКа, К), рассмотрен- ного в примере 6.4.1. При этом имеет место следующее соответствие: {<?*, -* a, {Qt, Qs, Qt, -> 6, {(\, <?io> “* c, {(?„ “* d, {$«, в- Получаемая в соответствии с алгоритмом $1в.8 СП по построению и в силу условия 2 синтаксиса является безопасной. Отсюда получаем, что множество 8', пред- ставляемое такой СП достижимыми маркировками, регу- лярно. Осуществляя теперь подстановку по правилам Pi -* А, /?< -* А и Qk -*• Xi (в соответствии с и. 4 в алго- ритма §10.8), получаем множество 8, которое также явля- ется регулярным. Теорема доказана. Пример 6.4.4. Для множества LkK^, К), определенного в примере 6.4.1, множество 8 имеет короткое дерево, пред- ставленное на рис. 6.4.3, и описывается ФС (Ко, К'}, приводимой ниже: Ко = {А, а, Ь, с, d, ab, ас, ad, ае, Ьс, cb, abc, abd, abe, асе, ade, abde, abed, adeb}, К —{a bd, ас *-► ca, ad da, bd db, abc »-* acb, abd adb, abe ** aeb, ace «-► aec, A ** abce, A +> abec, A ** aceb}. Для сравнения отметим, что множество £(Я0, К) представляется автоматом Aq(L) с тремя состояниями, ь то время как автомат Aq(S) имеет 15 состояний. 3. Каноническая форма описания на ЯПК. Выше отмечалось, что установление эквивалентности раз-
176 ГЛ. VI. НЕКОТОРЫЕ ПРИЛОЖЕНИЯ личных моделей, особенно в связи с необходимостью вве- дения обоснованных методов преобразований, сохраняю- щих поведение моделей или описаний процессов на пер- вичных языках высокого уровня, является весьма важной практической задачей. Рис. 6.4.2. В работах [30—32] для частных случаев СВГ —про- стейших СВГ (ПСВГ) и автоматных СВГ с простейшими связками (АСВГПС) — развит подход к решению пробле- мы эквивалентности, позволяющий избегать построения конечных автоматов, представляющих поведение этих моделей. Сравнение моделей при этом осуществляется на основе сравнения их так называемых структуризован-
& 4. ЯЗЫК ПАРАЛЛЕЛЬНЫХ КОМПОЗИЦИЙ 177 ных образов, которые строятся по модели с помощью спе- циального алгоритма. Применительно к ЯПК решение проблемы эквива- лентности также приобретает достаточно простую форму. Рис. 6.4.3. Ниже показано, что при наложении на описание на ЯПК некоторых дополнительных условий, определяющих так называемую каноническую форму описания на ЯПК, эквивалентность двух описаний на ЯПК L(KQli KJ и 1ЛК02, К2) сводится к изоморфизму представляющих их автоматов и Aq(L2)*), размерность которых на- много меньше размерности автоматов, представляющих поведение этих моделей. Возможны также и иные спосо- бы решения задачи эквивалентности двух описаний на ЯПК, сводящиеся к доказательству равенства £1 = L2 без построения автоматов Aq(LJ И A^LJ. С помощью автомата Aq(L), представляющего опи- сание на ЯПК [ЛКъ, К), может быть решена также зада- ча минимизации описания на ЯПК. Действительно, по за- данному описанию на ЯПК KJ можно построить описание на ЯПК L{K^, Кг), эквивалентное L(jK01, KJ и имеющее наименьший размер из всех описаний на ЯПК, эквивалентных L(Kai, KJ. Это определяет перспективы использования ЯПК для моделирования первичных языков высокого уровня, в кон- струкциях которых используются блочность и паралле- *) Здесь Li = I(£oi, KJ, Lt L(KQ2, KJ, 12 Конечные автоматы
178 ГЛ. VI. НЕКОТОРЫЕ ПРИЛОЖЕНИЯ лизм. Такое моделирование может стать основой для вы- работки методов формальных преобразований исходной информации в некоторую форму, удобную для оптимиза- ции при построении дискретных устройств. Синтаксис правильного ЯПК определяется в основном условиями 1° — 5°. Продолжая этот перечень, сохраним сквозную нумерацию условий, чтобы упростить ссылки в тексте на различные условия. Условия 6°—-9° исключают возможность неоднознач- ного описания одного и того же фрагмента поведения си- стемы. Это касается в первую очередь устранения неодно- значности описания тупиковых ситуаций, регламентируе- мых условиями 6°—8°. G помощью условия 9° выработано некоторое достаточное условие однозначности соответст- вия между произвольной траекторией системы I и таким словом weL, что I допустимо формулой F(w). 6°. Если слово w заканчивается тг-кой, запускающей i-ю компоненту, то для всякого слова ww'x L, x^Y, такого, что 1) М(х) — 0 (в силу условия 4° синтаксиса правильного множества ww'x не имеет продолжений в /у), 2) g[[ww'xY] =g(ip’') + l и 3) х блокирует i-ю компо- ненту (t^7V(x)), выполнено равенство w' = А. 7° Для всякого слова w & L, если существует, то единственная n-ка х е Y такая, что wx содержится в L и М(х) = 0 (wx не имеет продолжений в L). Пусть w = vlx^L, x^ Y, g(w*)«р, i<^M(x). Рас- смотрим все слова wv2^L, для которыхg [(^2)г] = Р+Ъ силу условия 5° синтаксиса правильного множества L множество таких слов непусто. По всем таким словам составим множество V\(w) = где xir — i-я координата единственного тупикового слова (если оно существует) wv2 = wx, е L (xir — 0, если тако- го слова не существует в L)-,xi8k— i-я координата послед- ней тг-ки й-го из слов wv2, имеющих продолжения в L. Множество Vi(w) назовем множеством возможных в L продолжений w\ Число различных элементов в Vt(w) ко- нечно (в силу конечности ^алфавита Х<), поэтому ниже рассматривается множество У<(м?)= {х{Г,хц , ...,яп*},в ко- тором все элементы, быть может, за исключением х<г, по- парно отличны. Для построения множества доста- точно рассмотреть лишь конечное число слов wv2 из L, длина которых не превосходит g(w) + |7С01, что вытекает из регулярности L(KQi К).
§ 4. ЯЗЫК ПАРАЛЛЕЛЬНЫХ КОМПОЗИЦИЙ £79 8°. Для всякого w=^vYx^L и всякого i^Mix) мно- жество Viiw) обладает следующим свойством: если xiT^ Ф 0, то xir отлично от всякого хик^ 9°. Для любой пары слов w±= wx, w2 = wy, wx, w2 e (=L,x,y(=Y, x =(aj1), ..., 4“), у = (48>, ..., 42)), имеет место Nix') A Niy) 0 и при этом существует i е Nix) A Niy), так что для «i(1) = xift, 42) ~ xim имеет место xik^xim. Исключение из этого правила составляют лишьтетг-ки х или у, которыми оканчиваются слова, не имеющие про- должений в L. Например, пусть wx не имеет продолже- ний в L. Тогда возможно Nix) ft Niy) = 0; если же Nix) ft A2V(z/)=^0, то для всякого ie Nix) A Niy) в силу усло- вия 8° имеем xik xim. Имеют место следующие легко доказываемые утверж- дения. Для выполнения условия 6° необходимо и достаточно, чтобы было выполнено следующее: а) если слово запускает f-ю компоненту, то для всякого слова ww'x^ &К0 такого, что Mix) = 0, gliww'xY] = giw{) + i и Nix), имеет место wr =»A; б) если в обозначениях п. а) в /^наборе К имеется соотношение w ++uy, y^Y, то ie=Miy). Условие 7° выполнено тогда и только тогда, когда для всякого w — слова из KQ, если существует, то единствен- ная п-ка x^Y такая, что wx содержится в L и Mix)= 0. Для выполнения условия 8° необходимо и достаточно, чтобы это условие выполнялось для всех слов из Ко. Для выполнения условия 9° необходимо и достаточно, чтобы ОНО ВЫПОЛНЯЛОСЬ ДЛЯ любой пары СЛОВ Wi = wx, ip2 = wy, где w е К^, L, х, у Y. Правильное множество L, удовлетворяющее условиям 6° — 9°, будем называть каноническим множеством или каноническим описанием на ЯПК, если L задано ФС <Хо, КУ. Если множество L есть правильное множество, задан- ное ФС <К«, КУ, то множество 6, порождаемое множест- вом L = ЫКъ, К) (в соответствии с семантикой), будем обозначать 8(Х0, К). Определение 6.4.3. ФС <#Oi, К^У эквивалентна ФС <Ко2, К2У относительно 8(<А01, КЛ<КЮ, кг», если «(Kai, KJ = 8(Я02, К2), в ФС <Яо1, KJ и <^02> К2> раз- мерности n-ок одинаковы, и между алфавитами иХр> 12*
180 ГЛ. VI. НЕКОТОРЫЕ ПРИЛОЖЕНИЯ каждой системы имеется одно-одпозначное соответствие, т. е. для всякого i, ККп, существует у, К / < п, так что Назовем размерностью L размерность n-ок алфавитах. Теорема 6.4.2. Пусть канонические «множества L{ и Ь2 имеют размерности и п2 и при этом щ = п2 = п, Х^ = = Х|2) для всякого г, 1 i С п. Равенство 8t = 82 имеет место тогда и только тогда, когда L{ = L2. Доказательство. Пусть 81 = 82*, при этом размер- ности и Ь2 совпадают и равны п, Х^ = Х(42) =ХЙ где Х^} — алфавит г-й компоненты в & = 1, 2; г = 1, ..., п. Покажем, что In « Ь2. Доказательство будем вести индукцией по длине слов. Пусть х^, Xq2) — начальные n-ки в Л и L2 соответственно. Докажем, что имеет место равенство ^о1) = • От противного: пусть t е M(xq1)), i ф М(#о2)). Тогда в 8t в силу условия 5° синтаксиса правильного множества Ln су- ществуют слова, начинающиеся с букв алфавита Х<? а в 82 таких слов нет, что не согласуется с равенством 84 = 82. Пусть уже доказано, что в Д и £2 совпадают все сло- ва до длины к включительно. 1. Рассмотрим некоторое слово z — z'x е Ln П L2, 1 < где хпоследняя n-ка слова z, Jf(x)¥s0. Пусть для произвольного i^M(x) ms)=р". ............*'«;} . •.!<?’}. где и Р$2)(я) построены^соответствепно по Li и L2. Докажем равенство V^z) = (z). Построим в 8i слово g е Zq(z), получающееся из про- извольного слова, допустимого формулой FJz), из кото- рого удалены все слова, соответствующие фрагментам II рода. В силу индуктивного предположения очевидно, что ge£2(z)<=82. Если L — некоторое каноническое мно- жество, w — произвольное слово из L, то всякое слово Z, допустимое формулой F(w), из которого удалены все фрагменты II рода, обладает тем свойством, что в L не существует пи одпого слова р, пе являющегося началом гр, такого, что I допустимо формулой F(v). Это опреде- ляется условиями —8° синтаксиса, если ip-тупико-
§ 4. ЯЗЫК ПАРАЛЛЕЛЬНЫХ КОМПОЗИЦИЙ 181 вое слово в L, и условиями 8°, 9°, если w не является тупиковым. Отсюда по всякой компоненте с номером ге &М(х) q может^быть продолжено в~81 только по неко- торой букве из (z), а в 8^— из V(i2)(z). Так как = отсюда имеем (z) = V|2)(z), как совокупности не- которых букв Xi. Требуется еще показать, что тупиковые члены и х$ совпадают. Покажем, что для всякого Р$(1) (я) в Рх2)(г) найдется элемент х\^ совпадающий с Обозначим g(z)=^kl. Пусть x$m = Рассмотрим в Li слово и = = zxT1... хГрдлины kt + р, в котором хГт е Ух, 1 иг^р, такое, что|(жГ1... хГр){| = х^т, но |(a?ri... жГр_г)‘ | = 0. Пусть l = qli...lp^LSu) <= St, где lr е <pftl+1(u), ...,Zpe е Tfei+P (u)и Zp = Wim- Выбирая произвольное / построим слово Z* = ZZje8i, где ZjeXj. В силу равен- ства 81 = 82 слово Z* содержатся также в 82, но в 82 содер- жится также и слово V = qlL ... ZP^(J^» поскольку хЩп = 3$ и не влияет поэтому на запуск /-й компонен- ты (в силу условия 8°). В множестве 8t слово V не содержится в силу условия 1° синтаксиса. Отсюда Аналогично, Таким образом, име- ем равенство х$ = ^2) и в силу условий 6° и 7° синтак- сиса совпадают тупиковые тг-ки, по которым в и 12 продолжается слово z длины к. 2. Докажем, что множества нступиковых тг-ок, по ко- торым может быть продолжено в Д и L2 слово z длины к, также совпадают. Рассмотрим произвольную n-ку х такую, что zx е Li9 М(х) = {q^ ..., 0, N(x)=» = ...» рА Пусть 1 = qli...lavj^&l, где1г=аРе aPi— координата n-ки х с номером р» е N (х), v^Xq.,q^ В силу равенства 8i = 82 слово I содержится так- же в 8а и, следовательно, в £2 должно содержаться слово и = zxj± ... х^т1 m^i,Xjv ..., Y2 такое, что Ze eZ,2(a) (но Z<£L2(hh)). При этом N (x) = N (J ... ... (J q^ M(^jm) и для каждой координаты тг-ки х с номером р< е N(x) среди тг-ок x$v ..., х$т существует ровно одна тг-ка с непустой координатой с номером р<»
182 ГЛ. VI. НЕКОТОРЫЕ ПРИЛОЖЕНИЯ совпадающей в соответствии с п. 1 доказательства (без учета наличия или отсутствия птички) сар.. Проводя аналогичные рассуждения, получим, что в Li должно содержаться слово u'=zxkl... 1, ..xftge= Ylt такое,что N(*h) = N (xhl) U •. • U Я(4’Д и для каждой координаты га-ких^ с номером среди n-ок xhl, ..., xftg существует ровно одна га-ка с не- пустой координатой с номером р{, совпадающей саР1. От- сюда 2V(x) и координаты n-ок хи хк1 с но- мерами из N (xftl) совпадают, что может иметь место в силу условия 9е синтаксиса, только еслиХй1=х. Следова- тельно, N (х) = ^(xjx) и с учетом обратного включения ДГ(х)=ДГ(л:{1).Тогда в слове и ттг = 1, q^Mfx^n, сле- довательно, М (х) Аналогичным образом дока- зывается обратное включение, и, значит, М (х) = что завершает доказательство равенства х = xjrПоэтому можно считать, что в Л и L2 совпадают все слова длины g С к + 1. Теорема доказана. Из этой теоремы следует, что если поведение некото- рой системы задано в виде канонического описания на ЯПК £(#0, К), то всякое преобразование такого описа- ния, сохраняющее размерность описания, нумерацию ал- фавитов поведение системы 8 и оставляющее в классе канонических описаний на ЯПК, может быть только преобразованием, сохраняющим множество L(KQr К). Дру- гими словами, автомат Aq(L), представляющий L(KQi К), является инвариантом любого такого преобразования. Теорема дает также ключ к установлению факта экви- валентности двух произвольно заданных описаний на ЯПК Z/(2T01, Ki) и L(K02, К2). Если размерности £t = = £(#Oi, К^ и L2 = L(JKm, #2), нумерации алфавитов и сами алфавиты и х({2) совпадают, то L (#01, #2) ft £(#02, #2), если автоматы Aq(L^ и Aq(£2)изоморфны (совпадают с точностью до обозначения состояний). Для построения этих автоматов достаточно воспользоваться алгоритмом Из теоремы в качестве следствия может быть получен следующий необходимый признак эквивалентности двух описаний на ЯПК: если £ (#01, #i)~ L {KQ2,K^, то ал- фавиты n-ок Х(1) и Х(2) совпадают. Отсюда несовпадение
§ 4. ЯЗЫК ПАРАЛЛЕЛЬНЫХ КОМПОЗИЦИЙ 183 алфавитов Х(1) и Х(2) является достаточным признаком неэквивалентности L(K01, KJ и L(KQ2, KJ. Пример 6.4.5. Пусть Км = {А, Хо, Zo#i, x^xj, Ki = {х0 Я0Я1^з, Xq Жо^з), 2£o2 =' {A, xQ, xQxi9 xox2, xQXiX3i xQXiX3xJ, Kz = {Xq <-> X0X2^3, X&i -<-> X^XiXzXu X^XiX3 ++ ХйХхХ3Х2Х3}, где x0, xu x2, x3 имеют тот же смысл, что и в примере 6.4.1. Очевидно, что Li = L(X01, KJ и L2 = L(K02, KJ яв- ляются каноническими описаниями на ЯПК. Их эквива- лентность относительно 8 можно установить, если заме- тить, что KQ2 <= L(Koi, KJ, Км^ЫКог, KJ, и показать, что всякое соотношение и ++ w из А-набора Кt обладает тем свойством, что uQi^w, а всякое соотношение и' <-> w' из й-набора К2 обладает тем свойством, что ((?ьг и Ql2 — явные отношения эквивалентности относи- тельно Li==IAKOi, KJ и L2 = L(Kq2, KJJ Тогда в силу теоремы 3.3.1 будет выполнено равенство Lt = La. Действительно, для всякого соотношения (uz wj е &К2 имеет место u’Ekjjd’ и, следовательно, u'QLyu)'. Раз- бивая KQ2 на классы явного отношения эквивалентности Qlv убеждаемся в том, что {А} = Qq, {х^, х^х3} <=. Qt, #о#2, Я0Я1Я3Я2} с Таким образом, для всякого со- отношения (и ++ w) Ki имеет место uQl^w. Следователь- но, е(2Г01, Х4)= 8(^02, KJ. Используя полученные результаты, можно для приве- денных ФС <Xoi, KJ и <Х02, KJ построить ФС <Л0, К> такую, что L(K0, К) = Li = L2, и имеющую наименьший размер. Таковой будет ФС <К0, КУ, в которой -Ко = = {A, х3, XqxJ, К = {xQXi хйх2, х0 xQXiX3}.
ПРИЛО ЖЕНИЕ КОНЕЧНЫЕ АВТОМАТЫ И АССОЦИАТИВНЫЕ ИСЧИСЛЕНИЯ Использованные в этой книге при аналитическом опи- сании регулярных множеств языки эквивалентных пре- образований являются частным случаем известного в ма- тематике вида исчислений — так называемых ассоциатив- ных исчислений. В этих исчислениях, в отличие от регу- лярных систем, допускаются подстановки не только в на- чалах (или только в концах) участвующих в выводе слов, по и в любом месте этих слов. Так же как и ЯЭП, ас- социативные исчисления не используют алфавит вспомо- гательных символов. Из результатов, полученных Дж. Майхиллом [55], следует, что всякое регулярное множество может быть представлено как множество слов, выводимых из слов ко- нечного множества в некотором ассоциативном исчисле- нии. Для конечноавтоматных множеств этот же резуль- тат получен в работе [51, в которой используются ассо- циативные исчисления с подстановками частного вида. Определим, следуя А. И. Мальцеву [24], ассоциатив- ное исчисление, используя при этом принятые в этой книге обозначения. Зададим в алфавите X (или во вход-выходпом алфа- вите X X У) конечное множество К соотношений Vi ++ ..., vp ++ wp, (П.1) где vh Wi е X*, К i р. Будем говорить, что слово v' непосредственно выводимо из слова v (обозначается v'), если существуют такие слова V, W, что либо v =• = VviW, v' = VwiW, либо v = VwiW, v' = VvtW, где <-> Wi — соотношение из множества К. Скажем, что слово v' выводимо из слова v (обозначается v' = v), если су- ществует конечная последовательность слов v{, v2, ..., vk такая, что v = v{, v' == vh, а каждое v<+4 непосредственно выводимо из Vi, 1 i С к — 1. По определению полагаем, что каждое слово выводимо само из себя, т. е. v » v. Легко заметить, что отношение » рефлексивно, сим- метрично и транзитивно, т. е. является отношением экви- валентности. Отношение « согласовано с операцией
ПРИЛОЖЕНИЕ 185 конкатенации, т. е. (и = u')(v — vr) => uv^ u'v'. (П.2) Из этого следует, что s является по отношению к кон- катенации как правым, так и левым инвариантами, т. е. конгруэнтностью. Действительно, если v = v', то для вся- ких и, w<=X* имеет место uvw^uv'w. Все это позволяет рассматривать операцию конкате- нации как определенную не только для слов в X*, но и для классов эквивалентности отношения =, называемых смежными классами. Смежный класс, содержащий слово v, будем обозначать через [р]. Из сказанного выше сле- дует, что соотношение u^v равносильно равенству [и] = = [р]. Конкатенация для смежных классов определяется как [u] [р] = [iw].’ (П.З) В силу (П.2) эта операция однозначна па множестве всех смежных классов, а пз (П.З) следует ее ассоциатив- ность, т. е. справедливость соотношения ([и] [р] )[и>] = [(uu)id = [uivw)] = [и] ([р] [ ip] ). Таким образом, совокупность всех смежных классов по модулю является полугруппой. Так как для любого v = из (П.З) следует [р] = [XfJ [xi2]... [xtJ, то указанная полугруппа называется полугруппой, за- данной порождающими xh ..., хт (элементами алфавита X) и соотношениями ассоциативного исчисления (П.1). Далее, говоря «множество L описывается ассоциатив- ным исчислением <Х0, Х>» (L = L(^0, X)), будем пола- гать, что L является объединением конечного числа смеж- ных классов ассоциативного исчисления с множеством соотношений К и конечным множеством KQ представи- телей указанных смежных классов. Перечислим некоторые результаты, относящиеся к ас- социативным исчислениям, необходимые для определения описательных возможностей ассоциативных исчислений и их соотношения с описательными возможностями регу- лярных систем. 1°. В каждом ассоциативном исчислении совокупность пар эквивалентных слов рекурсивно перечислима (см., на- пример, [24]).
186 ПРИЛОЖЕНИЕ Действительно, для каждого данного слова v легко найти все слова, получаемые из него с помощью непо- средственного вывода, выводов длины 2 и т. д. Из этого свойства ассоциативных исчислений следует, что множества L(X0, К) являются в классификации Хом- ского [47] языками типа 0. Всегда ли такие множества являются языками типа 1, т. е. все ли смежные классы любого ассоциативного исчисления рекурсивны? Ответ на этот вопрос, как показывает следующая теорема, от- рицателен. 2°. Теорема (Поста — Маркова). Существует ассоциа- тивное исчисление с алгоритмически неразрешимой проб- лемой эквивалентности слов. Отсюда следует, что существуют языки типа 0, не яв- ляющиеся языками типа 1, описываемые ассоциативными исчислениями. 3°. Всякое регулярное множество может быть пред- ставлено в виде объединения конечного числа смежных классов в некотором ассоциативном исчислении. Покажем, что этот результат является следствием тео- ремы Майхилла [55] о конгруэнтности. Прежде чем при- вести формулировку нужной нам части этой теоремы, на- помним известное определение явного отношения конгру- энтности (см., например, [37]). Так же как и явное от- ношение эквивалентности, оно определяется на X* мно- жеством L^X*. Будем это отношение обозначать через CL. По определению, vClv' = (yu, н>) (и, w е X*) {uvw^L^ uv'w е L). (П.4) Из определения следует, что CL действительно явля- ется конгруэнтностью, поскольку оно является как пра- вым, так и левым инвариантами, т. е. имеет место соот- ношение vClv' => fyu, w) (и, w е X*) (uvwCijw'w). (П.5) Теорема (Майхилла). Множество L^X* регулярно тогда и только тогда, когда отношение CL имеет конеч- ный индекс. Доказательство. Пусть Л = <Х, 5, sQ, 5Ф, S>— инициальный детерминированный конечный автомат без выхода, представляющий L своими финальными состоя- ниями из множества 5Ф £ 5, причем все состояния этого автомата попарно отличимы, т. е. с точностью до порядка
ПРИЛОЖЕНИЕ 187 номеров состояний справедливо следующее соотношение: (V*i, s2) ($ь s2 e= 8) => (3p) (6 (sn v) g= 5Ф) (6 (s2, v) <£ 5Ф). Определим на X* отношение R следующим образом: vRv' = (у$) (5 е 5) (6 (5, v) = 6 (5, р')). Очевидно, что R — эквивалентность. Убедимся в том, что R — правый инвариант. Действительно, б($, vu) = 6(6 (s, р), и) = &(б($, р'), и) = б($, р'и). Аналогично, можно убедиться в том, что R — левый инвариант, а потому R — конгруэнтность. Покажем те- перь, что R = CL. а) р7?р' => (\/м, гр) (u, w s X*) (б (s0, uvw) = _ = б (s0, up'ip)) =>(uvw uv'w e L) => vCiv'. 6) vRv' => (35) (5 e 8) (6 (s, p) = ф 6 (5, p') = s2). Пусть и, греХ* таковы, что б($0, и) = $, 6($i, гр)^5ф и б($2, *р)^£ф. Тогда (б($0, _uvw) е5ф)(б($0, uv'w) Ф ^5Ф) => (upipe L)(uv'w<£ L) => vCLv'. Теорема доказана. Для построения CL по автомату А с множеством со- стояний 8 = {so, st, ..., Sn-J используем алгоритм Я, яв- ляющийся некоторым видоизменением алгоритма, исполь- зованного в работе [51. Алгоритм 91. 1. Построить конечное дерево D: а) корневой вершиной положить вектор ($0, $1, ... ...» $п-1), остальные вершины — векторы, координаты которых являются элементами множества 8 U {*}, где б) если ребро х соединяет вершины ($л, ..., sin) и ($Й, . . .,$гп), то f если 8($i],x) определено, 5<J если 6($i;,x) не определено или = ♦; в) каждую ветвь продолжать до тех пор, пока на ее конце не появится вектор, уже имеющий место в вершине с меньшим лексикографическим номером, либо вектор (*, *, ..., *); очевидно, ветви такого дерева имеют длину не более nn+i. 2. Образовать множество KQ пз всех слов V, соответст- вующих собственным началам ветвей дерева D, таких, что v^L.
188 ПРИЛОЖЕНИЕ 3. Образовать К из всех соотношений вида v ++ w, где v и w — слова, соответствующие ветвям дерева, ве- дущим в одинаковые вершины, отличные от (*, ♦, *). Легко видеть, что смежные классы ассоциативного исчисления, определяемого на X* множеством соотноше- ний X, суть классы отношения Я, введенного при дока- зательстве теоремы Майхилла, а потому суть классы яв- ного отношения конгруэнтности CL. По построению име- ет место L = L(X0, X), что и доказывает утверждение 3. Проиллюстрируем алгоритм SI на следующем примере. Пример ПЛ. Пусть множество L представимо финаль- ными состояниями автомата А, изображенного на рис. П.1. Дерево D для этого автомата изображено на рис. П.2. В вершинах это- го дерева вместо (sf, sk) пишется прос- о/ то fjfc. Образуем Ко и К (табл. П.1). 7 4°. Существуют нерегулярные языки типа 2, описываемые ассоциативными ис- числениями; существуют языки типа 2, Рис. П.1. которые не могут быть описаны никаким ассоциативным исчислением. Аналогичные утверждения справедливы относительно языков типа 1. Рис. П.2.
ПРИЛОЖЕНИЕ 189 Справедливость первого из утверждений 4 покажем на примере. Доказательства остальных утверждений здесь не приводятся, поскольку приложение носит иллюстра- тивный характер и выходит за рамки основного содержа- ния книги. Пример П.2 . Известно, что множество L = {0”1п} яв- ляется языком типа 2 и нерегулярно (непредставимо в конечном автомате) [8]. Однако L описывается ассоциа- тивным исчислением, множество соотношений которого Я =={01 0212}. В этом исчислении L совпадает с клас- сом смежности [ОН. Таблица П.1 0 НО 1<-> 111 110^ 0010 00<-> ООН 011<-> 0100 01<-> 0111 00«-> 1100 10<-> 10010 Соотношение между множествами, описываемыми ас- социативными исчислениями, регулярными множествами (языками типа 3 в классификации Хомского [471) и про- чими типами языков, проиллюстрировано рис. П.З. На этом рисунке класс описываемых ассоциативными исчис- лениями множеств заштрихован. Подытоживая сказанное о свойствах ассоциативных исчислений, отметим, что допущение делать подстановки при выводе пе только в начале (или только в конце) слов, а в любом месте слова, изменяет описательные возмож- ности формальной системы даже в случае, когда алфавит вспомогательных символов пе используется. В то время как регулярные системы описывают в точности класс регулярных множеств, описательные возможности ассоциа- тивных исчислений гораздо шире. Даже нерекурсивные множества могут быть описаны с помощью ассоциативных исчислений, хотя среди всех типов языков (кроме ко- нечноавтоматных) существуют множества, такого описа- ния не допускающие.
ЛИТЕРАТУРА 1. Айзерман М. А., Г у с е в Л. А., Р о з о н о э р Л. И., С м и р- п о в а И. М., Т а л ь А. А, Логика, автоматы, алгоритмы.— Физ- матгиз, 1963. 2. Амбарцумян А. А., Девятков В. В. Язык формального описания работы управляемых механизмов (ФОРУМ).— В кн.: Вопросы кибернетики, вып. «Теория релейных устройств и ко- нечных автоматов». Научный совет по комплексной проблеме «Кибернетика» при Президиуме АН СССР, 1975. 3. Б е р к с А., Райт Дне Теория логических сетей.— Киберне- тический сб., вып. 4— Мир, 1962. 4. Б л о х А. Ш. О задачах, решаемых последовательностными ма- шинами.— В кн.: Проблемы кибернетики, вып. 3 — Физматгиз, 1960. 5. Буевич В. А., Каландаришвили Н. Г., Таль А. А. Об описании конечного автомата с помощью конечного мно- жества вход-выходных последовательностей.— Автоматика и телемеханика, 1970, № 1, 2. 6. Гаврилов М. А., Девятков В. В., Пупырев Е. И. Ло- гическое проектирование дискретных автоматов.— Наука, 1977. 7. Г и л л А. Введение в теорию конечных автоматов.— Наука, 1966. 8. Гинзбург С. Математическая теория контекстпо-свободпых языков.—Мир, 1970. 9. Г л у ш к о в В. М. Синтез цифровых автоматов.— Физматгиз, 1962. 10. Г у с е в Л. А. К задаче преобразования тактности автома- тов.— Автоматика и телемеханика, 1969, № 12. И. Гусев Л. А. О возможности замены недетерминированного ав- томата детерминированным.— Автоматика и телемеханика, 1971, № 11. 12. Г у с е в Л. А., Смирнова И. М. Языки, грамматики и аб- страктные автоматные модели (Обзор).— Автоматика и теле- механика, 1968, № 4, 5. 13. Гусев Л. А., Таль А. А. О возможности построения алго- ритмов абстрактного синтеза последовательностных машин в анкетном языке.— Автоматика и телемеханика, 1965, № 3. 14. Д е в я т к о в В. В., Ч и ч к о в с к и й А. Б. УСЛОВИЕ — язык описания условий работы дискретных управляющих уст- ройств.—В кн.: Абстрактная и структурная теория релейных устройств —Наука, 1975. 15. И в а н о в Н. Н. О поведении взаимодействующих автоматов, моделирующих систему «объект управления — управляющее устройство».— Автоматика и телемеханика, 1979, № 7. 16. Иванов Н. Н., Михайлов Г. И., Руднев В. В., Таль А. А. Языки эквивалентных преобразований и регуляр- ные множества.— И АТ, 1975.
ЛИТЕРАТУРА 191 17. Иванов Н. Н., Михайлов Г. И., Руднев В. В., Таль А. А. Языки эквивалентных преобразований обобщен- ного типа.— Автоматика и телемеханика, 1976, № 5. 18. Клини С. К. Представление событий в нервных сетях и ко- нечных автоматах.— В кн.: Автоматы.— ИЛ, 1956. 19. К о б р и н с к и й Н. Е., Т р а х т е н б р о т Б. А. Введение в теорию конечных автоматов.— Физматгиз, 1962. 20. Кратко М. И. Формальные исчисления Поста и конечные автоматы.— В кн.: Проблемы кибернетики, вып. 17,— Наука, 1966. 21. Кузнецов О. П., Макар ев ский А. Я., Марков- ский А. В., Окуджава В. Ш., Шипилина Л. Б. ЯРУС — язык описания работы сложных автоматов.— Автома- тика и телемеханика, 1972, № 6, 7. 22. Л е в е н ш т е й н В. И. О некоторых свойствах кодирования в самонастраивающихся автоматах для декодирования сообще- ний.—В кн.. Проблемы кибернетики, вып. 11.—Наука, 1964. 23. Л е т и ч е в с к и й А. А. Эквивалентность автоматов относи- тельно полугрупп.— В кн.: Теоретическая кибернетика, вып. 6,— Наукова думка, 1970. 24. Мальцев А. И. Алгоритмы и рекурсивные функции,—Пау- ка, 1965. 25. М е л и х о в А. Н., Д в о р я н ц е в Ю. А. Теоретико-множест- венные и алгебраические операции над конечными автома- тами.— Изв. АН СССР. Техн, кибернетика, 1967, № 3. 26. М и х а й л о в Г. И. О реализации конечноавтоматных мно- жеств детерминированными автоматами.— Автоматика и теле- механика, 1974, № 2. 27. М и х а й л о в Г. И. О множествах и автоматах с конечной па- мятью.— Автоматика и телемеханика, 1975, № 5. 28. М и х а й л о в Г. И., Т а л ь А. А. Об одном варианте языка эквивалентных преобразований.— Автоматика и телемехани- ка, 1973, № 8. 29. Михайлов Г. И., Таль А. А. О множествах, реализуемых автоматами и описываемых на ЯЭП 2.— Автоматика и телеме- ханика, 1975, № 8. 30. М и х а й л о в Г. И., Р у д н е в В. В. Простейшая система вза- имосвязанных графов и расширение практических возможно- стей конечных автоматов —Автоматика и телемеханика, 1979, № 10. 31. М и х а й л о в Г. И., Р у д н е в В. В. Синтез и минимизация простейших систем взаимосвязанных графов.— Автоматика и телемеханика, 1980, № 1. 32. Михайлов Г. И., Руднев В. В. Автоматная система вза- имосвязанных графов с простейшими связками.— Автоматика и телемеханика, 1980, № 5. 33. Минский М. Вычисления и автоматы.—Мир, 1971. 34. М о и с и л Гр. К. Алгебраическая теория дискретных автома- тических устройств.— ИЛ, 1963. 35. Мур Э. Ф. Умозрительные эксперименты с последовательно- стными машинами.— В кн.: Автоматы,— ИЛ, 1956. 36. Нью бор н М. М. Максимальная память последовательност- ных машин с двумя входами^ двумя выходами и конечной па- мятью.—Кибернетический со. (новая серия), вып. 8.— Мир, 1971,
192 ЛИТЕРАТУРА 37. Рабин М. О., Скотт Д. Конечные автоматы и задачи их разрешения.— Кибернетический сб., вып. 4.— Мир, 1962. 38. Руднев В. В. Конечный автомат как объект управления.— Автоматика и телемеханика, 1978, № 9. 39. Руднев В. В. Системы взаимосвязанных графов и алгорит- мическое программирование дискретных управляющих уст- ройств.— Автоматика и телемеханика, 1979, № 7. 40. Руднев В. В., Таль А. А. Применение отношений эквива- лентности для описания событий, представимых конечными автоматами.— Автоматика и телемеханика, 1970, № 3. 41. Руднев В. В., Таль А. А. Применение языка эквивалент- ных преобразований для описания конечноавтоматных мно- жеств.— Автоматика и телемеханика, 1971, № 9. 42. С п и в а к М. А. Представление автоматных отображений ре- гулярными выражениями,— Кибернетика, 1965, № 6. 43. Стирнз Р. Е., Хартманне Дж., Льюис II, П. М. Иерар- хии вычислений с ограниченной памятью.— В кн.: Проблемы математической логики.— Мир, 1970. 44. Т а л ь А. А. Анкетный язык и абстрактный синтез минималь- ных последовательностных машин,—Автоматика и телемеха- ника, 1964, № 6. 45. Таль А. А. Абстрактный синтез последовательностных ма- шин по ответам на вопросы 1-го типа анкетного языка.—Ав- томатика и телемеханика, 4965, № 4. 46. Трахтенброт Б. А., Барздинь Я. М. Конечные авто- маты: поведение и синтез,— Наука, 1970. 47. Хомский Н. Формальные свойства грамматик.— Киберне- тический сб. (новая серия) вып. 2.— Мир, 1966. 48. Algebraic theory of mashines, languages and semigroups. Ed. M. A. Arbib.— New York: Acad. Press, 1968. 49. Bierman A. W., Feldman J. A. On synthesis of finite- state machines from samples of their behavior.—IEEE Trans, on Comp., 1972, v. 21, № 6. 50. В u c h i I. R. Regular canonical systems.— Archiv fur mathema- tische Logik und Grundlagenforschung, 1964, B. 6, H. 3-4. 51. Davis W. A. Sequential mashines realisable with delay ele- ment only.— IEEE Trans, on Comput., 1970, v. C-19, № 4. 52. Gill A. Realisation of input-output relations by sequential machines.— Journal of Ass. for computing machinery, 1966, v. 13, № 1. 53. К a m b a у a s h i Y., Y a у i m a S. Finite memory machines statistying the lower bound of memory.— Inform, and Contr., 1972, v. 20, № 2. 54. Massey J. L. A note on finite memory sequential machi- nes.— IEEE Trans. Electron. Comput., 1966, v. EC-15. 55. Myhill J. Finite automata and representation of events.— WADC Technical report. 1957. 56. N e г о d e A. Linear automaton transformations.— Proc. Amer. Math. Soc. 9, 1958. f 57. Nelson R. J. Introduction to automata.—New York: John Wi- ley and Sons, Inc., 1968.