I've been starting to create a quantum application using the Qristal SDK. I've gotten it running in a Docker image and successfully printed results from using a qpp back end with a kind of hello world count exercise (trying to see that it does in fact run the algo and return results expected in a quantum query).
What I am having trouble with is how to get this to run at scale. Do I need to continually run the application (as a quantum circuit) over time, or can I scale the qubits being emulated to account for a greater or more accurate outcome?
Here's is the circuit that I've tried.
my_sim.instring = '''
__qpu__ void QUANTUMPROGRAM(qreg q)
{
OPENQASM 2.0;
include "qelib1.inc";
creg c[2];
h q[0];
cx q[0], q[1];
measure q[1] -> c[1];
measure q[0] -> c[0];
}
'''
That's a good start. The important concept here is that the circuit, even being emulated, is subject to the same challenges of coherence and noise as a physically generated qubit.
Ignoring the Qristal Emulator here, which offers a more accurate model for noise, the core SDK can be approached as a superposition state as you have displayed, but with the advantage of running multiple shots in that instance.
This would use the shot number argument in your config as follows:
The number of shots you define will run on the circuit you create, and against the number of qubits you have defined as being emulated. The updated onboarding guide gives a full example of the kind of first program you are running.