Open
Conversation
Purpose: Unitary DESIGNHACK 2026 (Bring the software issues which were unsolved.)
…e documentation, and disable native window frameless mode.
…r 'done' status layers.
…oretical background, implementation, and visual results.
Author
|
for #33 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Hello!
I added another quantum brush called "decoherence" which calculates what would happens to the pixels of a image on a heavy decoherent process (a very large quantum circuit). Making a brief review decoherence from quantum computer perspective is the undesired effect where the qbits starts to gets "erased" the more time it spends in the quantum computer and after a gate is applied, so with enough time and noise a state of |1> will get back to |0>. While I initially attempted to transform the bitmap to QPIXL as suggested by Quantum pixel representations and compression for N-dimensional images, Mercy A et al (2021) this resulted on very computationally extensive (hours per stroke) so I simplified to calculate an average decoherence factor with an average pixel per patch and per color bit to multiply back to each patch.
Because in either qiskit or other backend ideal simulations doesn't have noise we have to implement a noise model to allow the decoherence to happen on ideal an ideal simulator, to achieve this "erase" we just apply a RY and CRY to produce the depolarization and dephasing in the amount given by the T1 known constants, but in order this to behave realistically when the decoherence level the user choses we have to avoid an artificial recoherence (when the qbits flips back from |0>) so we use an ancilla to stop rotating when |0> as been reached so we have a realistic decoherence asymptotic behavior.
The visual results as we can intuitively estimate, is a dimmed stroked which gets somewhat darker the more we increase the decoherence value (arbitrary but calibrated to give a nice effect).
You can quickly check how this effects behaves on the backend I did (that is running for other bounty) on:
quantumbrush.netlify.app
but mind this is backported to the old python backend as well.
Please check the readme for a more detailed explanation.