Skip to content

Translate directly from Cirq to C++ circuit.#135

Merged
95-martin-orion merged 3 commits intomasterfrom
pytoc-translate
Jun 22, 2020
Merged

Translate directly from Cirq to C++ circuit.#135
95-martin-orion merged 3 commits intomasterfrom
pytoc-translate

Conversation

@95-martin-orion
Copy link
Collaborator

This should cover all of the gates required by #134. It also explicitly deprecates the file-input format; although we do not currently plan to remove file input, we will no longer maintain it. Python users are encouraged to use Cirq; C++ users will need to interface directly with the qsim libraries.

@sergeisakov: please confirm that this covers all of the gates_cirq gates (known exception: MatrixGate). If there are any other docs that need updating, let me know.

Follow-up work (will open new issues for these):

  • MatrixGates
  • Built-in decomposition of unknown gates

@95-martin-orion
Copy link
Collaborator Author

Of note: I deleted qsim_test.py since that file was specifically for testing the "call qsim from Python without Cirq` use case, which is no longer supported. (Calling qsim directly from C++ is still valid, though)

Copy link
Collaborator

@sergeisakov sergeisakov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good work!

@95-martin-orion
Copy link
Collaborator Author

Regarding missing checks: I think Github's "required checks" and the "only execute on C++ changes" rule for Bazel aren't cooperating. Options include (1) making Bazel checks optional, or (2) running Bazel checks even when no C++ changes are submitted.

I'm not thrilled about it, but since (1) leaves holes in our test coverage I'll send out a PR for (2). (This might be good incentive for me to revisit issue #69...)

Copy link
Collaborator

@sergeisakov sergeisakov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, this covers all of the gates_cirq gates except for MatrixGate.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Surface gates_cirq in qsimcirq interface

2 participants