[INFO] fetching crate argmin 0.8.1...
[INFO] testing argmin-0.8.1 against 1.69.0 for beta-1.70-1
[INFO] extracting crate argmin 0.8.1 into /workspace/builds/worker-1-tc1/source
[INFO] validating manifest of crates.io crate argmin 0.8.1 on toolchain 1.69.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.69.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate argmin 0.8.1
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate argmin 0.8.1
[INFO] tweaked toml for crates.io crate argmin 0.8.1 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] crate crates.io crate argmin 0.8.1 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" "+1.69.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded rayon-core v1.10.2
[INFO] [stderr]   Downloaded num v0.2.1
[INFO] [stderr]   Downloaded slog-json v2.6.1
[INFO] [stderr]   Downloaded num-bigint v0.2.6
[INFO] [stderr]   Downloaded windows-targets v0.42.1
[INFO] [stderr]   Downloaded time-macros v0.2.7
[INFO] [stderr]   Downloaded ctrlc v3.2.5
[INFO] [stderr]   Downloaded take_mut v0.2.2
[INFO] [stderr]   Downloaded finitediff v0.1.4
[INFO] [stderr]   Downloaded slog-async v2.7.0
[INFO] [stderr]   Downloaded argmin-math v0.3.0
[INFO] [stderr]   Downloaded slog-term v2.9.0
[INFO] [stderr]   Downloaded anyhow v1.0.69
[INFO] [stderr]   Downloaded bytemuck v1.13.0
[INFO] [stderr]   Downloaded slog v2.7.0
[INFO] [stderr]   Downloaded proc-macro2 v1.0.51
[INFO] [stderr]   Downloaded simba v0.8.0
[INFO] [stderr]   Downloaded nalgebra-macros v0.2.0
[INFO] [stderr]   Downloaded wide v0.7.6
[INFO] [stderr]   Downloaded time v0.3.19
[INFO] [stderr]   Downloaded serde_json v1.0.93
[INFO] [stderr]   Downloaded nalgebra v0.32.1
[INFO] [stderr]   Downloaded netlib-src v0.8.0
[INFO] [stderr]   Downloaded argmin_testfunctions v0.1.1
[INFO] [stderr]   Downloaded gnuplot v0.0.37
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 8db93b4f968c0639a90a5b9ef56f78725f811d1e539b39e4fa45c1613bc51ae6
[INFO] running `Command { std: "docker" "start" "-a" "8db93b4f968c0639a90a5b9ef56f78725f811d1e539b39e4fa45c1613bc51ae6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8db93b4f968c0639a90a5b9ef56f78725f811d1e539b39e4fa45c1613bc51ae6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8db93b4f968c0639a90a5b9ef56f78725f811d1e539b39e4fa45c1613bc51ae6", kill_on_drop: false }`
[INFO] [stdout] 8db93b4f968c0639a90a5b9ef56f78725f811d1e539b39e4fa45c1613bc51ae6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2b95013032da32727db4bba8d7bfd3884bc4720bd204e10881377ef659b6df68
[INFO] running `Command { std: "docker" "start" "-a" "2b95013032da32727db4bba8d7bfd3884bc4720bd204e10881377ef659b6df68", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.51
[INFO] [stderr]    Compiling quote v1.0.23
[INFO] [stderr]    Compiling unicode-ident v1.0.6
[INFO] [stderr]    Compiling syn v1.0.107
[INFO] [stderr]    Compiling serde_derive v1.0.152
[INFO] [stderr]    Compiling serde v1.0.152
[INFO] [stderr]    Compiling slog v2.7.0
[INFO] [stderr]    Compiling time-core v0.1.0
[INFO] [stderr]    Compiling itoa v1.0.5
[INFO] [stderr]    Compiling crossbeam-utils v0.8.14
[INFO] [stderr]    Compiling ppv-lite86 v0.2.17
[INFO] [stderr]    Compiling thiserror v1.0.38
[INFO] [stderr]    Compiling serde_json v1.0.93
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling getrandom v0.2.8
[INFO] [stderr]    Compiling time-macros v0.2.7
[INFO] [stderr]    Compiling dirs-sys-next v0.1.2
[INFO] [stderr]    Compiling num_threads v0.1.6
[INFO] [stderr]    Compiling anyhow v1.0.69
[INFO] [stderr]    Compiling dirs-next v2.0.0
[INFO] [stderr]    Compiling slog-async v2.7.0
[INFO] [stderr]    Compiling paste v1.0.11
[INFO] [stderr]    Compiling ryu v1.0.12
[INFO] [stderr]    Compiling term v0.7.0
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling take_mut v0.2.2
[INFO] [stderr]    Compiling instant v0.1.12
[INFO] [stderr]    Compiling crossbeam-channel v0.5.6
[INFO] [stderr]    Compiling time v0.3.19
[INFO] [stderr]    Compiling slog-term v2.9.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.38
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand_xoshiro v0.6.0
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling slog-json v2.6.1
[INFO] [stderr]    Compiling num-complex v0.4.3
[INFO] [stderr]    Compiling argmin-math v0.3.0
[INFO] [stderr]    Compiling argmin v0.8.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 22.98s
[INFO] running `Command { std: "docker" "inspect" "2b95013032da32727db4bba8d7bfd3884bc4720bd204e10881377ef659b6df68", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2b95013032da32727db4bba8d7bfd3884bc4720bd204e10881377ef659b6df68", kill_on_drop: false }`
[INFO] [stdout] 2b95013032da32727db4bba8d7bfd3884bc4720bd204e10881377ef659b6df68
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] af43f2006ffc464874d33bb6b263ee319d643795a0623a26c454b1d34b795513
[INFO] running `Command { std: "docker" "start" "-a" "af43f2006ffc464874d33bb6b263ee319d643795a0623a26c454b1d34b795513", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]    Compiling num-bigint v0.2.6
[INFO] [stderr]    Compiling cmake v0.1.49
[INFO] [stderr]    Compiling rawpointer v0.2.1
[INFO] [stderr]    Compiling num-complex v0.2.4
[INFO] [stderr]    Compiling num-iter v0.1.43
[INFO] [stderr]    Compiling num-rational v0.2.4
[INFO] [stderr]    Compiling bytemuck v1.13.0
[INFO] [stderr]    Compiling approx v0.4.0
[INFO] [stderr]    Compiling cblas-sys v0.1.4
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]    Compiling typenum v1.16.0
[INFO] [stderr]    Compiling katexit v0.1.4
[INFO] [stderr]    Compiling lapack-sys v0.14.0
[INFO] [stderr]    Compiling approx v0.5.1
[INFO] [stderr]    Compiling cauchy v0.4.0
[INFO] [stderr]    Compiling nalgebra-macros v0.2.0
[INFO] [stderr]    Compiling matrixmultiply v0.3.2
[INFO] [stderr]    Compiling safe_arch v0.6.0
[INFO] [stderr]    Compiling netlib-src v0.8.0
[INFO] [stderr]    Compiling ndarray v0.15.6
[INFO] [stderr]    Compiling wide v0.7.6
[INFO] [stderr]    Compiling num v0.2.1
[INFO] [stderr]    Compiling argmin_testfunctions v0.1.1
[INFO] [stderr]    Compiling simba v0.8.0
[INFO] [stderr]    Compiling finitediff v0.1.4
[INFO] [stderr]    Compiling nalgebra v0.32.1
[INFO] [stderr]    Compiling lax v0.16.0
[INFO] [stderr]    Compiling ndarray-linalg v0.16.0
[INFO] [stderr]    Compiling argmin v0.8.1 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminMul<f64, Vec<f64>>` is not satisfied
[INFO] [stdout]   --> examples/steepestdescent.rs:58:35
[INFO] [stdout]    |
[INFO] [stdout] 58 |     let res = Executor::new(cost, solver)
[INFO] [stdout]    |               -------------       ^^^^^^ the trait `argmin_math::ArgminMul<f64, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminMul<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminMul<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminMul<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminMul<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminMul<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminMul<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminMul<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminMul<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout]    = note: required for `SteepestDescent<MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>>` to implement `Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]   --> examples/nonlinear_cg.rs:61:39
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let res = Executor::new(operator, solver)
[INFO] [stdout]    |               -------------           ^^^^^^ the trait `argmin_math::ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminAdd<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminAdd<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminAdd<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminAdd<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminAdd<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminAdd<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminAdd<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminAdd<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout]    = note: required for `NonlinearConjugateGradient<Vec<f64>, MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>, PolakRibiere, f64>` to implement `Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `{float}: argmin_math::ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]   --> examples/checkpoint.rs:49:44
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let res = Executor::new(Rosenbrock {}, solver)
[INFO] [stdout]    |               -------------                ^^^^^^ the trait `argmin_math::ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `{float}`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminMul<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminMul<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminMul<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminMul<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminMul<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminMul<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminMul<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminMul<isize, isize>>
[INFO] [stdout]              <u16 as argmin_math::ArgminMul<u16, u16>>
[INFO] [stdout]            and 4 others
[INFO] [stdout]    = note: required for `Vec<f64>` to implement `argmin_math::ArgminScaledSub<Vec<f64>, {float}, Vec<f64>>`
[INFO] [stdout]    = note: required for `Landweber<{float}>` to implement `Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), {float}>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminMul<f64, Vec<f64>>` is not satisfied
[INFO] [stdout]   --> examples/nonlinear_cg.rs:61:39
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let res = Executor::new(operator, solver)
[INFO] [stdout]    |               -------------           ^^^^^^ the trait `argmin_math::ArgminMul<f64, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminMul<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminMul<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminMul<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminMul<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminMul<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminMul<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminMul<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminMul<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout]    = note: required for `NonlinearConjugateGradient<Vec<f64>, MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>, PolakRibiere, f64>` to implement `Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]   --> examples/checkpoint.rs:49:44
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let res = Executor::new(Rosenbrock {}, solver)
[INFO] [stdout]    |               -------------                ^^^^^^ the trait `argmin_math::ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminSub<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminSub<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminSub<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminSub<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminSub<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminSub<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminSub<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminSub<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout]    = note: required for `Vec<f64>` to implement `argmin_math::ArgminScaledSub<Vec<f64>, {float}, Vec<f64>>`
[INFO] [stdout]    = note: required for `Landweber<{float}>` to implement `Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), {float}>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: argmin_math::ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]   --> examples/backtracking.rs:59:39
[INFO] [stdout]    |
[INFO] [stdout] 59 |     let res = Executor::new(operator, solver)
[INFO] [stdout]    |               -------------           ^^^^^^ the trait `argmin_math::ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `argmin_math::ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]    = note: required for `Vec<f64>` to implement `argmin_math::ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    = note: required for `BacktrackingLineSearch<Vec<f64>, Vec<f64>, ArmijoCondition<f64>, f64>` to implement `Solver<Sphere, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]   --> examples/steepestdescent.rs:58:35
[INFO] [stdout]    |
[INFO] [stdout] 58 |     let res = Executor::new(cost, solver)
[INFO] [stdout]    |               -------------       ^^^^^^ the trait `argmin_math::ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminDot<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminDot<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminDot<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminDot<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminDot<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminDot<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminDot<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminDot<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout]    = note: required for `MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>` to implement `Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    = note: 1 redundant requirement hidden
[INFO] [stdout]    = note: required for `SteepestDescent<MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>>` to implement `Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: argmin_math::ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]   --> examples/steepestdescent.rs:58:35
[INFO] [stdout]    |
[INFO] [stdout] 58 |     let res = Executor::new(cost, solver)
[INFO] [stdout]    |               -------------       ^^^^^^ the trait `argmin_math::ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `argmin_math::ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]    = note: required for `Vec<f64>` to implement `argmin_math::ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    = note: required for `MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>` to implement `Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    = note: 1 redundant requirement hidden
[INFO] [stdout]    = note: required for `SteepestDescent<MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>>` to implement `Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]   --> examples/nonlinear_cg.rs:61:39
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let res = Executor::new(operator, solver)
[INFO] [stdout]    |               -------------           ^^^^^^ the trait `argmin_math::ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminDot<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminDot<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminDot<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminDot<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminDot<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminDot<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminDot<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminDot<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout]    = note: required for `NonlinearConjugateGradient<Vec<f64>, MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>, PolakRibiere, f64>` to implement `Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminL2Norm<f64>` is not satisfied
[INFO] [stdout]   --> examples/nonlinear_cg.rs:61:39
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let res = Executor::new(operator, solver)
[INFO] [stdout]    |               -------------           ^^^^^^ the trait `argmin_math::ArgminL2Norm<f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminL2Norm<U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminL2Norm<f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminL2Norm<f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminL2Norm<i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminL2Norm<i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminL2Norm<i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminL2Norm<i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminL2Norm<isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminL2Norm<f32>>
[INFO] [stdout]            and 6 others
[INFO] [stdout]    = note: required for `NonlinearConjugateGradient<Vec<f64>, MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>, PolakRibiere, f64>` to implement `Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]   --> examples/steepestdescent.rs:58:35
[INFO] [stdout]    |
[INFO] [stdout] 58 |     let res = Executor::new(cost, solver)
[INFO] [stdout]    |               -------------       ^^^^^^ the trait `argmin_math::ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminAdd<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminAdd<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminAdd<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminAdd<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminAdd<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminAdd<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminAdd<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminAdd<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout]    = note: required for `Vec<f64>` to implement `argmin_math::ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    = note: required for `MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>` to implement `Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    = note: 1 redundant requirement hidden
[INFO] [stdout]    = note: required for `SteepestDescent<MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>>` to implement `Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]   --> examples/nonlinear_cg.rs:61:39
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let res = Executor::new(operator, solver)
[INFO] [stdout]    |               -------------           ^^^^^^ the trait `argmin_math::ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminSub<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminSub<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminSub<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminSub<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminSub<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminSub<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminSub<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminSub<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout]    = note: required for `PolakRibiere` to implement `NLCGBetaUpdate<Vec<f64>, Vec<f64>, f64>`
[INFO] [stdout]    = note: required for `NonlinearConjugateGradient<Vec<f64>, MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>, PolakRibiere, f64>` to implement `Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: argmin_math::ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]   --> examples/nonlinear_cg.rs:61:39
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let res = Executor::new(operator, solver)
[INFO] [stdout]    |               -------------           ^^^^^^ the trait `argmin_math::ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `argmin_math::ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]    = note: required for `Vec<f64>` to implement `argmin_math::ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    = note: required for `MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>` to implement `Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    = note: 1 redundant requirement hidden
[INFO] [stdout]    = note: required for `NonlinearConjugateGradient<Vec<f64>, MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>, PolakRibiere, f64>` to implement `Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]   --> examples/backtracking.rs:59:39
[INFO] [stdout]    |
[INFO] [stdout] 59 |     let res = Executor::new(operator, solver)
[INFO] [stdout]    |               -------------           ^^^^^^ the trait `argmin_math::ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminAdd<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminAdd<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminAdd<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminAdd<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminAdd<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminAdd<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminAdd<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminAdd<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout]    = note: required for `Vec<f64>` to implement `argmin_math::ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    = note: required for `BacktrackingLineSearch<Vec<f64>, Vec<f64>, ArmijoCondition<f64>, f64>` to implement `Solver<Sphere, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]   --> examples/backtracking.rs:59:39
[INFO] [stdout]    |
[INFO] [stdout] 59 |     let res = Executor::new(operator, solver)
[INFO] [stdout]    |               -------------           ^^^^^^ the trait `argmin_math::ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminDot<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminDot<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminDot<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminDot<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminDot<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminDot<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminDot<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminDot<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout]    = note: required for `ArmijoCondition<f64>` to implement `LineSearchCondition<Vec<f64>, Vec<f64>, f64>`
[INFO] [stdout]    = note: required for `BacktrackingLineSearch<Vec<f64>, Vec<f64>, ArmijoCondition<f64>, f64>` to implement `Solver<Sphere, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<{float}>: argmin_math::ArgminSub<Vec<{float}>, Vec<{float}>>` is not satisfied
[INFO] [stdout]   --> examples/particleswarm.rs:26:37
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let solver = ParticleSwarm::new((vec![-4.0, -4.0], vec![4.0, 4.0]), 40);
[INFO] [stdout]    |                  ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `argmin_math::ArgminSub<Vec<{float}>, Vec<{float}>>` is not implemented for `Vec<{float}>`
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminSub<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminSub<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminSub<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminSub<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminSub<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminSub<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminSub<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminSub<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout] note: required by a bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/solver/particleswarm/mod.rs:68:28
[INFO] [stdout]    |
[INFO] [stdout] 68 |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<{float}>: argmin_math::ArgminMul<_, Vec<{float}>>` is not satisfied
[INFO] [stdout]   --> examples/particleswarm.rs:26:37
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let solver = ParticleSwarm::new((vec![-4.0, -4.0], vec![4.0, 4.0]), 40);
[INFO] [stdout]    |                  ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `argmin_math::ArgminMul<_, Vec<{float}>>` is not implemented for `Vec<{float}>`
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminMul<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminMul<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminMul<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminMul<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminMul<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminMul<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminMul<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminMul<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout] note: required by a bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/solver/particleswarm/mod.rs:68:46
[INFO] [stdout]    |
[INFO] [stdout] 68 |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]    |                                              ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<{float}>: argmin_math::ArgminRandom` is not satisfied
[INFO] [stdout]   --> examples/particleswarm.rs:26:37
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let solver = ParticleSwarm::new((vec![-4.0, -4.0], vec![4.0, 4.0]), 40);
[INFO] [stdout]    |                  ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `argmin_math::ArgminRandom` is not implemented for `Vec<{float}>`
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminRandom`:
[INFO] [stdout]              f32
[INFO] [stdout]              f64
[INFO] [stdout]              i16
[INFO] [stdout]              i32
[INFO] [stdout]              i64
[INFO] [stdout]              i8
[INFO] [stdout]              isize
[INFO] [stdout]              u16
[INFO] [stdout]            and 4 others
[INFO] [stdout] note: required by a bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/solver/particleswarm/mod.rs:68:64
[INFO] [stdout]    |
[INFO] [stdout] 68 |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]    |                                                                ^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<{float}>: argmin_math::ArgminZeroLike` is not satisfied
[INFO] [stdout]   --> examples/particleswarm.rs:26:37
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let solver = ParticleSwarm::new((vec![-4.0, -4.0], vec![4.0, 4.0]), 40);
[INFO] [stdout]    |                  ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `argmin_math::ArgminZeroLike` is not implemented for `Vec<{float}>`
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminZeroLike`:
[INFO] [stdout]              f32
[INFO] [stdout]              f64
[INFO] [stdout]              i16
[INFO] [stdout]              i32
[INFO] [stdout]              i64
[INFO] [stdout]              i8
[INFO] [stdout]              isize
[INFO] [stdout]              num_complex::Complex<f32>
[INFO] [stdout]            and 16 others
[INFO] [stdout] note: required by a bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/solver/particleswarm/mod.rs:68:79
[INFO] [stdout]    |
[INFO] [stdout] 68 |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]    |                                                                               ^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]   --> examples/particleswarm.rs:28:44
[INFO] [stdout]    |
[INFO] [stdout] 28 |     let res = Executor::new(cost_function, solver)
[INFO] [stdout]    |               -------------                ^^^^^^ the trait `argmin_math::ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminAdd<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminAdd<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminAdd<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminAdd<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminAdd<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminAdd<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminAdd<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminAdd<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout]    = note: required for `ParticleSwarm<Vec<f64>, f64>` to implement `Solver<Himmelblau, PopulationState<Particle<Vec<f64>, f64>, f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `{float}: argmin_math::ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]   --> examples/landweber.rs:32:39
[INFO] [stdout]    |
[INFO] [stdout] 32 |     let res = Executor::new(operator, solver)
[INFO] [stdout]    |               -------------           ^^^^^^ the trait `argmin_math::ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `{float}`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminMul<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminMul<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminMul<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminMul<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminMul<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminMul<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminMul<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminMul<isize, isize>>
[INFO] [stdout]              <u16 as argmin_math::ArgminMul<u16, u16>>
[INFO] [stdout]            and 4 others
[INFO] [stdout]    = note: required for `Vec<f64>` to implement `argmin_math::ArgminScaledSub<Vec<f64>, {float}, Vec<f64>>`
[INFO] [stdout]    = note: required for `Landweber<{float}>` to implement `Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), {float}>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]   --> examples/morethuente.rs:56:39
[INFO] [stdout]    |
[INFO] [stdout] 56 |     let res = Executor::new(operator, solver)
[INFO] [stdout]    |               -------------           ^^^^^^ the trait `argmin_math::ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminDot<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminDot<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminDot<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminDot<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminDot<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminDot<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminDot<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminDot<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout]    = note: required for `MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>` to implement `Solver<Sphere, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]   --> examples/particleswarm.rs:28:44
[INFO] [stdout]    |
[INFO] [stdout] 28 |     let res = Executor::new(cost_function, solver)
[INFO] [stdout]    |               -------------                ^^^^^^ the trait `argmin_math::ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminSub<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminSub<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminSub<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminSub<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminSub<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminSub<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminSub<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminSub<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout]    = note: required for `ParticleSwarm<Vec<f64>, f64>` to implement `Solver<Himmelblau, PopulationState<Particle<Vec<f64>, f64>, f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminMul<f64, Vec<f64>>` is not satisfied
[INFO] [stdout]   --> examples/particleswarm.rs:28:44
[INFO] [stdout]    |
[INFO] [stdout] 28 |     let res = Executor::new(cost_function, solver)
[INFO] [stdout]    |               -------------                ^^^^^^ the trait `argmin_math::ArgminMul<f64, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminMul<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminMul<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminMul<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminMul<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminMul<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminMul<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminMul<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminMul<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout]    = note: required for `ParticleSwarm<Vec<f64>, f64>` to implement `Solver<Himmelblau, PopulationState<Particle<Vec<f64>, f64>, f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]   --> examples/landweber.rs:32:39
[INFO] [stdout]    |
[INFO] [stdout] 32 |     let res = Executor::new(operator, solver)
[INFO] [stdout]    |               -------------           ^^^^^^ the trait `argmin_math::ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminSub<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminSub<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminSub<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminSub<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminSub<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminSub<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminSub<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminSub<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout]    = note: required for `Vec<f64>` to implement `argmin_math::ArgminScaledSub<Vec<f64>, {float}, Vec<f64>>`
[INFO] [stdout]    = note: required for `Landweber<{float}>` to implement `Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), {float}>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminZeroLike` is not satisfied
[INFO] [stdout]   --> examples/particleswarm.rs:28:44
[INFO] [stdout]    |
[INFO] [stdout] 28 |     let res = Executor::new(cost_function, solver)
[INFO] [stdout]    |               -------------                ^^^^^^ the trait `argmin_math::ArgminZeroLike` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminZeroLike`:
[INFO] [stdout]              f32
[INFO] [stdout]              f64
[INFO] [stdout]              i16
[INFO] [stdout]              i32
[INFO] [stdout]              i64
[INFO] [stdout]              i8
[INFO] [stdout]              isize
[INFO] [stdout]              num_complex::Complex<f32>
[INFO] [stdout]            and 16 others
[INFO] [stdout]    = note: required for `ParticleSwarm<Vec<f64>, f64>` to implement `Solver<Himmelblau, PopulationState<Particle<Vec<f64>, f64>, f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: argmin_math::ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]   --> examples/morethuente.rs:56:39
[INFO] [stdout]    |
[INFO] [stdout] 56 |     let res = Executor::new(operator, solver)
[INFO] [stdout]    |               -------------           ^^^^^^ the trait `argmin_math::ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `argmin_math::ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]    = note: required for `Vec<f64>` to implement `argmin_math::ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    = note: required for `MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>` to implement `Solver<Sphere, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminRandom` is not satisfied
[INFO] [stdout]   --> examples/particleswarm.rs:28:44
[INFO] [stdout]    |
[INFO] [stdout] 28 |     let res = Executor::new(cost_function, solver)
[INFO] [stdout]    |               -------------                ^^^^^^ the trait `argmin_math::ArgminRandom` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminRandom`:
[INFO] [stdout]              f32
[INFO] [stdout]              f64
[INFO] [stdout]              i16
[INFO] [stdout]              i32
[INFO] [stdout]              i64
[INFO] [stdout]              i8
[INFO] [stdout]              isize
[INFO] [stdout]              u16
[INFO] [stdout]            and 4 others
[INFO] [stdout]    = note: required for `ParticleSwarm<Vec<f64>, f64>` to implement `Solver<Himmelblau, PopulationState<Particle<Vec<f64>, f64>, f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]   --> examples/morethuente.rs:56:39
[INFO] [stdout]    |
[INFO] [stdout] 56 |     let res = Executor::new(operator, solver)
[INFO] [stdout]    |               -------------           ^^^^^^ the trait `argmin_math::ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminAdd<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminAdd<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminAdd<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminAdd<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminAdd<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminAdd<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminAdd<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminAdd<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout]    = note: required for `Vec<f64>` to implement `argmin_math::ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    = note: required for `MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>` to implement `Solver<Sphere, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminMinMax` is not satisfied
[INFO] [stdout]   --> examples/particleswarm.rs:28:44
[INFO] [stdout]    |
[INFO] [stdout] 28 |     let res = Executor::new(cost_function, solver)
[INFO] [stdout]    |               -------------                ^^^^^^ the trait `argmin_math::ArgminMinMax` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `Solver<O, PopulationState<Particle<P, F>, F>>` is implemented for `ParticleSwarm<P, F>`
[INFO] [stdout]    = note: required for `ParticleSwarm<Vec<f64>, f64>` to implement `Solver<Himmelblau, PopulationState<Particle<Vec<f64>, f64>, f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `configure` exists for struct `Executor<Rosenbrock, NonlinearConjugateGradient<Vec<f64>, ..., ..., ...>, ...>`, but its trait bounds were not satisfied
[INFO] [stdout]   --> examples/nonlinear_cg.rs:62:10
[INFO] [stdout]    |
[INFO] [stdout] 61 |       let res = Executor::new(operator, solver)
[INFO] [stdout]    |  _______________-
[INFO] [stdout] 62 | |         .configure(|state| state.param(init_param).max_iters(20).target_cost(0.0))
[INFO] [stdout]    | |         -^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]    | |_________|
[INFO] [stdout]    | 
[INFO] [stdout]    |
[INFO] [stdout]   ::: /opt/rustwide/workdir/src/solver/conjugategradient/nonlinear_cg.rs:32:1
[INFO] [stdout]    |
[INFO] [stdout] 32 |   pub struct NonlinearConjugateGradient<P, L, B, F> {
[INFO] [stdout]    |   ------------------------------------------------- doesn't satisfy `_: Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the full type name has been written to '/opt/rustwide/target/debug/examples/nonlinear_cg-92873d55c5808730.long-type-12415080264366956331.txt'
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `NonlinearConjugateGradient<Vec<f64>, MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>, PolakRibiere, f64>: Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `configure` exists for struct `Executor<Rosenbrock, SteepestDescent<MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>>, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`, but its trait bounds were not satisfied
[INFO] [stdout]   --> examples/steepestdescent.rs:59:10
[INFO] [stdout]    |
[INFO] [stdout] 58 |       let res = Executor::new(cost, solver)
[INFO] [stdout]    |  _______________-
[INFO] [stdout] 59 | |         .configure(|state| state.param(init_param).max_iters(10))
[INFO] [stdout]    | |         -^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]    | |_________|
[INFO] [stdout]    | 
[INFO] [stdout]    |
[INFO] [stdout]   ::: /opt/rustwide/workdir/src/solver/gradientdescent/steepestdescent.rs:31:1
[INFO] [stdout]    |
[INFO] [stdout] 31 |   pub struct SteepestDescent<L> {
[INFO] [stdout]    |   ----------------------------- doesn't satisfy `_: Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `SteepestDescent<MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>>: Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `configure` exists for struct `Executor<Rosenbrock, Landweber<{float}>, IterState<Vec<f64>, Vec<f64>, (), (), {float}>>`, but its trait bounds were not satisfied
[INFO] [stdout]   --> examples/checkpoint.rs:50:10
[INFO] [stdout]    |
[INFO] [stdout] 49 |       let res = Executor::new(Rosenbrock {}, solver)
[INFO] [stdout]    |  _______________-
[INFO] [stdout] 50 | |         .configure(|state| state.param(init_param).max_iters(iters))
[INFO] [stdout]    | |         -^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]    | |_________|
[INFO] [stdout]    | 
[INFO] [stdout]    |
[INFO] [stdout]   ::: /opt/rustwide/workdir/src/solver/landweber/mod.rs:46:1
[INFO] [stdout]    |
[INFO] [stdout] 46 |   pub struct Landweber<F> {
[INFO] [stdout]    |   ----------------------- doesn't satisfy `_: Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), {float}>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `Landweber<{float}>: Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), {float}>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `add_observer` exists for struct `Executor<Sphere, BacktrackingLineSearch<Vec<f64>, Vec<f64>, ArmijoCondition<f64>, f64>, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`, but its trait bounds were not satisfied
[INFO] [stdout]   --> examples/backtracking.rs:60:10
[INFO] [stdout]    |
[INFO] [stdout] 59 |       let res = Executor::new(operator, solver)
[INFO] [stdout]    |  _______________-
[INFO] [stdout] 60 | |         .add_observer(SlogLogger::term(), ObserverMode::Always)
[INFO] [stdout]    | |         -^^^^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]    | |_________|
[INFO] [stdout]    | 
[INFO] [stdout]    |
[INFO] [stdout]   ::: /opt/rustwide/workdir/src/solver/linesearch/backtracking.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 |   pub struct BacktrackingLineSearch<P, G, L, F> {
[INFO] [stdout]    |   --------------------------------------------- doesn't satisfy `_: Solver<Sphere, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `BacktrackingLineSearch<Vec<f64>, Vec<f64>, ArmijoCondition<f64>, f64>: Solver<Sphere, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<{float}>: argmin_math::ArgminDot<_, _>` is not satisfied
[INFO] [stdout]   --> examples/hagerzhang.rs:41:22
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let mut solver = HagerZhangLineSearch::new();
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `argmin_math::ArgminDot<_, _>` is not implemented for `Vec<{float}>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminDot<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminDot<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminDot<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminDot<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminDot<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminDot<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminDot<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminDot<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout] note: required by a bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/solver/linesearch/hagerzhang.rs:94:35
[INFO] [stdout]    |
[INFO] [stdout] 94 |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `configure` exists for struct `Executor<Rosenbrock, Landweber<{float}>, IterState<Vec<f64>, Vec<f64>, (), (), {float}>>`, but its trait bounds were not satisfied
[INFO] [stdout]   --> examples/landweber.rs:33:10
[INFO] [stdout]    |
[INFO] [stdout] 32 |       let res = Executor::new(operator, solver)
[INFO] [stdout]    |  _______________-
[INFO] [stdout] 33 | |         .configure(|state| state.param(init_param).max_iters(iters))
[INFO] [stdout]    | |         -^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]    | |_________|
[INFO] [stdout]    | 
[INFO] [stdout]    |
[INFO] [stdout]   ::: /opt/rustwide/workdir/src/solver/landweber/mod.rs:46:1
[INFO] [stdout]    |
[INFO] [stdout] 46 |   pub struct Landweber<F> {
[INFO] [stdout]    |   ----------------------- doesn't satisfy `_: Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), {float}>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `Landweber<{float}>: Solver<Rosenbrock, IterState<Vec<f64>, Vec<f64>, (), (), {float}>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 5 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `configure` exists for struct `Executor<Himmelblau, ParticleSwarm<Vec<f64>, f64>, PopulationState<Particle<Vec<f64>, f64>, f64>>`, but its trait bounds were not satisfied
[INFO] [stdout]   --> examples/particleswarm.rs:29:10
[INFO] [stdout]    |
[INFO] [stdout] 28 |       let res = Executor::new(cost_function, solver)
[INFO] [stdout]    |  _______________-
[INFO] [stdout] 29 | |         .configure(|state| state.max_iters(100))
[INFO] [stdout]    | |         -^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]    | |_________|
[INFO] [stdout]    | 
[INFO] [stdout]    |
[INFO] [stdout]   ::: /opt/rustwide/workdir/src/solver/particleswarm/mod.rs:53:1
[INFO] [stdout]    |
[INFO] [stdout] 53 |   pub struct ParticleSwarm<P, F> {
[INFO] [stdout]    |   ------------------------------ doesn't satisfy `_: Solver<Himmelblau, PopulationState<Particle<Vec<f64>, f64>, f64>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `ParticleSwarm<Vec<f64>, f64>: Solver<Himmelblau, PopulationState<Particle<Vec<f64>, f64>, f64>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `add_observer` exists for struct `Executor<Sphere, MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`, but its trait bounds were not satisfied
[INFO] [stdout]   --> examples/morethuente.rs:57:10
[INFO] [stdout]    |
[INFO] [stdout] 56 |       let res = Executor::new(operator, solver)
[INFO] [stdout]    |  _______________-
[INFO] [stdout] 57 | |         .add_observer(SlogLogger::term(), ObserverMode::Always)
[INFO] [stdout]    | |         -^^^^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]    | |_________|
[INFO] [stdout]    | 
[INFO] [stdout]    |
[INFO] [stdout]   ::: /opt/rustwide/workdir/src/solver/linesearch/morethuente.rs:55:1
[INFO] [stdout]    |
[INFO] [stdout] 55 |   pub struct MoreThuenteLineSearch<P, G, F> {
[INFO] [stdout]    |   ----------------------------------------- doesn't satisfy `_: Solver<Sphere, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>: Solver<Sphere, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<{float}>: argmin_math::ArgminAdd<Vec<{float}>, Vec<{float}>>` is not satisfied
[INFO] [stdout]   --> examples/hagerzhang.rs:41:22
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let mut solver = HagerZhangLineSearch::new();
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `argmin_math::ArgminAdd<Vec<{float}>, Vec<{float}>>` is not implemented for `Vec<{float}>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminAdd<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminAdd<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminAdd<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminAdd<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminAdd<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminAdd<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminAdd<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminAdd<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout]    = note: required for `Vec<{float}>` to implement `argmin_math::ArgminScaledAdd<Vec<{float}>, _, Vec<{float}>>`
[INFO] [stdout] note: required by a bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]    |
[INFO] [stdout] 94 |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `argmin` due to 4 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] Some errors have detailed explanations: E0277, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `argmin` due to 4 previous errors
[INFO] [stdout] error: aborting due to 11 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0599.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `argmin` due to 12 previous errors
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `argmin` due to 6 previous errors
[INFO] [stderr] error: could not compile `argmin` due to 5 previous errors
[INFO] [stderr] error: could not compile `argmin` due to 8 previous errors
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `argmin` due to 5 previous errors
[INFO] [stdout] error[E0277]: the trait bound `{float}: argmin_math::ArgminMul<Vec<{float}>, Vec<{float}>>` is not satisfied
[INFO] [stdout]   --> examples/hagerzhang.rs:41:22
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let mut solver = HagerZhangLineSearch::new();
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `argmin_math::ArgminMul<Vec<{float}>, Vec<{float}>>` is not implemented for `{float}`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminMul<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminMul<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminMul<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminMul<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminMul<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminMul<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminMul<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminMul<isize, isize>>
[INFO] [stdout]              <u16 as argmin_math::ArgminMul<u16, u16>>
[INFO] [stdout]            and 4 others
[INFO] [stdout]    = note: required for `Vec<{float}>` to implement `argmin_math::ArgminScaledAdd<Vec<{float}>, {float}, Vec<{float}>>`
[INFO] [stdout] note: required by a bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]    |
[INFO] [stdout] 94 |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]   --> examples/hagerzhang.rs:56:39
[INFO] [stdout]    |
[INFO] [stdout] 56 |     let res = Executor::new(operator, solver)
[INFO] [stdout]    |               -------------           ^^^^^^ the trait `argmin_math::ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminDot<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminDot<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminDot<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminDot<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminDot<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminDot<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminDot<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminDot<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout]    = note: required for `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>` to implement `Solver<Sphere, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: argmin_math::ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]   --> examples/hagerzhang.rs:56:39
[INFO] [stdout]    |
[INFO] [stdout] 56 |     let res = Executor::new(operator, solver)
[INFO] [stdout]    |               -------------           ^^^^^^ the trait `argmin_math::ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `argmin_math::ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]    = note: required for `Vec<f64>` to implement `argmin_math::ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    = note: required for `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>` to implement `Solver<Sphere, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]   --> examples/hagerzhang.rs:56:39
[INFO] [stdout]    |
[INFO] [stdout] 56 |     let res = Executor::new(operator, solver)
[INFO] [stdout]    |               -------------           ^^^^^^ the trait `argmin_math::ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminAdd<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminAdd<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminAdd<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminAdd<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminAdd<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminAdd<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminAdd<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminAdd<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout]    = note: required for `Vec<f64>` to implement `argmin_math::ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    = note: required for `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>` to implement `Solver<Sphere, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]   --> examples/conjugategradient.rs:37:39
[INFO] [stdout]    |
[INFO] [stdout] 37 |     let res = Executor::new(operator, solver)
[INFO] [stdout]    |               -------------           ^^^^^^ the trait `argmin_math::ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminDot<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminDot<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminDot<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminDot<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminDot<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminDot<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminDot<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminDot<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout]    = note: required for `ConjugateGradient<Vec<f64>, f64>` to implement `Solver<MyProblem, IterState<Vec<f64>, (), (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]   --> examples/conjugategradient.rs:37:39
[INFO] [stdout]    |
[INFO] [stdout] 37 |     let res = Executor::new(operator, solver)
[INFO] [stdout]    |               -------------           ^^^^^^ the trait `argmin_math::ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminSub<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminSub<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminSub<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminSub<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminSub<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminSub<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminSub<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminSub<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout]    = note: required for `ConjugateGradient<Vec<f64>, f64>` to implement `Solver<MyProblem, IterState<Vec<f64>, (), (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminConj` is not satisfied
[INFO] [stdout]   --> examples/conjugategradient.rs:37:39
[INFO] [stdout]    |
[INFO] [stdout] 37 |     let res = Executor::new(operator, solver)
[INFO] [stdout]    |               -------------           ^^^^^^ the trait `argmin_math::ArgminConj` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminConj`:
[INFO] [stdout]              f32
[INFO] [stdout]              f64
[INFO] [stdout]              i16
[INFO] [stdout]              i32
[INFO] [stdout]              i64
[INFO] [stdout]              i8
[INFO] [stdout]              isize
[INFO] [stdout]              num_complex::Complex<f32>
[INFO] [stdout]            and 11 others
[INFO] [stdout]    = note: required for `ConjugateGradient<Vec<f64>, f64>` to implement `Solver<MyProblem, IterState<Vec<f64>, (), (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminMul<f64, Vec<f64>>` is not satisfied
[INFO] [stdout]   --> examples/conjugategradient.rs:37:39
[INFO] [stdout]    |
[INFO] [stdout] 37 |     let res = Executor::new(operator, solver)
[INFO] [stdout]    |               -------------           ^^^^^^ the trait `argmin_math::ArgminMul<f64, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminMul<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminMul<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminMul<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminMul<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminMul<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminMul<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminMul<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminMul<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout]    = note: required for `ConjugateGradient<Vec<f64>, f64>` to implement `Solver<MyProblem, IterState<Vec<f64>, (), (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: argmin_math::ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]   --> examples/conjugategradient.rs:37:39
[INFO] [stdout]    |
[INFO] [stdout] 37 |     let res = Executor::new(operator, solver)
[INFO] [stdout]    |               -------------           ^^^^^^ the trait `argmin_math::ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `argmin_math::ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]    = note: required for `Vec<f64>` to implement `argmin_math::ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    = note: required for `ConjugateGradient<Vec<f64>, f64>` to implement `Solver<MyProblem, IterState<Vec<f64>, (), (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]   --> examples/conjugategradient.rs:37:39
[INFO] [stdout]    |
[INFO] [stdout] 37 |     let res = Executor::new(operator, solver)
[INFO] [stdout]    |               -------------           ^^^^^^ the trait `argmin_math::ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `argmin_math::ArgminAdd<T, U>`:
[INFO] [stdout]              <f32 as argmin_math::ArgminAdd<f32, f32>>
[INFO] [stdout]              <f64 as argmin_math::ArgminAdd<f64, f64>>
[INFO] [stdout]              <i16 as argmin_math::ArgminAdd<i16, i16>>
[INFO] [stdout]              <i32 as argmin_math::ArgminAdd<i32, i32>>
[INFO] [stdout]              <i64 as argmin_math::ArgminAdd<i64, i64>>
[INFO] [stdout]              <i8 as argmin_math::ArgminAdd<i8, i8>>
[INFO] [stdout]              <isize as argmin_math::ArgminAdd<isize, isize>>
[INFO] [stdout]              <num_complex::Complex<f32> as argmin_math::ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]            and 16 others
[INFO] [stdout]    = note: required for `Vec<f64>` to implement `argmin_math::ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    = note: required for `ConjugateGradient<Vec<f64>, f64>` to implement `Solver<MyProblem, IterState<Vec<f64>, (), (), (), f64>>`
[INFO] [stdout] note: required by a bound in `Executor::<O, S, I>::new`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/core/executor.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     S: Solver<O, I>,
[INFO] [stdout]    |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `configure` exists for struct `Executor<MyProblem, ConjugateGradient<Vec<f64>, f64>, IterState<Vec<f64>, (), (), (), f64>>`, but its trait bounds were not satisfied
[INFO] [stdout]   --> examples/conjugategradient.rs:38:10
[INFO] [stdout]    |
[INFO] [stdout] 37 |       let res = Executor::new(operator, solver)
[INFO] [stdout]    |  _______________-
[INFO] [stdout] 38 | |         .configure(|state| state.param(init_param).max_iters(2))
[INFO] [stdout]    | |         -^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]    | |_________|
[INFO] [stdout]    | 
[INFO] [stdout]    |
[INFO] [stdout]   ::: /opt/rustwide/workdir/src/solver/conjugategradient/cg.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 |   pub struct ConjugateGradient<P, F> {
[INFO] [stdout]    |   ---------------------------------- doesn't satisfy `_: Solver<MyProblem, IterState<Vec<f64>, (), (), (), f64>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `ConjugateGradient<Vec<f64>, f64>: Solver<MyProblem, IterState<Vec<f64>, (), (), (), f64>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `add_observer` exists for struct `Executor<Sphere, HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`, but its trait bounds were not satisfied
[INFO] [stdout]   --> examples/hagerzhang.rs:57:10
[INFO] [stdout]    |
[INFO] [stdout] 56 |       let res = Executor::new(operator, solver)
[INFO] [stdout]    |  _______________-
[INFO] [stdout] 57 | |         .add_observer(SlogLogger::term(), ObserverMode::Always)
[INFO] [stdout]    | |         -^^^^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]    | |_________|
[INFO] [stdout]    | 
[INFO] [stdout]    |
[INFO] [stdout]   ::: /opt/rustwide/workdir/src/solver/linesearch/hagerzhang.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 |   pub struct HagerZhangLineSearch<P, G, F> {
[INFO] [stdout]    |   ---------------------------------------- doesn't satisfy `_: Solver<Sphere, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>: Solver<Sphere, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `argmin` due to 8 previous errors
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `argmin` due to 8 previous errors
[INFO] [stdout] error[E0599]: the method `init` exists for struct `ConjugateGradient<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/conjugategradient/cg.rs:218:22
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct ConjugateGradient<P, F> {
[INFO] [stdout]     | ----------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `init` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, (), (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 218 |         let res = cg.init(&mut Problem::new(TestProblem::new()), IterState::new());
[INFO] [stdout]     |                      ^^^^ method cannot be called on `ConjugateGradient<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminConj`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminConj`
[INFO] [stdout]       `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/conjugategradient/cg.rs:97:11
[INFO] [stdout]     |
[INFO] [stdout] 92  | impl<P, O, F> Solver<O, IterState<P, (), (), (), F>> for ConjugateGradient<P, F>
[INFO] [stdout]     |               --------------------------------------     -----------------------
[INFO] [stdout] ...
[INFO] [stdout] 97  |         + ArgminDot<P, F>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 98  |         + ArgminSub<P, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 99  |         + ArgminScaledAdd<P, F, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 100 |         + ArgminConj
[INFO] [stdout]     |           ^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 101 |         + ArgminMul<F, P>,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `init` exists for struct `ConjugateGradient<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/conjugategradient/cg.rs:234:14
[INFO] [stdout]     |
[INFO] [stdout] 34  |   pub struct ConjugateGradient<P, F> {
[INFO] [stdout]     |   ----------------------------------
[INFO] [stdout]     |   |
[INFO] [stdout]     |   method `init` not found for this struct
[INFO] [stdout]     |   doesn't satisfy `_: Solver<_, IterState<Vec<f64>, (), (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 233 |           let (state_out, kv) = cg
[INFO] [stdout]     |  _______________________________-
[INFO] [stdout] 234 | |             .init(&mut Problem::new(TestProblem::new()), state.clone())
[INFO] [stdout]     | |             -^^^^ method cannot be called on `ConjugateGradient<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]     | |_____________|
[INFO] [stdout]     | 
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminConj`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminConj`
[INFO] [stdout]       `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/conjugategradient/cg.rs:97:11
[INFO] [stdout]     |
[INFO] [stdout] 92  | impl<P, O, F> Solver<O, IterState<P, (), (), (), F>> for ConjugateGradient<P, F>
[INFO] [stdout]     |               --------------------------------------     -----------------------
[INFO] [stdout] ...
[INFO] [stdout] 97  |         + ArgminDot<P, F>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 98  |         + ArgminSub<P, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 99  |         + ArgminScaledAdd<P, F, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 100 |         + ArgminConj
[INFO] [stdout]     |           ^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 101 |         + ArgminMul<F, P>,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `next_iter` exists for struct `ConjugateGradient<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/conjugategradient/cg.rs:266:22
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct ConjugateGradient<P, F> {
[INFO] [stdout]     | ----------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `next_iter` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, (), (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 266 |         let res = cg.next_iter(&mut Problem::new(TestProblem::new()), state);
[INFO] [stdout]     |                      ^^^^^^^^^ method cannot be called on `ConjugateGradient<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminConj`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminConj`
[INFO] [stdout]       `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/conjugategradient/cg.rs:97:11
[INFO] [stdout]     |
[INFO] [stdout] 92  | impl<P, O, F> Solver<O, IterState<P, (), (), (), F>> for ConjugateGradient<P, F>
[INFO] [stdout]     |               --------------------------------------     -----------------------
[INFO] [stdout] ...
[INFO] [stdout] 97  |         + ArgminDot<P, F>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 98  |         + ArgminSub<P, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 99  |         + ArgminScaledAdd<P, F, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 100 |         + ArgminConj
[INFO] [stdout]     |           ^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 101 |         + ArgminMul<F, P>,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `next_iter` exists for struct `ConjugateGradient<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/conjugategradient/cg.rs:284:22
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct ConjugateGradient<P, F> {
[INFO] [stdout]     | ----------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `next_iter` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, (), (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 284 |         let res = cg.next_iter(&mut Problem::new(TestProblem::new()), state);
[INFO] [stdout]     |                      ^^^^^^^^^ method cannot be called on `ConjugateGradient<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminConj`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminConj`
[INFO] [stdout]       `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/conjugategradient/cg.rs:97:11
[INFO] [stdout]     |
[INFO] [stdout] 92  | impl<P, O, F> Solver<O, IterState<P, (), (), (), F>> for ConjugateGradient<P, F>
[INFO] [stdout]     |               --------------------------------------     -----------------------
[INFO] [stdout] ...
[INFO] [stdout] 97  |         + ArgminDot<P, F>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 98  |         + ArgminSub<P, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 99  |         + ArgminScaledAdd<P, F, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 100 |         + ArgminConj
[INFO] [stdout]     |           ^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 101 |         + ArgminMul<F, P>,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `next_iter` exists for struct `ConjugateGradient<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/conjugategradient/cg.rs:303:22
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct ConjugateGradient<P, F> {
[INFO] [stdout]     | ----------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `next_iter` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, (), (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 303 |         let res = cg.next_iter(&mut Problem::new(TestProblem::new()), state);
[INFO] [stdout]     |                      ^^^^^^^^^ method cannot be called on `ConjugateGradient<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminConj`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminConj`
[INFO] [stdout]       `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/conjugategradient/cg.rs:97:11
[INFO] [stdout]     |
[INFO] [stdout] 92  | impl<P, O, F> Solver<O, IterState<P, (), (), (), F>> for ConjugateGradient<P, F>
[INFO] [stdout]     |               --------------------------------------     -----------------------
[INFO] [stdout] ...
[INFO] [stdout] 97  |         + ArgminDot<P, F>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 98  |         + ArgminSub<P, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 99  |         + ArgminScaledAdd<P, F, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 100 |         + ArgminConj
[INFO] [stdout]     |           ^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 101 |         + ArgminMul<F, P>,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `init` exists for struct `ConjugateGradient<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/conjugategradient/cg.rs:320:29
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct ConjugateGradient<P, F> {
[INFO] [stdout]     | ----------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `init` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, (), (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 320 |         let (state, _) = cg.init(&mut problem, state).unwrap();
[INFO] [stdout]     |                             ^^^^ method cannot be called on `ConjugateGradient<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminConj`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminConj`
[INFO] [stdout]       `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/conjugategradient/cg.rs:97:11
[INFO] [stdout]     |
[INFO] [stdout] 92  | impl<P, O, F> Solver<O, IterState<P, (), (), (), F>> for ConjugateGradient<P, F>
[INFO] [stdout]     |               --------------------------------------     -----------------------
[INFO] [stdout] ...
[INFO] [stdout] 97  |         + ArgminDot<P, F>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 98  |         + ArgminSub<P, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 99  |         + ArgminScaledAdd<P, F, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 100 |         + ArgminConj
[INFO] [stdout]     |           ^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 101 |         + ArgminMul<F, P>,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `next_iter` exists for struct `ConjugateGradient<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/conjugategradient/cg.rs:334:30
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct ConjugateGradient<P, F> {
[INFO] [stdout]     | ----------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `next_iter` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, (), (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 334 |         let (state, kv) = cg.next_iter(&mut problem, state).unwrap();
[INFO] [stdout]     |                              ^^^^^^^^^ method cannot be called on `ConjugateGradient<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminConj`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminConj`
[INFO] [stdout]       `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/conjugategradient/cg.rs:97:11
[INFO] [stdout]     |
[INFO] [stdout] 92  | impl<P, O, F> Solver<O, IterState<P, (), (), (), F>> for ConjugateGradient<P, F>
[INFO] [stdout]     |               --------------------------------------     -----------------------
[INFO] [stdout] ...
[INFO] [stdout] 97  |         + ArgminDot<P, F>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 98  |         + ArgminSub<P, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 99  |         + ArgminScaledAdd<P, F, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 100 |         + ArgminConj
[INFO] [stdout]     |           ^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 101 |         + ArgminMul<F, P>,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `init` exists for struct `NonlinearConjugateGradient<Vec<f64>, BacktrackingLineSearch<Vec<f64>, Vec<f64>, ..., ...>, ..., ...>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/conjugategradient/nonlinear_cg.rs:319:24
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct NonlinearConjugateGradient<P, L, B, F> {
[INFO] [stdout]     | -------------------------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `init` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, _, (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 319 |         let res = nlcg.init(&mut Problem::new(TestProblem::new()), IterState::new());
[INFO] [stdout]     |                        ^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/solver/linesearch/backtracking.rs:34:1
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct BacktrackingLineSearch<P, G, L, F> {
[INFO] [stdout]     | --------------------------------------------- doesn't satisfy `_: Solver<_, IterState<Vec<f64>, _, (), (), f64>>`
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the full type name has been written to '/opt/rustwide/target/debug/deps/argmin-bd6d66b6691d3f0e.long-type-6785489696898471203.txt'
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>: core::solver::Solver<_, iterstate::IterState<Vec<f64>, _, (), (), f64>>`
[INFO] [stdout]    --> src/solver/conjugategradient/nonlinear_cg.rs:125:57
[INFO] [stdout]     |
[INFO] [stdout] 121 | impl<O, P, G, L, B, F> Solver<O, IterState<P, G, (), (), F>>
[INFO] [stdout]     |                        -------------------------------------
[INFO] [stdout] 122 |     for NonlinearConjugateGradient<P, L, B, F>
[INFO] [stdout]     |         --------------------------------------
[INFO] [stdout] ...
[INFO] [stdout] 125 |     P: Clone + SerializeAlias + DeserializeOwnedAlias + ArgminAdd<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                                                         |
[INFO] [stdout]     |                                                         unsatisfied trait bound introduced here
[INFO] [stdout] ...
[INFO] [stdout] 132 |     L: Clone + LineSearch<P, F> + Solver<O, IterState<P, G, (), (), F>>,
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `core::solver::Solver` must be implemented
[INFO] [stdout]    --> src/core/solver.rs:68:1
[INFO] [stdout]     |
[INFO] [stdout] 68  | pub trait Solver<O, I: State> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `init` exists for struct `NonlinearConjugateGradient<Vec<f64>, BacktrackingLineSearch<Vec<f64>, Vec<f64>, ..., ...>, ..., ...>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/conjugategradient/nonlinear_cg.rs:340:14
[INFO] [stdout]     |
[INFO] [stdout] 32  |   pub struct NonlinearConjugateGradient<P, L, B, F> {
[INFO] [stdout]     |   -------------------------------------------------
[INFO] [stdout]     |   |
[INFO] [stdout]     |   method `init` not found for this struct
[INFO] [stdout]     |   doesn't satisfy `_: Solver<_, IterState<Vec<f64>, _, (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 339 |           let (state_out, kv) = nlcg
[INFO] [stdout]     |  _______________________________-
[INFO] [stdout] 340 | |             .init(&mut Problem::new(TestProblem::new()), state.clone())
[INFO] [stdout]     | |             -^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     | |_____________|
[INFO] [stdout]     | 
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/solver/linesearch/backtracking.rs:34:1
[INFO] [stdout]     |
[INFO] [stdout] 34  |   pub struct BacktrackingLineSearch<P, G, L, F> {
[INFO] [stdout]     |   --------------------------------------------- doesn't satisfy `_: Solver<_, IterState<Vec<f64>, _, (), (), f64>>`
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the full type name has been written to '/opt/rustwide/target/debug/deps/argmin-bd6d66b6691d3f0e.long-type-6785489696898471203.txt'
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>: core::solver::Solver<_, iterstate::IterState<Vec<f64>, _, (), (), f64>>`
[INFO] [stdout]    --> src/solver/conjugategradient/nonlinear_cg.rs:125:57
[INFO] [stdout]     |
[INFO] [stdout] 121 | impl<O, P, G, L, B, F> Solver<O, IterState<P, G, (), (), F>>
[INFO] [stdout]     |                        -------------------------------------
[INFO] [stdout] 122 |     for NonlinearConjugateGradient<P, L, B, F>
[INFO] [stdout]     |         --------------------------------------
[INFO] [stdout] ...
[INFO] [stdout] 125 |     P: Clone + SerializeAlias + DeserializeOwnedAlias + ArgminAdd<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                                                         |
[INFO] [stdout]     |                                                         unsatisfied trait bound introduced here
[INFO] [stdout] ...
[INFO] [stdout] 132 |     L: Clone + LineSearch<P, F> + Solver<O, IterState<P, G, (), (), F>>,
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `core::solver::Solver` must be implemented
[INFO] [stdout]    --> src/core/solver.rs:68:1
[INFO] [stdout]     |
[INFO] [stdout] 68  | pub trait Solver<O, I: State> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `next_iter` exists for struct `NonlinearConjugateGradient<Vec<f64>, BacktrackingLineSearch<Vec<f64>, Vec<f64>, ..., ...>, ..., ...>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/conjugategradient/nonlinear_cg.rs:380:24
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct NonlinearConjugateGradient<P, L, B, F> {
[INFO] [stdout]     | -------------------------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `next_iter` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, _, (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 380 |         let res = nlcg.next_iter(&mut Problem::new(TestProblem::new()), state);
[INFO] [stdout]     |                        ^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/solver/linesearch/backtracking.rs:34:1
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct BacktrackingLineSearch<P, G, L, F> {
[INFO] [stdout]     | --------------------------------------------- doesn't satisfy `_: Solver<_, IterState<Vec<f64>, _, (), (), f64>>`
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the full type name has been written to '/opt/rustwide/target/debug/deps/argmin-bd6d66b6691d3f0e.long-type-6785489696898471203.txt'
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>: core::solver::Solver<_, iterstate::IterState<Vec<f64>, _, (), (), f64>>`
[INFO] [stdout]    --> src/solver/conjugategradient/nonlinear_cg.rs:125:57
[INFO] [stdout]     |
[INFO] [stdout] 121 | impl<O, P, G, L, B, F> Solver<O, IterState<P, G, (), (), F>>
[INFO] [stdout]     |                        -------------------------------------
[INFO] [stdout] 122 |     for NonlinearConjugateGradient<P, L, B, F>
[INFO] [stdout]     |         --------------------------------------
[INFO] [stdout] ...
[INFO] [stdout] 125 |     P: Clone + SerializeAlias + DeserializeOwnedAlias + ArgminAdd<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                                                         |
[INFO] [stdout]     |                                                         unsatisfied trait bound introduced here
[INFO] [stdout] ...
[INFO] [stdout] 132 |     L: Clone + LineSearch<P, F> + Solver<O, IterState<P, G, (), (), F>>,
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `core::solver::Solver` must be implemented
[INFO] [stdout]    --> src/core/solver.rs:68:1
[INFO] [stdout]     |
[INFO] [stdout] 68  | pub trait Solver<O, I: State> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `next_iter` exists for struct `NonlinearConjugateGradient<Vec<f64>, BacktrackingLineSearch<Vec<f64>, Vec<f64>, ..., ...>, ..., ...>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/conjugategradient/nonlinear_cg.rs:402:24
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct NonlinearConjugateGradient<P, L, B, F> {
[INFO] [stdout]     | -------------------------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `next_iter` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, _, (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 402 |         let res = nlcg.next_iter(&mut Problem::new(TestProblem::new()), state);
[INFO] [stdout]     |                        ^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/solver/linesearch/backtracking.rs:34:1
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct BacktrackingLineSearch<P, G, L, F> {
[INFO] [stdout]     | --------------------------------------------- doesn't satisfy `_: Solver<_, IterState<Vec<f64>, _, (), (), f64>>`
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the full type name has been written to '/opt/rustwide/target/debug/deps/argmin-bd6d66b6691d3f0e.long-type-6785489696898471203.txt'
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>: core::solver::Solver<_, iterstate::IterState<Vec<f64>, _, (), (), f64>>`
[INFO] [stdout]    --> src/solver/conjugategradient/nonlinear_cg.rs:125:57
[INFO] [stdout]     |
[INFO] [stdout] 121 | impl<O, P, G, L, B, F> Solver<O, IterState<P, G, (), (), F>>
[INFO] [stdout]     |                        -------------------------------------
[INFO] [stdout] 122 |     for NonlinearConjugateGradient<P, L, B, F>
[INFO] [stdout]     |         --------------------------------------
[INFO] [stdout] ...
[INFO] [stdout] 125 |     P: Clone + SerializeAlias + DeserializeOwnedAlias + ArgminAdd<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                                                         |
[INFO] [stdout]     |                                                         unsatisfied trait bound introduced here
[INFO] [stdout] ...
[INFO] [stdout] 132 |     L: Clone + LineSearch<P, F> + Solver<O, IterState<P, G, (), (), F>>,
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `core::solver::Solver` must be implemented
[INFO] [stdout]    --> src/core/solver.rs:68:1
[INFO] [stdout]     |
[INFO] [stdout] 68  | pub trait Solver<O, I: State> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `next_iter` exists for struct `NonlinearConjugateGradient<Vec<f64>, BacktrackingLineSearch<Vec<f64>, Vec<f64>, ..., ...>, ..., ...>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/conjugategradient/nonlinear_cg.rs:428:24
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct NonlinearConjugateGradient<P, L, B, F> {
[INFO] [stdout]     | -------------------------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `next_iter` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, _, (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 428 |         let res = nlcg.next_iter(&mut problem, state);
[INFO] [stdout]     |                        ^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/solver/linesearch/backtracking.rs:34:1
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct BacktrackingLineSearch<P, G, L, F> {
[INFO] [stdout]     | --------------------------------------------- doesn't satisfy `_: Solver<_, IterState<Vec<f64>, _, (), (), f64>>`
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the full type name has been written to '/opt/rustwide/target/debug/deps/argmin-bd6d66b6691d3f0e.long-type-6785489696898471203.txt'
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>: core::solver::Solver<_, iterstate::IterState<Vec<f64>, _, (), (), f64>>`
[INFO] [stdout]    --> src/solver/conjugategradient/nonlinear_cg.rs:125:57
[INFO] [stdout]     |
[INFO] [stdout] 121 | impl<O, P, G, L, B, F> Solver<O, IterState<P, G, (), (), F>>
[INFO] [stdout]     |                        -------------------------------------
[INFO] [stdout] 122 |     for NonlinearConjugateGradient<P, L, B, F>
[INFO] [stdout]     |         --------------------------------------
[INFO] [stdout] ...
[INFO] [stdout] 125 |     P: Clone + SerializeAlias + DeserializeOwnedAlias + ArgminAdd<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                                                         |
[INFO] [stdout]     |                                                         unsatisfied trait bound introduced here
[INFO] [stdout] ...
[INFO] [stdout] 132 |     L: Clone + LineSearch<P, F> + Solver<O, IterState<P, G, (), (), F>>,
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `core::solver::Solver` must be implemented
[INFO] [stdout]    --> src/core/solver.rs:68:1
[INFO] [stdout]     |
[INFO] [stdout] 68  | pub trait Solver<O, I: State> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `init` exists for struct `NonlinearConjugateGradient<Vec<f64>, BacktrackingLineSearch<Vec<f64>, Vec<f64>, ..., ...>, ..., ...>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/conjugategradient/nonlinear_cg.rs:451:32
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct NonlinearConjugateGradient<P, L, B, F> {
[INFO] [stdout]     | -------------------------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `init` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, _, (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 451 |         let (state, kv) = nlcg.init(&mut problem, state).unwrap();
[INFO] [stdout]     |                                ^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/solver/linesearch/backtracking.rs:34:1
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct BacktrackingLineSearch<P, G, L, F> {
[INFO] [stdout]     | --------------------------------------------- doesn't satisfy `_: Solver<_, IterState<Vec<f64>, _, (), (), f64>>`
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the full type name has been written to '/opt/rustwide/target/debug/deps/argmin-bd6d66b6691d3f0e.long-type-6785489696898471203.txt'
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>: core::solver::Solver<_, iterstate::IterState<Vec<f64>, _, (), (), f64>>`
[INFO] [stdout]    --> src/solver/conjugategradient/nonlinear_cg.rs:125:57
[INFO] [stdout]     |
[INFO] [stdout] 121 | impl<O, P, G, L, B, F> Solver<O, IterState<P, G, (), (), F>>
[INFO] [stdout]     |                        -------------------------------------
[INFO] [stdout] 122 |     for NonlinearConjugateGradient<P, L, B, F>
[INFO] [stdout]     |         --------------------------------------
[INFO] [stdout] ...
[INFO] [stdout] 125 |     P: Clone + SerializeAlias + DeserializeOwnedAlias + ArgminAdd<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                                                         |
[INFO] [stdout]     |                                                         unsatisfied trait bound introduced here
[INFO] [stdout] ...
[INFO] [stdout] 132 |     L: Clone + LineSearch<P, F> + Solver<O, IterState<P, G, (), (), F>>,
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `core::solver::Solver` must be implemented
[INFO] [stdout]    --> src/core/solver.rs:68:1
[INFO] [stdout]     |
[INFO] [stdout] 68  | pub trait Solver<O, I: State> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `next_iter` exists for struct `NonlinearConjugateGradient<Vec<f64>, BacktrackingLineSearch<Vec<f64>, Vec<f64>, ..., ...>, ..., ...>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/conjugategradient/nonlinear_cg.rs:453:36
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct NonlinearConjugateGradient<P, L, B, F> {
[INFO] [stdout]     | -------------------------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `next_iter` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, _, (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 453 |         let (mut state, kv) = nlcg.next_iter(&mut problem, state).unwrap();
[INFO] [stdout]     |                                    ^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/solver/linesearch/backtracking.rs:34:1
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct BacktrackingLineSearch<P, G, L, F> {
[INFO] [stdout]     | --------------------------------------------- doesn't satisfy `_: Solver<_, IterState<Vec<f64>, _, (), (), f64>>`
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the full type name has been written to '/opt/rustwide/target/debug/deps/argmin-bd6d66b6691d3f0e.long-type-6785489696898471203.txt'
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>: core::solver::Solver<_, iterstate::IterState<Vec<f64>, _, (), (), f64>>`
[INFO] [stdout]    --> src/solver/conjugategradient/nonlinear_cg.rs:125:57
[INFO] [stdout]     |
[INFO] [stdout] 121 | impl<O, P, G, L, B, F> Solver<O, IterState<P, G, (), (), F>>
[INFO] [stdout]     |                        -------------------------------------
[INFO] [stdout] 122 |     for NonlinearConjugateGradient<P, L, B, F>
[INFO] [stdout]     |         --------------------------------------
[INFO] [stdout] ...
[INFO] [stdout] 125 |     P: Clone + SerializeAlias + DeserializeOwnedAlias + ArgminAdd<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                                                         |
[INFO] [stdout]     |                                                         unsatisfied trait bound introduced here
[INFO] [stdout] ...
[INFO] [stdout] 132 |     L: Clone + LineSearch<P, F> + Solver<O, IterState<P, G, (), (), F>>,
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `core::solver::Solver` must be implemented
[INFO] [stdout]    --> src/core/solver.rs:68:1
[INFO] [stdout]     |
[INFO] [stdout] 68  | pub trait Solver<O, I: State> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `next_iter` exists for struct `SteepestDescent<BacktrackingLineSearch<Vec<f64>, Vec<f64>, ArmijoCondition<f64>, f64>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/gradientdescent/steepestdescent.rs:145:22
[INFO] [stdout]     |
[INFO] [stdout] 31  | pub struct SteepestDescent<L> {
[INFO] [stdout]     | -----------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `next_iter` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<_, _, (), (), _>>`
[INFO] [stdout] ...
[INFO] [stdout] 145 |         let res = sd.next_iter(&mut Problem::new(TestProblem::new()), IterState::new());
[INFO] [stdout]     |                      ^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/solver/linesearch/backtracking.rs:34:1
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct BacktrackingLineSearch<P, G, L, F> {
[INFO] [stdout]     | --------------------------------------------- doesn't satisfy `_: Solver<_, IterState<_, _, (), (), _>>`
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>: core::solver::Solver<_, iterstate::IterState<_, _, (), (), _>>` was not satisfied
[INFO] [stdout]    --> src/solver/gradientdescent/steepestdescent.rs:58:35
[INFO] [stdout]     |
[INFO] [stdout] 53  | impl<O, L, P, G, F> Solver<O, IterState<P, G, (), (), F>> for SteepestDescent<L>
[INFO] [stdout]     |                     -------------------------------------     ------------------
[INFO] [stdout] ...
[INFO] [stdout] 58  |     L: Clone + LineSearch<P, F> + Solver<O, IterState<P, G, (), (), F>>,
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `core::solver::Solver` must be implemented
[INFO] [stdout]    --> src/core/solver.rs:68:1
[INFO] [stdout]     |
[INFO] [stdout] 68  | pub trait Solver<O, I: State> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `core::solver::Solver` defines an item `next_iter`, perhaps you need to implement it
[INFO] [stdout]    --> src/core/solver.rs:68:1
[INFO] [stdout]     |
[INFO] [stdout] 68  | pub trait Solver<O, I: State> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `next_iter` exists for struct `SteepestDescent<BacktrackingLineSearch<Vec<f64>, Vec<f64>, ArmijoCondition<f64>, f64>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/gradientdescent/steepestdescent.rs:182:14
[INFO] [stdout]     |
[INFO] [stdout] 31  |   pub struct SteepestDescent<L> {
[INFO] [stdout]     |   -----------------------------
[INFO] [stdout]     |   |
[INFO] [stdout]     |   method `next_iter` not found for this struct
[INFO] [stdout]     |   doesn't satisfy `_: Solver<_, IterState<_, _, (), (), _>>`
[INFO] [stdout] ...
[INFO] [stdout] 181 |           let (state, kv) = sd
[INFO] [stdout]     |  ___________________________-
[INFO] [stdout] 182 | |             .next_iter(
[INFO] [stdout]     | |             -^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     | |_____________|
[INFO] [stdout]     | 
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/solver/linesearch/backtracking.rs:34:1
[INFO] [stdout]     |
[INFO] [stdout] 34  |   pub struct BacktrackingLineSearch<P, G, L, F> {
[INFO] [stdout]     |   --------------------------------------------- doesn't satisfy `_: Solver<_, IterState<_, _, (), (), _>>`
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>: core::solver::Solver<_, iterstate::IterState<_, _, (), (), _>>` was not satisfied
[INFO] [stdout]    --> src/solver/gradientdescent/steepestdescent.rs:58:35
[INFO] [stdout]     |
[INFO] [stdout] 53  | impl<O, L, P, G, F> Solver<O, IterState<P, G, (), (), F>> for SteepestDescent<L>
[INFO] [stdout]     |                     -------------------------------------     ------------------
[INFO] [stdout] ...
[INFO] [stdout] 58  |     L: Clone + LineSearch<P, F> + Solver<O, IterState<P, G, (), (), F>>,
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `core::solver::Solver` must be implemented
[INFO] [stdout]    --> src/core/solver.rs:68:1
[INFO] [stdout]     |
[INFO] [stdout] 68  | pub trait Solver<O, I: State> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `core::solver::Solver` defines an item `next_iter`, perhaps you need to implement it
[INFO] [stdout]    --> src/core/solver.rs:68:1
[INFO] [stdout]     |
[INFO] [stdout] 68  | pub trait Solver<O, I: State> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/landweber/mod.rs:113:39
[INFO] [stdout]     |
[INFO] [stdout] 113 |         let res = landweber.next_iter(&mut Problem::new(TestProblem::new()), state);
[INFO] [stdout]     |                             --------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledSub<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required for `landweber::Landweber<f64>` to implement `core::solver::Solver<TestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    --> src/solver/landweber/mod.rs:66:18
[INFO] [stdout]     |
[INFO] [stdout] 66  | impl<O, F, P, G> Solver<O, IterState<P, G, (), (), F>> for Landweber<F>
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 69  |     P: Clone + ArgminScaledSub<G, F, P>,
[INFO] [stdout]     |                ------------------------ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/landweber/mod.rs:113:39
[INFO] [stdout]     |
[INFO] [stdout] 113 |         let res = landweber.next_iter(&mut Problem::new(TestProblem::new()), state);
[INFO] [stdout]     |                             --------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledSub<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required for `landweber::Landweber<f64>` to implement `core::solver::Solver<TestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    --> src/solver/landweber/mod.rs:66:18
[INFO] [stdout]     |
[INFO] [stdout] 66  | impl<O, F, P, G> Solver<O, IterState<P, G, (), (), F>> for Landweber<F>
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 69  |     P: Clone + ArgminScaledSub<G, F, P>,
[INFO] [stdout]     |                ------------------------ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/landweber/mod.rs:130:24
[INFO] [stdout]     |
[INFO] [stdout] 130 |             .next_iter(&mut Problem::new(TestProblem::new()), state)
[INFO] [stdout]     |              --------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledSub<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required for `landweber::Landweber<f64>` to implement `core::solver::Solver<TestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    --> src/solver/landweber/mod.rs:66:18
[INFO] [stdout]     |
[INFO] [stdout] 66  | impl<O, F, P, G> Solver<O, IterState<P, G, (), (), F>> for Landweber<F>
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 69  |     P: Clone + ArgminScaledSub<G, F, P>,
[INFO] [stdout]     |                ------------------------ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/landweber/mod.rs:130:24
[INFO] [stdout]     |
[INFO] [stdout] 130 |             .next_iter(&mut Problem::new(TestProblem::new()), state)
[INFO] [stdout]     |              --------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledSub<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required for `landweber::Landweber<f64>` to implement `core::solver::Solver<TestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    --> src/solver/landweber/mod.rs:66:18
[INFO] [stdout]     |
[INFO] [stdout] 66  | impl<O, F, P, G> Solver<O, IterState<P, G, (), (), F>> for Landweber<F>
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 69  |     P: Clone + ArgminScaledSub<G, F, P>,
[INFO] [stdout]     |                ------------------------ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `init` exists for struct `BacktrackingLineSearch<Vec<f64>, Vec<f64>, ArmijoCondition<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:372:30
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct BacktrackingLineSearch<P, G, L, F> {
[INFO] [stdout]     | ---------------------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `init` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 372 |         let res = linesearch.init(&mut Problem::new(TestProblem::new()), IterState::new());
[INFO] [stdout]     |                              ^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/solver/linesearch/condition/armijo.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub struct ArmijoCondition<F> {
[INFO] [stdout]     | ----------------------------- doesn't satisfy `_: LineSearchCondition<Vec<f64>, Vec<f64>, f64>`
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]       `armijo::ArmijoCondition<f64>: condition::LineSearchCondition<Vec<f64>, Vec<f64>, f64>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:179:33
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl<O, P, G, L, F> Solver<O, IterState<P, G, (), (), F>> for BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                     -------------------------------------     ----------------------------------
[INFO] [stdout] 178 | where
[INFO] [stdout] 179 |     P: Clone + SerializeAlias + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 180 |     G: SerializeAlias + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 181 |     O: CostFunction<Param = P, Output = F> + Gradient<Param = P, Gradient = G>,
[INFO] [stdout] 182 |     L: LineSearchCondition<P, G, F> + SerializeAlias,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `condition::LineSearchCondition` must be implemented
[INFO] [stdout]    --> src/solver/linesearch/condition/mod.rs:70:1
[INFO] [stdout]     |
[INFO] [stdout] 70  | pub trait LineSearchCondition<T, G, F> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `backtracking_step` exists for struct `BacktrackingLineSearch<Vec<f64>, Vec<f64>, ArmijoCondition<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:400:23
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct BacktrackingLineSearch<P, G, L, F> {
[INFO] [stdout]     | --------------------------------------------- method `backtracking_step` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 400 |         let data = ls.backtracking_step(&mut Problem::new(prob), IterState::new());
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/solver/linesearch/condition/armijo.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub struct ArmijoCondition<F> {
[INFO] [stdout]     | ----------------------------- doesn't satisfy `_: LineSearchCondition<Vec<f64>, Vec<f64>, f64>`
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]       `armijo::ArmijoCondition<f64>: condition::LineSearchCondition<Vec<f64>, Vec<f64>, f64>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:131:8
[INFO] [stdout]     |
[INFO] [stdout] 129 | impl<P, G, L, F> BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                  ----------------------------------
[INFO] [stdout] 130 | where
[INFO] [stdout] 131 |     P: ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 132 |     L: LineSearchCondition<P, G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `condition::LineSearchCondition` must be implemented
[INFO] [stdout]    --> src/solver/linesearch/condition/mod.rs:70:1
[INFO] [stdout]     |
[INFO] [stdout] 70  | pub trait LineSearchCondition<T, G, F> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `backtracking_step` exists for struct `BacktrackingLineSearch<Vec<f64>, Vec<f64>, WolfeCondition<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:432:23
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct BacktrackingLineSearch<P, G, L, F> {
[INFO] [stdout]     | --------------------------------------------- method `backtracking_step` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 432 |         let data = ls.backtracking_step(&mut Problem::new(prob), IterState::new());
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/solver/linesearch/condition/wolfe.rs:22:1
[INFO] [stdout]     |
[INFO] [stdout] 22  | pub struct WolfeCondition<F> {
[INFO] [stdout]     | ---------------------------- doesn't satisfy `_: LineSearchCondition<Vec<f64>, Vec<f64>, f64>`
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]       `wolfe::WolfeCondition<f64>: condition::LineSearchCondition<Vec<f64>, Vec<f64>, f64>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:131:8
[INFO] [stdout]     |
[INFO] [stdout] 129 | impl<P, G, L, F> BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                  ----------------------------------
[INFO] [stdout] 130 | where
[INFO] [stdout] 131 |     P: ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 132 |     L: LineSearchCondition<P, G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `condition::LineSearchCondition` must be implemented
[INFO] [stdout]    --> src/solver/linesearch/condition/mod.rs:70:1
[INFO] [stdout]     |
[INFO] [stdout] 70  | pub trait LineSearchCondition<T, G, F> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `init` exists for struct `BacktrackingLineSearch<Vec<f64>, Vec<f64>, ArmijoCondition<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:464:16
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct BacktrackingLineSearch<P, G, L, F> {
[INFO] [stdout]     | ---------------------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `init` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 464 |             ls.init(
[INFO] [stdout]     |             ---^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/solver/linesearch/condition/armijo.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub struct ArmijoCondition<F> {
[INFO] [stdout]     | ----------------------------- doesn't satisfy `_: LineSearchCondition<Vec<f64>, Vec<f64>, f64>`
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]       `armijo::ArmijoCondition<f64>: condition::LineSearchCondition<Vec<f64>, Vec<f64>, f64>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:179:33
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl<O, P, G, L, F> Solver<O, IterState<P, G, (), (), F>> for BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                     -------------------------------------     ----------------------------------
[INFO] [stdout] 178 | where
[INFO] [stdout] 179 |     P: Clone + SerializeAlias + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 180 |     G: SerializeAlias + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 181 |     O: CostFunction<Param = P, Output = F> + Gradient<Param = P, Gradient = G>,
[INFO] [stdout] 182 |     L: LineSearchCondition<P, G, F> + SerializeAlias,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `condition::LineSearchCondition` must be implemented
[INFO] [stdout]    --> src/solver/linesearch/condition/mod.rs:70:1
[INFO] [stdout]     |
[INFO] [stdout] 70  | pub trait LineSearchCondition<T, G, F> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `init` exists for struct `BacktrackingLineSearch<Vec<f64>, Vec<f64>, ArmijoCondition<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:474:23
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct BacktrackingLineSearch<P, G, L, F> {
[INFO] [stdout]     | ---------------------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `init` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 474 |         let data = ls.init(
[INFO] [stdout]     |                    ---^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/solver/linesearch/condition/armijo.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub struct ArmijoCondition<F> {
[INFO] [stdout]     | ----------------------------- doesn't satisfy `_: LineSearchCondition<Vec<f64>, Vec<f64>, f64>`
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]       `armijo::ArmijoCondition<f64>: condition::LineSearchCondition<Vec<f64>, Vec<f64>, f64>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:179:33
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl<O, P, G, L, F> Solver<O, IterState<P, G, (), (), F>> for BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                     -------------------------------------     ----------------------------------
[INFO] [stdout] 178 | where
[INFO] [stdout] 179 |     P: Clone + SerializeAlias + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 180 |     G: SerializeAlias + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 181 |     O: CostFunction<Param = P, Output = F> + Gradient<Param = P, Gradient = G>,
[INFO] [stdout] 182 |     L: LineSearchCondition<P, G, F> + SerializeAlias,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `condition::LineSearchCondition` must be implemented
[INFO] [stdout]    --> src/solver/linesearch/condition/mod.rs:70:1
[INFO] [stdout]     |
[INFO] [stdout] 70  | pub trait LineSearchCondition<T, G, F> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `init` exists for struct `BacktrackingLineSearch<Vec<f64>, Vec<f64>, WolfeCondition<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:511:16
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct BacktrackingLineSearch<P, G, L, F> {
[INFO] [stdout]     | ---------------------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `init` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 511 |             ls.init(
[INFO] [stdout]     |             ---^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/solver/linesearch/condition/wolfe.rs:22:1
[INFO] [stdout]     |
[INFO] [stdout] 22  | pub struct WolfeCondition<F> {
[INFO] [stdout]     | ---------------------------- doesn't satisfy `_: LineSearchCondition<Vec<f64>, Vec<f64>, f64>`
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]       `wolfe::WolfeCondition<f64>: condition::LineSearchCondition<Vec<f64>, Vec<f64>, f64>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:179:33
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl<O, P, G, L, F> Solver<O, IterState<P, G, (), (), F>> for BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                     -------------------------------------     ----------------------------------
[INFO] [stdout] 178 | where
[INFO] [stdout] 179 |     P: Clone + SerializeAlias + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 180 |     G: SerializeAlias + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 181 |     O: CostFunction<Param = P, Output = F> + Gradient<Param = P, Gradient = G>,
[INFO] [stdout] 182 |     L: LineSearchCondition<P, G, F> + SerializeAlias,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `condition::LineSearchCondition` must be implemented
[INFO] [stdout]    --> src/solver/linesearch/condition/mod.rs:70:1
[INFO] [stdout]     |
[INFO] [stdout] 70  | pub trait LineSearchCondition<T, G, F> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `init` exists for struct `BacktrackingLineSearch<Vec<f64>, Vec<f64>, WolfeCondition<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:521:23
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct BacktrackingLineSearch<P, G, L, F> {
[INFO] [stdout]     | ---------------------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `init` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 521 |         let data = ls.init(
[INFO] [stdout]     |                    ---^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/solver/linesearch/condition/wolfe.rs:22:1
[INFO] [stdout]     |
[INFO] [stdout] 22  | pub struct WolfeCondition<F> {
[INFO] [stdout]     | ---------------------------- doesn't satisfy `_: LineSearchCondition<Vec<f64>, Vec<f64>, f64>`
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]       `wolfe::WolfeCondition<f64>: condition::LineSearchCondition<Vec<f64>, Vec<f64>, f64>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:179:33
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl<O, P, G, L, F> Solver<O, IterState<P, G, (), (), F>> for BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                     -------------------------------------     ----------------------------------
[INFO] [stdout] 178 | where
[INFO] [stdout] 179 |     P: Clone + SerializeAlias + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 180 |     G: SerializeAlias + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 181 |     O: CostFunction<Param = P, Output = F> + Gradient<Param = P, Gradient = G>,
[INFO] [stdout] 182 |     L: LineSearchCondition<P, G, F> + SerializeAlias,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `condition::LineSearchCondition` must be implemented
[INFO] [stdout]    --> src/solver/linesearch/condition/mod.rs:70:1
[INFO] [stdout]     |
[INFO] [stdout] 70  | pub trait LineSearchCondition<T, G, F> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `next_iter` exists for struct `BacktrackingLineSearch<Vec<f64>, Vec<f64>, ArmijoCondition<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:558:23
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct BacktrackingLineSearch<P, G, L, F> {
[INFO] [stdout]     | ---------------------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `next_iter` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 558 |         let data = ls.next_iter(
[INFO] [stdout]     |                    ---^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/solver/linesearch/condition/armijo.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub struct ArmijoCondition<F> {
[INFO] [stdout]     | ----------------------------- doesn't satisfy `_: LineSearchCondition<Vec<f64>, Vec<f64>, f64>`
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]       `armijo::ArmijoCondition<f64>: condition::LineSearchCondition<Vec<f64>, Vec<f64>, f64>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:179:33
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl<O, P, G, L, F> Solver<O, IterState<P, G, (), (), F>> for BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                     -------------------------------------     ----------------------------------
[INFO] [stdout] 178 | where
[INFO] [stdout] 179 |     P: Clone + SerializeAlias + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 180 |     G: SerializeAlias + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 181 |     O: CostFunction<Param = P, Output = F> + Gradient<Param = P, Gradient = G>,
[INFO] [stdout] 182 |     L: LineSearchCondition<P, G, F> + SerializeAlias,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `condition::LineSearchCondition` must be implemented
[INFO] [stdout]    --> src/solver/linesearch/condition/mod.rs:70:1
[INFO] [stdout]     |
[INFO] [stdout] 70  | pub trait LineSearchCondition<T, G, F> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:595:17
[INFO] [stdout]     |
[INFO] [stdout] 591 | /             <BacktrackingLineSearch<Vec<f64>, Vec<f64>, ArmijoCondition<f64>, f64> as Solver<
[INFO] [stdout] 592 | |                 TestProblem,
[INFO] [stdout] 593 | |                 IterState<Vec<f64>, Vec<f64>, (), (), f64>,
[INFO] [stdout] 594 | |             >>::terminate(
[INFO] [stdout]     | |_________________________- required by a bound introduced by this call
[INFO] [stdout] 595 |                   &mut ls,
[INFO] [stdout]     |                   ^^^^^^^ the trait `ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required for `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>` to implement `core::solver::Solver<TestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:177:21
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl<O, P, G, L, F> Solver<O, IterState<P, G, (), (), F>> for BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 178 | where
[INFO] [stdout] 179 |     P: Clone + SerializeAlias + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                                 ------------------------ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:595:17
[INFO] [stdout]     |
[INFO] [stdout] 591 | /             <BacktrackingLineSearch<Vec<f64>, Vec<f64>, ArmijoCondition<f64>, f64> as Solver<
[INFO] [stdout] 592 | |                 TestProblem,
[INFO] [stdout] 593 | |                 IterState<Vec<f64>, Vec<f64>, (), (), f64>,
[INFO] [stdout] 594 | |             >>::terminate(
[INFO] [stdout]     | |_________________________- required by a bound introduced by this call
[INFO] [stdout] 595 |                   &mut ls,
[INFO] [stdout]     |                   ^^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required for `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>` to implement `core::solver::Solver<TestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:177:21
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl<O, P, G, L, F> Solver<O, IterState<P, G, (), (), F>> for BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 178 | where
[INFO] [stdout] 179 |     P: Clone + SerializeAlias + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                                 ------------------------ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:595:17
[INFO] [stdout]     |
[INFO] [stdout] 591 | /             <BacktrackingLineSearch<Vec<f64>, Vec<f64>, ArmijoCondition<f64>, f64> as Solver<
[INFO] [stdout] 592 | |                 TestProblem,
[INFO] [stdout] 593 | |                 IterState<Vec<f64>, Vec<f64>, (), (), f64>,
[INFO] [stdout] 594 | |             >>::terminate(
[INFO] [stdout]     | |_________________________- required by a bound introduced by this call
[INFO] [stdout] 595 |                   &mut ls,
[INFO] [stdout]     |                   ^^^^^^^ the trait `ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required for `armijo::ArmijoCondition<f64>` to implement `condition::LineSearchCondition<Vec<f64>, Vec<f64>, f64>`
[INFO] [stdout]    --> src/solver/linesearch/condition/armijo.rs:46:15
[INFO] [stdout]     |
[INFO] [stdout] 46  | impl<T, G, F> LineSearchCondition<T, G, F> for ArmijoCondition<F>
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 47  | where
[INFO] [stdout] 48  |     G: ArgminDot<T, F>,
[INFO] [stdout]     |        --------------- unsatisfied trait bound introduced here
[INFO] [stdout] note: required for `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>` to implement `core::solver::Solver<TestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:177:21
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl<O, P, G, L, F> Solver<O, IterState<P, G, (), (), F>> for BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 182 |     L: LineSearchCondition<P, G, F> + SerializeAlias,
[INFO] [stdout]     |        ---------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:609:17
[INFO] [stdout]     |
[INFO] [stdout] 605 | /             <BacktrackingLineSearch<Vec<f64>, Vec<f64>, ArmijoCondition<f64>, f64> as Solver<
[INFO] [stdout] 606 | |                 TestProblem,
[INFO] [stdout] 607 | |                 IterState<Vec<f64>, Vec<f64>, (), (), f64>,
[INFO] [stdout] 608 | |             >>::terminate(
[INFO] [stdout]     | |_________________________- required by a bound introduced by this call
[INFO] [stdout] 609 |                   &mut ls,
[INFO] [stdout]     |                   ^^^^^^^ the trait `ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required for `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>` to implement `core::solver::Solver<TestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:177:21
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl<O, P, G, L, F> Solver<O, IterState<P, G, (), (), F>> for BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 178 | where
[INFO] [stdout] 179 |     P: Clone + SerializeAlias + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                                 ------------------------ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:609:17
[INFO] [stdout]     |
[INFO] [stdout] 605 | /             <BacktrackingLineSearch<Vec<f64>, Vec<f64>, ArmijoCondition<f64>, f64> as Solver<
[INFO] [stdout] 606 | |                 TestProblem,
[INFO] [stdout] 607 | |                 IterState<Vec<f64>, Vec<f64>, (), (), f64>,
[INFO] [stdout] 608 | |             >>::terminate(
[INFO] [stdout]     | |_________________________- required by a bound introduced by this call
[INFO] [stdout] 609 |                   &mut ls,
[INFO] [stdout]     |                   ^^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required for `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>` to implement `core::solver::Solver<TestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:177:21
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl<O, P, G, L, F> Solver<O, IterState<P, G, (), (), F>> for BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 178 | where
[INFO] [stdout] 179 |     P: Clone + SerializeAlias + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                                 ------------------------ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:609:17
[INFO] [stdout]     |
[INFO] [stdout] 605 | /             <BacktrackingLineSearch<Vec<f64>, Vec<f64>, ArmijoCondition<f64>, f64> as Solver<
[INFO] [stdout] 606 | |                 TestProblem,
[INFO] [stdout] 607 | |                 IterState<Vec<f64>, Vec<f64>, (), (), f64>,
[INFO] [stdout] 608 | |             >>::terminate(
[INFO] [stdout]     | |_________________________- required by a bound introduced by this call
[INFO] [stdout] 609 |                   &mut ls,
[INFO] [stdout]     |                   ^^^^^^^ the trait `ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required for `armijo::ArmijoCondition<f64>` to implement `condition::LineSearchCondition<Vec<f64>, Vec<f64>, f64>`
[INFO] [stdout]    --> src/solver/linesearch/condition/armijo.rs:46:15
[INFO] [stdout]     |
[INFO] [stdout] 46  | impl<T, G, F> LineSearchCondition<T, G, F> for ArmijoCondition<F>
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 47  | where
[INFO] [stdout] 48  |     G: ArgminDot<T, F>,
[INFO] [stdout]     |        --------------- unsatisfied trait bound introduced here
[INFO] [stdout] note: required for `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>` to implement `core::solver::Solver<TestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:177:21
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl<O, P, G, L, F> Solver<O, IterState<P, G, (), (), F>> for BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 182 |     L: LineSearchCondition<P, G, F> + SerializeAlias,
[INFO] [stdout]     |        ---------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:632:41
[INFO] [stdout]     |
[INFO] [stdout] 632 |             Executor::new(prob.clone(), ls.clone())
[INFO] [stdout]     |             -------------               ^^^^^^^^^^ the trait `ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required for `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>` to implement `core::solver::Solver<BTTestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:177:21
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl<O, P, G, L, F> Solver<O, IterState<P, G, (), (), F>> for BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 178 | where
[INFO] [stdout] 179 |     P: Clone + SerializeAlias + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                                 ------------------------ unsatisfied trait bound introduced here
[INFO] [stdout] note: required by a bound in `executor::Executor::<O, S, I>::new`
[INFO] [stdout]    --> src/core/executor.rs:38:8
[INFO] [stdout]     |
[INFO] [stdout] 38  |     S: Solver<O, I>,
[INFO] [stdout]     |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] ...
[INFO] [stdout] 62  |     pub fn new(problem: O, solver: S) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:632:41
[INFO] [stdout]     |
[INFO] [stdout] 632 |             Executor::new(prob.clone(), ls.clone())
[INFO] [stdout]     |             -------------               ^^^^^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required for `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>` to implement `core::solver::Solver<BTTestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:177:21
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl<O, P, G, L, F> Solver<O, IterState<P, G, (), (), F>> for BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 178 | where
[INFO] [stdout] 179 |     P: Clone + SerializeAlias + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                                 ------------------------ unsatisfied trait bound introduced here
[INFO] [stdout] note: required by a bound in `executor::Executor::<O, S, I>::new`
[INFO] [stdout]    --> src/core/executor.rs:38:8
[INFO] [stdout]     |
[INFO] [stdout] 38  |     S: Solver<O, I>,
[INFO] [stdout]     |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] ...
[INFO] [stdout] 62  |     pub fn new(problem: O, solver: S) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:632:41
[INFO] [stdout]     |
[INFO] [stdout] 632 |             Executor::new(prob.clone(), ls.clone())
[INFO] [stdout]     |             -------------               ^^^^^^^^^^ the trait `ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required for `armijo::ArmijoCondition<f64>` to implement `condition::LineSearchCondition<Vec<f64>, Vec<f64>, f64>`
[INFO] [stdout]    --> src/solver/linesearch/condition/armijo.rs:46:15
[INFO] [stdout]     |
[INFO] [stdout] 46  | impl<T, G, F> LineSearchCondition<T, G, F> for ArmijoCondition<F>
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 47  | where
[INFO] [stdout] 48  |     G: ArgminDot<T, F>,
[INFO] [stdout]     |        --------------- unsatisfied trait bound introduced here
[INFO] [stdout] note: required for `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>` to implement `core::solver::Solver<BTTestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:177:21
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl<O, P, G, L, F> Solver<O, IterState<P, G, (), (), F>> for BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 182 |     L: LineSearchCondition<P, G, F> + SerializeAlias,
[INFO] [stdout]     |        ---------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] note: required by a bound in `executor::Executor::<O, S, I>::new`
[INFO] [stdout]    --> src/core/executor.rs:38:8
[INFO] [stdout]     |
[INFO] [stdout] 38  |     S: Solver<O, I>,
[INFO] [stdout]     |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] ...
[INFO] [stdout] 62  |     pub fn new(problem: O, solver: S) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `configure` exists for struct `Executor<BTTestProblem, BacktrackingLineSearch<Vec<f64>, Vec<f64>, ArmijoCondition<f64>, f64>, ...>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:633:18
[INFO] [stdout]     |
[INFO] [stdout] 34  |   pub struct BacktrackingLineSearch<P, G, L, F> {
[INFO] [stdout]     |   --------------------------------------------- doesn't satisfy `_: Solver<BTTestProblem, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 632 | /             Executor::new(prob.clone(), ls.clone())
[INFO] [stdout] 633 | |                 .configure(|config| config.param(ls.init_param.clone().unwrap()).max_iters(10))
[INFO] [stdout]     | |                 -^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     | |_________________|
[INFO] [stdout]     | 
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/executor.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  |   pub struct Executor<O, S, I> {
[INFO] [stdout]     |   ---------------------------- method `configure` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = note: the full type name has been written to '/opt/rustwide/target/debug/deps/argmin-bd6d66b6691d3f0e.long-type-10678742918417889044.txt'
[INFO] [stdout] note: trait bound `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>: core::solver::Solver<BTTestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>` was not satisfied
[INFO] [stdout]    --> src/core/executor.rs:38:8
[INFO] [stdout]     |
[INFO] [stdout] 36  | impl<O, S, I> Executor<O, S, I>
[INFO] [stdout]     |               -----------------
[INFO] [stdout] 37  | where
[INFO] [stdout] 38  |     S: Solver<O, I>,
[INFO] [stdout]     |        ^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `core::solver::Solver` must be implemented
[INFO] [stdout]    --> src/core/solver.rs:68:1
[INFO] [stdout]     |
[INFO] [stdout] 68  | pub trait Solver<O, I: State> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:641:40
[INFO] [stdout]     |
[INFO] [stdout] 641 |         let data = Executor::new(prob, ls.clone())
[INFO] [stdout]     |                    -------------       ^^^^^^^^^^ the trait `ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required for `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>` to implement `core::solver::Solver<BTTestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:177:21
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl<O, P, G, L, F> Solver<O, IterState<P, G, (), (), F>> for BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 178 | where
[INFO] [stdout] 179 |     P: Clone + SerializeAlias + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                                 ------------------------ unsatisfied trait bound introduced here
[INFO] [stdout] note: required by a bound in `executor::Executor::<O, S, I>::new`
[INFO] [stdout]    --> src/core/executor.rs:38:8
[INFO] [stdout]     |
[INFO] [stdout] 38  |     S: Solver<O, I>,
[INFO] [stdout]     |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] ...
[INFO] [stdout] 62  |     pub fn new(problem: O, solver: S) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:641:40
[INFO] [stdout]     |
[INFO] [stdout] 641 |         let data = Executor::new(prob, ls.clone())
[INFO] [stdout]     |                    -------------       ^^^^^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required for `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>` to implement `core::solver::Solver<BTTestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:177:21
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl<O, P, G, L, F> Solver<O, IterState<P, G, (), (), F>> for BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 178 | where
[INFO] [stdout] 179 |     P: Clone + SerializeAlias + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                                 ------------------------ unsatisfied trait bound introduced here
[INFO] [stdout] note: required by a bound in `executor::Executor::<O, S, I>::new`
[INFO] [stdout]    --> src/core/executor.rs:38:8
[INFO] [stdout]     |
[INFO] [stdout] 38  |     S: Solver<O, I>,
[INFO] [stdout]     |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] ...
[INFO] [stdout] 62  |     pub fn new(problem: O, solver: S) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:641:40
[INFO] [stdout]     |
[INFO] [stdout] 641 |         let data = Executor::new(prob, ls.clone())
[INFO] [stdout]     |                    -------------       ^^^^^^^^^^ the trait `ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required for `armijo::ArmijoCondition<f64>` to implement `condition::LineSearchCondition<Vec<f64>, Vec<f64>, f64>`
[INFO] [stdout]    --> src/solver/linesearch/condition/armijo.rs:46:15
[INFO] [stdout]     |
[INFO] [stdout] 46  | impl<T, G, F> LineSearchCondition<T, G, F> for ArmijoCondition<F>
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 47  | where
[INFO] [stdout] 48  |     G: ArgminDot<T, F>,
[INFO] [stdout]     |        --------------- unsatisfied trait bound introduced here
[INFO] [stdout] note: required for `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>` to implement `core::solver::Solver<BTTestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:177:21
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl<O, P, G, L, F> Solver<O, IterState<P, G, (), (), F>> for BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 182 |     L: LineSearchCondition<P, G, F> + SerializeAlias,
[INFO] [stdout]     |        ---------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] note: required by a bound in `executor::Executor::<O, S, I>::new`
[INFO] [stdout]    --> src/core/executor.rs:38:8
[INFO] [stdout]     |
[INFO] [stdout] 38  |     S: Solver<O, I>,
[INFO] [stdout]     |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] ...
[INFO] [stdout] 62  |     pub fn new(problem: O, solver: S) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `configure` exists for struct `Executor<BTTestProblem, BacktrackingLineSearch<Vec<f64>, Vec<f64>, ArmijoCondition<f64>, f64>, ...>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:642:14
[INFO] [stdout]     |
[INFO] [stdout] 34  |   pub struct BacktrackingLineSearch<P, G, L, F> {
[INFO] [stdout]     |   --------------------------------------------- doesn't satisfy `_: Solver<BTTestProblem, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 641 |           let data = Executor::new(prob, ls.clone())
[INFO] [stdout]     |  ____________________-
[INFO] [stdout] 642 | |             .configure(|config| config.param(ls.init_param.clone().unwrap()).max_iters(10))
[INFO] [stdout]     | |             -^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     | |_____________|
[INFO] [stdout]     | 
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/executor.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  |   pub struct Executor<O, S, I> {
[INFO] [stdout]     |   ---------------------------- method `configure` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = note: the full type name has been written to '/opt/rustwide/target/debug/deps/argmin-bd6d66b6691d3f0e.long-type-10678742918417889044.txt'
[INFO] [stdout] note: trait bound `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>: core::solver::Solver<BTTestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>` was not satisfied
[INFO] [stdout]    --> src/core/executor.rs:38:8
[INFO] [stdout]     |
[INFO] [stdout] 36  | impl<O, S, I> Executor<O, S, I>
[INFO] [stdout]     |               -----------------
[INFO] [stdout] 37  | where
[INFO] [stdout] 38  |     S: Solver<O, I>,
[INFO] [stdout]     |        ^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `core::solver::Solver` must be implemented
[INFO] [stdout]    --> src/core/solver.rs:68:1
[INFO] [stdout]     |
[INFO] [stdout] 68  | pub trait Solver<O, I: State> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:681:41
[INFO] [stdout]     |
[INFO] [stdout] 681 |             Executor::new(prob.clone(), ls.clone())
[INFO] [stdout]     |             -------------               ^^^^^^^^^^ the trait `ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required for `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>` to implement `core::solver::Solver<BTTestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:177:21
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl<O, P, G, L, F> Solver<O, IterState<P, G, (), (), F>> for BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 178 | where
[INFO] [stdout] 179 |     P: Clone + SerializeAlias + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                                 ------------------------ unsatisfied trait bound introduced here
[INFO] [stdout] note: required by a bound in `executor::Executor::<O, S, I>::new`
[INFO] [stdout]    --> src/core/executor.rs:38:8
[INFO] [stdout]     |
[INFO] [stdout] 38  |     S: Solver<O, I>,
[INFO] [stdout]     |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] ...
[INFO] [stdout] 62  |     pub fn new(problem: O, solver: S) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:681:41
[INFO] [stdout]     |
[INFO] [stdout] 681 |             Executor::new(prob.clone(), ls.clone())
[INFO] [stdout]     |             -------------               ^^^^^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required for `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>` to implement `core::solver::Solver<BTTestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:177:21
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl<O, P, G, L, F> Solver<O, IterState<P, G, (), (), F>> for BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 178 | where
[INFO] [stdout] 179 |     P: Clone + SerializeAlias + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                                 ------------------------ unsatisfied trait bound introduced here
[INFO] [stdout] note: required by a bound in `executor::Executor::<O, S, I>::new`
[INFO] [stdout]    --> src/core/executor.rs:38:8
[INFO] [stdout]     |
[INFO] [stdout] 38  |     S: Solver<O, I>,
[INFO] [stdout]     |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] ...
[INFO] [stdout] 62  |     pub fn new(problem: O, solver: S) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:681:41
[INFO] [stdout]     |
[INFO] [stdout] 681 |             Executor::new(prob.clone(), ls.clone())
[INFO] [stdout]     |             -------------               ^^^^^^^^^^ the trait `ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required for `armijo::ArmijoCondition<f64>` to implement `condition::LineSearchCondition<Vec<f64>, Vec<f64>, f64>`
[INFO] [stdout]    --> src/solver/linesearch/condition/armijo.rs:46:15
[INFO] [stdout]     |
[INFO] [stdout] 46  | impl<T, G, F> LineSearchCondition<T, G, F> for ArmijoCondition<F>
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 47  | where
[INFO] [stdout] 48  |     G: ArgminDot<T, F>,
[INFO] [stdout]     |        --------------- unsatisfied trait bound introduced here
[INFO] [stdout] note: required for `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>` to implement `core::solver::Solver<BTTestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:177:21
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl<O, P, G, L, F> Solver<O, IterState<P, G, (), (), F>> for BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 182 |     L: LineSearchCondition<P, G, F> + SerializeAlias,
[INFO] [stdout]     |        ---------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] note: required by a bound in `executor::Executor::<O, S, I>::new`
[INFO] [stdout]    --> src/core/executor.rs:38:8
[INFO] [stdout]     |
[INFO] [stdout] 38  |     S: Solver<O, I>,
[INFO] [stdout]     |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] ...
[INFO] [stdout] 62  |     pub fn new(problem: O, solver: S) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `configure` exists for struct `Executor<BTTestProblem, BacktrackingLineSearch<Vec<f64>, Vec<f64>, ArmijoCondition<f64>, f64>, ...>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:682:18
[INFO] [stdout]     |
[INFO] [stdout] 34  |   pub struct BacktrackingLineSearch<P, G, L, F> {
[INFO] [stdout]     |   --------------------------------------------- doesn't satisfy `_: Solver<BTTestProblem, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 681 | /             Executor::new(prob.clone(), ls.clone())
[INFO] [stdout] 682 | |                 .configure(|config| config.param(ls.init_param.clone().unwrap()).max_iters(10))
[INFO] [stdout]     | |                 -^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     | |_________________|
[INFO] [stdout]     | 
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/executor.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  |   pub struct Executor<O, S, I> {
[INFO] [stdout]     |   ---------------------------- method `configure` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = note: the full type name has been written to '/opt/rustwide/target/debug/deps/argmin-bd6d66b6691d3f0e.long-type-10678742918417889044.txt'
[INFO] [stdout] note: trait bound `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>: core::solver::Solver<BTTestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>` was not satisfied
[INFO] [stdout]    --> src/core/executor.rs:38:8
[INFO] [stdout]     |
[INFO] [stdout] 36  | impl<O, S, I> Executor<O, S, I>
[INFO] [stdout]     |               -----------------
[INFO] [stdout] 37  | where
[INFO] [stdout] 38  |     S: Solver<O, I>,
[INFO] [stdout]     |        ^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `core::solver::Solver` must be implemented
[INFO] [stdout]    --> src/core/solver.rs:68:1
[INFO] [stdout]     |
[INFO] [stdout] 68  | pub trait Solver<O, I: State> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:690:40
[INFO] [stdout]     |
[INFO] [stdout] 690 |         let data = Executor::new(prob, ls.clone())
[INFO] [stdout]     |                    -------------       ^^^^^^^^^^ the trait `ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required for `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>` to implement `core::solver::Solver<BTTestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:177:21
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl<O, P, G, L, F> Solver<O, IterState<P, G, (), (), F>> for BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 178 | where
[INFO] [stdout] 179 |     P: Clone + SerializeAlias + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                                 ------------------------ unsatisfied trait bound introduced here
[INFO] [stdout] note: required by a bound in `executor::Executor::<O, S, I>::new`
[INFO] [stdout]    --> src/core/executor.rs:38:8
[INFO] [stdout]     |
[INFO] [stdout] 38  |     S: Solver<O, I>,
[INFO] [stdout]     |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] ...
[INFO] [stdout] 62  |     pub fn new(problem: O, solver: S) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:690:40
[INFO] [stdout]     |
[INFO] [stdout] 690 |         let data = Executor::new(prob, ls.clone())
[INFO] [stdout]     |                    -------------       ^^^^^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required for `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>` to implement `core::solver::Solver<BTTestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:177:21
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl<O, P, G, L, F> Solver<O, IterState<P, G, (), (), F>> for BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 178 | where
[INFO] [stdout] 179 |     P: Clone + SerializeAlias + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                                 ------------------------ unsatisfied trait bound introduced here
[INFO] [stdout] note: required by a bound in `executor::Executor::<O, S, I>::new`
[INFO] [stdout]    --> src/core/executor.rs:38:8
[INFO] [stdout]     |
[INFO] [stdout] 38  |     S: Solver<O, I>,
[INFO] [stdout]     |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] ...
[INFO] [stdout] 62  |     pub fn new(problem: O, solver: S) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:690:40
[INFO] [stdout]     |
[INFO] [stdout] 690 |         let data = Executor::new(prob, ls.clone())
[INFO] [stdout]     |                    -------------       ^^^^^^^^^^ the trait `ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required for `armijo::ArmijoCondition<f64>` to implement `condition::LineSearchCondition<Vec<f64>, Vec<f64>, f64>`
[INFO] [stdout]    --> src/solver/linesearch/condition/armijo.rs:46:15
[INFO] [stdout]     |
[INFO] [stdout] 46  | impl<T, G, F> LineSearchCondition<T, G, F> for ArmijoCondition<F>
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 47  | where
[INFO] [stdout] 48  |     G: ArgminDot<T, F>,
[INFO] [stdout]     |        --------------- unsatisfied trait bound introduced here
[INFO] [stdout] note: required for `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>` to implement `core::solver::Solver<BTTestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:177:21
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl<O, P, G, L, F> Solver<O, IterState<P, G, (), (), F>> for BacktrackingLineSearch<P, G, L, F>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 182 |     L: LineSearchCondition<P, G, F> + SerializeAlias,
[INFO] [stdout]     |        ---------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] note: required by a bound in `executor::Executor::<O, S, I>::new`
[INFO] [stdout]    --> src/core/executor.rs:38:8
[INFO] [stdout]     |
[INFO] [stdout] 38  |     S: Solver<O, I>,
[INFO] [stdout]     |        ^^^^^^^^^^^^ required by this bound in `Executor::<O, S, I>::new`
[INFO] [stdout] ...
[INFO] [stdout] 62  |     pub fn new(problem: O, solver: S) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `configure` exists for struct `Executor<BTTestProblem, BacktrackingLineSearch<Vec<f64>, Vec<f64>, ArmijoCondition<f64>, f64>, ...>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/backtracking.rs:691:14
[INFO] [stdout]     |
[INFO] [stdout] 34  |   pub struct BacktrackingLineSearch<P, G, L, F> {
[INFO] [stdout]     |   --------------------------------------------- doesn't satisfy `_: Solver<BTTestProblem, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 690 |           let data = Executor::new(prob, ls.clone())
[INFO] [stdout]     |  ____________________-
[INFO] [stdout] 691 | |             .configure(|config| config.param(ls.init_param.clone().unwrap()).max_iters(10))
[INFO] [stdout]     | |             -^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     | |_____________|
[INFO] [stdout]     | 
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/core/executor.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  |   pub struct Executor<O, S, I> {
[INFO] [stdout]     |   ---------------------------- method `configure` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = note: the full type name has been written to '/opt/rustwide/target/debug/deps/argmin-bd6d66b6691d3f0e.long-type-10678742918417889044.txt'
[INFO] [stdout] note: trait bound `backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>: core::solver::Solver<BTTestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), (), f64>>` was not satisfied
[INFO] [stdout]    --> src/core/executor.rs:38:8
[INFO] [stdout]     |
[INFO] [stdout] 36  | impl<O, S, I> Executor<O, S, I>
[INFO] [stdout]     |               -----------------
[INFO] [stdout] 37  | where
[INFO] [stdout] 38  |     S: Solver<O, I>,
[INFO] [stdout]     |        ^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `core::solver::Solver` must be implemented
[INFO] [stdout]    --> src/core/solver.rs:68:1
[INFO] [stdout]     |
[INFO] [stdout] 68  | pub trait Solver<O, I: State> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<_, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/condition/armijo.rs:137:21
[INFO] [stdout]     |
[INFO] [stdout] 132 |                 cond.evaluate_condition(
[INFO] [stdout]     |                      ------------------ required by a bound introduced by this call
[INFO] [stdout] ...
[INFO] [stdout] 137 |                     &search_direction,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^ the trait `ArgminDot<_, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required for `armijo::ArmijoCondition<f64>` to implement `condition::LineSearchCondition<_, Vec<f64>, f64>`
[INFO] [stdout]    --> src/solver/linesearch/condition/armijo.rs:46:15
[INFO] [stdout]     |
[INFO] [stdout] 46  | impl<T, G, F> LineSearchCondition<T, G, F> for ArmijoCondition<F>
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 47  | where
[INFO] [stdout] 48  |     G: ArgminDot<T, F>,
[INFO] [stdout]     |        --------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<_, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/condition/goldstein.rs:143:21
[INFO] [stdout]     |
[INFO] [stdout] 138 |                 cond.evaluate_condition(
[INFO] [stdout]     |                      ------------------ required by a bound introduced by this call
[INFO] [stdout] ...
[INFO] [stdout] 143 |                     &search_direction,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^ the trait `ArgminDot<_, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required for `goldstein::GoldsteinCondition<f64>` to implement `condition::LineSearchCondition<_, Vec<f64>, f64>`
[INFO] [stdout]    --> src/solver/linesearch/condition/goldstein.rs:47:15
[INFO] [stdout]     |
[INFO] [stdout] 47  | impl<T, G, F> LineSearchCondition<T, G, F> for GoldsteinCondition<F>
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 48  | where
[INFO] [stdout] 49  |     G: ArgminDot<T, F>,
[INFO] [stdout]     |        --------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<_, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/condition/strongwolfe.rs:193:21
[INFO] [stdout]     |
[INFO] [stdout] 188 |                 cond.evaluate_condition(
[INFO] [stdout]     |                      ------------------ required by a bound introduced by this call
[INFO] [stdout] ...
[INFO] [stdout] 193 |                     &search_direction,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^ the trait `ArgminDot<_, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required for `strongwolfe::StrongWolfeCondition<f64>` to implement `condition::LineSearchCondition<_, Vec<f64>, f64>`
[INFO] [stdout]    --> src/solver/linesearch/condition/strongwolfe.rs:56:15
[INFO] [stdout]     |
[INFO] [stdout] 56  | impl<T, G, F> LineSearchCondition<T, G, F> for StrongWolfeCondition<F>
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 57  | where
[INFO] [stdout] 58  |     G: ArgminDot<T, F>,
[INFO] [stdout]     |        --------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<_, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/condition/strongwolfe.rs:229:21
[INFO] [stdout]     |
[INFO] [stdout] 224 |                 cond.evaluate_condition(
[INFO] [stdout]     |                      ------------------ required by a bound introduced by this call
[INFO] [stdout] ...
[INFO] [stdout] 229 |                     &search_direction,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^ the trait `ArgminDot<_, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required for `strongwolfe::StrongWolfeCondition<f64>` to implement `condition::LineSearchCondition<_, Vec<f64>, f64>`
[INFO] [stdout]    --> src/solver/linesearch/condition/strongwolfe.rs:56:15
[INFO] [stdout]     |
[INFO] [stdout] 56  | impl<T, G, F> LineSearchCondition<T, G, F> for StrongWolfeCondition<F>
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 57  | where
[INFO] [stdout] 58  |     G: ArgminDot<T, F>,
[INFO] [stdout]     |        --------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<_, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/condition/wolfe.rs:194:21
[INFO] [stdout]     |
[INFO] [stdout] 189 |                 cond.evaluate_condition(
[INFO] [stdout]     |                      ------------------ required by a bound introduced by this call
[INFO] [stdout] ...
[INFO] [stdout] 194 |                     &search_direction,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^ the trait `ArgminDot<_, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required for `wolfe::WolfeCondition<f64>` to implement `condition::LineSearchCondition<_, Vec<f64>, f64>`
[INFO] [stdout]    --> src/solver/linesearch/condition/wolfe.rs:56:15
[INFO] [stdout]     |
[INFO] [stdout] 56  | impl<T, G, F> LineSearchCondition<T, G, F> for WolfeCondition<F>
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 57  | where
[INFO] [stdout] 58  |     G: ArgminDot<T, F>,
[INFO] [stdout]     |        --------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:649:67
[INFO] [stdout]     |
[INFO] [stdout] 649 |         let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:35
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:649:67
[INFO] [stdout]     |
[INFO] [stdout] 649 |         let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:649:67
[INFO] [stdout]     |
[INFO] [stdout] 649 |         let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_delta_sigma` exists for struct `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:722:28
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct HagerZhangLineSearch<P, G, F> {
[INFO] [stdout]     | ---------------------------------------- method `with_delta_sigma` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 722 |             let res = hzls.with_delta_sigma(delta, sigma);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^ method cannot be called on `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 92  | impl<P, G, F> HagerZhangLineSearch<P, G, F>
[INFO] [stdout]     |               -----------------------------
[INFO] [stdout] 93  | where
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |        |
[INFO] [stdout]     |        unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:721:71
[INFO] [stdout]     |
[INFO] [stdout] 721 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:35
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:721:71
[INFO] [stdout]     |
[INFO] [stdout] 721 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:721:71
[INFO] [stdout]     |
[INFO] [stdout] 721 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_delta_sigma` exists for struct `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:743:28
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct HagerZhangLineSearch<P, G, F> {
[INFO] [stdout]     | ---------------------------------------- method `with_delta_sigma` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 743 |             let res = hzls.with_delta_sigma(delta, sigma);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^ method cannot be called on `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 92  | impl<P, G, F> HagerZhangLineSearch<P, G, F>
[INFO] [stdout]     |               -----------------------------
[INFO] [stdout] 93  | where
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |        |
[INFO] [stdout]     |        unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:742:71
[INFO] [stdout]     |
[INFO] [stdout] 742 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:35
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:742:71
[INFO] [stdout]     |
[INFO] [stdout] 742 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:742:71
[INFO] [stdout]     |
[INFO] [stdout] 742 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_epsilon` exists for struct `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:760:28
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct HagerZhangLineSearch<P, G, F> {
[INFO] [stdout]     | ---------------------------------------- method `with_epsilon` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 760 |             let res = hzls.with_epsilon(epsilon);
[INFO] [stdout]     |                            ^^^^^^^^^^^^ method cannot be called on `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 92  | impl<P, G, F> HagerZhangLineSearch<P, G, F>
[INFO] [stdout]     |               -----------------------------
[INFO] [stdout] 93  | where
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |        |
[INFO] [stdout]     |        unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:759:71
[INFO] [stdout]     |
[INFO] [stdout] 759 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:35
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:759:71
[INFO] [stdout]     |
[INFO] [stdout] 759 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:759:71
[INFO] [stdout]     |
[INFO] [stdout] 759 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0689]: can't call method `to_ne_bytes` on ambiguous numeric type `{float}`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:764:60
[INFO] [stdout]     |
[INFO] [stdout] 758 |         for epsilon in [1e-6, 0.0, 1e-2, 1.0, 2.0] {
[INFO] [stdout]     |             ------- you must specify a type for this binding, like `f32`
[INFO] [stdout] ...
[INFO] [stdout] 764 |             assert_eq!(hzls.epsilon.to_ne_bytes(), epsilon.to_ne_bytes());
[INFO] [stdout]     |                                                            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_epsilon` exists for struct `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:770:28
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct HagerZhangLineSearch<P, G, F> {
[INFO] [stdout]     | ---------------------------------------- method `with_epsilon` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 770 |             let res = hzls.with_epsilon(epsilon);
[INFO] [stdout]     |                            ^^^^^^^^^^^^ method cannot be called on `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 92  | impl<P, G, F> HagerZhangLineSearch<P, G, F>
[INFO] [stdout]     |               -----------------------------
[INFO] [stdout] 93  | where
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |        |
[INFO] [stdout]     |        unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:769:71
[INFO] [stdout]     |
[INFO] [stdout] 769 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:35
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:769:71
[INFO] [stdout]     |
[INFO] [stdout] 769 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:769:71
[INFO] [stdout]     |
[INFO] [stdout] 769 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_theta` exists for struct `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:787:28
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct HagerZhangLineSearch<P, G, F> {
[INFO] [stdout]     | ---------------------------------------- method `with_theta` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 787 |             let res = hzls.with_theta(theta);
[INFO] [stdout]     |                            ^^^^^^^^^^ method cannot be called on `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 92  | impl<P, G, F> HagerZhangLineSearch<P, G, F>
[INFO] [stdout]     |               -----------------------------
[INFO] [stdout] 93  | where
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |        |
[INFO] [stdout]     |        unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:786:71
[INFO] [stdout]     |
[INFO] [stdout] 786 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:35
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:786:71
[INFO] [stdout]     |
[INFO] [stdout] 786 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:786:71
[INFO] [stdout]     |
[INFO] [stdout] 786 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_theta` exists for struct `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:797:28
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct HagerZhangLineSearch<P, G, F> {
[INFO] [stdout]     | ---------------------------------------- method `with_theta` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 797 |             let res = hzls.with_theta(theta);
[INFO] [stdout]     |                            ^^^^^^^^^^ method cannot be called on `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 92  | impl<P, G, F> HagerZhangLineSearch<P, G, F>
[INFO] [stdout]     |               -----------------------------
[INFO] [stdout] 93  | where
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |        |
[INFO] [stdout]     |        unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:796:71
[INFO] [stdout]     |
[INFO] [stdout] 796 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:35
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:796:71
[INFO] [stdout]     |
[INFO] [stdout] 796 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:796:71
[INFO] [stdout]     |
[INFO] [stdout] 796 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_gamma` exists for struct `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:814:28
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct HagerZhangLineSearch<P, G, F> {
[INFO] [stdout]     | ---------------------------------------- method `with_gamma` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 814 |             let res = hzls.with_gamma(gamma);
[INFO] [stdout]     |                            ^^^^^^^^^^ method cannot be called on `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 92  | impl<P, G, F> HagerZhangLineSearch<P, G, F>
[INFO] [stdout]     |               -----------------------------
[INFO] [stdout] 93  | where
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |        |
[INFO] [stdout]     |        unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:813:71
[INFO] [stdout]     |
[INFO] [stdout] 813 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:35
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:813:71
[INFO] [stdout]     |
[INFO] [stdout] 813 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:813:71
[INFO] [stdout]     |
[INFO] [stdout] 813 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_gamma` exists for struct `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:824:28
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct HagerZhangLineSearch<P, G, F> {
[INFO] [stdout]     | ---------------------------------------- method `with_gamma` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 824 |             let res = hzls.with_gamma(gamma);
[INFO] [stdout]     |                            ^^^^^^^^^^ method cannot be called on `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 92  | impl<P, G, F> HagerZhangLineSearch<P, G, F>
[INFO] [stdout]     |               -----------------------------
[INFO] [stdout] 93  | where
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |        |
[INFO] [stdout]     |        unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:823:71
[INFO] [stdout]     |
[INFO] [stdout] 823 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:35
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:823:71
[INFO] [stdout]     |
[INFO] [stdout] 823 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:823:71
[INFO] [stdout]     |
[INFO] [stdout] 823 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_eta` exists for struct `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:841:28
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct HagerZhangLineSearch<P, G, F> {
[INFO] [stdout]     | ---------------------------------------- method `with_eta` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 841 |             let res = hzls.with_eta(eta);
[INFO] [stdout]     |                            ^^^^^^^^ method cannot be called on `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 92  | impl<P, G, F> HagerZhangLineSearch<P, G, F>
[INFO] [stdout]     |               -----------------------------
[INFO] [stdout] 93  | where
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |        |
[INFO] [stdout]     |        unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:840:71
[INFO] [stdout]     |
[INFO] [stdout] 840 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:35
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:840:71
[INFO] [stdout]     |
[INFO] [stdout] 840 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:840:71
[INFO] [stdout]     |
[INFO] [stdout] 840 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_eta` exists for struct `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:851:28
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct HagerZhangLineSearch<P, G, F> {
[INFO] [stdout]     | ---------------------------------------- method `with_eta` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 851 |             let res = hzls.with_eta(eta);
[INFO] [stdout]     |                            ^^^^^^^^ method cannot be called on `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 92  | impl<P, G, F> HagerZhangLineSearch<P, G, F>
[INFO] [stdout]     |               -----------------------------
[INFO] [stdout] 93  | where
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |        |
[INFO] [stdout]     |        unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:850:71
[INFO] [stdout]     |
[INFO] [stdout] 850 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:35
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:850:71
[INFO] [stdout]     |
[INFO] [stdout] 850 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:850:71
[INFO] [stdout]     |
[INFO] [stdout] 850 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_bounds` exists for struct `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:875:28
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct HagerZhangLineSearch<P, G, F> {
[INFO] [stdout]     | ---------------------------------------- method `with_bounds` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 875 |             let res = hzls.with_bounds(min, max);
[INFO] [stdout]     |                            ^^^^^^^^^^^ method cannot be called on `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 92  | impl<P, G, F> HagerZhangLineSearch<P, G, F>
[INFO] [stdout]     |               -----------------------------
[INFO] [stdout] 93  | where
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |        |
[INFO] [stdout]     |        unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:874:71
[INFO] [stdout]     |
[INFO] [stdout] 874 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:35
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:874:71
[INFO] [stdout]     |
[INFO] [stdout] 874 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:874:71
[INFO] [stdout]     |
[INFO] [stdout] 874 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_bounds` exists for struct `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:892:28
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct HagerZhangLineSearch<P, G, F> {
[INFO] [stdout]     | ---------------------------------------- method `with_bounds` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 892 |             let res = hzls.with_bounds(min, max);
[INFO] [stdout]     |                            ^^^^^^^^^^^ method cannot be called on `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 92  | impl<P, G, F> HagerZhangLineSearch<P, G, F>
[INFO] [stdout]     |               -----------------------------
[INFO] [stdout] 93  | where
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |        |
[INFO] [stdout]     |        unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:891:71
[INFO] [stdout]     |
[INFO] [stdout] 891 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:35
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:891:71
[INFO] [stdout]     |
[INFO] [stdout] 891 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:891:71
[INFO] [stdout]     |
[INFO] [stdout] 891 |             let hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `init` exists for struct `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:907:24
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct HagerZhangLineSearch<P, G, F> {
[INFO] [stdout]     | ----------------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `init` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 907 |         let res = hzls.init(&mut Problem::new(TestProblem::new()), IterState::new());
[INFO] [stdout]     |                        ^^^^ method cannot be called on `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:499:33
[INFO] [stdout]     |
[INFO] [stdout] 496 | impl<P, G, O, F> Solver<O, IterState<P, G, (), (), F>> for HagerZhangLineSearch<P, G, F>
[INFO] [stdout]     |                  -------------------------------------     -----------------------------
[INFO] [stdout] ...
[INFO] [stdout] 499 |     P: Clone + SerializeAlias + ArgminDot<G, F> + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 unsatisfied trait bound introduced here
[INFO] [stdout] 500 |     G: Clone + SerializeAlias + ArgminDot<P, F>,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:906:71
[INFO] [stdout]     |
[INFO] [stdout] 906 |         let mut hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:35
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:906:71
[INFO] [stdout]     |
[INFO] [stdout] 906 |         let mut hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:906:71
[INFO] [stdout]     |
[INFO] [stdout] 906 |         let mut hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:920:71
[INFO] [stdout]     |
[INFO] [stdout] 920 |         let mut hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:35
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:920:71
[INFO] [stdout]     |
[INFO] [stdout] 920 |         let mut hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:920:71
[INFO] [stdout]     |
[INFO] [stdout] 920 |         let mut hzls: HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64> = HagerZhangLineSearch::new();
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required by a bound in `hagerzhang::HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:94:8
[INFO] [stdout]     |
[INFO] [stdout] 94  |     P: ArgminScaledAdd<P, F, P> + ArgminDot<G, F>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HagerZhangLineSearch::<P, G, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn new() -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `init` exists for struct `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:922:24
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub struct HagerZhangLineSearch<P, G, F> {
[INFO] [stdout]     | ----------------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `init` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 922 |         let res = hzls.init(&mut Problem::new(TestProblem::new()), IterState::new());
[INFO] [stdout]     |                        ^^^^ method cannot be called on `HagerZhangLineSearch<Vec<f64>, Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    --> src/solver/linesearch/hagerzhang.rs:499:33
[INFO] [stdout]     |
[INFO] [stdout] 496 | impl<P, G, O, F> Solver<O, IterState<P, G, (), (), F>> for HagerZhangLineSearch<P, G, F>
[INFO] [stdout]     |                  -------------------------------------     -----------------------------
[INFO] [stdout] ...
[INFO] [stdout] 499 |     P: Clone + SerializeAlias + ArgminDot<G, F> + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 unsatisfied trait bound introduced here
[INFO] [stdout] 500 |     G: Clone + SerializeAlias + ArgminDot<P, F>,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `init` exists for struct `MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/morethuente.rs:902:24
[INFO] [stdout]     |
[INFO] [stdout] 55  | pub struct MoreThuenteLineSearch<P, G, F> {
[INFO] [stdout]     | -----------------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `init` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 902 |         let res = mtls.init(&mut Problem::new(TestProblem::new()), IterState::new());
[INFO] [stdout]     |                        ^^^^ method cannot be called on `MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    --> src/solver/linesearch/morethuente.rs:302:33
[INFO] [stdout]     |
[INFO] [stdout] 299 | impl<P, G, O, F> Solver<O, IterState<P, G, (), (), F>> for MoreThuenteLineSearch<P, G, F>
[INFO] [stdout]     |                  -------------------------------------     ------------------------------
[INFO] [stdout] ...
[INFO] [stdout] 302 |     P: Clone + SerializeAlias + ArgminDot<G, F> + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 unsatisfied trait bound introduced here
[INFO] [stdout] 303 |     G: Clone + SerializeAlias + ArgminDot<P, F>,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `init` exists for struct `MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/linesearch/morethuente.rs:917:24
[INFO] [stdout]     |
[INFO] [stdout] 55  | pub struct MoreThuenteLineSearch<P, G, F> {
[INFO] [stdout]     | -----------------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `init` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, Vec<f64>, (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 917 |         let res = mtls.init(&mut Problem::new(TestProblem::new()), IterState::new());
[INFO] [stdout]     |                        ^^^^ method cannot be called on `MoreThuenteLineSearch<Vec<f64>, Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminDot<Vec<f64>, f64>`
[INFO] [stdout]       `Vec<f64>: ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout]    --> src/solver/linesearch/morethuente.rs:302:33
[INFO] [stdout]     |
[INFO] [stdout] 299 | impl<P, G, O, F> Solver<O, IterState<P, G, (), (), F>> for MoreThuenteLineSearch<P, G, F>
[INFO] [stdout]     |                  -------------------------------------     ------------------------------
[INFO] [stdout] ...
[INFO] [stdout] 302 |     P: Clone + SerializeAlias + ArgminDot<G, F> + ArgminScaledAdd<P, F, P>,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 unsatisfied trait bound introduced here
[INFO] [stdout] 303 |     G: Clone + SerializeAlias + ArgminDot<P, F>,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:456:61
[INFO] [stdout]     |
[INFO] [stdout] 456 |         let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                             --------------- ^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:456:61
[INFO] [stdout]     |
[INFO] [stdout] 456 |         let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                             --------------- ^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:34
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:456:61
[INFO] [stdout]     |
[INFO] [stdout] 456 |         let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                             --------------- ^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:52
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:483:65
[INFO] [stdout]     |
[INFO] [stdout] 483 |             let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                                 --------------- ^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:483:65
[INFO] [stdout]     |
[INFO] [stdout] 483 |             let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                                 --------------- ^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:34
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:483:65
[INFO] [stdout]     |
[INFO] [stdout] 483 |             let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                                 --------------- ^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:52
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_sd_tolerance` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:484:26
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | --------------------------- method `with_sd_tolerance` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 484 |             let res = nm.with_sd_tolerance(tol);
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl<P, F> NelderMead<P, F>
[INFO] [stdout]     |            ----------------
[INFO] [stdout] 79  | where
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                |                 |
[INFO] [stdout]     |                |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0689]: can't call method `to_ne_bytes` on ambiguous numeric type `{float}`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:488:59
[INFO] [stdout]     |
[INFO] [stdout] 481 |         for tol in [1e-6, 0.0, 1e-2, 1.0, 2.0] {
[INFO] [stdout]     |             --- you must specify a type for this binding, like `f32`
[INFO] [stdout] ...
[INFO] [stdout] 488 |             assert_eq!(nm.sd_tolerance.to_ne_bytes(), tol.to_ne_bytes());
[INFO] [stdout]     |                                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:494:65
[INFO] [stdout]     |
[INFO] [stdout] 494 |             let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                                 --------------- ^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:494:65
[INFO] [stdout]     |
[INFO] [stdout] 494 |             let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                                 --------------- ^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:34
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:494:65
[INFO] [stdout]     |
[INFO] [stdout] 494 |             let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                                 --------------- ^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:52
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_sd_tolerance` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:495:26
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | --------------------------- method `with_sd_tolerance` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 495 |             let res = nm.with_sd_tolerance(tol);
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl<P, F> NelderMead<P, F>
[INFO] [stdout]     |            ----------------
[INFO] [stdout] 79  | where
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                |                 |
[INFO] [stdout]     |                |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:512:65
[INFO] [stdout]     |
[INFO] [stdout] 512 |             let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                                 --------------- ^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:512:65
[INFO] [stdout]     |
[INFO] [stdout] 512 |             let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                                 --------------- ^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:34
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:512:65
[INFO] [stdout]     |
[INFO] [stdout] 512 |             let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                                 --------------- ^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:52
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_alpha` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:513:26
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | --------------------------- method `with_alpha` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 513 |             let res = nm.with_alpha(alpha);
[INFO] [stdout]     |                          ^^^^^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl<P, F> NelderMead<P, F>
[INFO] [stdout]     |            ----------------
[INFO] [stdout] 79  | where
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                |                 |
[INFO] [stdout]     |                |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:523:65
[INFO] [stdout]     |
[INFO] [stdout] 523 |             let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                                 --------------- ^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:523:65
[INFO] [stdout]     |
[INFO] [stdout] 523 |             let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                                 --------------- ^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:34
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:523:65
[INFO] [stdout]     |
[INFO] [stdout] 523 |             let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                                 --------------- ^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:52
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_alpha` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:524:26
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | --------------------------- method `with_alpha` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 524 |             let res = nm.with_alpha(alpha);
[INFO] [stdout]     |                          ^^^^^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl<P, F> NelderMead<P, F>
[INFO] [stdout]     |            ----------------
[INFO] [stdout] 79  | where
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                |                 |
[INFO] [stdout]     |                |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:541:65
[INFO] [stdout]     |
[INFO] [stdout] 541 |             let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                                 --------------- ^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:541:65
[INFO] [stdout]     |
[INFO] [stdout] 541 |             let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                                 --------------- ^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:34
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:541:65
[INFO] [stdout]     |
[INFO] [stdout] 541 |             let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                                 --------------- ^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:52
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_rho` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:542:26
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | --------------------------- method `with_rho` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 542 |             let res = nm.with_rho(rho);
[INFO] [stdout]     |                          ^^^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl<P, F> NelderMead<P, F>
[INFO] [stdout]     |            ----------------
[INFO] [stdout] 79  | where
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                |                 |
[INFO] [stdout]     |                |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:552:65
[INFO] [stdout]     |
[INFO] [stdout] 552 |             let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                                 --------------- ^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:552:65
[INFO] [stdout]     |
[INFO] [stdout] 552 |             let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                                 --------------- ^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:34
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:552:65
[INFO] [stdout]     |
[INFO] [stdout] 552 |             let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                                 --------------- ^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:52
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_rho` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:553:26
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | --------------------------- method `with_rho` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 553 |             let res = nm.with_rho(rho);
[INFO] [stdout]     |                          ^^^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl<P, F> NelderMead<P, F>
[INFO] [stdout]     |            ----------------
[INFO] [stdout] 79  | where
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                |                 |
[INFO] [stdout]     |                |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:570:65
[INFO] [stdout]     |
[INFO] [stdout] 570 |             let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                                 --------------- ^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:570:65
[INFO] [stdout]     |
[INFO] [stdout] 570 |             let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                                 --------------- ^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:34
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:570:65
[INFO] [stdout]     |
[INFO] [stdout] 570 |             let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                                 --------------- ^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:52
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_sigma` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:571:26
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | --------------------------- method `with_sigma` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 571 |             let res = nm.with_sigma(sigma);
[INFO] [stdout]     |                          ^^^^^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl<P, F> NelderMead<P, F>
[INFO] [stdout]     |            ----------------
[INFO] [stdout] 79  | where
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                |                 |
[INFO] [stdout]     |                |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:581:65
[INFO] [stdout]     |
[INFO] [stdout] 581 |             let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                                 --------------- ^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:581:65
[INFO] [stdout]     |
[INFO] [stdout] 581 |             let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                                 --------------- ^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:34
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:581:65
[INFO] [stdout]     |
[INFO] [stdout] 581 |             let nm: NelderMead<Vec<f64>, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                                 --------------- ^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:52
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_sigma` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:582:26
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | --------------------------- method `with_sigma` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 582 |             let res = nm.with_sigma(sigma);
[INFO] [stdout]     |                          ^^^^^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl<P, F> NelderMead<P, F>
[INFO] [stdout]     |            ----------------
[INFO] [stdout] 79  | where
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                |                 |
[INFO] [stdout]     |                |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:598:58
[INFO] [stdout]     |
[INFO] [stdout] 598 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:598:58
[INFO] [stdout]     |
[INFO] [stdout] 598 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:34
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:598:58
[INFO] [stdout]     |
[INFO] [stdout] 598 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:52
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `sort_param_vecs` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:600:12
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | --------------------------- method `sort_param_vecs` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 600 |         nm.sort_param_vecs();
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl<P, F> NelderMead<P, F>
[INFO] [stdout]     |            ----------------
[INFO] [stdout] 79  | where
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                |                 |
[INFO] [stdout]     |                |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:610:58
[INFO] [stdout]     |
[INFO] [stdout] 610 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:610:58
[INFO] [stdout]     |
[INFO] [stdout] 610 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:34
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:610:58
[INFO] [stdout]     |
[INFO] [stdout] 610 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:52
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `sort_param_vecs` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:615:12
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | --------------------------- method `sort_param_vecs` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 615 |         nm.sort_param_vecs();
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl<P, F> NelderMead<P, F>
[INFO] [stdout]     |            ----------------
[INFO] [stdout] 79  | where
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                |                 |
[INFO] [stdout]     |                |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `calculate_centroid` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:616:27
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | --------------------------- method `calculate_centroid` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 616 |         let centroid = nm.calculate_centroid();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl<P, F> NelderMead<P, F>
[INFO] [stdout]     |            ----------------
[INFO] [stdout] 79  | where
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                |                 |
[INFO] [stdout]     |                |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:624:58
[INFO] [stdout]     |
[INFO] [stdout] 624 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:624:58
[INFO] [stdout]     |
[INFO] [stdout] 624 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:34
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:624:58
[INFO] [stdout]     |
[INFO] [stdout] 624 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:52
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `sort_param_vecs` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:629:12
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | --------------------------- method `sort_param_vecs` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 629 |         nm.sort_param_vecs();
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl<P, F> NelderMead<P, F>
[INFO] [stdout]     |            ----------------
[INFO] [stdout] 79  | where
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                |                 |
[INFO] [stdout]     |                |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `calculate_centroid` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:630:27
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | --------------------------- method `calculate_centroid` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 630 |         let centroid = nm.calculate_centroid();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl<P, F> NelderMead<P, F>
[INFO] [stdout]     |            ----------------
[INFO] [stdout] 79  | where
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                |                 |
[INFO] [stdout]     |                |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `reflect` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:631:28
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | --------------------------- method `reflect` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 631 |         let reflected = nm.reflect(&centroid, &vec![0.0, 0.0]);
[INFO] [stdout]     |                            ^^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl<P, F> NelderMead<P, F>
[INFO] [stdout]     |            ----------------
[INFO] [stdout] 79  | where
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                |                 |
[INFO] [stdout]     |                |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:639:58
[INFO] [stdout]     |
[INFO] [stdout] 639 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:639:58
[INFO] [stdout]     |
[INFO] [stdout] 639 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:34
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:639:58
[INFO] [stdout]     |
[INFO] [stdout] 639 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:52
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `sort_param_vecs` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:644:12
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | --------------------------- method `sort_param_vecs` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 644 |         nm.sort_param_vecs();
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl<P, F> NelderMead<P, F>
[INFO] [stdout]     |            ----------------
[INFO] [stdout] 79  | where
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                |                 |
[INFO] [stdout]     |                |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `calculate_centroid` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:645:27
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | --------------------------- method `calculate_centroid` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 645 |         let centroid = nm.calculate_centroid();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl<P, F> NelderMead<P, F>
[INFO] [stdout]     |            ----------------
[INFO] [stdout] 79  | where
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                |                 |
[INFO] [stdout]     |                |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `expand` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:646:27
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | --------------------------- method `expand` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 646 |         let expanded = nm.expand(&centroid, &vec![1.0, 1.0]);
[INFO] [stdout]     |                           ^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl<P, F> NelderMead<P, F>
[INFO] [stdout]     |            ----------------
[INFO] [stdout] 79  | where
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                |                 |
[INFO] [stdout]     |                |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:654:58
[INFO] [stdout]     |
[INFO] [stdout] 654 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:654:58
[INFO] [stdout]     |
[INFO] [stdout] 654 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:34
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:654:58
[INFO] [stdout]     |
[INFO] [stdout] 654 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:52
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `sort_param_vecs` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:659:12
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | --------------------------- method `sort_param_vecs` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 659 |         nm.sort_param_vecs();
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl<P, F> NelderMead<P, F>
[INFO] [stdout]     |            ----------------
[INFO] [stdout] 79  | where
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                |                 |
[INFO] [stdout]     |                |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `calculate_centroid` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:660:27
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | --------------------------- method `calculate_centroid` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 660 |         let centroid = nm.calculate_centroid();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl<P, F> NelderMead<P, F>
[INFO] [stdout]     |            ----------------
[INFO] [stdout] 79  | where
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                |                 |
[INFO] [stdout]     |                |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `contract` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:661:29
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | --------------------------- method `contract` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 661 |         let contracted = nm.contract(&centroid, &vec![1.0, 1.0]);
[INFO] [stdout]     |                             ^^^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl<P, F> NelderMead<P, F>
[INFO] [stdout]     |            ----------------
[INFO] [stdout] 79  | where
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                |                 |
[INFO] [stdout]     |                |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:670:58
[INFO] [stdout]     |
[INFO] [stdout] 670 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:670:58
[INFO] [stdout]     |
[INFO] [stdout] 670 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:34
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:670:58
[INFO] [stdout]     |
[INFO] [stdout] 670 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:52
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `sort_param_vecs` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:675:12
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | --------------------------- method `sort_param_vecs` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 675 |         nm.sort_param_vecs();
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl<P, F> NelderMead<P, F>
[INFO] [stdout]     |            ----------------
[INFO] [stdout] 79  | where
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                |                 |
[INFO] [stdout]     |                |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `shrink` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:676:12
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | --------------------------- method `shrink` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 676 |         nm.shrink(|_| Ok(1.0f64)).unwrap();
[INFO] [stdout]     |            ^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl<P, F> NelderMead<P, F>
[INFO] [stdout]     |            ----------------
[INFO] [stdout] 79  | where
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                |                 |
[INFO] [stdout]     |                |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:692:58
[INFO] [stdout]     |
[INFO] [stdout] 692 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:692:58
[INFO] [stdout]     |
[INFO] [stdout] 692 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:34
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:692:58
[INFO] [stdout]     |
[INFO] [stdout] 692 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:52
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `init` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:695:34
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | ---------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `init` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, (), (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 695 |         let (state_out, kv) = nm.init(&mut Problem::new(problem), state).unwrap();
[INFO] [stdout]     |                                  ^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:322:33
[INFO] [stdout]     |
[INFO] [stdout] 319 | impl<O, P, F> Solver<O, IterState<P, (), (), (), F>> for NelderMead<P, F>
[INFO] [stdout]     |               --------------------------------------     ----------------
[INFO] [stdout] ...
[INFO] [stdout] 322 |     P: Clone + SerializeAlias + ArgminSub<P, P> + ArgminAdd<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                                 |                 |
[INFO] [stdout]     |                                 |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                                 unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:723:58
[INFO] [stdout]     |
[INFO] [stdout] 723 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:723:58
[INFO] [stdout]     |
[INFO] [stdout] 723 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:34
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:723:58
[INFO] [stdout]     |
[INFO] [stdout] 723 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:52
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `init` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:726:29
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | ---------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `init` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, (), (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 726 |         let (state, _) = nm.init(&mut problem, state).unwrap();
[INFO] [stdout]     |                             ^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:322:33
[INFO] [stdout]     |
[INFO] [stdout] 319 | impl<O, P, F> Solver<O, IterState<P, (), (), (), F>> for NelderMead<P, F>
[INFO] [stdout]     |               --------------------------------------     ----------------
[INFO] [stdout] ...
[INFO] [stdout] 322 |     P: Clone + SerializeAlias + ArgminSub<P, P> + ArgminAdd<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                                 |                 |
[INFO] [stdout]     |                                 |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                                 unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `next_iter` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:728:30
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | ---------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `next_iter` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, (), (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 728 |         let (state, kv) = nm.next_iter(&mut problem, state).unwrap();
[INFO] [stdout]     |                              ^^^^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:322:33
[INFO] [stdout]     |
[INFO] [stdout] 319 | impl<O, P, F> Solver<O, IterState<P, (), (), (), F>> for NelderMead<P, F>
[INFO] [stdout]     |               --------------------------------------     ----------------
[INFO] [stdout] ...
[INFO] [stdout] 322 |     P: Clone + SerializeAlias + ArgminSub<P, P> + ArgminAdd<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                                 |                 |
[INFO] [stdout]     |                                 |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                                 unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:766:58
[INFO] [stdout]     |
[INFO] [stdout] 766 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:766:58
[INFO] [stdout]     |
[INFO] [stdout] 766 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:34
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:766:58
[INFO] [stdout]     |
[INFO] [stdout] 766 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:52
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `init` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:769:29
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | ---------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `init` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, (), (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 769 |         let (state, _) = nm.init(&mut problem, state).unwrap();
[INFO] [stdout]     |                             ^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:322:33
[INFO] [stdout]     |
[INFO] [stdout] 319 | impl<O, P, F> Solver<O, IterState<P, (), (), (), F>> for NelderMead<P, F>
[INFO] [stdout]     |               --------------------------------------     ----------------
[INFO] [stdout] ...
[INFO] [stdout] 322 |     P: Clone + SerializeAlias + ArgminSub<P, P> + ArgminAdd<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                                 |                 |
[INFO] [stdout]     |                                 |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                                 unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `next_iter` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:771:30
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | ---------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `next_iter` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, (), (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 771 |         let (state, kv) = nm.next_iter(&mut problem, state).unwrap();
[INFO] [stdout]     |                              ^^^^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:322:33
[INFO] [stdout]     |
[INFO] [stdout] 319 | impl<O, P, F> Solver<O, IterState<P, (), (), (), F>> for NelderMead<P, F>
[INFO] [stdout]     |               --------------------------------------     ----------------
[INFO] [stdout] ...
[INFO] [stdout] 322 |     P: Clone + SerializeAlias + ArgminSub<P, P> + ArgminAdd<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                                 |                 |
[INFO] [stdout]     |                                 |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                                 unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:802:58
[INFO] [stdout]     |
[INFO] [stdout] 802 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:802:58
[INFO] [stdout]     |
[INFO] [stdout] 802 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:34
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:802:58
[INFO] [stdout]     |
[INFO] [stdout] 802 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:52
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `init` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:805:29
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | ---------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `init` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, (), (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 805 |         let (state, _) = nm.init(&mut problem, state).unwrap();
[INFO] [stdout]     |                             ^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:322:33
[INFO] [stdout]     |
[INFO] [stdout] 319 | impl<O, P, F> Solver<O, IterState<P, (), (), (), F>> for NelderMead<P, F>
[INFO] [stdout]     |               --------------------------------------     ----------------
[INFO] [stdout] ...
[INFO] [stdout] 322 |     P: Clone + SerializeAlias + ArgminSub<P, P> + ArgminAdd<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                                 |                 |
[INFO] [stdout]     |                                 |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                                 unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `next_iter` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:807:30
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | ---------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `next_iter` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, (), (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 807 |         let (state, kv) = nm.next_iter(&mut problem, state).unwrap();
[INFO] [stdout]     |                              ^^^^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:322:33
[INFO] [stdout]     |
[INFO] [stdout] 319 | impl<O, P, F> Solver<O, IterState<P, (), (), (), F>> for NelderMead<P, F>
[INFO] [stdout]     |               --------------------------------------     ----------------
[INFO] [stdout] ...
[INFO] [stdout] 322 |     P: Clone + SerializeAlias + ArgminSub<P, P> + ArgminAdd<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                                 |                 |
[INFO] [stdout]     |                                 |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                                 unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:838:58
[INFO] [stdout]     |
[INFO] [stdout] 838 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:16
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:838:58
[INFO] [stdout]     |
[INFO] [stdout] 838 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:34
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:838:58
[INFO] [stdout]     |
[INFO] [stdout] 838 |         let mut nm: NelderMead<_, f64> = NelderMead::new(params);
[INFO] [stdout]     |                                          --------------- ^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `neldermead::NelderMead::<P, F>::new`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:80:52
[INFO] [stdout]     |
[INFO] [stdout] 80  |     P: Clone + ArgminAdd<P, P> + ArgminSub<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^ required by this bound in `NelderMead::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn new(params: Vec<P>) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `init` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:841:29
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | ---------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `init` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, (), (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 841 |         let (state, _) = nm.init(&mut problem, state).unwrap();
[INFO] [stdout]     |                             ^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:322:33
[INFO] [stdout]     |
[INFO] [stdout] 319 | impl<O, P, F> Solver<O, IterState<P, (), (), (), F>> for NelderMead<P, F>
[INFO] [stdout]     |               --------------------------------------     ----------------
[INFO] [stdout] ...
[INFO] [stdout] 322 |     P: Clone + SerializeAlias + ArgminSub<P, P> + ArgminAdd<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                                 |                 |
[INFO] [stdout]     |                                 |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                                 unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `next_iter` exists for struct `NelderMead<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:843:30
[INFO] [stdout]     |
[INFO] [stdout] 63  | pub struct NelderMead<P, F> {
[INFO] [stdout]     | ---------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `next_iter` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, IterState<Vec<f64>, (), (), (), f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 843 |         let (state, kv) = nm.next_iter(&mut problem, state).unwrap();
[INFO] [stdout]     |                              ^^^^^^^^^ method cannot be called on `NelderMead<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]    --> src/solver/neldermead/mod.rs:322:33
[INFO] [stdout]     |
[INFO] [stdout] 319 | impl<O, P, F> Solver<O, IterState<P, (), (), (), F>> for NelderMead<P, F>
[INFO] [stdout]     |               --------------------------------------     ----------------
[INFO] [stdout] ...
[INFO] [stdout] 322 |     P: Clone + SerializeAlias + ArgminSub<P, P> + ArgminAdd<P, P> + ArgminMul<F, P>,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                                 |                 |
[INFO] [stdout]     |                                 |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                                 unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/newton/newton_cg.rs:333:33
[INFO] [stdout]     |
[INFO] [stdout] 333 |         let res = ncg.next_iter(&mut Problem::new(TestProblem::new()), IterState::new());
[INFO] [stdout]     |                       --------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required for `newton_cg::NewtonCG<backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>, f64>` to implement `core::solver::Solver<TestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), Vec<Vec<f64>>, f64>>`
[INFO] [stdout]    --> src/solver/newton/newton_cg.rs:109:24
[INFO] [stdout]     |
[INFO] [stdout] 109 | impl<O, L, P, G, H, F> Solver<O, IterState<P, G, (), H, F>> for NewtonCG<L, F>
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |         + ArgminSub<P, P>
[INFO] [stdout]     |           --------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminDot<Vec<f64>, f64>` is not satisfied
[INFO] [stdout]    --> src/solver/newton/newton_cg.rs:333:33
[INFO] [stdout]     |
[INFO] [stdout] 333 |         let res = ncg.next_iter(&mut Problem::new(TestProblem::new()), IterState::new());
[INFO] [stdout]     |                       --------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminDot<Vec<f64>, f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required for `newton_cg::NewtonCG<backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>, f64>` to implement `core::solver::Solver<TestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), Vec<Vec<f64>>, f64>>`
[INFO] [stdout]    --> src/solver/newton/newton_cg.rs:109:24
[INFO] [stdout]     |
[INFO] [stdout] 109 | impl<O, L, P, G, H, F> Solver<O, IterState<P, G, (), H, F>> for NewtonCG<L, F>
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 116 |         + ArgminDot<P, F>
[INFO] [stdout]     |           --------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<f64, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/newton/newton_cg.rs:333:33
[INFO] [stdout]     |
[INFO] [stdout] 333 |         let res = ncg.next_iter(&mut Problem::new(TestProblem::new()), IterState::new());
[INFO] [stdout]     |                       --------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<f64, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required for `newton_cg::NewtonCG<backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>, f64>` to implement `core::solver::Solver<TestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), Vec<Vec<f64>>, f64>>`
[INFO] [stdout]    --> src/solver/newton/newton_cg.rs:109:24
[INFO] [stdout]     |
[INFO] [stdout] 109 | impl<O, L, P, G, H, F> Solver<O, IterState<P, G, (), H, F>> for NewtonCG<L, F>
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 |         + ArgminMul<F, P>
[INFO] [stdout]     |           --------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminConj` is not satisfied
[INFO] [stdout]    --> src/solver/newton/newton_cg.rs:333:33
[INFO] [stdout]     |
[INFO] [stdout] 333 |         let res = ncg.next_iter(&mut Problem::new(TestProblem::new()), IterState::new());
[INFO] [stdout]     |                       --------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminConj` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminConj`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               num_complex::Complex<f32>
[INFO] [stdout]             and 11 others
[INFO] [stdout] note: required for `newton_cg::NewtonCG<backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>, f64>` to implement `core::solver::Solver<TestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), Vec<Vec<f64>>, f64>>`
[INFO] [stdout]    --> src/solver/newton/newton_cg.rs:109:24
[INFO] [stdout]     |
[INFO] [stdout] 109 | impl<O, L, P, G, H, F> Solver<O, IterState<P, G, (), H, F>> for NewtonCG<L, F>
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |         + ArgminConj
[INFO] [stdout]     |           ---------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminZeroLike` is not satisfied
[INFO] [stdout]    --> src/solver/newton/newton_cg.rs:333:33
[INFO] [stdout]     |
[INFO] [stdout] 333 |         let res = ncg.next_iter(&mut Problem::new(TestProblem::new()), IterState::new());
[INFO] [stdout]     |                       --------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminZeroLike` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminZeroLike`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               num_complex::Complex<f32>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required for `newton_cg::NewtonCG<backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>, f64>` to implement `core::solver::Solver<TestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), Vec<Vec<f64>>, f64>>`
[INFO] [stdout]    --> src/solver/newton/newton_cg.rs:109:24
[INFO] [stdout]     |
[INFO] [stdout] 109 | impl<O, L, P, G, H, F> Solver<O, IterState<P, G, (), H, F>> for NewtonCG<L, F>
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |         + ArgminZeroLike,
[INFO] [stdout]     |           -------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: argmin_math::ArgminL2Norm<f64>` is not satisfied
[INFO] [stdout]    --> src/solver/newton/newton_cg.rs:333:33
[INFO] [stdout]     |
[INFO] [stdout] 333 |         let res = ncg.next_iter(&mut Problem::new(TestProblem::new()), IterState::new());
[INFO] [stdout]     |                       --------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `argmin_math::ArgminL2Norm<f64>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `argmin_math::ArgminL2Norm<U>`:
[INFO] [stdout]               <f32 as argmin_math::ArgminL2Norm<f32>>
[INFO] [stdout]               <f64 as argmin_math::ArgminL2Norm<f64>>
[INFO] [stdout]               <i16 as argmin_math::ArgminL2Norm<i16>>
[INFO] [stdout]               <i32 as argmin_math::ArgminL2Norm<i32>>
[INFO] [stdout]               <i64 as argmin_math::ArgminL2Norm<i64>>
[INFO] [stdout]               <i8 as argmin_math::ArgminL2Norm<i8>>
[INFO] [stdout]               <isize as argmin_math::ArgminL2Norm<isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as argmin_math::ArgminL2Norm<f32>>
[INFO] [stdout]             and 6 others
[INFO] [stdout] note: required for `newton_cg::NewtonCG<backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>, f64>` to implement `core::solver::Solver<TestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), Vec<Vec<f64>>, f64>>`
[INFO] [stdout]    --> src/solver/newton/newton_cg.rs:109:24
[INFO] [stdout]     |
[INFO] [stdout] 109 | impl<O, L, P, G, H, F> Solver<O, IterState<P, G, (), H, F>> for NewtonCG<L, F>
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 121 |     G: SerializeAlias + DeserializeOwnedAlias + ArgminL2Norm<F> + ArgminMul<F, P>,
[INFO] [stdout]     |                                                 --------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<Vec<f64>>: ArgminDot<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/newton/newton_cg.rs:333:33
[INFO] [stdout]     |
[INFO] [stdout] 333 |         let res = ncg.next_iter(&mut Problem::new(TestProblem::new()), IterState::new());
[INFO] [stdout]     |                       --------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminDot<Vec<f64>, Vec<f64>>` is not implemented for `Vec<Vec<f64>>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminDot<T, U>`:
[INFO] [stdout]               <f32 as ArgminDot<f32, f32>>
[INFO] [stdout]               <f64 as ArgminDot<f64, f64>>
[INFO] [stdout]               <i16 as ArgminDot<i16, i16>>
[INFO] [stdout]               <i32 as ArgminDot<i32, i32>>
[INFO] [stdout]               <i64 as ArgminDot<i64, i64>>
[INFO] [stdout]               <i8 as ArgminDot<i8, i8>>
[INFO] [stdout]               <isize as ArgminDot<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminDot<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required for `newton_cg::NewtonCG<backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>, f64>` to implement `core::solver::Solver<TestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), Vec<Vec<f64>>, f64>>`
[INFO] [stdout]    --> src/solver/newton/newton_cg.rs:109:24
[INFO] [stdout]     |
[INFO] [stdout] 109 | impl<O, L, P, G, H, F> Solver<O, IterState<P, G, (), H, F>> for NewtonCG<L, F>
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     H: Clone + SerializeAlias + DeserializeOwnedAlias + ArgminDot<P, P>,
[INFO] [stdout]     |                                                         --------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `f64: ArgminMul<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/newton/newton_cg.rs:333:33
[INFO] [stdout]     |
[INFO] [stdout] 333 |         let res = ncg.next_iter(&mut Problem::new(TestProblem::new()), IterState::new());
[INFO] [stdout]     |                       --------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<Vec<f64>, Vec<f64>>` is not implemented for `f64`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `ArgminMul<f64, f64>` is implemented for `f64`
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required for `newton_cg::NewtonCG<backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>, f64>` to implement `core::solver::Solver<TestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), Vec<Vec<f64>>, f64>>`
[INFO] [stdout]    --> src/solver/newton/newton_cg.rs:109:24
[INFO] [stdout]     |
[INFO] [stdout] 109 | impl<O, L, P, G, H, F> Solver<O, IterState<P, G, (), H, F>> for NewtonCG<L, F>
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |         + ArgminScaledAdd<P, F, P>
[INFO] [stdout]     |           ------------------------ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/newton/newton_cg.rs:333:33
[INFO] [stdout]     |
[INFO] [stdout] 333 |         let res = ncg.next_iter(&mut Problem::new(TestProblem::new()), IterState::new());
[INFO] [stdout]     |                       --------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminAdd<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminAdd<T, U>`:
[INFO] [stdout]               <f32 as ArgminAdd<f32, f32>>
[INFO] [stdout]               <f64 as ArgminAdd<f64, f64>>
[INFO] [stdout]               <i16 as ArgminAdd<i16, i16>>
[INFO] [stdout]               <i32 as ArgminAdd<i32, i32>>
[INFO] [stdout]               <i64 as ArgminAdd<i64, i64>>
[INFO] [stdout]               <i8 as ArgminAdd<i8, i8>>
[INFO] [stdout]               <isize as ArgminAdd<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminAdd<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout]     = note: required for `Vec<f64>` to implement `ArgminScaledAdd<Vec<f64>, f64, Vec<f64>>`
[INFO] [stdout] note: required for `newton_cg::NewtonCG<backtracking::BacktrackingLineSearch<Vec<f64>, Vec<f64>, armijo::ArmijoCondition<f64>, f64>, f64>` to implement `core::solver::Solver<TestProblem, iterstate::IterState<Vec<f64>, Vec<f64>, (), Vec<Vec<f64>>, f64>>`
[INFO] [stdout]    --> src/solver/newton/newton_cg.rs:109:24
[INFO] [stdout]     |
[INFO] [stdout] 109 | impl<O, L, P, G, H, F> Solver<O, IterState<P, G, (), H, F>> for NewtonCG<L, F>
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |         + ArgminScaledAdd<P, F, P>
[INFO] [stdout]     |           ------------------------ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:418:32
[INFO] [stdout]     |
[INFO] [stdout] 418 |             ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40);
[INFO] [stdout]     |             ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:28
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:418:32
[INFO] [stdout]     |
[INFO] [stdout] 418 |             ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40);
[INFO] [stdout]     |             ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:46
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminRandom` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:418:32
[INFO] [stdout]     |
[INFO] [stdout] 418 |             ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40);
[INFO] [stdout]     |             ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminRandom` is not implemented for `Vec<f64>`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminRandom`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               u16
[INFO] [stdout]             and 4 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:64
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminZeroLike` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:418:32
[INFO] [stdout]     |
[INFO] [stdout] 418 |             ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40);
[INFO] [stdout]     |             ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminZeroLike` is not implemented for `Vec<f64>`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminZeroLike`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               num_complex::Complex<f32>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:79
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                               ^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:455:42
[INFO] [stdout]     |
[INFO] [stdout] 455 |             let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |                       ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:28
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:455:42
[INFO] [stdout]     |
[INFO] [stdout] 455 |             let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |                       ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:46
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminRandom` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:455:42
[INFO] [stdout]     |
[INFO] [stdout] 455 |             let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |                       ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminRandom` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminRandom`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               u16
[INFO] [stdout]             and 4 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:64
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminZeroLike` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:455:42
[INFO] [stdout]     |
[INFO] [stdout] 455 |             let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |                       ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminZeroLike` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminZeroLike`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               num_complex::Complex<f32>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:79
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                               ^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_inertia_factor` exists for struct `ParticleSwarm<Vec<f64>, _>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:456:18
[INFO] [stdout]     |
[INFO] [stdout] 53  |   pub struct ParticleSwarm<P, F> {
[INFO] [stdout]     |   ------------------------------ method `with_inertia_factor` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 455 |               let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |  _______________________-
[INFO] [stdout] 456 | |                 .with_inertia_factor(inertia);
[INFO] [stdout]     | |                 -^^^^^^^^^^^^^^^^^^^ method cannot be called on `ParticleSwarm<Vec<f64>, _>` due to unsatisfied trait bounds
[INFO] [stdout]     | |_________________|
[INFO] [stdout]     | 
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<_, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminRandom`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminMul<_, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminRandom`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:28
[INFO] [stdout]     |
[INFO] [stdout] 66  | impl<P, F> ParticleSwarm<P, F>
[INFO] [stdout]     |            -------------------
[INFO] [stdout] 67  | where
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^   ^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                            |                 |                 |
[INFO] [stdout]     |                            |                 |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                            |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                            unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:465:42
[INFO] [stdout]     |
[INFO] [stdout] 465 |             let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |                       ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:28
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:465:42
[INFO] [stdout]     |
[INFO] [stdout] 465 |             let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |                       ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:46
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminRandom` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:465:42
[INFO] [stdout]     |
[INFO] [stdout] 465 |             let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |                       ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminRandom` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminRandom`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               u16
[INFO] [stdout]             and 4 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:64
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminZeroLike` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:465:42
[INFO] [stdout]     |
[INFO] [stdout] 465 |             let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |                       ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminZeroLike` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminZeroLike`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               num_complex::Complex<f32>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:79
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                               ^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_inertia_factor` exists for struct `ParticleSwarm<Vec<f64>, _>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:466:18
[INFO] [stdout]     |
[INFO] [stdout] 53  |   pub struct ParticleSwarm<P, F> {
[INFO] [stdout]     |   ------------------------------ method `with_inertia_factor` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 465 |               let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |  _______________________-
[INFO] [stdout] 466 | |                 .with_inertia_factor(inertia);
[INFO] [stdout]     | |                 -^^^^^^^^^^^^^^^^^^^ method cannot be called on `ParticleSwarm<Vec<f64>, _>` due to unsatisfied trait bounds
[INFO] [stdout]     | |_________________|
[INFO] [stdout]     | 
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<_, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminRandom`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminMul<_, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminRandom`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:28
[INFO] [stdout]     |
[INFO] [stdout] 66  | impl<P, F> ParticleSwarm<P, F>
[INFO] [stdout]     |            -------------------
[INFO] [stdout] 67  | where
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^   ^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                            |                 |                 |
[INFO] [stdout]     |                            |                 |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                            |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                            unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:484:42
[INFO] [stdout]     |
[INFO] [stdout] 484 |             let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |                       ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:28
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:484:42
[INFO] [stdout]     |
[INFO] [stdout] 484 |             let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |                       ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:46
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminRandom` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:484:42
[INFO] [stdout]     |
[INFO] [stdout] 484 |             let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |                       ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminRandom` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminRandom`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               u16
[INFO] [stdout]             and 4 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:64
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminZeroLike` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:484:42
[INFO] [stdout]     |
[INFO] [stdout] 484 |             let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |                       ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminZeroLike` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminZeroLike`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               num_complex::Complex<f32>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:79
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                               ^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_cognitive_factor` exists for struct `ParticleSwarm<Vec<f64>, _>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:485:18
[INFO] [stdout]     |
[INFO] [stdout] 53  |   pub struct ParticleSwarm<P, F> {
[INFO] [stdout]     |   ------------------------------ method `with_cognitive_factor` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 484 |               let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |  _______________________-
[INFO] [stdout] 485 | |                 .with_cognitive_factor(cognitive);
[INFO] [stdout]     | |                 -^^^^^^^^^^^^^^^^^^^^^ method cannot be called on `ParticleSwarm<Vec<f64>, _>` due to unsatisfied trait bounds
[INFO] [stdout]     | |_________________|
[INFO] [stdout]     | 
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<_, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminRandom`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminMul<_, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminRandom`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:28
[INFO] [stdout]     |
[INFO] [stdout] 66  | impl<P, F> ParticleSwarm<P, F>
[INFO] [stdout]     |            -------------------
[INFO] [stdout] 67  | where
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^   ^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                            |                 |                 |
[INFO] [stdout]     |                            |                 |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                            |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                            unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:494:42
[INFO] [stdout]     |
[INFO] [stdout] 494 |             let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |                       ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:28
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:494:42
[INFO] [stdout]     |
[INFO] [stdout] 494 |             let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |                       ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:46
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminRandom` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:494:42
[INFO] [stdout]     |
[INFO] [stdout] 494 |             let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |                       ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminRandom` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminRandom`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               u16
[INFO] [stdout]             and 4 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:64
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminZeroLike` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:494:42
[INFO] [stdout]     |
[INFO] [stdout] 494 |             let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |                       ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminZeroLike` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminZeroLike`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               num_complex::Complex<f32>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:79
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                               ^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_cognitive_factor` exists for struct `ParticleSwarm<Vec<f64>, _>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:495:18
[INFO] [stdout]     |
[INFO] [stdout] 53  |   pub struct ParticleSwarm<P, F> {
[INFO] [stdout]     |   ------------------------------ method `with_cognitive_factor` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 494 |               let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |  _______________________-
[INFO] [stdout] 495 | |                 .with_cognitive_factor(cognitive);
[INFO] [stdout]     | |                 -^^^^^^^^^^^^^^^^^^^^^ method cannot be called on `ParticleSwarm<Vec<f64>, _>` due to unsatisfied trait bounds
[INFO] [stdout]     | |_________________|
[INFO] [stdout]     | 
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<_, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminRandom`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminMul<_, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminRandom`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:28
[INFO] [stdout]     |
[INFO] [stdout] 66  | impl<P, F> ParticleSwarm<P, F>
[INFO] [stdout]     |            -------------------
[INFO] [stdout] 67  | where
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^   ^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                            |                 |                 |
[INFO] [stdout]     |                            |                 |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                            |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                            unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:513:42
[INFO] [stdout]     |
[INFO] [stdout] 513 |             let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |                       ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:28
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:513:42
[INFO] [stdout]     |
[INFO] [stdout] 513 |             let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |                       ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:46
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminRandom` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:513:42
[INFO] [stdout]     |
[INFO] [stdout] 513 |             let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |                       ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminRandom` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminRandom`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               u16
[INFO] [stdout]             and 4 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:64
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminZeroLike` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:513:42
[INFO] [stdout]     |
[INFO] [stdout] 513 |             let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |                       ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminZeroLike` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminZeroLike`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               num_complex::Complex<f32>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:79
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                               ^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_social_factor` exists for struct `ParticleSwarm<Vec<f64>, _>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:514:18
[INFO] [stdout]     |
[INFO] [stdout] 53  |   pub struct ParticleSwarm<P, F> {
[INFO] [stdout]     |   ------------------------------ method `with_social_factor` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 513 |               let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |  _______________________-
[INFO] [stdout] 514 | |                 .with_social_factor(social);
[INFO] [stdout]     | |                 -^^^^^^^^^^^^^^^^^^ method cannot be called on `ParticleSwarm<Vec<f64>, _>` due to unsatisfied trait bounds
[INFO] [stdout]     | |_________________|
[INFO] [stdout]     | 
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<_, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminRandom`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminMul<_, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminRandom`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:28
[INFO] [stdout]     |
[INFO] [stdout] 66  | impl<P, F> ParticleSwarm<P, F>
[INFO] [stdout]     |            -------------------
[INFO] [stdout] 67  | where
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^   ^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                            |                 |                 |
[INFO] [stdout]     |                            |                 |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                            |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                            unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:523:42
[INFO] [stdout]     |
[INFO] [stdout] 523 |             let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |                       ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:28
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:523:42
[INFO] [stdout]     |
[INFO] [stdout] 523 |             let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |                       ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:46
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminRandom` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:523:42
[INFO] [stdout]     |
[INFO] [stdout] 523 |             let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |                       ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminRandom` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminRandom`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               u16
[INFO] [stdout]             and 4 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:64
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminZeroLike` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:523:42
[INFO] [stdout]     |
[INFO] [stdout] 523 |             let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |                       ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminZeroLike` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminZeroLike`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               num_complex::Complex<f32>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:79
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                               ^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_social_factor` exists for struct `ParticleSwarm<Vec<f64>, _>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:524:18
[INFO] [stdout]     |
[INFO] [stdout] 53  |   pub struct ParticleSwarm<P, F> {
[INFO] [stdout]     |   ------------------------------ method `with_social_factor` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 523 |               let res = ParticleSwarm::new((lower_bound.clone(), upper_bound.clone()), 40)
[INFO] [stdout]     |  _______________________-
[INFO] [stdout] 524 | |                 .with_social_factor(social);
[INFO] [stdout]     | |                 -^^^^^^^^^^^^^^^^^^ method cannot be called on `ParticleSwarm<Vec<f64>, _>` due to unsatisfied trait bounds
[INFO] [stdout]     | |_________________|
[INFO] [stdout]     | 
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<_, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminRandom`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminMul<_, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminRandom`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:28
[INFO] [stdout]     |
[INFO] [stdout] 66  | impl<P, F> ParticleSwarm<P, F>
[INFO] [stdout]     |            -------------------
[INFO] [stdout] 67  | where
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^   ^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                            |                 |                 |
[INFO] [stdout]     |                            |                 |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                            |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                            unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:542:32
[INFO] [stdout]     |
[INFO] [stdout] 542 |             ParticleSwarm::new((lower_bound, upper_bound), num_particles);
[INFO] [stdout]     |             ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:28
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:542:32
[INFO] [stdout]     |
[INFO] [stdout] 542 |             ParticleSwarm::new((lower_bound, upper_bound), num_particles);
[INFO] [stdout]     |             ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:46
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminRandom` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:542:32
[INFO] [stdout]     |
[INFO] [stdout] 542 |             ParticleSwarm::new((lower_bound, upper_bound), num_particles);
[INFO] [stdout]     |             ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminRandom` is not implemented for `Vec<f64>`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminRandom`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               u16
[INFO] [stdout]             and 4 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:64
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminZeroLike` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:542:32
[INFO] [stdout]     |
[INFO] [stdout] 542 |             ParticleSwarm::new((lower_bound, upper_bound), num_particles);
[INFO] [stdout]     |             ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminZeroLike` is not implemented for `Vec<f64>`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminZeroLike`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               num_complex::Complex<f32>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:79
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                               ^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `initialize_positions_and_velocities` exists for struct `ParticleSwarm<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:544:43
[INFO] [stdout]     |
[INFO] [stdout] 53  | pub struct ParticleSwarm<P, F> {
[INFO] [stdout]     | ------------------------------ method `initialize_positions_and_velocities` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 544 |         let (positions, velocities) = pso.initialize_positions_and_velocities();
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method cannot be called on `ParticleSwarm<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminRandom`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminRandom`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:28
[INFO] [stdout]     |
[INFO] [stdout] 66  | impl<P, F> ParticleSwarm<P, F>
[INFO] [stdout]     |            -------------------
[INFO] [stdout] 67  | where
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^   ^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                            |                 |                 |
[INFO] [stdout]     |                            |                 |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                            |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                            unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:569:32
[INFO] [stdout]     |
[INFO] [stdout] 569 |             ParticleSwarm::new((lower_bound, upper_bound), num_particles);
[INFO] [stdout]     |             ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:28
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:569:32
[INFO] [stdout]     |
[INFO] [stdout] 569 |             ParticleSwarm::new((lower_bound, upper_bound), num_particles);
[INFO] [stdout]     |             ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:46
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminRandom` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:569:32
[INFO] [stdout]     |
[INFO] [stdout] 569 |             ParticleSwarm::new((lower_bound, upper_bound), num_particles);
[INFO] [stdout]     |             ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminRandom` is not implemented for `Vec<f64>`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminRandom`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               u16
[INFO] [stdout]             and 4 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:64
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminZeroLike` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:569:32
[INFO] [stdout]     |
[INFO] [stdout] 569 |             ParticleSwarm::new((lower_bound, upper_bound), num_particles);
[INFO] [stdout]     |             ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminZeroLike` is not implemented for `Vec<f64>`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminZeroLike`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               num_complex::Complex<f32>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:79
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                               ^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `initialize_particles` exists for struct `ParticleSwarm<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:597:29
[INFO] [stdout]     |
[INFO] [stdout] 53  | pub struct ParticleSwarm<P, F> {
[INFO] [stdout]     | ------------------------------ method `initialize_particles` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 597 |         let particles = pso.initialize_particles(&mut problem).unwrap();
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^ method cannot be called on `ParticleSwarm<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminRandom`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminRandom`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:28
[INFO] [stdout]     |
[INFO] [stdout] 66  | impl<P, F> ParticleSwarm<P, F>
[INFO] [stdout]     |            -------------------
[INFO] [stdout] 67  | where
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^   ^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     |                            |                 |                 |
[INFO] [stdout]     |                            |                 |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                            |                 unsatisfied trait bound introduced here
[INFO] [stdout]     |                            unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:633:65
[INFO] [stdout]     |
[INFO] [stdout] 633 |         let mut pso: ParticleSwarm<_, f64> = ParticleSwarm::new((lower_bound, upper_bound), 40);
[INFO] [stdout]     |                                              ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:28
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:633:65
[INFO] [stdout]     |
[INFO] [stdout] 633 |         let mut pso: ParticleSwarm<_, f64> = ParticleSwarm::new((lower_bound, upper_bound), 40);
[INFO] [stdout]     |                                              ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:46
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminRandom` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:633:65
[INFO] [stdout]     |
[INFO] [stdout] 633 |         let mut pso: ParticleSwarm<_, f64> = ParticleSwarm::new((lower_bound, upper_bound), 40);
[INFO] [stdout]     |                                              ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminRandom` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminRandom`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               u16
[INFO] [stdout]             and 4 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:64
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminZeroLike` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:633:65
[INFO] [stdout]     |
[INFO] [stdout] 633 |         let mut pso: ParticleSwarm<_, f64> = ParticleSwarm::new((lower_bound, upper_bound), 40);
[INFO] [stdout]     |                                              ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminZeroLike` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminZeroLike`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               num_complex::Complex<f32>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:79
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                               ^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `init` exists for struct `ParticleSwarm<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:636:23
[INFO] [stdout]     |
[INFO] [stdout] 53  | pub struct ParticleSwarm<P, F> {
[INFO] [stdout]     | ------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `init` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, PopulationState<Particle<Vec<f64>, f64>, f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 636 |         let res = pso.init(&mut Problem::new(TestProblem::new()), state);
[INFO] [stdout]     |                       ^^^^ method cannot be called on `ParticleSwarm<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMinMax`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminRandom`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMinMax`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminRandom`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:239:11
[INFO] [stdout]     |
[INFO] [stdout] 233 | impl<O, P, F> Solver<O, PopulationState<Particle<P, F>, F>> for ParticleSwarm<P, F>
[INFO] [stdout]     |               ---------------------------------------------     -------------------
[INFO] [stdout] ...
[INFO] [stdout] 239 |         + ArgminAdd<P, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 240 |         + ArgminSub<P, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 241 |         + ArgminMul<F, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 242 |         + ArgminZeroLike
[INFO] [stdout]     |           ^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 243 |         + ArgminRandom
[INFO] [stdout]     |           ^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 244 |         + ArgminMinMax,
[INFO] [stdout]     |           ^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:653:65
[INFO] [stdout]     |
[INFO] [stdout] 653 |         let mut pso: ParticleSwarm<_, f64> = ParticleSwarm::new((lower_bound, upper_bound), 2);
[INFO] [stdout]     |                                              ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:28
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:653:65
[INFO] [stdout]     |
[INFO] [stdout] 653 |         let mut pso: ParticleSwarm<_, f64> = ParticleSwarm::new((lower_bound, upper_bound), 2);
[INFO] [stdout]     |                                              ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:46
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminRandom` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:653:65
[INFO] [stdout]     |
[INFO] [stdout] 653 |         let mut pso: ParticleSwarm<_, f64> = ParticleSwarm::new((lower_bound, upper_bound), 2);
[INFO] [stdout]     |                                              ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminRandom` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminRandom`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               u16
[INFO] [stdout]             and 4 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:64
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminZeroLike` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:653:65
[INFO] [stdout]     |
[INFO] [stdout] 653 |         let mut pso: ParticleSwarm<_, f64> = ParticleSwarm::new((lower_bound, upper_bound), 2);
[INFO] [stdout]     |                                              ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminZeroLike` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminZeroLike`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               num_complex::Complex<f32>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:79
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                               ^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `init` exists for struct `ParticleSwarm<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:656:23
[INFO] [stdout]     |
[INFO] [stdout] 53  | pub struct ParticleSwarm<P, F> {
[INFO] [stdout]     | ------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `init` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, PopulationState<Particle<Vec<f64>, f64>, f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 656 |         let res = pso.init(&mut Problem::new(TestProblem::new()), state);
[INFO] [stdout]     |                       ^^^^ method cannot be called on `ParticleSwarm<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMinMax`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminRandom`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMinMax`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminRandom`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:239:11
[INFO] [stdout]     |
[INFO] [stdout] 233 | impl<O, P, F> Solver<O, PopulationState<Particle<P, F>, F>> for ParticleSwarm<P, F>
[INFO] [stdout]     |               ---------------------------------------------     -------------------
[INFO] [stdout] ...
[INFO] [stdout] 239 |         + ArgminAdd<P, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 240 |         + ArgminSub<P, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 241 |         + ArgminMul<F, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 242 |         + ArgminZeroLike
[INFO] [stdout]     |           ^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 243 |         + ArgminRandom
[INFO] [stdout]     |           ^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 244 |         + ArgminMinMax,
[INFO] [stdout]     |           ^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:671:65
[INFO] [stdout]     |
[INFO] [stdout] 671 |         let mut pso: ParticleSwarm<_, f64> = ParticleSwarm::new((lower_bound, upper_bound), 40);
[INFO] [stdout]     |                                              ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:28
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:671:65
[INFO] [stdout]     |
[INFO] [stdout] 671 |         let mut pso: ParticleSwarm<_, f64> = ParticleSwarm::new((lower_bound, upper_bound), 40);
[INFO] [stdout]     |                                              ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:46
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminRandom` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:671:65
[INFO] [stdout]     |
[INFO] [stdout] 671 |         let mut pso: ParticleSwarm<_, f64> = ParticleSwarm::new((lower_bound, upper_bound), 40);
[INFO] [stdout]     |                                              ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminRandom` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminRandom`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               u16
[INFO] [stdout]             and 4 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:64
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminZeroLike` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:671:65
[INFO] [stdout]     |
[INFO] [stdout] 671 |         let mut pso: ParticleSwarm<_, f64> = ParticleSwarm::new((lower_bound, upper_bound), 40);
[INFO] [stdout]     |                                              ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminZeroLike` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminZeroLike`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               num_complex::Complex<f32>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:79
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                               ^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `init` exists for struct `ParticleSwarm<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:673:23
[INFO] [stdout]     |
[INFO] [stdout] 53  | pub struct ParticleSwarm<P, F> {
[INFO] [stdout]     | ------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `init` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, PopulationState<Particle<Vec<f64>, f64>, f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 673 |         let res = pso.init(&mut Problem::new(TestProblem::new()), state);
[INFO] [stdout]     |                       ^^^^ method cannot be called on `ParticleSwarm<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMinMax`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminRandom`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMinMax`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminRandom`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:239:11
[INFO] [stdout]     |
[INFO] [stdout] 233 | impl<O, P, F> Solver<O, PopulationState<Particle<P, F>, F>> for ParticleSwarm<P, F>
[INFO] [stdout]     |               ---------------------------------------------     -------------------
[INFO] [stdout] ...
[INFO] [stdout] 239 |         + ArgminAdd<P, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 240 |         + ArgminSub<P, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 241 |         + ArgminMul<F, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 242 |         + ArgminZeroLike
[INFO] [stdout]     |           ^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 243 |         + ArgminRandom
[INFO] [stdout]     |           ^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 244 |         + ArgminMinMax,
[INFO] [stdout]     |           ^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:710:65
[INFO] [stdout]     |
[INFO] [stdout] 710 |         let mut pso: ParticleSwarm<_, f64> = ParticleSwarm::new((lower_bound, upper_bound), 100);
[INFO] [stdout]     |                                              ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminSub<Vec<f64>, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminSub<T, U>`:
[INFO] [stdout]               <f32 as ArgminSub<f32, f32>>
[INFO] [stdout]               <f64 as ArgminSub<f64, f64>>
[INFO] [stdout]               <i16 as ArgminSub<i16, i16>>
[INFO] [stdout]               <i32 as ArgminSub<i32, i32>>
[INFO] [stdout]               <i64 as ArgminSub<i64, i64>>
[INFO] [stdout]               <i8 as ArgminSub<i8, i8>>
[INFO] [stdout]               <isize as ArgminSub<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminSub<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:28
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminMul<_, Vec<f64>>` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:710:65
[INFO] [stdout]     |
[INFO] [stdout] 710 |         let mut pso: ParticleSwarm<_, f64> = ParticleSwarm::new((lower_bound, upper_bound), 100);
[INFO] [stdout]     |                                              ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminMul<_, Vec<f64>>` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminMul<T, U>`:
[INFO] [stdout]               <f32 as ArgminMul<f32, f32>>
[INFO] [stdout]               <f64 as ArgminMul<f64, f64>>
[INFO] [stdout]               <i16 as ArgminMul<i16, i16>>
[INFO] [stdout]               <i32 as ArgminMul<i32, i32>>
[INFO] [stdout]               <i64 as ArgminMul<i64, i64>>
[INFO] [stdout]               <i8 as ArgminMul<i8, i8>>
[INFO] [stdout]               <isize as ArgminMul<isize, isize>>
[INFO] [stdout]               <num_complex::Complex<f32> as ArgminMul<num_complex::Complex<f32>, num_complex::Complex<f32>>>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:46
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminRandom` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:710:65
[INFO] [stdout]     |
[INFO] [stdout] 710 |         let mut pso: ParticleSwarm<_, f64> = ParticleSwarm::new((lower_bound, upper_bound), 100);
[INFO] [stdout]     |                                              ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminRandom` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminRandom`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               u16
[INFO] [stdout]             and 4 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:64
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Vec<f64>: ArgminZeroLike` is not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:710:65
[INFO] [stdout]     |
[INFO] [stdout] 710 |         let mut pso: ParticleSwarm<_, f64> = ParticleSwarm::new((lower_bound, upper_bound), 100);
[INFO] [stdout]     |                                              ------------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ArgminZeroLike` is not implemented for `Vec<f64>`
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `ArgminZeroLike`:
[INFO] [stdout]               f32
[INFO] [stdout]               f64
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i8
[INFO] [stdout]               isize
[INFO] [stdout]               num_complex::Complex<f32>
[INFO] [stdout]             and 16 others
[INFO] [stdout] note: required by a bound in `particleswarm::ParticleSwarm::<P, F>::new`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:68:79
[INFO] [stdout]     |
[INFO] [stdout] 68  |     P: Clone + SyncAlias + ArgminSub<P, P> + ArgminMul<F, P> + ArgminRandom + ArgminZeroLike,
[INFO] [stdout]     |                                                                               ^^^^^^^^^^^^^^ required by this bound in `ParticleSwarm::<P, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 96  |     pub fn new(bounds: (P, P), num_particles: usize) -> Self {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `init` exists for struct `ParticleSwarm<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:714:34
[INFO] [stdout]     |
[INFO] [stdout] 53  | pub struct ParticleSwarm<P, F> {
[INFO] [stdout]     | ------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `init` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, PopulationState<Particle<Vec<f64>, f64>, f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 714 |         let (mut state, _) = pso.init(&mut problem, state).unwrap();
[INFO] [stdout]     |                                  ^^^^ method cannot be called on `ParticleSwarm<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMinMax`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminRandom`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMinMax`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminRandom`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:239:11
[INFO] [stdout]     |
[INFO] [stdout] 233 | impl<O, P, F> Solver<O, PopulationState<Particle<P, F>, F>> for ParticleSwarm<P, F>
[INFO] [stdout]     |               ---------------------------------------------     -------------------
[INFO] [stdout] ...
[INFO] [stdout] 239 |         + ArgminAdd<P, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 240 |         + ArgminSub<P, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 241 |         + ArgminMul<F, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 242 |         + ArgminZeroLike
[INFO] [stdout]     |           ^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 243 |         + ArgminRandom
[INFO] [stdout]     |           ^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 244 |         + ArgminMinMax,
[INFO] [stdout]     |           ^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `next_iter` exists for struct `ParticleSwarm<Vec<f64>, f64>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:718:30
[INFO] [stdout]     |
[INFO] [stdout] 53  | pub struct ParticleSwarm<P, F> {
[INFO] [stdout]     | ------------------------------
[INFO] [stdout]     | |
[INFO] [stdout]     | method `next_iter` not found for this struct
[INFO] [stdout]     | doesn't satisfy `_: Solver<_, PopulationState<Particle<Vec<f64>, f64>, f64>>`
[INFO] [stdout] ...
[INFO] [stdout] 718 |             (state, _) = pso.next_iter(&mut problem, state).unwrap();
[INFO] [stdout]     |                              ^^^^^^^^^ method cannot be called on `ParticleSwarm<Vec<f64>, f64>` due to unsatisfied trait bounds
[INFO] [stdout]    --> /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/alloc/src/vec/mod.rs:400:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMinMax`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminRandom`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: doesn't satisfy `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]     |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Vec<f64>: ArgminAdd<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminMinMax`
[INFO] [stdout]       `Vec<f64>: ArgminMul<f64, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminRandom`
[INFO] [stdout]       `Vec<f64>: ArgminSub<Vec<f64>, Vec<f64>>`
[INFO] [stdout]       `Vec<f64>: ArgminZeroLike`
[INFO] [stdout]    --> src/solver/particleswarm/mod.rs:239:11
[INFO] [stdout]     |
[INFO] [stdout] 233 | impl<O, P, F> Solver<O, PopulationState<Particle<P, F>, F>> for ParticleSwarm<P, F>
[INFO] [stdout]     |               ---------------------------------------------     -------------------
[INFO] [stdout] ...
[INFO] [stdout] 239 |         + ArgminAdd<P, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 240 |         + ArgminSub<P, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 241 |         + ArgminMul<F, P>
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 242 |         + ArgminZeroLike
[INFO] [stdout]     |           ^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 243 |         + ArgminRandom
[INFO] [stdout]     |           ^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 244 |         + ArgminMinMax,
[WARN] too many lines in the log, truncating it
