Skip to content

Commit

Permalink
chore!: bump bignum version to v0.6.0 (#40)
Browse files Browse the repository at this point in the history
  • Loading branch information
TomAFrench authored Feb 25, 2025
1 parent 718fc56 commit 630ca96
Show file tree
Hide file tree
Showing 4 changed files with 16 additions and 16 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ on:

env:
CARGO_TERM_COLOR: always
MINIMUM_NOIR_VERSION: v1.0.0-beta.0
MINIMUM_NOIR_VERSION: v1.0.0-beta.3

jobs:
noir-version-list:
Expand Down
2 changes: 1 addition & 1 deletion Nargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,4 @@ authors = [""]
compiler_version = ">=1.0.0"

[dependencies]
bignum = {tag = "v0.5.4", git = "https://github.com/noir-lang/noir-bignum"}
bignum = {tag = "v0.6.0", git = "https://github.com/noir-lang/noir-bignum"}
12 changes: 6 additions & 6 deletions src/bigcurve_test.nr
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,8 @@ type Fq = BigNum<3, 254, BN254_Fq_Params>;

type BN254J = CurveJ<Fq, BN254Params>;

fn main(x: Field) {
let mut foo: [Field; 12] = [0; 12];
fn main(x: u128) {
let mut foo: [u128; 12] = [0; 12];
foo[0] = x;
for i in 1..12 {
foo[i] = foo[i - 1] * x;
Expand All @@ -38,16 +38,16 @@ fn main(x: Field) {
is_infinity: false,
};

let scalar: ScalarField<64> = ScalarField::from(x); // p - 2 ?
let scalar: ScalarField<64> = ScalarField::from(x as Field); // p - 2 ?
let transcript = unsafe { get_transcript(CurveJ::from(P), scalar) };
// 30768
// 31020
let mut A = P;
for i in 0..101 {
for j in 0..3 {
std::as_witness(transcript[i].lambda.limbs[j]);
std::as_witness(transcript[i].x3.limbs[j]);
std::as_witness(transcript[i].y3.limbs[j]);
std::as_witness(transcript[i].lambda.limbs[j] as Field);
std::as_witness(transcript[i].x3.limbs[j] as Field);
std::as_witness(transcript[i].y3.limbs[j] as Field);
}
A = A.double_with_hint(transcript[i]);
}
Expand Down
16 changes: 8 additions & 8 deletions src/scalar_field.nr
Original file line number Diff line number Diff line change
Expand Up @@ -45,9 +45,9 @@ where
{
let mut result: [u8; N] = [0; N];
let mut nibbles: [[u8; 30]; (N / 30) + 1] = [[0; 30]; (N / 30) + 1];
let x: [Field] = x.get_limbs_slice();
let x: [u128] = x.get_limbs_slice();
for i in 0..x.len() {
nibbles[i] = x[i].to_le_radix::<30>(16);
nibbles[i] = (x[i] as Field).to_le_radix::<30>(16);
}

let skew: bool = nibbles[0][0] & 1 == 0;
Expand Down Expand Up @@ -221,27 +221,27 @@ impl<let N: u32> ScalarFieldTrait for ScalarField<N> {
let mut result = BigNum::zero();
let mut count: u64 = 0;
{
let mut acc = 0;
let mut acc: u128 = 0;
let mut last_bits = (result.modulus_bits() % 120) as u64;
if (last_bits == 0) {
last_bits = 120;
}
let mut last_nibbles = (last_bits / 4) + (last_bits % 4 != 0) as u64;
for _ in 0..last_nibbles {
acc = acc * 16;
acc = acc + (self.base4_slices[count] as Field) * 2 - 15;
acc = acc + (self.base4_slices[count] as u128) * 2 - 15;
count = count + 1;
}
result.set_limb(result.num_limbs() - 1, acc);
}
for i in 1..result.num_limbs() {
let mut acc: Field = 0;
let mut acc: u128 = 0;
for _ in 0..30 {
acc = acc * 16;
acc = acc + (self.base4_slices[count] as Field) * 2 - 15;
acc = acc + (self.base4_slices[count] as u128) * 2 - 15;
count = count + 1;
}
if acc.lt(0x1000000000000000000000000000000) == false {
if acc >= 0x1000000000000000000000000000000 {
acc += 0x1000000000000000000000000000000;
result.set_limb(
result.num_limbs() - i,
Expand All @@ -250,7 +250,7 @@ impl<let N: u32> ScalarFieldTrait for ScalarField<N> {
}
result.set_limb(result.num_limbs() - 1 - i, acc);
}
result.set_limb(0, result.get_limb(0) - self.skew as Field);
result.set_limb(0, result.get_limb(0) - self.skew as u128);
result
}

Expand Down

0 comments on commit 630ca96

Please sign in to comment.