0
$\begingroup$

Every language is regular if there exists a DFA or NFA that accepts it. Let's consider just the languages with finite alphabets and let's construct a language $T$ with this alphabet. My confusion is that I think that every language with finite alphabet has a DFA or NFA no matter what. We can do something like the following:

enter image description here

And that would accept any language defined in $\sum$

$\endgroup$
1
$\begingroup$

Your NFA accepts any word on $\Sigma$, not any language. Indeed, it accepts the (one) language that contains all finite words on $\Sigma$. This is usually written $\Sigma^*$.

Every DFA or NFA accepts exactly one language, consisting of all words that have accepting runs in the automaton and only those. That is, all words such that, after reading them, the automaton is in an accepting state. An NFA may have multiple runs on the same word; it accepts that word if at least one of its runs terminates in an accepting (final) state. Still, for every word an automaton renders a verdict, and the language that the automaton accepts (or recognizes) is the set of exactly those words for with the verdict is "yes."

Every finite-word language $L$ on $\Sigma$ is a subset of $\Sigma^*$, which is regular, but that does not mean that $L$ is regular, just like a subset of an open set does not need to be open and a subset of an infinite set does not need to be infinite (or finite, for that matter).

Finally, it should be noted that being regular, for a language, is rather the exception than the norm. As long as $\Sigma$ in not empty, there are uncountably many subsets of $\Sigma^*$, but only countably many finite-state automata.

$\endgroup$
  • $\begingroup$ Yes correct, but let see that we have a subset of $\sum^*$. That machine will accept any word of that subset, so that subset is a regular language. My confusion is that. Maybe, the original statement needs to be restated to a machine that just accepts that specific language. $\endgroup$ – TheMathNoob Feb 8 '17 at 4:00
  • 1
    $\begingroup$ @TheMathNoob in this context, saying that the machine accepts the language is saying that it accepts each word in the language and it rejects each word not in the language. $\endgroup$ – stewbasic Feb 8 '17 at 4:03
  • $\begingroup$ If an automaton accepts all the words in language $L$ and then some, then it does not accept $L$, but a superset of it. That's the definition. $\endgroup$ – Fabio Somenzi Feb 8 '17 at 4:03
  • $\begingroup$ I need more help guys @FabioSomenzi math.stackexchange.com/questions/2132974/…. $\endgroup$ – TheMathNoob Feb 8 '17 at 4:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.