The Zeta Calculus

Abstract

We propose a quantum programming language that generalizes the λ-calculus. The language is non-linear; duplicated variables denote, not cloning of quantum data, but sharing a qubit's state; that is, producing an entangled pair of qubits whose amplitudes are identical with respect to a chosen basis. The language has two abstraction operators, ζ and , corresponding to the Z- and X-bases; each abstraction operator is also parameterised by a phase, indicating a rotation that is applied to the input before it is shared. We give semantics for the language in the ZX-calculus and prove its equational theory sound. We show how this language can provide a good representation of higher-order functions in the quantum world.

0

Turn this paper into a lesson

ArcXiv compiles a structured reading guide from this paper's metadata: plain-English importance, contributions, prerequisite concepts, which sections to read first, flashcards, and a quiz. Grounded in the abstract, never invented.

Discussion (0)

Sign in to join the discussion.

Loading comments…