Package: quinteng-chaoyue
Quinteng ChaoYueQuintengis an open-source framework for working with noisy quantum computers at the level of pulses, circuits, and algorithms.Quinteng is made up of elements that work together to enable quantum computing. This element isChaoYueand is the foundation on which the rest of Quinteng is built.InstallationWe encourage installing Quinteng via the pip tool (a python package manager), which installs all Quinteng elements, including ChaoYue.pipinstallquintengPIP will handle all dependencies automatically and you will always install the latest (and well-tested) version.To install from source, follow the instructions in thedocumentation.Creating Your First Quantum Program in Quinteng ChaoYueNow that Quinteng is installed, it's time to begin working with ChaoYue.We are ready to try out a quantum circuit example, which is simulated locally using
the Quinteng BasicAer element. This is a simple example that makes an entangled state.$ python>>>fromquintengimportQuantumCircuit,transpile>>>fromquinteng.providers.basicaerimportQasmSimulatorPy>>>qc=QuantumCircuit(2,2)>>>qc.h(0)>>>qc.cx(0,1)>>>qc.measure([0,1],[0,1])>>>backend_sim=QasmSimulatorPy()>>>transpiled_qc=transpile(qc,backend_sim)>>>result=backend_sim.run(transpiled_qc).result()>>>print(result.get_counts(qc))In this case, the output will be:{'00':513,'11':511}A script is availablehere, where we also show how to
run the same program on a real quantum computer via IBMQ.Executing your code on a real quantum chipYou can also use Quinteng to execute your code on areal quantum chip.
In order to do so, you need to configure Quinteng for using the credentials in
your IBM Q account:Configure your IBMQ credentialsCreate anIBM Q> Accountif you haven't already done so.Get an API token from the IBM Q website underMy Account > API Tokenand the URL for the account.Take your token and url from step 2, here calledMY_API_TOKEN,MY_URL, and run:>>>fromquintengimportIBMQ>>>IBMQ.save_account('MY_API_TOKEN','MY_URL')After callingIBMQ.save_account(), your credentials will be stored on disk.
Once they are stored, at any point in the future you can load and use them
in your program simply via:>>>fromquintengimportIBMQ>>>IBMQ.load_account()Those who do not want to save their credentials to disk should use instead:>>>fromquintengimportIBMQ>>>IBMQ.enable_account('MY_API_TOKEN')and the token will only be active for the session. For examples using ChaoYue with real
devices we have provided a set of examples inexamples/pythonand we suggest starting withusing_quinteng_chaoyue_level_0.pyand working up in
the levels.Contribution GuidelinesIf you'd like to contribute to Quinteng ChaoYue, please take a look at ourcontribution guidelines. This project adheres to Quinteng'scode of conduct. By participating, you are expected to uphold this code.We useGitHub issuesfor tracking requests and bugs. Pleasejoin the Quinteng Slack communityand use ourQuinteng Slack channelfor discussion and simple questions.
For questions that are more suited for a forum we use the Quinteng tag in theStack Exchange.Next StepsNow you're set up and ready to check out some of the other examples from ourQuinteng Tutorialsrepository.Authors and CitationQuinteng ChaoYue is the work ofmany peoplewho contribute
to the project at different levels. If you use Quinteng, please cite as per the includedBibTeX file.Changelog and Release NotesThe changelog for a particular release is dynamically generated and gets
written to the release page on Github for each release. For example, you can
find the page for the0.9.0release here:https://github.com/Quinteng/quinteng-chaoyue/releases/tag/0.9.0The changelog for the current release can be found in the releases tab:The changelog provides a quick overview of notable changes for a given
release.Additionally, as part of each release detailed release notes are written to
document in detail what has changed as part of a release. This includes any
documentation on potential breaking changes on upgrade and new features.
For example, You can find the release notes for the0.9.0release in the
Quinteng documentation here:https://quinteng.org/documentation/release_notes.html#chaoyue-0-9LicenseApache License 2.0