私は現在、Haskell で実装したい 2 つのオートマトン学習アルゴリズムのニーズに適合するデータ構造を考え出そうとしています: RPNIとEDSM。
直観的には、ツリーに対するジッパーに近いものが理想的です。これらのアルゴリズムは、状態に対するある種の焦点 (ブルー フリンジ) を維持する状態マージ アルゴリズムであるため、興味深いポイントにすばやく到達するためにある種のジッパーが役立ちます。しかし、DFA (Determinist Finite Automaton) はツリーのような構造よりもグラフのような構造であるため、私はちょっと迷っています。遷移によって構造に戻ることができますが、ジッパーが正常に動作しない可能性があります。
私の質問は次のとおりです。高速な方法で操作できるように、DFA (または少なくともその遷移) をどのように表現しますか?