### Abstract

Quantum programming languages permit a hardware independent, high-level description of quantum algo rithms. In particular, the quantum lambda-calculus is a higher-order programming language with quantum primitives, mixing quantum data and classical control. Giving satisfactory denotational semantics to the quantum lambda-calculus is a challenging problem that has attracted significant interest in the past few years. Several models have been proposed but for those that address the whole quantum λ-calculus, they either do not represent the dynamics of computation, or they lack the compositionality one often expects from denotational models. In this paper, we give the first compositional and interactive model of the full quantum lambda-calculus, based on game semantics. To achieve this we introduce a model of quantum games and strategies, combining quantum data with a representation of the dynamics of computation inspired from causal models of concurrent systems. In this model we first give a computationally adequate interpretation of the affine fragment. Then, we extend the model with a notion of symmetry, allowing us to deal with replication. In this refined setting, we interpret and prove adequacy for the full quantum lambda-calculus. We do this both from a sequential and a parallel interpretation, the latter representing faithfully the causal independence between sub-computations.

Original language | English |
---|---|

Article number | 32 |

Number of pages | 29 |

Journal | Proceedings of the ACM on Programming Languages (PACMPL) |

Volume | 3 |

Issue number | POPL |

DOIs | |

Publication status | Published - 2 Jan 2019 |

### Keywords

- concurrent games
- denotational semantics
- game semantics
- quantum lambda-calculus

## Fingerprint Dive into the research topics of 'Game semantics for quantum programming'. Together they form a unique fingerprint.

## Profiles

## Cite this

Clairambault, P., De Visme, M., & Winskel, G. (2019). Game semantics for quantum programming.

*Proceedings of the ACM on Programming Languages (PACMPL)*,*3*(POPL), [32]. https://doi.org/10.1145/3290345