pm4py.algo.analysis.woflan.place_invariants 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.algo.analysis.woflan.place_invariants.place_invariants 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

pm4py.algo.analysis.woflan.place_invariants.place_invariants.compute_place_invariants(net)[source]#

We compute the NUllspace of the incidence matrix and obtain the place-invariants. :param net: Petri Net of which we want to know the place invariants. :return: Set of place invariants of the given Petri Net.

pm4py.algo.analysis.woflan.place_invariants.s_component 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

pm4py.algo.analysis.woflan.place_invariants.s_component.apply(net)[source]#

General method to obtain a list of S-components :param net: Petri Net for which S-components should be computed :return: A list of S-components

pm4py.algo.analysis.woflan.place_invariants.s_component.compute_s_components(net, p_invariants)[source]#

We perform the hint in 5.4.4 of https://pure.tue.nl/ws/portalfiles/portal/1596223/9715985.pdf :param p_invariants: Semi-positive basis we calculate previously :return: A list of S-Components. A s-component consists of a set which includes all related transitions a places

pm4py.algo.analysis.woflan.place_invariants.s_component.compute_uncovered_places_in_component(s_components, net)[source]#

We check for uncovered places :param s_components: List of s_components :param net: Petri Net representation of PM4Py :return: List of uncovered places

pm4py.algo.analysis.woflan.place_invariants.uniform_invariant 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

pm4py.algo.analysis.woflan.place_invariants.uniform_invariant.apply(net)[source]#

pm4py.algo.analysis.woflan.place_invariants.utility 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

pm4py.algo.analysis.woflan.place_invariants.utility.removearray(L, arr)[source]#

Remove an array from a given list and return the list with the removed element. :param L: list object :param arr: array that has to be removed :return: list object without array

pm4py.algo.analysis.woflan.place_invariants.utility.transform_basis(basis, style=None)[source]#

We construct a (I)LP to transform our basis into a set of vectors by using linear combination to fit certain styles/ properties :param basis: list of p-invariants. Commonly computed by the method ‘compute_place_invariants’ in place_invariants.py :param style: String that is used to construct certain constraints At the moment, ‘uniform’ (all weights have value 0 or 1), and ‘weighted’ (all weights are >=0) are supported :return: List of p-invariants that fits the style

pm4py.algo.analysis.woflan.place_invariants.utility.compute_uncovered_places(invariants, net)[source]#

Compute a list of uncovered places for invariants of a given Petri Net. Note that there exists a separate algorithm for s-components :param invariants: list of invariants. Each invariants is a numpy-Array representation :param net: Petri Net object of PM4Py :return: List of uncovered place over all invariants