2.6

Свойства замкнутости регулярных языков

[22/50%]
Показать
LaTeX
Пример 2.34

Пусть MM — некоторый NFAN F A. Постройте NFAMN F A M^{\prime }, такой что L(M)=L(M)RL\left(M^{\prime }\right)= L(M)^{R}.

?
Пример 2.35

Пусть ff — подстановка над Σ\Sigma. Пусть LΣL \subseteq \Sigma^{*} — регулярный язык, и для каждого aΣa \in \Sigma язык f(a)f(a) регулярен. Тогда f(L)f(L) также является регулярным языком.

?
Пример 2.36

Покажите, что для любого языка L2L_{2}, если L1L_{1} регулярен, то L1/L2L_{1} / L_{2} также регулярен.

?
Пример 2.37

Пусть LL — регулярный язык над Σ\Sigma, kk — положительное целое число, а ϕ\phi — отображение из Σk\Sigma^{k} в Σ\Sigma. Докажите, что

L1={ϕ(a1a2ak)ϕ(a(n1)k+1a(n1)k+2ank)a1a2ankL} L_{1}=\left\{ \phi \left(a_{1} a_{2} \cdots a_{k}\right) \cdots \phi \left(a_{(n-1) k+1} a_{(n-1) k+2} \cdots a_{n k}\right) \mid a_{1} a_{2} \cdots a_{n k} \in L\right\}

регулярен.

?
Пример 2.38

Докажите, что если LL регулярен, то регулярен и MIN(L)\operatorname {MIN}(L).

?
Пример 2.39

Покажите, что если AA и BB — регулярные языки над {0,1}\left\{ 0,1\right\}, то

AB={xyxA,yB,x=y} A \vee B=\left\{ x \vee y \mid x \in A, y \in B, \left|x\right|=\left|y\right|\right\}

также регулярен.

?
Пример 2.40

Покажите, что если LL — регулярный язык, то регулярен и

{xyyxL}. \left\{ x y \mid y x \in L\right\} .
?
Пример 2.41

Покажите, что если LL — регулярный язык, то регулярен и

L12={x(y)[x=y,xyL]}. L_{\frac{1}{2}}=\left\{ x \mid (\exists y)[\left|x\right|=\left|y\right|, x y \in L]\right\} .
?
Пример 2.42

Покажите, что если LL — регулярное множество, то регулярно и

L33={z(x,y)[x=y=z,xyzL]} L_{\frac{3}{3}}=\left\{ z \mid (\exists x, y)[\left|x\right|=\left|y\right|=\left|z\right|, x y z \in L]\right\}
?
Пример 2.43

Пусть AA и BB — два регулярных языка. Покажите, что язык, определённый как

C(A,B)={xA(y)[y=x2,yB]} C(A, B)=\left\{ x \in A \mid (\exists y)\left[\left|y\right|=\left|x\right|^{2}, y \in B\right]\right\}

также регулярен.

?
Пример 2.44

Покажите, что если LL регулярен, то регулярен и

SQRT(L)={x(y)[y=x2,xyL]} \operatorname {SQRT}(L)=\left\{ x \mid (\exists y)\left[\left|y\right|=\left|x\right|^{2}, x y \in L\right]\right\}
?
Задача 2.6.1

Докажите следующее тождество:

?
(a)

MAX(L)=L\(L/Σ+)\operatorname {MAX}(L)=L \backslash \left(L / \Sigma^{+}\right), где MAX(L)={xLx не является собственным префиксом никакой строки из L}\operatorname {MAX}(L)=\left\{ \boldsymbol {x} \in L \mid \boldsymbol {x}\text{ не является собственным префиксом никакой строки из }L\right\}.

(b)

MIN(L)=L\(LΣ+)\operatorname {MIN}(L)=L \backslash \left(L \Sigma^{+}\right).

Задача 2.6.2

Для любых двух битов a,b{0,1}a, b \in \left\{ 0,1\right\}, aba \oplus b обозначает исключающее ИЛИ aa и bb; то есть 00=11=00 \oplus 0=1 \oplus 1=0 и 01=10=10 \oplus 1=1 \oplus 0=1. Для любых двух двоичных строк xx и yy с x=y\left|x\right|=\left|y\right|, xyx \oplus y обозначает поразрядное исключающее ИЛИ строк xx и yy. Например, если x=0011x=0011 и y=0101y=0101, то xy=0110x \oplus y=0110. Пусть A=001(0+1)A=001(0+1)^{*} и B=(0+1)100B=(0+1)^{*} 100. Найдите регулярное выражение для каждого из следующих языков:

