6By default final states of a DFA are distinguishable from non final states Hence in the given DFA, state C is distinguishable from other statesTo determine whether two states are equivalent we have to analyze the states reachable from the states for various strings from length 0 to some ‘n’Difficult hence we go for table filling algorithm
7Table filling algorithm Build a (n - 1) x (n - 1) table where n is the number of states in the given DFAEach column is named by the name of the states starting with the first state till n-1 statesEach row is named with name of the states starting from the second stateDuplicate cells are eliminated (i.e.) only one cell is used to determine whether two states are equal
8Table filling algorithm Each cell in the table represents a pair of states in the DFA.Cells are marked with a “x” as soon as the two states represented by it are decided to be distinguishableAt the end of the process, the pairs of states corresponding to the cells of the table without the mark are concluded as equivalent states
18Testing equivalence of two FA To test whether the given two FAs M1 and M2 are equivalent it is imagined as if the two FAs are combined.The imaginary FA will contain m + n states in it where m is the number of states in M1 and n is the number of states in M2.The imaginary FA contains two initial states, initial state of M1 and M2 which is not allowed in real case.
19Testing equivalence of two FA Table filling algorithm is used for the imaginary DFA. A table of size (m + n-1) x (m + n-1) is used and the two initial states are tested for equivalence.If they are equivalent then it may be concluded that both the DFAs represent same language.