mirror of
https://github.com/logos-storage/plonky2.git
synced 2026-01-08 16:53:07 +00:00
name
This commit is contained in:
parent
053a0206f1
commit
de8637ce8c
@ -731,6 +731,8 @@ pub fn miller_loop(p: Curve, q: TwistedCurve) -> Fp12 {
|
||||
pub fn tate(p: Curve, q: TwistedCurve) -> Fp12 {
|
||||
let mut out = miller_loop(p, q);
|
||||
|
||||
println!("POSTMILLER: {:#?}", out);
|
||||
|
||||
let inv = inv_fp12(out);
|
||||
out = frob_fp12(6, out);
|
||||
out = mul_fp12(out, inv);
|
||||
@ -738,7 +740,12 @@ pub fn tate(p: Curve, q: TwistedCurve) -> Fp12 {
|
||||
let acc = frob_fp12(2, out);
|
||||
out = mul_fp12(out, acc);
|
||||
|
||||
println!("PREPOWER: {:#?}", out);
|
||||
|
||||
let pow = power(out);
|
||||
|
||||
println!("POWER: {:#?}", pow);
|
||||
|
||||
out = frob_fp12(3, out);
|
||||
|
||||
mul_fp12(out, pow)
|
||||
|
||||
@ -1,11 +1,11 @@
|
||||
/// Note: uncomment this to test
|
||||
|
||||
global test_mul_fp12:
|
||||
// stack: inA, f, f', inB, g, g', mul_dest, inA, inB, out, ret_stack, out
|
||||
// stack: inA, f, f', inB, g, g', mul_dest, inA, inB, out, return_fp12_on_stack, out
|
||||
%store_fp12
|
||||
// stack: inB, g, g', mul_dest, inA, inB, out, ret_stack, out
|
||||
// stack: inB, g, g', mul_dest, inA, inB, out, return_fp12_on_stack, out
|
||||
%store_fp12
|
||||
// stack: mul_dest, inA, inB, out, ret_stack, out
|
||||
// stack: mul_dest, inA, inB, out, return_fp12_on_stack, out
|
||||
JUMP
|
||||
|
||||
///////////////////////////////////////
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
global test_pow:
|
||||
// stack: ptr, f, ptr, out, ret_stack, out
|
||||
// stack: ptr, f, ptr, out, return_fp12_on_stack, out
|
||||
%store_fp12
|
||||
// stack: ptr, out, ret_stack, out
|
||||
// stack: ptr, out, return_fp12_on_stack, out
|
||||
%jump(power)
|
||||
|
||||
/// def power(acc):
|
||||
|
||||
@ -1071,7 +1071,7 @@
|
||||
%mstore_kernel_general
|
||||
%endmacro
|
||||
|
||||
global ret_stack:
|
||||
global return_fp12_on_stack:
|
||||
// stack: out
|
||||
%load_fp12
|
||||
%jump(0xdeadbeef)
|
||||
|
||||
@ -46,7 +46,7 @@ fn make_mul_stack(f: Fp12, g: Fp12, mul_label: &str) -> Vec<U256> {
|
||||
in0,
|
||||
in1,
|
||||
out,
|
||||
make_label("ret_stack"),
|
||||
make_label("return_fp12_on_stack"),
|
||||
out,
|
||||
],
|
||||
])
|
||||
@ -133,7 +133,7 @@ fn test_power() -> Result<()> {
|
||||
let stack = make_stack(vec![
|
||||
vec![ptr],
|
||||
fp12_to_vec(f),
|
||||
vec![ptr, out, make_label("ret_stack"), out],
|
||||
vec![ptr, out, make_label("return_fp12_on_stack"), out],
|
||||
]);
|
||||
|
||||
let output: Vec<U256> = get_output("test_pow", stack);
|
||||
@ -151,9 +151,12 @@ fn make_tate_stack(p: Curve, q: TwistedCurve) -> Vec<U256> {
|
||||
let p_: Vec<U256> = p.into_iter().collect();
|
||||
let q_: Vec<U256> = q.into_iter().flatten().collect();
|
||||
|
||||
let ret_stack = make_label("ret_stack");
|
||||
|
||||
make_stack(vec![vec![ptr], p_, q_, vec![ptr, out, ret_stack, out]])
|
||||
make_stack(vec![
|
||||
vec![ptr],
|
||||
p_,
|
||||
q_,
|
||||
vec![ptr, out, make_label("return_fp12_on_stack"), out],
|
||||
])
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user