compute.big_phi¶

Functions for computing integrated information and finding complexes.

pyphi.compute.big_phi.evaluate_cut(uncut_subsystem, cut, unpartitioned_constellation)

Find the BigMip for a given cut.

Parameters: uncut_subsystem (Subsystem) – The subsystem without the cut applied. cut (Cut) – The cut to evaluate. unpartitioned_constellation (Constellation) – The constellation of the uncut subsystem. The BigMip for that cut. BigMip
class pyphi.compute.big_phi.FindMip(iterable, *context)

Computation engine for finding the minimal BigMip.

description = 'Evaluating Φ cuts'
empty_result(subsystem, unpartitioned_constellation)

Begin with a mip with infinite $$\Phi$$; all actual mips will have less.

static compute(cut, subsystem, unpartitioned_constellation)

Evaluate a cut.

process_result(new_mip, min_mip)

Check if the new mip has smaller phi than the standing result.

pyphi.compute.big_phi.big_mip_bipartitions(nodes)

Return all $$\Phi$$ cuts for the given nodes.

This value changes based on config.CUT_ONE_APPROXIMATION.

Parameters: nodes (tuple[int]) – The node indices to partition. All unidirectional partitions. list[Cut]
pyphi.compute.big_phi.big_mip(cache_key, subsystem)

Return the minimal information partition of a subsystem.

Parameters: subsystem (Subsystem) – The candidate set of nodes. A nested structure containing all the data from the intermediate calculations. The top level contains the basic MIP information for the given subsystem. BigMip
pyphi.compute.big_phi.big_phi(subsystem)

Return the $$\Phi$$ value of a subsystem.

pyphi.compute.big_phi.subsystems(network, state)

Return a generator of all possible subsystems of a network.

Does not return subsystems that are in an impossible state.

pyphi.compute.big_phi.possible_complexes(network, state)

Return a generator of subsystems of a network that could be a complex.

This is the just powerset of the nodes that have at least one input and output (nodes with no inputs or no outputs cannot be part of a main complex, because they do not have a causal link with the rest of the subsystem in the past or future, respectively).

Does not include subsystems in an impossible state.

Parameters: network (Network) – The network for which to return possible complexes. state (tuple[int]) – The state of the network. Subsystem – The next subsystem which could be a complex.
class pyphi.compute.big_phi.FindAllComplexes(iterable, *context)

Computation engine for computing all complexes

description = 'Finding complexes'
empty_result()
static compute(subsystem)
process_result(new_big_mip, big_mips)
pyphi.compute.big_phi.all_complexes(network, state)

Return a generator for all complexes of the network.

Includes reducible, zero-$$\Phi$$ complexes (which are not, strictly speaking, complexes at all).

class pyphi.compute.big_phi.FindIrreducibleComplexes(iterable, *context)

Computation engine for computing irreducible complexes of a network.

process_result(new_big_mip, big_mips)
pyphi.compute.big_phi.complexes(network, state)

Return all irreducible complexes of the network.

pyphi.compute.big_phi.main_complex(network, state)

Return the main complex of the network.

pyphi.compute.big_phi.condensed(network, state)

Return the set of maximal non-overlapping complexes.

class pyphi.compute.big_phi.ConceptStyleSystem(subsystem, direction, cut=None)

A functional replacement for Subsystem implementing concept-style system cuts.

apply_cut(cut)
__getattr__(name)

Pass attribute access through to the basic subsystem.

cause_system
effect_system
concept(mechanism, purviews=False, past_purviews=False, future_purviews=False)

Compute a concept, using the appropriate system for each side of the cut.

pyphi.compute.big_phi.concept_cuts(direction, node_indices)

Generator over all concept-syle cuts for these nodes.

pyphi.compute.big_phi.directional_big_mip(subsystem, direction, unpartitioned_constellation=None)

Calculate a concept-style BigMipPast or BigMipFuture.

class pyphi.compute.big_phi.BigMipConceptStyle(mip_past, mip_future)

Represents a Big Mip computed using concept-style system cuts.

min_mip
__getattr__(name)

Pass attribute access through to the minimal mip.

unorderable_unless_eq = ['network']
order_by()
pyphi.compute.big_phi.big_mip_concept_style(subsystem)

Compute a concept-style Big Mip