For example, in an assignment given to me, we were asked to find out if two regular expressions are equal or not.
(a+b+c)* and ((ab)**c*)*
My question is how is one supposed to do that? If I draw the transition graphs for both and then run a few strings through it and show that both of the TGs are able to accept it, is that a sufficient proof ? If not, how do I do it? Is there a mathematical/axiomatic approach towards this?
Thanks in advance.
EDIT: There is another thing that I'd like to clear which is kind of related to this question. Are the two FAs depicted in the photo below the same?
i.e. Are (1) and (2) in the above picture the same?
There is an algorithm to determine whether they are equal:
No novelty or genius is required; you could write a program to do this (although, in practice, using the powerset construction can be unwieldy, and failing to minimize at both steps can be costly).
EDIT: Yes, those DFAs are the same. The first is just a shorthand notation for the second.