ترغب بنشر مسار تعليمي؟ اضغط هنا

Just another quantum assembly language (Jaqal)

99   0   0.0 ( 0 )
 نشر من قبل Andrew J. Landahl
 تاريخ النشر 2020
والبحث باللغة English




اسأل ChatGPT حول البحث

The Quantum Scientific Computing Open User Testbed (QSCOUT) is a trapped-ion quantum computer testbed realized at Sandia National Laboratories on behalf of the Department of Energys Office of Science and its Advanced Scientific Computing (ASCR) program. Here we describe Jaqal, for Just another quantum assembly language, the programming language we invented to specify programs executed on QSCOUT. Jaqal is useful beyond QSCOUT---it can support mutliple hardware targets because it offloads gate names and their pulse-sequence definitions to external files. We describe the capabilities of the Jaqal language, our approach in designing it, and the reasons for its creation. To learn more about QSCOUT, Jaqal, or JaqalPaq, the metaprogramming Python package we developed for Jaqal, please visit https://qscout.sandia.gov, https://gitlab.com/jaqal, or send an e-mail to [email protected].



قيم البحث

اقرأ أيضاً

QSCOUT is the Quantum Scientific Computing Open User Testbed, a trapped-ion quantum computer testbed realized at Sandia National Laboratories on behalf of the Department of Energys Office of Science and its Advanced Scientific Computing (ASCR) progra m. Jaqal, for Just Another Quantum Assembly Language, is the programming language used to specify programs executed on QSCOUT. This document contains a specification of Jaqal along with a summary of QSCOUT 1.0 capabilities, example Jaqal programs, and plans for possible future extensions. To learn more about QSCOUT and the Jaqal language developed for it, please visit qscout.sandia.gov or send an e-mail to [email protected].
This document describes a quantum assembly language (QASM) called OpenQASM that is used to implement experiments with low depth quantum circuits. OpenQASM represents universal physical circuits over the CNOT plus SU(2) basis with straight-line code t hat includes measurement, reset, fast feedback, and gate subroutines. The simple text language can be written by hand or by higher level tools and may be executed on the IBM Q Experience.
Quantum assembly languages are machine-independent languages that traditionally describe quantum computation in the circuit model. Open quantum assembly language (OpenQASM 2) was proposed as an imperative programming language for quantum circuits bas ed on earlier QASM dialects. In principle, any quantum computation could be described using OpenQASM 2, but there is a need to describe a broader set of quantum circuits beyond the language of qubits and gates. By examining interactive use cases, we recognize two different timescales of quantum-classical interactions: real-time classical computations that must be performed within the coherence times of the qubits, and near-time computations with less stringent timing. Since the near-time domain is adequately described by existing programming frameworks, we choose in OpenQASM 3 to focus on the real-time domain, which must be more tightly coupled to the execution of quantum operations. Motivated by the need for real-time classical computation, we add support for arbitrary control flow as well as calling external classical functions. In addition, we recognize the need to describe circuits at multiple levels of specificity, and therefore we extend the language to include timing, pulse control, and gate modifiers. These new language features create a multi-level intermediate representation for circuit development and optimization, as well as control sequence implementation for calibration, characterization, and error mitigation.
We present a representation for linguistic structure that we call a Fock-space representation, which allows us to embed problems in language processing into small quantum devices. We further develop a formalism for understanding both classical as wel l as quantum linguistic problems and phrase them both as a Harmony optimization problem that can be solved on a quantum computer which we show is related to classifying vectors using quantum Boltzmann machines. We further provide a new training method for learning quantum Harmony operators that describe a language. This also provides a new algorithm for training quantum Boltzmann machines that requires no approximations and works in the presence of hidden units. We additionally show that quantum language processing is BQP-complete, meaning that it is polynomially equivalent to the circuit model of quantum computing which implies that quantum language models are richer than classical models unless BPP=BQP. It also implies that, under certain circumstances, quantum Boltzmann machines are more expressive than classical Boltzmann machines. Finally, we examine the performance of our approach numerically for the case of classical harmonic grammars and find that the method is capable of rapidly parsing even non-trivial grammars. This suggests that the work may have value as a quantum inspired algorithm beyond its initial motivation as a new quantum algorithm.
Python is a popular programming language known for its flexibility, usability, readability, and focus on developer productivity. The quantum software community has adopted Python on a number of large-scale efforts due to these characteristics, as wel l as the remote nature of near-term quantum processors. The use of Python has enabled quick prototyping for quantum code that directly benefits pertinent research and development efforts in quantum scientific computing. However, this rapid prototyping ability comes at the cost of future performant integration for tightly-coupled CPU-QPU architectures with fast-feedback. Here we present a language extension to Python that enables heterogeneous quantum-classical computing via a robust C++ infrastructure for quantum just-in-time (QJIT) compilation. Our work builds off the QCOR C++ language extension and compiler infrastructure to enable a single-source, quantum hardware-agnostic approach to quantum-classical computing that retains the performance required for tightly coupled CPU-QPU compute models. We detail this Pythonic extension, its programming model and underlying software architecture, and provide a robust set of examples to demonstrate the utility of our approach.
التعليقات
جاري جلب التعليقات جاري جلب التعليقات
سجل دخول لتتمكن من متابعة معايير البحث التي قمت باختيارها
mircosoft-partner

هل ترغب بارسال اشعارات عن اخر التحديثات في شمرا-اكاديميا