qMuVi - A python package that converts quantum circuits into audiovisual experiences, bridging the gap between complex quantum computations and human perception. Render music videos that reveal the evolution of quantum states during algorithm processing, making quantum computing more intuitive and accessible.
qMuVi uses simulators to sample density matrices from the quantum circuits at each barrier gate. However, adding the ability to sample from physical devices will be more exciting and it will enhance the educational aspects of the tool.
This could be implemented by performing full quantum state tomography to get the density matrices at each of the samples. This can be computationally intensive limiting state sizes to about 5-6 qubits.
Another, lighter, implementation could be to just use the measured probabilities to generate the midi file. The video generation logic for only displaying measured probabilites has already been added. So implementing should just involve adding logic to the simulation and musical processing scripts, and adding code for handling physical devices.
To keep qMuVi light and flexible, the user sets up their own Qiskit object and passes it to qMuVi where the object is used to run the jobs. Think about which Qiskit object is best, or create a qMuVi class that the user can instantiate with their provider, backend, etc.
qMuVi uses simulators to sample density matrices from the quantum circuits at each barrier gate. However, adding the ability to sample from physical devices will be more exciting and it will enhance the educational aspects of the tool.
This could be implemented by performing full quantum state tomography to get the density matrices at each of the samples. This can be computationally intensive limiting state sizes to about 5-6 qubits.
Another, lighter, implementation could be to just use the measured probabilities to generate the midi file. The video generation logic for only displaying measured probabilites has already been added. So implementing should just involve adding logic to the simulation and musical processing scripts, and adding code for handling physical devices.
To keep qMuVi light and flexible, the user sets up their own Qiskit object and passes it to qMuVi where the object is used to run the jobs. Think about which Qiskit object is best, or create a qMuVi class that the user can instantiate with their provider, backend, etc.