Look ups for derivative
Created by: stavros11
Hello,
Thanks to everyone for developing and releasing this code.
Please excuse my C++ inexperience, I would like to ask a quick (and possibly simple) question: In the abstract_machine.hpp
, is there any reason that there is no DerLog
function that takes look ups as argument, similarly to LogVal
and LogValDiff
? I am assuming that it has to do with the way the derivative and the look up update is handled in the VMC part (for which I haven't checked the code), however wouldn't in principle to be possible to use already calculated look ups for more efficient calculation of derivative?
I am implementing some custom machines based on MPS, where all the left and right contractions are required for the full derivative. These contractions can also serve as look ups to assist LogValDiff
calculations (particularly in the one-flip case). I am wondering whether it is possible to use them directly in DerLog
without contracting from scratch every time. I tried defining private look up variables within my class for this and update them within UpdateLookup
but this did not work, I am guessing because UpdateLookup
is not called before every derivative calculation.