leo synthesize
This command is used to generate proving and verifying keys for all transitions in a local or remote Leo program, along with circuit metadata.
leo synthesize <PROGRAM_NAME> --save <SAVE_DIRECTORY>
Each output of this command includes:
- Number of public inputs
- Number of variables
- Number of constraints
- Non-zero entries in matrices
- Circuit ID
- Proving and verifying keys saved to disk
This enables better understanding of program size and key management.
Flags:
--network <NETWORK>
Specifies the network to deploy to. Overrides any NETWORK environment variable set manually or in a .env file. Valid network names are testnet, mainnet, and canary.
--endpoint <ENDPOINT>
The endpoint to deploy to. Overrides any ENDPOINT environment variable set manually or in a .env file.
--local
-l
Specifies that the keys should be generated for the local Leo project in the current working directory.
--skip <SKIP>
-s <SKIP>
Specifies to skip the key generation for any function names that contain the provided substrings
--save <SAVE_DIRECTORY>
The directory to save the key files to. If the provided path does not exist, it will be created in your current working directory.