pm4py.objects.petri_net.data_petri_nets package#

PM4Py – A Process Mining Library for Python

Copyright (C) 2024 Process Intelligence Solutions UG (haftungsbeschränkt)

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see this software project’s root or visit <https://www.gnu.org/licenses/>.

Website: https://processintelligence.solutions Contact: info@processintelligence.solutions

Submodules#

pm4py.objects.petri_net.data_petri_nets.data_marking module#

PM4Py – A Process Mining Library for Python

Copyright (C) 2024 Process Intelligence Solutions UG (haftungsbeschränkt)

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see this software project’s root or visit <https://www.gnu.org/licenses/>.

Website: https://processintelligence.solutions Contact: info@processintelligence.solutions

class pm4py.objects.petri_net.data_petri_nets.data_marking.DataMarking(marking=None)[source]#

Bases: Marking

pm4py.objects.petri_net.data_petri_nets.semantics module#

PM4Py – A Process Mining Library for Python

Copyright (C) 2024 Process Intelligence Solutions UG (haftungsbeschränkt)

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see this software project’s root or visit <https://www.gnu.org/licenses/>.

Website: https://processintelligence.solutions Contact: info@processintelligence.solutions

class pm4py.objects.petri_net.data_petri_nets.semantics.DataPetriNetSemantics[source]#

Bases: Semantics

is_enabled(t, pn, m, **kwargs)[source]#

Verifies whether a given transition is enabled in a given Petri net and marking

Parameters#

param t:

transition to check

param pn:

Petri net

param m:

marking to check

param e:

associated event (optional, as keyword argument)

Returns#

return:

true if enabled, false otherwise

execute(t, pn, m, **kwargs)[source]#

Executes a given transition in a given Petri net, the given data marking and the associated event

Parameters#

param t:

transition to execute

param pn:

Petri net

param m:

marking to use

param e:

associated event (optional, as keyword argument)

Returns#

return:

newly reached marking if :param t: is enabled, None otherwise

weak_execute(t, pn, m, **kwargs)[source]#

Executes a given transition in a given Petri net, the given data marking and the associated event, even if not fully enabled

Parameters#

param t:

transition to execute

param pn:

Petri net

param m:

marking to use

param e:

associated event (optional, as keyword argument)

Returns#

return:

newly reached marking

enabled_transitions(pn, m, **kwargs)[source]#

Returns a set of enabled transitions in a Petri net, the given data marking and the associated event

Parameters#

param pn:

Petri net

param m:

marking of the pn

param e:

associated event (optional, as keyword argument)

Returns#

return:

set of enabled transitions

pm4py.objects.petri_net.data_petri_nets.semantics.check_guard_safety(guard)[source]#

Checks the security of a guard before evaluating that

Parameters#

guard

Guard

Returns#

safety

True if the guard is safe to execute, False otherwise

pm4py.objects.petri_net.data_petri_nets.semantics.evaluate_guard(guard, read_variables, data)[source]#

Evaluates a data Petri net guard given the current data

Parameters#

guard

Guard

read_variables

Read variables

Returns#

boolean

Boolean value

pm4py.objects.petri_net.data_petri_nets.semantics.is_enabled(t, pn, m, e)[source]#
pm4py.objects.petri_net.data_petri_nets.semantics.execute(t, pn, m, e)[source]#
pm4py.objects.petri_net.data_petri_nets.semantics.weak_execute(t, m, e)[source]#
pm4py.objects.petri_net.data_petri_nets.semantics.enabled_transitions(pn, m, e)[source]#