neuralqx.operators.creation module

This file includes the implementation of raising and lowering operators as well as flux operators which are used in quantum reduced loop gravity.

creation(H, site, n)

This function will yield a NetKet LocalOperator which acts on the given site and increments its associated quantum number by N. If that happens to be above the cutoff of the Hilbert space, it produces the zero state.

Note

The produced operator is not cyclic in the sense that when raising the highest possible basis vector, it gives the lowest possible basis vector. This is different from how the holonomy operator acts.

Parameters:
  • H (AbstractHilbertInterface) – the Hilbert space this operator is to be defined on

  • site (int) – the site to act on

  • n (int) – the amount of increment to be applied to the site’s label

Return type:

FunctionalLocalOperator

annihilation(H, site, n)

This function will yield a NetKet LocalOperator which acts on the given site and decrements its associated quantum number by N. If that happens to be below the cutoff of the Hilbert space, it produces the zero state.

Note

The produced operator is not cyclic in the sense that when annihilating the lowest possible basis vector, it gives the lowest possible basis vector back. This is different from how the holonomy operator acts.

Parameters:
  • H (AbstractHilbertInterface) – the Hilbert space this operator is to be defined on

  • site (int) – the site to act on

  • n (int) – the amount of decrement to be applied to the site’s label

Return type:

FunctionalLocalOperator

flux(H, site, power=1, inverse=False)

The flux operator of quantum reduced loop gravity. This acts as a number operator essentially. You can also specify the desired power to output not just the associated spin, but the spin to that power as the eigenvalue of this operator.

Parameters:
  • H (AbstractHilbertInterface) – the Hilbert space this operator is to be defined on

  • site (int) – the site the operator acts on

  • power (float) – the power to which the eigenvalues should be raised

  • inverse (bool) – a flag to determine if we want the eigenvalues to be 1/eigenvalue or not

Return type:

FunctionalLocalOperator

Returns: