---
title: library (latest version)
description: API reference for qiskit_bosons.circuit.library in the latest version of qiskit-bosons
source: https://quantum.cloud.ibm.com/docs/en/api/qiskit-bosons/circuit-library
---

# Circuit Library

This module provides a library of [`BosonicGate`](/docs/api/qiskit-bosons/circuit-bosonic-gate#qiskit_bosons.circuit.BosonicGate "qiskit_bosons.circuit.BosonicGate") implementations.

## State preparation

|                                                                                                                                                                                         |                                |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------ |
| [`InitializeModes`](/docs/api/qiskit-bosons/circuit-library-initialize-modes#qiskit_bosons.circuit.library.InitializeModes "qiskit_bosons.circuit.library.InitializeModes")(occupation) | Prepares a bosonic Fock state. |

## Passive linear optics

A number-conserving transformation of the mode operators, generated by $b^\dagger_i b_j$. Beamsplitters and phase shifters are the two-mode and single-mode special cases, and together they generate any $U(M)$.

|                                                                                                                                                                                                      |                                                          |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------- |
| [`ModeRotation`](/docs/api/qiskit-bosons/circuit-library-mode-rotation#qiskit_bosons.circuit.library.ModeRotation "qiskit_bosons.circuit.library.ModeRotation")(rotation\_unitary, \*\[, synthesis]) | Implements a passive linear-optical mode transformation. |

## Time evolution

|                                                                                                                                                                                        |                                                      |
| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------- |
| [`Evolution`](/docs/api/qiskit-bosons/circuit-library-evolution#qiskit_bosons.circuit.library.Evolution "qiskit_bosons.circuit.library.Evolution")(num\_modes, operator\[, time, ...]) | Implements the time evolution of a bosonic operator. |

### Synthesis methods

How an [`Evolution`](/docs/api/qiskit-bosons/circuit-library-evolution#qiskit_bosons.circuit.library.Evolution "qiskit_bosons.circuit.library.Evolution") gate gets decomposed in bosonic space is configurable through its `synthesis` argument. The available methods live in the [`synthesis`](/docs/api/qiskit-bosons/circuit-library-synthesis#module-qiskit_bosons.circuit.library.synthesis "qiskit_bosons.circuit.library.synthesis") module.
