pm4py.objects.process_tree package#
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/>.
Subpackages#
- pm4py.objects.process_tree.exporter package
- pm4py.objects.process_tree.importer package
- pm4py.objects.process_tree.utils package
- Submodules
- pm4py.objects.process_tree.utils.bottomup module
- pm4py.objects.process_tree.utils.generic module
fold()
reduce_tau_leafs()
is_tau_leaf()
is_leaf()
project_execution_sequence_to_leafs()
project_execution_sequence_to_labels()
parse()
parse_recursive()
tree_sort()
structurally_language_equal()
get_process_tree_height()
process_tree_to_binary_process_tree()
common_ancestor()
get_ancestors_until()
get_leaves()
get_leaves_as_tuples()
is_operator()
is_any_operator_of()
is_in_state()
is_root()
- pm4py.objects.process_tree.utils.regex module
Submodules#
pm4py.objects.process_tree.obj 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.objects.process_tree.obj.Operator(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]#
Bases:
Enum
- SEQUENCE = '->'#
- XOR = 'X'#
- PARALLEL = '+'#
- LOOP = '*'#
- OR = 'O'#
- INTERLEAVING = '<>'#
- PARTIALORDER = 'PO'#
- class pm4py.objects.process_tree.obj.ProcessTree(operator=None, parent=None, children=None, label=None)[source]#
Bases:
object
- class OperatorState(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]#
Bases:
Enum
- ENABLED = 'enabled'#
- OPEN = 'open'#
- CLOSED = 'closed'#
- FUTURE = 'future'#
- to_string(level=0, indent=False, max_indent=9223372036854775807)[source]#
Represents a process tree model as a string.
Parameters#
- indent
Enable the indentation of the resulting string
- max_indent
Maximum level of indentation
- property parent#
- property children#
- property operator#
- property label#
pm4py.objects.process_tree.semantics 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.objects.process_tree.semantics.GenerationTree(tree)[source]#
Bases:
ProcessTree
- pm4py.objects.process_tree.semantics.generate_log(pt0, no_traces=100)[source]#
Generate a log out of a process tree
Parameters#
- pt
Process tree
- no_traces
Number of traces contained in the process tree
Returns#
- log
Trace log object
- pm4py.objects.process_tree.semantics.execute(pt)[source]#
Execute the process tree, returning an execution sequence
Parameters#
- pt
Process tree
Returns#
- exec_sequence
Execution sequence on the process tree
- pm4py.objects.process_tree.semantics.populate_closed(nodes, closed)[source]#
Populate all closed nodes of a process tree
Parameters#
- nodes
Considered nodes of the process tree
- closed
Closed nodes
- pm4py.objects.process_tree.semantics.execute_enabled(enabled, open, closed, execution_sequence=None)[source]#
Execute an enabled node of the process tree
Parameters#
- enabled
Enabled nodes
- open
Open nodes
- closed
Closed nodes
- execution_sequence
Execution sequence
Returns#
- execution_sequence
Execution sequence
- pm4py.objects.process_tree.semantics.close(vertex, enabled, open, closed, execution_sequence)[source]#
Close a given vertex of the process tree
Parameters#
- vertex
Vertex to be closed
- enabled
Set of enabled nodes
- open
Set of open nodes
- closed
Set of closed nodes
- execution_sequence
Execution sequence on the process tree
- pm4py.objects.process_tree.semantics.process_closed(closed_node, enabled, open, closed, execution_sequence)[source]#
Process a closed node, deciding further operations
Parameters#
- closed_node
Node that shall be closed
- enabled
Set of enabled nodes
- open
Set of open nodes
- closed
Set of closed nodes
- execution_sequence
Execution sequence on the process tree
- pm4py.objects.process_tree.semantics.should_close(vertex, closed, child)[source]#
Decides if a parent vertex shall be closed based on the processed child
Parameters#
- vertex
Vertex of the process tree
- closed
Set of closed nodes
- child
Processed child
Returns#
- boolean
Boolean value (the vertex shall be closed)
pm4py.objects.process_tree.state 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/>.