(class from pyomo.contrib.cp.transform.logical_to_disjunctive_walker)
pyomo.contrib.cp.transform.logical_to_disjunctive_walker
Bases: StreamBasedExpressionVisitor
StreamBasedExpressionVisitor
Converts BooleanExpressions to Linear (MIP) representation
This converter eschews conjunctive normal form, and instead follows the well-trodden MINLP path of factorable programming.
Methods
__init__()
__init__
beforeChild(node, child, child_idx)
beforeChild
exitNode(node, data)
exitNode
finalizeResult(result)
finalizeResult
initializeWalker(expr)
initializeWalker
walk_expression(expr)
walk_expression
Walk an expression, calling registered callbacks.
walk_expression_nonrecursive(expr)
walk_expression_nonrecursive
Nonrecursively walk an expression, calling registered callbacks.
Attributes
client_methods
Member Documentation
This is the standard interface for running the visitor. It defaults to using an efficient recursive implementation of the visitor, falling back on walk_expression_nonrecursive() if the recursion stack gets too deep.
walk_expression_nonrecursive()
This routine is safer than the recursive walkers for deep (or unbalanced) trees. It is, however, slightly slower than the recursive implementations.