module CSPM.FiringRules.FieldConstraints
(
computeTransitions
,eventTransitions
,tauTransitions
,tickTransitions
)
where
import CSPM.CoreLanguage
import CSPM.FiringRules.Rules
import qualified CSPM.FiringRules.FieldConstraintsSearch as FC
import CSPM.FiringRules.Search (runSearch)
computeTransitions :: forall i. BF i
=> Sigma i -> Process i -> [Rule i]
computeTransitions events p
= runSearch $ FC.computeTransitions events p
eventTransitions :: forall i. BF i
=> Sigma i -> Process i -> [RuleEvent i]
eventTransitions sigma p = runSearch $ FC.eventTransitions sigma p
tauTransitions :: forall i. BF i => Process i -> [RuleTau i]
tauTransitions = runSearch . FC.tauTransitions
tickTransitions :: BF i => Process i -> [RuleTick i]
tickTransitions = runSearch . FC.tickTransitions