| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Algebra.Monad.Logic
Documentation
Instances
| MonadTrans LogicT Source # | |
| Monad m => MonadLogic m (LogicT m) Source # | |
| Monad m => MonadError Void (LogicT m) Source # | |
| MonadWriter w m => MonadWriter w (LogicT m) Source # | |
| MonadReader r m => MonadReader r (LogicT m) Source # | |
| MonadState s m => MonadState s (LogicT m) Source # | |
| Unit (LogicT m) Source # | |
| MonadFix m => MonadFix (LogicT m) Source # | |
| (Monad m, Traversable m) => Traversable (LogicT m) Source # | |
| (Monad m, Foldable m) => Foldable (LogicT m) Source # | |
| Monad (LogicT m) Source # | |
| Applicative (LogicT m) Source # | |
| SemiApplicative (LogicT m) Source # | |
| Functor (LogicT m) Source # | |
| Monoid a => Ring (LogicT m a) Source # | |
| Semigroup a => Semiring (LogicT m a) Source # | |
| Monoid (LogicT m a) Source # | |
| Semigroup (LogicT m a) Source # | |
listLogic :: (MonadLogic m l, MonadLogic n l') => Iso (l a) (l' b) (m [a]) (n [b]) Source #
deduction :: (MonadLogic m l, MonadLogic m' l') => Iso (m (Maybe (a, l a))) (m' (Maybe (b, l' b))) (l a) (l' b) Source #
deduceMany :: MonadLogic m l => Int -> l a -> m [a] Source #
deduceAll :: MonadLogic m l => l a -> m [a] Source #
logicChoose :: MonadLogic m l => [a] -> l a Source #
cut :: MonadLogic m l => l a -> l a Source #