monadiccp-0.5.2: Constraint Programming

Control.CP.FD.FD

Documentation

(#<) :: (To_FD_Term a, To_FD_Term b) => a -> b -> FD BoolSource

newtype FD a Source

Constructors

FD 

Fields

unFD :: StateT FDState Maybe a
 

newtype FDVar Source

Constructors

FDVar 

Fields

unFDVar :: Int
 

data VarInfo Source

Constructors

VarInfo 

Instances

runFD :: FD a -> aSource

newVars :: ToDomain a => Int -> a -> FD [FDVar]Source

newtype Expr Source

Constructors

Expr 

Fields

unExpr :: FD FDVar
 

class ToExpr a whereSource

Methods

toExpr :: a -> ExprSource

addArithmeticConstraint :: (ToExpr a, ToExpr b) => (Domain -> Domain -> Domain) -> (Domain -> Domain -> Domain) -> (Domain -> Domain -> Domain) -> a -> b -> ExprSource

(.+.) :: (ToExpr a, ToExpr b) => a -> b -> ExprSource

(.-.) :: (ToExpr a, ToExpr b) => a -> b -> ExprSource

(.*.) :: (ToExpr a, ToExpr b) => a -> b -> ExprSource

(.==.) :: (ToExpr a, ToExpr b) => a -> b -> FD BoolSource

(./=.) :: (ToExpr a, ToExpr b) => a -> b -> FD BoolSource