toysolver-0.4.0: Assorted decision procedures for SAT, Max-SAT, PB, MIP, etc

Copyright(c) Masahiro Sakai 2012
LicenseBSD-style
Maintainermasahiro.sakai@gmail.com
Stabilityprovisional
Portabilitynon-portable (TypeSynonymInstances, FlexibleInstances, TypeFamilies, CPP)
Safe HaskellNone
LanguageHaskell2010

ToySolver.Arith.Simplex2

Contents

Description

Naïve implementation of Simplex method

Reference:

Synopsis

The Solver type

Problem specification

type Var = Int Source #

data RelOp Source #

relational operators

Constructors

Lt 
Le 
Ge 
Gt 
Eql 
NEq 

Instances

Eq RelOp Source # 

Methods

(==) :: RelOp -> RelOp -> Bool #

(/=) :: RelOp -> RelOp -> Bool #

Ord RelOp Source # 

Methods

compare :: RelOp -> RelOp -> Ordering #

(<) :: RelOp -> RelOp -> Bool #

(<=) :: RelOp -> RelOp -> Bool #

(>) :: RelOp -> RelOp -> Bool #

(>=) :: RelOp -> RelOp -> Bool #

max :: RelOp -> RelOp -> RelOp #

min :: RelOp -> RelOp -> RelOp #

Show RelOp Source # 

Methods

showsPrec :: Int -> RelOp -> ShowS #

show :: RelOp -> String #

showList :: [RelOp] -> ShowS #

(.<.), (.<=.), (.>.), (.>=.) :: IsOrdRel e r => e -> e -> r Source #

(.<.), (.<=.), (.>.), (.>=.) :: IsOrdRel e r => e -> e -> r Source #

(.==.) :: IsEqRel e r => e -> e -> r Source #

(.<.), (.<=.), (.>.), (.>=.) :: IsOrdRel e r => e -> e -> r Source #

(.<.), (.<=.), (.>.), (.>=.) :: IsOrdRel e r => e -> e -> r Source #

type Atom r = OrdRel (Expr r) Source #

Atomic Formula of Linear Arithmetics

data OptDir :: * #

The OptDir type represents optimization directions.

Constructors

OptMin

minimization

OptMax

maximization

Instances

Bounded OptDir 
Enum OptDir 
Eq OptDir 

Methods

(==) :: OptDir -> OptDir -> Bool #

(/=) :: OptDir -> OptDir -> Bool #

Data OptDir 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> OptDir -> c OptDir #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c OptDir #

toConstr :: OptDir -> Constr #

dataTypeOf :: OptDir -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c OptDir) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c OptDir) #

gmapT :: (forall b. Data b => b -> b) -> OptDir -> OptDir #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> OptDir -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> OptDir -> r #

gmapQ :: (forall d. Data d => d -> u) -> OptDir -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> OptDir -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> OptDir -> m OptDir #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> OptDir -> m OptDir #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> OptDir -> m OptDir #

Ord OptDir 
Read OptDir 
Show OptDir 
Ix OptDir 
Hashable OptDir 

Methods

hashWithSalt :: Int -> OptDir -> Int #

hash :: OptDir -> Int #

Solving

data Options Source #

Options for solving.

The default option can be obtained by def.

Constructors

Options 

Extract results

type RawModel v = IntMap v Source #

Reading status

Configulation

setLogger :: GenericSolver v -> (String -> IO ()) -> IO () Source #

set callback function for receiving messages.

Debug

Misc