feat: consistant support of cs.Println
and debugInfo
#142
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Circuits compiled with
backend.GROTH16
orbackend.PLONK
both supportescs.Println
and debug info (stack trace) when a constraint is not satisfied at solving time.Breaking changes
R1CS
andSparseR1CS
now usescbor.CoreDetEncOptions()
to enable deterministic encoding of mapscs.Println
has no more side effect on the number of constraintgroth16.Prove
andplonk.Prove
APIs now takes a list ofbackend.ProverOption
options, instead of a list of optional arguments.Example usage
Internal changes
frontend.ConstraintSystem
: assertions are merged with constraintscompiled/
:R1CS
andSparseR1CS
share a common data structure, the only difference is the list of coefficient (R1C
&SparseR1C
)frontend
: addedaddDebugInfo
helper -->println
anddebugInfo
(fixes test:cs.Println
, logs and debugInfo are not tested #137 )TODO:
cs.Println
doesn't recurse it's inputs as before to look for variables. Need to allow at least one level of recursion to print data structs containing variables.