elasticai.creator.graph.vf2.state#

Module Contents#

Classes#

Data#

T

TP

API#

elasticai.creator.graph.vf2.state.T#

‘TypeVar(…)’

elasticai.creator.graph.vf2.state.TP#

‘TypeVar(…)’

class elasticai.creator.graph.vf2.state.State(graph: elasticai.creator.graph.graph.Graph[elasticai.creator.graph.vf2.state.T])[source]#

Bases: typing.Generic[elasticai.creator.graph.vf2.state.T, elasticai.creator.graph.vf2.state.TP]

remove_pair(a: elasticai.creator.graph.vf2.state.T, b: elasticai.creator.graph.vf2.state.TP) None[source]#
contains_pair(a: elasticai.creator.graph.vf2.state.T, b: elasticai.creator.graph.vf2.state.TP) bool[source]#
contains_node(node: elasticai.creator.graph.vf2.state.T) bool[source]#
partial_nodes() set[elasticai.creator.graph.vf2.state.T][source]#
partial_predecessors(n: elasticai.creator.graph.vf2.state.T) set[elasticai.creator.graph.vf2.state.T][source]#
partial_successors(n: elasticai.creator.graph.vf2.state.T) set[elasticai.creator.graph.vf2.state.T][source]#
unseen_nodes() set[elasticai.creator.graph.vf2.state.T][source]#
in_node_successors(n: elasticai.creator.graph.vf2.state.T) set[elasticai.creator.graph.vf2.state.T][source]#
in_node_predecessors(n: elasticai.creator.graph.vf2.state.T) set[elasticai.creator.graph.vf2.state.T][source]#
out_node_successors(n: elasticai.creator.graph.vf2.state.T) set[elasticai.creator.graph.vf2.state.T][source]#
out_node_predecessors(n: elasticai.creator.graph.vf2.state.T) set[elasticai.creator.graph.vf2.state.T][source]#
unseen_successors(n: elasticai.creator.graph.vf2.state.T) set[elasticai.creator.graph.vf2.state.T][source]#
unseen_predecessors(n: elasticai.creator.graph.vf2.state.T) set[elasticai.creator.graph.vf2.state.T][source]#
iter_nodes() collections.abc.Iterator[elasticai.creator.graph.vf2.state.T][source]#
is_complete() bool[source]#
iter_matched_pairs() collections.abc.Iterator[tuple[elasticai.creator.graph.vf2.state.T, elasticai.creator.graph.vf2.state.TP]][source]#
add_pair(a: elasticai.creator.graph.vf2.state.T, b: elasticai.creator.graph.vf2.state.TP) None[source]#
restore() None[source]#

reset all changes introduced in the current depth.

This is responsible for backtracking.

update_in_nodes() None[source]#

Find out which nodes inside of current match are reachable from outside of current match.

update_out_nodes() None[source]#

Find out which nodes outside of current match are reachable from the current match.

next_depth() None[source]#
update_inout_nodes() None[source]#
iter_in_nodes() collections.abc.Iterator[elasticai.creator.graph.vf2.state.T][source]#
iter_out_nodes() collections.abc.Iterator[elasticai.creator.graph.vf2.state.T][source]#