pm4py.objects.petri_net.utils.synchronous_product module#
- pm4py.objects.petri_net.utils.synchronous_product.construct(pn1, im1, fm1, pn2, im2, fm2, skip)[source]#
Constructs the synchronous product net of two given Petri nets.
- Parameters:
pn1 – Petri net 1
im1 – Initial marking of Petri net 1
fm1 – Final marking of Petri net 1
pn2 – Petri net 2
im2 – Initial marking of Petri net 2
fm2 – Final marking of Petri net 2
skip – Symbol to be used as skip
- Return type:
return: Synchronous product net and associated marking labels are of the form (a,>>)
- pm4py.objects.petri_net.utils.synchronous_product.construct_cost_aware(pn1, im1, fm1, pn2, im2, fm2, skip, pn1_costs, pn2_costs, sync_costs)[source]#
Constructs the synchronous product net of two given Petri nets.
- Parameters:
pn1 – Petri net 1
im1 – Initial marking of Petri net 1
fm1 – Final marking of Petri net 1
pn2 – Petri net 2
im2 – Initial marking of Petri net 2
fm2 – Final marking of Petri net 2
skip – Symbol to be used as skip
pn1_costs – dictionary mapping transitions of pn1 to corresponding costs
pn2_costs – dictionary mapping transitions of pn2 to corresponding costs
pn1_costs – dictionary mapping pairs of transitions in pn1 and pn2 to costs
sync_costs – Costs of sync moves
- Return type:
return: Synchronous product net and associated marking labels are of the form (a,>>)