snarkjs/src/znfield.js
src/znfield.jsRaw
1
2
3class ZnField {
4 constructor(n) {
5 this.n = n;
6 }
7
8 add(a, b) {
9 const maxGrade = Math.max(a.length, b.length);
10 const res = new Array(maxGrade);
11 for (let i=0; i<maxGrade; i++) {
12 res[i] = this.F.add(a[i], b[i]);
13 }
14 return this._reduce(res);
15 }
16
17 sub(a, b) {
18 // TODO
19 throw new Error("Not Implementted");
20 }
21
22 mul(a, b) {
23 // TODO
24 throw new Error("Not Implementted");
25 }
26
27 inverse(a, b) {
28 // TODO
29 throw new Error("Not Implementted");
30 }
31
32 div(a, b) {
33 // TODO
34 throw new Error("Not Implementted");
35 }
36
37}
38
39module.exports = ZnField;