ITensorNetworkAD.jl icon indicating copy to clipboard operation
ITensorNetworkAD.jl copied to clipboard

Tools for using AD to optimize tensor networks, built on top of ITensor and AutoHOOT.

Results 13 ITensorNetworkAD.jl issues
Sort by recently updated
recently updated
newest added

Remove `ITensorChainRules` in favor of the version now available in ITensors.jl (https://github.com/ITensor/ITensors.jl/tree/main/src/ITensorChainRules).

Currently, there's a function `bonds` that returns the bonds of each column/row of a square. We can generalize the version to extract bonds on a general hypercube lattice, with the...

Keeping both structs are redundant, we can merge them into one type where it stores the list of sites where that Hamiltonian term is acting. Reference: #30

One thing we could try is moving the set of commands in the CI for installing `AutoHOOT` and `cotengra` into a file `deps/build.jl`, which Julia will run as a build...

Add functionality for passing an object which performs measurements within iterations of gradient descent, similar to the [Oberver system in dmrg](https://itensor.github.io/ITensors.jl/stable/Observer.html#observer). Helpful for measuring properties of the PEPS (such as...

Right now the pullback for `split_network` assumes that the network was split by priming one index of a pair of link indices, and also that none of the tensors of...

Add `prime(siteinds, ::PEPS, ...)` function to complement `prime(linkinds, ::PEPS, ...)`. _Originally posted by @mtfishman in https://github.com/ITensor/ITensorNetworkAD.jl/pull/18#r676807519_

Currently, Zygote makes use of the definition `Base.:+(::PEPS, ::PEPS)` to add up sums of gradient terms that show up in the chain rule. For the sake of adding up gradient...