Slightly reduce number of products for BB
This MR slightly reduces the required products for the BB block. It changes two things:
- Define B = X - H'_{offdiag} instead of B = X - H'_{offdiag} - H'_{offdiag} U'.
- Introduce the product U'^\dagger (H'_{offdiag} U' - B).
TODO's:
-
Alter the CSE -
Alter tests -
Update detection of deleting intermediate terms
Now that the algorithm has changed, we notice that the detection of terms to delete doesn't work 100% correctly: terms that appear in products are sometimes still accessed only once.