grapevine-sonobe/circom/node_modules/circomlib/test/circuits/mux2_1.circom
circom/node_modules/circomlib/test/circuits/mux2_1.circomRaw
1pragma circom 2.0.0;
2
3include "../../circuits/mux2.circom";
4include "../../circuits/bitify.circom";
5
6
7template Constants() {
8 var i;
9 signal output out[4];
10
11 out[0] <== 37;
12 out[1] <== 47;
13 out[2] <== 53;
14 out[3] <== 71;
15}
16
17template Main() {
18 var i;
19 signal input selector;//private
20 signal output out;
21
22 component mux = Mux2();
23 component n2b = Num2Bits(2);
24 component cst = Constants();
25
26 selector ==> n2b.in;
27 for (i=0; i<2; i++) {
28 n2b.out[i] ==> mux.s[i];
29 }
30 for (i=0; i<4; i++) {
31 cst.out[i] ==> mux.c[i];
32 }
33
34 mux.out ==> out;
35}
36
37component main = Main();