Skip to content
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

feat: finite fields #376

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

finite field prototype

ed5c087
Select commit
Loading
Failed to load commit list.
Sign in for the full log view
Draft

feat: finite fields #376

finite field prototype
ed5c087
Select commit
Loading
Failed to load commit list.
GitHub Actions / clippy failed Oct 23, 2024 in 1s

reviewdog [clippy] report

reported by reviewdog 🐶

Findings (36)

lib/crypto/src/biginteger/mod.rs|4 col 5| error[E0433]: failed to resolve: use of undeclared crate or module std
--> lib/crypto/src/biginteger/mod.rs:4:5
|
4 | use std::ops::AddAssign;
| ^^^ use of undeclared crate or module std
lib/crypto/src/biginteger/mod.rs|260 col 38| error[E0433]: failed to resolve: use of undeclared crate or module std
--> lib/crypto/src/biginteger/mod.rs:260:38
|
260 | fn find_wnaf(&self, w: usize) -> std::option::Option<std::vec::Vec> {
| ^^^ use of undeclared crate or module std
|
help: consider importing one of these modules
|
3 + use core::option;
|
3 + use ark_std::option;
|
help: if you import option, refer to it directly
|
260 - fn find_wnaf(&self, w: usize) -> std::option::Option<std::vec::Vec> {
260 + fn find_wnaf(&self, w: usize) -> option::Option<std::vec::Vec> {
|
lib/crypto/src/biginteger/mod.rs|260 col 58| error[E0433]: failed to resolve: use of undeclared crate or module std
--> lib/crypto/src/biginteger/mod.rs:260:58
|
260 | fn find_wnaf(&self, w: usize) -> std::option::Option<std::vec::Vec> {
| ^^^ use of undeclared crate or module std
|
help: consider importing one of these modules
|
3 + use alloc::vec;
|
3 + use ark_ff::vec;
|
3 + use ark_std::vec;
|
help: if you import vec, refer to it directly
|
260 - fn find_wnaf(&self, w: usize) -> std::option::Option<std::vec::Vec> {
260 + fn find_wnaf(&self, w: usize) -> std::option::Option<vec::Vec> {
|
lib/crypto/src/bits.rs|54 col 29| error[E0412]: cannot find type Vec in this scope
--> lib/crypto/src/bits.rs:54:29
|
54 | pub fn bytes_to_bits(bytes: Vec) -> impl Iterator<Item = bool> {
| ^^^ not found in this scope
|
help: consider importing one of these structs
|
1 + use alloc::vec::Vec;
|
1 + use ark_ff::vec::Vec;
|
1 + use ark_std::vec::Vec;
|
lib/crypto/src/biginteger/mod.rs|7 col 5| warning: unused imports: UpperHex and borrow::Borrow
--> lib/crypto/src/biginteger/mod.rs:7:5
|
7 | borrow::Borrow,
| ^^^^^^^^^^^^^^
8 | fmt::{Debug, Display, UpperHex},
| ^^^^^^^^
|
= note: #[warn(unused_imports)] on by default
lib/crypto/src/biginteger/mod.rs|16 col 5| warning: unused import: num_traits::ToBytes
--> lib/crypto/src/biginteger/mod.rs:16:5
|
16 | use num_traits::ToBytes;
| ^^^^^^^^^^^^^^^^^^^
lib/crypto/src/field/sqrt.rs|63 col 25| warning: 7 bindings with single-character names in scope
--> lib/crypto/src/field/sqrt.rs:63:25
|
63 | let mut z = *quadratic_nonresidue_to_trace;
| ^
64 | let mut w = elem.pow(trace_of_modulus_minus_one_div_two);
| ^
65 | let mut x = w * elem;
| ^
66 | let mut b = x * &w;
| ^
67 |
68 | let mut v = *two_adicity as usize;
| ^
...
71 | let mut k = 0usize;
| ^
...
86 | let j = v - k;
| ^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names
= note: -W clippy::many-single-char-names implied by -W clippy::pedantic
= help: to override -W clippy::pedantic add #[allow(clippy::many_single_char_names)]
lib/crypto/src/field/sqrt.rs|63 col 25| warning: 5 bindings with single-character names in scope
--> lib/crypto/src/field/sqrt.rs:63:25
|
63 | let mut z = *quadratic_nonresidue_to_trace;
| ^
64 | let mut w = elem.pow(trace_of_modulus_minus_one_div_two);
| ^
65 | let mut x = w * elem;
| ^
66 | let mut b = x * &w;
| ^
67 |
68 | let mut v = *two_adicity as usize;
| ^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names
lib/crypto/src/field/fft.rs|63 col 35| error[E0277]: the trait bound [u64; 1]: bits::BitIterator is not satisfied
--> lib/crypto/src/field/fft.rs:63:35
|
63 | omega = omega.pow([q as u64]);
| --- ^^^^^^^^^^ the trait bits::BitIterator is not implemented for [u64; 1]
| |
| required by a bound introduced by this call
|
= help: the trait bits::BitIterator is implemented for ruint::Uint<BITS, LIMBS>
note: required by a bound in field::Field::pow
--> lib/crypto/src/field/mod.rs:197:15
|
197 | fn pow<S: BitIterator>(&self, exp: S) -> Self {
| ^^^^^^^^^^^ required by this bound in Field::pow
lib/crypto/src/field/sqrt.rs|64 col 38| error[E0277]: the trait bound &&[u64]: bits::BitIterator is not satisfied
--> lib/crypto/src/field/sqrt.rs:64:38
|
64 | let mut w = elem.pow(trace_of_modulus_minus_one_div_two);
| --- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait bits::BitIterator is not implemented for &&[u64]
| |
| required by a bound introduced by this call
|
= help: the trait bits::BitIterator is implemented for ruint::Uint<BITS, LIMBS>
note: required by a bound in field::Field::pow
--> lib/crypto/src/field/mod.rs:197:15
|
197 | fn pow<S: BitIterator>(&self, exp: S) -> Self {
| ^^^^^^^^^^^ required by this bound in Field::pow
lib/crypto/src/field/sqrt.rs|111 col 39| error[E0277]: the trait bound &[u64]: bits::BitIterator is not satisfied
--> lib/crypto/src/field/sqrt.rs:111:39
|
111 | let result = elem.pow(modulus_plus_one_div_four.as_ref());
| --- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait bits::BitIterator is not implemented for &[u64]
| |
| required by a bound introduced by this call
|
= help: the trait bits::BitIterator is implemented for ruint::Uint<BITS, LIMBS>
note: required by a bound in field::Field::pow
--> lib/crypto/src/field/mod.rs:197:15
|
197 | fn pow<S: BitIterator>(&self, exp: S) -> Self {
| ^^^^^^^^^^^ required by this bound in Field::pow
lib/crypto/src/biginteger/const_ops.rs|6 col 5| warning: unused variable: value
--> lib/crypto/src/biginteger/const_ops.rs:6:5
|
6 | value: [u64; LIMBS],
| ^^^^^ help: if this is intentional, prefix it with an underscore: _value
|
= note: #[warn(unused_variables)] on by default
lib/crypto/src/biginteger/const_ops.rs|52 col 5| warning: unused variable: num
--> lib/crypto/src/biginteger/const_ops.rs:52:5
|
52 | num: &Uint<BITS, LIMBS>,
| ^^^ help: if this is intentional, prefix it with an underscore: _num
lib/crypto/src/biginteger/const_ops.rs|68 col 5| warning: unused variable: num
--> lib/crypto/src/biginteger/const_ops.rs:68:5
|
68 | num: &Uint<BITS, LIMBS>,
| ^^^ help: if this is intentional, prefix it with an underscore: _num
lib/crypto/src/biginteger/const_ops.rs|69 col 5| warning: unused variable: other
--> lib/crypto/src/biginteger/const_ops.rs:69:5
|
69 | other: &Uint<BITS, LIMBS>,
| ^^^^^ help: if this is intentional, prefix it with an underscore: _other
lib/crypto/src/biginteger/const_ops.rs|88 col 9| warning: unused variable: num
--> lib/crypto/src/biginteger/const_ops.rs:88:9
|
88 | mut num: Uint<BITS, LIMBS>,
| ^^^ help: if this is intentional, prefix it with an underscore: _num
lib/crypto/src/biginteger/const_ops.rs|88 col 5| warning: variable does not need to be mutable
--> lib/crypto/src/biginteger/const_ops.rs:88:5
|
88 | mut num: Uint<BITS, LIMBS>,
| ----^^^
| |
| help: remove this mut
|
= note: #[warn(unused_mut)] on by default
lib/crypto/src/biginteger/const_ops.rs|107 col 9| warning: unused variable: num
--> lib/crypto/src/biginteger/const_ops.rs:107:9
|
107 | mut num: Uint<BITS, LIMBS>,
| ^^^ help: if this is intentional, prefix it with an underscore: _num
lib/crypto/src/biginteger/const_ops.rs|107 col 5| warning: variable does not need to be mutable
--> lib/crypto/src/biginteger/const_ops.rs:107:5
|
107 | mut num: Uint<BITS, LIMBS>,
| ----^^^
| |
| help: remove this mut
lib/crypto/src/biginteger/const_ops.rs|126 col 9| warning: unused variable: num
--> lib/crypto/src/biginteger/const_ops.rs:126:9
|
126 | mut num: Uint<BITS, LIMBS>,
| ^^^ help: if this is intentional, prefix it with an underscore: _num
lib/crypto/src/biginteger/const_ops.rs|126 col 5| warning: variable does not need to be mutable
--> lib/crypto/src/biginteger/const_ops.rs:126:5
|
126 | mut num: Uint<BITS, LIMBS>,
| ----^^^
| |
| help: remove this mut
lib/crypto/src/biginteger/const_ops.rs|138 col 5| warning: unused variable: num
--> lib/crypto/src/biginteger/const_ops.rs:138:5
|
138 | num: Uint<BITS, LIMBS>,
| ^^^ help: if this is intentional, prefix it with an underscore: _num
lib/crypto/src/biginteger/const_ops.rs|149 col 9| warning: unused variable: num
--> lib/crypto/src/biginteger/const_ops.rs:149:9
|
149 | mut num: Uint<BITS, LIMBS>,
| ^^^ help: if this is intentional, prefix it with an underscore: _num
lib/crypto/src/biginteger/const_ops.rs|150 col 5| warning: unused variable: other
--> lib/crypto/src/biginteger/const_ops.rs:150:5
|
150 | other: &Uint<BITS, LIMBS>,
| ^^^^^ help: if this is intentional, prefix it with an underscore: _other
lib/crypto/src/biginteger/const_ops.rs|149 col 5| warning: variable does not need to be mutable
--> lib/crypto/src/biginteger/const_ops.rs:149:5
|
149 | mut num: Uint<BITS, LIMBS>,
| ----^^^
| |
| help: remove this mut
lib/crypto/src/biginteger/const_ops.rs|167 col 9| warning: unused variable: num
--> lib/crypto/src/biginteger/const_ops.rs:167:9
|
167 | mut num: Uint<BITS, LIMBS>,
| ^^^ help: if this is intentional, prefix it with an underscore: _num
lib/crypto/src/biginteger/const_ops.rs|168 col 5| warning: unused variable: other
--> lib/crypto/src/biginteger/const_ops.rs:168:5
|
168 | other: &Uint<BITS, LIMBS>,
| ^^^^^ help: if this is intentional, prefix it with an underscore: _other
lib/crypto/src/biginteger/const_ops.rs|167 col 5| warning: variable does not need to be mutable
--> lib/crypto/src/biginteger/const_ops.rs:167:5
|
167 | mut num: Uint<BITS, LIMBS>,
| ----^^^
| |
| help: remove this mut
lib/crypto/src/biginteger/const_ops.rs|181 col 9| warning: unused variable: num
--> lib/crypto/src/biginteger/const_ops.rs:181:9
|
181 | mut num: Uint<BITS, LIMBS>,
| ^^^ help: if this is intentional, prefix it with an underscore: _num
lib/crypto/src/biginteger/const_ops.rs|181 col 5| warning: variable does not need to be mutable
--> lib/crypto/src/biginteger/const_ops.rs:181:5
|
181 | mut num: Uint<BITS, LIMBS>,
| ----^^^
| |
| help: remove this mut
lib/crypto/src/biginteger/const_ops.rs|196 col 5| warning: unused variable: num
--> lib/crypto/src/biginteger/const_ops.rs:196:5
|
196 | num: &Uint<BITS, LIMBS>,
| ^^^ help: if this is intentional, prefix it with an underscore: _num
lib/crypto/src/biginteger/const_ops.rs|209 col 5| warning: unused variable: num
--> lib/crypto/src/biginteger/const_ops.rs:209:5
|
209 | num: &Uint<BITS, LIMBS>,
| ^^^ help: if this is intentional, prefix it with an underscore: _num
lib/crypto/src/biginteger/const_ops.rs|219 col 5| warning: unused variable: num
--> lib/crypto/src/biginteger/const_ops.rs:219:5
|
219 | num: &Uint<BITS, LIMBS>,
| ^^^ help: if this is intentional, prefix it with an underscore: _num
lib/crypto/src/biginteger/mod.rs|202 col 23| warning: unused variable: other
--> lib/crypto/src/biginteger/mod.rs:202:23
|
202 | fn mul_low(&self, other: &Self) -> Self {
| ^^^^^ help: if this is intentional, prefix it with an underscore: _other
lib/crypto/src/biginteger/mod.rs|206 col 24| warning: unused variable: other
--> lib/crypto/src/biginteger/mod.rs:206:24
|
206 | fn mul_high(&self, other: &Self) -> Self {
| ^^^^^ help: if this is intentional, prefix it with an underscore: _other
lib/crypto/src/biginteger/mod.rs|210 col 19| warning: unused variable: other
--> lib/crypto/src/biginteger/mod.rs:210:19
|
210 | fn mul(&self, other: &Self) -> (Self, Self) {
| ^^^^^ help: if this is intentional, prefix it with an underscore: _other

Filtered Findings (0)

Annotations

Check failure on line 4 in lib/crypto/src/biginteger/mod.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/biginteger/mod.rs#L4

error[E0433]: failed to resolve: use of undeclared crate or module `std`
 --> lib/crypto/src/biginteger/mod.rs:4:5
  |
4 | use std::ops::AddAssign;
  |     ^^^ use of undeclared crate or module `std`
Raw output
lib/crypto/src/biginteger/mod.rs:4:5:e:error[E0433]: failed to resolve: use of undeclared crate or module `std`
 --> lib/crypto/src/biginteger/mod.rs:4:5
  |
4 | use std::ops::AddAssign;
  |     ^^^ use of undeclared crate or module `std`


__END__

Check failure on line 260 in lib/crypto/src/biginteger/mod.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/biginteger/mod.rs#L260

error[E0433]: failed to resolve: use of undeclared crate or module `std`
   --> lib/crypto/src/biginteger/mod.rs:260:38
    |
260 |     fn find_wnaf(&self, w: usize) -> std::option::Option<std::vec::Vec<i64>> {
    |                                      ^^^ use of undeclared crate or module `std`
    |
help: consider importing one of these modules
    |
3   + use core::option;
    |
3   + use ark_std::option;
    |
help: if you import `option`, refer to it directly
    |
260 -     fn find_wnaf(&self, w: usize) -> std::option::Option<std::vec::Vec<i64>> {
260 +     fn find_wnaf(&self, w: usize) -> option::Option<std::vec::Vec<i64>> {
    |
Raw output
lib/crypto/src/biginteger/mod.rs:260:38:e:error[E0433]: failed to resolve: use of undeclared crate or module `std`
   --> lib/crypto/src/biginteger/mod.rs:260:38
    |
260 |     fn find_wnaf(&self, w: usize) -> std::option::Option<std::vec::Vec<i64>> {
    |                                      ^^^ use of undeclared crate or module `std`
    |
help: consider importing one of these modules
    |
3   + use core::option;
    |
3   + use ark_std::option;
    |
help: if you import `option`, refer to it directly
    |
260 -     fn find_wnaf(&self, w: usize) -> std::option::Option<std::vec::Vec<i64>> {
260 +     fn find_wnaf(&self, w: usize) -> option::Option<std::vec::Vec<i64>> {
    |


__END__

Check failure on line 260 in lib/crypto/src/biginteger/mod.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/biginteger/mod.rs#L260

error[E0433]: failed to resolve: use of undeclared crate or module `std`
   --> lib/crypto/src/biginteger/mod.rs:260:58
    |
260 |     fn find_wnaf(&self, w: usize) -> std::option::Option<std::vec::Vec<i64>> {
    |                                                          ^^^ use of undeclared crate or module `std`
    |
help: consider importing one of these modules
    |
3   + use alloc::vec;
    |
3   + use ark_ff::vec;
    |
3   + use ark_std::vec;
    |
help: if you import `vec`, refer to it directly
    |
260 -     fn find_wnaf(&self, w: usize) -> std::option::Option<std::vec::Vec<i64>> {
260 +     fn find_wnaf(&self, w: usize) -> std::option::Option<vec::Vec<i64>> {
    |
Raw output
lib/crypto/src/biginteger/mod.rs:260:58:e:error[E0433]: failed to resolve: use of undeclared crate or module `std`
   --> lib/crypto/src/biginteger/mod.rs:260:58
    |
260 |     fn find_wnaf(&self, w: usize) -> std::option::Option<std::vec::Vec<i64>> {
    |                                                          ^^^ use of undeclared crate or module `std`
    |
help: consider importing one of these modules
    |
3   + use alloc::vec;
    |
3   + use ark_ff::vec;
    |
3   + use ark_std::vec;
    |
help: if you import `vec`, refer to it directly
    |
260 -     fn find_wnaf(&self, w: usize) -> std::option::Option<std::vec::Vec<i64>> {
260 +     fn find_wnaf(&self, w: usize) -> std::option::Option<vec::Vec<i64>> {
    |


__END__

Check failure on line 54 in lib/crypto/src/bits.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/bits.rs#L54

error[E0412]: cannot find type `Vec` in this scope
  --> lib/crypto/src/bits.rs:54:29
   |
54 | pub fn bytes_to_bits(bytes: Vec<u8>) -> impl Iterator<Item = bool> {
   |                             ^^^ not found in this scope
   |
help: consider importing one of these structs
   |
1  + use alloc::vec::Vec;
   |
1  + use ark_ff::vec::Vec;
   |
1  + use ark_std::vec::Vec;
   |
Raw output
lib/crypto/src/bits.rs:54:29:e:error[E0412]: cannot find type `Vec` in this scope
  --> lib/crypto/src/bits.rs:54:29
   |
54 | pub fn bytes_to_bits(bytes: Vec<u8>) -> impl Iterator<Item = bool> {
   |                             ^^^ not found in this scope
   |
help: consider importing one of these structs
   |
1  + use alloc::vec::Vec;
   |
1  + use ark_ff::vec::Vec;
   |
1  + use ark_std::vec::Vec;
   |


__END__

Check warning on line 7 in lib/crypto/src/biginteger/mod.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/biginteger/mod.rs#L7

warning: unused imports: `UpperHex` and `borrow::Borrow`
 --> lib/crypto/src/biginteger/mod.rs:7:5
  |
7 |     borrow::Borrow,
  |     ^^^^^^^^^^^^^^
8 |     fmt::{Debug, Display, UpperHex},
  |                           ^^^^^^^^
  |
  = note: `#[warn(unused_imports)]` on by default
Raw output
lib/crypto/src/biginteger/mod.rs:7:5:w:warning: unused imports: `UpperHex` and `borrow::Borrow`
 --> lib/crypto/src/biginteger/mod.rs:7:5
  |
7 |     borrow::Borrow,
  |     ^^^^^^^^^^^^^^
8 |     fmt::{Debug, Display, UpperHex},
  |                           ^^^^^^^^
  |
  = note: `#[warn(unused_imports)]` on by default


__END__

Check warning on line 16 in lib/crypto/src/biginteger/mod.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/biginteger/mod.rs#L16

warning: unused import: `num_traits::ToBytes`
  --> lib/crypto/src/biginteger/mod.rs:16:5
   |
16 | use num_traits::ToBytes;
   |     ^^^^^^^^^^^^^^^^^^^
Raw output
lib/crypto/src/biginteger/mod.rs:16:5:w:warning: unused import: `num_traits::ToBytes`
  --> lib/crypto/src/biginteger/mod.rs:16:5
   |
16 | use num_traits::ToBytes;
   |     ^^^^^^^^^^^^^^^^^^^


__END__

Check warning on line 63 in lib/crypto/src/field/sqrt.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/field/sqrt.rs#L63

warning: 7 bindings with single-character names in scope
  --> lib/crypto/src/field/sqrt.rs:63:25
   |
63 |                 let mut z = *quadratic_nonresidue_to_trace;
   |                         ^
64 |                 let mut w = elem.pow(trace_of_modulus_minus_one_div_two);
   |                         ^
65 |                 let mut x = w * elem;
   |                         ^
66 |                 let mut b = x * &w;
   |                         ^
67 |
68 |                 let mut v = *two_adicity as usize;
   |                         ^
...
71 |                     let mut k = 0usize;
   |                             ^
...
86 |                     let j = v - k;
   |                         ^
   |
   = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names
   = note: `-W clippy::many-single-char-names` implied by `-W clippy::pedantic`
   = help: to override `-W clippy::pedantic` add `#[allow(clippy::many_single_char_names)]`
Raw output
lib/crypto/src/field/sqrt.rs:63:25:w:warning: 7 bindings with single-character names in scope
  --> lib/crypto/src/field/sqrt.rs:63:25
   |
63 |                 let mut z = *quadratic_nonresidue_to_trace;
   |                         ^
64 |                 let mut w = elem.pow(trace_of_modulus_minus_one_div_two);
   |                         ^
65 |                 let mut x = w * elem;
   |                         ^
66 |                 let mut b = x * &w;
   |                         ^
67 |
68 |                 let mut v = *two_adicity as usize;
   |                         ^
...
71 |                     let mut k = 0usize;
   |                             ^
...
86 |                     let j = v - k;
   |                         ^
   |
   = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names
   = note: `-W clippy::many-single-char-names` implied by `-W clippy::pedantic`
   = help: to override `-W clippy::pedantic` add `#[allow(clippy::many_single_char_names)]`


__END__

Check warning on line 63 in lib/crypto/src/field/sqrt.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/field/sqrt.rs#L63

warning: 5 bindings with single-character names in scope
  --> lib/crypto/src/field/sqrt.rs:63:25
   |
63 |                 let mut z = *quadratic_nonresidue_to_trace;
   |                         ^
64 |                 let mut w = elem.pow(trace_of_modulus_minus_one_div_two);
   |                         ^
65 |                 let mut x = w * elem;
   |                         ^
66 |                 let mut b = x * &w;
   |                         ^
67 |
68 |                 let mut v = *two_adicity as usize;
   |                         ^
   |
   = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names
Raw output
lib/crypto/src/field/sqrt.rs:63:25:w:warning: 5 bindings with single-character names in scope
  --> lib/crypto/src/field/sqrt.rs:63:25
   |
63 |                 let mut z = *quadratic_nonresidue_to_trace;
   |                         ^
64 |                 let mut w = elem.pow(trace_of_modulus_minus_one_div_two);
   |                         ^
65 |                 let mut x = w * elem;
   |                         ^
66 |                 let mut b = x * &w;
   |                         ^
67 |
68 |                 let mut v = *two_adicity as usize;
   |                         ^
   |
   = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names


__END__

Check failure on line 63 in lib/crypto/src/field/fft.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/field/fft.rs#L63

error[E0277]: the trait bound `[u64; 1]: bits::BitIterator` is not satisfied
   --> lib/crypto/src/field/fft.rs:63:35
    |
63  |                 omega = omega.pow([q as u64]);
    |                               --- ^^^^^^^^^^ the trait `bits::BitIterator` is not implemented for `[u64; 1]`
    |                               |
    |                               required by a bound introduced by this call
    |
    = help: the trait `bits::BitIterator` is implemented for `ruint::Uint<BITS, LIMBS>`
note: required by a bound in `field::Field::pow`
   --> lib/crypto/src/field/mod.rs:197:15
    |
197 |     fn pow<S: BitIterator>(&self, exp: S) -> Self {
    |               ^^^^^^^^^^^ required by this bound in `Field::pow`
Raw output
lib/crypto/src/field/fft.rs:63:35:e:error[E0277]: the trait bound `[u64; 1]: bits::BitIterator` is not satisfied
   --> lib/crypto/src/field/fft.rs:63:35
    |
63  |                 omega = omega.pow([q as u64]);
    |                               --- ^^^^^^^^^^ the trait `bits::BitIterator` is not implemented for `[u64; 1]`
    |                               |
    |                               required by a bound introduced by this call
    |
    = help: the trait `bits::BitIterator` is implemented for `ruint::Uint<BITS, LIMBS>`
note: required by a bound in `field::Field::pow`
   --> lib/crypto/src/field/mod.rs:197:15
    |
197 |     fn pow<S: BitIterator>(&self, exp: S) -> Self {
    |               ^^^^^^^^^^^ required by this bound in `Field::pow`


__END__

Check failure on line 64 in lib/crypto/src/field/sqrt.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/field/sqrt.rs#L64

error[E0277]: the trait bound `&&[u64]: bits::BitIterator` is not satisfied
   --> lib/crypto/src/field/sqrt.rs:64:38
    |
64  |                 let mut w = elem.pow(trace_of_modulus_minus_one_div_two);
    |                                  --- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `bits::BitIterator` is not implemented for `&&[u64]`
    |                                  |
    |                                  required by a bound introduced by this call
    |
    = help: the trait `bits::BitIterator` is implemented for `ruint::Uint<BITS, LIMBS>`
note: required by a bound in `field::Field::pow`
   --> lib/crypto/src/field/mod.rs:197:15
    |
197 |     fn pow<S: BitIterator>(&self, exp: S) -> Self {
    |               ^^^^^^^^^^^ required by this bound in `Field::pow`
Raw output
lib/crypto/src/field/sqrt.rs:64:38:e:error[E0277]: the trait bound `&&[u64]: bits::BitIterator` is not satisfied
   --> lib/crypto/src/field/sqrt.rs:64:38
    |
64  |                 let mut w = elem.pow(trace_of_modulus_minus_one_div_two);
    |                                  --- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `bits::BitIterator` is not implemented for `&&[u64]`
    |                                  |
    |                                  required by a bound introduced by this call
    |
    = help: the trait `bits::BitIterator` is implemented for `ruint::Uint<BITS, LIMBS>`
note: required by a bound in `field::Field::pow`
   --> lib/crypto/src/field/mod.rs:197:15
    |
197 |     fn pow<S: BitIterator>(&self, exp: S) -> Self {
    |               ^^^^^^^^^^^ required by this bound in `Field::pow`


__END__

Check failure on line 111 in lib/crypto/src/field/sqrt.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/field/sqrt.rs#L111

error[E0277]: the trait bound `&[u64]: bits::BitIterator` is not satisfied
   --> lib/crypto/src/field/sqrt.rs:111:39
    |
111 |                 let result = elem.pow(modulus_plus_one_div_four.as_ref());
    |                                   --- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `bits::BitIterator` is not implemented for `&[u64]`
    |                                   |
    |                                   required by a bound introduced by this call
    |
    = help: the trait `bits::BitIterator` is implemented for `ruint::Uint<BITS, LIMBS>`
note: required by a bound in `field::Field::pow`
   --> lib/crypto/src/field/mod.rs:197:15
    |
197 |     fn pow<S: BitIterator>(&self, exp: S) -> Self {
    |               ^^^^^^^^^^^ required by this bound in `Field::pow`
Raw output
lib/crypto/src/field/sqrt.rs:111:39:e:error[E0277]: the trait bound `&[u64]: bits::BitIterator` is not satisfied
   --> lib/crypto/src/field/sqrt.rs:111:39
    |
111 |                 let result = elem.pow(modulus_plus_one_div_four.as_ref());
    |                                   --- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `bits::BitIterator` is not implemented for `&[u64]`
    |                                   |
    |                                   required by a bound introduced by this call
    |
    = help: the trait `bits::BitIterator` is implemented for `ruint::Uint<BITS, LIMBS>`
note: required by a bound in `field::Field::pow`
   --> lib/crypto/src/field/mod.rs:197:15
    |
197 |     fn pow<S: BitIterator>(&self, exp: S) -> Self {
    |               ^^^^^^^^^^^ required by this bound in `Field::pow`


__END__

Check warning on line 6 in lib/crypto/src/biginteger/const_ops.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/biginteger/const_ops.rs#L6

warning: unused variable: `value`
 --> lib/crypto/src/biginteger/const_ops.rs:6:5
  |
6 |     value: [u64; LIMBS],
  |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
  |
  = note: `#[warn(unused_variables)]` on by default
Raw output
lib/crypto/src/biginteger/const_ops.rs:6:5:w:warning: unused variable: `value`
 --> lib/crypto/src/biginteger/const_ops.rs:6:5
  |
6 |     value: [u64; LIMBS],
  |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
  |
  = note: `#[warn(unused_variables)]` on by default


__END__

Check warning on line 52 in lib/crypto/src/biginteger/const_ops.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/biginteger/const_ops.rs#L52

warning: unused variable: `num`
  --> lib/crypto/src/biginteger/const_ops.rs:52:5
   |
52 |     num: &Uint<BITS, LIMBS>,
   |     ^^^ help: if this is intentional, prefix it with an underscore: `_num`
Raw output
lib/crypto/src/biginteger/const_ops.rs:52:5:w:warning: unused variable: `num`
  --> lib/crypto/src/biginteger/const_ops.rs:52:5
   |
52 |     num: &Uint<BITS, LIMBS>,
   |     ^^^ help: if this is intentional, prefix it with an underscore: `_num`


__END__

Check warning on line 68 in lib/crypto/src/biginteger/const_ops.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/biginteger/const_ops.rs#L68

warning: unused variable: `num`
  --> lib/crypto/src/biginteger/const_ops.rs:68:5
   |
68 |     num: &Uint<BITS, LIMBS>,
   |     ^^^ help: if this is intentional, prefix it with an underscore: `_num`
Raw output
lib/crypto/src/biginteger/const_ops.rs:68:5:w:warning: unused variable: `num`
  --> lib/crypto/src/biginteger/const_ops.rs:68:5
   |
68 |     num: &Uint<BITS, LIMBS>,
   |     ^^^ help: if this is intentional, prefix it with an underscore: `_num`


__END__

Check warning on line 69 in lib/crypto/src/biginteger/const_ops.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/biginteger/const_ops.rs#L69

warning: unused variable: `other`
  --> lib/crypto/src/biginteger/const_ops.rs:69:5
   |
69 |     other: &Uint<BITS, LIMBS>,
   |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_other`
Raw output
lib/crypto/src/biginteger/const_ops.rs:69:5:w:warning: unused variable: `other`
  --> lib/crypto/src/biginteger/const_ops.rs:69:5
   |
69 |     other: &Uint<BITS, LIMBS>,
   |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_other`


__END__

Check warning on line 88 in lib/crypto/src/biginteger/const_ops.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/biginteger/const_ops.rs#L88

warning: unused variable: `num`
  --> lib/crypto/src/biginteger/const_ops.rs:88:9
   |
88 |     mut num: Uint<BITS, LIMBS>,
   |         ^^^ help: if this is intentional, prefix it with an underscore: `_num`
Raw output
lib/crypto/src/biginteger/const_ops.rs:88:9:w:warning: unused variable: `num`
  --> lib/crypto/src/biginteger/const_ops.rs:88:9
   |
88 |     mut num: Uint<BITS, LIMBS>,
   |         ^^^ help: if this is intentional, prefix it with an underscore: `_num`


__END__

Check warning on line 88 in lib/crypto/src/biginteger/const_ops.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/biginteger/const_ops.rs#L88

warning: variable does not need to be mutable
  --> lib/crypto/src/biginteger/const_ops.rs:88:5
   |
88 |     mut num: Uint<BITS, LIMBS>,
   |     ----^^^
   |     |
   |     help: remove this `mut`
   |
   = note: `#[warn(unused_mut)]` on by default
Raw output
lib/crypto/src/biginteger/const_ops.rs:88:5:w:warning: variable does not need to be mutable
  --> lib/crypto/src/biginteger/const_ops.rs:88:5
   |
88 |     mut num: Uint<BITS, LIMBS>,
   |     ----^^^
   |     |
   |     help: remove this `mut`
   |
   = note: `#[warn(unused_mut)]` on by default


__END__

Check warning on line 107 in lib/crypto/src/biginteger/const_ops.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/biginteger/const_ops.rs#L107

warning: unused variable: `num`
   --> lib/crypto/src/biginteger/const_ops.rs:107:9
    |
107 |     mut num: Uint<BITS, LIMBS>,
    |         ^^^ help: if this is intentional, prefix it with an underscore: `_num`
Raw output
lib/crypto/src/biginteger/const_ops.rs:107:9:w:warning: unused variable: `num`
   --> lib/crypto/src/biginteger/const_ops.rs:107:9
    |
107 |     mut num: Uint<BITS, LIMBS>,
    |         ^^^ help: if this is intentional, prefix it with an underscore: `_num`


__END__

Check warning on line 107 in lib/crypto/src/biginteger/const_ops.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/biginteger/const_ops.rs#L107

warning: variable does not need to be mutable
   --> lib/crypto/src/biginteger/const_ops.rs:107:5
    |
107 |     mut num: Uint<BITS, LIMBS>,
    |     ----^^^
    |     |
    |     help: remove this `mut`
Raw output
lib/crypto/src/biginteger/const_ops.rs:107:5:w:warning: variable does not need to be mutable
   --> lib/crypto/src/biginteger/const_ops.rs:107:5
    |
107 |     mut num: Uint<BITS, LIMBS>,
    |     ----^^^
    |     |
    |     help: remove this `mut`


__END__

Check warning on line 126 in lib/crypto/src/biginteger/const_ops.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/biginteger/const_ops.rs#L126

warning: unused variable: `num`
   --> lib/crypto/src/biginteger/const_ops.rs:126:9
    |
126 |     mut num: Uint<BITS, LIMBS>,
    |         ^^^ help: if this is intentional, prefix it with an underscore: `_num`
Raw output
lib/crypto/src/biginteger/const_ops.rs:126:9:w:warning: unused variable: `num`
   --> lib/crypto/src/biginteger/const_ops.rs:126:9
    |
126 |     mut num: Uint<BITS, LIMBS>,
    |         ^^^ help: if this is intentional, prefix it with an underscore: `_num`


__END__

Check warning on line 126 in lib/crypto/src/biginteger/const_ops.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/biginteger/const_ops.rs#L126

warning: variable does not need to be mutable
   --> lib/crypto/src/biginteger/const_ops.rs:126:5
    |
126 |     mut num: Uint<BITS, LIMBS>,
    |     ----^^^
    |     |
    |     help: remove this `mut`
Raw output
lib/crypto/src/biginteger/const_ops.rs:126:5:w:warning: variable does not need to be mutable
   --> lib/crypto/src/biginteger/const_ops.rs:126:5
    |
126 |     mut num: Uint<BITS, LIMBS>,
    |     ----^^^
    |     |
    |     help: remove this `mut`


__END__

Check warning on line 138 in lib/crypto/src/biginteger/const_ops.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/biginteger/const_ops.rs#L138

warning: unused variable: `num`
   --> lib/crypto/src/biginteger/const_ops.rs:138:5
    |
138 |     num: Uint<BITS, LIMBS>,
    |     ^^^ help: if this is intentional, prefix it with an underscore: `_num`
Raw output
lib/crypto/src/biginteger/const_ops.rs:138:5:w:warning: unused variable: `num`
   --> lib/crypto/src/biginteger/const_ops.rs:138:5
    |
138 |     num: Uint<BITS, LIMBS>,
    |     ^^^ help: if this is intentional, prefix it with an underscore: `_num`


__END__

Check warning on line 149 in lib/crypto/src/biginteger/const_ops.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/biginteger/const_ops.rs#L149

warning: unused variable: `num`
   --> lib/crypto/src/biginteger/const_ops.rs:149:9
    |
149 |     mut num: Uint<BITS, LIMBS>,
    |         ^^^ help: if this is intentional, prefix it with an underscore: `_num`
Raw output
lib/crypto/src/biginteger/const_ops.rs:149:9:w:warning: unused variable: `num`
   --> lib/crypto/src/biginteger/const_ops.rs:149:9
    |
149 |     mut num: Uint<BITS, LIMBS>,
    |         ^^^ help: if this is intentional, prefix it with an underscore: `_num`


__END__

Check warning on line 150 in lib/crypto/src/biginteger/const_ops.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/biginteger/const_ops.rs#L150

warning: unused variable: `other`
   --> lib/crypto/src/biginteger/const_ops.rs:150:5
    |
150 |     other: &Uint<BITS, LIMBS>,
    |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_other`
Raw output
lib/crypto/src/biginteger/const_ops.rs:150:5:w:warning: unused variable: `other`
   --> lib/crypto/src/biginteger/const_ops.rs:150:5
    |
150 |     other: &Uint<BITS, LIMBS>,
    |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_other`


__END__

Check warning on line 149 in lib/crypto/src/biginteger/const_ops.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] lib/crypto/src/biginteger/const_ops.rs#L149

warning: variable does not need to be mutable
   --> lib/crypto/src/biginteger/const_ops.rs:149:5
    |
149 |     mut num: Uint<BITS, LIMBS>,
    |     ----^^^
    |     |
    |     help: remove this `mut`
Raw output
lib/crypto/src/biginteger/const_ops.rs:149:5:w:warning: variable does not need to be mutable
   --> lib/crypto/src/biginteger/const_ops.rs:149:5
    |
149 |     mut num: Uint<BITS, LIMBS>,
    |     ----^^^
    |     |
    |     help: remove this `mut`


__END__