Next:
Introducing QCL
Up:
A Procedural Formalism for
Previous:
Quantum Programming
 
Contents
QCL - A Quantum Computation Language
Subsections
Introducing QCL
Features
Example: Discrete Fourier Transform in QCL
The QCL Interpreter
Options
Default Include
Interactive Use
Structure of a QCL Program
Notation
Statements
Definitions
Expressions
Comments
Include Files
Classic Expressions and Variables
Constant Expressions
Integer
Real
Complex
Boolean
Strings
Operators
Arithmetic Operators
Comparison and Logic Operators
Other Operators
Functions
Trigonometric Functions
Exponents and Logarithms
Complex Numbers
Rounding
Maximum and Minimum
GCD and LCM
Random Numbers
Symbols
Identifiers
Constants
Variables
Scopes and Namespaces
Quantum Registers and Expressions
Registers and States
Machine State and Program State
Quantum Registers
Memory Management
Simulation
Quantum Variables
General Registers
Quantum Constants
Empty Registers
Scratch Registers
Register References
Quantum Expressions
Subregisters
Combined Registers
Statements
Elementary Commands
Assignment
Call
Input and Output
Debugging
Quantum Statements
Unitary Operations
Non-unitary Operations
Simulator Commands
Flow Control
Blocks
Conditional Branching
Counting Loops
Conditional Loops
Error Reporting
Subroutines
Introduction
Syntax
Hierarchy of Subroutines
External Routines
Functions
Procedures
General Operators
Operator Arguments
Inverse Operators
Local Registers
Pseudo-classic Operators
Bijective Functions
Conditional Operators
Quantum Functions
Scratch parameters
The Fanout Operator
Scratch Space Management
(c) Bernhard Ömer -
oemer@tph.tuwien.ac.at
-
http://tph.tuwien.ac.at/~oemer/