Skip to main content

Infer.NET development

String inference

Infer.NET represents distributions on strings via probabilistic automata. Operations on automata are described in Belief Propagation with Strings, with more details in Notes on String operators. The Infer.NET implementation is described in String inference API design. See Hello, Strings! for an example of modelling with uncertain strings.

Viewing automata

You can create a GraphViz file from a SequenceDistribution by calling ToString on the distribution using the SequenceDistributionFormats.GraphViz format and writing to file.

You can use http://graphviz.it/ to view small automata by copying and pasting the string from the file to the window.

To view large automata, install GraphViz, and run dot.exe. The following example creates a jpeg from the file containing the graph description:

dot -Tjpeg myautomaton.txt > myautomaton.jpeg

Reading

Automata libraries

Useful facts from automata theory