fft

package
v0.1.0-alpha Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 6, 2020 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func FFT

func FFT(a []curve.Element, w curve.Element, numCPU ...uint)

FFT computes the discrete Fourier transform of a and stores the result in a. The result is in bit-reversed order. len(a) must be a power of 2, and w must be a len(a)th root of unity in field F. The algorithm is recursive, decimation-in-frequency. [cite]

Types

type SubGroup

type SubGroup struct {
	Generator        curve.Element
	GeneratorInv     curve.Element
	GeneratorSqRt    curve.Element // generator of 2 adic subgroup of order 2*nb_constraints
	GeneratorSqRtInv curve.Element
	Cardinality      int
	CardinalityInv   curve.Element
}

SubGroup with a power of 2 cardinality compute a field element of order 2x and store it in GeneratorSqRt all other values can be derived from x, GeneratorSqrt

func NewSubGroup

func NewSubGroup(rootOfUnity curve.Element, maxOrderRoot uint, m int) *SubGroup

NewSubGroup returns a subgroup with a power of 2 cardinality cardinality >= m compute a field element of order 2x and store it in GeneratorSqRt all other values can be derived from x, GeneratorSqrt

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL