Documentation ¶
Index ¶
- Constants
- type ArithmeticExtensionGate
- type ArithmeticGate
- func (g *ArithmeticGate) EvalUnfiltered(api frontend.API, glApi *gl.Chip, vars EvaluationVars) []gl.QuadraticExtensionVariable
- func (g *ArithmeticGate) Id() string
- func (g *ArithmeticGate) WireIthAddend(i uint64) uint64
- func (g *ArithmeticGate) WireIthMultiplicand0(i uint64) uint64
- func (g *ArithmeticGate) WireIthMultiplicand1(i uint64) uint64
- func (g *ArithmeticGate) WireIthOutput(i uint64) uint64
- type BaseSumGate
- type ConstantGate
- type CosetInterpolationGate
- type EvaluateGatesChip
- type EvaluationVars
- type ExponentiationGate
- type Gate
- type MultiplicationExtensionGate
- type NoopGate
- type PoseidonGate
- func (g *PoseidonGate) EvalUnfiltered(api frontend.API, glApi *gl.Chip, vars EvaluationVars) []gl.QuadraticExtensionVariable
- func (g *PoseidonGate) Id() string
- func (g *PoseidonGate) WireDelta(i uint64) uint64
- func (g *PoseidonGate) WireFullSBox0(round uint64, i uint64) uint64
- func (g *PoseidonGate) WireFullSBox1(round uint64, i uint64) uint64
- func (g *PoseidonGate) WireInput(i uint64) uint64
- func (g *PoseidonGate) WireOutput(i uint64) uint64
- func (g *PoseidonGate) WirePartialSBox(round uint64) uint64
- func (g *PoseidonGate) WireSwap() uint64
- func (g *PoseidonGate) WiresEnd() uint64
- type PoseidonMdsGate
- type PublicInputGate
- type RandomAccessGate
- func (g *RandomAccessGate) EvalUnfiltered(api frontend.API, glApi *gl.Chip, vars EvaluationVars) []gl.QuadraticExtensionVariable
- func (g *RandomAccessGate) Id() string
- func (g *RandomAccessGate) NumRoutedWires() uint64
- func (g *RandomAccessGate) WireAccessIndex(copy uint64) uint64
- func (g *RandomAccessGate) WireBit(i uint64, copy uint64) uint64
- func (g *RandomAccessGate) WireClaimedElement(copy uint64) uint64
- func (g *RandomAccessGate) WireListItem(i uint64, copy uint64) uint64
- type Range
- type ReducingExtensionGate
- type ReducingGate
- type SelectorsInfo
Constants ¶
View Source
const ( BASESUM_GATE_WIRE_SUM = 0 BASESUM_GATE_START_LIMBS = 1 )
View Source
const START_COEFFS_REDUCING_EXTENSION_GATE = 3 * gl.D
View Source
const START_COEFFS_REDUCING_GATE = 3 * gl.D
View Source
const START_DELTA = 2*poseidon.SPONGE_WIDTH + 1
View Source
const START_FULL_0 = START_DELTA + 4
View Source
const START_FULL_1 = START_PARTIAL + poseidon.N_PARTIAL_ROUNDS
View Source
const START_PARTIAL = START_FULL_0 + (poseidon.HALF_N_FULL_ROUNDS-1)*poseidon.SPONGE_WIDTH
View Source
const UNUSED_SELECTOR = uint64(^uint32(0)) // max uint32
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ArithmeticExtensionGate ¶
type ArithmeticExtensionGate struct {
// contains filtered or unexported fields
}
func NewArithmeticExtensionGate ¶
func NewArithmeticExtensionGate(numOps uint64) *ArithmeticExtensionGate
func (*ArithmeticExtensionGate) EvalUnfiltered ¶
func (g *ArithmeticExtensionGate) EvalUnfiltered( api frontend.API, glApi *gl.Chip, vars EvaluationVars, ) []gl.QuadraticExtensionVariable
func (*ArithmeticExtensionGate) Id ¶
func (g *ArithmeticExtensionGate) Id() string
type ArithmeticGate ¶
type ArithmeticGate struct {
// contains filtered or unexported fields
}
func NewArithmeticGate ¶
func NewArithmeticGate(numOps uint64) *ArithmeticGate
func (*ArithmeticGate) EvalUnfiltered ¶
func (g *ArithmeticGate) EvalUnfiltered( api frontend.API, glApi *gl.Chip, vars EvaluationVars, ) []gl.QuadraticExtensionVariable
func (*ArithmeticGate) Id ¶
func (g *ArithmeticGate) Id() string
func (*ArithmeticGate) WireIthAddend ¶
func (g *ArithmeticGate) WireIthAddend(i uint64) uint64
func (*ArithmeticGate) WireIthMultiplicand0 ¶
func (g *ArithmeticGate) WireIthMultiplicand0(i uint64) uint64
func (*ArithmeticGate) WireIthMultiplicand1 ¶
func (g *ArithmeticGate) WireIthMultiplicand1(i uint64) uint64
func (*ArithmeticGate) WireIthOutput ¶
func (g *ArithmeticGate) WireIthOutput(i uint64) uint64
type BaseSumGate ¶
type BaseSumGate struct {
// contains filtered or unexported fields
}
func NewBaseSumGate ¶
func NewBaseSumGate(numLimbs uint64, base uint64) *BaseSumGate
func (*BaseSumGate) EvalUnfiltered ¶
func (g *BaseSumGate) EvalUnfiltered( api frontend.API, glApi *gl.Chip, vars EvaluationVars, ) []gl.QuadraticExtensionVariable
func (*BaseSumGate) Id ¶
func (g *BaseSumGate) Id() string
type ConstantGate ¶
type ConstantGate struct {
// contains filtered or unexported fields
}
func NewConstantGate ¶
func NewConstantGate(numConsts uint64) *ConstantGate
func (*ConstantGate) ConstInput ¶
func (g *ConstantGate) ConstInput(i uint64) uint64
func (*ConstantGate) EvalUnfiltered ¶
func (g *ConstantGate) EvalUnfiltered( api frontend.API, glApi *gl.Chip, vars EvaluationVars, ) []gl.QuadraticExtensionVariable
func (*ConstantGate) Id ¶
func (g *ConstantGate) Id() string
func (*ConstantGate) WireOutput ¶
func (g *ConstantGate) WireOutput(i uint64) uint64
type CosetInterpolationGate ¶
type CosetInterpolationGate struct {
// contains filtered or unexported fields
}
func NewCosetInterpolationGate ¶
func NewCosetInterpolationGate(subgroupBits uint64, degree uint64, barycentricWeights []goldilocks.Element) *CosetInterpolationGate
func (*CosetInterpolationGate) EvalUnfiltered ¶
func (g *CosetInterpolationGate) EvalUnfiltered( api frontend.API, glApi *gl.Chip, vars EvaluationVars, ) []gl.QuadraticExtensionVariable
func (*CosetInterpolationGate) Id ¶
func (g *CosetInterpolationGate) Id() string
type EvaluateGatesChip ¶
type EvaluateGatesChip struct {
// contains filtered or unexported fields
}
func NewEvaluateGatesChip ¶
func NewEvaluateGatesChip( api frontend.API, gates []Gate, numGateConstraints uint64, selectorsInfo SelectorsInfo, ) *EvaluateGatesChip
func (*EvaluateGatesChip) EvaluateGateConstraints ¶
func (g *EvaluateGatesChip) EvaluateGateConstraints(vars EvaluationVars) []gl.QuadraticExtensionVariable
type EvaluationVars ¶
type EvaluationVars struct {
// contains filtered or unexported fields
}
func NewEvaluationVars ¶
func NewEvaluationVars( localConstants []gl.QuadraticExtensionVariable, localWires []gl.QuadraticExtensionVariable, publicInputsHash poseidon.GoldilocksHashOut, ) *EvaluationVars
func (*EvaluationVars) GetLocalExtAlgebra ¶
func (e *EvaluationVars) GetLocalExtAlgebra(wireRange Range) gl.QuadraticExtensionAlgebraVariable
func (*EvaluationVars) RemovePrefix ¶
func (e *EvaluationVars) RemovePrefix(numSelectors uint64)
type ExponentiationGate ¶
type ExponentiationGate struct {
// contains filtered or unexported fields
}
func NewExponentiationGate ¶
func NewExponentiationGate(numPowerBits uint64) *ExponentiationGate
func (*ExponentiationGate) EvalUnfiltered ¶
func (g *ExponentiationGate) EvalUnfiltered( api frontend.API, glApi *gl.Chip, vars EvaluationVars, ) []gl.QuadraticExtensionVariable
func (*ExponentiationGate) Id ¶
func (g *ExponentiationGate) Id() string
type Gate ¶
type Gate interface { Id() string EvalUnfiltered( api frontend.API, glApi *gl.Chip, vars EvaluationVars, ) []gl.QuadraticExtensionVariable }
func GateInstanceFromId ¶
type MultiplicationExtensionGate ¶
type MultiplicationExtensionGate struct {
// contains filtered or unexported fields
}
func NewMultiplicationExtensionGate ¶
func NewMultiplicationExtensionGate(numOps uint64) *MultiplicationExtensionGate
func (*MultiplicationExtensionGate) EvalUnfiltered ¶
func (g *MultiplicationExtensionGate) EvalUnfiltered( api frontend.API, glApi *gl.Chip, vars EvaluationVars, ) []gl.QuadraticExtensionVariable
func (*MultiplicationExtensionGate) Id ¶
func (g *MultiplicationExtensionGate) Id() string
type NoopGate ¶
type NoopGate struct { }
func NewNoopGate ¶
func NewNoopGate() *NoopGate
func (*NoopGate) EvalUnfiltered ¶
func (g *NoopGate) EvalUnfiltered( api frontend.API, glApi *gl.Chip, vars EvaluationVars, ) []gl.QuadraticExtensionVariable
type PoseidonGate ¶
type PoseidonGate struct { }
func NewPoseidonGate ¶
func NewPoseidonGate() *PoseidonGate
func (*PoseidonGate) EvalUnfiltered ¶
func (g *PoseidonGate) EvalUnfiltered( api frontend.API, glApi *gl.Chip, vars EvaluationVars, ) []gl.QuadraticExtensionVariable
func (*PoseidonGate) Id ¶
func (g *PoseidonGate) Id() string
func (*PoseidonGate) WireDelta ¶
func (g *PoseidonGate) WireDelta(i uint64) uint64
func (*PoseidonGate) WireFullSBox0 ¶
func (g *PoseidonGate) WireFullSBox0(round uint64, i uint64) uint64
func (*PoseidonGate) WireFullSBox1 ¶
func (g *PoseidonGate) WireFullSBox1(round uint64, i uint64) uint64
func (*PoseidonGate) WireInput ¶
func (g *PoseidonGate) WireInput(i uint64) uint64
func (*PoseidonGate) WireOutput ¶
func (g *PoseidonGate) WireOutput(i uint64) uint64
func (*PoseidonGate) WirePartialSBox ¶
func (g *PoseidonGate) WirePartialSBox(round uint64) uint64
func (*PoseidonGate) WireSwap ¶
func (g *PoseidonGate) WireSwap() uint64
func (*PoseidonGate) WiresEnd ¶
func (g *PoseidonGate) WiresEnd() uint64
type PoseidonMdsGate ¶
type PoseidonMdsGate struct { }
func NewPoseidonMdsGate ¶
func NewPoseidonMdsGate() *PoseidonMdsGate
func (*PoseidonMdsGate) EvalUnfiltered ¶
func (g *PoseidonMdsGate) EvalUnfiltered( api frontend.API, glApi *gl.Chip, vars EvaluationVars, ) []gl.QuadraticExtensionVariable
func (*PoseidonMdsGate) Id ¶
func (g *PoseidonMdsGate) Id() string
func (*PoseidonMdsGate) WireInput ¶
func (g *PoseidonMdsGate) WireInput(i uint64) Range
func (*PoseidonMdsGate) WireOutput ¶
func (g *PoseidonMdsGate) WireOutput(i uint64) Range
type PublicInputGate ¶
type PublicInputGate struct { }
func NewPublicInputGate ¶
func NewPublicInputGate() *PublicInputGate
func (*PublicInputGate) EvalUnfiltered ¶
func (g *PublicInputGate) EvalUnfiltered( api frontend.API, glApi *gl.Chip, vars EvaluationVars, ) []gl.QuadraticExtensionVariable
func (*PublicInputGate) Id ¶
func (g *PublicInputGate) Id() string
func (*PublicInputGate) WiresPublicInputsHash ¶
func (g *PublicInputGate) WiresPublicInputsHash() []uint64
type RandomAccessGate ¶
type RandomAccessGate struct {
// contains filtered or unexported fields
}
func NewRandomAccessGate ¶
func NewRandomAccessGate(bits uint64, numCopies uint64, numExtraConstants uint64) *RandomAccessGate
func (*RandomAccessGate) EvalUnfiltered ¶
func (g *RandomAccessGate) EvalUnfiltered( api frontend.API, glApi *gl.Chip, vars EvaluationVars, ) []gl.QuadraticExtensionVariable
func (*RandomAccessGate) Id ¶
func (g *RandomAccessGate) Id() string
func (*RandomAccessGate) NumRoutedWires ¶
func (g *RandomAccessGate) NumRoutedWires() uint64
func (*RandomAccessGate) WireAccessIndex ¶
func (g *RandomAccessGate) WireAccessIndex(copy uint64) uint64
func (*RandomAccessGate) WireClaimedElement ¶
func (g *RandomAccessGate) WireClaimedElement(copy uint64) uint64
func (*RandomAccessGate) WireListItem ¶
func (g *RandomAccessGate) WireListItem(i uint64, copy uint64) uint64
type ReducingExtensionGate ¶
type ReducingExtensionGate struct {
// contains filtered or unexported fields
}
func NewReducingExtensionGate ¶
func NewReducingExtensionGate(numCoeffs uint64) *ReducingExtensionGate
func (*ReducingExtensionGate) EvalUnfiltered ¶
func (g *ReducingExtensionGate) EvalUnfiltered( api frontend.API, glApi *gl.Chip, vars EvaluationVars, ) []gl.QuadraticExtensionVariable
func (*ReducingExtensionGate) Id ¶
func (g *ReducingExtensionGate) Id() string
type ReducingGate ¶
type ReducingGate struct {
// contains filtered or unexported fields
}
func NewReducingGate ¶
func NewReducingGate(numCoeffs uint64) *ReducingGate
func (*ReducingGate) EvalUnfiltered ¶
func (g *ReducingGate) EvalUnfiltered( api frontend.API, glApi *gl.Chip, vars EvaluationVars, ) []gl.QuadraticExtensionVariable
func (*ReducingGate) Id ¶
func (g *ReducingGate) Id() string
type SelectorsInfo ¶
type SelectorsInfo struct {
// contains filtered or unexported fields
}
func NewSelectorsInfo ¶
func NewSelectorsInfo(selectorIndices []uint64, groupStarts []uint64, groupEnds []uint64) *SelectorsInfo
func (*SelectorsInfo) NumSelectors ¶
func (s *SelectorsInfo) NumSelectors() uint64
Source Files ¶
- arithmetic_extension_gate.go
- arithmetic_gate.go
- base_sum_gate.go
- constant_gate.go
- coset_interpolation_gate.go
- evaluate_gates.go
- exponentiation_gate.go
- gates.go
- multiplication_extension_gate.go
- noop_gate.go
- poseidon_gate.go
- poseidon_mds_gate.go
- public_input_gate.go
- random_access_gate.go
- reducing_extension_gate.go
- reducing_gate.go
- types.go
- vars.go
Click to show internal directories.
Click to hide internal directories.