Детерминированные и недетерминированные автоматы Бюхи: теория и применение.
Büchi automaton
Детерминированные и недетерминированные автоматы Бюхи: теория, состояния, функции переходов и критерии принятия бесконечных входных данных. Автоматы Бюхи.
Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
В информатике и теории автоматов детерминированный автомат Бюхи – это теоретическая машина, которая принимает или отвергает бесконечные входные последовательности. Такая машина имеет набор состояний и функцию перехода, определяющую, в какое состояние машина переходит из текущего при чтении следующего входного символа. Некоторые состояния являются принимающими, а одно из них – начальным. Машина принимает входную последовательность тогда и только тогда, когда она проходит через принимающее состояние бесконечное число раз в процессе чтения входных данных. Недетерминированный автомат Бюхи, далее именуемый просто автоматом Бюхи, имеет функцию перехода, которая может иметь несколько выходных значений, что приводит к множеству возможных путей для одной и той же входной последовательности; он принимает бесконечную входную последовательность, если и только если хотя бы один из возможных путей является принимающим. Детерминированные и недетерминированные автоматы Бюхи обобщают детерминированные конечные автоматы и недетерминированные конечные автоматы для бесконечных входных последовательностей. Каждый из них является типом ω-автомата. Автоматы Бюхи распознают ω-регулярные языки, бесконечную версию регулярных языков. Они названы в честь швейцарского математика Юлиуса Ричарда Бюхи, который изобрел их в 1962 году. Автоматы Бюхи часто используются в верификации моделей как автоматическое представление формулы в линейной темпоральной логике.
In computer science and automata theory, a deterministic Büchi automaton is a theoretical machine which either accepts or rejects infinite inputs. Such a machine has a set of states and a transition function, which determines which state the machine should move to from its current state when it reads the next input character. Some states are accepting states and one state is the start state. The machine accepts an input if and only if it will pass through an accepting state infinitely many times as it reads the input. A non deterministic Büchi automaton, later referred to just as a Büchi automaton, has a transition function which may have multiple outputs, leading to many possible paths for the same input; it accepts an infinite input if and only if some possible path is accepting. Deterministic and non deterministic Büchi automata generalize deterministic finite automata and nondeterministic finite automata to infinite inputs. Each are types of ω automata. Büchi automata recognize the ω regular languages, the infinite word version of regular languages. They are named after the Swiss mathematician Julius Richard Büchi, who invented them in 1962. Büchi automata are often used in model checking as an automata theoretic version of a formula in linear temporal logic.
Признаваемые языки
Автоматы Бюхи распознают ω-регулярные языки. Используя определение ω-регулярного языка и вышеуказанные свойства замкнутости автоматов Бюхи, можно легко показать, что можно построить автомат Бюхи, распознающий любой заданный ω-регулярный язык. Для доказательства обратного утверждения, обратитесь к построению ω-регулярного языка для автомата Бюхи.
Büchi automata recognize the ω regular languages. Using the definition of ω regular language and the above closure properties of Büchi automata, it can be easily shown that a Büchi automaton can be constructed such that it recognizes any given ω regular language. For converse, see construction of a ω regular language for a Büchi automaton.
Детерминированные и недетерминированные автоматики Бючи
Класс детерминированных автоматов Бюхи не позволяет охватить все омега-регулярные языки. В частности, не существует детерминированного автомата Бюхи, распознающего язык (0 ∪ 1)^* 0^ω, который содержит ровно те слова, в которых 1 встречается лишь конечное число раз. Мы можем доказать это от противного, показав, что такого детерминированного автомата Бюхи не существует. Пусть A – детерминированный автомат Бюхи, распознающий (0 ∪ 1)^* 0^ω, с множеством конечных состояний F. A принимает 0^ω. Следовательно, A посетит некоторое состояние из F после прочтения конечного префикса 0^ω, скажем, после i-го нуля. A также принимает ω-слово. Таким образом, для некоторого i, после префикса автомат посетит некоторое состояние из F. Продолжая эту конструкцию, мы получим ω-слово, которое заставит A бесконечно часто посещать некоторое состояние из F, и это слово не принадлежит (0 ∪ 1)^* 0^ω. Противоречие. Класс языков, распознаваемых детерминированными автоматами Бюхи, характеризуется следующей леммой. Лемма: Омега-язык распознается детерминированным автоматом Бюхи, если он является предельным языком некоторого регулярного языка. Доказательство: Любой детерминированный автомат Бюхи A можно рассматривать как детерминированный конечный автомат A', и наоборот, поскольку оба типа автоматов определены как 5-кортежи из одних и тех же компонентов, различаясь лишь интерпретацией условия принятия. Мы покажем, что L(A) является предельным языком L(A'). Ω-слово принимается A, если оно заставляет A бесконечно часто посещать конечные состояния. Следовательно, бесконечно много конечных префиксов этого ω-слова будут приняты A'. Таким образом, L(A) является предельным языком L(A').
The class of deterministic Büchi automata does not suffice to encompass all omega regular languages. In particular, there is no deterministic Büchi automaton that recognizes the language (0\cup 1)^* 0^\omega, which contains exactly words in which 1 occurs only finitely many times. We can demonstrate it by contradiction that no such deterministic Büchi automaton exists. Let us suppose A is a deterministic Büchi automaton that recognizes (0\cup 1)^* 0^\omega with final state set F. A accepts 0^\omega. So, A will visit some state in F after reading some finite prefix of 0^\omega, say after the i {0} th letter. A also accepts the ω word Therefore, for some i {1} , after the prefix the automaton will visit some state in F. Continuing with this construction the ω word is generated which causes A to visit some state in F infinitely often and the word is not in (0\cup 1)^* 0^\omega. Contradiction. The class of languages recognizable by deterministic Büchi automata is characterized by the following lemma. Lemma: An ω language is recognizable by a deterministic Büchi automaton if it is the limit language of some regular language. Proof: Any deterministic Büchi automaton A can be viewed as a deterministic finite automaton A' and vice versa, since both types of automaton are defined as 5 tuple of the same components, only the interpretation of acceptance condition is different. We will show that L(A) is the limit language of L(A'). An ω word is accepted by A if it will force A to visit final states infinitely often. Thus, infinitely many finite prefixes of this ω word will be accepted by A'. Hence, L(A) is a limit language of L(A').