Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement density matrix simulation via full tensor network contraction #88

Merged
merged 20 commits into from
Jan 29, 2021

Commits on Jan 21, 2021

  1. Boilerplate for the full DM contraction visitor

    Signed-off-by: Thien Nguyen <[email protected]>
    Thien Nguyen committed Jan 21, 2021
    Configuration menu
    Copy the full SHA
    1af1606 View commit details
    Browse the repository at this point in the history
  2. Append single-qubit gates

    Signed-off-by: Thien Nguyen <[email protected]>
    Thien Nguyen committed Jan 21, 2021
    Configuration menu
    Copy the full SHA
    2df0419 View commit details
    Browse the repository at this point in the history
  3. Add two-qubit tensor append

    Also, expose ExecutionInfo to return density matrix for testing.
    
    Signed-off-by: Thien Nguyen <[email protected]>
    Thien Nguyen committed Jan 21, 2021
    Configuration menu
    Copy the full SHA
    a2482fa View commit details
    Browse the repository at this point in the history
  4. Added Density Matrix after full contraction to ExecutionInfo

    Signed-off-by: Thien Nguyen <[email protected]>
    Thien Nguyen committed Jan 21, 2021
    Configuration menu
    Copy the full SHA
    fafa84e View commit details
    Browse the repository at this point in the history
  5. Clean-up the test case

    First, test w/ no noise, just looking at the final density matrix
    
    Signed-off-by: Thien Nguyen <[email protected]>
    Thien Nguyen committed Jan 21, 2021
    Configuration menu
    Copy the full SHA
    b86adc6 View commit details
    Browse the repository at this point in the history
  6. Appended noise tensors

    Signed-off-by: Thien Nguyen <[email protected]>
    Thien Nguyen committed Jan 21, 2021
    Configuration menu
    Copy the full SHA
    aa81e2c View commit details
    Browse the repository at this point in the history
  7. Fixed appending noise tensors (changing connecting legs)

    Signed-off-by: Thien Nguyen <[email protected]>
    Thien Nguyen committed Jan 21, 2021
    Configuration menu
    Copy the full SHA
    1c65b46 View commit details
    Browse the repository at this point in the history

Commits on Jan 22, 2021

  1. Append two-qubit Kraus tensors according to the LSB-MSB convention

    Signed-off-by: Thien Nguyen <[email protected]>
    Thien Nguyen committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    28a7f69 View commit details
    Browse the repository at this point in the history
  2. Adding more validation tests for full density matrix contraction results

    Signed-off-by: Thien Nguyen <[email protected]>
    Thien Nguyen committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    de27781 View commit details
    Browse the repository at this point in the history
  3. Adding a multi-qubit test for validation

    Signed-off-by: Thien Nguyen <[email protected]>
    Thien Nguyen committed Jan 22, 2021
    Configuration menu
    Copy the full SHA
    6b4cee6 View commit details
    Browse the repository at this point in the history

Commits on Jan 25, 2021

  1. Adding a test to check the output tensor leg ordering issue

    Legs of output tensor are re-shuffled after Kraus tensor connection.
    
    Affecting multi-qubit cases. Waiting for a new ExaTN API to handle this use case...
    
    Signed-off-by: Thien Nguyen <[email protected]>
    Thien Nguyen committed Jan 25, 2021
    Configuration menu
    Copy the full SHA
    aab4ac5 View commit details
    Browse the repository at this point in the history
  2. Adding exp-val calc by contracting the tracing tensor network

    Appending Z tensors at measure locations then closing the bra and ket legs to compute the trace.
    
    Signed-off-by: Thien Nguyen <[email protected]>
    Thien Nguyen committed Jan 25, 2021
    Configuration menu
    Copy the full SHA
    c4e4be1 View commit details
    Browse the repository at this point in the history
  3. Added a test to debug negative density matrix diag elems

    Signed-off-by: Thien Nguyen <[email protected]>
    Thien Nguyen committed Jan 25, 2021
    Configuration menu
    Copy the full SHA
    e6186c1 View commit details
    Browse the repository at this point in the history
  4. Fixes dagger side gate append

    Signed-off-by: Thien Nguyen <[email protected]>
    Thien Nguyen committed Jan 25, 2021
    Configuration menu
    Copy the full SHA
    5c0d180 View commit details
    Browse the repository at this point in the history
  5. Using newly-added ExaTN appendTensorGateGeneral API to add Kraus tensor

    Fixing the output leg ordering issue.
    
    Signed-off-by: Thien Nguyen <[email protected]>
    Thien Nguyen committed Jan 25, 2021
    Configuration menu
    Copy the full SHA
    110e391 View commit details
    Browse the repository at this point in the history

Commits on Jan 28, 2021

  1. Formalize a set of helpers to support debugging Kraus tensor leg orde…

    …ring
    
    Signed-off-by: Thien Nguyen <[email protected]>
    Thien Nguyen committed Jan 28, 2021
    Configuration menu
    Copy the full SHA
    553904f View commit details
    Browse the repository at this point in the history
  2. Support visitor selection via the "backend" key

    (i.e. support the tnqvm:visitor format)
    
    Signed-off-by: Thien Nguyen <[email protected]>
    Thien Nguyen committed Jan 28, 2021
    Configuration menu
    Copy the full SHA
    830ecd5 View commit details
    Browse the repository at this point in the history
  3. Added the helper to iteratively search the tensor connection pattern

    and update the one found
    
    Signed-off-by: Thien Nguyen <[email protected]>
    Thien Nguyen committed Jan 28, 2021
    Configuration menu
    Copy the full SHA
    08c57d3 View commit details
    Browse the repository at this point in the history
  4. All tests are passing now

    added an integration test with VQE.
    
    Signed-off-by: Thien Nguyen <[email protected]>
    Thien Nguyen committed Jan 28, 2021
    Configuration menu
    Copy the full SHA
    be4806e View commit details
    Browse the repository at this point in the history
  5. Comment out a bunch of debug print out

    Signed-off-by: Thien Nguyen <[email protected]>
    Thien Nguyen committed Jan 28, 2021
    Configuration menu
    Copy the full SHA
    bbe41a7 View commit details
    Browse the repository at this point in the history