We should remove base from the BitMap structure and solely have BitMap tell us which vertex a given digit corresponds to.
The base should instead be inferred from the dimension of the physical index on a given site instead.
Siteinds(g, bit_map; base = 2) will construct dimension base physical indices and then a physical index s can be mapped to its corresponding scalars for the range of values it can take via
[i / (dim(s)^digit(bm, s)) for i in 1:dim(s)]
Currently the BitMap is injective and each vertex corresponds to a unique digit. We should make it so that, actually, each physical Index corresponds to a unique digit instead and not base it around vertices.
Each physical Index obviously lives on a vertex so one can also inquire about the digits which live on a vertex via digits(bm, vertex) = [digit(bm, ind) for ind in vertex(bm, ind)] if the BitMap was to contain information about the vertices too.
But.. that is information contained in siteinds so it probably makes sense to tie them together into a structure containing the IndsNetwork and the BitMap which is passed around.
base
from theBitMap
structure and solely haveBitMap
tell us which vertex a givendigit
corresponds to.The base should instead be inferred from the dimension of the
physical
index on a given site instead.Siteinds(g, bit_map; base = 2)
will construct dimensionbase
physical indices and then aphysical
indexs
can be mapped to its corresponding scalars for the range of values it can take via[i / (dim(s)^digit(bm, s)) for i in 1:dim(s)]
BitMap
is injective and each vertex corresponds to a uniquedigit
. We should make it so that, actually, each physicalIndex
corresponds to a uniquedigit
instead and not base it around vertices. Each physicalIndex
obviously lives on a vertex so one can also inquire about the digits which live on a vertex viadigits(bm, vertex) = [digit(bm, ind) for ind in vertex(bm, ind)]
if theBitMap
was to contain information about thevertices
too.But.. that is information contained in
siteinds
so it probably makes sense to tie them together into a structure containing theIndsNetwork
and theBitMap
which is passed around.