abstractor

package
v1.1.0 Latest Latest
Warning

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

Go to latest
Published: Aug 31, 2023 License: Apache-2.0 Imports: 3 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CallGadget added in v1.1.0

func CallGadget(api frontend.API, circuit GadgetDefinition) []frontend.Variable

func Concretize

func Concretize(api frontend.API, circuit Circuit) error

Types

type API

type API interface {
	frontend.API
	DefineGadget(gadget GadgetDefinition) Gadget

	frontend.API
	Call(gadget GadgetDefinition) []frontend.Variable
}

type Circuit

type Circuit interface {
	frontend.Circuit
	AbsDefine(api API) error
}

type ConcreteGadget

type ConcreteGadget struct {
	// contains filtered or unexported fields
}

func (*ConcreteGadget) Call

type Concretizer

type Concretizer struct {
	// contains filtered or unexported fields
}

func (*Concretizer) Add

func (*Concretizer) And

func (*Concretizer) AssertIsBoolean

func (c *Concretizer) AssertIsBoolean(i1 frontend.Variable)

func (*Concretizer) AssertIsDifferent

func (c *Concretizer) AssertIsDifferent(i1, i2 frontend.Variable)

func (*Concretizer) AssertIsEqual

func (c *Concretizer) AssertIsEqual(i1, i2 frontend.Variable)

func (*Concretizer) AssertIsLessOrEqual

func (c *Concretizer) AssertIsLessOrEqual(v frontend.Variable, bound frontend.Variable)

func (*Concretizer) Call

func (c *Concretizer) Call(gadget GadgetDefinition) []frontend.Variable

func (*Concretizer) Cmp

func (*Concretizer) Compiler

func (c *Concretizer) Compiler() frontend.Compiler

func (*Concretizer) ConstantValue

func (c *Concretizer) ConstantValue(v frontend.Variable) (*big.Int, bool)

func (*Concretizer) DefineGadget

func (c *Concretizer) DefineGadget(gadget GadgetDefinition) Gadget

func (*Concretizer) Div

func (*Concretizer) DivUnchecked

func (c *Concretizer) DivUnchecked(i1, i2 frontend.Variable) frontend.Variable

func (*Concretizer) FromBinary

func (c *Concretizer) FromBinary(b ...frontend.Variable) frontend.Variable

func (*Concretizer) Inverse

func (*Concretizer) IsZero

func (*Concretizer) Lookup2

func (c *Concretizer) Lookup2(b0, b1 frontend.Variable, i0, i1, i2, i3 frontend.Variable) frontend.Variable

func (*Concretizer) Mul

func (*Concretizer) MulAcc

func (c *Concretizer) MulAcc(a, b, c_ frontend.Variable) frontend.Variable

func (*Concretizer) Neg

func (*Concretizer) NewHint

func (c *Concretizer) NewHint(f hint.Function, nbOutputs int, inputs ...frontend.Variable) ([]frontend.Variable, error)

func (*Concretizer) Or

func (*Concretizer) Println

func (c *Concretizer) Println(a ...frontend.Variable)

func (*Concretizer) Select

func (*Concretizer) Sub

func (*Concretizer) ToBinary

func (c *Concretizer) ToBinary(i1 frontend.Variable, n ...int) []frontend.Variable

func (*Concretizer) Xor

type Gadget

type Gadget interface {
	Call(gadget GadgetDefinition) []frontend.Variable
}

type GadgetDefinition

type GadgetDefinition interface {
	DefineGadget(api API) []frontend.Variable
}

Jump to

Keyboard shortcuts

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