Skip to content

Better support for optimization in "flattened" Trotter - #116

Merged
BrendanKKrueger merged 3 commits into
mainfrom
bkk_trotter_optimization
Oct 16, 2026
Merged

BrendanKKrueger merged 3 commits into
mainfrom
bkk_trotter_optimization

Conversation

@BrendanKKrueger

Copy link
Copy Markdown
Collaborator

Fixes #108

… step

The coefficient was multiplied by num_steps and num_steps was then set to 1, which
also grows dt = time / num_steps by num_steps, so the angle came out num_steps^2
times too large instead of num_steps times.
…r bloq

Qualtran gets a sub-bloq's tensors through add_my_tensors, not tensor_contract, so
the structured/incremental contraction was skipped (and the bloq decomposed gate by
gate) under Power, as_composite_bloq, and user-built circuits. Override
add_my_tensors to add the optimized matrix as one dense tensor. The "qualtran"
method now contracts decompose_bloq() directly so it remains the gate-by-gate
reference rather than routing back through the override.

Addresses #108.
…action

Qualtran's Adjoint decomposes the subbloq for tensor simulation, bypassing any
Trotterization-level override. Return a Trotterization with reversed coefficients,
negated time, and (for an odd number of coefficients) reversed term order, which
applies the expanded sequence in reverse.

Addresses #108.
@BrendanKKrueger
BrendanKKrueger merged commit 245f2c7 into main Oct 16, 2026
14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Optimization missing in Trotter Bloq

2 participants