DFA-Minimizer
This is a program written in Java that will perform a DFA simulation and doing a minimizing proccess for a complex DFA diagram. The input would be a .txt file which has format just mention bellow :
states(Q):
qA,qB,qC,qD,qE,qF,qG,qH
character:
a,b
initial state:
qA
final state:
qD
transition:
qB,qA
qA,qC
qD,qB
qD,qA
qD,qF
qG,qE
qF,qG
qG,qD
And you'll get the output, something like this
States : qA,qB,qC,qD,qE,qF,qG,qH
Characters : a,b
Initial state : qA
Finale state : qD
Transition -> qB,qA
Transition -> qA,qC
Transition -> qD,qB
Transition -> qD,qA
Transition -> qD,qF
Transition -> qG,qE
Transition -> qF,qG
Transition -> qG,qD
{qA|aabaabaab} <=>
{qB|abaabaab} <=>
{qA|baabaab} <=>
{qA|aabaab} <=>
{qB|abaab} <=>
{qA|baab} <=>
{qA|aab} <=>
{qB|ab} <=>
{qA|b} <=>
{qA|} <=>
NOT ACCEPTED
----------------------------------------------------------------
qG |{qG,qH}| | | | | | |
----------------------------------------------------------------
qF |{qF,qH}|{qF,qG}| | | | | |
----------------------------------------------------------------
qE |{qE,qH}|{qE,qG}|{qE,qF}| | | | |
----------------------------------------------------------------
qD |{ *1 }|{ *1 }|{ *1 }|{ *1 }| | | |
----------------------------------------------------------------
qC |{qC,qH}|{qC,qG}|{qC,qF}|{qC,qE}|{ *1 }| | |
----------------------------------------------------------------
qB |{qB,qH}|{qB,qG}|{qB,qF}|{qB,qE}|{ *1 }|{qB,qC}| |
----------------------------------------------------------------
qA |{qA,qH}|{qA,qG}|{qA,qF}|{qA,qE}|{ *1 }|{qA,qC}|{qA,qB}|
----------------------------------------------------------------
| qH | qG | qF | qE | qD | qC | qB |
----------------------------------------------------------------
qG |{ *2 }| | | | | | |
----------------------------------------------------------------
qF |{ *2 }|{qF,qG}| | | | | |
----------------------------------------------------------------
qE |{ *2 }|{ *2 }|{ *2 }| | | | |
----------------------------------------------------------------
qD |{ *1 }|{ *1 }|{ *1 }|{ *1 }| | | |
----------------------------------------------------------------
qC |{ *2 }|{ *2 }|{ *2 }|{qC,qE}|{ *1 }| | |
----------------------------------------------------------------
qB |{ *2 }|{qB,qG}|{qB,qF}|{ *2 }|{ *1 }|{ *2 }| |
----------------------------------------------------------------
qA |{ *2 }|{qA,qG}|{qA,qF}|{ *2 }|{ *1 }|{ *2 }|{qA,qB}|
----------------------------------------------------------------
| qH | qG | qF | qE | qD | qC | qB |
----------------------------------------------------------------
qG |{ *2 }| | | | | | |
----------------------------------------------------------------
qF |{ *2 }|{ *3 }| | | | | |
----------------------------------------------------------------
qE |{ *2 }|{ *2 }|{ *2 }| | | | |
----------------------------------------------------------------
qD |{ *1 }|{ *1 }|{ *1 }|{ *1 }| | | |
----------------------------------------------------------------
qC |{ *2 }|{ *2 }|{ *2 }|{qC,qE}|{ *1 }| | |
----------------------------------------------------------------
qB |{ *2 }|{ *3 }|{qB,qF}|{ *2 }|{ *1 }|{ *2 }| |
----------------------------------------------------------------
qA |{ *2 }|{qA,qG}|{ *3 }|{ *2 }|{ *1 }|{ *2 }|{ *3 }|
----------------------------------------------------------------
| qH | qG | qF | qE | qD | qC | qB |
New States:
qD |
qH |
qA,qG |
qB,qF |
qC,qE |