?
(a)

ABA \vee B.

(b)

AB={xyxA,yB,x=y}A \oplus B=\left\{ x \oplus y \mid x \in A, y \in B, \left|x\right|=\left|y\right|\right\}.

(c)

{a1b1a2b2anbna1a2anA,b1b2bnB}\left\{ a_{1} b_{1} a_{2} b_{2} \cdots a_{n} b_{n} \mid a_{1} a_{2} \cdots a_{n} \in A, b_{1} b_{2} \cdots b_{n} \in B\right\}.

Задача 2.6.3

Покажите, что если AA и BB — регулярные языки, то регулярны и следующие языки:

?
(a)

{xxxRA}\left\{ x \mid x x^{R} \in A\right\}.

(b)

{xxA,xxA}\left\{ x \mid x \in A, x x \in A\right\}.

(c)

Ax={yxyA}A_{x}=\left\{ y \mid x y \in A\right\}, где xx — фиксированная строка.

(d)

{a1a2a2na2a1a4a3a2na2n1A}\left\{ a_{1} a_{2} \cdots a_{2 n} \mid a_{2} a_{1} a_{4} a_{3} \cdots a_{2 n} a_{2 n-1} \in A\right\}.

(e)

{a1a3a2n3a2n1a1a2a2nA}\left\{ a_{1} a_{3} \cdots a_{2 n-3} a_{2 n-1} \mid a_{1} a_{2} \cdots a_{2 n} \in A\right\}.

(f)

{a1b1a2b2anbna1a2anA,b1b2bnB}\left\{ a_{1} b_{1} a_{2} b_{2} \cdots a_{n} b_{n} \mid a_{1} a_{2} \cdots a_{n} \in A, b_{1} b_{2} \cdots b_{n} \in B\right\}.

(g)

ABA \oplus B.

Задача 2.6.4

Приведите альтернативное доказательство примера 2.42, основанное на следующей идее: мы можем моделировать НКА Mˉ\bar{M} на xyx y вместе с M^i\widehat{M}_{i} на zz, моделируя на каждом шаге два перехода Mˉ\bar{M} и один переход M^i\widehat{M}_{i}. (Таким образом, новый НКА для L33L_{\frac{3}{3}} имеет всего n+2n+2 дорожки.)

?
Задача 2.6.5

Покажите, что если AA и BB — регулярные языки, то регулярны и следующие:

?
(a)

{xyzzyxA}\left\{ x y z \mid z y x \in A\right\}.

(b)

{xyzzyxA,yB}\left\{ x y z \mid z y x \in A, y \in B\right\}.

(c)

{y(x)[x=y,xyA]}\left\{ y \mid (\exists x)[\left|x\right|=\left|y\right|, x y \in A]\right\}.

(d)

{x(y,z)[x=y=z,xyzA]}\left\{ x \mid (\exists y, z)[\left|x\right|=\left|y\right|=\left|z\right|, x y z \in A]\right\}.

(e)

{y(x,z),[x=y=z,xyzA]}\left\{ y \mid (\exists x, z),[\left|x\right|=\left|y\right|=\left|z\right|, x y z \in A]\right\}.

(f)

{yz(x)[x=y=z,xyzA]}\left\{ y z \mid (\exists x)[\left|x\right|=\left|y\right|=\left|z\right|, x y z \in A]\right\}.

(g)

{xy(z)[x=y=z,xyzA]}\left\{ x y \mid (\exists z)[\left|x\right|=\left|y\right|=\left|z\right|, x y z \in A]\right\}.

(h)

{x(w,y,z)[x=wyz и wyRzA]}\left\{ x \mid (\exists w, y, z)\left[x=w y z\right.\text{ и }\left.w y^{R} z \in A\right]\right\}.

Задача 2.6.6

Рассмотрим булеву функцию f(a1,a2,,an)f\left(a_{1}, a_{2}, \cdots , a_{n}\right). Для любых nn двоичных строк x1,x2,,xnx_{1}, x_{2}, \cdots , x_{n} одинаковой длины обозначим через f(x1,x2,,xn)f\left(x_{1}, x_{2}, \cdots , x_{n}\right) поразрядное применение функции ff к x1,x2,,xnx_{1}, x_{2}, \cdots , x_{n}. То есть, если xi=xi1xi2xikx_{i}=x_{i_{1}} x_{i_{2}} \ldots x_{i_{k}} для i=1,2i=1,2, ,n\ldots , n, где каждый xijx_{i_{j}} — бит из {0,1}\left\{ 0,1\right\}, то f(x1,x2,,xn)f\left(x_{1}, x_{2}, \ldots , x_{n}\right) равно

