跳到主要内容

東京大学 情報理工学系研究科 コンピュータ科学専攻 2015年2月実施 問題2

Author

kainoj, 祭音Myyura

Description

Let us consider nondeterministic finite automata (NFA) and deterministic finite automata (DFA) over the alphabet . For example, the NFA shown below

recognizes the language

Here denotes the set of words over .

Answer the following questions.

(1) Present an NFA, with at most four states, that recognizes the language

Here denotes the length of the word .

(2) Present a DFA that recognizes the language in Question (1).

(3) A DFA that recognizes the language has no less than states. Prove this fact.

(4) Argue for the following statement:

  • To recognize the same language, a DFA possibly needs the number of states that is exponentially bigger than an NFA does.

Kai

(1)

(2)

(3) + (4)

I'll prove that DFA that recognizes :

has no less than states. This is almost a copy-paste from Introduction to Automata Theory, Languages and Computation 3rd ed., Chapter 2.3.6.

Intuitively we need states to remember every possible ending of length : we can encode it as a binary string of length . Now, I'll show that there's no such DFA with less than states.

Suppose that there's DFA recognizing with less tan states. If so, then tere must exist a state in which is after reading two different sequences, say and . Since they are different, let be the last position on which they differ. By symmetry, assume that and .

  • if , then and . Which means that state is both accepting and non-accepting.
  • if , then we can append 's to both and . Then a state in which is after reading and is both accepting and non-accepting.

In both cases we get lead to contradiction. Thus, DFA recognizing has at least states.

  • (3): Let . Then DFA recognizing has no less than states.
  • (4): NFA recognizing has exactly states. Equivalent DFA has states.