跳到主要内容

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

Author​

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

Description​

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

题目描述​

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

Kai​

1.​

Sq≤7={λ,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 以下であるためには ∣x∣≤⌊n/2⌋|x|\leq\lfloor n/2\rfloor である。写像 x↦xxx\mapsto xx は単射なので、

∣Sq≤n∣=∑j=0⌊n/2⌋2j=2⌊n/2⌋+1−1.\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}=Sq≤4\{\lambda,00,11,0000,0101,1010,1111\}=Sq^{\leq4}

に限られる。

4.​

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

(1)​

最初の 11 を読む前の状態

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

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

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

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

(2)​

d=j−i>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 が偶数の場合、w′w' が square なら、末尾の第 2 の 11 に対応する第 1 の 11 は文字列の中央になければならない。しかし実際の第 1 の 11 の位置は k+d+1k+d+1、中央は

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

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

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