Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Modelling.PetriNet.Concurrency
Synopsis
- checkFindConcurrencyConfig :: FindConcurrencyConfig -> Maybe String
- checkPickConcurrencyConfig :: PickConcurrencyConfig -> Maybe String
- defaultFindConcurrencyInstance :: FindInstance SimplePetriNet (Concurrent Transition)
- defaultPickConcurrencyInstance :: PickInstance SimplePetriNet
- findConcurrency :: (MonadAlloy m, MonadThrow m, Net p n, RandomGen g) => FindConcurrencyConfig -> Int -> RandT g m (p n String, Concurrent String)
- findConcurrencyEvaluation :: (Monad m, OutputCapable m) => FindInstance net (Concurrent Transition) -> (Transition, Transition) -> Rated m
- findConcurrencyGenerate :: (MonadAlloy m, MonadCatch m, MonadDiagrams m, MonadGraphviz m, Net p n) => FindConcurrencyConfig -> Int -> Int -> m (FindInstance (p n String) (Concurrent Transition))
- findConcurrencySolution :: FindInstance net (Concurrent a) -> (a, a)
- findConcurrencySyntax :: OutputCapable m => FindInstance net (Concurrent Transition) -> (Transition, Transition) -> LangM' m ()
- findConcurrencyTask :: (Data (n String), Data (p n String), MonadCache m, MonadDiagrams m, MonadGraphviz m, MonadThrow m, Net p n, OutputCapable m, Typeable n, Typeable p) => FilePath -> FindInstance (p n String) (Concurrent Transition) -> LangM m
- parseConcurrency :: MonadThrow m => AlloyInstance -> m (Concurrent Object)
- petriNetFindConcur :: FindConcurrencyConfig -> String
- petriNetPickConcur :: PickConcurrencyConfig -> String
- pickConcurrency :: (MonadAlloy m, MonadThrow m, Net p n, RandomGen g) => PickConcurrencyConfig -> Int -> RandT g m [(p n String, Maybe (Concurrent String))]
- pickConcurrencyGenerate :: (MonadAlloy m, MonadCatch m, MonadDiagrams m, MonadGraphviz m, Net p n) => PickConcurrencyConfig -> Int -> Int -> m (PickInstance (p n String))
- pickConcurrencyTask :: (Data (n String), Data (p n String), MonadCache m, MonadDiagrams m, MonadGraphviz m, MonadThrow m, Net p n, OutputCapable m, Typeable n, Typeable p) => FilePath -> PickInstance (p n String) -> LangM m
- simpleFindConcurrencyTask :: (MonadCache m, MonadDiagrams m, MonadGraphviz m, MonadThrow m, OutputCapable m) => FilePath -> FindInstance SimplePetriNet (Concurrent Transition) -> LangM m
- simplePickConcurrencyTask :: (MonadCache m, MonadDiagrams m, MonadGraphviz m, MonadThrow m, OutputCapable m) => FilePath -> PickInstance SimplePetriNet -> LangM m
Documentation
findConcurrency :: (MonadAlloy m, MonadThrow m, Net p n, RandomGen g) => FindConcurrencyConfig -> Int -> RandT g m (p n String, Concurrent String) Source #
findConcurrencyEvaluation :: (Monad m, OutputCapable m) => FindInstance net (Concurrent Transition) -> (Transition, Transition) -> Rated m Source #
findConcurrencyGenerate :: (MonadAlloy m, MonadCatch m, MonadDiagrams m, MonadGraphviz m, Net p n) => FindConcurrencyConfig -> Int -> Int -> m (FindInstance (p n String) (Concurrent Transition)) Source #
findConcurrencySolution :: FindInstance net (Concurrent a) -> (a, a) Source #
findConcurrencySyntax :: OutputCapable m => FindInstance net (Concurrent Transition) -> (Transition, Transition) -> LangM' m () Source #
findConcurrencyTask :: (Data (n String), Data (p n String), MonadCache m, MonadDiagrams m, MonadGraphviz m, MonadThrow m, Net p n, OutputCapable m, Typeable n, Typeable p) => FilePath -> FindInstance (p n String) (Concurrent Transition) -> LangM m Source #
parseConcurrency :: MonadThrow m => AlloyInstance -> m (Concurrent Object) Source #
Parses the concurrency Skolem variables for singleton of transitions and returns both as tuple. It throws an error instead if unexpected behaviour occurs.
pickConcurrency :: (MonadAlloy m, MonadThrow m, Net p n, RandomGen g) => PickConcurrencyConfig -> Int -> RandT g m [(p n String, Maybe (Concurrent String))] Source #
pickConcurrencyGenerate :: (MonadAlloy m, MonadCatch m, MonadDiagrams m, MonadGraphviz m, Net p n) => PickConcurrencyConfig -> Int -> Int -> m (PickInstance (p n String)) Source #
pickConcurrencyTask :: (Data (n String), Data (p n String), MonadCache m, MonadDiagrams m, MonadGraphviz m, MonadThrow m, Net p n, OutputCapable m, Typeable n, Typeable p) => FilePath -> PickInstance (p n String) -> LangM m Source #
simpleFindConcurrencyTask :: (MonadCache m, MonadDiagrams m, MonadGraphviz m, MonadThrow m, OutputCapable m) => FilePath -> FindInstance SimplePetriNet (Concurrent Transition) -> LangM m Source #
simplePickConcurrencyTask :: (MonadCache m, MonadDiagrams m, MonadGraphviz m, MonadThrow m, OutputCapable m) => FilePath -> PickInstance SimplePetriNet -> LangM m Source #