feat: start working on add for polynomial
This commit is contained in:
parent
6e33e2e44c
commit
6431a6636e
1 changed files with 16 additions and 4 deletions
|
|
@ -1,6 +1,6 @@
|
|||
use std::{
|
||||
env::args,
|
||||
ops::{Add, Mul},
|
||||
ops::{Add, BitXor, Mul},
|
||||
};
|
||||
|
||||
use anyhow::{anyhow, Ok, Result};
|
||||
|
|
@ -73,9 +73,13 @@ impl Mul for Polynomial {
|
|||
impl Add for Polynomial {
|
||||
type Output = Self;
|
||||
fn add(self, rhs: Self) -> Self::Output {
|
||||
FieldElement::new(
|
||||
xor_bytes(&self.field_element, rhs.field_element).expect("Error in poly add"),
|
||||
)
|
||||
for i in 0..self.polynomial.len() {
|
||||
for j in 0..rhs.polynomial.len() {
|
||||
polynomial[i + j] = &polynomial[i + j]
|
||||
+ &(self.polynomial.get(i).unwrap() * rhs.polynomial.get(j).unwrap());
|
||||
}
|
||||
}
|
||||
Polynomial::new(polynomial)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -169,6 +173,14 @@ impl Clone for FieldElement {
|
|||
}
|
||||
}
|
||||
|
||||
/*
|
||||
impl BitXor for FieldElement {
|
||||
fn bitxor(self, rhs: Self) -> Self::Output {
|
||||
FieldElement
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
impl From<Vec<u8>> for FieldElement {
|
||||
fn from(item: Vec<u8>) -> Self {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue