idp_engine.utils

Various utilities (in particular, OrderedSet)

class Semantics(value)[source]

Semantics for inductive definitions

PROCESS_TIMINGS = {'ground': 0, 'parse': 0, 'solve': 0}

Module that monkey-patches json module when it’s imported so JSONEncoder.default() automatically checks for a special “to_json()” method and uses it to encode the object if found.

exception IDPZ3Error(msg, node=None, error=True)[source]

raised whenever an error occurs in the conversion from AST to Z3

Parameters
  • msg (str) –

  • node (Optional[ASTNode]) –

  • error (Optional[bool]) –

__init__(msg, node=None, error=True)[source]
Parameters
  • msg (str) –

  • node (Optional[ASTNode]) –

  • error (Optional[bool]) –

class OrderedSet(els=[])[source]

a list of expressions without duplicates (first-in is selected)

__init__(els=[])[source]