Let us discuss the new design:
- Due to historical reasons, we have two implementations in the current implementation,
TensorCI1 (accumulative mode) and TensorCI2 (reset mode). But, the only essential difference is how to choose new pivots. We can merge the implementations as follows:
- A
TensorCI object restores local pivots (optionally cache of P_\ell and T_\ell).
- We implement several different strategies for updating
TensorCI. The accumulative mode may be just a runtime option.
- A
TensorCI object can be converted to a tensor train (or a tree tensor network) using rrLU.
- We can implement a tree TCI version and remove the TT implementation.
TensorTrain and TTCache can be moved to SimpleTensorNetworks.jl.
Let us discuss the new design:
TensorCI1(accumulative mode) andTensorCI2(reset mode). But, the only essential difference is how to choose new pivots. We can merge the implementations as follows:TensorCIobject restores local pivots (optionally cache ofP_\ellandT_\ell).TensorCI. The accumulative mode may be just a runtime option.TensorCIobject can be converted to a tensor train (or a tree tensor network) usingrrLU.TensorTrainandTTCachecan be moved toSimpleTensorNetworks.jl.