このへんの続きです。。。 Lucene で使われている FST (Minimal Acyclic Subsequential Transducer) の元になった以下の論文のアルゴリズムを追ってみました。 Direct Construction of Minimal Acyclic Subsequential Transducers, Stoyan Mihov and Denis Maurel, 2001.擬似コードを読むだけで動きを把握するのがすごく苦手で、論文中の example FST の構築手順を、1ステップずつ絵にしてみたので貼ってみます。 なお、FSTやアルゴリズムの説明(& Go による実装例)については、ikawaha さんの解説がとてもわかりやすいので、(論文と併せて)ぜひこちらの記事を参照してください。 :) Luceneで使われてるFSTを実装してみた(正規表現マッチ