--- a/src/convex.rs Mon May 12 16:28:50 2025 -0500 +++ b/src/convex.rs Mon May 12 17:10:39 2025 -0500 @@ -359,7 +359,7 @@ } } -impl<X: Euclidean<F>, F: Float> Mapping<X> for Norm222<F> { +impl<X: Euclidean<Field = F>, F: Float> Mapping<X> for Norm222<F> { type Codomain = F; /// Compute the value of `self` at `x`. @@ -368,13 +368,13 @@ } } -impl<X: Euclidean<F>, F: Float> ConvexMapping<X, F> for Norm222<F> { +impl<X: Euclidean<Field = F>, F: Float> ConvexMapping<X, F> for Norm222<F> { fn factor_of_strong_convexity(&self) -> F { F::ONE } } -impl<X: Euclidean<F>, F: Float> Conjugable<X, F> for Norm222<F> { +impl<X: Euclidean<Field = F>, F: Float> Conjugable<X, F> for Norm222<F> { type Conjugate<'a> = Self where @@ -386,7 +386,7 @@ } } -impl<X: Euclidean<F>, F: Float> Preconjugable<X, X, F> for Norm222<F> { +impl<X: Euclidean<Field = F>, F: Float> Preconjugable<X, X, F> for Norm222<F> { type Preconjugate<'a> = Self where @@ -401,7 +401,7 @@ impl<X, F> Prox<X> for Norm222<F> where F: Float, - X: Euclidean<F, Output = X>, + X: Euclidean<Field = F, Output = X>, { type Prox<'a> = Scaled<F> @@ -416,7 +416,7 @@ impl<X, F> DifferentiableImpl<X> for Norm222<F> where F: Float, - X: Euclidean<F, Output = X>, + X: Euclidean<Field = F, Output = X>, { type Derivative = X; @@ -428,7 +428,7 @@ impl<X, F> LipschitzDifferentiableImpl<X, L2> for Norm222<F> where F: Float, - X: Euclidean<F, Output = X>, + X: Euclidean<Field = F, Output = X>, { type FloatType = F;