Closed opeltre closed 2 years ago
An observable is a function over a fiber, represented by its bitrange.
It can hence either be represented by:
N.B. this is already the case when factorising global observables as sums of local observables
Microstate -> Product of local microstates -> Sum of local energy values
This implies to harmonise global observable interface with field instances, to some extent. (e.g. eval
method, but no integration possible)
Grouping of local observables is very much related to system quotients
Implement projection to interaction subspaces via fft, as representation of homology classes of potentials (cocycles / supplements of boundaries in higher degrees) first
See also 666ad17 draft implementation of deep RBMs / deep NNs, best example where weight/bias representation is efficient
Instead of storing the energy function as a tensor, make it possible to compute it via a function e.g. linear or affine functional
Necessary for true convolutional layers (translation invariant)
Necessary for quotients (observable on a class of vertices lies in a low dimensional subspace)
Example usecase: images and MNIST dataset
This approach would make it much closer to torch or keras interfaces when piling up layers.