An extended value, which could either be a regular value or the special value Star.
Object for lazily computing the range of values of elements in a universe.
Algorithm that lazily performs variable elimination.
Algorithm that lazily performs variable elimination. This algorithm is a lazy algorithm that can be run to any depth. Given a depth, it expands the model up to that depth and creates factors for the expanded elements. It also creates factors that capture the effect of parts of the model that have not been expanded on the query targets. These factors are used to compute lower or upper bounds on the queries. Then it uses ordinary variable elimination to solve these factors.
A regular value.
The special value Star, which stands for the unknown result of an unexpanded computation.
The special value Star, which stands for the unknown result of an unexpanded computation. When computing a lower bound to probabilities, we can assume that Star will eventually evaluate to something other than what is needed to make the query have a particular value. Star is a case class so that when we have different variables over the same type that both have value Star, we can say that their values are equal.
A value set that possibly contains unspecified values.
Methods for creating lower and upper bound probability factors.
Object for lazily computing the range of values of elements in a universe. Given a universe, you can compute the values of elements in the universe to any desired depth.