pm4py.algo.discovery.inductive.util package

Submodules

pm4py.algo.discovery.inductive.util.cut_detection 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.algo.discovery.inductive.util.cut_detection.detect_sequential_cut(subtree, dfg, strongly_connected_components)[source]

Detect sequential cut in DFG graph

Parameters
  • dfg – DFG

  • strongly_connected_components – Strongly connected components

pm4py.algo.discovery.inductive.util.detection_utils 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.algo.discovery.inductive.util.detection_utils.get_connected_components(ingoing, outgoing, activities)[source]

Get connected components in the DFG graph

Parameters
  • ingoing – Ingoing attributes

  • outgoing – Outgoing attributes

  • activities – Activities to consider

pm4py.algo.discovery.inductive.util.detection_utils.get_connection_matrix(strongly_connected_components, dfg)[source]

Gets the connection matrix between connected components

Parameters
  • strongly_connected_components – Strongly connected components

  • dfg – DFG

Returns

Matrix reporting the connections

Return type

connection_matrix

pm4py.algo.discovery.inductive.util.detection_utils.perform_list_union(lst)[source]

Performs the union of a list of sets

Parameters

lst – List of sets

Returns

United set

Return type

un_set

pm4py.algo.discovery.inductive.util.parallel_cut_utils 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.algo.discovery.inductive.util.parallel_cut_utils.check_if_comp_is_completely_unconnected(conn1, conn2, ingoing, outgoing)[source]

Checks if two connected components are completely unconnected each other

Parameters
  • conn1 – First connected component

  • conn2 – Second connected component

  • ingoing – Ingoing dictionary

  • outgoing – Outgoing dictionary

Returns

Boolean value that tells if the two connected components are completely unconnected

Return type

boolean

pm4py.algo.discovery.inductive.util.parallel_cut_utils.check_par_cut(conn_components, ingoing, outgoing)[source]

Checks if in a parallel cut all relations are present

Parameters
  • conn_components – Connected components

  • ingoing – Ingoing dictionary

  • outgoing – Outgoing dictionary

pm4py.algo.discovery.inductive.util.parallel_cut_utils.check_sa_ea_for_each_branch(conn_components, start_activities, end_activities)[source]

Checks if each branch of the parallel cut has a start and an end node of the subgraph

Parameters

conn_components – Parallel cut

Returns

True if each branch of the parallel cut has a start and an end node

Return type

boolean

pm4py.algo.discovery.inductive.util.parallel_cut_utils.merge_connected_components(conn_components, ingoing, outgoing)[source]

Merge the unconnected connected components

Parameters
  • conn_components – Connected components

  • ingoing – Ingoing dictionary

  • outgoing – Outgoing dictionary

Returns

Merged connected components

Return type

conn_components

pm4py.algo.discovery.inductive.util.petri_cleaning 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.algo.discovery.inductive.util.petri_cleaning.petri_reduction_treplay(net, parameters=None)[source]

Apply petri_reduction on the Petrinet removing hidden transitions that are unused according to token-based replay

Parameters
  • net – Petri net

  • parameters

    Parameters of the algorithm, including:

    aligned_traces -> Result of alignment according to token-based replay

Returns

Reduced Petri net

Return type

net

pm4py.algo.discovery.inductive.util.petri_el_count 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/>.

class pm4py.algo.discovery.inductive.util.petri_el_count.Counts[source]

Bases: object

Shared variables among executions

inc_no_hidden()[source]

Increase the number of hidden transitions

inc_no_visible()[source]

Increase the number of visible transitions

inc_places()[source]

Increase the number of places

pm4py.algo.discovery.inductive.util.shared_constants 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.algo.discovery.inductive.util.tree_consistency 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.algo.discovery.inductive.util.tree_consistency.fix_one_child_xor_flower(tree)[source]

Fixes a 1 child XOR that is added when single-activities flowers are found

Parameters

tree – Process tree

pm4py.algo.discovery.inductive.util.tree_consistency.fix_parent_pointers(pt)[source]

Ensures consistency to the parent pointers in the process tree

Parameters

pt – Process tree

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/>.