Q: Occasionally I get this error message from xfst: when I use the 'print random' commands

*** Sorry. Have
trouble finding valid paths in this net.

*** Quitting after 50 failed attempts.

*** Quitting after 50 failed attempts.

Why would it do this?

A: For networks with a finite number of paths, the random generator uses a word-number mapping algorithm that assigns to each path a number. It then picks one of the numbers at random and follows the chosen path. If the path is blocked by some flag-diacritic constraint, xfst picks another random number and tries again. After 50 failed attempts it quits. This can happen in networks that have a huge number of invalid paths, constrained by flags, and a small number of valid paths.