MCPcopy Create free account
hub / github.com/QuEST-Kit/QuEST / validate_quregCanBeSetToReducedDensMatr

Function validate_quregCanBeSetToReducedDensMatr

quest/src/core/validation.cpp:4315–4329  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

4313}
4314
4315void validate_quregCanBeSetToReducedDensMatr(Qureg out, Qureg in, int numTraceQubits, const char* caller) {
4316
4317 int numRemainingQubits = in.numQubits - numTraceQubits;
4318
4319 tokenSubs vars = {
4320 {"${IN_QUBITS}", in.numQubits},
4321 {"${OUT_QUBITS}", out.numQubits},
4322 {"${TRACE_QUBITS}", numTraceQubits},
4323 {"${RETAIN_QUBITS}", numRemainingQubits}};
4324
4325 assertThat(out.numQubits == numRemainingQubits, report::NUM_TRACE_QUBITS_INCONSISTENT_WITH_REDUCED_QUREG, vars, caller);
4326
4327 assertThat(out.isDistributed == in.isDistributed, report::REDUCED_QUREG_DIFFERING_DISTRIBUTION_TO_IN_QUREG, caller);
4328 assertThat(out.isGpuAccelerated == in.isGpuAccelerated, report::REDUCED_QUREG_DIFFERING_GPU_DEPLOYMENT_TO_IN_QUREG, caller);
4329}
4330
4331
4332

Callers 2

setQuregToPartialTraceFunction · 0.85

Calls 1

assertThatFunction · 0.85

Tested by

no test coverage detected