Feature/joint measurement#20
Open
Bloooman wants to merge 38 commits into
Open
Conversation
Benchmark Results (Julia v1)Time benchmarks
Memory benchmarks
|
…urn in get_measurement_result to a tuple contain result and anticommute stabilizer
…measure the first measurement in current circuit and update CompState
…or classical bits
… classical controlled bit
…lassical register
…ng to input state and return results
…re qubits than circuit requires
6a2dd2f to
ff137ba
Compare
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #20 +/- ##
===========================================
- Coverage 78.26% 55.35% -22.92%
===========================================
Files 4 8 +4
Lines 184 542 +358
===========================================
+ Hits 144 300 +156
- Misses 40 242 +202 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Krastanov
reviewed
May 18, 2026
| 0x00 denotes +1 eigenvalue, 0x02 denotes -1 eigenvalue | ||
| 0 denotes +1 eigenvalue, 1 denotes -1 eigenvalue | ||
| false denotes +1 eigenvalue, true denotes -1 eigenvalue | ||
| """ |
Comment on lines
+30
to
+33
| """ | ||
| Perform Joint Measurement on CircuitOp if it's a CircuitOp.Measurement | ||
| Store results as corresponding measurement type: classical_random_result, classical_deterministic_result, quantum_result | ||
| """ |
| Perform Joint Measurement on CircuitOp if it's a CircuitOp.Measurement | ||
| Store results as corresponding measurement type: classical_random_result, classical_deterministic_result, quantum_result | ||
| """ | ||
| function get_measurement_result(s::Stabilizer, op::CircuitOp.Type, num_qubits::Int) |
Member
There was a problem hiding this comment.
why is num_qubits an argument -- isn't it known in one of the other arguments
| end | ||
|
|
||
| function quantum_measurement(op::CircuitOp.Type) | ||
| print("Enter quantum measurement result: ") |
Member
There was a problem hiding this comment.
logs, not prints, and probably not even logs anyway
|
|
||
| """TODO docstring""" | ||
| """Struct that contains information describing current quantum state""" | ||
| struct test_MemoryState |
Member
There was a problem hiding this comment.
memory state should hold a clear distinction between "classical memory" and "quantum memory".
- have
stabilizerrefer only topauli_qubitsand always havenqubits(stabilizer)==length(pauli_qubits) - have
magic_qubitsonly refer to qubits that are in a very specific magic state (or is that it?) - have all three of these datafields updated on each iteration -- magic qubit might become a pauli qubit or it might just be neither a pauli qubit nor a magic qubit
Krastanov
reviewed
May 18, 2026
| end | ||
|
|
||
| """Resolve conditional circuit operations defined by CircuitOp.BitConditional""" | ||
| function resolve_conditionals(compstate::ComputerState) |
Member
There was a problem hiding this comment.
this should probably be structured in terms of a traversal/kernel/filter
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.
Edit this message to describe your submission -- delete the instruction content and put in your own.
Please address only one topic or issue per pull request! Many small PRs are much easier to review and merge than one large PR.
If this is your first submission to this organization and you are not a developer known in the Julia ecosystem, do not use LLMs -- we need to trust you first before we trust the LLM under your control.
If you want to submit an unfinished piece of work in order to get comments and discuss, please mark the pull request as a draft and ping the repository maintainer.
Before merging, all changes and new functionality should be marked in the CHANGELOG file, but feel free to just leave your CHANGELOG notes in the PR description, to avoid merge conflicts with other requests modifying that file. The maintainer will add these CHANGELOG notes for you if you do so.
Before considering your pull request ready for review and merging, make sure that all of the following are completed (please keep the clecklist as part of your PR):
If you are submitting for a bug bounty:
If possible, keep your git history not too wild (rebase and squash commits, keep commits small and semantically separated) so that review is easier.