qit.utils.fermion_ladder¶
- qit.utils.fermion_ladder(*args)¶
Fermionic ladder operators.
- Parameters
n (int) – number of fermionic modes
- Returns
fermionic annihilation operators \((f_1, f_2, \ldots, f_n)\)
- Return type
array[object]
Returns the fermionic annihilation operators for a system of n fermionic modes in the second quantization.
The annihilation operators are built using the Jordan-Wigner transformation for a chain of n qubits, where the state of each qubit denotes the occupation number of the corresponding mode. First define annihilation and number operators for a lone fermion mode:
\[\begin{split}\sigma^- &:= (\sigma_x + i \sigma_y)/2,\\ n &:= \sigma^+ \sigma^- = (\I-\sigma_z)/2,\\ &\sigma^-\ket{0} = 0, \quad \sigma^-\ket{1} = \ket{0}, \quad n\ket{k} = k\ket{k}.\end{split}\]Then define a phase operator to keep track of sign changes when permuting the order of the operators: \(\phi_k := \sum_{j=1}^{k-1} n_j\). Now, the fermionic annihilation operators for the n-mode system are given by
\[f_k := (-1)^{\phi_k} \sigma^-_k = \left(\bigotimes_{j=1}^{k-1} {\sigma_z}_j \right) \sigma^-_k.\]These operators fulfill the required anticommutation relations:
\[\begin{split}\{f_j, f_k\} &= 0,\\ \{f_j, f_k^\dagger\} &= \I \delta_{jk},\\ f_k^\dagger f_k &= n_k.\end{split}\]