arXiv:2206.03532 · Electronic Proceedings in Theoretical Computer Science
Q# as a Quantum Algorithmic Language
Kartik Singhal, Kesha Hietala, Sarah Marshall, Robert W. Rand
Abstract
Q# is a standalone domain-specific programming language from Microsoft for writing and running quantum programs.Like most industrial languages, it was designed without a formal specification, which can naturally lead to ambiguity in its interpretation.We aim to provide a formal language definition for Q#, placing the language on a solid mathematical foundation and enabling further evolution of its design and type system.This paper presents λ Q# , an idealized version of Q# that illustrates how we may view Q# as a quantum ALGOL (algorithmic language).We show the safety properties enforced by λ Q# 's type system and present its equational semantics based on a fully complete algebraic theory by Staton.