Closed GiggleLiu closed 4 years ago
Measurement operator is separated from normal circuits in semantic (thus it can be other things than a Circuit
object, e.g an AbstractBlock), since measurement operator is not the same as a quantum circuit in practice, where the gate location semantic (aka <location> => <circuit>
) enforce it has to be a Circuit
so things like location mapping etc. would happen
ok. Not fully convinced, but sounds like not a big issue. Close?
note repeat(3, H)
is currently not a legal quantum circuit statement in YaoIR, If we want @measure (i, j, k) => repeat(3, H)
this means the compiler will infer whatever inside @measure
statement to be a pure circuit to make sure it is unitary, and we will lose all the support for Hamiltonians from YaoBlocks, to summarize:
@measure
statement requires an operator, which should be strictly a unitary, which will be guaranteed and supported by runtime check and YaoBlocksI'm closing this since it's a feature.
Maybe
is better?