Expand description

Dusk PLONK debugger

The binary format for CDF is a dense linear encoding.

A circuit is a compositions of items that are either Witness or Constraint.

A Witness is a constraint system allocated value that is represented by its identifier and Scalar value.

A Constraint is a Polynomial expression represented as a gate of the circuit that will allow computation in the constraint system. It will evaluate to a bool that is the representation of the result of the gate.

Every item of a circuit description contains a mapping to the Source file that generated it. This will allow the debugger to map the constraint to its original Rust source code.

A circuit description format file will contain a preamble with all its witnesses. Provided this, its witness index will reflect its line on the file, facilitating indexing.

Structs

Empty config set for atomic serialization that is not parametrizable

A circuit description file

Configuration parameters for encoding and decoding

Constraint gate of a circuit

Encoding and decoding context to be defined by the reader/writer and consumed by the elements

An encoder for CDF format

Text representation with fixed N bytes.

Representation of an indexed witness.

PLONK polynomial expression representation with its selectors and witnesses.

Metadata information of the CDF file

Scalar field representation with up to 256 bits.

Source file representation for debug mapping, including line and column of a file

Witness allocation representation

Traits

Base configuration schema

Describe a CDF element

Type Definitions

A circuit description with a file backend

A circuit description with a unit backend

Context without a CDF reader backend