The Multiple-Control Toffoli (mct) gate takes as input: 1. a register containing the control qubits, 2. the target qubits and 3. a register containing ancilla qubits.

I don't know how many ancilla qubits I need to pass in for a number of $n$ controll qubits. I've seen examples and used mct gates with 4 control qubits and 2 ancillas so I know the number of ancillas is not $n-1$ like suggested in this answer

Is there a strict dependency meaning for 10 control qubits you need 5 ancillas or does the implementation adapt to the number or ancillas that are passed in?


I found out the number of ancillas is minimum $n-2$.

I found this line in the Qiskit source code of mct:

if len(ancillary_qubits) < len(control_qubits) - 2:
    raise AquaError('Insufficient number of ancillary qubits.')

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.