Apply the "tree" Bravyi-Kitaev transform.

Implementation from arxiv:1701.07072

Note that this implementation is different from the one described in arXiv:quant-ph/0003137. In particular, it gives different results when the total number of modes is not a power of 2. The one described in arXiv:quant-ph/0003137 is the same as the one described in arXiv:1208.5986, and it is implemented in OpenFermion under the name bravyi_kitaev.

operator (openfermion.ops.FermionOperator): A FermionOperator to transform. n_qubits (int|None): Can force the number of qubits in the resulting operator above the number that appear in the input operator.

transformed_operator An instance of the QubitOperator class.

ValueError Invalid number of qubits specified.