-- | Front-end representation of programs. -- See 'Numeric.Limp.Program.Program.Program' for the entire program; -- 'Numeric.Limp.Program.Constraint.Constraint' for constraints such as less than or equal, greater than, etc; -- and 'Numeric.Limp.Program.Linear.Linear' for linear functions. module Numeric.Limp.Program ( -- | Each variable can have a lower or upper bound. module Numeric.Limp.Program.Bounds -- | Constraints such as less than or equal, greater than or equal, between,... , module Numeric.Limp.Program.Constraint -- | Functions for evaluating linear functions constraints for a given assignment of variables. , module Numeric.Limp.Program.Eval -- | Linear functions with constant coefficients on variables, and a constant addition. , module Numeric.Limp.Program.Linear -- | An entire program. , module Numeric.Limp.Program.Program -- | Linear functions are classified as either int-valued or real-valued, -- so we define @KZ@ and @KR@ as data kinds to denote this in the type. , module Numeric.Limp.Program.ResultKind ) where import Numeric.Limp.Program.Bounds import Numeric.Limp.Program.Constraint import Numeric.Limp.Program.Eval import Numeric.Limp.Program.Linear import Numeric.Limp.Program.Program import Numeric.Limp.Program.ResultKind