digraph G { label="MDFA of (aa|bb)*(ab(aa|bb)*ab(aa|bb)*|ba(aa|bb)*ab(aa|bb)*|ab(aa|bb)*ba(aa|bb)*|ba(aa|bb)*ba(aa|bb)*)*"; rankdir=LR start[shape =none] start ->node_1 node_1 [label="M1", shape = doublecircle] node_1 -> node_2 [label ="b"] node_1 -> node_4 [label ="a"] node_2 [label="M2", shape = circle] node_2 -> node_1 [label ="b"] node_2 -> node_3 [label ="a"] node_3 [label="M3", shape = circle] node_3 -> node_4 [label ="b"] node_3 -> node_2 [label ="a"] node_4 [label="M4", shape = circle] node_4 -> node_3 [label ="b"] node_4 -> node_1 [label ="a"] }