INNER CODE UNIT · C++

probThreshold

aromanro/QCSim · QCSim/CliffordTests.cpp:271

    const double probThreshold = 1E-10;
    size_t nrQubits = qubitRegister.getNrQubits();

    for (size_t q = 0; q < nrQubits; ++q)
    {
        const double prob1 = cliffordSim.GetQubitProbability(q);
        const double prob2 = qubitRegister.GetQubitProbability(q);

        if (std::abs(prob1 - prob2) > probThreshold)
        {
            std::cout << "\nFailed qubits probabilities" << std::endl;
            std::cout << "Probability statevector: " << prob2 << ", Probability stabilizer: " << prob1 << std::endl;
            return false;
        }
    }

    return true;
}

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…