
Figaro™ is a powerful language for probabilistic modeling. It provides the ability to use programming language constructs, such as data structures, conditionals, looping, recursion, and abstraction to build models of rich complex systems. Figaro’s built-in reasoning algorithms automatically apply to models written in the language, so modelers can experiment with models immediately without having to write reasoning code. The extensive library of model elements enables quickly combining the right components to build models. Figaro also integrates tightly with Java and Scala applications. As a result, Figaro is ideal both for rapid prototyping of probabilistic models and integrating them with applications.