Documentation ¶
Index ¶
- func ExclusionVerifier(api frontend.API, root frontend.Variable, siblings []frontend.Variable, ...)
- func ForceEqualIfEnabled(api frontend.API, a, b, enabled frontend.Variable)
- func Hash1(api frontend.API, key, value frontend.Variable) frontend.Variable
- func Hash2(api frontend.API, l, r frontend.Variable) frontend.Variable
- func InclusionVerifier(api frontend.API, root frontend.Variable, siblings []frontend.Variable, ...)
- func IsEqual(api frontend.API, a, b frontend.Variable) frontend.Variable
- func LevIns(api frontend.API, enabled frontend.Variable, siblings []frontend.Variable) (levIns []frontend.Variable)
- func MultiAnd(api frontend.API, in []frontend.Variable) frontend.Variable
- func Processor(api frontend.API, oldRoot frontend.Variable, siblings []frontend.Variable, ...) (newRoot frontend.Variable)
- func ProcessorLevel(api frontend.API, ...) (oldRoot, newRoot frontend.Variable)
- func ProcessorSM(api frontend.API, ...) (stTop, stOld0, stBot, stNew1, stNa, stUpd frontend.Variable)
- func Switcher(api frontend.API, sel, l, r frontend.Variable) (frontend.Variable, frontend.Variable)
- func Verifier(api frontend.API, enabled, root frontend.Variable, ...)
- func VerifierLevel(api frontend.API, ...) (root frontend.Variable)
- func VerifierSM(api frontend.API, ...) (stTop, stI0, stIOld, stINew, stNa frontend.Variable)
- type Assignment
- type Wrapper
- type WrapperArbo
- func (t *WrapperArbo) Proof(key *big.Int) (Assignment, error)
- func (t *WrapperArbo) ProofWithTx(tx db.Reader, key *big.Int) (Assignment, error)
- func (t *WrapperArbo) Set(key, value *big.Int) (Assignment, error)
- func (t *WrapperArbo) SetProof(key, value *big.Int) (Assignment, error)
- func (t *WrapperArbo) SetWithTx(tx db.WriteTx, key, value *big.Int) (Assignment, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ExclusionVerifier ¶
func ForceEqualIfEnabled ¶
func InclusionVerifier ¶
func ProcessorLevel ¶
func ProcessorSM ¶
func VerifierLevel ¶
Types ¶
type Assignment ¶
type Wrapper ¶
type Wrapper interface { Proof(key *big.Int) (Assignment, error) ProofWithTx(tx db.Reader, key *big.Int) (Assignment, error) SetProof(key, value *big.Int) (Assignment, error) Set(key, value *big.Int) (Assignment, error) SetWithTx(tx db.WriteTx, key, value *big.Int) (Assignment, error) }
Wrapper defines methods for wrapping existing SMT implementations, useful for generating circuit assignments for generating proof witnesses. See WrapperArbo for a concrete example that wrappers the arbo.Tree implementation.
type WrapperArbo ¶
WrapperArbo wraps an arbo.Tree, generating circuit assignments for certain tree operations like Add and Update.
func (*WrapperArbo) Proof ¶
func (t *WrapperArbo) Proof(key *big.Int) (Assignment, error)
func (*WrapperArbo) ProofWithTx ¶
func (t *WrapperArbo) ProofWithTx(tx db.Reader, key *big.Int) (Assignment, error)
func (*WrapperArbo) Set ¶
func (t *WrapperArbo) Set(key, value *big.Int) (Assignment, error)
func (*WrapperArbo) SetProof ¶
func (t *WrapperArbo) SetProof(key, value *big.Int) (Assignment, error)
func (*WrapperArbo) SetWithTx ¶
func (t *WrapperArbo) SetWithTx(tx db.WriteTx, key, value *big.Int) (Assignment, error)
Source Files ¶
Click to show internal directories.
Click to hide internal directories.