We introduce the language QML, a functional language for quantum computations on finite types. Its design is guided by its categorical semantics: QML programs are interpreted by morphisms in the category É of finite quantum computations, which provides a constructive semantics of irreversible quantum computations realisable as quantum gates. QML integrates reversible and irreversible quantum computations in one language, using first order strict linear logic to make weakenings explicit. Strict programs are free from decoherence and hence preserve superpositions and entanglement -which is essential for quantum parallelism.
A functional language QML with design guided by its categorical semantics is defined in REF .
A functional quantum programming language
20th Annual IEEE Symposium on Logic in Computer Science (LICS' 05)
20th Annual IEEE Symposium on Logic in Computer Science (LICS' 05)
Computer Science Physics