-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Added Fq2 functions and related changes (Only the file groups.cairo) #27
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good work, minor adjustments, looks clean (I assume they pass tests). Let's now use these group operations in the verifier. They are mainly being used in the optimal_ate_utils.cairo file. Utilize the new group operations and report the new step count from making these changes.
.next(from_u256(rhs.x.c0.c0.clone())) | ||
.next(from_u256(rhs.x.c1.c0.clone())) | ||
.next(from_u256(rhs.y.c0.c0.clone())) | ||
.next(from_u256(rhs.y.c1.c0.clone())) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we need to clone here? Did we use rhs beforehand?
let fq1_x0 = from_u256(x2.c0.c0.clone()); | ||
let fq1_x1 = from_u256(x2.c1.c0.clone()); | ||
|
||
let slope_a = from_u256(slope.c0.c0.clone()); | ||
let slope_b = from_u256(slope.c1.c0.clone()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same as above
let fq1_x0 = from_u256(x.c0.c0.clone()); | ||
let fq1_x1 = from_u256(x.c1.c0.clone()); | ||
|
||
let slope_a = from_u256(slope.c0.c0.clone()); | ||
let slope_b = from_u256(slope.c1.c0.clone()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
^^
let fq1_x0 = from_u256(rhs.x.c0.c0.clone()); | ||
let fq1_x1 = from_u256(rhs.x.c1.c0.clone()); | ||
let fq1_y0 = from_u256(rhs.y.c0.c0.clone()); | ||
let fq1_y1 = from_u256(rhs.y.c1.c0.clone()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
^^
@@ -263,6 +275,971 @@ impl AffineOpsFqCircuit of ECOperationsCircuitFq { | |||
} | |||
} | |||
|
|||
impl AffineOpsFq2Circuit of ECOperationsCircuitFq2{ | |||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
rm line break
In this file are included the fq2 function :