| Copyright | (c) Masahiro Sakai 2019 |
|---|---|
| License | BSD-style |
| Maintainer | masahiro.sakai@gmail.com |
| Stability | provisional |
| Portability | non-portable |
| Safe Haskell | Safe-Inferred |
| Language | Haskell2010 |
| Extensions |
|
ToySolver.SAT.Encoder.Cardinality
Contents
Description
Synopsis
- data Encoder m
- data Strategy
- newEncoder :: PrimMonad m => Encoder m -> m (Encoder m)
- newEncoderWithStrategy :: PrimMonad m => Encoder m -> Strategy -> m (Encoder m)
- encodeAtLeast :: PrimMonad m => Encoder m -> AtLeast -> m Lit
- encodeAtLeastWithPolarity :: PrimMonad m => Encoder m -> Polarity -> AtLeast -> m Lit
- getTseitinEncoder :: Encoder m -> Encoder m
- type TotalizerDefinitions = Definitions
- getTotalizerDefinitions :: PrimMonad m => Encoder m -> m TotalizerDefinitions
- evalTotalizerDefinitions :: IModel m => m -> TotalizerDefinitions -> [(Var, Bool)]
- data Polarity = Polarity {}
- negatePolarity :: Polarity -> Polarity
- polarityPos :: Polarity
- polarityNeg :: Polarity
- polarityBoth :: Polarity
- polarityNone :: Polarity
Documentation
Constructors
| Naive | |
| SequentialCounter | |
| ParallelCounter | |
| Totalizer |
Instances
| Bounded Strategy Source # | |
| Enum Strategy Source # | |
Defined in ToySolver.SAT.Encoder.Cardinality | |
| Show Strategy Source # | |
| Eq Strategy Source # | |
| Ord Strategy Source # | |
Defined in ToySolver.SAT.Encoder.Cardinality | |
getTseitinEncoder :: Encoder m -> Encoder m Source #
type TotalizerDefinitions = Definitions Source #
getTotalizerDefinitions :: PrimMonad m => Encoder m -> m TotalizerDefinitions Source #
evalTotalizerDefinitions :: IModel m => m -> TotalizerDefinitions -> [(Var, Bool)] Source #
Polarity
negatePolarity :: Polarity -> Polarity Source #