spectacle-1.0.0: src/Language/Spectacle.hs
module Language.Spectacle
( -- * CLI Interaction
interaction,
-- * Model Checking
modelcheck,
modeltrace,
-- * Specification
Specification (Specification),
specInit,
specNext,
specProp,
ActionType (ActionSF, ActionWF, ActionUF),
TemporalType (PropF, PropG, PropGF, PropFG),
Fairness (StrongFair, WeakFair, Unfair),
Modality (Always, Eventually, Infinitely, Stays),
-- * Syntax
type Action,
type Temporal,
-- ** Variables
plain,
prime,
type (#),
-- ** Operators
(.=),
enabled,
throwE,
catchE,
-- ** Logic
forall,
exists,
oneOf,
conjunct,
(/\),
disjunct,
(\/),
complement,
(==>),
implies,
(<=>),
iff,
-- * Records
pattern ConF,
pattern NilF,
)
where
import Data.Type.Rec (RecF (ConF, NilF), type (#))
import Language.Spectacle.AST (Action, Temporal)
import Language.Spectacle.Fairness (Fairness (StrongFair, Unfair, WeakFair))
import Language.Spectacle.Interaction (interaction)
import Language.Spectacle.Model (modelcheck, modeltrace)
import Language.Spectacle.Specification
( ActionType (ActionSF, ActionUF, ActionWF),
Modality (Always, Eventually, Infinitely, Stays),
Specification (Specification),
TemporalType (PropF, PropFG, PropG, PropGF),
specInit,
specNext,
specProp,
)
import Language.Spectacle.Syntax
( catchE,
complement,
conjunct,
disjunct,
enabled,
exists,
forall,
iff,
implies,
oneOf,
plain,
prime,
throwE,
(.=),
(/\),
(<=>),
(==>),
(\/),
)
-- ---------------------------------------------------------------------------------------------------------------------