# qml.qaoa.cost.bit_driver¶

bit_driver(wires, b)[source]

Returns the bit-driver cost Hamiltonian.

This Hamiltonian is defined as:

$H \ = \ (-1)^{b + 1} \displaystyle\sum_{i} Z_i$

where $$Z_i$$ is the Pauli-Z operator acting on the $$i$$-th wire and $$b \ \in \ \{0, \ 1\}$$. This Hamiltonian is often used when constructing larger QAOA cost Hamiltonians.

Parameters
• wires (Iterable or Wires) – The wires on which the Hamiltonian acts

• b (int) – Either $$0$$ or $$1$$. Determines whether the Hamiltonian assigns lower energies to bitstrings with a majority of bits being $$0$$ or a majority of bits being $$1$$, respectively.

Returns

Return type

Hamiltonian

Example

>>> wires = range(3)
>>> hamiltonian = qaoa.bit_driver(wires, 1)
>>> print(hamiltonian)
(1.0) [Z0] + (1.0) [Z1] + (1.0) [Z2]