pm4py.evaluation.soundness.woflan.graphs package

Subpackages

Submodules

pm4py.evaluation.soundness.woflan.graphs.utility module

This file is part of PM4Py (More Info: https://pm4py.fit.fraunhofer.de).

PM4Py is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

PM4Py 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 General Public License for more details.

You should have received a copy of the GNU General Public License along with PM4Py. If not, see <https://www.gnu.org/licenses/>.

pm4py.evaluation.soundness.woflan.graphs.utility.check_for_dead_tasks(net, graph)[source]

We compute a list of dead tasks. A dead task is a task which does not appear in the Minimal Coverability Graph :param net: Petri Net representation of PM4Py :param graph: Minimal coverability graph. NetworkX MultiDiGraph object. :return: list of dead tasks

pm4py.evaluation.soundness.woflan.graphs.utility.check_for_improper_conditions(mcg)[source]

An improper condition is a state in the minimum-coverability graph with an possible infinite amount of tokens :param mcg: networkx object (minimal coverability graph) :return: True, if there are no improper conditions; false otherwise

pm4py.evaluation.soundness.woflan.graphs.utility.check_for_substates(mcg)[source]

Checks if a substate exists in a given mcg :param mcg: Minimal coverability graph (networkx object) :return: True, if there exist no substate; False otherwise

pm4py.evaluation.soundness.woflan.graphs.utility.compute_firing_requirement(net)[source]
pm4py.evaluation.soundness.woflan.graphs.utility.compute_incidence_matrix(net)[source]

Given a Petri Net, the incidence matrix is computed. An incidence matrix has n rows (places) and m columns (transitions). :param net: Petri Net object :return: Incidence matrix

pm4py.evaluation.soundness.woflan.graphs.utility.convert_marking(net, marking, original_net=None)[source]

Takes an marking as input and converts it into an Numpy Array :param net: PM4Py Petri Net object :param marking: Marking that should be converted :param original_net: PM4Py Petri Net object without short-circuited transition :return: Numpy array representation

pm4py.evaluation.soundness.woflan.graphs.utility.enabled_markings(firing_dict, req_dict, marking)[source]
pm4py.evaluation.soundness.woflan.graphs.utility.split_incidence_matrix(matrix, net)[source]

We split the incidence matrix columnwise to get the firing information for each transition :param matrix: incidence matrix :param net: Petri Net :return: Dictionary, whereby the key is an np array that contains the firing information and the value is the name of the transition

Module contents

This file is part of PM4Py (More Info: https://pm4py.fit.fraunhofer.de).

PM4Py is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

PM4Py 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 General Public License for more details.

You should have received a copy of the GNU General Public License along with PM4Py. If not, see <https://www.gnu.org/licenses/>.