polynomial

package
v0.0.0-...-81eada0 Latest Latest
Warning

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

Go to latest
Published: Aug 5, 2022 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func EqEval

func EqEval(cs frontend.API, qPrime, hPrime []frontend.Variable) frontend.Variable

EqEval returns Eq(q', h')

func UnivariateEqEval

func UnivariateEqEval(cs frontend.API, q, h frontend.Variable) frontend.Variable

UnivariateEqEval computes f(q, h) = 1 - q - h + 2 * q * h It returns 1 if q == h \in {0, 1}

Types

type MultiLin

type MultiLin []frontend.Variable

MultiLin represents a multilinear polynomial by its values

func AllocateMultilinear

func AllocateMultilinear(nVars int) MultiLin

AllocateMultilinear returns an empty multilinear with a given size

func NewMultilinearByValues

func NewMultilinearByValues(Table []frontend.Variable) MultiLin

NewMultilinearByValues is the default constructor

func (MultiLin) Assign

func (m MultiLin) Assign(values poly.MultiLin)

Assign a preallocated Multilinear with the given values

func (MultiLin) DeepCopy

func (m MultiLin) DeepCopy() MultiLin

DeepCopy returns a deepcopied value

func (MultiLin) Eval

Eval the multilinear polynomial

func (*MultiLin) Fold

func (m *MultiLin) Fold(cs frontend.API, x frontend.Variable)

Fold partially evaluates the polynomial on one of the variable

type Univariate

type Univariate []frontend.Variable

Univariate encodes a univariate polynomial: a0 + a1X + ... + ad X^d <=> {a0, a1, ... , ad}

func AllocateUnivariate

func AllocateUnivariate(degree int) Univariate

AllocateUnivariate returns an empty multilinear with a given size

func NewUnivariate

func NewUnivariate(coeffs []frontend.Variable) Univariate

NewUnivariate is the default constructor

func (Univariate) Assign

func (u Univariate) Assign(coeffs []fr.Element)

Assign value to a previously allocated univariate

func (Univariate) Eval

Eval returns p(x)

func (Univariate) ZeroAndOne

func (u Univariate) ZeroAndOne(cs frontend.API) frontend.Variable

ZeroAndOne returns p(0) + p(1)

Jump to

Keyboard shortcuts

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