scaff_module SWAP ( qbit a, qbit b ) { CNOT ( b, a ); CNOT ( a, b ); CNOT ( b, a ); } // Scaffold doesn't allow overloading scaff_module names based on scaff_module parameter signature // SWAPs is vector of gates on vectors of qubits scaff_module SWAPs ( const unsigned int width, qbit a[], qbit b[] ) { for (int i=0; i