prodigy.analysis.instructionhandler.program_info

class ProgramInfo(program, so_vars=frozenset({}), independents_vars=frozenset({}))[source]

Bases: object

Contains a program and some information about it, such as which variables are considered second order variables, and which are independent.

All attributes of the wrapped program can be accessed directly (e.g., by writing prog_info.variables instead of prog_info.program.variables).

Parameters:
program: Program
so_vars: frozenset[str] = frozenset({})

Variables that are to be considered second order variables, used in the equivalence check

independents_vars: frozenset[frozenset[str]] = frozenset({})

Pairs of variables that are independent from each other; see prodigy.analysis.static.independence.independent_vars.