Список заданий по ТФЯ 2016 — различия между версиями
м (rollbackEdits.php mass rollback) |
|||
(не показаны 3 промежуточные версии 3 участников) | |||
Строка 121: | Строка 121: | ||
# ХМУ 9.4.2 | # ХМУ 9.4.2 | ||
# ХМУ 9.4.3 | # ХМУ 9.4.3 | ||
− | # Пусть $a = (a_1, a_2, ..., a_n)$ - список слов над алфавитом Sigma. Обозначим как | + | # ХМУ 9.4.4 |
+ | # Пусть $a = (a_1, a_2, ..., a_n)$ - список слов над алфавитом $\Sigma$. Обозначим как $L_a$ множество слов над алфавитом $\Sigma \cup \{[1], [2], ..., [n]\}$, которые порождаются грамматикой $S \rightarrow a_i S[i]$, $S \rightarrow \varepsilon$. Докажите, что дополнения языку $L_a$ является КС-языком. Указание: постройте соответствующий МП-автомат | ||
# Докажите, что проблема пустоты пересечения языков двух КС-грамматик неразрешима | # Докажите, что проблема пустоты пересечения языков двух КС-грамматик неразрешима | ||
# Докажите, что проблема равенства языков двух КС-грамматик неразрешима | # Докажите, что проблема равенства языков двух КС-грамматик неразрешима |
Текущая версия на 19:40, 4 сентября 2022
<wikitex>
Теория формальных языков, 5 семестр
- Построить конечный автомат для языка слов над бинарным алфавитом, в которых четность числа 0 равна четности числа 1
- Построить конечный автомат для языка слов над бинарным алфавитом, в которых число нулей кратно 3
- Построить конечный автомат для языка слов над бинарным алфавитом, в которых нет трех нулей подряд
- Построить конечный автомат для языка слов над бинарным алфавитом, которые представляют собой двоичную запись чисел, кратных 5
- Построить конечный автомат для языка слов над бинарным алфавитом, в которых число нулей не кратно 3
- Построить конечный автомат для языка слов над бинарным алфавитом, в которых есть три нуля подряд. Сделайте вывод из последних двух заданий.
- Построить конечный автомат для языка слов над бинарным алфавитом, в которых число нулей кратно 3 и которые представляют собой двоичную запись чисел кратных 5.
- Построить конечный автомат для языка слов над бинарным алфавитом, в которых число нулей кратно 3 или которые представляют собой двоичную запись чисел кратных 5. Сделайте вывод из последних двух заданий.
- Построить конечный автомат для языка слов над бинарным алфавитом, в пятый символ с конца - 0. Можно построить недетерминированный автомат.
- Постройте детерминированный автомат для предыдущего задания или докажите, что в нем слишком много состояний, чтобы его рисовать ;).
- Постройте регулярное выражение для языка слов над бинарным алфавитом, в которых нет двух нулей подряд.
- Построить конечный автомат для языка слов над бинарным алфавитом, которые представляют собой двоичное число, кратное 3.
- ХМУ 4.2.2, стр 163
- ХМУ 4.2.3, стр 163
- ХМУ 2.3.1, стр 83
- Докажите, что минимальный ДКА для языка $(0|1)^*0(0|1)^k$ содержит минимум $2^k$ состояний
- ХМУ 4.2.4, стр 163
- ХМУ 4.2.5, стр 164
- ХМУ 4.2.6, стр 164
- ХМУ 4.2.7, стр 164
- ХМУ 4.2.8, стр 164
- ХМУ 4.2.10, стр 165
- ХМУ 4.2.11, стр 165
- Доказать нерегулярность языка слов $0^n1^n$
- Доказать нерегулярность языка, каждое слово которого содержит поровну 0 и 1.
- Доказать нерегулярность языка палиндромов.
- Доказать нерегулярность языка тандемных повторов.
- Доказать нерегулярность языка $0^n1^m$, $n \le m$
- Доказать нерегулярность языка $0^n1^m$, $n \ne m$
- Доказать нерегулярность языка $0^{n^2}$
- Доказать нерегулярность языка $0^p$, $p$ — простое
- Доказать нерегулярность языка двоичных записей простых чисел
- Доказать нерегулярность языка $0^n1^m$, $gcd(n, m) = 1$
- Доказать нерегулярность языка $0^a1^b2^c$, $a \ne b$ и $b \ne c$
- Приведите пример нерегулярного языка, для которого выполнена лемма о разрастании
- Доказать, что если состояния $u$ и $v$ автомата различимы, то $u$ и $v$ различимы строкой длины $O(n)$.
- Предложите алгоритм проверки того, что регулярный язык бесконечен
- Предложите алгоритм проверки того, что регулярный язык является беспрефиксным
- Предложите алгоритм проверки того, что один регулярный язык является подмножеством другого
- Предложите алгоритм проверки того, что регулярные языки не пересекаются
- ХМУ 4.3.1, стр 171.
- ХМУ 4.3.2, стр 171.
- Рассмотрим язык $\{x_0 y_0 z_0 x_1 y_1 z_1 \dots x_{n-1} y_{n-1} z_{n-1} \mid x_i, y_i, z_i \in \{0, 1\}\}$, где $ X = x_{n-1}x_{n-2}\dots x_0$ и аналогично представляется $Y$ и $Z$, причем $ X + Y = Z $. Докажите, что этот язык регулярный.
- То же, что и предыдущее, только $\{x_{n-1} y_{n-1} z_{n-1} \dots x_1 y_1 z_1 x_0 y_0 z_0 \mid \dots \}$.
- Рассмотрим язык $\{x_0 y_0 z_0 x_1 y_1 z_1 \dots x_{n-1} y_{n-1} z_{n-1} \mid x_i, y_i, z_i \in \{0, 1\}\}$, где $X = x_{n-1}x_{n-2}\dots x_0$ и аналогично представляется $Y$ и $Z$, причем $X \times Y = Z$. Докажите, что этот язык не является регулярным.
- Рассмотрим отношение на словах $L$: $x \equiv y$, если для любых $u$, $v$ выполнено $uxv \in L \Leftrightarrow uyv \in L$. Классы эквивалентности этого отношения называются синтаксическим моноидом языка $L$. Докажите, что $L$ регулярный тогда и только тогда, когда синтаксический моноид $L$ конечен.
- Придумайте семейство регулярных языков $L_i$, у которых ДКА для $L_i$ содержит $O(i)$ состояний, а синтаксический моноид $L_i$ имеет неполиномиальный размер.
- Постройте КС-грамматику для правильных скобочных последовательностей с двумя типами скобок.
- Постройте КС-грамматику для языка слов над алфавитом $\{0, 1\}$, в которых число нулей равно числу единиц. Докажите, что ваша грамматика является правильной.
- Постройте КС-грамматику для языка слов над алфавитом $\{0, 1\}$, в которых число нулей равно удвоенному числу единиц. Докажите, что ваша грамматика является правильной.
- Постройте КС-грамматику для языка $0^k1^n2^{k+n}$.
- Постройте КС-грамматику для языка $0^k1^n2^{k+n}\cup 1^k0^n2^{k+n}$. Сделайте вывод о свойствах КС-языков.
- Постройте КС-грамматику для языка $0^k1^n2^{k+n}1^i0^j2^{i+j}$. Сделайте вывод о свойствах КС-языков.
- Постройте КС-грамматику для языка $0^i1^j2^k$, $i \ne j$ или $j \ne k$.
- Постройте КС-грамматику для языка слов над алфавитом $\{0, 1\}$, которые не являются палиндромами.
- Постройте КС-грамматику для языка слов над алфавитом $\{0, 1\}$, которые не являются правильными скобочными последовательностями.
- Постройте КС-грамматику для языка слов над алфавитом $\{0, 1\}$, в которых число нулей не равно числу единиц.
- Постройте КС-грамматику для языка слов над алфавитом $\{0, 1\}$, которые не являются тандемными повторами.
- Верно ли, что любую КС-грамматику можно привести к форме, когда любое правило имеет вид $A\to BCD$ или $A\to a$?
- Верно ли, что любой КС-язык над односимвольным алфавитом является регулярным?
- ХМУ 7.2.1 (а)
- ХМУ 7.2.1 (б)
- ХМУ 7.2.1 (в)
- ХМУ 7.2.1 (г)
- ХМУ 7.2.1 (д)
- ХМУ 7.2.1 (е)
- ХМУ 7.2.5 (а)
- ХМУ 7.2.5 (б)
- Докажите, что язык $\{0^n1^m2^n3^m\}$ не является КС.
- Докажите, что язык $\{0^n1^m2^n| n \ne m\}$ не является КС.
- Приведите пример не КС-языка, для которого выполнена лемма о разрастании.
- Постройте МП-автомат для языка $0^n1^n$.
- Постройте МП-автомат для языка слов, где число нулей равно числу единиц.
- Постройте МП-автомат для языка $0^n1^{2n}$.
- Постройте МП-автомат для языка $0^n1^m2^{n+m}$.
- Постройте МП-автомат для языка $0^{2n}1^n$.
- Постройте МП-автомат для языка $0^n1^n\cup0^n1^{2n}$.
- Постройте МП-автомат для языка слов $0^n1^m$, где $n \le m \le 2n$.
- Докажите, что для любых $p$ и $q$ существует МП-автомат для языка слов $0^n1^m$, где $n/m=p/q$
- Постройте автомат с магазинной памятью для языка слов над алфавитом $\{0, 1, 2\}$, которые содержат равное число двоек и равное число единиц, или равное число двоек и равное число нулей.
- Существует ли для языка из предыдущего задания детерминированный автомат?
- Постройте автомат с магазинной памятью для языка палиндромов.
- Докажите, что для любого автомата с магазинной памятью существует эквивалентный, который на каждом переходе кладет в стек не более 2 символов. Ваша конструкция должна сохранять детерминированность автомата, если ранее он был детерминированным.
- Докажите, что для любого детерминированного автомата с магазинной памятью существует эквивалентный, который при $\varepsilon$-переходе только снимает или заменяет верхний символ стека (то есть размер стека не увеличивается на $\varepsilon$-переходах).
- Рассмотрим детерминированный автомат с магазинной памятью, для которого выполнены свойства из двух предыдущих заданий. Докажите, что для любого состояния $p$ автомата и строки $\gamma$ в стеке существует строка $s$, для которой выполняется следующее свойство. Начав в состоянии $p$ и со стеком $\gamma$, считав строку $s$ автомат переходит некоторое состояние $q$ и имеет в стеке $\beta$, причем какую бы строку далее автомат не получил на вход, на вершине стека никогда не окажется второй символ $\beta$.
- На основании трех предыдущих заданий докажите, что не существует детерминированного автомата с магазинной памятью для языка палиндромов.
- Докажите, что если множества $A$ и $B$ разрешимы (перечислимы), то их декартово произведение перечислимо.
- Теорема об униформизации. Пусть задано перечислимое множество пар $F$. Докажите, что найдется вычислимая функция $f$, такая что для любого $x$, для которого существует $y$, такой что $(x,y)\in F$ выполнено, что $(x, f(x)) \in F$.
- Пусть даны два перечислимых множества $X$ и $Y$. Докажите, что существуют непересекающиеся перечислимые множества $X' \subset X$ и $Y' \subset Y$, такие что $X' \cup Y' = X \cup Y$.
- Докажите, что множество чисел $i$, таких, что в десятичной записи числа $\pi$ встречается последовательность из $i$ семерок подряд, перечислимо. Является ли оно разрешимым? Почему?
- Докажите, что множество чисел $i$, таких, что в десятичной записи числа $\pi$ как подстрока десятичная запись $i$, перечислимо. Можно ли привести тот же аргумент, что и в предыдущем задании, для доказательства его (не)разрешимости?
- Докажите, что любое бесконечное перечислимое множество содержит бесконечное разрешимое подмножество.
- Пусть $f$ - вычислимая функция. Докажите, что существует вычислимая функция $g$ с областью определения, совпадающей с областью значений $f$, такая что $f(g(f(x))) = f(x)$ для любого $x$, на котором $f$ определена.
- Вещественное число $\alpha$ называется вычислимым, если существует вычислимая функция $a$, которая по любому рациональному $\varepsilon > 0$ даёт рациональное приближение к $\alpha$ с ошибкой не более $\varepsilon$, то есть $|\alpha-a(\varepsilon)| \le \varepsilon$ для любого рационального $\varepsilon > 0$. Докажите, что число $\alpha$ вычислимо тогда и только тогда, когда множество рациональных чисел, меньших $\alpha$, разрешимо
- Докажите, что число $\alpha$ вычислимо тогда и только тогда, когда последовательность знаков представляющей его десятичной (или двоичной) дроби вычислима.
- Докажите, что число $\alpha$ вычислимо тогда и только тогда, когда существует вычислимая последовательность рациональных чисел, вычислимо сходящаяся к $\alpha$ (то есть является вычислимой функция, которая по $\varepsilon$ возвращает $n_0$, такое что $|a_n - \alpha| \le \varepsilon$ для $n > n_0$)
- Покажите, что сумма, произведение, разность и частное вычислимых действительных чисел вычислимы. Покажите, что корень многочлена с вычислимыми коэффициентами вычислим.
- Сформулируйте и докажите утверждение о том, что предел вычислимо сходящейся последовательности вычислимых действительных чисел вычислим.
- Вещественное число $\alpha$ называют перечислимым снизу, если множество всех рациональных чисел, меньших $\alpha$, перечислимо. Перечислимость сверху определяется аналогично. Докажите, что число $\alpha$ перечислимо снизу тогда и только тогда, когда оно является пределом некоторой вычислимой возрастающей последовательности рациональных чисел.
- Докажите, что вещественное число вычислимо тогда и только тогда, когда оно перечислимо снизу и сверху.
- Покажите, что следующие три свойства множества $X$ равносильны: (1) $X$ можно представить в виде $A \setminus B$, где $A$ — перечислимое множество, а $B$ — его перечислимое подмножество; (2) $X$ можно представить в виде $A \setminus B$, где $A$ и $B$ — перечислимые множества; (3) $X$ можно представить в виде симметрической разности двух перечислимых множеств.
- Покажите, что множество $X$ можно представить в виде $A\setminus (B\setminus C)$, где $A \supset B \supset C$ — перечислимые множества, если и только если его можно представить в виде симметрической разности (суммы по модулю 2) трёх перечислимых множеств.
- Пусть $A(x,y)$ - вычислимая функция от двух аргументов. Докажите, что для любого $x$ функция $A_x(y)=A(x, y)$ как функция одного аргумента - вычислима.
- Пусть $A(x,y)$ - функция от двух аргументов и для любого $x$ функция $A_x(y)=A(x, y)$ как функция одного аргумента - вычислима. Значит ли это. что функция $A$ вычислима как функция двух аргументов?
- Функция $f$ называется продолжением функции $g$, если для любого $n$, такого что $g$ определена, $f$ также определена и $f(n) = g(n)$. Докажите, что существует вычислимая функция $d(n)$, такая что никакая всюду определенная вычислимая функция $f(n)$ не является ее продолжением.
- Пусть множество пар $A=\{(x, y)\}$ перечислимо. Можно ли утверждать, что множество $B$ минимальных парных для каждого $x$ ($B = \{(x, y)| (x, y) \in A \wedge (x, z)\in A \Rightarrow z \ge y\}$ перечислимо?
- Пусть множество пар $A=\{(x, y)\}$ разрешимо. Можно ли утверждать, что множество $B$ минимальных парных для каждого $x$ ($B = \{(x, y)| (x, y) \in A \wedge (x, z)\in A \Rightarrow z \ge y\}$ перечислимо? Разрешимо?
- Реализуйте на машине Тьюринга проверку, что слово является палиндромом
- Реализуйте на машине Тьюринга проверку, что слово является тандемным повтором
- Реализуйте на машине Тьюринга прибавление 1 к числу (получив на вход двоичное число x, МТ должна заменить его на x + 1 и завершить работу)
- Реализуйте на МТ сложение двух чисел (числа в двоичном формате) а) б)
- Реализуйте на МТ умножение двух чисел (числа в двоичном формате) а) б)
- Реализуйте на МТ сравнение двух чисел (числа в двоичном формате) а) б)
- Докажите, что если на МТ можно реализовать функцию f и функцию g, то можно реализовать функцию f(g)
- ХМУ 9.4.1 а
- ХМУ 9.4.1 б
- ХМУ 9.4.1 в
- ХМУ 9.4.2
- ХМУ 9.4.3
- ХМУ 9.4.4
- Пусть $a = (a_1, a_2, ..., a_n)$ - список слов над алфавитом $\Sigma$. Обозначим как $L_a$ множество слов над алфавитом $\Sigma \cup \{[1], [2], ..., [n]\}$, которые порождаются грамматикой $S \rightarrow a_i S[i]$, $S \rightarrow \varepsilon$. Докажите, что дополнения языку $L_a$ является КС-языком. Указание: постройте соответствующий МП-автомат
- Докажите, что проблема пустоты пересечения языков двух КС-грамматик неразрешима
- Докажите, что проблема равенства языков двух КС-грамматик неразрешима
- Докажите, что проблема равенства языка КС-грамматики и регулярного языка неразрешима
- Докажите, что проблема пустоты дополнения КС-языка неразрешима
- Докажите, что проблема включения одного КС-языка в другой неразрешима
- ХМУ, стр 418, 9.5.1
- ХМУ, стр 418, 9.5.2
- ХМУ, стр 418, 9.5.3
</wikitex>