> {-# OPTIONS_HADDOCK show-extensions #-} > {-| > Module : LTK.DecideM > Copyright : (c) 2021 Dakotah Lambert > License : MIT > > Functions used for deciding the complexity class of a monoid. > Each complexity class for which these operations are implemented > has a separate Decide.classM module as well. Many of the functions > in @LTK.Decide@ use these functions internally, so using these > directly prevents rederiving the monoid when many tests are desired. > > One may note that @LTK.Decide@ contains strictly more tests. > The classes not closed under complementation are not classified > by their syntactic monoids or semigroups, but by properties of > the automaton from which it was derived. > > @since 1.0 > -} > module LTK.DecideM ( > -- * Piecewise classes > isPTM > -- * Local classes > , isDefM, isRDefM, isGDM > , isLTM, isLTTM > -- * Both Local and Piecewise > , isCBM, isGLTM, isLPTM, isGLPTM, isSFM > -- * Tier-based generalizations > , isTDefM, isTRDefM, isTGDM > , isTLTM, isTLTTM, isTLPTM > -- * Others between CB and G > , isBM, isLBM, isTLBM > -- * Two-Variable Logics > , isFO2M, isFO2BM, isFO2SM > ) where > import LTK.Decide.LT > import LTK.Decide.LPT > import LTK.Decide.LTT > import LTK.Decide.TLT > import LTK.Decide.TLTT > import LTK.Decide.TLPT > import LTK.Decide.PT > import LTK.Decide.SF > import LTK.Decide.FO2 > import LTK.Decide.GLT > import LTK.Decide.GLPT > import LTK.Decide.GD > import LTK.Decide.CB > import LTK.Decide.B > import LTK.Decide.Definite