pub trait HasBounds {
// Required methods
fn lower_bound(&self) -> &DVector<Floating>;
fn upper_bound(&self) -> &DVector<Floating>;
fn set_lower_bound(&mut self, lower_bound: DVector<Floating>);
fn set_upper_bound(&mut self, upper_bound: DVector<Floating>);
}