pm4py.objects.petri_net.utils.reduction module#

pm4py.objects.petri_net.utils.reduction.reduce_single_entry_transitions(net)[source]#

Reduces the number of single-entry silent transitions in the Petri net by merging them upward when the place feeding them does not feed any other transition.

Parameters:

net – Petri net

pm4py.objects.petri_net.utils.reduction.reduce_single_exit_transitions(net)[source]#

Reduces the number of single-exit silent transitions in the Petri net by merging them downward when the place receiving them does not receive arcs from any other transition.

Parameters:

net – Petri net

pm4py.objects.petri_net.utils.reduction.apply_simple_reduction(net)[source]#

Apply a simple reduction to the Petri net by repeatedly merging single-entry and single-exit silent transitions where possible.

Parameters:

net – Petri net

pm4py.objects.petri_net.utils.reduction.apply_fst_rule(net)[source]#

Apply the Fusion of Series Transitions (FST) rule

Parameters:

net – Reset Inhibitor net

pm4py.objects.petri_net.utils.reduction.apply_fsp_rule(net, im=None, fm=None)[source]#

Apply the Fusion of Series Places (FSP) rule

Parameters:

net – Reset Inhibitor net

pm4py.objects.petri_net.utils.reduction.apply_fpt_rule(net)[source]#

Apply the Fusion of Parallel Transitions (FPT) rule

Parameters:

net – Reset Inhibitor net

pm4py.objects.petri_net.utils.reduction.apply_fpp_rule(net, im=None)[source]#

Apply the Fusion of Parallel Places (FPP) rule

Parameters:

net – Reset Inhibitor net

pm4py.objects.petri_net.utils.reduction.apply_elt_rule(net)[source]#

Apply the Elimination of Self-Loop Transitions (ELT) rule

Parameters:

net – Reset Inhibitor net

pm4py.objects.petri_net.utils.reduction.apply_elp_rule(net, im=None)[source]#

Apply the Elimination of Self-Loop Places (ELP) rule

Parameters:

net – Reset Inhibitor net

pm4py.objects.petri_net.utils.reduction.apply_a_rule(net)[source]#

Apply the Abstraction (A) rule

Parameters:

net – Reset Inhibitor net

pm4py.objects.petri_net.utils.reduction.apply_r_rule(net)[source]#

Apply the Reset Reduction (R) rule

Parameters:

net – Reset Inhibitor net

pm4py.objects.petri_net.utils.reduction.power_set(iterable, min=0)[source]#
pm4py.objects.petri_net.utils.reduction.apply_reset_inhibitor_net_reduction(net, im=None, fm=None)[source]#

Apply a thorough reduction to the Reset Inhibitor net

Parameters:

net – Reset Inhibitor net