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