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 Theory classes and sub-classes.

simplify_with(self, assignments)[source]

simplify the expression using the assignments

Parameters
  • self (idp_engine.Expression.Expression) –

  • assignments (idp_engine.Assignments.Assignments) –

Return type

idp_engine.Expression.Expression