Expressions that are grouped together are used synonymously in the Strawberry Fields documentation.


Executes quantum programs. Can be either a classical simulator or a quantum hardware device, local or remote. Different backends can have different capabilities in terms of efficiency and which class of circuits they can execute. See: strawberryfields.backends.BaseBackend

quantum circuit

A sequence of quantum operations acting on a quantum register. Typically contains measurements that produce a stochastic classical output. Represents a quantum computation. See: strawberryfields.Program

circuit class
circuit family

A well-defined subset of quantum circuits. Members of a given circuit class can potentially be evaluated on more than one backend, and each backend has an associated circuit class it can execute. See: strawberryfields.circuitspecs.CircuitSpecs


The process of converting a source quantum program into an equivalent program that belongs in the target circuit class. The compilation can fail if the program cannot be made equivalent to the target circuit class.

equivalent circuit
equivalent program

Two quantum circuits are equivalent iff they produce the same output probability distributions. Two equivalent circuits are not necessarily in the same circuit class.


A class for executing quantum programs on a specific backend. See: strawberryfields.engine.LocalEngine, strawberryfields.RemoteEngine


All components of Strawberry Fields that are user-facing. Includes the user interface (engine, program, operation); excludes the backends. See: strawberryfields.Engine, strawberryfields.Program, Operation

quantum gate

A quantum operation that changes the state of the register. Analogous to a logic gate in a Boolean circuit.


A quantum operation that returns classical information.

quantum operation

Something that acts on specific subsystems of the register, changing its state and possibly returning classical information, e.g., a state preparation, gate, measurement, etc. See: Operation

quantum register

A quantum system (or a simulation of one) storing the state of the quantum computation. Typically consists of several subsystems (which in CV quantum computing are called modes).

state preparation

An operation where a quantum system or subsystem is prepared in a known fixed state. Typically accomplished by applying a specific sequence of gates to a known reference state.