Liking cljdoc? Tell your friends :D

org.soulspace.qclojure.domain.channel

Quantum channel domain layer providing pure quantum mechanical channel operations.

This namespace contains the core quantum channel functionality separated from implementation details. It focuses on the mathematical representation and application of quantum channels through Kraus operators.

Quantum channels represent the most general form of quantum operations, describing how quantum states evolve under the influence of noise, decoherence, and other physical processes. Every quantum channel can be represented using the Kraus representation: Ε(ρ) = Σᵢ KᵢρKᵢ†

Key concepts implemented:

  • Kraus operator generation for standard noise models
  • Quantum channel application to quantum states
  • Decoherence parameter calculations
  • Matrix operations for quantum channel mathematics
Quantum channel domain layer providing pure quantum mechanical channel operations.

This namespace contains the core quantum channel functionality separated from
implementation details. It focuses on the mathematical representation and 
application of quantum channels through Kraus operators.

Quantum channels represent the most general form of quantum operations,
describing how quantum states evolve under the influence of noise, decoherence,
and other physical processes. Every quantum channel can be represented using
the Kraus representation: Ε(ρ) = Σᵢ KᵢρKᵢ†

Key concepts implemented:
- Kraus operator generation for standard noise models
- Quantum channel application to quantum states
- Decoherence parameter calculations
- Matrix operations for quantum channel mathematics
raw docstring

org.soulspace.qclojure.domain.circuit-transformation

Circuit transformation utilities for quantum backends.

This namespace provides functionality for adapting quantum circuits to specific hardware backends by transforming operations not supported by the backend into equivalent sequences of supported operations.

Circuit transformation utilities for quantum backends.

This namespace provides functionality for adapting quantum circuits
to specific hardware backends by transforming operations not supported
by the backend into equivalent sequences of supported operations.
raw docstring

org.soulspace.qclojure.domain.gate-optimization

Gate optimization functions for quantum circuits

This namespace provides functions to optimize quantum circuits by removing redundant gates and simplifying gate sequences. The primary optimization implemented is cancellation of consecutive self-inverse gates.

Self-inverse gates include:

  • Single-qubit gates: X, Y, Z, H (Pauli gates and Hadamard)
  • Two-qubit gates: CNOT (controlled-X gate), CX, CY, CZ, SWAP
  • Three-qubit gates: Toffoli (CCX), Fredkin (CSWAP)

When two identical self-inverse gates are applied consecutively to the same qubit(s), they cancel out and can be removed from the circuit without changing the quantum computation.

Gate optimization functions for quantum circuits

This namespace provides functions to optimize quantum circuits by removing
redundant gates and simplifying gate sequences. The primary optimization
implemented is cancellation of consecutive self-inverse gates.

Self-inverse gates include:
- Single-qubit gates: X, Y, Z, H (Pauli gates and Hadamard)
- Two-qubit gates: CNOT (controlled-X gate), CX, CY, CZ, SWAP
- Three-qubit gates: Toffoli (CCX), Fredkin (CSWAP)
 
When two identical self-inverse gates are applied consecutively to the same
qubit(s), they cancel out and can be removed from the circuit without
changing the quantum computation.
raw docstring

org.soulspace.qclojure.domain.observables

Domain for quantum observables - Hermitian operators representing measurable quantities.

Observables in quantum mechanics are represented by Hermitian matrices. This namespace provides functions for creating and manipulating observables, calculating expectation values, and working with composite observables.

Design Philosophy:

  • Observables are simple data (matrices) - no complex wrapping
  • Pure functions for all operations
  • Compose complex observables from simple primitives
  • Separate representation, computation, and measurement concerns
Domain for quantum observables - Hermitian operators representing measurable quantities.

Observables in quantum mechanics are represented by Hermitian matrices.
This namespace provides functions for creating and manipulating observables,
calculating expectation values, and working with composite observables.

Design Philosophy:
- Observables are simple data (matrices) - no complex wrapping
- Pure functions for all operations
- Compose complex observables from simple primitives
- Separate representation, computation, and measurement concerns
raw docstring

org.soulspace.qclojure.domain.operation-registry

Operation registry and catalog for quantum backends.

This namespace provides a comprehensive catalog of operations, quantum gates and measurements, that can be supported by different quantum backends. Backends can reference this registry to declare their supported operation sets.

Operation registry and catalog for quantum backends.

This namespace provides a comprehensive catalog of operations,
quantum gates and measurements, that can be supported by
different quantum backends. Backends can reference this registry
to declare their supported operation sets.
raw docstring

cljdoc is a website building & hosting documentation for Clojure/Script libraries

× close