qdk_chemistry.algorithms.qubit_mapper.qdk_qubit_mapper module

QDK native qubit mapper using an optimized expression layer.

This module provides the QdkQubitMapper class for transforming electronic structure Hamiltonians to qubit Hamiltonians using various fermion-to-qubit encodings.

class qdk_chemistry.algorithms.qubit_mapper.qdk_qubit_mapper.QdkQubitMapper(encoding='jordan-wigner', threshold=1e-12, integral_threshold=1e-12)[source]

Bases: QubitMapper

QDK native qubit mapper using PauliTermAccumulator.

This mapper transforms a fermionic Hamiltonian to a qubit Hamiltonian using configurable fermion-to-qubit encodings.

Available encodings:
  • "jordan-wigner" (default)

  • "bravyi-kitaev"

The mapper uses canonical blocked spin-orbital ordering internally: qubits 0..N-1 for alpha spin, qubits N..2N-1 for beta spin (where N is the number of spatial orbitals). Use QubitHamiltonian.to_interleaved() for alternative qubit orderings.

Parameters:
encoding

The fermion-to-qubit encoding type. Default: “jordan-wigner”.

Type:

str

threshold

Threshold for pruning small Pauli coefficients. Default: 1e-12.

Type:

float

integral_threshold

Threshold for filtering small integrals. Default: 1e-12.

Type:

float

Examples

>>> from qdk_chemistry.algorithms import QdkQubitMapper
>>> mapper = QdkQubitMapper()
>>> mapper.settings().set("encoding", "jordan-wigner")
>>> mapper.settings().set("threshold", 1e-10)
>>> qubit_hamiltonian = mapper.run(hamiltonian)
__init__(encoding='jordan-wigner', threshold=1e-12, integral_threshold=1e-12)[source]

Initialize the QdkQubitMapper with default settings.

Parameters:
  • encoding (str) – Fermion-to-qubit encoding type. Default: “jordan-wigner”.

  • threshold (float) – Threshold for pruning small Pauli coefficients. Default: 1e-12.

  • integral_threshold (float) – Threshold for filtering small integrals. Default: 1e-12.

Return type:

None

name()[source]

Return the algorithm name.

Return type:

str

class qdk_chemistry.algorithms.qubit_mapper.qdk_qubit_mapper.QdkQubitMapperSettings[source]

Bases: QubitMapperSettings

Settings configuration for a QdkQubitMapper.

Inherits base settings from QubitMapperSettings.

Available encodings:
  • "jordan-wigner" (default)

  • "bravyi-kitaev"

Additional settings:

threshold (double, default=1e-12): Threshold for pruning small Pauli coefficients. integral_threshold (double, default=1e-12): Threshold for filtering small integrals.

__init__()[source]

Initialize QdkQubitMapperSettings.

Return type:

None