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