[INFO] cloning repository https://github.com/sp25-submission/vdf
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/sp25-submission/vdf" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsp25-submission%2Fvdf", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsp25-submission%2Fvdf'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 89ea8b733805b9b4182e75f2461fe27a0ec2fe4e
[INFO] testing sp25-submission/vdf against master#0d162b25edd5bf0dba9a22e83b614f1113e90474 for pr-150681
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsp25-submission%2Fvdf" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/sp25-submission/vdf
[INFO] finished tweaking git repo https://github.com/sp25-submission/vdf
[INFO] tweaked toml for git repo https://github.com/sp25-submission/vdf written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/sp25-submission/vdf on toolchain 0d162b25edd5bf0dba9a22e83b614f1113e90474
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/sp25-submission/vdf already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded thread-tree v0.3.3
[INFO] [stderr]   Downloaded plotters-svg v0.3.6
[INFO] [stderr]   Downloaded portable-atomic-util v0.2.2
[INFO] [stderr]   Downloaded plotters-backend v0.3.6
[INFO] [stderr]   Downloaded oorandom v11.1.4
[INFO] [stderr]   Downloaded clap v4.5.16
[INFO] [stderr]   Downloaded portable-atomic v1.7.0
[INFO] [stderr]   Downloaded plotters v0.3.6
[INFO] [stderr]   Downloaded clap_builder v4.5.15
[INFO] [stderr]   Downloaded rug v1.25.0
[INFO] [stderr]   Downloaded gmp-mpfr-sys v1.6.4
[INFO] [stderr]   Downloaded fast-modulo v0.4.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 98c505f0dfa5b98c03a312ea4885760b12d6a58a601349cec7d1652d6e6b15e0
[INFO] running `Command { std: "docker" "start" "-a" "98c505f0dfa5b98c03a312ea4885760b12d6a58a601349cec7d1652d6e6b15e0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "98c505f0dfa5b98c03a312ea4885760b12d6a58a601349cec7d1652d6e6b15e0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "98c505f0dfa5b98c03a312ea4885760b12d6a58a601349cec7d1652d6e6b15e0", kill_on_drop: false }`
[INFO] [stdout] 98c505f0dfa5b98c03a312ea4885760b12d6a58a601349cec7d1652d6e6b15e0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ce96571f6af49c914726c431da53a1f40679f9f54e37dc1dcf03bf08eb06ff4d
[INFO] running `Command { std: "docker" "start" "-a" "ce96571f6af49c914726c431da53a1f40679f9f54e37dc1dcf03bf08eb06ff4d", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.86
[INFO] [stderr]    Compiling libc v0.2.158
[INFO] [stderr]    Compiling crossbeam-utils v0.8.20
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling serde v1.0.209
[INFO] [stderr]    Compiling either v1.13.0
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling serde_json v1.0.127
[INFO] [stderr]    Compiling gmp-mpfr-sys v1.6.4
[INFO] [stderr]    Compiling matrixmultiply v0.3.9
[INFO] [stderr]    Compiling libm v0.2.8
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]    Compiling regex-syntax v0.8.4
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling itoa v1.0.11
[INFO] [stderr]    Compiling anstyle v1.0.8
[INFO] [stderr]    Compiling half v2.4.1
[INFO] [stderr]    Compiling clap_lex v0.7.2
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling ryu v1.0.18
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling plotters-backend v0.3.6
[INFO] [stderr]    Compiling once_cell v1.19.0
[INFO] [stderr]    Compiling az v1.2.1
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling plotters-svg v0.3.6
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling clap_builder v4.5.15
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling crossbeam-channel v0.5.13
[INFO] [stderr]    Compiling rawpointer v0.2.1
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]    Compiling crossbeam-deque v0.8.5
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling thread-tree v0.3.3
[INFO] [stderr]    Compiling num_cpus v1.16.0
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling syn v2.0.76
[INFO] [stderr]    Compiling rug v1.25.0
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling num-iter v0.1.45
[INFO] [stderr]    Compiling is-terminal v0.4.13
[INFO] [stderr]    Compiling plotters v0.3.6
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling rayon v1.10.0
[INFO] [stderr]    Compiling regex-automata v0.4.7
[INFO] [stderr]    Compiling clap v4.5.16
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling keccak v0.1.5
[INFO] [stderr]    Compiling iana-time-zone v0.1.61
[INFO] [stderr]    Compiling oorandom v11.1.4
[INFO] [stderr]    Compiling sha3 v0.10.8
[INFO] [stderr]    Compiling chrono v0.4.38
[INFO] [stderr]    Compiling num v0.4.3
[INFO] [stderr]    Compiling fast-modulo v0.4.0
[INFO] [stderr]    Compiling regex v1.10.6
[INFO] [stderr]    Compiling ndarray v0.16.1
[INFO] [stderr]    Compiling serde_derive v1.0.209
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling zerocopy v0.7.35
[INFO] [stderr]    Compiling ppv-lite86 v0.2.20
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling vdf-implementation v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `parallel_dot_matrix_matrix`, `parallel_dot_matrix_vector`, `reshape`, `sample_random_mat`, `sample_random_vector`, `zero_mat`, and `zero_vector`
[INFO] [stdout]  --> src/main.rs:1:55
[INFO] [stdout]   |
[INFO] [stdout] 1 | ...l, parallel_dot_matrix_matrix, parallel_dot_matrix_vector, reshape, sample_random_mat, sample_random_vector, zero_mat, zero_vector};
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/ring_i128.rs:2:13
[INFO] [stdout]   |
[INFO] [stdout] 2 | use serde::{Serialize, Deserialize};
[INFO] [stdout]   |             ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json`
[INFO] [stdout]  --> src/ring_i128.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde_json;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `choose_root_unity_fast`, `choose_root_unity`, `inverse_ntt_slow`, `karatsuba_mul`, `mod_inverse`, `polynomial_mul`, `reciprocal`, `reduce_quotient`, and `reduce_with_prime_cyclotomic_polynomial`
[INFO] [stdout]  --> src/ring_i128.rs:5:35
[INFO] [stdout]   |
[INFO] [stdout] 5 | ...::{choose_root_unity, reduce_quotient, reduce_quotient_and_cyclotomic, choose_root_unity_fast, inverse_ntt_slow, karatsuba_mul, polynomial_mul, mod_inverse, random, reciprocal, reduce_mod, reduce_mod_imbalanced, reduce_with_prime_cyclotomic_polynomial};
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^                                  ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^          ^^^^^^^^^^                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `V_COEFFS` and `V_INV_COEFFS`
[INFO] [stdout]  --> src/ring_i128.rs:7:128
[INFO] [stdout]   |
[INFO] [stdout] 7 | ...UCTOR_COMPOSITE, INV_BASIS, TWIST, TRACE_COEFFS, PHI, V_COEFFS, V_INV_COEFFS, CONJUGATE_MAP};
[INFO] [stdout]   |                                                          ^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LinalgScalar` and `s`
[INFO] [stdout]  --> src/ring_i128.rs:8:43
[INFO] [stdout]   |
[INFO] [stdout] 8 | use ndarray::{arr2, arr1, Array2, Array1, s, LinalgScalar};
[INFO] [stdout]   |                                           ^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MulAdd`
[INFO] [stdout]  --> src/ring_i128.rs:9:18
[INFO] [stdout]   |
[INFO] [stdout] 9 | use num_traits::{MulAdd, One, Zero};
[INFO] [stdout]   |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sha3::digest::Output`
[INFO] [stdout]  --> src/poly_arithmetic_i128.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use sha3::digest::Output;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BASE_INT`, `MOD_1`, and `MOD_Q`
[INFO] [stdout]  --> src/poly_arithmetic_i128.rs:3:23
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::r#static::{MOD_Q, MOD_1, BASE_INT};
[INFO] [stdout]   |                       ^^^^^  ^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MIN_POLY` and `PHI`
[INFO] [stdout]  --> src/poly_arithmetic_i128.rs:4:45
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::static_rings::static_generated::{MIN_POLY, PHI};
[INFO] [stdout]   |                                             ^^^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Mutex`
[INFO] [stdout]  --> src/poly_arithmetic_i128.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::sync::Mutex;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> src/poly_arithmetic_i128.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `zero`
[INFO] [stdout]  --> src/poly_arithmetic_i128.rs:9:18
[INFO] [stdout]   |
[INFO] [stdout] 9 | use num_traits::{zero, Zero};
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::ring_i128::RingElement`
[INFO] [stdout]   --> src/poly_arithmetic_i128.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::ring_i128::RingElement;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:403:38
[INFO] [stdout]     |
[INFO] [stdout] 403 | ...hecked((a_odd[i] as u128 + mod_q as u128 + mulmod_u64(powmod_u64(root_unity, i as u64, mod_q), a_even[i], mod_q) as u128), mod_q);
[INFO] [stdout]     |           ^                                                                                                                ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 403 -         a[i] = mod_u128u64_unchecked((a_odd[i] as u128 + mod_q as u128 + mulmod_u64(powmod_u64(root_unity, i as u64, mod_q), a_even[i], mod_q) as u128), mod_q);
[INFO] [stdout] 403 +         a[i] = mod_u128u64_unchecked(a_odd[i] as u128 + mod_q as u128 + mulmod_u64(powmod_u64(root_unity, i as u64, mod_q), a_even[i], mod_q) as u128 , mod_q);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:404:47
[INFO] [stdout]     |
[INFO] [stdout] 404 | ...hecked((a_odd[i] as u128 + mod_q as u128 - mulmod_u64(powmod_u64(root_unity, i as u64, mod_q), a_even[i], mod_q) as u128), mod_q);
[INFO] [stdout]     |           ^                                                                                                                ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 404 -         a[i + n / 2]  = mod_u128u64_unchecked((a_odd[i] as u128 + mod_q as u128 - mulmod_u64(powmod_u64(root_unity, i as u64, mod_q), a_even[i], mod_q) as u128), mod_q);
[INFO] [stdout] 404 +         a[i + n / 2]  = mod_u128u64_unchecked(a_odd[i] as u128 + mod_q as u128 - mulmod_u64(powmod_u64(root_unity, i as u64, mod_q), a_even[i], mod_q) as u128 , mod_q);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:584:65
[INFO] [stdout]     |
[INFO] [stdout] 584 |     let root_unity = choose_root_unity(a.len(), mod_q).unwrap();;
[INFO] [stdout]     |                                                                 ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `BASE_INT` should have an upper camel case name
[INFO] [stdout]   --> src/static.rs:87:10
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub type BASE_INT = i128;
[INFO] [stdout]    |          ^^^^^^^^ help: convert the identifier to upper camel case: `BaseInt`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `GEN_TYPE` should have an upper camel case name
[INFO] [stdout]  --> src/static_rings/static_generated.rs:1:6
[INFO] [stdout]   |
[INFO] [stdout] 1 | type GEN_TYPE = i128;
[INFO] [stdout]   |      ^^^^^^^^ help: convert the identifier to upper camel case: `GenType`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LOG_BIG_Q`, `LOG_Q`, `MOD_1`, `MOD_Q`, and `N_DIM`
[INFO] [stdout]  --> src/root_of_unity.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::r#static::{BASE_INT, LOG_BIG_Q, LOG_Q, MOD_1, MOD_Q, N_DIM};
[INFO] [stdout]   |                                 ^^^^^^^^^  ^^^^^  ^^^^^  ^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::Sum`
[INFO] [stdout]  --> src/arithmetic.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::iter::Sum;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ndarray::Array1`
[INFO] [stdout]  --> src/vdf.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ndarray::Array1;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::arithmetic`
[INFO] [stdout]  --> src/vdf.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::arithmetic;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `add_matrices`, `parallel_dot_matrix_matrix`, `reshape`, `sample_random_mat`, `sample_random_vector`, `zero_mat`, and `zero_vector`
[INFO] [stdout]  --> src/vdf.rs:3:25
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...::{add_matrices, parallel_dot_matrix_matrix, reshape, parallel_dot_matrix_vector, sample_random_mat, sample_random_vector, zero_vector, zero_mat, v...
[INFO] [stdout]   |       ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^                              ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::crs::CRS`
[INFO] [stdout]  --> src/vdf.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::crs::CRS;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::helpers::println_with_timestamp`
[INFO] [stdout]  --> src/vdf.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::helpers::println_with_timestamp;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TIME`
[INFO] [stdout]  --> src/vdf.rs:6:43
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::r#static::{LOG_Q, MODULE_SIZE, TIME};
[INFO] [stdout]   |                                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `get_g`, `tensor_identity_matrix_with_matrix`, and `transpose`
[INFO] [stdout]  --> src/vdf.rs:7:27
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::ring_helpers::{get_g, tensor_identity_matrix_with_matrix, tensor_identity_matrix_with_vector, transpose};
[INFO] [stdout]   |                           ^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Ring`
[INFO] [stdout]  --> src/vdf.rs:8:24
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::ring_i128::{Ring, RingElement};
[INFO] [stdout]   |                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::arithmetic::parallel_dot_matrix_vector`
[INFO] [stdout]  --> src/ring_helpers.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::arithmetic::parallel_dot_matrix_vector;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LOG_Q` and `MODULE_SIZE`
[INFO] [stdout]  --> src/ring_helpers.rs:3:23
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::r#static::{LOG_Q, MODULE_SIZE};
[INFO] [stdout]   |                       ^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ring_inner_product`
[INFO] [stdout]  --> src/ring_helpers.rs:4:30
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::ring_i128::{Ring, ring_inner_product, RingElement};
[INFO] [stdout]   |                              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/ring_helpers.rs:176:58
[INFO] [stdout]     |
[INFO] [stdout] 176 |                     result[i * rows + r][j * cols + c] = (if i == j { matrix[r][c] } else { T::zero() });
[INFO] [stdout]     |                                                          ^                                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 176 -                     result[i * rows + r][j * cols + c] = (if i == j { matrix[r][c] } else { T::zero() });
[INFO] [stdout] 176 +                     result[i * rows + r][j * cols + c] = if i == j { matrix[r][c] } else { T::zero() } ;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Ring`
[INFO] [stdout]  --> src/crs.rs:1:25
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{ring_i128::{Ring, RingElement}, r#static::{LOG_Q}};
[INFO] [stdout]   |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sample_random_vector`
[INFO] [stdout]  --> src/crs.rs:2:44
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::arithmetic::{sample_random_mat, sample_random_vector, sample_random_vector_non_real};
[INFO] [stdout]   |                                            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::ring_helpers::transpose`
[INFO] [stdout]  --> src/crs.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::ring_helpers::transpose;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `add_matrices`, `last_n_columns`, `row_wise_tensor`, and `sample_random_mat`
[INFO] [stdout]  --> src/subroutines/split.rs:4:25
[INFO] [stdout]   |
[INFO] [stdout] 4 | ...::{add_matrices, columns, fast_power, first_n_columns, last_n_columns, parallel_dot_matrix_matrix, row_wise_tensor, sample_random_mat};
[INFO] [stdout]   |       ^^^^^^^^^^^^                                        ^^^^^^^^^^^^^^                              ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::crs::gen_crs`
[INFO] [stdout]  --> src/subroutines/split.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::crs::gen_crs;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CHUNK_SIZE`
[INFO] [stdout]  --> src/subroutines/split.rs:7:23
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::r#static::{CHUNK_SIZE, LOG_Q, MODULE_SIZE};
[INFO] [stdout]   |                       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude::*`
[INFO] [stdout]  --> src/subroutines/fold.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use rayon::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sample_random_mat`
[INFO] [stdout]  --> src/subroutines/fold.rs:3:53
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::arithmetic::{parallel_dot_matrix_matrix, sample_random_mat};
[INFO] [stdout]   |                                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::crs::gen_crs`
[INFO] [stdout]  --> src/subroutines/fold.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::crs::gen_crs;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `parallel_dot_matrix_matrix`, `sample_random_mat`, and `split_into_submatrices_by_columns`
[INFO] [stdout]  --> src/subroutines/bdecomp.rs:4:42
[INFO] [stdout]   |
[INFO] [stdout] 4 | ...umns, parallel_dot_matrix_matrix, ring_very_parallel_dot_matrix_matrix, sample_random_mat, split_into_submatrices_by_columns, zip_...
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^^^^^^^^^^^^                                        ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::crs::gen_crs`
[INFO] [stdout]  --> src/subroutines/bdecomp.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::crs::gen_crs;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Ring`, `get_g`, and `ring_inner_product`
[INFO] [stdout]  --> src/subroutines/bdecomp.rs:9:24
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::ring_i128::{get_g, Ring, ring_inner_product, RingElement};
[INFO] [stdout]   |                        ^^^^^  ^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `sample_random_mat` and `split_into_submatrices_by_columns`
[INFO] [stdout]  --> src/subroutines/norm_first_round.rs:4:114
[INFO] [stdout]   |
[INFO] [stdout] 4 | ...n_columns, parallel_dot_matrix_matrix, sample_random_mat, split_into_submatrices_by_columns, zip_columns_horizontally};
[INFO] [stdout]   |                                           ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::crs::gen_crs`
[INFO] [stdout]  --> src/subroutines/norm_first_round.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::crs::gen_crs;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Ring` and `ring_inner_product`
[INFO] [stdout]  --> src/subroutines/norm_first_round.rs:9:24
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::ring_i128::{Ring, ring_inner_product, RingElement};
[INFO] [stdout]   |                        ^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `add_matrices`, `conjugate_vector`, `first_n_columns`, `last_n_columns`, `multiply_matrix_constant_in_place`, `sample_random_bin_mat`, `sample_random_mat`, and `split_into_submatrices_by_columns`
[INFO] [stdout]  --> src/subroutines/norm_second_round.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     add_matrices, compute_one_prefixed_power_series, compute_one_prefixed_zero_series,
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 4 |     conjugate_vector, first_n_columns, last_n_columns, multiply_matrix_constant_in_place,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 5 |     parallel_dot_matrix_matrix, sample_random_bin_mat, sample_random_mat,
[INFO] [stdout]   |                                 ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 6 |     split_into_submatrices_by_columns
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::crs::gen_crs`
[INFO] [stdout]  --> src/subroutines/norm_second_round.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::crs::gen_crs;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::subroutines::convolution::convolution`
[INFO] [stdout]   --> src/subroutines/norm_second_round.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::subroutines::convolution::convolution;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::subroutines::norm_first_round::norm_1`
[INFO] [stdout]   --> src/subroutines/norm_second_round.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::subroutines::norm_first_round::norm_1;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::ring_helpers::transpose`
[INFO] [stdout]   --> src/subroutines/norm_second_round.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::ring_helpers::transpose;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ring_inner_product`
[INFO] [stdout]   --> src/subroutines/norm_second_round.rs:13:30
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::ring_i128::{Ring, ring_inner_product, RingElement};
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Mutex`
[INFO] [stdout]  --> src/subroutines/convolution.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::Mutex;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `last_n_columns`, `sample_random_bin_mat`, and `sample_random_mat`
[INFO] [stdout]  --> src/subroutines/convolution.rs:6:25
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::arithmetic::{last_n_columns, sample_random_bin_mat, sample_random_mat};
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::helpers::println_with_timestamp`
[INFO] [stdout]  --> src/subroutines/convolution.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::helpers::println_with_timestamp;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `hadamard`, `inverse_ntt_pow_of_2`, and `ntt_pow_of_2`
[INFO] [stdout]  --> src/subroutines/convolution.rs:8:35
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::poly_arithmetic_i128::{hadamard, hadamard_64, inverse_ntt_pow_of_2, inverse_ntt_pow_of_2_fast, ntt_pow_of_2, ntt_pow_of_2_...
[INFO] [stdout]   |                                   ^^^^^^^^               ^^^^^^^^^^^^^^^^^^^^                             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CHUNKS`, `CHUNK_SIZE`, `LOG_Q`, `MODULE_SIZE`, and `TIME`
[INFO] [stdout]  --> src/subroutines/convolution.rs:9:33
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::r#static::{BASE_INT, CHUNK_SIZE, CHUNKS, LOG_Q, MOD_1, MODULE_SIZE, TIME};
[INFO] [stdout]   |                                 ^^^^^^^^^^  ^^^^^^  ^^^^^         ^^^^^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Ring`
[INFO] [stdout]   --> src/subroutines/convolution.rs:11:24
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::ring_i128::{Ring, RingElement};
[INFO] [stdout]    |                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sample_random_bin_mat`
[INFO] [stdout]  --> src/subroutines/verifier.rs:1:230
[INFO] [stdout]   |
[INFO] [stdout] 1 | ..._matrix, parallel_dot_matrix_vector, row_wise_tensor, sample_random_bin_mat, sample_random_constant_bin_mat, split_into_submatrice...
[INFO] [stdout]   |                                                          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CHUNK_SIZE`
[INFO] [stdout]  --> src/subroutines/verifier.rs:2:33
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::r#static::{BASE_INT, CHUNK_SIZE, CHUNKS, LOG_Q, MODULE_SIZE};
[INFO] [stdout]   |                                 ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]   --> src/poly_arithmetic_i128.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rayon::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]  --> src/subroutines/norm_second_round.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use rayon::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]  --> src/subroutines/split.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use rayon::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rhs`
[INFO] [stdout]   --> src/ring_i128.rs:45:18
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn div(self, rhs: Self) -> Self::Output {
[INFO] [stdout]    |                  ^^^ help: if this is intentional, prefix it with an underscore: `_rhs`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:191:9
[INFO] [stdout]     |
[INFO] [stdout] 191 |     let mut sum_a = add(low_a, high_a);
[INFO] [stdout]     |         ----^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:192:9
[INFO] [stdout]     |
[INFO] [stdout] 192 |     let mut sum_b = add(low_b, high_b);
[INFO] [stdout]     |         ----^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/arithmetic.rs:1553:9
[INFO] [stdout]      |
[INFO] [stdout] 1553 |     let mut cloned = coeffs.clone();
[INFO] [stdout]      |         ----^^^^^^
[INFO] [stdout]      |         |
[INFO] [stdout]      |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/vdf.rs:120:9
[INFO] [stdout]     |
[INFO] [stdout] 120 |     let mut squeeze_vector  = powers(&challenge, MODULE_SIZE);
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/vdf.rs:121:9
[INFO] [stdout]     |
[INFO] [stdout] 121 |     let mut squeeze_vector_0  = squeeze_vector.clone();
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/crs.rs:25:10
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let (v, v_inv) = (
[INFO] [stdout]    |          ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v_inv`
[INFO] [stdout]   --> src/crs.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let (v, v_inv) = (
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_v_inv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/subroutines/convolution.rs:56:17
[INFO] [stdout]    |
[INFO] [stdout] 56 |             let mut v = t.to_vec();
[INFO] [stdout]    |                 ----^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/subroutines/convolution.rs:67:17
[INFO] [stdout]    |
[INFO] [stdout] 67 |             let mut v = t.to_vec();
[INFO] [stdout]    |                 ----^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/subroutines/convolution.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |     let mut extended_a: Vec<Vec<u64>> = a
[INFO] [stdout]    |         ----^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/subroutines/convolution.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let mut extended_b: Vec<Vec<u64>> = b
[INFO] [stdout]    |         ----^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `now`
[INFO] [stdout]   --> src/subroutines/convolution.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let now = Instant::now();
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_now`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `now`
[INFO] [stdout]   --> src/subroutines/convolution.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let now =   Instant::now();
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_now`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/protocol.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 |     let mut commitment = parallel_dot_matrix_matrix(&crs.ck, &witness);
[INFO] [stdout]    |         ----^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `random_bin` is never used
[INFO] [stdout]    --> src/ring_i128.rs:269:12
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl Ring {
[INFO] [stdout]     | --------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 269 |     pub fn random_bin() -> RingElement {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reshape` is never used
[INFO] [stdout]    --> src/ring_i128.rs:289:8
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub fn reshape(vec: Vec<RingElement>, chunks_size: usize) -> Vec<Vec<RingElement>> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_g` is never used
[INFO] [stdout]    --> src/ring_i128.rs:293:8
[INFO] [stdout]     |
[INFO] [stdout] 293 | pub fn get_g(size: usize) -> Vec<RingElement> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reduce_quotient_generic` is never used
[INFO] [stdout]   --> src/poly_arithmetic_i128.rs:62:8
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub fn reduce_quotient_generic<A: Zero + Div<Output=A> + Sub<Output=A> + Add<Output=A> + Mul<Output=A> + Copy>(a: &[A], b: &[A]) -> ...
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reduce_quotient_and_cyclotomic_generic` is never used
[INFO] [stdout]   --> src/poly_arithmetic_i128.rs:85:8
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub fn reduce_quotient_and_cyclotomic_generic<A: Zero + Div<Output=A> + Sub<Output=A> + Add<Output=A> + Mul<Output=A> + Copy>(a: &[A...
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reduce_with_prime_cyclotomic_polynomial` is never used
[INFO] [stdout]   --> src/poly_arithmetic_i128.rs:94:8
[INFO] [stdout]    |
[INFO] [stdout] 94 | pub fn reduce_with_prime_cyclotomic_polynomial(a: &RingElement32, conductor: usize)-> Vec<i128> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reduce_with_quasiprime_cyclotomic_polynomial_generic` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:113:8
[INFO] [stdout]     |
[INFO] [stdout] 113 | pub fn reduce_with_quasiprime_cyclotomic_polynomial_generic<A: Zero + Sub<Output=A> + Add<Output=A> + Mul<Output=A> + Copy>(a: &[A]...
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `karatsuba_mul` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub fn karatsuba_mul(a: &RingElement32, b: &RingElement32, mod_q: Option<i128>) -> Vec<i128> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `karatsuba_mul_generic` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:171:8
[INFO] [stdout]     |
[INFO] [stdout] 171 | pub fn karatsuba_mul_generic<A: Zero + Sub<Output=A> + Add<Output=A> + Mul<Output=A> + Copy>(a: &[A], b: &[A]) -> Vec<A> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_in_place` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:225:8
[INFO] [stdout]     |
[INFO] [stdout] 225 | pub fn add_in_place(a: &mut RingElement32, b: &RingElement32) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hadamard` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:232:8
[INFO] [stdout]     |
[INFO] [stdout] 232 | pub fn hadamard(a: &RingElement32, b: &RingElement32) -> Vec<i128> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `polynomial_mul` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:266:8
[INFO] [stdout]     |
[INFO] [stdout] 266 | pub fn polynomial_mul(a: &RingElement32, b: &RingElement32, mod_q: Option<i128>) -> Vec<i128> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `polynomial_mul_generic` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:284:8
[INFO] [stdout]     |
[INFO] [stdout] 284 | pub fn polynomial_mul_generic<A: Zero + Sub<Output=A> + Add<Output=A> + Mul<Output=A> + Copy>(a: &[A], b: &[A]) -> Vec<A> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `choose_root_unity` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:297:8
[INFO] [stdout]     |
[INFO] [stdout] 297 | pub fn choose_root_unity(n: usize, mod_q: i128) -> Option<i128> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extended_euclidean` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:317:8
[INFO] [stdout]     |
[INFO] [stdout] 317 | pub fn extended_euclidean(a: i128, b: i128) -> (i128, i128, i128) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mod_inverse` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:326:8
[INFO] [stdout]     |
[INFO] [stdout] 326 | pub fn mod_inverse(a: i128, m: i128) -> i128 {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `choose_root_unity_fast` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:331:8
[INFO] [stdout]     |
[INFO] [stdout] 331 | pub fn choose_root_unity_fast(n: usize, mod_q: i128) -> Option<i128> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ntt_pow_of_2` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:343:8
[INFO] [stdout]     |
[INFO] [stdout] 343 | pub fn ntt_pow_of_2(a: &mut [i128], mod_q: i128, root_unity: i128) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `inverse_ntt_pow_of_2` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:410:8
[INFO] [stdout]     |
[INFO] [stdout] 410 | pub fn inverse_ntt_pow_of_2(a: &mut RingElement32, mod_q: i128, root_unity: i128) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `modpow` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:486:8
[INFO] [stdout]     |
[INFO] [stdout] 486 | pub fn modpow(mut base: i128, mut exp: i128, modulus: i128) -> i128 {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `modpow_64` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:500:8
[INFO] [stdout]     |
[INFO] [stdout] 500 | pub fn modpow_64(mut base: u64, mut exp: u64, modulus: u64) -> u64 {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ntt_slow` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:513:8
[INFO] [stdout]     |
[INFO] [stdout] 513 | pub fn ntt_slow(input: &RingElement32, root: i128, modulo:i128) -> Vec<i128> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `inverse_ntt_slow` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:528:8
[INFO] [stdout]     |
[INFO] [stdout] 528 | pub fn inverse_ntt_slow(input: &RingElement32, root: i128, modulo:i128) -> Vec<i128> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reciprocal` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:534:8
[INFO] [stdout]     |
[INFO] [stdout] 534 | pub fn reciprocal(n: i128, modulo: i128) -> i128 {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cyclic_mul_schoolbook` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:556:8
[INFO] [stdout]     |
[INFO] [stdout] 556 | pub fn cyclic_mul_schoolbook(a: &RingElement32, b: &RingElement32) -> Vec<i128>  {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cyclic_mul_karatsuba` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:562:8
[INFO] [stdout]     |
[INFO] [stdout] 562 | pub fn cyclic_mul_karatsuba(a: &RingElement32, b: &RingElement32) -> Vec<i128>  {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cyclic_mul_ntt_pow_of_2` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:568:8
[INFO] [stdout]     |
[INFO] [stdout] 568 | pub fn cyclic_mul_ntt_pow_of_2(a: &RingElement32, b: &RingElement32, mod_q: i128) -> Vec<i128>  {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cyclic_mul_ntt_slow` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:583:8
[INFO] [stdout]     |
[INFO] [stdout] 583 | pub fn cyclic_mul_ntt_slow(a: &RingElement32, b: &RingElement32, mod_q: i128) -> Vec<i128>  {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `trace` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:597:8
[INFO] [stdout]     |
[INFO] [stdout] 597 | pub fn trace(a: &RingElement32) -> i128  {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `conjugate` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:613:8
[INFO] [stdout]     |
[INFO] [stdout] 613 | pub fn conjugate(a: &RingElement32) -> Vec<i128> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `CONDUCTOR` is never used
[INFO] [stdout]   --> src/static.rs:74:12
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub static CONDUCTOR: usize = 257;
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `BIG_MOD_Q` is never used
[INFO] [stdout]   --> src/static.rs:82:12
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub static BIG_MOD_Q: &str = "1324325423464534264434434342342342342345325346352367564534123546753";
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `LOG_BIG_Q` is never used
[INFO] [stdout]   --> src/static.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub static  LOG_BIG_Q: usize = 220;
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `N_DIM` is never used
[INFO] [stdout]   --> src/static.rs:85:12
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub static N_DIM: usize = 10;
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `CONVERSION_FACTOR` is never used
[INFO] [stdout]   --> src/static_rings/static_generated.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub static CONVERSION_FACTOR: [GEN_TYPE; 21] = [
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `CIRCULANT_QUOTIENT` is never used
[INFO] [stdout]   --> src/static_rings/static_generated.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub static CIRCULANT_QUOTIENT: [GEN_TYPE; 25] = [
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parallel_dot_matrix_matrix_many_columns` is never used
[INFO] [stdout]    --> src/arithmetic.rs:295:8
[INFO] [stdout]     |
[INFO] [stdout] 295 | pub fn parallel_dot_matrix_matrix_many_columns<T>(matrix_a: &Vec<Vec<T>>, matrix_b: &Vec<Vec<T>>) -> Vec<Vec<T>>
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sample_random_bin_mat` is never used
[INFO] [stdout]    --> src/arithmetic.rs:334:8
[INFO] [stdout]     |
[INFO] [stdout] 334 | pub fn sample_random_bin_mat(n: usize, m: usize) -> Vec<Vec<RingElement>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sample_random_constant_ss_mat` is never used
[INFO] [stdout]    --> src/arithmetic.rs:349:8
[INFO] [stdout]     |
[INFO] [stdout] 349 | pub fn sample_random_constant_ss_mat(n: usize, m: usize) -> Vec<Vec<RingElement>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sample_random_bin_vec` is never used
[INFO] [stdout]    --> src/arithmetic.rs:363:8
[INFO] [stdout]     |
[INFO] [stdout] 363 | pub fn sample_random_bin_vec(n: usize) -> Vec<RingElement> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `zero_mat` is never used
[INFO] [stdout]    --> src/arithmetic.rs:379:8
[INFO] [stdout]     |
[INFO] [stdout] 379 | pub fn zero_mat(n: usize, m: usize) -> Vec<Vec<RingElement>> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `zero_vector` is never used
[INFO] [stdout]    --> src/arithmetic.rs:415:8
[INFO] [stdout]     |
[INFO] [stdout] 415 | pub fn zero_vector(size: usize) -> Vec<RingElement> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ntt_mul` is never used
[INFO] [stdout]    --> src/arithmetic.rs:574:8
[INFO] [stdout]     |
[INFO] [stdout] 574 | pub fn ntt_mul(a: &RingElement, b: &RingElement) -> RingElement {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `polynomial_mul_parallel` is never used
[INFO] [stdout]    --> src/arithmetic.rs:604:8
[INFO] [stdout]     |
[INFO] [stdout] 604 | pub fn polynomial_mul_parallel(a: &[i128], b: &[i128], mod_q: Option<i128>) -> Vec<i128> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sub` is never used
[INFO] [stdout]    --> src/arithmetic.rs:700:8
[INFO] [stdout]     |
[INFO] [stdout] 700 | pub fn sub<T>(a: &[T], b: &[T]) -> Vec<T>
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add` is never used
[INFO] [stdout]    --> src/arithmetic.rs:738:8
[INFO] [stdout]     |
[INFO] [stdout] 738 | pub fn add<T>(a: &[T], b: &[T]) -> Vec<T>
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `one_mat` is never used
[INFO] [stdout]     --> src/arithmetic.rs:1834:8
[INFO] [stdout]      |
[INFO] [stdout] 1834 | pub fn one_mat(rows: usize, cols: usize) -> Vec<Vec<RingElement>> {
[INFO] [stdout]      |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `conjugate_matrix` is never used
[INFO] [stdout]     --> src/arithmetic.rs:1860:8
[INFO] [stdout]      |
[INFO] [stdout] 1860 | pub fn conjugate_matrix(series: &Vec<Vec<RingElement>>) -> Vec<Vec<RingElement>> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `conjugate_vector` is never used
[INFO] [stdout]     --> src/arithmetic.rs:1875:8
[INFO] [stdout]      |
[INFO] [stdout] 1875 | pub fn conjugate_vector(row: &Vec<RingElement>) -> Vec<RingElement> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `inverse_vector` is never used
[INFO] [stdout]     --> src/arithmetic.rs:1888:8
[INFO] [stdout]      |
[INFO] [stdout] 1888 | pub fn inverse_vector(row: &Vec<RingElement>) -> Vec<RingElement> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PowerSeries` is never constructed
[INFO] [stdout]     --> src/arithmetic.rs:2046:12
[INFO] [stdout]      |
[INFO] [stdout] 2046 | pub struct PowerSeries {
[INFO] [stdout]      |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tensor_identity_matrix_with_matrix` is never used
[INFO] [stdout]    --> src/ring_helpers.rs:161:8
[INFO] [stdout]     |
[INFO] [stdout] 161 | pub fn tensor_identity_matrix_with_matrix<T>(matrix: &Vec<Vec<T>>, rank: usize) -> Vec<Vec<T>>
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chunk_witness` is never used
[INFO] [stdout]    --> src/ring_helpers.rs:252:8
[INFO] [stdout]     |
[INFO] [stdout] 252 | pub fn chunk_witness<T: Clone>(vec: &Vec<T>, n: usize) -> Vec<Vec<T>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_chunk_witness_large_vector` is never used
[INFO] [stdout]    --> src/ring_helpers.rs:294:4
[INFO] [stdout]     |
[INFO] [stdout] 294 | fn test_chunk_witness_large_vector() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `challenge_set` is never read
[INFO] [stdout]   --> src/crs.rs:12:16
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct CRS {
[INFO] [stdout]    |            --- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pub(crate) challenge_set: Vec<RingElement>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FoldOutput` is never constructed
[INFO] [stdout]  --> src/subroutines/fold.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct FoldOutput {
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `convoluted_witness` is never read
[INFO] [stdout]   --> src/subroutines/norm_first_round.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct Norm1Output {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 14 |     pub convoluted_witness: Vec<Vec<RingElement>>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/ring_i128.rs:290:38
[INFO] [stdout]     |
[INFO] [stdout] 290 |     vec.chunks(chunks_size).map(|c| c.clone().to_vec()).collect()
[INFO] [stdout]     |                                      ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `[RingElement]` does not implement `Clone`, so calling `clone` on `&[RingElement]` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:461:15
[INFO] [stdout]     |
[INFO] [stdout] 461 |         while *ai < 0 {
[INFO] [stdout]     |               ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:529:32
[INFO] [stdout]     |
[INFO] [stdout] 529 |     let output = ntt_slow(input.clone(), reciprocal(root, modulo), modulo);
[INFO] [stdout]     |                                ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `[i128]` does not implement `Clone`, so calling `clone` on `&[i128]` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `G` should have a snake case name
[INFO] [stdout]    --> src/vdf.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 122 |     let G = tensor_identity_matrix_with_vector(&crate::ring_helpers::get_g(LOG_Q), MODULE_SIZE);
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `g`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `len_C` should have a snake case name
[INFO] [stdout]   --> src/subroutines/split.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let len_C = if (n / chunk_size) % 2 == 0 { 0 * chunk_size } else { chunk_size };
[INFO] [stdout]    |         ^^^^^ help: convert the identifier to snake case (notice the capitalization): `len_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `len_L_R_adjusted` should have a snake case name
[INFO] [stdout]   --> src/subroutines/split.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 |     let len_L_R_adjusted = (n - len_C) / 2;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `len_l_r_adjusted`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `vec_L` should have a snake case name
[INFO] [stdout]   --> src/subroutines/split.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let vec_L = vec[0..len_L_R_adjusted].to_vec();
[INFO] [stdout]    |         ^^^^^ help: convert the identifier to snake case: `vec_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `vec_C` should have a snake case name
[INFO] [stdout]   --> src/subroutines/split.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |     let vec_C = vec[len_L_R_adjusted..len_L_R_adjusted + len_C].to_vec();
[INFO] [stdout]    |         ^^^^^ help: convert the identifier to snake case (notice the capitalization): `vec_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `vec_R` should have a snake case name
[INFO] [stdout]   --> src/subroutines/split.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |     let vec_R = vec[len_L_R_adjusted + len_C..].to_vec();
[INFO] [stdout]    |         ^^^^^ help: convert the identifier to snake case: `vec_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `len_L_R_adjusted` should have a snake case name
[INFO] [stdout]   --> src/subroutines/split.rs:97:74
[INFO] [stdout]    |
[INFO] [stdout] 97 | ... &Vec<Vec<RingElement>>, len_L_R_adjusted: usize, len_C: usize, first_multiplier: &RingElement) -> Vec<RingElement> {
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `len_l_r_adjusted`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `len_C` should have a snake case name
[INFO] [stdout]   --> src/subroutines/split.rs:97:99
[INFO] [stdout]    |
[INFO] [stdout] 97 | ..._L_R_adjusted: usize, len_C: usize, first_multiplier: &RingElement) -> Vec<RingElement> {
[INFO] [stdout]    |                          ^^^^^ help: convert the identifier to snake case (notice the capitalization): `len_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `len_C` should have a snake case name
[INFO] [stdout]   --> src/subroutines/verifier.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 |     let len_C = if (n / chunk_size) % 2 == 0 { 0 * chunk_size } else { chunk_size };
[INFO] [stdout]    |         ^^^^^ help: convert the identifier to snake case (notice the capitalization): `len_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `len_L_R_adjusted` should have a snake case name
[INFO] [stdout]   --> src/subroutines/verifier.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 67 |     let len_L_R_adjusted = (n - len_C) / 2;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `len_l_r_adjusted`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [optimized + debuginfo] target(s) in 6m 01s
[INFO] running `Command { std: "docker" "inspect" "ce96571f6af49c914726c431da53a1f40679f9f54e37dc1dcf03bf08eb06ff4d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ce96571f6af49c914726c431da53a1f40679f9f54e37dc1dcf03bf08eb06ff4d", kill_on_drop: false }`
[INFO] [stdout] ce96571f6af49c914726c431da53a1f40679f9f54e37dc1dcf03bf08eb06ff4d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7f1cdaaf6960d580f976cf06f8d171f3f6eb982c537792cb6450409d97a14d44
[INFO] running `Command { std: "docker" "start" "-a" "7f1cdaaf6960d580f976cf06f8d171f3f6eb982c537792cb6450409d97a14d44", kill_on_drop: false }`
[INFO] [stderr]    Compiling vdf-implementation v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `parallel_dot_matrix_matrix`, `parallel_dot_matrix_vector`, `reshape`, `sample_random_mat`, `sample_random_vector`, `zero_mat`, and `zero_vector`
[INFO] [stdout]  --> src/main.rs:1:55
[INFO] [stdout]   |
[INFO] [stdout] 1 | ...l, parallel_dot_matrix_matrix, parallel_dot_matrix_vector, reshape, sample_random_mat, sample_random_vector, zero_mat, zero_vector};
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/ring_i128.rs:2:13
[INFO] [stdout]   |
[INFO] [stdout] 2 | use serde::{Serialize, Deserialize};
[INFO] [stdout]   |             ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json`
[INFO] [stdout]  --> src/ring_i128.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde_json;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `choose_root_unity_fast`, `choose_root_unity`, `inverse_ntt_slow`, `karatsuba_mul`, `mod_inverse`, `polynomial_mul`, `reciprocal`, `reduce_quotient`, and `reduce_with_prime_cyclotomic_polynomial`
[INFO] [stdout]  --> src/ring_i128.rs:5:35
[INFO] [stdout]   |
[INFO] [stdout] 5 | ...::{choose_root_unity, reduce_quotient, reduce_quotient_and_cyclotomic, choose_root_unity_fast, inverse_ntt_slow, karatsuba_mul, polynomial_mul, mod_inverse, random, reciprocal, reduce_mod, reduce_mod_imbalanced, reduce_with_prime_cyclotomic_polynomial};
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^                                  ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^          ^^^^^^^^^^                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `V_COEFFS` and `V_INV_COEFFS`
[INFO] [stdout]  --> src/ring_i128.rs:7:128
[INFO] [stdout]   |
[INFO] [stdout] 7 | ...UCTOR_COMPOSITE, INV_BASIS, TWIST, TRACE_COEFFS, PHI, V_COEFFS, V_INV_COEFFS, CONJUGATE_MAP};
[INFO] [stdout]   |                                                          ^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LinalgScalar` and `s`
[INFO] [stdout]  --> src/ring_i128.rs:8:43
[INFO] [stdout]   |
[INFO] [stdout] 8 | use ndarray::{arr2, arr1, Array2, Array1, s, LinalgScalar};
[INFO] [stdout]   |                                           ^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MulAdd`
[INFO] [stdout]  --> src/ring_i128.rs:9:18
[INFO] [stdout]   |
[INFO] [stdout] 9 | use num_traits::{MulAdd, One, Zero};
[INFO] [stdout]   |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sha3::digest::Output`
[INFO] [stdout]  --> src/poly_arithmetic_i128.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use sha3::digest::Output;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BASE_INT`, `MOD_1`, and `MOD_Q`
[INFO] [stdout]  --> src/poly_arithmetic_i128.rs:3:23
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::r#static::{MOD_Q, MOD_1, BASE_INT};
[INFO] [stdout]   |                       ^^^^^  ^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MIN_POLY` and `PHI`
[INFO] [stdout]  --> src/poly_arithmetic_i128.rs:4:45
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::static_rings::static_generated::{MIN_POLY, PHI};
[INFO] [stdout]   |                                             ^^^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Mutex`
[INFO] [stdout]  --> src/poly_arithmetic_i128.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::sync::Mutex;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> src/poly_arithmetic_i128.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `zero`
[INFO] [stdout]  --> src/poly_arithmetic_i128.rs:9:18
[INFO] [stdout]   |
[INFO] [stdout] 9 | use num_traits::{zero, Zero};
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::ring_i128::RingElement`
[INFO] [stdout]   --> src/poly_arithmetic_i128.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::ring_i128::RingElement;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:403:38
[INFO] [stdout]     |
[INFO] [stdout] 403 | ...hecked((a_odd[i] as u128 + mod_q as u128 + mulmod_u64(powmod_u64(root_unity, i as u64, mod_q), a_even[i], mod_q) as u128), mod_q);
[INFO] [stdout]     |           ^                                                                                                                ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 403 -         a[i] = mod_u128u64_unchecked((a_odd[i] as u128 + mod_q as u128 + mulmod_u64(powmod_u64(root_unity, i as u64, mod_q), a_even[i], mod_q) as u128), mod_q);
[INFO] [stdout] 403 +         a[i] = mod_u128u64_unchecked(a_odd[i] as u128 + mod_q as u128 + mulmod_u64(powmod_u64(root_unity, i as u64, mod_q), a_even[i], mod_q) as u128 , mod_q);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:404:47
[INFO] [stdout]     |
[INFO] [stdout] 404 | ...hecked((a_odd[i] as u128 + mod_q as u128 - mulmod_u64(powmod_u64(root_unity, i as u64, mod_q), a_even[i], mod_q) as u128), mod_q);
[INFO] [stdout]     |           ^                                                                                                                ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 404 -         a[i + n / 2]  = mod_u128u64_unchecked((a_odd[i] as u128 + mod_q as u128 - mulmod_u64(powmod_u64(root_unity, i as u64, mod_q), a_even[i], mod_q) as u128), mod_q);
[INFO] [stdout] 404 +         a[i + n / 2]  = mod_u128u64_unchecked(a_odd[i] as u128 + mod_q as u128 - mulmod_u64(powmod_u64(root_unity, i as u64, mod_q), a_even[i], mod_q) as u128 , mod_q);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:584:65
[INFO] [stdout]     |
[INFO] [stdout] 584 |     let root_unity = choose_root_unity(a.len(), mod_q).unwrap();;
[INFO] [stdout]     |                                                                 ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `BASE_INT` should have an upper camel case name
[INFO] [stdout]   --> src/static.rs:87:10
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub type BASE_INT = i128;
[INFO] [stdout]    |          ^^^^^^^^ help: convert the identifier to upper camel case: `BaseInt`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `GEN_TYPE` should have an upper camel case name
[INFO] [stdout]  --> src/static_rings/static_generated.rs:1:6
[INFO] [stdout]   |
[INFO] [stdout] 1 | type GEN_TYPE = i128;
[INFO] [stdout]   |      ^^^^^^^^ help: convert the identifier to upper camel case: `GenType`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LOG_BIG_Q`, `LOG_Q`, `MOD_Q`, and `N_DIM`
[INFO] [stdout]  --> src/root_of_unity.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::r#static::{BASE_INT, LOG_BIG_Q, LOG_Q, MOD_1, MOD_Q, N_DIM};
[INFO] [stdout]   |                                 ^^^^^^^^^  ^^^^^         ^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::Sum`
[INFO] [stdout]  --> src/arithmetic.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::iter::Sum;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ndarray::Array1`
[INFO] [stdout]  --> src/vdf.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ndarray::Array1;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::crs::CRS`
[INFO] [stdout]  --> src/vdf.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::crs::CRS;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TIME`
[INFO] [stdout]  --> src/vdf.rs:6:43
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::r#static::{LOG_Q, MODULE_SIZE, TIME};
[INFO] [stdout]   |                                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MODULE_SIZE`
[INFO] [stdout]  --> src/ring_helpers.rs:3:30
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::r#static::{LOG_Q, MODULE_SIZE};
[INFO] [stdout]   |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/ring_helpers.rs:176:58
[INFO] [stdout]     |
[INFO] [stdout] 176 |                     result[i * rows + r][j * cols + c] = (if i == j { matrix[r][c] } else { T::zero() });
[INFO] [stdout]     |                                                          ^                                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 176 -                     result[i * rows + r][j * cols + c] = (if i == j { matrix[r][c] } else { T::zero() });
[INFO] [stdout] 176 +                     result[i * rows + r][j * cols + c] = if i == j { matrix[r][c] } else { T::zero() } ;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Ring`
[INFO] [stdout]  --> src/crs.rs:1:25
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{ring_i128::{Ring, RingElement}, r#static::{LOG_Q}};
[INFO] [stdout]   |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sample_random_vector`
[INFO] [stdout]  --> src/crs.rs:2:44
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::arithmetic::{sample_random_mat, sample_random_vector, sample_random_vector_non_real};
[INFO] [stdout]   |                                            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::ring_helpers::transpose`
[INFO] [stdout]  --> src/crs.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::ring_helpers::transpose;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CHUNK_SIZE`
[INFO] [stdout]  --> src/subroutines/split.rs:7:23
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::r#static::{CHUNK_SIZE, LOG_Q, MODULE_SIZE};
[INFO] [stdout]   |                       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_g`
[INFO] [stdout]  --> src/subroutines/bdecomp.rs:9:24
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::ring_i128::{get_g, Ring, ring_inner_product, RingElement};
[INFO] [stdout]   |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `sample_random_bin_mat` and `sample_random_mat`
[INFO] [stdout]  --> src/subroutines/norm_second_round.rs:5:33
[INFO] [stdout]   |
[INFO] [stdout] 5 |     parallel_dot_matrix_matrix, sample_random_bin_mat, sample_random_mat,
[INFO] [stdout]   |                                 ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::crs::gen_crs`
[INFO] [stdout]  --> src/subroutines/norm_second_round.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::crs::gen_crs;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::subroutines::norm_first_round::norm_1`
[INFO] [stdout]   --> src/subroutines/norm_second_round.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::subroutines::norm_first_round::norm_1;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Mutex`
[INFO] [stdout]  --> src/subroutines/convolution.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::Mutex;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sample_random_mat`
[INFO] [stdout]  --> src/subroutines/convolution.rs:6:64
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::arithmetic::{last_n_columns, sample_random_bin_mat, sample_random_mat};
[INFO] [stdout]   |                                                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `hadamard`, `inverse_ntt_pow_of_2`, and `ntt_pow_of_2`
[INFO] [stdout]  --> src/subroutines/convolution.rs:8:35
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::poly_arithmetic_i128::{hadamard, hadamard_64, inverse_ntt_pow_of_2, inverse_ntt_pow_of_2_fast, ntt_pow_of_2, ntt_pow_of_2_...
[INFO] [stdout]   |                                   ^^^^^^^^               ^^^^^^^^^^^^^^^^^^^^                             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MODULE_SIZE` and `TIME`
[INFO] [stdout]  --> src/subroutines/convolution.rs:9:67
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::r#static::{BASE_INT, CHUNK_SIZE, CHUNKS, LOG_Q, MOD_1, MODULE_SIZE, TIME};
[INFO] [stdout]   |                                                                   ^^^^^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sample_random_bin_mat`
[INFO] [stdout]  --> src/subroutines/verifier.rs:1:230
[INFO] [stdout]   |
[INFO] [stdout] 1 | ..._matrix, parallel_dot_matrix_vector, row_wise_tensor, sample_random_bin_mat, sample_random_constant_bin_mat, split_into_submatrice...
[INFO] [stdout]   |                                                          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CHUNK_SIZE`
[INFO] [stdout]  --> src/subroutines/verifier.rs:2:33
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::r#static::{BASE_INT, CHUNK_SIZE, CHUNKS, LOG_Q, MODULE_SIZE};
[INFO] [stdout]   |                                 ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]   --> src/poly_arithmetic_i128.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rayon::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]  --> src/subroutines/norm_second_round.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use rayon::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]  --> src/subroutines/split.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use rayon::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]  --> src/subroutines/fold.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use rayon::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rhs`
[INFO] [stdout]   --> src/ring_i128.rs:45:18
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn div(self, rhs: Self) -> Self::Output {
[INFO] [stdout]    |                  ^^^ help: if this is intentional, prefix it with an underscore: `_rhs`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:191:9
[INFO] [stdout]     |
[INFO] [stdout] 191 |     let mut sum_a = add(low_a, high_a);
[INFO] [stdout]     |         ----^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:192:9
[INFO] [stdout]     |
[INFO] [stdout] 192 |     let mut sum_b = add(low_b, high_b);
[INFO] [stdout]     |         ----^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/arithmetic.rs:1553:9
[INFO] [stdout]      |
[INFO] [stdout] 1553 |     let mut cloned = coeffs.clone();
[INFO] [stdout]      |         ----^^^^^^
[INFO] [stdout]      |         |
[INFO] [stdout]      |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/vdf.rs:120:9
[INFO] [stdout]     |
[INFO] [stdout] 120 |     let mut squeeze_vector  = powers(&challenge, MODULE_SIZE);
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/vdf.rs:121:9
[INFO] [stdout]     |
[INFO] [stdout] 121 |     let mut squeeze_vector_0  = squeeze_vector.clone();
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/crs.rs:25:10
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let (v, v_inv) = (
[INFO] [stdout]    |          ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v_inv`
[INFO] [stdout]   --> src/crs.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let (v, v_inv) = (
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_v_inv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `power_series_sub`
[INFO] [stdout]    --> src/subroutines/split.rs:157:9
[INFO] [stdout]     |
[INFO] [stdout] 157 |     let power_series_sub = columns(&power_series, len_L_R_adjusted, len_L_R_adjusted + len_C - 1);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_power_series_sub`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vec_witness`
[INFO] [stdout]    --> src/subroutines/norm_second_round.rs:126:13
[INFO] [stdout]     |
[INFO] [stdout] 126 |         let vec_witness = transpose(&witness);
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vec_witness`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/subroutines/convolution.rs:56:17
[INFO] [stdout]    |
[INFO] [stdout] 56 |             let mut v = t.to_vec();
[INFO] [stdout]    |                 ----^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/subroutines/convolution.rs:67:17
[INFO] [stdout]    |
[INFO] [stdout] 67 |             let mut v = t.to_vec();
[INFO] [stdout]    |                 ----^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/subroutines/convolution.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |     let mut extended_a: Vec<Vec<u64>> = a
[INFO] [stdout]    |         ----^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/subroutines/convolution.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let mut extended_b: Vec<Vec<u64>> = b
[INFO] [stdout]    |         ----^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `now`
[INFO] [stdout]   --> src/subroutines/convolution.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let now = Instant::now();
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_now`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `now`
[INFO] [stdout]   --> src/subroutines/convolution.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let now =   Instant::now();
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_now`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `convoluted_witness_transposed`
[INFO] [stdout]    --> src/subroutines/convolution.rs:163:9
[INFO] [stdout]     |
[INFO] [stdout] 163 |     let convoluted_witness_transposed: Vec<Vec<RingElement>> = last_n_columns(
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_convoluted_witness_transposed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/protocol.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 |     let mut commitment = parallel_dot_matrix_matrix(&crs.ck, &witness);
[INFO] [stdout]    |         ----^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reshape` is never used
[INFO] [stdout]    --> src/ring_i128.rs:289:8
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub fn reshape(vec: Vec<RingElement>, chunks_size: usize) -> Vec<Vec<RingElement>> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_g` is never used
[INFO] [stdout]    --> src/ring_i128.rs:293:8
[INFO] [stdout]     |
[INFO] [stdout] 293 | pub fn get_g(size: usize) -> Vec<RingElement> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reduce_quotient_generic` is never used
[INFO] [stdout]   --> src/poly_arithmetic_i128.rs:62:8
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub fn reduce_quotient_generic<A: Zero + Div<Output=A> + Sub<Output=A> + Add<Output=A> + Mul<Output=A> + Copy>(a: &[A], b: &[A]) -> ...
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reduce_quotient_and_cyclotomic_generic` is never used
[INFO] [stdout]   --> src/poly_arithmetic_i128.rs:85:8
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub fn reduce_quotient_and_cyclotomic_generic<A: Zero + Div<Output=A> + Sub<Output=A> + Add<Output=A> + Mul<Output=A> + Copy>(a: &[A...
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reduce_with_prime_cyclotomic_polynomial` is never used
[INFO] [stdout]   --> src/poly_arithmetic_i128.rs:94:8
[INFO] [stdout]    |
[INFO] [stdout] 94 | pub fn reduce_with_prime_cyclotomic_polynomial(a: &RingElement32, conductor: usize)-> Vec<i128> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reduce_with_quasiprime_cyclotomic_polynomial_generic` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:113:8
[INFO] [stdout]     |
[INFO] [stdout] 113 | pub fn reduce_with_quasiprime_cyclotomic_polynomial_generic<A: Zero + Sub<Output=A> + Add<Output=A> + Mul<Output=A> + Copy>(a: &[A]...
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `karatsuba_mul` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub fn karatsuba_mul(a: &RingElement32, b: &RingElement32, mod_q: Option<i128>) -> Vec<i128> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `karatsuba_mul_generic` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:171:8
[INFO] [stdout]     |
[INFO] [stdout] 171 | pub fn karatsuba_mul_generic<A: Zero + Sub<Output=A> + Add<Output=A> + Mul<Output=A> + Copy>(a: &[A], b: &[A]) -> Vec<A> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_in_place` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:225:8
[INFO] [stdout]     |
[INFO] [stdout] 225 | pub fn add_in_place(a: &mut RingElement32, b: &RingElement32) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `polynomial_mul` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:266:8
[INFO] [stdout]     |
[INFO] [stdout] 266 | pub fn polynomial_mul(a: &RingElement32, b: &RingElement32, mod_q: Option<i128>) -> Vec<i128> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `polynomial_mul_generic` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:284:8
[INFO] [stdout]     |
[INFO] [stdout] 284 | pub fn polynomial_mul_generic<A: Zero + Sub<Output=A> + Add<Output=A> + Mul<Output=A> + Copy>(a: &[A], b: &[A]) -> Vec<A> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `choose_root_unity` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:297:8
[INFO] [stdout]     |
[INFO] [stdout] 297 | pub fn choose_root_unity(n: usize, mod_q: i128) -> Option<i128> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extended_euclidean` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:317:8
[INFO] [stdout]     |
[INFO] [stdout] 317 | pub fn extended_euclidean(a: i128, b: i128) -> (i128, i128, i128) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mod_inverse` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:326:8
[INFO] [stdout]     |
[INFO] [stdout] 326 | pub fn mod_inverse(a: i128, m: i128) -> i128 {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `choose_root_unity_fast` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:331:8
[INFO] [stdout]     |
[INFO] [stdout] 331 | pub fn choose_root_unity_fast(n: usize, mod_q: i128) -> Option<i128> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ntt_slow` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:513:8
[INFO] [stdout]     |
[INFO] [stdout] 513 | pub fn ntt_slow(input: &RingElement32, root: i128, modulo:i128) -> Vec<i128> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `inverse_ntt_slow` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:528:8
[INFO] [stdout]     |
[INFO] [stdout] 528 | pub fn inverse_ntt_slow(input: &RingElement32, root: i128, modulo:i128) -> Vec<i128> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reciprocal` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:534:8
[INFO] [stdout]     |
[INFO] [stdout] 534 | pub fn reciprocal(n: i128, modulo: i128) -> i128 {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cyclic_mul_schoolbook` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:556:8
[INFO] [stdout]     |
[INFO] [stdout] 556 | pub fn cyclic_mul_schoolbook(a: &RingElement32, b: &RingElement32) -> Vec<i128>  {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cyclic_mul_karatsuba` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:562:8
[INFO] [stdout]     |
[INFO] [stdout] 562 | pub fn cyclic_mul_karatsuba(a: &RingElement32, b: &RingElement32) -> Vec<i128>  {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cyclic_mul_ntt_pow_of_2` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:568:8
[INFO] [stdout]     |
[INFO] [stdout] 568 | pub fn cyclic_mul_ntt_pow_of_2(a: &RingElement32, b: &RingElement32, mod_q: i128) -> Vec<i128>  {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cyclic_mul_ntt_slow` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:583:8
[INFO] [stdout]     |
[INFO] [stdout] 583 | pub fn cyclic_mul_ntt_slow(a: &RingElement32, b: &RingElement32, mod_q: i128) -> Vec<i128>  {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `trace` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:597:8
[INFO] [stdout]     |
[INFO] [stdout] 597 | pub fn trace(a: &RingElement32) -> i128  {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `conjugate` is never used
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:613:8
[INFO] [stdout]     |
[INFO] [stdout] 613 | pub fn conjugate(a: &RingElement32) -> Vec<i128> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `CONDUCTOR` is never used
[INFO] [stdout]   --> src/static.rs:74:12
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub static CONDUCTOR: usize = 257;
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `BIG_MOD_Q` is never used
[INFO] [stdout]   --> src/static.rs:82:12
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub static BIG_MOD_Q: &str = "1324325423464534264434434342342342342345325346352367564534123546753";
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `LOG_BIG_Q` is never used
[INFO] [stdout]   --> src/static.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub static  LOG_BIG_Q: usize = 220;
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `N_DIM` is never used
[INFO] [stdout]   --> src/static.rs:85:12
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub static N_DIM: usize = 10;
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `CONVERSION_FACTOR` is never used
[INFO] [stdout]   --> src/static_rings/static_generated.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub static CONVERSION_FACTOR: [GEN_TYPE; 21] = [
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `CIRCULANT_QUOTIENT` is never used
[INFO] [stdout]   --> src/static_rings/static_generated.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub static CIRCULANT_QUOTIENT: [GEN_TYPE; 25] = [
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parallel_dot_matrix_matrix_many_columns` is never used
[INFO] [stdout]    --> src/arithmetic.rs:295:8
[INFO] [stdout]     |
[INFO] [stdout] 295 | pub fn parallel_dot_matrix_matrix_many_columns<T>(matrix_a: &Vec<Vec<T>>, matrix_b: &Vec<Vec<T>>) -> Vec<Vec<T>>
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sample_random_constant_ss_mat` is never used
[INFO] [stdout]    --> src/arithmetic.rs:349:8
[INFO] [stdout]     |
[INFO] [stdout] 349 | pub fn sample_random_constant_ss_mat(n: usize, m: usize) -> Vec<Vec<RingElement>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sample_random_bin_vec` is never used
[INFO] [stdout]    --> src/arithmetic.rs:363:8
[INFO] [stdout]     |
[INFO] [stdout] 363 | pub fn sample_random_bin_vec(n: usize) -> Vec<RingElement> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sub` is never used
[INFO] [stdout]    --> src/arithmetic.rs:700:8
[INFO] [stdout]     |
[INFO] [stdout] 700 | pub fn sub<T>(a: &[T], b: &[T]) -> Vec<T>
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `conjugate_matrix` is never used
[INFO] [stdout]     --> src/arithmetic.rs:1860:8
[INFO] [stdout]      |
[INFO] [stdout] 1860 | pub fn conjugate_matrix(series: &Vec<Vec<RingElement>>) -> Vec<Vec<RingElement>> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `inverse_vector` is never used
[INFO] [stdout]     --> src/arithmetic.rs:1888:8
[INFO] [stdout]      |
[INFO] [stdout] 1888 | pub fn inverse_vector(row: &Vec<RingElement>) -> Vec<RingElement> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PowerSeries` is never constructed
[INFO] [stdout]     --> src/arithmetic.rs:2046:12
[INFO] [stdout]      |
[INFO] [stdout] 2046 | pub struct PowerSeries {
[INFO] [stdout]      |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_chunk_witness_large_vector` is never used
[INFO] [stdout]    --> src/ring_helpers.rs:294:4
[INFO] [stdout]     |
[INFO] [stdout] 294 | fn test_chunk_witness_large_vector() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `challenge_set` is never read
[INFO] [stdout]   --> src/crs.rs:12:16
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct CRS {
[INFO] [stdout]    |            --- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pub(crate) challenge_set: Vec<RingElement>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FoldOutput` is never constructed
[INFO] [stdout]  --> src/subroutines/fold.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct FoldOutput {
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/ring_i128.rs:290:38
[INFO] [stdout]     |
[INFO] [stdout] 290 |     vec.chunks(chunks_size).map(|c| c.clone().to_vec()).collect()
[INFO] [stdout]     |                                      ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `[ring_i128::RingElement]` does not implement `Clone`, so calling `clone` on `&[ring_i128::RingElement]` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:461:15
[INFO] [stdout]     |
[INFO] [stdout] 461 |         while *ai < 0 {
[INFO] [stdout]     |               ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/poly_arithmetic_i128.rs:529:32
[INFO] [stdout]     |
[INFO] [stdout] 529 |     let output = ntt_slow(input.clone(), reciprocal(root, modulo), modulo);
[INFO] [stdout]     |                                ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `[i128]` does not implement `Clone`, so calling `clone` on `&[i128]` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `G` should have a snake case name
[INFO] [stdout]   --> src/vdf.rs:91:9
[INFO] [stdout]    |
[INFO] [stdout] 91 |     let G = tensor_identity_matrix_with_vector(&get_g(LOG_Q), MODULE_SIZE);
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `G` should have a snake case name
[INFO] [stdout]    --> src/vdf.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 122 |     let G = tensor_identity_matrix_with_vector(&crate::ring_helpers::get_g(LOG_Q), MODULE_SIZE);
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `G` should have a snake case name
[INFO] [stdout]    --> src/vdf.rs:159:9
[INFO] [stdout]     |
[INFO] [stdout] 159 |     let G = tensor_identity_matrix_with_vector(&get_g(LOG_Q), MODULE_SIZE);
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `G_tensor` should have a snake case name
[INFO] [stdout]    --> src/vdf.rs:178:9
[INFO] [stdout]     |
[INFO] [stdout] 178 |     let G_tensor = vec![tensor_identity_matrix_with_matrix(&G, chunk_size), vec![zero_vector(MODULE_SIZE * LOG_Q * chunk_size); MOD...
[INFO] [stdout]     |         ^^^^^^^^ help: convert the identifier to snake case: `g_tensor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A_tensor` should have a snake case name
[INFO] [stdout]    --> src/vdf.rs:179:9
[INFO] [stdout]     |
[INFO] [stdout] 179 |     let A_tensor = vec![vec![zero_vector(MODULE_SIZE * LOG_Q * chunk_size); MODULE_SIZE], tensor_identity_matrix_with_matrix(&a, ch...
[INFO] [stdout]     |         ^^^^^^^^ help: convert the identifier to snake case: `a_tensor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `GA_tensor` should have a snake case name
[INFO] [stdout]    --> src/vdf.rs:180:9
[INFO] [stdout]     |
[INFO] [stdout] 180 |     let GA_tensor = add_matrices(&G_tensor, &A_tensor);
[INFO] [stdout]     |         ^^^^^^^^^ help: convert the identifier to snake case: `ga_tensor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `G` should have a snake case name
[INFO] [stdout]    --> src/ring_helpers.rs:218:9
[INFO] [stdout]     |
[INFO] [stdout] 218 |     let G = tensor_identity_matrix_with_vector(&get_g(LOG_Q), 2);
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `G` should have a snake case name
[INFO] [stdout]    --> src/ring_helpers.rs:227:9
[INFO] [stdout]     |
[INFO] [stdout] 227 |     let G = tensor_identity_matrix_with_vector(&vec![4, 2, 1], 2);
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `len_C` should have a snake case name
[INFO] [stdout]   --> src/subroutines/split.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let len_C = if (n / chunk_size) % 2 == 0 { 0 * chunk_size } else { chunk_size };
[INFO] [stdout]    |         ^^^^^ help: convert the identifier to snake case (notice the capitalization): `len_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `len_L_R_adjusted` should have a snake case name
[INFO] [stdout]   --> src/subroutines/split.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 |     let len_L_R_adjusted = (n - len_C) / 2;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `len_l_r_adjusted`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `vec_L` should have a snake case name
[INFO] [stdout]   --> src/subroutines/split.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let vec_L = vec[0..len_L_R_adjusted].to_vec();
[INFO] [stdout]    |         ^^^^^ help: convert the identifier to snake case: `vec_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `vec_C` should have a snake case name
[INFO] [stdout]   --> src/subroutines/split.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |     let vec_C = vec[len_L_R_adjusted..len_L_R_adjusted + len_C].to_vec();
[INFO] [stdout]    |         ^^^^^ help: convert the identifier to snake case (notice the capitalization): `vec_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `vec_R` should have a snake case name
[INFO] [stdout]   --> src/subroutines/split.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |     let vec_R = vec[len_L_R_adjusted + len_C..].to_vec();
[INFO] [stdout]    |         ^^^^^ help: convert the identifier to snake case: `vec_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `len_L_R_adjusted` should have a snake case name
[INFO] [stdout]   --> src/subroutines/split.rs:97:74
[INFO] [stdout]    |
[INFO] [stdout] 97 | ... &Vec<Vec<RingElement>>, len_L_R_adjusted: usize, len_C: usize, first_multiplier: &RingElement) -> Vec<RingElement> {
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `len_l_r_adjusted`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `len_C` should have a snake case name
[INFO] [stdout]   --> src/subroutines/split.rs:97:99
[INFO] [stdout]    |
[INFO] [stdout] 97 | ..._L_R_adjusted: usize, len_C: usize, first_multiplier: &RingElement) -> Vec<RingElement> {
[INFO] [stdout]    |                          ^^^^^ help: convert the identifier to snake case (notice the capitalization): `len_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `len_C` should have a snake case name
[INFO] [stdout]    --> src/subroutines/split.rs:145:9
[INFO] [stdout]     |
[INFO] [stdout] 145 |     let len_C = if n % 2 == 0 { 0 * chunk_size } else { chunk_size };
[INFO] [stdout]     |         ^^^^^ help: convert the identifier to snake case (notice the capitalization): `len_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `len_L_R_adjusted` should have a snake case name
[INFO] [stdout]    --> src/subroutines/split.rs:146:9
[INFO] [stdout]     |
[INFO] [stdout] 146 |     let len_L_R_adjusted = (n - len_C) / 2;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `len_l_r_adjusted`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `len_C` should have a snake case name
[INFO] [stdout]   --> src/subroutines/verifier.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 |     let len_C = if (n / chunk_size) % 2 == 0 { 0 * chunk_size } else { chunk_size };
[INFO] [stdout]    |         ^^^^^ help: convert the identifier to snake case (notice the capitalization): `len_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `len_L_R_adjusted` should have a snake case name
[INFO] [stdout]   --> src/subroutines/verifier.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 67 |     let len_L_R_adjusted = (n - len_C) / 2;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `len_l_r_adjusted`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [optimized + debuginfo] target(s) in 22.62s
[INFO] running `Command { std: "docker" "inspect" "7f1cdaaf6960d580f976cf06f8d171f3f6eb982c537792cb6450409d97a14d44", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7f1cdaaf6960d580f976cf06f8d171f3f6eb982c537792cb6450409d97a14d44", kill_on_drop: false }`
[INFO] [stdout] 7f1cdaaf6960d580f976cf06f8d171f3f6eb982c537792cb6450409d97a14d44
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 707880dda683fb4fd0efa31451adb8864d6f1439acd332db2356cc00146320bc
[INFO] running `Command { std: "docker" "start" "-a" "707880dda683fb4fd0efa31451adb8864d6f1439acd332db2356cc00146320bc", kill_on_drop: false }`
[INFO] [stderr] warning: unused imports: `parallel_dot_matrix_matrix`, `parallel_dot_matrix_vector`, `reshape`, `sample_random_mat`, `sample_random_vector`, `zero_mat`, and `zero_vector`
[INFO] [stderr]  --> src/main.rs:1:55
[INFO] [stderr]   |
[INFO] [stderr] 1 | ...l, parallel_dot_matrix_matrix, parallel_dot_matrix_vector, reshape, sample_random_mat, sample_random_vector, zero_mat, zero_vector};
[INFO] [stderr]   |       ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stderr]  --> src/ring_i128.rs:2:13
[INFO] [stderr]   |
[INFO] [stderr] 2 | use serde::{Serialize, Deserialize};
[INFO] [stderr]   |             ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `serde_json`
[INFO] [stderr]  --> src/ring_i128.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use serde_json;
[INFO] [stderr]   |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `choose_root_unity_fast`, `choose_root_unity`, `inverse_ntt_slow`, `karatsuba_mul`, `mod_inverse`, `polynomial_mul`, `reciprocal`, `reduce_quotient`, and `reduce_with_prime_cyclotomic_polynomial`
[INFO] [stderr]  --> src/ring_i128.rs:5:35
[INFO] [stderr]   |
[INFO] [stderr] 5 | ...::{choose_root_unity, reduce_quotient, reduce_quotient_and_cyclotomic, choose_root_unity_fast, inverse_ntt_slow, karatsuba_mul, polynomial_mul, mod_inverse, random, reciprocal, reduce_mod, reduce_mod_imbalanced, reduce_with_prime_cyclotomic_polynomial};
[INFO] [stderr]   |       ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^                                  ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^          ^^^^^^^^^^                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `V_COEFFS` and `V_INV_COEFFS`
[INFO] [stderr]  --> src/ring_i128.rs:7:128
[INFO] [stderr]   |
[INFO] [stderr] 7 | ...UCTOR_COMPOSITE, INV_BASIS, TWIST, TRACE_COEFFS, PHI, V_COEFFS, V_INV_COEFFS, CONJUGATE_MAP};
[INFO] [stderr]   |                                                          ^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `LinalgScalar` and `s`
[INFO] [stderr]  --> src/ring_i128.rs:8:43
[INFO] [stderr]   |
[INFO] [stderr] 8 | use ndarray::{arr2, arr1, Array2, Array1, s, LinalgScalar};
[INFO] [stderr]   |                                           ^  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `MulAdd`
[INFO] [stderr]  --> src/ring_i128.rs:9:18
[INFO] [stderr]   |
[INFO] [stderr] 9 | use num_traits::{MulAdd, One, Zero};
[INFO] [stderr]   |                  ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `sha3::digest::Output`
[INFO] [stderr]  --> src/poly_arithmetic_i128.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use sha3::digest::Output;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `BASE_INT`, `MOD_1`, and `MOD_Q`
[INFO] [stderr]  --> src/poly_arithmetic_i128.rs:3:23
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::r#static::{MOD_Q, MOD_1, BASE_INT};
[INFO] [stderr]   |                       ^^^^^  ^^^^^  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `MIN_POLY` and `PHI`
[INFO] [stderr]  --> src/poly_arithmetic_i128.rs:4:45
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::static_rings::static_generated::{MIN_POLY, PHI};
[INFO] [stderr]   |                                             ^^^^^^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::sync::Mutex`
[INFO] [stderr]  --> src/poly_arithmetic_i128.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use std::sync::Mutex;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::time::Instant`
[INFO] [stderr]  --> src/poly_arithmetic_i128.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use std::time::Instant;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `zero`
[INFO] [stderr]  --> src/poly_arithmetic_i128.rs:9:18
[INFO] [stderr]   |
[INFO] [stderr] 9 | use num_traits::{zero, Zero};
[INFO] [stderr]   |                  ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::ring_i128::RingElement`
[INFO] [stderr]   --> src/poly_arithmetic_i128.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | use crate::ring_i128::RingElement;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around function argument
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:403:38
[INFO] [stderr]     |
[INFO] [stderr] 403 | ...hecked((a_odd[i] as u128 + mod_q as u128 + mulmod_u64(powmod_u64(root_unity, i as u64, mod_q), a_even[i], mod_q) as u128), mod_q);
[INFO] [stderr]     |           ^                                                                                                                ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 403 -         a[i] = mod_u128u64_unchecked((a_odd[i] as u128 + mod_q as u128 + mulmod_u64(powmod_u64(root_unity, i as u64, mod_q), a_even[i], mod_q) as u128), mod_q);
[INFO] [stderr] 403 +         a[i] = mod_u128u64_unchecked(a_odd[i] as u128 + mod_q as u128 + mulmod_u64(powmod_u64(root_unity, i as u64, mod_q), a_even[i], mod_q) as u128 , mod_q);
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around function argument
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:404:47
[INFO] [stderr]     |
[INFO] [stderr] 404 | ...hecked((a_odd[i] as u128 + mod_q as u128 - mulmod_u64(powmod_u64(root_unity, i as u64, mod_q), a_even[i], mod_q) as u128), mod_q);
[INFO] [stderr]     |           ^                                                                                                                ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 404 -         a[i + n / 2]  = mod_u128u64_unchecked((a_odd[i] as u128 + mod_q as u128 - mulmod_u64(powmod_u64(root_unity, i as u64, mod_q), a_even[i], mod_q) as u128), mod_q);
[INFO] [stderr] 404 +         a[i + n / 2]  = mod_u128u64_unchecked(a_odd[i] as u128 + mod_q as u128 - mulmod_u64(powmod_u64(root_unity, i as u64, mod_q), a_even[i], mod_q) as u128 , mod_q);
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:584:65
[INFO] [stderr]     |
[INFO] [stderr] 584 |     let root_unity = choose_root_unity(a.len(), mod_q).unwrap();;
[INFO] [stderr]     |                                                                 ^ help: remove this semicolon
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: type `BASE_INT` should have an upper camel case name
[INFO] [stderr]   --> src/static.rs:87:10
[INFO] [stderr]    |
[INFO] [stderr] 87 | pub type BASE_INT = i128;
[INFO] [stderr]    |          ^^^^^^^^ help: convert the identifier to upper camel case: `BaseInt`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: type `GEN_TYPE` should have an upper camel case name
[INFO] [stderr]  --> src/static_rings/static_generated.rs:1:6
[INFO] [stderr]   |
[INFO] [stderr] 1 | type GEN_TYPE = i128;
[INFO] [stderr]   |      ^^^^^^^^ help: convert the identifier to upper camel case: `GenType`
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `LOG_BIG_Q`, `LOG_Q`, `MOD_Q`, and `N_DIM`
[INFO] [stderr]  --> src/root_of_unity.rs:1:33
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::r#static::{BASE_INT, LOG_BIG_Q, LOG_Q, MOD_1, MOD_Q, N_DIM};
[INFO] [stderr]   |                                 ^^^^^^^^^  ^^^^^         ^^^^^  ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::iter::Sum`
[INFO] [stderr]  --> src/arithmetic.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::iter::Sum;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ndarray::Array1`
[INFO] [stderr]  --> src/vdf.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use ndarray::Array1;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::crs::CRS`
[INFO] [stderr]  --> src/vdf.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::crs::CRS;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `TIME`
[INFO] [stderr]  --> src/vdf.rs:6:43
[INFO] [stderr]   |
[INFO] [stderr] 6 | use crate::r#static::{LOG_Q, MODULE_SIZE, TIME};
[INFO] [stderr]   |                                           ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `MODULE_SIZE`
[INFO] [stderr]  --> src/ring_helpers.rs:3:30
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::r#static::{LOG_Q, MODULE_SIZE};
[INFO] [stderr]   |                              ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]    --> src/ring_helpers.rs:176:58
[INFO] [stderr]     |
[INFO] [stderr] 176 |                     result[i * rows + r][j * cols + c] = (if i == j { matrix[r][c] } else { T::zero() });
[INFO] [stderr]     |                                                          ^                                             ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 176 -                     result[i * rows + r][j * cols + c] = (if i == j { matrix[r][c] } else { T::zero() });
[INFO] [stderr] 176 +                     result[i * rows + r][j * cols + c] = if i == j { matrix[r][c] } else { T::zero() } ;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Ring`
[INFO] [stderr]  --> src/crs.rs:1:25
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::{ring_i128::{Ring, RingElement}, r#static::{LOG_Q}};
[INFO] [stderr]   |                         ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `sample_random_vector`
[INFO] [stderr]  --> src/crs.rs:2:44
[INFO] [stderr]   |
[INFO] [stderr] 2 | use crate::arithmetic::{sample_random_mat, sample_random_vector, sample_random_vector_non_real};
[INFO] [stderr]   |                                            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::ring_helpers::transpose`
[INFO] [stderr]  --> src/crs.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::ring_helpers::transpose;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `CHUNK_SIZE`
[INFO] [stderr]  --> src/subroutines/split.rs:7:23
[INFO] [stderr]   |
[INFO] [stderr] 7 | use crate::r#static::{CHUNK_SIZE, LOG_Q, MODULE_SIZE};
[INFO] [stderr]   |                       ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `get_g`
[INFO] [stderr]  --> src/subroutines/bdecomp.rs:9:24
[INFO] [stderr]   |
[INFO] [stderr] 9 | use crate::ring_i128::{get_g, Ring, ring_inner_product, RingElement};
[INFO] [stderr]   |                        ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `sample_random_bin_mat` and `sample_random_mat`
[INFO] [stderr]  --> src/subroutines/norm_second_round.rs:5:33
[INFO] [stderr]   |
[INFO] [stderr] 5 |     parallel_dot_matrix_matrix, sample_random_bin_mat, sample_random_mat,
[INFO] [stderr]   |                                 ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::crs::gen_crs`
[INFO] [stderr]  --> src/subroutines/norm_second_round.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use crate::crs::gen_crs;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::subroutines::norm_first_round::norm_1`
[INFO] [stderr]   --> src/subroutines/norm_second_round.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | use crate::subroutines::norm_first_round::norm_1;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::sync::Mutex`
[INFO] [stderr]  --> src/subroutines/convolution.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::sync::Mutex;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `sample_random_mat`
[INFO] [stderr]  --> src/subroutines/convolution.rs:6:64
[INFO] [stderr]   |
[INFO] [stderr] 6 | use crate::arithmetic::{last_n_columns, sample_random_bin_mat, sample_random_mat};
[INFO] [stderr]   |                                                                ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `hadamard`, `inverse_ntt_pow_of_2`, and `ntt_pow_of_2`
[INFO] [stderr]  --> src/subroutines/convolution.rs:8:35
[INFO] [stderr]   |
[INFO] [stderr] 8 | use crate::poly_arithmetic_i128::{hadamard, hadamard_64, inverse_ntt_pow_of_2, inverse_ntt_pow_of_2_fast, ntt_pow_of_2, ntt_pow_of_2_...
[INFO] [stderr]   |                                   ^^^^^^^^               ^^^^^^^^^^^^^^^^^^^^                             ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `MODULE_SIZE` and `TIME`
[INFO] [stderr]  --> src/subroutines/convolution.rs:9:67
[INFO] [stderr]   |
[INFO] [stderr] 9 | use crate::r#static::{BASE_INT, CHUNK_SIZE, CHUNKS, LOG_Q, MOD_1, MODULE_SIZE, TIME};
[INFO] [stderr]   |                                                                   ^^^^^^^^^^^  ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `sample_random_bin_mat`
[INFO] [stderr]  --> src/subroutines/verifier.rs:1:230
[INFO] [stderr]   |
[INFO] [stderr] 1 | ..._matrix, parallel_dot_matrix_vector, row_wise_tensor, sample_random_bin_mat, sample_random_constant_bin_mat, split_into_submatrice...
[INFO] [stderr]   |                                                          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `CHUNK_SIZE`
[INFO] [stderr]  --> src/subroutines/verifier.rs:2:33
[INFO] [stderr]   |
[INFO] [stderr] 2 | use crate::r#static::{BASE_INT, CHUNK_SIZE, CHUNKS, LOG_Q, MODULE_SIZE};
[INFO] [stderr]   |                                 ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `rayon::prelude`
[INFO] [stderr]   --> src/poly_arithmetic_i128.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use rayon::prelude::*;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `rayon::prelude`
[INFO] [stderr]  --> src/subroutines/norm_second_round.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use rayon::prelude::*;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `rayon::prelude`
[INFO] [stderr]  --> src/subroutines/split.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use rayon::prelude::*;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `rayon::prelude`
[INFO] [stderr]  --> src/subroutines/fold.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use rayon::prelude::*;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `rhs`
[INFO] [stderr]   --> src/ring_i128.rs:45:18
[INFO] [stderr]    |
[INFO] [stderr] 45 |     fn div(self, rhs: Self) -> Self::Output {
[INFO] [stderr]    |                  ^^^ help: if this is intentional, prefix it with an underscore: `_rhs`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:191:9
[INFO] [stderr]     |
[INFO] [stderr] 191 |     let mut sum_a = add(low_a, high_a);
[INFO] [stderr]     |         ----^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:192:9
[INFO] [stderr]     |
[INFO] [stderr] 192 |     let mut sum_b = add(low_b, high_b);
[INFO] [stderr]     |         ----^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/arithmetic.rs:1553:9
[INFO] [stderr]      |
[INFO] [stderr] 1553 |     let mut cloned = coeffs.clone();
[INFO] [stderr]      |         ----^^^^^^
[INFO] [stderr]      |         |
[INFO] [stderr]      |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/vdf.rs:120:9
[INFO] [stderr]     |
[INFO] [stderr] 120 |     let mut squeeze_vector  = powers(&challenge, MODULE_SIZE);
[INFO] [stderr]     |         ----^^^^^^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/vdf.rs:121:9
[INFO] [stderr]     |
[INFO] [stderr] 121 |     let mut squeeze_vector_0  = squeeze_vector.clone();
[INFO] [stderr]     |         ----^^^^^^^^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `v`
[INFO] [stderr]   --> src/crs.rs:25:10
[INFO] [stderr]    |
[INFO] [stderr] 25 |     let (v, v_inv) = (
[INFO] [stderr]    |          ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `v_inv`
[INFO] [stderr]   --> src/crs.rs:25:13
[INFO] [stderr]    |
[INFO] [stderr] 25 |     let (v, v_inv) = (
[INFO] [stderr]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_v_inv`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `power_series_sub`
[INFO] [stderr]    --> src/subroutines/split.rs:157:9
[INFO] [stderr]     |
[INFO] [stderr] 157 |     let power_series_sub = columns(&power_series, len_L_R_adjusted, len_L_R_adjusted + len_C - 1);
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_power_series_sub`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `vec_witness`
[INFO] [stderr]    --> src/subroutines/norm_second_round.rs:126:13
[INFO] [stderr]     |
[INFO] [stderr] 126 |         let vec_witness = transpose(&witness);
[INFO] [stderr]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vec_witness`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/subroutines/convolution.rs:56:17
[INFO] [stderr]    |
[INFO] [stderr] 56 |             let mut v = t.to_vec();
[INFO] [stderr]    |                 ----^
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/subroutines/convolution.rs:67:17
[INFO] [stderr]    |
[INFO] [stderr] 67 |             let mut v = t.to_vec();
[INFO] [stderr]    |                 ----^
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/subroutines/convolution.rs:53:9
[INFO] [stderr]    |
[INFO] [stderr] 53 |     let mut extended_a: Vec<Vec<u64>> = a
[INFO] [stderr]    |         ----^^^^^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/subroutines/convolution.rs:64:9
[INFO] [stderr]    |
[INFO] [stderr] 64 |     let mut extended_b: Vec<Vec<u64>> = b
[INFO] [stderr]    |         ----^^^^^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `now`
[INFO] [stderr]   --> src/subroutines/convolution.rs:48:9
[INFO] [stderr]    |
[INFO] [stderr] 48 |     let now = Instant::now();
[INFO] [stderr]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_now`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `now`
[INFO] [stderr]   --> src/subroutines/convolution.rs:78:9
[INFO] [stderr]    |
[INFO] [stderr] 78 |     let now =   Instant::now();
[INFO] [stderr]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_now`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `convoluted_witness_transposed`
[INFO] [stderr]    --> src/subroutines/convolution.rs:163:9
[INFO] [stderr]     |
[INFO] [stderr] 163 |     let convoluted_witness_transposed: Vec<Vec<RingElement>> = last_n_columns(
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_convoluted_witness_transposed`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/protocol.rs:56:9
[INFO] [stderr]    |
[INFO] [stderr] 56 |     let mut commitment = parallel_dot_matrix_matrix(&crs.ck, &witness);
[INFO] [stderr]    |         ----^^^^^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: function `reshape` is never used
[INFO] [stderr]    --> src/ring_i128.rs:289:8
[INFO] [stderr]     |
[INFO] [stderr] 289 | pub fn reshape(vec: Vec<RingElement>, chunks_size: usize) -> Vec<Vec<RingElement>> {
[INFO] [stderr]     |        ^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_g` is never used
[INFO] [stderr]    --> src/ring_i128.rs:293:8
[INFO] [stderr]     |
[INFO] [stderr] 293 | pub fn get_g(size: usize) -> Vec<RingElement> {
[INFO] [stderr]     |        ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `reduce_quotient_generic` is never used
[INFO] [stderr]   --> src/poly_arithmetic_i128.rs:62:8
[INFO] [stderr]    |
[INFO] [stderr] 62 | pub fn reduce_quotient_generic<A: Zero + Div<Output=A> + Sub<Output=A> + Add<Output=A> + Mul<Output=A> + Copy>(a: &[A], b: &[A]) -> ...
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `reduce_quotient_and_cyclotomic_generic` is never used
[INFO] [stderr]   --> src/poly_arithmetic_i128.rs:85:8
[INFO] [stderr]    |
[INFO] [stderr] 85 | pub fn reduce_quotient_and_cyclotomic_generic<A: Zero + Div<Output=A> + Sub<Output=A> + Add<Output=A> + Mul<Output=A> + Copy>(a: &[A...
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `reduce_with_prime_cyclotomic_polynomial` is never used
[INFO] [stderr]   --> src/poly_arithmetic_i128.rs:94:8
[INFO] [stderr]    |
[INFO] [stderr] 94 | pub fn reduce_with_prime_cyclotomic_polynomial(a: &RingElement32, conductor: usize)-> Vec<i128> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `reduce_with_quasiprime_cyclotomic_polynomial_generic` is never used
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:113:8
[INFO] [stderr]     |
[INFO] [stderr] 113 | pub fn reduce_with_quasiprime_cyclotomic_polynomial_generic<A: Zero + Sub<Output=A> + Add<Output=A> + Mul<Output=A> + Copy>(a: &[A]...
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `karatsuba_mul` is never used
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:121:8
[INFO] [stderr]     |
[INFO] [stderr] 121 | pub fn karatsuba_mul(a: &RingElement32, b: &RingElement32, mod_q: Option<i128>) -> Vec<i128> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `karatsuba_mul_generic` is never used
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:171:8
[INFO] [stderr]     |
[INFO] [stderr] 171 | pub fn karatsuba_mul_generic<A: Zero + Sub<Output=A> + Add<Output=A> + Mul<Output=A> + Copy>(a: &[A], b: &[A]) -> Vec<A> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `add_in_place` is never used
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:225:8
[INFO] [stderr]     |
[INFO] [stderr] 225 | pub fn add_in_place(a: &mut RingElement32, b: &RingElement32) {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `polynomial_mul` is never used
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:266:8
[INFO] [stderr]     |
[INFO] [stderr] 266 | pub fn polynomial_mul(a: &RingElement32, b: &RingElement32, mod_q: Option<i128>) -> Vec<i128> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `polynomial_mul_generic` is never used
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:284:8
[INFO] [stderr]     |
[INFO] [stderr] 284 | pub fn polynomial_mul_generic<A: Zero + Sub<Output=A> + Add<Output=A> + Mul<Output=A> + Copy>(a: &[A], b: &[A]) -> Vec<A> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `choose_root_unity` is never used
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:297:8
[INFO] [stderr]     |
[INFO] [stderr] 297 | pub fn choose_root_unity(n: usize, mod_q: i128) -> Option<i128> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `extended_euclidean` is never used
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:317:8
[INFO] [stderr]     |
[INFO] [stderr] 317 | pub fn extended_euclidean(a: i128, b: i128) -> (i128, i128, i128) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `mod_inverse` is never used
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:326:8
[INFO] [stderr]     |
[INFO] [stderr] 326 | pub fn mod_inverse(a: i128, m: i128) -> i128 {
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `choose_root_unity_fast` is never used
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:331:8
[INFO] [stderr]     |
[INFO] [stderr] 331 | pub fn choose_root_unity_fast(n: usize, mod_q: i128) -> Option<i128> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `ntt_slow` is never used
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:513:8
[INFO] [stderr]     |
[INFO] [stderr] 513 | pub fn ntt_slow(input: &RingElement32, root: i128, modulo:i128) -> Vec<i128> {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `inverse_ntt_slow` is never used
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:528:8
[INFO] [stderr]     |
[INFO] [stderr] 528 | pub fn inverse_ntt_slow(input: &RingElement32, root: i128, modulo:i128) -> Vec<i128> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `reciprocal` is never used
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:534:8
[INFO] [stderr]     |
[INFO] [stderr] 534 | pub fn reciprocal(n: i128, modulo: i128) -> i128 {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `cyclic_mul_schoolbook` is never used
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:556:8
[INFO] [stderr]     |
[INFO] [stderr] 556 | pub fn cyclic_mul_schoolbook(a: &RingElement32, b: &RingElement32) -> Vec<i128>  {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `cyclic_mul_karatsuba` is never used
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:562:8
[INFO] [stderr]     |
[INFO] [stderr] 562 | pub fn cyclic_mul_karatsuba(a: &RingElement32, b: &RingElement32) -> Vec<i128>  {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `cyclic_mul_ntt_pow_of_2` is never used
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:568:8
[INFO] [stderr]     |
[INFO] [stderr] 568 | pub fn cyclic_mul_ntt_pow_of_2(a: &RingElement32, b: &RingElement32, mod_q: i128) -> Vec<i128>  {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `cyclic_mul_ntt_slow` is never used
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:583:8
[INFO] [stderr]     |
[INFO] [stderr] 583 | pub fn cyclic_mul_ntt_slow(a: &RingElement32, b: &RingElement32, mod_q: i128) -> Vec<i128>  {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `trace` is never used
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:597:8
[INFO] [stderr]     |
[INFO] [stderr] 597 | pub fn trace(a: &RingElement32) -> i128  {
[INFO] [stderr]     |        ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `conjugate` is never used
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:613:8
[INFO] [stderr]     |
[INFO] [stderr] 613 | pub fn conjugate(a: &RingElement32) -> Vec<i128> {
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: static `CONDUCTOR` is never used
[INFO] [stderr]   --> src/static.rs:74:12
[INFO] [stderr]    |
[INFO] [stderr] 74 | pub static CONDUCTOR: usize = 257;
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: static `BIG_MOD_Q` is never used
[INFO] [stderr]   --> src/static.rs:82:12
[INFO] [stderr]    |
[INFO] [stderr] 82 | pub static BIG_MOD_Q: &str = "1324325423464534264434434342342342342345325346352367564534123546753";
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: static `LOG_BIG_Q` is never used
[INFO] [stderr]   --> src/static.rs:84:13
[INFO] [stderr]    |
[INFO] [stderr] 84 | pub static  LOG_BIG_Q: usize = 220;
[INFO] [stderr]    |             ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: static `N_DIM` is never used
[INFO] [stderr]   --> src/static.rs:85:12
[INFO] [stderr]    |
[INFO] [stderr] 85 | pub static N_DIM: usize = 10;
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: static `CONVERSION_FACTOR` is never used
[INFO] [stderr]   --> src/static_rings/static_generated.rs:29:12
[INFO] [stderr]    |
[INFO] [stderr] 29 | pub static CONVERSION_FACTOR: [GEN_TYPE; 21] = [
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: static `CIRCULANT_QUOTIENT` is never used
[INFO] [stderr]   --> src/static_rings/static_generated.rs:32:12
[INFO] [stderr]    |
[INFO] [stderr] 32 | pub static CIRCULANT_QUOTIENT: [GEN_TYPE; 25] = [
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parallel_dot_matrix_matrix_many_columns` is never used
[INFO] [stderr]    --> src/arithmetic.rs:295:8
[INFO] [stderr]     |
[INFO] [stderr] 295 | pub fn parallel_dot_matrix_matrix_many_columns<T>(matrix_a: &Vec<Vec<T>>, matrix_b: &Vec<Vec<T>>) -> Vec<Vec<T>>
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `sample_random_constant_ss_mat` is never used
[INFO] [stderr]    --> src/arithmetic.rs:349:8
[INFO] [stderr]     |
[INFO] [stderr] 349 | pub fn sample_random_constant_ss_mat(n: usize, m: usize) -> Vec<Vec<RingElement>> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `sample_random_bin_vec` is never used
[INFO] [stderr]    --> src/arithmetic.rs:363:8
[INFO] [stderr]     |
[INFO] [stderr] 363 | pub fn sample_random_bin_vec(n: usize) -> Vec<RingElement> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `sub` is never used
[INFO] [stderr]    --> src/arithmetic.rs:700:8
[INFO] [stderr]     |
[INFO] [stderr] 700 | pub fn sub<T>(a: &[T], b: &[T]) -> Vec<T>
[INFO] [stderr]     |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `conjugate_matrix` is never used
[INFO] [stderr]     --> src/arithmetic.rs:1860:8
[INFO] [stderr]      |
[INFO] [stderr] 1860 | pub fn conjugate_matrix(series: &Vec<Vec<RingElement>>) -> Vec<Vec<RingElement>> {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `inverse_vector` is never used
[INFO] [stderr]     --> src/arithmetic.rs:1888:8
[INFO] [stderr]      |
[INFO] [stderr] 1888 | pub fn inverse_vector(row: &Vec<RingElement>) -> Vec<RingElement> {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `PowerSeries` is never constructed
[INFO] [stderr]     --> src/arithmetic.rs:2046:12
[INFO] [stderr]      |
[INFO] [stderr] 2046 | pub struct PowerSeries {
[INFO] [stderr]      |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `test_chunk_witness_large_vector` is never used
[INFO] [stderr]    --> src/ring_helpers.rs:294:4
[INFO] [stderr]     |
[INFO] [stderr] 294 | fn test_chunk_witness_large_vector() {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `challenge_set` is never read
[INFO] [stderr]   --> src/crs.rs:12:16
[INFO] [stderr]    |
[INFO] [stderr]  9 | pub struct CRS {
[INFO] [stderr]    |            --- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 12 |     pub(crate) challenge_set: Vec<RingElement>,
[INFO] [stderr]    |                ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `FoldOutput` is never constructed
[INFO] [stderr]  --> src/subroutines/fold.rs:9:12
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub struct FoldOutput {
[INFO] [stderr]   |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stderr]    --> src/ring_i128.rs:290:38
[INFO] [stderr]     |
[INFO] [stderr] 290 |     vec.chunks(chunks_size).map(|c| c.clone().to_vec()).collect()
[INFO] [stderr]     |                                      ^^^^^^^^ help: remove this redundant call
[INFO] [stderr]     |
[INFO] [stderr]     = note: the type `[ring_i128::RingElement]` does not implement `Clone`, so calling `clone` on `&[ring_i128::RingElement]` copies the reference, which does not do anything and can be removed
[INFO] [stderr]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: comparison is useless due to type limits
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:461:15
[INFO] [stderr]     |
[INFO] [stderr] 461 |         while *ai < 0 {
[INFO] [stderr]     |               ^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stderr]    --> src/poly_arithmetic_i128.rs:529:32
[INFO] [stderr]     |
[INFO] [stderr] 529 |     let output = ntt_slow(input.clone(), reciprocal(root, modulo), modulo);
[INFO] [stderr]     |                                ^^^^^^^^ help: remove this redundant call
[INFO] [stderr]     |
[INFO] [stderr]     = note: the type `[i128]` does not implement `Clone`, so calling `clone` on `&[i128]` copies the reference, which does not do anything and can be removed
[INFO] [stderr] 
[INFO] [stderr] warning: variable `G` should have a snake case name
[INFO] [stderr]   --> src/vdf.rs:91:9
[INFO] [stderr]    |
[INFO] [stderr] 91 |     let G = tensor_identity_matrix_with_vector(&get_g(LOG_Q), MODULE_SIZE);
[INFO] [stderr]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable `G` should have a snake case name
[INFO] [stderr]    --> src/vdf.rs:122:9
[INFO] [stderr]     |
[INFO] [stderr] 122 |     let G = tensor_identity_matrix_with_vector(&crate::ring_helpers::get_g(LOG_Q), MODULE_SIZE);
[INFO] [stderr]     |         ^ help: convert the identifier to snake case: `g`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `G` should have a snake case name
[INFO] [stderr]    --> src/vdf.rs:159:9
[INFO] [stderr]     |
[INFO] [stderr] 159 |     let G = tensor_identity_matrix_with_vector(&get_g(LOG_Q), MODULE_SIZE);
[INFO] [stderr]     |         ^ help: convert the identifier to snake case: `g`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `G_tensor` should have a snake case name
[INFO] [stderr]    --> src/vdf.rs:178:9
[INFO] [stderr]     |
[INFO] [stderr] 178 |     let G_tensor = vec![tensor_identity_matrix_with_matrix(&G, chunk_size), vec![zero_vector(MODULE_SIZE * LOG_Q * chunk_size); MOD...
[INFO] [stderr]     |         ^^^^^^^^ help: convert the identifier to snake case: `g_tensor`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `A_tensor` should have a snake case name
[INFO] [stderr]    --> src/vdf.rs:179:9
[INFO] [stderr]     |
[INFO] [stderr] 179 |     let A_tensor = vec![vec![zero_vector(MODULE_SIZE * LOG_Q * chunk_size); MODULE_SIZE], tensor_identity_matrix_with_matrix(&a, ch...
[INFO] [stderr]     |         ^^^^^^^^ help: convert the identifier to snake case: `a_tensor`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `GA_tensor` should have a snake case name
[INFO] [stderr]    --> src/vdf.rs:180:9
[INFO] [stderr]     |
[INFO] [stderr] 180 |     let GA_tensor = add_matrices(&G_tensor, &A_tensor);
[INFO] [stderr]     |         ^^^^^^^^^ help: convert the identifier to snake case: `ga_tensor`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `G` should have a snake case name
[INFO] [stderr]    --> src/ring_helpers.rs:218:9
[INFO] [stderr]     |
[INFO] [stderr] 218 |     let G = tensor_identity_matrix_with_vector(&get_g(LOG_Q), 2);
[INFO] [stderr]     |         ^ help: convert the identifier to snake case: `g`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `G` should have a snake case name
[INFO] [stderr]    --> src/ring_helpers.rs:227:9
[INFO] [stderr]     |
[INFO] [stderr] 227 |     let G = tensor_identity_matrix_with_vector(&vec![4, 2, 1], 2);
[INFO] [stderr]     |         ^ help: convert the identifier to snake case: `g`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `len_C` should have a snake case name
[INFO] [stderr]   --> src/subroutines/split.rs:23:9
[INFO] [stderr]    |
[INFO] [stderr] 23 |     let len_C = if (n / chunk_size) % 2 == 0 { 0 * chunk_size } else { chunk_size };
[INFO] [stderr]    |         ^^^^^ help: convert the identifier to snake case (notice the capitalization): `len_c`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `len_L_R_adjusted` should have a snake case name
[INFO] [stderr]   --> src/subroutines/split.rs:24:9
[INFO] [stderr]    |
[INFO] [stderr] 24 |     let len_L_R_adjusted = (n - len_C) / 2;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `len_l_r_adjusted`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `vec_L` should have a snake case name
[INFO] [stderr]   --> src/subroutines/split.rs:26:9
[INFO] [stderr]    |
[INFO] [stderr] 26 |     let vec_L = vec[0..len_L_R_adjusted].to_vec();
[INFO] [stderr]    |         ^^^^^ help: convert the identifier to snake case: `vec_l`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `vec_C` should have a snake case name
[INFO] [stderr]   --> src/subroutines/split.rs:27:9
[INFO] [stderr]    |
[INFO] [stderr] 27 |     let vec_C = vec[len_L_R_adjusted..len_L_R_adjusted + len_C].to_vec();
[INFO] [stderr]    |         ^^^^^ help: convert the identifier to snake case (notice the capitalization): `vec_c`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `vec_R` should have a snake case name
[INFO] [stderr]   --> src/subroutines/split.rs:28:9
[INFO] [stderr]    |
[INFO] [stderr] 28 |     let vec_R = vec[len_L_R_adjusted + len_C..].to_vec();
[INFO] [stderr]    |         ^^^^^ help: convert the identifier to snake case: `vec_r`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `len_L_R_adjusted` should have a snake case name
[INFO] [stderr]   --> src/subroutines/split.rs:97:74
[INFO] [stderr]    |
[INFO] [stderr] 97 | ... &Vec<Vec<RingElement>>, len_L_R_adjusted: usize, len_C: usize, first_multiplier: &RingElement) -> Vec<RingElement> {
[INFO] [stderr]    |                             ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `len_l_r_adjusted`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `len_C` should have a snake case name
[INFO] [stderr]   --> src/subroutines/split.rs:97:99
[INFO] [stderr]    |
[INFO] [stderr] 97 | ..._L_R_adjusted: usize, len_C: usize, first_multiplier: &RingElement) -> Vec<RingElement> {
[INFO] [stderr]    |                          ^^^^^ help: convert the identifier to snake case (notice the capitalization): `len_c`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `len_C` should have a snake case name
[INFO] [stderr]    --> src/subroutines/split.rs:145:9
[INFO] [stderr]     |
[INFO] [stderr] 145 |     let len_C = if n % 2 == 0 { 0 * chunk_size } else { chunk_size };
[INFO] [stderr]     |         ^^^^^ help: convert the identifier to snake case (notice the capitalization): `len_c`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `len_L_R_adjusted` should have a snake case name
[INFO] [stderr]    --> src/subroutines/split.rs:146:9
[INFO] [stderr]     |
[INFO] [stderr] 146 |     let len_L_R_adjusted = (n - len_C) / 2;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `len_l_r_adjusted`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `len_C` should have a snake case name
[INFO] [stderr]   --> src/subroutines/verifier.rs:66:9
[INFO] [stderr]    |
[INFO] [stderr] 66 |     let len_C = if (n / chunk_size) % 2 == 0 { 0 * chunk_size } else { chunk_size };
[INFO] [stderr]    |         ^^^^^ help: convert the identifier to snake case (notice the capitalization): `len_c`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `len_L_R_adjusted` should have a snake case name
[INFO] [stderr]   --> src/subroutines/verifier.rs:67:9
[INFO] [stderr]    |
[INFO] [stderr] 67 |     let len_L_R_adjusted = (n - len_C) / 2;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `len_l_r_adjusted`
[INFO] [stderr] 
[INFO] [stderr] warning: `vdf-implementation` (bin "new" test) generated 124 warnings (run `cargo fix --bin "new" -p vdf-implementation --tests` to apply 57 suggestions)
[INFO] [stderr]     Finished `test` profile [optimized + debuginfo] target(s) in 0.23s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/new-ee3ef40797de33c3)
[INFO] [stdout] 
[INFO] [stdout] running 75 tests
[INFO] [stdout] test arithmetic::binary_decomposition_tests::test_binary_decomposition_basic ... ok
[INFO] [stdout] test arithmetic::binary_decomposition_tests::test_binary_decomposition_single_bit ... ok
[INFO] [stdout] test arithmetic::join_matrices_horizontally_tests::test_join_matrices_horizontally_basic ... ok
[INFO] [stdout] test arithmetic::join_matrices_horizontally_tests::test_join_matrices_horizontally_single_row ... ok
[INFO] [stdout] test arithmetic::test_columns_normal_case ... ok
[INFO] [stdout] test arithmetic::test_karatsuba_mul_with_mod ... ok
[INFO] [stdout] test arithmetic::test_add_vectors_integers ... ok
[INFO] [stdout] test arithmetic::test_compute_one_prefixed_power_series ... ok
[INFO] [stdout] test arithmetic::test_fast_power ... ok
[INFO] [stdout] test arithmetic::test_compute_one_prefixed_zero_series ... ok
[INFO] [stdout] test arithmetic::test_one_mat ... ok
[INFO] [stdout] test arithmetic::test_ntt_mul ... ok
[INFO] [stdout] test arithmetic::test_add_vectors_zeros ... ok
[INFO] [stdout] test arithmetic::join_matrices_horizontally_tests::test_join_matrices_horizontally_empty ... ok
[INFO] [stdout] test arithmetic::binary_decomposition_tests::test_binary_decomposition_mixed_values ... ok
[INFO] [stdout] test arithmetic::test_polynomial_mul ... ok
[INFO] [stdout] test arithmetic::test_parallel_dot ... ok
[INFO] [stdout] test arithmetic::test_row_wise_tensor_normal_case ... ok
[INFO] [stdout] test arithmetic::test_parallel_dot_vector_matrix_integers ... ok
[INFO] [stdout] test arithmetic::test_parallel_dot_matrix_matrix ... ok
[INFO] [stdout] test arithmetic::test_polynomial_mul_parallel ... ok
[INFO] [stdout] test arithmetic::test_add_matrices_basic ... ok
[INFO] [stdout] test arithmetic::test_row_wise_tensor_empty ... ok
[INFO] [stdout] test arithmetic::test_split_into_submatrices_by_columns_basic ... ok
[INFO] [stdout] test arithmetic::test_vector_element_product_floats ... ok
[INFO] [stdout] test arithmetic::test_zip_columns_horizontally_basic ... ok
[INFO] [stdout] test arithmetic::test_row_wise_tensor_single_element_rows ... ok
[INFO] [stdout] test arithmetic::tests_binary_decomposition_custom_radix::test_binary_decomposition_radix_basic ... ok
[INFO] [stdout] test arithmetic::tests_binary_decomposition_custom_radix::test_binary_decomposition_radix_mixed_values ... ok
[INFO] [stdout] test arithmetic::test_add_vectors_floats ... ok
[INFO] [stdout] test arithmetic::test_karatsuba_mul ... ok
[INFO] [stdout] test arithmetic::test_multiply_matrix_constant ... ok
[INFO] [stdout] test arithmetic::tests_binary_decomposition_custom_radix::test_binary_decomposition_binary_radix ... ok
[INFO] [stdout] test arithmetic::test_vector_element_product_integers ... ok
[INFO] [stdout] test ring_helpers::test_g_decompose_rank_2_easy ... ok
[INFO] [stdout] test arithmetic::tests_binary_decomposition_custom_radix::test_binary_decomposition_radix_single_digit ... ok
[INFO] [stdout] test ring_helpers::test_chunk_witness_basic ... ok
[INFO] [stdout] test ring_helpers::test_g ... ok
[INFO] [stdout] test arithmetic::tests_binary_decomposition_custom_radix::test_binary_decomposition_radix_large_radix ... ok
[INFO] [stdout] test ring_helpers::test_tensor_identity_matrix_with_vector ... ok
[INFO] [stdout] test ring_helpers::test_tensor_identity_matrix_with_vector_single_element_vector ... ok
[INFO] [stdout] test root_of_unity::tests::test_choose_root_unity_valid_large ... ok
[INFO] [stdout] test ring_helpers::test_g_decompose_rank_2 ... ok
[INFO] [stdout] test ring_i128::test_basis ... ok
[INFO] [stdout] test root_of_unity::tests::test_choose_root_unity_valid ... ok
[INFO] [stdout] test ring_helpers::test_transpose_square_matrix ... ok
[INFO] [stdout] test ring_helpers::test_tensor_identity_matrix_with_vector_large_rank ... ok
[INFO] [stdout] test ring_helpers::test_g_decompose ... ok
[INFO] [stdout] test ring_helpers::test_tensor_identity_matrix_with_matrix ... ok
[INFO] [stdout] test ring_helpers::test_tensor_identity_matrix_with_vector_rank_1 ... ok
[INFO] [stdout] test arithmetic::test_vector_element_product_zeros ... ok
[INFO] [stdout] test root_of_unity::tests::test_choose_root_unity_valid_very_large ... ok
[INFO] [stdout] test root_of_unity::tests::test_choose_root_unity_invalid_n ... ok
[INFO] [stdout] test root_of_unity::tests::test_mod_inverse_valid ... ok
[INFO] [stdout] test arithmetic::join_matrices_horizontally_tests::test_join_matrices_horizontally_diff_row_count - should panic ... ok
[INFO] [stdout] test arithmetic::test_add_vectors_different_lengths - should panic ... ok
[INFO] [stdout] test arithmetic::test_row_wise_tensor_mismatched_rows - should panic ... ok
[INFO] [stdout] test arithmetic::test_inverse_sage ... FAILED
[INFO] [stderr] error: test failed, to rerun pass `--bin new`
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/target/debug/deps/new-ee3ef40797de33c3` (signal: 9, SIGKILL: kill)
[INFO] running `Command { std: "docker" "inspect" "707880dda683fb4fd0efa31451adb8864d6f1439acd332db2356cc00146320bc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "707880dda683fb4fd0efa31451adb8864d6f1439acd332db2356cc00146320bc", kill_on_drop: false }`
[INFO] [stdout] 707880dda683fb4fd0efa31451adb8864d6f1439acd332db2356cc00146320bc
