跳到主要内容

電気通信大学 情報理工学研究科 情報・ネットワーク工学専攻 2022年8月実施 選択問題 離散数学とオートマトン

Author

祭音Myyura (co-authored with GPT 5.6 SOL)

Description

Σ={0,1}\Sigma=\{0,1\} 上で w=xxw=xx と書ける文字列を square と呼び、長さが nn 以下の square 全体を SqnSq^{\leq n} とする。Sq7Sq^{\leq7} の列挙と一般の要素数を求め、Sq4Sq^{\leq4} を受理する DFA を構成せよ。また、長さ制限のない square 言語が正規言語でないことを背理法で示せ。

题目描述

在二元字母表上把形如 xxxx 的串称为 square。枚举长度不超过 7 的 square,求一般计数,构造识别长度不超过 4 的 DFA,并用状态重复(泵引理思想)证明无限制 square 语言非正则。

Kai

1.

Sq7={λ,00,11,0000,0101,1010,1111,000000,001001,010010,011011,100100,101101,110110,111111}.\boxed{ \begin{aligned} Sq^{\leq7}=\{&\lambda,00,11,0000,0101,1010,1111,\\ &000000,001001,010010,011011,\\ &100100,101101,110110,111111\}. \end{aligned}}

2.

xxxx の長さが nn 以下であるためには xn/2|x|\leq\lfloor n/2\rfloor である。写像 xxxx\mapsto xx は単射なので、

Sqn=j=0n/22j=2n/2+11.\boxed{ |Sq^{\leq n}| =\sum_{j=0}^{\lfloor n/2\rfloor}2^j =2^{\lfloor n/2\rfloor+1}-1}.

3.

次の DFA で受理できる。二重円が受理状態、DD が死状態である。

ここで r0,r1r_0,r_1 は次にそれぞれ 0,10,1 を読めば square が完成する状態である。受理される文字列は

{λ,00,11,0000,0101,1010,1111}=Sq4\{\lambda,00,11,0000,0101,1010,1111\}=Sq^{\leq4}

に限られる。

4.

square 全体を受理する DFA BB が存在すると仮定し、その状態数を NN とする。k>Nk>N を取り、0k10k10^k10^k1 を入力する。

(1)

最初の 11 を読む前の状態

δ(s0,0i)(0ik)\delta(s_0,0^i)\qquad(0\leq i\leq k)

k+1>Nk+1>N 個ある。鳩の巣原理より、ある 0i<jk0\leq i<j\leq k について

δ(s0,0i)=δ(s0,0j)\delta(s_0,0^i)=\delta(s_0,0^j)

となる。したがって最初の 11 より前に同じ状態へ少なくとも 2 回到達する。

(2)

d=ji>0d=j-i>0 とする。区間 0d0^d は状態を変えないループなので、BB

w=0k10k1=(0k1)2w=0^k10^k1=(0^k1)^2

を受理するならば、このループを 1 回増やした

w=0k+d10k1w'=0^{k+d}10^k1

も受理する。

dd が奇数なら w|w'| は奇数なので square ではない。dd が偶数の場合、ww' が square なら、末尾の第 2 の 11 に対応する第 1 の 11 は文字列の中央になければならない。しかし実際の第 1 の 11 の位置は k+d+1k+d+1、中央は

w2=k+d2+1\frac{|w'|}{2}=k+\frac d2+1

であり、一致すれば d=0d=0 となって矛盾する。よって ww' は square ではないのに BB に受理される。したがって、

square 全体を受理する有限オートマトンは存在しない.\boxed{\text{square 全体を受理する有限オートマトンは存在しない}}.