Copyright | (c) 2021-2024 Dakotah Lambert |
---|---|
License | MIT |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
This module implements an algorithm to decide whether a given FSA is Generalized Definite (GD) based on the semigroup characterization, or if it is Tier-Based Generalized Definite (TGD).
Since: 1.0
Documentation
isGD :: (Ord n, Ord e) => FSA n e -> Bool #
True iff the automaton recognizes a generalized definite stringset.
isGDM :: (Ord n, Ord e) => SynMon n e -> Bool #
True iff the monoid satisfies \(eSe=e\) for all idempotents \(e\), except the identity if it is not instantiated.
isGDs :: FiniteSemigroupRep s => s -> Bool #
True iff the semigroup satisfies \(eSe=e\) for all idempotents \(e\).
Since: 1.2
isTGD :: (Ord n, Ord e) => FSA n e -> Bool #
True iff the language is generalized definite for some tier.
isTGDs :: FiniteSemigroupRep s => s -> Bool #
True iff the projected subsemigroup satisfies eSe=e
Since: 1.2