Expand description
Module for nodes that can be added to a circuit DAG
Modules§
- circuit_
inputs - Nodes that represent inputs to a circuit in the circuit DAG.
- circuit_
outputs - The nodes that represent circuit outputs in the circuit DAG
- fiat_
shamir_ challenge - The FiatShamirChallengeNode is a node that represents when the verifier has to send challenges to the prover, which it samples via the Fiat-Shamir transformation.
- gate
- A Module for adding
GateLayers to components - identity_
gate - A module providing identity gate functionality. For rerouting values from one layer to another in an arbitrary fashion.
- lookup
- Nodes that implement LogUp.
- matmult
- A Module for adding
MatmultLayers to components - node_
enum - A default Enum for a representation of all possible DAG Nodes
- sector
- The basic building block of a regular gkr circuit. The Sector node
- split_
node - A node that splits a single MLE into 2^num_vars smaller MLEs using prefix bits.
Structs§
Enums§
- Either
- The enum
Eitherwith variantsLeftandRightis a general purpose sum type with two cases.
Traits§
- Circuit
Node - A Node in the directed acyclic graph (DAG). The directed edges in the DAG model the dependencies between nodes, with the dependent node being the target of the edge and the dependency being the source.
- Compilable
Node - A Node that contains the information neccessary to Compile itself
- Field
- The primary finite field used within a GKR circuit, as well as within
sumcheck. Note that the field’s size should be large enough such that
depth(C) * deg(C) / |F|bits of computational soundness is considered secure, wheredepth(C)is the depth of the GKR circuit anddeg(C)is the maximum degree of any layerwise polynomial relationship.