dfa minimize fails to merge parallel transitions
The following example generate a dfa with parallel transitions Long
and (and (not Long) String)
which ideally should be reduced to (not String)
, but perhaps (or Long (and (not Long) (not String)))
.
(clojure-rte.dot/dfa-to-dot
(clojure-rte.dot/minimize
(rte-compile '(:and (:cat :sigma :sigma) (:cat (:not String) Long))))
:title "Example"
:abbrev true
:state-legend false
:view true)