package
0.3.8
Repository: https://github.com/philsippl/gnark.git
Documentation: pkg.go.dev

# Functions

Compile will generate a R1CS from the given circuit 1.
ParseWitness will returns a map[string]interface{} to be used as input in in R1CS.Solve(), groth16.Prove() or groth16.Verify() if input is not already a map[string]interface{}, it must implement frontend.Circuit.

# Structs

ConstraintSystem represents a Groth16 like circuit All the APIs to define a circuit (see Circuit.Define) like Add, Sub, Mul, ..
Variable of a circuit They represent secret or public inputs in a circuit struct{} / definition (see circuit.Define(), type Tag).

# Interfaces

Circuit must be implemented by user-defined circuits.

# Type aliases

Tag is a (optional) struct tag one can add to Variable to specify frontend.Compile() behavior the tag format is as follow: type MyCircuit struct { Y frontend.Variable `gnark:"name,option"` } if empty, default resolves to variable name (here "Y") and secret visibility similarly to json or xml struct tags, these are valid: `gnark:",public"` or `gnark:"-"` using "-" marks the variable as ignored by the Compile method.