8. Control Flow¶
All classical control flow expressions are inherited from the host language
(C++). Programmers can define quantum kernels using standard loop
constructs and conditional statements. Conditional statements on quantum
memory and measured cudaq::qubit
results are also permitted. Programmers
can define a conditional block given a single unmeasured qubit and compiler
implementations should convert this into a coherent conditional statement
(e.g. if (q) { x(r); }
should convert to cnot(q,r)
internally).
Conditional statements on measured qubits results are also permitted to
enable dynamic circuits and fast-feedback
(auto c = mz(q); if (c) { conditional code...}
).