binsub_test.circom
1 pragma circom 2.0.0; 2 3 include "../../circuits/bitify.circom"; 4 include "../../circuits/binsub.circom"; 5 6 template A() { 7 signal input a; //private 8 signal input b; 9 signal output out; 10 11 var i; 12 13 component n2ba = Num2Bits(16); 14 component n2bb = Num2Bits(16); 15 component sub = BinSub(16); 16 component b2n = Bits2Num(16); 17 18 n2ba.in <== a; 19 n2bb.in <== b; 20 21 for (i=0; i<16; i++) { 22 sub.in[0][i] <== n2ba.out[i]; 23 sub.in[1][i] <== n2bb.out[i]; 24 } 25 26 for (i=0; i<16; i++) { 27 b2n.in[i] <== sub.out[i]; 28 } 29 30 out <== b2n.out; 31 } 32 33 component main = A();