4 ms·
Sure-- there's really two operations going on here. Finding the contractions needed for a properly indistinguishable quantum expectation value (there's a geomet
by alpineidyll3 7y ago
Sure-- there's really two operations going on here. Finding the contractions needed for a properly indistinguishable quantum expectation value (there's a geometric number with the number of quantum particles ie: A_ij \cdot B_ji + A_ij \cdot B_ij \rightarrow C_ij for two particles), and then evaluating those tensor contractions in-silico. Exactly as in ML frameworks like PyTorch/TF, these contractions are executed as: unravel tensors ==> matrix multiply ==> Reravel. Sometimes there might be more than one contraction too, and more than two tensors. The order of raveling, factorization etc. completely controls the efficiency assuming you're always getting near peak in your matrix multiply with several orders of magnitude separating best/worst. Batching out the different factorizations, contractions etc. even just for the symbolic logic is a huge combinatoric problem.