tpdb-2.7.3: Data Type for Rewriting Systems
Safe HaskellSafe-Inferred
LanguageHaskell2010

TPDB.DP.Usable

Synopsis

Documentation

restrict :: (Eq c, Ord v, TermC v c) => RS c (Term v c) -> RS c (Term v c) Source #

restrict one SCC to its usable rules. DANGER: this ignores the CE condition

usable :: (Eq c, Ord v, TermC v c) => TRS v c -> [Rule (Term v c)] Source #

computes the least closed set of usable rules, cf. Def 4.5 http://cl-informatik.uibk.ac.at/users/griff/publications/Sternagel-Thiemann-RTA10.pdf

fixpoint :: Eq t => (t -> t) -> t -> t Source #

required :: (Eq c, Ord v, TermC v c) => IntMap (Rule (Term v c)) -> [Int] -> IntSet Source #

indices of rules that can be used to rewrite rhs of rules with indices is

needed :: (Eq c, Ord v, TermC v c) => IntMap (Rule (Term v c)) -> Term v c -> [Int] Source #

indices of rules that can be used to rewrite the given term t (including subterms)