1. A method for factoring an ambiguous finite-state transducer (FST) into an unambiguous FST and a fail-safe FST, comprising the steps of: preprocessing the ambiguous FST to create a fully-unfolded FST having a plurality of states and arcs, with each arc having at least one input symbol and at least one output symbol; grouping the plurality of arcs of the fully-unfolded FST into ambiguity fields; and for each of the plurality of arcs: if the arc is outside of any ambiguity field, copying the arc to the unambiguous FST, and copying the arc to the fail-safe FST while replacing the corresponding input symbol with the corresponding output symbol; and if the arc is inside an ambiguity field, copying the arc to the unambiguous FST while replacing the corresponding output symbol with a diacritic, and copying the arc to the fail-safe FST while replacing the corresponding input symbol with the diacritic.