hofa.norm#

This module contains the Numpy implementation for computing Gowers norms on functions defined on finite abelian groups represented by numpy.ndarray.

Conventions#

The following conventions are used for functions in this file:

  • Any finite abelian group \(Z\) is isomorphic to \(\mathbb{Z}/n_1\mathbb{Z} \times \mathbb{Z}/n_2\mathbb{Z} \times ... \times \mathbb{Z}/n_k\mathbb{Z}\). Therefore, a function \(f: Z \to \mathbb{C}\) is represented as a numpy.ndarray tensor with shape (n_1, n_2, ..., n_k).

  • Sometimes we abreviate numpy by np.

Functions#

u_pow(f, k)

The \(2^k\) power of the Gowers \(U^k\) norm of f.

u(f, k)

The Gowers \(U^k\) norm of f.

Module Contents#

hofa.norm.u_pow(f: numpy.ndarray, k: int)#

The \(2^k\) power of the Gowers \(U^k\) norm of f.

Parameters:
  • f (np.ndarray) – A function \(f: Z \to \mathbb{C}\) defined on a finite abelian group \(Z\).

  • k (int) – An integer representing the order of the Gowers norm.

Returns:

The \(2^k\) power of the \(U^k\) norm of f.

Return type:

float

hofa.norm.u(f: numpy.ndarray, k: int)#

The Gowers \(U^k\) norm of f.

Parameters:
  • f (np.ndarray) – A function \(f: Z \to \mathbb{C}\) defined on a finite abelian group \(Z\).

  • k (int) – An integer representing the order of the Gowers norm.

Returns:

The \(U^k\) norm of f.

Return type:

float