From 3425391a091e4ddaf4508e223bff84e91bbbef30 Mon Sep 17 00:00:00 2001 From: Dmitry Vagner Date: Wed, 22 Mar 2023 10:57:26 -0700 Subject: [PATCH] more comments --- evm/src/extension_tower.rs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/evm/src/extension_tower.rs b/evm/src/extension_tower.rs index 00e396b4..2d6ff6ed 100644 --- a/evm/src/extension_tower.rs +++ b/evm/src/extension_tower.rs @@ -370,8 +370,13 @@ impl Div for Fp2 { } } -/// Helper function which multiplies by the Fp2 element -/// whose cube root we will adjoin in the next extension +/// This trait defines the method which multiplies +/// by the Fp2 element t^3 whose cube root we will +/// adjoin in the subsequent cubic extension. +/// For BN254 this is 9+i, and for BLS381 it is 1+i. +/// It also defines the relevant FROB constants, +/// given by t^(p^n) and t^(p^2n) for various n, +/// used to compute the frobenius operations. pub trait Adj: Sized { fn mul_adj(self) -> Self; const FROB_T: [[Self; 6]; 2];