# A Flowchart Language for Quantum Programming

@article{Ying2011AFL, title={A Flowchart Language for Quantum Programming}, author={Mingsheng Ying and Yuan Feng}, journal={IEEE Transactions on Software Engineering}, year={2011}, volume={37}, pages={466-485} }

Several high-level quantum programming languages have been proposed in the previous research. In this paper, we define a low-level flowchart language for quantum programming, which can be used in implementation of high-level quantum languages and in design of quantum compilers. The formal semantics of the flowchart language is given, and the notion of correctness for programs written in this language is introduced. A structured quantum programming theorem is presented, which provides a…

## 24 Citations

Q|SI〉: A Quantum Programming Environment

- Computer Science, PhysicsSymposium on Real-Time and Hybrid Systems
- 2018

A platform embedded in the .Net language that supports quantum programming using a quantum extension of the while-language and a suite of tools for simulating quantum computation, optimizing quantum circuits, and analyzing and verifying quantum programs is described.

Synthesis and Optimization by Quantum Circuit Description Language

- Computer ScienceTrans. Comput. Sci.
- 2014

A new quantum circuit description language named QCDL is introduced which comprises instructions for quantum unitary operations and high-level structures which are synthesized into quantum logic level architecture.

Quantum Temporal Logic

- PhilosophyArXiv
- 2019

A model of quantum concurrent program is introduced, which can be used to model the behaviour of reactive quantum systems and to design quantum compilers, and a quantum Bohm-Jacopini theorem is proved which states that any such program is equivalent to a Q-While program.

Alternation in Quantum Programming: From Superposition of Data to Superposition of Programs

- Computer Science, PhysicsArXiv
- 2014

The expressive power of QGCL is illustrated by several examples where various variants and generalizations of quantum walks are conveniently expressed using quantum alternation and quantum choice.

Quantum programming: From theories to implementations

- Computer Science
- 2012

This paper surveys the new field of programming methodology and techniques for future quantum computers, including design of sequential and concurrent quantum programming languages, their semantics…

$Q|SI\rangle$: A Quantum Programming Environment

- Computer Science
- 2017

A platform embedded in the .Net language that supports quantum programming using a quantum extension of the quantum $\mathbf{while}$-language and a suite of tools for simulating quantum computation, optimizing quantum circuits, and analyzing and verifying quantum programs is described.

Quantum Temporal Logic: from Birkhoff and von Neumann to Pnueli

- Philosophy
- 2019

A model of quantum concurrent program is introduced, which can be used to model the behaviour of reactive quantum systems and to design quantum compilers, and a quantum Bohm-Jacopini theorem is proved which states that any such program is equivalent to a Q-While program.

Compiling quantamorphisms for the IBM Q Experience

- PhysicsIEEE Transactions on Software Engineering
- 2021

This paper aims at building correct-by-construction quantum circuits to be deployed on quantum devices such as those available at the IBM Q Experience, to contribute to extending the laws of classical program algebra to quantum programming.

Birkhoff-von Neumann Quantum Logic as an Assertion Language for Quantum Programs

- Philosophy, Computer ScienceArXiv
- 2022

It is expected that the assertion logic introduced in this paper - ﬁrst-order quantum logic with quantum variables - can be combined with various quantum program logics to serve as a solid logical foundation upon which veriﬁcation tools can be built using proof assistants such as Coq and Isabelle/HOL.

Foundations of Quantum Programming (Extended Abstract)

- Computer Science, PhysicsAPLAS
- 2010

To lay a solid foundation for tomorrow’s quantum software industry, it is critically essential to pursue systematic research into quantum programming methodology and techniques.

## References

SHOWING 1-10 OF 38 REFERENCES

Towards a quantum programming language

- Computer ScienceMathematical Structures in Computer Science
- 2004

This paper describes the syntax and semantics of a simple quantum programming language with high-level features such as loops, recursive procedures, and structured data types, and has an interesting denotational semantics in terms of complete partial orders of superoperators.

Compiling quantum programs

- Computer ScienceActa Informatica
- 2005

This work provides a general framework for the construction of a compiler for qGCL, focusing mainly on the correctness of the design, and does not deal with other topics such as efficiency of compiled code, factorisation of unitary transformations and compilation of quantum data structures.

Quantum Programming

- Computer ScienceMPC
- 2000

The theory of quantum programming provides tools to write both classical and quantum specifications, develop quantum programs that implement these specifications, and reason about their comparative time and space complexity all in the same framework.

A functional quantum programming language

- Computer Science20th Annual IEEE Symposium on Logic in Computer Science (LICS' 05)
- 2005

QML integrates reversible and irreversible quantum computations in one language, using first order strict linear logic to make weakenings explicit, and preserves superpositions and entanglement -which is essential for quantum parallelism.

Quantum Predicative Programming

- Computer ScienceMPC
- 2006

The theory of quantum programming provides tools to write both classical and quantum specifications, develop quantum programs that implement these specifications, and reason about their comparative time and space complexity all in the same framework.

Quantum programming languages: survey and bibliography

- Computer ScienceMathematical Structures in Computer Science
- 2006

The study of quantum Programming languages is justified, the basics of quantum computing are presented, the literature in quantum programming languages is surveyed, and directions for future research are indicated.

Toward an architecture for quantum programming

- Computer ScienceArXiv
- 2001

A template high level quantum language is presented which complements a generic general purpose classical language with a set of quantum primitives, and easily lends itself to automatic, hardware independent, circuit simplification.

Simulating and Compiling Code for the Sequential Quantum Random Access Machine

- Computer ScienceElectron. Notes Theor. Comput. Sci.
- 2007

Dynamic Quantum Logic for Quantum Programs

- Philosophy, Physics
- 2003

A way to apply quantum logic to the study of quantum programs is presented by using an extension of the usual propositional language in order to make transformations performed on the system appear explicitly.

Quantum loop programs

- PhysicsActa Informatica
- 2010

A general scheme of quantum loops is introduced and a denotational semantics and a weakest precondition semantics of a quantum loop are given, and the notions of termination and almost termination are proposed for quantum loops in the case of finite-dimensional state spaces.