f(x11,x21,,xn1)f(x12,x22,,xn2)f(x1k,x2k,,xnk) f\left(x_{11}, x_{21}, \ldots , x_{n 1}\right) \cdot f\left(x_{12}, x_{22}, \ldots , x_{n 2}\right) \cdots f\left(x_{1 k}, x_{2 k}, \ldots , x_{n k}\right)

Покажите, что если языки A1,A2,,AnA_{1}, A_{2}, \cdots , A_{n} регулярны, то язык

\begin{aligned} \left\{ f\left(x_{1}, x_{2}, \cdots , x_{n}\right) \mid & \left|x_{1}\right|=\left|x_{2}\right|=\cdots =\left|x_{n}\right| \\ & x_{1} \in A_{1}, x_{2} \in A_{2}, \cdots , x_{n} \in A_{n}\right\} \end{aligned}

также регулярен.

?
Задача 2.6.7

В упражнении 3(c) выше покажите, что для любого регулярного языка AA число различных AxA_{x} конечно. Найдите верхнюю оценку для этого числа, предполагая, что AA принимается ДКА с ss состояниями.

?
Задача 2.6.8

Верны ли следующие утверждения? Докажите или опровергните ваш ответ.

?
(a)

Если AA регулярен и ABA \subseteq B, то BB регулярен.

(b)

Если AA регулярен и BAB \subseteq A, то BB регулярен.

(c)

Если A2A^{2} регулярен, то AA регулярен.

(d)

Если AA и ABA B регулярны, то BB регулярен.

(e)

Если AA и BB регулярны, то i=0(AiBi)\bigcup_{i=0}^{\infty }\left(A^{i} \cap B^{i}\right) регулярен.

Задача 2.6.9

Покажите, что каждый регулярный язык в 00^{*} можно представить в виде

0a1+0a2++0ak+(0b1+0b2++0bh)(0c) 0^{a_{1}}+0^{a_{2}}+\cdots +0^{a_{k}}+\left(0^{b_{1}}+0^{b_{2}}+\cdots +0^{b_{h}}\right)\left(0^{c}\right)^{*}

для некоторых целочисленных констант a1,a2,,ak,b1,b2,,bha_{1}, a_{2}, \cdots , a_{k}, b_{1}, b_{2}, \cdots , b_{h} и cc.

?
Задача 2.6.10

Подмножество PP неотрицательных целых чисел является в конечном счёте периодическим, если существуют два положительных целых числа b,pb, p, такие что для всех mbm \geq b из mPm \in P следует m+pPm+p \in P. Докажите следующие утверждения:

?
(a)

Для любого регулярного языка LL множество {xxL}\left\{ \left|x\right| \mid x \in L\right\} в конечном счёте периодическое.

(b)

Язык LL над {0}\left\{ 0\right\} регулярен тогда и только тогда, когда {xxL}\left\{ \left|x\right| \mid x \in L\right\} в конечном счёте периодическое.

(c)

Если ff — отображение из целых чисел в целые числа, такое что f1(P)f^{-1}(P) в конечном счёте периодическое для каждого в конечном счёте периодического множества PP, то множество {xA(y)[y=f(x),yB]}\left\{ x \in A \mid (\exists y)[\left|y\right|=f(\left|x\right|), y \in B]\right\} регулярно для любой пары регулярных множеств AA и BB.

(d)

Если ff — отображение из целых чисел в целые числа, такое что f1(P)f^{-1}(P) в конечном счёте периодическое для каждого в конечном счёте периодического множества PP, то множество {x(y)[y=f(x),xyL}\left\{ x \mid (\exists y)[\left|y\right|=f(\left|x\right|), x y \in L\right\} регулярно для любого регулярного множества LL.

Задача 2.6.11

Примените упражнение 10(d) выше, чтобы доказать следующие результаты:

?
(a)

Если LL — регулярный язык, то регулярен и {x(y)[y=2x,xyL]}\left\{ x \mid (\exists y)\left[\left|y\right|=2^{\left|x\right|}, x y \in L\right]\right\}. [Подсказка: используйте теорему Ферма, которая утверждает, что для любого нечётного целого числа m3m \geq 3 существует целое число φ(m)\varphi (m), такое что 2φ(m)1modm2^{\varphi (m)} \equiv 1 \bmod m.]

(b)

Если LL — регулярный язык, то регулярен и {x(y)[y2=x,xyL]}\left\{ x \mid (\exists y)\left[\left|y\right|^{2}=\left|x\right|, x y \in L\right]\right\}.