A quantum boolean oracle is an operator that should work as follows: $ \sum_x U_f |x, 0> = \sum_x |x, f(x)>$.
Now, suppose that I have two input qubits and two output qubits and I want to implement the following $f(x)$:
- f(00) = 00
- f(01) = 10
- f(10) = 11
- f(11) = 01
The above function is just an example (I'm looking for a more general answer).
How can I implement something like that in Qiskit?
I saw TruthTable
Method, but it seems to work correctly only in the case of one output qubit.