Open Roger-luo opened 5 years ago
About Yao IR, we should probably first define basic blocks to remove "redundant" information in representation, then any circuit can be flatten to these basic blocks. e.g. we can first flatten
a block to basic blocks like
RepeatedBlock
-> KronBlock
KronBlock
-> PutBlock
Basic block types should include
This will make it much easier for compiling, any comments?
yes, that's what I think as well. And I think in most cases we only need PutBlock
since Kron
can be composition of PutBlock
, since QASM is mainly just putting gates at given position, this would be straight forward.
Done except for barrier
, reset
and measure
. Waiting for Liu to provide correspoinding Yao APIs.