Prove that a language is regular if it is accepted by a DFA with more than one intial state So I'm currently studying theory of computation, and I was wondering if you could theoretically have more than one initial state in a DFA and if you can prove that a DFA with more than one initial state can depict a regular language? So essentially, can we prove that a language is regular if and only if it is accepted by a DFA with more than one initial state?

I was experimenting with the language L which consists of all strings over the alphabet {a,b} which contains an even number of a's.

I managed to draw a DFA for this language as well as my representation for a DFA with more than one initial state. From the looks of things, it makes sense.



But is there any way that we can PROVE that a language is regular if it is accepted by a DFA with more than one state? So for any given DFA with more than one initial state, are the languages that it accepts is regular? If so, how can I prove it? I know from Kleene's Theorem that a regular language is accepted by an FA, but from the research I have done I have not been able to find anything regarding my question.
There are many ways of showing that DFAs with multiple initial states generate regular languages. Here are some:


You can prove using Nerode's theorem that for any DFA, the set of words taking the DFA from state $q_1$ to state $q_2$ is regular.
Using "dynamic programming", you can construct a regular expression for the set of all words taking a DFA from state $q_1$ to state $q_2$.
Using $\epsilon$ transitions from a new initial state, you can construct an NFA equivalent to your DFA.


NFAs with multiple initial states are in some sense more natural than NFAs with one initial state. Indeed, the power set construction, which constructs a DFA equivalent to a given NFA, works without any changes for this more general class of NFAs. Moreover, this more liberal definition allows you to prove that regular languages are closed under reversal by simply "reversing all arrows".