unitaryfund / pennylane-qrack

The PennyLane-Qrack plugin integrates the Qrack quantum computing framework with PennyLane's quantum machine learning capabilities.
https://pennylane-qrack.readthedocs.io/
Apache License 2.0
3 stars 0 forks source link

Docs (adapted from Qulacs) #14

Closed WrathfulSpatula closed 2 weeks ago

WrathfulSpatula commented 3 weeks ago

@nathanshammah This is already fully adapted and working from the Qulacs repository. Really, users don't specifically need anymore information than this. (Does this look alright?)

nathanshammah commented 3 weeks ago

LGTM. Note that this and #13 are basically duplicate, modulo the correct explanations in simulator.rst and toml file in this one, and the readme edits I made to include the invisible markers to have the installation and support menu display, see here. Either way is fine for me.

Note that automodapi in code.rstcaptures the init comment from pennylane_qrack, but not the qrack device module nor the docstrings or the QrackDevice class docstrings (maybe the docstrings are not formatted correctly, but not sure whether the qrack_device.py should show up in the API doc; changing toc tree to 2 or 3 did not help for me locally).

nathanshammah commented 2 weeks ago

@WrathfulSpatula any idea why tests are failing? Should they pass?

WrathfulSpatula commented 2 weeks ago

@WrathfulSpatula any idea why tests are failing? Should they pass?

@nathanshammah They're not expected to pass until Catalyst v0.7 is released. I attempted to replace the test runner dependency with building from source, but Catalyst takes entirely too long to compile: the tests don't even complete, in that case. The tests work locally with v0.7, and they will pass once it's officially released to PyPi.

WrathfulSpatula commented 2 weeks ago

Note that the functions docstrings are not listed in the API doc, but the plugin is private. In any case, in another issue, we could at least format the QrackDevice class docstring, so that it shows up on the api page.

@nathanshammah, actually, we can't. While we can change the single top-level comment, in order to display docs for QrackSimulator, the class would need to be exported as a public API component. However, it shouldn't be exported publicly, because users never directly instantiate our classes or call any of our methods; this is already correct. We can alter that single string in the docs, or we could drop the API reference section, but users simply don't need to know anything about the API of QrackSimulator, by design of PennyLane.