idp_engine.Propagate

Computes the consequences of an expression, i.e., the sub-expressions that are necessarily true (or false) if the expression is true (or false)

It has 2 parts: * symbolic propagation * Z3 propagation

This module monkey-patches the Expression and Problem classes and sub-classes.

idp_engine.Propagate.simplify_with(self: idp_engine.Expression.Expression, assignments: idp_engine.Assignments.Assignments)idp_engine.Expression.Expression[source]

simplify the expression using the assignments