Challenges
Datasets
Workspaces
Papers
Discussions
Leaderboard
Log inSign up
Challenges
Datasets
Workspaces
Papers
Discussions
Leaderboard
Blog
Job Board
Q3AS

© 2026 Aqora Quantum S.A.S.

TermsPrivacyLegal Notice

Electronic Notes in Theoretical Computer Science

Simulating and Compiling Code for the Sequential Quantum Random Access Machine

Rajagopal Nagarajan, Nickolas K. Papanikolaou, David Williams

Published Mar 1, 2007• 22 citations
Publisher

Abstract

We present the SQRAM architecture for quantum computing, which is based on Knill's QRAM model. We detail a suitable instruction set, which implements a universal set of quantum gates, and demonstrate the operation of the SQRAM with Deutsch's quantum algorithm. The compilation of high-level quantum programs for the SQRAM machine is considered; we present templates for quantum assembly code and a method for decomposing matrices for complex quantum operations. The SQRAM simulator and compiler are discussed, along with directions for future work.

DOI
10.1016/j.entcs.2006.12.014

Related papers

Construction of a universal quantum computer

Antonio A. Lagana, Max A. Lohe, Lorenz von Smekal

We construct a universal quantum computer following Deutsch's original proposal of a universal quantum Turing machine (UQTM). Like Deutsch's UQTM, our machine can emulate any classical Turing machine and can execute any algorithm that can be implemented in the quantum gate array framework but under the control of a quantum program, and hence is universal. We present the architecture of the machine, which consists of a memory tape and a processor and describe the observables that comprise the registers of the processor and the instruction set, which includes a set of operations that can approximate any unitary operation to any desired accuracy and hence is quantum computationally universal. We present the unitary evolution operators that act on the machine to achieve universal computation and discuss each of them in detail and specify and discuss explicit program halting and concatenation schemes. We define and describe a set of primitive programs in order to demonstrate the universal nature of the machine. These primitive programs facilitate the implementation of more complex algorithms and we demonstrate their use by presenting a program that computes the NAND function, thereby also showing that the machine can compute any classically computable function.

Physical Review A•May 18, 2009•9 citations

Design and implementation of a quantum compiler

Tzvetan S. Metodi, Samuel D. Gasster

We present a compiler for programming quantum architectures based on the Quantum Random Access Machine (QRAM) model. The QRAM model consists of a classical subsystem responsible for generating the quantum operations that are executed on a quantum subsystem. The compiler can also be applied to trade studies for optimizing the reliability and latency of quantum programs and to determine the required error correction resources. We use the Bacon-Shor [9, 1, 3] quantum error correcting code as an example quantum program that can be processed and analyzed by the compiler.

Proceedings of SPIE, the International Society for Optical Engineering/Proceedings of SPIE•Mar 31, 2010•4 citations

Assembly to Quantum Compiler

Andrew Haverly, Shahram Rahimi, Mark A. Novotny

This research presents a novel approach in quantum computing by transforming ARM assembly instructions for use in quantum algorithms. The core achievement is the development of a method to directly map the ARM assembly language, a staple in classical computing, to quantum computing paradigms. The practical application of this methodology is demonstrated through the computation of the Fibonacci sequence. This example serves to validate the approach and underscores its potential in simplifying quantum algorithms. Grover's Algorithm was realized through the use of quantum-specific instructions. These transformations were developed as part of an open-source assembly-to-quantum compiler (github.com/arhaverly/AssemblyToQuantumCompiler). This effort introduces a novel approach to utilizing classical instruction sets in quantum computing and offers insight into potential future developments in the field. The AssemblyToQuantumCompiler streamlines quantum programming and enables computer scientists to transition more easily from classical to quantum computer programming.

quant-pharXiv:2601.07706•Jan 13, 2026•0 citations

Toward an architecture for quantum programming

It is becoming increasingly clear that, if a useful device for quantum computation will ever be built, it will be embodied by a classical computing machine with control over a truly quantum subsystem, this apparatus performing a mixture of classical and quantum computation. This paper investigates a possible approach to the problem of programming such machines: a template high level quantum language is presented which complements a generic general purpose classical language with a set of quantum primitives. The underlying scheme involves a run-time environment which calculates the byte-code for the quantum operations and pipes it to a quantum device controller or to a simulator. This language can compactly express existing quantum algorithms and reduce them to sequences of elementary operations; it also easily lends itself to automatic, hardware independent, circuit simplification. A publicly available preliminary implementation of the proposed ideas has been realized using the C++ language. 1 Quantum programming

•Jan 1, 2008•0 citations

A Practical Quantum Instruction Set Architecture

Robert S. Smith, Michael J. Curtis, William J. Zeng

