package ringsis_{{.ModulusDegree}}_{{.LogTwoBound}}

import (
	"github.com/consensys/linea-monorepo/prover/maths/field"
)

{{- $bitPerField := 256}}
{{- $limbPerField := div $bitPerField .LogTwoBound}}
{{- $fieldPerPoly := div .ModulusDegree $limbPerField}}
{{- $numMask := pow 2 $fieldPerPoly}}

var partialFFT = []func(a, twiddles []field.Element){
	{{- range $i := iterate 0 $numMask}}
	partialFFT_{{$i}},
	{{- end}}
}
{{range $mask := iterate 0 $numMask}}
{{partialFFT $.ModulusDegree $fieldPerPoly $mask}}
{{- end}}