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

International Journal of Quantum Information

SEMANTICS OF QUANTUM PROGRAMMING LANGUAGE LANQ

Hynek Mlnařík

Published Jul 1, 2008• 10 citations
Publisher

Abstract

We show a memory model of an imperative concurrent quantum programming language LanQ. The memory model is used to specify the shape of semantical structure upon which the language operational semantics is defined. We also outline the language abilities in the area of formal verification on an example implementation of teleportation protocol.

DOI
10.1142/s0219749908004031

Related papers

Operational Semantics and Type Soundness of Quantum Programming Language LanQ

Hynek Mlnařík

We present an imperative quantum programming language LanQ which was designed to support combination of quantum and classical programming and basic process operations - process creation and interprocess communication. The language can thus be used for implementing both classical and quantum algorithms and protocols. Its syntax is similar to that of C language what makes it easy to learn for existing programmers. In this paper, we present operational semantics of the language and a proof of type soundness of the noncommunicating part of the language. We provide an example run of a quantum random number generator.

arXiv:0708.0890•Aug 7, 2007•10 citations

Quantum Programming Language LanQ

Hynek Mlnařík

We define a typed imperative quantum programming language LanQ that allows programmers to implement any algorithm that is based on either one, or a combination of classical or quantum computation. The language syntax is similar to that of C language and forces programmers to structure their programs into smaller pieces of code (methods, blocks) what makes the program better readable and maintainable compared to programs in unstructured languages. It allows programmers to assign a quantum system to several variables in such a way that all quantum principles, namely no-cloning and no-deleting, are obeyed. The language also offers process algebraic features such as creation a new process (this is done by forking a new process from a running one) and interprocess communication. It therefore supports implementation of multiparty protocols. The resources sent over a channel are handled so that they are always owned by at most one process at one time. In the thesis, we formally describe the language syntax, its type system, memory model used and operational semantics. We also prove type soundness property for the noncommunicating part of the language and for the full language provided the programs are guaranteed to use only a well-formed communication.. We show an example run of a random number generator implemented in the language and provide a reference manual to the implementation of LanQ simulator which is publicly available at http://lanq.sf.net/.

•Jan 1, 2007•9 citations

LanQ - an Imperative Quantum Programming Language

Hynek Mlnařík

LanQ is an imperative high-level quantum programming language that allows combining of quantum and classical computations in the way of classical control, quantum data. Moreover, it offers tools for communication and parallel running of programs. In the paper, we introduce the language.

•Jan 1, 2006•1 citation

Quantum programming: From theories to implementations

Mingsheng Ying

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 and implementations. Several verification methods for quantum programs and communication protocols are also reviewed. The potential applications of programming techniques and related formal methods in quantum engineering are pointed out.

Chinese Science Bulletin•Jan 1, 2012•0 citations

Formalizing the Semantics of a Classical-Quantum Imperative Language in Coq

Wenjun Shi, Qinxiang Cao, Yuxin Deng

In order to verify the functional correctness of quantum circuits or algorithms, a prominent approach is to specify them as quantum programs and semi-automatically deduce them in a theorem prover. It is indispensable to first formalize the semantics of the basic quantum language. We formalize in Coq an imperative language which allows for classical and quantum information interactions. We define small-step operational semantics and state-based denotational semantics. Then we prove a consistency theorem between these two semantics. A distribution-based denotational semantics is also defined and related to the state-based one. Finally, we describe a few typical quantum algorithms and utilize the distribution-based denotational semantics to verify their correctness.

Journal of Circuits Systems and Computers•Sep 29, 2023•2 citations

Exploring a Quantum Programming Language with Concurrency

Jain, Manisha, Fernandes, Vitor, Madeira, Alexandre +1 more

In quantum programming, as in the classical case, concurrent control is a form of program coordination that proves well suited to express complex composition patterns. This paper introduces a quantum programming language with explicit parallel and synchronization primitives and its semantics. The language is explored through a Maude implementation, and illustrated with two non trivial examples.

OASIcs : OpenAccess Series in Informatics•Jan 1, 2025•0 citations
We show a memory model of an imperative concurrent quantum programming language LanQ. The memory model is used to specify the shape of semantical structure upon which the language operational semantics is defined. We also outline the language abilities in the area of formal verification on an example implementation of teleportation protocol.
We present an imperative quantum programming language LanQ which was designed to support combination of quantum and classical programming and basic process operations - process creation and interprocess communication. The language can thus be used for implementing both classical and quantum algorithms and protocols. Its syntax is similar to that of C language what makes it easy to learn for existing programmers. In this paper, we present operational semantics of the language and a proof of type soundness of the noncommunicating part of the language. We provide an example run of a quantum random number generator.
We define a typed imperative quantum programming language LanQ that allows programmers to implement any algorithm that is based on either one, or a combination of classical or quantum computation. The language syntax is similar to that of C language and forces programmers to structure their programs into smaller pieces of code (methods, blocks) what makes the program better readable and maintainable compared to programs in unstructured languages. It allows programmers to assign a quantum system to several variables in such a way that all quantum principles, namely no-cloning and no-deleting, are obeyed. The language also offers process algebraic features such as creation a new process (this is done by forking a new process from a running one) and interprocess communication. It therefore supports implementation of multiparty protocols. The resources sent over a channel are handled so that they are always owned by at most one process at one time. In the thesis, we formally describe the language syntax, its type system, memory model used and operational semantics. We also prove type soundness property for the noncommunicating part of the language and for the full language provided the programs are guaranteed to use only a well-formed communication.. We show an example run of a random number generator implemented in the language and provide a reference manual to the implementation of LanQ simulator which is publicly available at http://lanq.sf.net/.
In order to verify the functional correctness of quantum circuits or algorithms, a prominent approach is to specify them as quantum programs and semi-automatically deduce them in a theorem prover. It is indispensable to first formalize the semantics of the basic quantum language. We formalize in Coq an imperative language which allows for classical and quantum information interactions. We define small-step operational semantics and state-based denotational semantics. Then we prove a consistency theorem between these two semantics. A distribution-based denotational semantics is also defined and related to the state-based one. Finally, we describe a few typical quantum algorithms and utilize the distribution-based denotational semantics to verify their correctness.