mirror of
https://github.com/logos-storage/plonky2.git
synced 2026-01-30 03:23:12 +00:00
org
This commit is contained in:
parent
bc9c431e3b
commit
0daaa3bf4e
@ -65,7 +65,8 @@ impl Div for Fp {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const FP_ZERO: Fp = Fp { val: U256::zero() };
|
const ZERO_FP: Fp = Fp { val: U256::zero() };
|
||||||
|
const UNIT_FP: Fp = Fp { val: U256::one() };
|
||||||
|
|
||||||
fn exp_fp(x: Fp, e: U256) -> Fp {
|
fn exp_fp(x: Fp, e: U256) -> Fp {
|
||||||
let mut current = x;
|
let mut current = x;
|
||||||
@ -143,9 +144,14 @@ impl Div for Fp2 {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const FP2_ZERO: Fp2 = Fp2 {
|
const ZERO_FP2: Fp2 = Fp2 {
|
||||||
re: FP_ZERO,
|
re: ZERO_FP,
|
||||||
im: FP_ZERO,
|
im: ZERO_FP,
|
||||||
|
};
|
||||||
|
|
||||||
|
const UNIT_FP2: Fp2 = Fp2 {
|
||||||
|
re: UNIT_FP,
|
||||||
|
im: ZERO_FP,
|
||||||
};
|
};
|
||||||
|
|
||||||
fn conj_fp2(a: Fp2) -> Fp2 {
|
fn conj_fp2(a: Fp2) -> Fp2 {
|
||||||
@ -238,10 +244,16 @@ impl Div for Fp6 {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pub const FP6_ZERO: Fp6 = Fp6 {
|
pub const ZERO_FP6: Fp6 = Fp6 {
|
||||||
t0: FP2_ZERO,
|
t0: ZERO_FP2,
|
||||||
t1: FP2_ZERO,
|
t1: ZERO_FP2,
|
||||||
t2: FP2_ZERO,
|
t2: ZERO_FP2,
|
||||||
|
};
|
||||||
|
|
||||||
|
pub const UNIT_FP6: Fp6 = Fp6 {
|
||||||
|
t0: UNIT_FP2,
|
||||||
|
t1: ZERO_FP2,
|
||||||
|
t2: ZERO_FP2,
|
||||||
};
|
};
|
||||||
|
|
||||||
fn mul_fp2_fp6(x: Fp2, f: Fp6) -> Fp6 {
|
fn mul_fp2_fp6(x: Fp2, f: Fp6) -> Fp6 {
|
||||||
@ -298,15 +310,8 @@ impl Div for Fp12 {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pub const UNIT_FP12: Fp12 = Fp12 {
|
pub const UNIT_FP12: Fp12 = Fp12 {
|
||||||
z0: Fp6 {
|
z0: UNIT_FP6,
|
||||||
t0: Fp2 {
|
z1: ZERO_FP6,
|
||||||
re: Fp {val: U256::one()},
|
|
||||||
im: FP_ZERO
|
|
||||||
},
|
|
||||||
t1: FP2_ZERO,
|
|
||||||
t2: FP2_ZERO,
|
|
||||||
},
|
|
||||||
z1: FP6_ZERO,
|
|
||||||
};
|
};
|
||||||
|
|
||||||
pub fn inv_fp12(f: Fp12) -> Fp12 {
|
pub fn inv_fp12(f: Fp12) -> Fp12 {
|
||||||
@ -317,16 +322,16 @@ fn sparse_embed(g000: Fp, g01: Fp2, g11: Fp2) -> Fp12 {
|
|||||||
let g0 = Fp6 {
|
let g0 = Fp6 {
|
||||||
t0: Fp2 {
|
t0: Fp2 {
|
||||||
re: g000,
|
re: g000,
|
||||||
im: FP_ZERO,
|
im: ZERO_FP,
|
||||||
},
|
},
|
||||||
t1: g01,
|
t1: g01,
|
||||||
t2: FP2_ZERO,
|
t2: ZERO_FP2,
|
||||||
};
|
};
|
||||||
|
|
||||||
let g1 = Fp6 {
|
let g1 = Fp6 {
|
||||||
t0: FP2_ZERO,
|
t0: ZERO_FP2,
|
||||||
t1: g11,
|
t1: g11,
|
||||||
t2: FP2_ZERO,
|
t2: ZERO_FP2,
|
||||||
};
|
};
|
||||||
|
|
||||||
Fp12 { z0: g0, z1: g1 }
|
Fp12 { z0: g0, z1: g1 }
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user