DeepAI AI Chat
Log In Sign Up

Semantics for Variational Quantum Programming

by   Xiaodong Jia, et al.

We consider a programming language that can manipulate both classical and quantum information. Our language is type-safe and designed for variational quantum programming, which is a hybrid classical-quantum computational paradigm. The classical subsystem of the language is the Probabilistic FixPoint Calculus (PFPC), which is a lambda calculus with mixed-variance recursive types, term recursion and probabilistic choice. The quantum subsystem is a first-order linear type system that can manipulate quantum information. The two subsystems are related by mixed classical/quantum terms that specify how classical probabilistic effects are induced by quantum measurements, and conversely, how classical (probabilistic) programs can influence the quantum dynamics. We also describe a sound and computationally adequate denotational semantics for the language. Classical probabilistic effects are interpreted using a recently-described commutative probabilistic monad on DCPO. Quantum effects and resources are interpreted in a category of von Neumann algebras that we show is enriched over (continuous) domains. This strong sense of enrichment allows us to develop novel semantic methods that we use to interpret the relationship between the quantum and classical probabilistic effects. By doing so we provide the first denotational analysis that relates models of classical probabilistic programming to models of quantum programming.


Commutative Monads for Probabilistic Programming Languages

A long-standing open problem in the semantics of programming languages s...

Quantum Expectation Transformers for Cost Analysis

We introduce a new kind of expectation transformer for a mixed classical...

Qimaera: Type-safe (Variational) Quantum Programming in Idris

Variational Quantum Algorithms are hybrid classical-quantum algorithms w...

Modelling contextuality by probabilistic programs with hypergraph semantics

Models of a phenomenon are often developed by examining it under differe...

The Zeta Calculus

We propose a quantum programming language that generalizes the λ-calculu...

Qunity: A Unified Language for Quantum and Classical Computing (Extended Version)

We introduce Qunity, a new quantum programming language designed to trea...

Semantics for first-order affine inductive data types via slice categories

Affine type systems are substructural type systems where copying of info...