https://github.com/epiqc/ScaffCC
Tip revision: 4d7bfa034cfaea4e8346396c6198cdd3e271d272 authored by Andrew Litteken on 23 April 2020, 16:55:47 UTC
Version 5 Upgrade! (#40)
Version 5 Upgrade! (#40)
Tip revision: 4d7bfa0
SWAP.scaffold
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<width; i++) {
CNOT(b[i], a[i]);
CNOT(a[i], b[i]);
CNOT(b[i], a[i]);
}
}