Column-oriented problem ready for a solver. Variables 0..n-1, constraints 0..m-1. Constraint matrix is CSC: column j occupies row_index/values at col_start[j] .. col_start[j+1]-1. Each constraint is a range: row_lb <= a^T x <= row_ub. Bounds use :infinity/:neg_infinity; the binding substitutes the solver's value.
Summary
Functions
The solver capabilities this input requires beyond plain MILP. Backends
compare against their capabilities/0 and reject what they cannot solve
natively; nothing is ever reformulated.
Types
@type t() :: %Optex.SolverInput{ abs_defs: term(), col_lb: term(), col_start: term(), col_type: term(), col_ub: term(), cones: term(), indicators: term(), minmax_defs: term(), num_cons: term(), num_vars: term(), obj: term(), obj_offset: term(), pwl_defs: term(), q_cols: term(), q_rows: term(), q_vals: term(), qconstraints: term(), row_index: term(), row_lb: term(), row_ub: term(), sense: term(), soss: term(), values: term() }