pm4py.objects.petri_net.utils.check_soundness module#

pm4py.objects.petri_net.utils.check_soundness.check_source_and_sink_reachability(net, unique_source, unique_sink)[source]#

Checks reachability of the source and the sink place from all simulation nodes (places/transitions) of the Petri net

Parameters:
  • net – Petri net

  • unique_source – Unique source place of the Petri net

  • unique_sink – Unique sink place of the Petri net

Returns:

Boolean value that is true if each node is in a path from the source place to the sink place

Return type:

boolean

pm4py.objects.petri_net.utils.check_soundness.check_source_place_presence(net)[source]#

Check if there is a unique source place with empty connections

Parameters:

net – Petri net

Returns:

Unique source place (or None otherwise)

Return type:

place

pm4py.objects.petri_net.utils.check_soundness.check_sink_place_presence(net)[source]#

Check if there is a unique sink place with empty connections

Parameters:

net – Petri net

Returns:

Unique source place (or None otherwise)

Return type:

place

pm4py.objects.petri_net.utils.check_soundness.check_wfnet(net)[source]#

Check if the Petri net is a workflow net

Parameters:

net – Petri net

Returns:

Boolean value that is true when the Petri net is a workflow net

Return type:

boolean

pm4py.objects.petri_net.utils.check_soundness.check_source_sink_place_conditions(net)[source]#

Check some conditions on the source/sink place important for a sound workflow net

Parameters:

net – Petri net

Returns:

Boolean value (True is good)

Return type:

boolean

pm4py.objects.petri_net.utils.check_soundness.check_easy_soundness_net_in_fin_marking(net, ini, fin)[source]#

Checks the easy soundness of a Petri net having the initial and the final marking

Parameters:
  • net – Petri net

  • ini – Initial marking

  • fin – Final marking

Returns:

Boolean value

Return type:

boolean

pm4py.objects.petri_net.utils.check_soundness.check_easy_soundness_of_wfnet(net)[source]#

Checks the easy soundness of a workflow net

Parameters:

net – Petri net

Returns:

Boolean value

Return type:

boolean