Change the circuit synthesis API to use an asynchronous model.
Synthesizing the circuit now comprises two API calls: submitting a circuit
synthesis job, and checking its status. After the synthesis, the
result of the status check includes the synthesis results. All calls are
made automatically when calling the ModelDesigner's synthesize function.
Add index and slice to function input and output qubits as part of the data
flow definition, allowing a more flexible model design process. See
Register Indexing and Slicing.
Allow implementations with logarithmic depth
and linear CX-count as well as a versatile number of auxiliary qubits in the Multi-Control-X function. See
Multi-Control-X.