arnaucube
arnaucube/circomPublic Self-hosted repository
circom/circuits/sha256/ch.circom
circuits/sha256/ch.circomRaw
 1/* Ch
 2
 3000 0
 4001 1
 5010 0
 6011 1
 7100 0
 8101 0
 9110 1
10111 1
11
12out = a&b ^ (!a)&c =>
13
14out = a*(b-c) + c
15
16*/
17
18template Ch(n) {
19    signal input a[n];
20    signal input b[n];
21    signal input c[n];
22    signal output out[n];
23
24    for (var k=0; k<n; k++) {
25        out[k] <== a[k] * (b[k]-c[k]) + c[k];
26    }
27}