We introduce an abstract machine architecture for classical/quantum computations---including compilation---along with a quantum instruction language called Quil for explicitly writing these computations. With this formalism, we discuss concrete implementations of the machine and non-trivial algorithms targeting them. The introduction of this machine dovetails with ongoing development of quantum computing technology, and makes possible portable descriptions of recent classical/quantum algorithms.

arXiv:1608.03355•Aug 11, 2016•234 citations

Modeling a quantum processor using the QRAM model

Mostafa Elhoushi, Mohamed Watheq El-Kharashi, Hatem Elrefaei

A quantum processor controlled by classical instructions is modeled. The processor follows the quantum random access machine (QRAM) model: a quantum memory and a quantum ALU (qALU) containing a group of quantum gates, which are controlled by classical signals. The processor's instructions are written using a quantum assembly (QASM) language. As test cases, several well-known quantum circuits are described using the QASM language and executed by our model. This model may later be integrated with classical components to form a hybrid quantum computer.

IEEE Pacific Rim Conference on Communications, Computers and Signal Processing (PACRIM)•Aug 1, 2011•7 citations
We present the SQRAM architecture for quantum computing, which is based on Knill's QRAM model. We detail a suitable instruction set, which implements a universal set of quantum gates, and demonstrate the operation of the SQRAM with Deutsch's quantum algorithm. The compilation of high-level quantum programs for the SQRAM machine is considered; we present templates for quantum assembly code and a method for decomposing matrices for complex quantum operations. The SQRAM simulator and compiler are discussed, along with directions for future work.
We construct a universal quantum computer following Deutsch's original proposal of a universal quantum Turing machine (UQTM). Like Deutsch's UQTM, our machine can emulate any classical Turing machine and can execute any algorithm that can be implemented in the quantum gate array framework but under the control of a quantum program, and hence is universal. We present the architecture of the machine, which consists of a memory tape and a processor and describe the observables that comprise the registers of the processor and the instruction set, which includes a set of operations that can approximate any unitary operation to any desired accuracy and hence is quantum computationally universal. We present the unitary evolution operators that act on the machine to achieve universal computation and discuss each of them in detail and specify and discuss explicit program halting and concatenation schemes. We define and describe a set of primitive programs in order to demonstrate the universal nature of the machine. These primitive programs facilitate the implementation of more complex algorithms and we demonstrate their use by presenting a program that computes the NAND function, thereby also showing that the machine can compute any classically computable function.
We present a compiler for programming quantum architectures based on the Quantum Random Access Machine (QRAM) model. The QRAM model consists of a classical subsystem responsible for generating the quantum operations that are executed on a quantum subsystem. The compiler can also be applied to trade studies for optimizing the reliability and latency of quantum programs and to determine the required error correction resources. We use the Bacon-Shor [9, 1, 3] quantum error correcting code as an example quantum program that can be processed and analyzed by the compiler.
This research presents a novel approach in quantum computing by transforming ARM assembly instructions for use in quantum algorithms. The core achievement is the development of a method to directly map the ARM assembly language, a staple in classical computing, to quantum computing paradigms. The practical application of this methodology is demonstrated through the computation of the Fibonacci sequence. This example serves to validate the approach and underscores its potential in simplifying quantum algorithms. Grover's Algorithm was realized through the use of quantum-specific instructions. These transformations were developed as part of an open-source assembly-to-quantum compiler (github.com/arhaverly/AssemblyToQuantumCompiler). This effort introduces a novel approach to utilizing classical instruction sets in quantum computing and offers insight into potential future developments in the field. The AssemblyToQuantumCompiler streamlines quantum programming and enables computer scientists to transition more easily from classical to quantum computer programming.
It is becoming increasingly clear that, if a useful device for quantum computation will ever be built, it will be embodied by a classical computing machine with control over a truly quantum subsystem, this apparatus performing a mixture of classical and quantum computation. This paper investigates a possible approach to the problem of programming such machines: a template high level quantum language is presented which complements a generic general purpose classical language with a set of quantum primitives. The underlying scheme involves a run-time environment which calculates the byte-code for the quantum operations and pipes it to a quantum device controller or to a simulator. This language can compactly express existing quantum algorithms and reduce them to sequences of elementary operations; it also easily lends itself to automatic, hardware independent, circuit simplification. A publicly available preliminary implementation of the proposed ideas has been realized using the C++ language. 1 Quantum programming
A quantum processor controlled by classical instructions is modeled. The processor follows the quantum random access machine (QRAM) model: a quantum memory and a quantum ALU (qALU) containing a group of quantum gates, which are controlled by classical signals. The processor's instructions are written using a quantum assembly (QASM) language. As test cases, several well-known quantum circuits are described using the QASM language and executed by our model. This model may later be integrated with classical components to form a hybrid quantum computer.