arnaucube
arnaucube/sonobePublic Self-hosted repository
sonobe/folding-schemes/src/frontend/circom/test_folder/with_external_inputs.circom
folding-schemes/src/frontend/circom/test_folder/with_external_inputs.circomRaw
 1pragma circom 2.0.3;
 2
 3include "./circuits/is_zero.circom";
 4
 5template WithExternalInputs () {
 6    signal input ivc_input[1];
 7    signal input external_inputs[2];
 8    signal output ivc_output[1];
 9
10    component check_input = IsZero();
11    check_input.in <== ivc_input[0];
12    check_input.out === 0;
13
14    signal temp1;
15    signal temp2;
16    
17    temp1 <== ivc_input[0] * ivc_input[0];
18    temp2 <== ivc_input[0] * external_inputs[0];
19    ivc_output[0] <== temp1 * ivc_input[0] + temp2 + external_inputs[1];
20}
21
22component main {public [ivc_input]} = WithExternalInputs();