#How are smartcontracts and ZkPrograms compiled?

1 messages · Page 1 of 1 (latest)

plucky kiln
#

How does Snarky compile these smartcontracts internally, are they one big circuit with parts enabled for different method executions or is every method a separate circuit and the verificationkey which is deployed to chain is just some aggregate of the different circuits?
The reason I am asking is to figure out at which point it makes sense to split a zkApp into multiple apps in order to optimize prover time. So does the size of a method impact the proving time of the other methods?

lost sorrel
#

SmartContract and ZkProgram become one big circuit, so the prover time is correlated to the size of all methods combined

EDIT: this is wrong, see below

late chasm
#

So multiple ZkProgram for a single application makes sense? as proofs can be done in parallel.

lost sorrel
#

Makes sense to me, yeah

vernal gyro
#

Cool!

lost sorrel