This project contains the definitions for Quantum4BPMN, which is an extension of BPMN that supports the Quantum Modeling Extension (QuantME).
For this the following new elements were introduced:
-
QuantumComputationTask: New task type to abstractly model quantum computations
-
QuantumCircuitLoadingTask: New task type to load quantum circuits into workflows
-
DataPreparationTask: New task type to prepare the input state for the given input data by adding a set of gates to the beginning of a quantum circuit
-
OracleExpansionTask: New task type to expand an oracle contained in a quantum circuit
-
QuantumCircuitExecutionTask: New task type to execute a quantum circuit on a quantum computer
-
ReadoutErrorMitigationTask: New task type to mitigate the influence of measurement errors for a quantum computation
-
WarmStartingTask: New task type to enable warm-starting a quantum execution by classically pre-computing parameters or solution approximations
-
ResultEvaluationTask: New task type to evaluate the quality of quantum circuit execution results
-
ParameterOptimizationTask: New task type to optimize a set of given parameters, e.g., quantum circuit parameters
-
VariationalQuantumAlgorithmTask: New task type to define a variational quantum algorithm including all of its components on a high level
-
QuantumCircuitObject: DataObject extension to transfer data about a quantum circuit between the different Quantum4BPMN tasks
-
ResultObject: DataObject extension to transfer results of a quantum computation
-
ResultEvaluationObject: DataObject extension to transfer all data related to an execution result evaluation
-
InitialStateObject: DataObject extension to transfer quantum circuit parameters
-
ParameterizationObject: DataObject extension to transfer results of a quantum computation
-
QuantumHardwareSelectionSubprocess: New sub-process type to enable automatic quantum hardware selection for all contained tasks during workflow runtime depending on the properties of the circuit within the ingoing QuantumCircuitObject (e.g., depth, width)
-
CircuitCuttingSubprocess: New sub-process type supporting circuit cutting and result combination of a given circuit for all contained CircuitExecution tasks
The XML Schema definition of the Quantum4BPMN extension can be found here.