satchmo-2.9.9.4: SAT encoding monad
Safe HaskellSafe-Inferred
LanguageHaskell2010

Satchmo.Relation.Prop

Synopsis

Documentation

implies :: (Ix a, Ix b, MonadSAT m) => Relation a b -> Relation a b -> m Boolean Source #

symmetric :: (Ix a, MonadSAT m) => Relation a a -> m Boolean Source #

transitive :: (Ix a, MonadSAT m) => Relation a a -> m Boolean Source #

reflexive :: (Ix a, MonadSAT m) => Relation a a -> m Boolean Source #

regular :: (Ix a, Ix b, MonadSAT m) => Int -> Relation a b -> m Boolean Source #

regular_in_degree :: (Ix a, Ix b, MonadSAT m) => Int -> Relation a b -> m Boolean Source #

max_in_degree :: (Ix a, Ix b, MonadSAT m) => Int -> Relation a b -> m Boolean Source #

min_in_degree :: (Ix a, Ix b, MonadSAT m) => Int -> Relation a b -> m Boolean Source #

max_out_degree :: (Ix a, Ix b, MonadSAT m) => Int -> Relation a b -> m Boolean Source #

min_out_degree :: (Ix a, Ix b, MonadSAT m) => Int -> Relation a b -> m Boolean Source #

empty :: (Ix a, Ix b, MonadSAT m) => Relation a b -> m Boolean Source #

complete :: (Ix a, Ix b, MonadSAT m) => Relation a b -> m Boolean Source #

disjoint :: forall {m} {a} {b}. (Ix a, Ix b, MonadSAT m) => Relation a b -> Relation a b -> m Boolean Source #

equals :: forall {m} {a} {b}. (Ix a, Ix b, MonadSAT m) => Relation a b -> Relation a b -> m Boolean Source #

is_function :: (Ix a, Ix b, MonadSAT m) => Relation a b -> m Boolean Source #

relation R is a function iff for each x, there is exactly one y such that R(x,y)

is_partial_function :: (Ix a, Ix b, MonadSAT m) => Relation a b -> m Boolean Source #

relation R is a partial function iff for each x, there is at most one y such that R(x,y)

is_bijection :: (Ix a, Ix b, MonadSAT m) => Relation a b -> m Boolean Source #