Skip to content

Commit

Permalink
Merge pull request #81 from 0xPolygonHermez/fix-padding-pg-poseidon-p…
Browse files Browse the repository at this point in the history
…lookup

paddingPg poseidon4 as plookup
  • Loading branch information
zkronos73 committed Nov 17, 2022
2 parents 11bb4aa + b225575 commit 7505eff
Show file tree
Hide file tree
Showing 5 changed files with 8 additions and 15 deletions.
8 changes: 4 additions & 4 deletions pil/main.pil
Original file line number Diff line number Diff line change
Expand Up @@ -748,13 +748,13 @@ namespace Main(%N);
/////////

(sRD + sWR) {
1, 0, 0, 0, // Poseidon Result ID
1, 0, 0, // Poseidon Result ID
C0, C1, C2, C3, C4, C5, C6, C7,
0, 0, 0, 0,
sKeyI[0], sKeyI[1], sKeyI[2], sKeyI[3]
} is
PoseidonG.result1 {
PoseidonG.result1, PoseidonG.result2, PoseidonG.result3, PoseidonG.result4,
PoseidonG.result1, PoseidonG.result2, PoseidonG.result3,
PoseidonG.in0,
PoseidonG.in1,
PoseidonG.in2,
Expand All @@ -774,13 +774,13 @@ namespace Main(%N);
};

(sRD + sWR) {
0, 1, 0, 0,
0, 1, 0,
A0, A1, A2, A3, A4, A5, B0, B1,
sKeyI[0], sKeyI[1], sKeyI[2], sKeyI[3],
sKey[0], sKey[1], sKey[2], sKey[3]
} is
PoseidonG.result2 {
PoseidonG.result1, PoseidonG.result2, PoseidonG.result3, PoseidonG.result4,
PoseidonG.result1, PoseidonG.result2, PoseidonG.result3,
PoseidonG.in0,
PoseidonG.in1,
PoseidonG.in2,
Expand Down
4 changes: 1 addition & 3 deletions pil/padding_pg.pil
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,6 @@ namespace PaddingPG(%N);
acc[7]' = acc7C*(1-lastBlock);

lastBlock {
0, 0, 0, 1,
acc0C,
acc1C,
acc2C,
Expand All @@ -68,8 +67,7 @@ namespace PaddingPG(%N);
curHash1,
curHash2,
curHash3
} is PoseidonG.result4 {
PoseidonG.result1, PoseidonG.result2, PoseidonG.result3, PoseidonG.result4,
} in PoseidonG.LATCH {
PoseidonG.in0,
PoseidonG.in1,
PoseidonG.in2,
Expand Down
4 changes: 1 addition & 3 deletions pil/poseidong.pil
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ namespace PoseidonG(%N);
pol constant C[12];
pol commit in0, in1, in2, in3, in4, in5, in6, in7, hashType, cap1, cap2, cap3;
pol commit hash0, hash1, hash2, hash3;
pol commit result1, result2, result3, result4;
pol commit result1, result2, result3;

pol a0 = in0 + C[0];
pol a1 = in1 + C[1];
Expand Down Expand Up @@ -134,11 +134,9 @@ namespace PoseidonG(%N);
result1 * (1 - result1) = 0;
result2 * (1 - result2) = 0;
result3 * (1 - result3) = 0;
result4 * (1 - result4) = 0;

result1 * (1 - LATCH) = 0;
result2 * (1 - LATCH) = 0;
result3 * (1 - LATCH) = 0;
result4 * (1 - LATCH) = 0;


4 changes: 2 additions & 2 deletions pil/storage.pil
Original file line number Diff line number Diff line change
Expand Up @@ -167,13 +167,13 @@ namespace Storage(%N);

// Instruction that guarantees that op = hash(hl, hr); the poseidon SM will do the work; the result will be feeded by free
iHash {
0, 0, 1, 0,
0, 0, 1,
hashLeft0, hashLeft1, hashLeft2, hashLeft3,
hashRight0, hashRight1, hashRight2, hashRight3,
iHashType, 0, 0, 0,
op0, op1, op2, op3
} is PoseidonG.result3 {
PoseidonG.result1, PoseidonG.result2, PoseidonG.result3, PoseidonG.result4,
PoseidonG.result1, PoseidonG.result2, PoseidonG.result3,
PoseidonG.in0,
PoseidonG.in1,
PoseidonG.in2,
Expand Down
3 changes: 0 additions & 3 deletions src/sm/sm_poseidong.js
Original file line number Diff line number Diff line change
Expand Up @@ -175,7 +175,6 @@ module.exports.execute = async function (pols, input) {
pols.result1[p] = (input[i][16] == 1) ? 1n:0n;
pols.result2[p] = (input[i][16] == 2) ? 1n:0n;
pols.result3[p] = (input[i][16] == 3) ? 1n:0n;
pols.result4[p] = (input[i][16] == 4) ? 1n:0n;

p += 1;
let state = [
Expand Down Expand Up @@ -222,7 +221,6 @@ module.exports.execute = async function (pols, input) {
pols.result1[p] = 0n;
pols.result2[p] = 0n;
pols.result3[p] = 0n;
pols.result4[p] = 0n;
p+=1;
}
}
Expand Down Expand Up @@ -261,7 +259,6 @@ module.exports.execute = async function (pols, input) {
pols.result1[p] = 0n;
pols.result2[p] = 0n;
pols.result3[p] = 0n;
pols.result4[p] = 0n;
p+=1;
}

Expand Down

0 comments on commit 7505eff

Please sign in to comment.