clingo-0.2.0.0: Haskell bindings to the Clingo ASP solver

Safe HaskellNone
LanguageHaskell2010

Clingo.Internal.Propagation

Contents

Synopsis

Documentation

data Literal s Source #

Instances

Eq (Literal s) Source # 

Methods

(==) :: Literal s -> Literal s -> Bool #

(/=) :: Literal s -> Literal s -> Bool #

Ord (Literal s) Source # 

Methods

compare :: Literal s -> Literal s -> Ordering #

(<) :: Literal s -> Literal s -> Bool #

(<=) :: Literal s -> Literal s -> Bool #

(>) :: Literal s -> Literal s -> Bool #

(>=) :: Literal s -> Literal s -> Bool #

max :: Literal s -> Literal s -> Literal s #

min :: Literal s -> Literal s -> Literal s #

Show (Literal s) Source # 

Methods

showsPrec :: Int -> Literal s -> ShowS #

show :: Literal s -> String #

showList :: [Literal s] -> ShowS #

Generic (Literal s) Source # 

Associated Types

type Rep (Literal s) :: * -> * #

Methods

from :: Literal s -> Rep (Literal s) x #

to :: Rep (Literal s) x -> Literal s #

NFData (Literal s) Source # 

Methods

rnf :: Literal s -> () #

Hashable (Literal s) Source # 

Methods

hashWithSalt :: Int -> Literal s -> Int #

hash :: Literal s -> Int #

Signed (Literal s) Source # 
type Rep (Literal s) Source # 
type Rep (Literal s) = D1 (MetaData "Literal" "Clingo.Internal.Types" "clingo-0.2.0.0-DzJnCg9nABaE1yAGw8EIsO" True) (C1 (MetaCons "Literal" PrefixI True) (S1 (MetaSel (Just Symbol "rawLiteral") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Literal)))

Propagation Handles and Types

data PropagationStop Source #

Constructors

Continue 
Stop 

Instances

Bounded PropagationStop Source # 
Enum PropagationStop Source # 
Eq PropagationStop Source # 
Ord PropagationStop Source # 
Read PropagationStop Source # 
Show PropagationStop Source # 

Truth values

Assignment

decisionLevel :: MonadIO m => Assignment s -> m Natural Source #

Get the current decision level.

hasConflict :: MonadIO m => Assignment s -> m Bool Source #

Determine whether assignment has a conflict.

hasLiteral :: MonadIO m => Assignment s -> Literal s -> m Bool Source #

Determine whether a literal is part of an assignment.

levelOf :: (MonadIO m, MonadThrow m) => Assignment s -> Literal s -> m Natural Source #

Find the decision level of a given literal in an assignment.

decision :: (MonadIO m, MonadThrow m) => Assignment s -> Natural -> m (Literal s) Source #

Determine the decision literal given a decision level.

isFixed :: (MonadIO m, MonadThrow m) => Assignment s -> Literal s -> m Bool Source #

Check if a literal has a fixed truth value.

truthValue :: (MonadIO m, MonadThrow m) => Assignment s -> Literal s -> m TruthValue Source #

Obtain the truth value of a literal

Clauses

data Clause s Source #

Constructors

Clause [Literal s] ClauseType 

Instances

Show (Clause s) Source # 

Methods

showsPrec :: Int -> Clause s -> ShowS #

show :: Clause s -> String #

showList :: [Clause s] -> ShowS #

Propagation

Initialization