mirror of
https://github.com/erhant/circomkit.git
synced 2026-05-05 03:00:37 -04:00
refactors and typed config
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
<%#'this file is an EJS template to generate main component for circuits'-%>
|
||||
<%#'configuration is read from config.js in the project root directory'-%>
|
||||
<%#'do not edit this file!'-%>
|
||||
// auto-generated by instantiate.js
|
||||
pragma circom 2.0.0;
|
||||
|
||||
@@ -9,4 +10,4 @@ component main<%=
|
||||
publicInputs.length == 0 ?
|
||||
'' :
|
||||
' {public[' + publicInputs.join(", ") + ']}'
|
||||
%> = <%= template %>(<%= templateInputs.join(", ") %>);
|
||||
%> = <%= template %>(<%= templateParams.join(", ") %>);
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// auto-generated by instantiate.js
|
||||
pragma circom 2.0.0;
|
||||
|
||||
include "../../circuits/fibonacci.circom";
|
||||
include "../fibonacci.circom";
|
||||
|
||||
component main = Fibonacci(11);
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// auto-generated by instantiate.js
|
||||
pragma circom 2.0.0;
|
||||
|
||||
include "../../circuits/float_add.circom";
|
||||
include "../float_add.circom";
|
||||
|
||||
component main = FloatAdd(8, 23);
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// auto-generated by instantiate.js
|
||||
pragma circom 2.0.0;
|
||||
|
||||
include "../../circuits/float_add.circom";
|
||||
include "../float_add.circom";
|
||||
|
||||
component main = FloatAdd(11, 52);
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// auto-generated by instantiate.js
|
||||
pragma circom 2.0.0;
|
||||
|
||||
include "../../circuits/multiplier.circom";
|
||||
include "../multiplier.circom";
|
||||
|
||||
component main = Multiplier(3);
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// auto-generated by instantiate.js
|
||||
pragma circom 2.0.0;
|
||||
|
||||
include "../../circuits/sudoku.circom";
|
||||
include "../sudoku.circom";
|
||||
|
||||
component main {public[puzzle]} = Sudoku(3);
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
pragma circom 2.0.0;
|
||||
|
||||
// Multiplication of two numbers
|
||||
template Multiplier2() {
|
||||
signal input in1;
|
||||
signal input in2;
|
||||
signal output out;
|
||||
|
||||
out <== in1 * in2;
|
||||
template MultiplicationGate() {
|
||||
signal input in[2];
|
||||
signal output out <== in[0] * in[1];
|
||||
}
|
||||
|
||||
// Multiplication of N numbers
|
||||
@@ -15,17 +12,15 @@ template Multiplier(N) {
|
||||
signal output out;
|
||||
component comp[N-1];
|
||||
|
||||
// instantiate multiplier2 gates
|
||||
// instantiate gates
|
||||
for (var i = 0; i < N-1; i++) {
|
||||
comp[i] = Multiplier2();
|
||||
comp[i] = MultiplicationGate();
|
||||
}
|
||||
|
||||
// multiply
|
||||
comp[0].in1 <== in[0];
|
||||
comp[0].in2 <== in[1];
|
||||
for(var i = 0; i < N-2; i++){
|
||||
comp[i+1].in1 <== comp[i].out;
|
||||
comp[i+1].in2 <== in[i+2];
|
||||
comp[0].in <== [in[0], in[1]];
|
||||
for(var i = 0; i < N-2; i++) {
|
||||
comp[i+1].in <== [comp[i].out, in[i+2]];
|
||||
}
|
||||
out <== comp[N-2].out;
|
||||
}
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
pragma circom 2.0.0;
|
||||
|
||||
// include "circomlib/circuits/" TODO TODO
|
||||
|
||||
// Assert that two elements are not equal.
|
||||
// Done via the check if in0 - in1 is non-zero.
|
||||
template NonEqual() {
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
// auto-generated by instantiate.js
|
||||
pragma circom 2.0.0;
|
||||
|
||||
include "../float_add.circom";
|
||||
|
||||
component main = CheckBitLength(3);
|
||||
Reference in New Issue
Block a user