Build your own FST


  • Each entry can be an input (creates an FSA) or input/ouput (creates an FST).
  • Separate each entry with space or newline.
  • If all outputs are ints >= 0 then outputs are numeric (sum as you traverse); otherwise outputs are strings (concatenate as you traverse).
  • NEXT-optimized arcs (whose target is the next node) are red.
  • A bolded arc means the next node is final.
  • See this blog post for details and examples.