| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Modelling.PetriNet.Reach.Type
Description
originally from Autotool (https:/gitlab.imn.htwk-leipzig.deautotool/all0) based on revision: ad25a990816a162fdd13941ff889653f22d6ea0a based on file: collectionsrcPetri/Type.hs
Synopsis
- type Connection s t = ([s], t, [s])
- newtype State s = State {}
- mapState :: Ord b => (a -> b) -> State a -> State b
- mark :: Ord s => State s -> s -> Int
- data Capacity s
- mapCapacity :: Ord a => (s -> a) -> Capacity s -> Capacity a
- data TransitionBehaviorConstraints = TransitionBehaviorConstraints {}
- noTransitionBehaviorConstraints :: TransitionBehaviorConstraints
- data ArrowDensityConstraints = ArrowDensityConstraints {}
- noArrowDensityConstraints :: ArrowDensityConstraints
- data Net s t = Net {
- places :: Set s
- transitions :: Set t
- connections :: [Connection s t]
- capacity :: Capacity s
- start :: State s
- bimapNet :: (Ord a, Ord b) => (s -> a) -> (t -> b) -> Net s t -> Net a b
- allNonNegative :: State a -> Bool
- conforms :: Ord k => Capacity k -> State k -> Bool
- newtype Place = Place Int
- newtype ShowPlace = ShowPlace Place
- showPlace :: Place -> String
- parsePlacePrec :: Int -> Parser Place
- newtype Transition = Transition Int
- newtype ShowTransition = ShowTransition Transition
- showTransition :: Transition -> String
- parseTransitionPrec :: Int -> Parser Transition
- newtype TransitionsList = TransitionsList {}
- parseTransitionsListPrec :: Int -> Parser TransitionsList
- example :: (Net Place Transition, State Place)
- hasIsolatedNodes :: (Ord s, Ord t) => Net s t -> Bool
- connectionTokenBehavior :: Connection s t -> (Int, Int)
- satisfiesTransitionBehaviorConstraints :: Net s t -> TransitionBehaviorConstraints -> Bool
- countFusableTransitionsConsuming :: Ord s => [([s], t, [s])] -> Int
- countFusableTransitionsProducing :: Ord s => [([s], t, [s])] -> Int
Documentation
type Connection s t = ([s], t, [s]) Source #
Instances
| (Ord s, Reader s) => Reader (State s) Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Methods atomic_reader :: Parser (State s) atomic_readerPrec :: Int -> Parser (State s) readerPrec :: Int -> Parser (State s) readerList :: Parser [State s] | |||||
| ToDoc s => ToDoc (State s) Source # | |||||
| (Data s, Ord s) => Data (State s) Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> State s -> c (State s) # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (State s) # toConstr :: State s -> Constr # dataTypeOf :: State s -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (State s)) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (State s)) # gmapT :: (forall b. Data b => b -> b) -> State s -> State s # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> State s -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> State s -> r # gmapQ :: (forall d. Data d => d -> u) -> State s -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> State s -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> State s -> m (State s) # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> State s -> m (State s) # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> State s -> m (State s) # | |||||
| Generic (State s) Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Associated Types
| |||||
| (Ord s, Read s) => Read (State s) Source # | |||||
| Show s => Show (State s) Source # | |||||
| Ord s => Eq (State s) Source # | |||||
| Ord s => Ord (State s) Source # | |||||
Defined in Modelling.PetriNet.Reach.Type | |||||
| (Ord s, Hashable s) => Hashable (State s) Source # | |||||
Defined in Modelling.PetriNet.Reach.Type | |||||
| type Rep (State s) Source # | |||||
Defined in Modelling.PetriNet.Reach.Type | |||||
Instances
| (Ord s, Reader s) => Reader (Capacity s) Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Methods atomic_reader :: Parser (Capacity s) atomic_readerPrec :: Int -> Parser (Capacity s) readerPrec :: Int -> Parser (Capacity s) readerList :: Parser [Capacity s] | |||||
| ToDoc s => ToDoc (Capacity s) Source # | |||||
| (Data s, Ord s) => Data (Capacity s) Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Capacity s -> c (Capacity s) # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Capacity s) # toConstr :: Capacity s -> Constr # dataTypeOf :: Capacity s -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Capacity s)) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Capacity s)) # gmapT :: (forall b. Data b => b -> b) -> Capacity s -> Capacity s # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Capacity s -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Capacity s -> r # gmapQ :: (forall d. Data d => d -> u) -> Capacity s -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Capacity s -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Capacity s -> m (Capacity s) # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Capacity s -> m (Capacity s) # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Capacity s -> m (Capacity s) # | |||||
| Generic (Capacity s) Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Associated Types
| |||||
| (Ord s, Read s) => Read (Capacity s) Source # | |||||
| Show s => Show (Capacity s) Source # | |||||
| Eq s => Eq (Capacity s) Source # | |||||
| Ord s => Ord (Capacity s) Source # | |||||
Defined in Modelling.PetriNet.Reach.Type | |||||
| Hashable s => Hashable (Capacity s) Source # | |||||
Defined in Modelling.PetriNet.Reach.Type | |||||
| type Rep (Capacity s) Source # | |||||
Defined in Modelling.PetriNet.Reach.Type type Rep (Capacity s) = D1 ('MetaData "Capacity" "Modelling.PetriNet.Reach.Type" "modelling-tasks-0.0.0.1-2KiclaEArwR4yz1IHg8eKf" 'False) (C1 ('MetaCons "Unbounded" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "AllBounded" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)) :+: C1 ('MetaCons "Bounded" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Map s Int))))) | |||||
data TransitionBehaviorConstraints Source #
Constraints on transition token behavior in the net
Constructors
| TransitionBehaviorConstraints | |
Fields
| |
Instances
noTransitionBehaviorConstraints :: TransitionBehaviorConstraints Source #
No transition behavior constraints
data ArrowDensityConstraints Source #
Arrow density constraints for net generation
Constructors
| ArrowDensityConstraints | |
Fields
| |
Instances
| Reader ArrowDensityConstraints Source # | |||||
| ToDoc ArrowDensityConstraints Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Methods toDocPrec :: Int -> ArrowDensityConstraints -> Doc toDocList :: [ArrowDensityConstraints] -> Doc | |||||
| Data ArrowDensityConstraints Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ArrowDensityConstraints -> c ArrowDensityConstraints # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ArrowDensityConstraints # toConstr :: ArrowDensityConstraints -> Constr # dataTypeOf :: ArrowDensityConstraints -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ArrowDensityConstraints) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ArrowDensityConstraints) # gmapT :: (forall b. Data b => b -> b) -> ArrowDensityConstraints -> ArrowDensityConstraints # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ArrowDensityConstraints -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ArrowDensityConstraints -> r # gmapQ :: (forall d. Data d => d -> u) -> ArrowDensityConstraints -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> ArrowDensityConstraints -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> ArrowDensityConstraints -> m ArrowDensityConstraints # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ArrowDensityConstraints -> m ArrowDensityConstraints # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ArrowDensityConstraints -> m ArrowDensityConstraints # | |||||
| Generic ArrowDensityConstraints Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Associated Types
Methods from :: ArrowDensityConstraints -> Rep ArrowDensityConstraints x # to :: Rep ArrowDensityConstraints x -> ArrowDensityConstraints # | |||||
| Read ArrowDensityConstraints Source # | |||||
Defined in Modelling.PetriNet.Reach.Type | |||||
| Show ArrowDensityConstraints Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Methods showsPrec :: Int -> ArrowDensityConstraints -> ShowS # show :: ArrowDensityConstraints -> String # showList :: [ArrowDensityConstraints] -> ShowS # | |||||
| Eq ArrowDensityConstraints Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Methods (==) :: ArrowDensityConstraints -> ArrowDensityConstraints -> Bool # (/=) :: ArrowDensityConstraints -> ArrowDensityConstraints -> Bool # | |||||
| Ord ArrowDensityConstraints Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Methods compare :: ArrowDensityConstraints -> ArrowDensityConstraints -> Ordering # (<) :: ArrowDensityConstraints -> ArrowDensityConstraints -> Bool # (<=) :: ArrowDensityConstraints -> ArrowDensityConstraints -> Bool # (>) :: ArrowDensityConstraints -> ArrowDensityConstraints -> Bool # (>=) :: ArrowDensityConstraints -> ArrowDensityConstraints -> Bool # max :: ArrowDensityConstraints -> ArrowDensityConstraints -> ArrowDensityConstraints # min :: ArrowDensityConstraints -> ArrowDensityConstraints -> ArrowDensityConstraints # | |||||
| Hashable ArrowDensityConstraints Source # | |||||
Defined in Modelling.PetriNet.Reach.Type | |||||
| type Rep ArrowDensityConstraints Source # | |||||
Defined in Modelling.PetriNet.Reach.Type type Rep ArrowDensityConstraints = D1 ('MetaData "ArrowDensityConstraints" "Modelling.PetriNet.Reach.Type" "modelling-tasks-0.0.0.1-2KiclaEArwR4yz1IHg8eKf" 'False) (C1 ('MetaCons "ArrowDensityConstraints" 'PrefixI 'True) ((S1 ('MetaSel ('Just "incomingArrowsPerTransition") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Int, Maybe Int)) :*: (S1 ('MetaSel ('Just "outgoingArrowsPerTransition") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Int, Maybe Int)) :*: S1 ('MetaSel ('Just "incomingArrowsPerPlace") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Int, Maybe Int)))) :*: (S1 ('MetaSel ('Just "outgoingArrowsPerPlace") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Int, Maybe Int)) :*: (S1 ('MetaSel ('Just "totalArrowsFromPlacesToTransitions") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Int, Maybe Int)) :*: S1 ('MetaSel ('Just "totalArrowsFromTransitionsToPlaces") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Int, Maybe Int)))))) | |||||
noArrowDensityConstraints :: ArrowDensityConstraints Source #
Default arrow density constraints (no restrictions)
Constructors
| Net | |
Fields
| |
Instances
| (Ord s, Ord t, Reader s, Reader t) => Reader (Net s t) Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Methods atomic_reader :: Parser (Net s t) atomic_readerPrec :: Int -> Parser (Net s t) readerPrec :: Int -> Parser (Net s t) readerList :: Parser [Net s t] | |||||
| (ToDoc s, ToDoc t) => ToDoc (Net s t) Source # | |||||
| (Data s, Data t, Ord s, Ord t) => Data (Net s t) Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Net s t -> c (Net s t) # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Net s t) # toConstr :: Net s t -> Constr # dataTypeOf :: Net s t -> DataType # dataCast1 :: Typeable t0 => (forall d. Data d => c (t0 d)) -> Maybe (c (Net s t)) # dataCast2 :: Typeable t0 => (forall d e. (Data d, Data e) => c (t0 d e)) -> Maybe (c (Net s t)) # gmapT :: (forall b. Data b => b -> b) -> Net s t -> Net s t # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Net s t -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Net s t -> r # gmapQ :: (forall d. Data d => d -> u) -> Net s t -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Net s t -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Net s t -> m (Net s t) # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Net s t -> m (Net s t) # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Net s t -> m (Net s t) # | |||||
| Generic (Net s t) Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Associated Types
| |||||
| (Read s, Read t, Ord s, Ord t) => Read (Net s t) Source # | |||||
| (Show s, Show t) => Show (Net s t) Source # | |||||
| (Eq t, Ord s) => Eq (Net s t) Source # | |||||
| (Ord s, Ord t) => Ord (Net s t) Source # | |||||
Defined in Modelling.PetriNet.Reach.Type | |||||
| (Ord s, Hashable s, Hashable t) => Hashable (Net s t) Source # | |||||
Defined in Modelling.PetriNet.Reach.Type | |||||
| type Rep (Net s t) Source # | |||||
Defined in Modelling.PetriNet.Reach.Type type Rep (Net s t) = D1 ('MetaData "Net" "Modelling.PetriNet.Reach.Type" "modelling-tasks-0.0.0.1-2KiclaEArwR4yz1IHg8eKf" 'False) (C1 ('MetaCons "Net" 'PrefixI 'True) ((S1 ('MetaSel ('Just "places") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Set s)) :*: S1 ('MetaSel ('Just "transitions") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Set t))) :*: (S1 ('MetaSel ('Just "connections") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Connection s t]) :*: (S1 ('MetaSel ('Just "capacity") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Capacity s)) :*: S1 ('MetaSel ('Just "start") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (State s)))))) | |||||
allNonNegative :: State a -> Bool Source #
Instances
| Reader Place Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Methods atomic_readerPrec :: Int -> Parser Place readerPrec :: Int -> Parser Place readerList :: Parser [Place] | |||||
| ToDoc Place Source # | |||||
| Data Place Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Place -> c Place # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Place # dataTypeOf :: Place -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Place) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Place) # gmapT :: (forall b. Data b => b -> b) -> Place -> Place # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Place -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Place -> r # gmapQ :: (forall d. Data d => d -> u) -> Place -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Place -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Place -> m Place # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Place -> m Place # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Place -> m Place # | |||||
| Enum Place Source # | |||||
Defined in Modelling.PetriNet.Reach.Type | |||||
| Generic Place Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Associated Types
| |||||
| Read Place Source # | |||||
| Show Place Source # | |||||
| Eq Place Source # | |||||
| Ord Place Source # | |||||
| Hashable Place Source # | |||||
Defined in Modelling.PetriNet.Reach.Type | |||||
| type Rep Place Source # | |||||
Defined in Modelling.PetriNet.Reach.Type | |||||
Instances
| Show ShowPlace Source # | |
| Eq ShowPlace Source # | |
| Ord ShowPlace Source # | |
newtype Transition Source #
Constructors
| Transition Int |
Instances
| Reader Transition Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Methods atomic_reader :: Parser Transition atomic_readerPrec :: Int -> Parser Transition readerPrec :: Int -> Parser Transition readerList :: Parser [Transition] | |||||
| ToDoc Transition Source # | |||||
Defined in Modelling.PetriNet.Reach.Type | |||||
| Data Transition Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Transition -> c Transition # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Transition # toConstr :: Transition -> Constr # dataTypeOf :: Transition -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Transition) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Transition) # gmapT :: (forall b. Data b => b -> b) -> Transition -> Transition # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Transition -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Transition -> r # gmapQ :: (forall d. Data d => d -> u) -> Transition -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Transition -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Transition -> m Transition # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Transition -> m Transition # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Transition -> m Transition # | |||||
| Enum Transition Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Methods succ :: Transition -> Transition # pred :: Transition -> Transition # toEnum :: Int -> Transition # fromEnum :: Transition -> Int # enumFrom :: Transition -> [Transition] # enumFromThen :: Transition -> Transition -> [Transition] # enumFromTo :: Transition -> Transition -> [Transition] # enumFromThenTo :: Transition -> Transition -> Transition -> [Transition] # | |||||
| Generic Transition Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Associated Types
| |||||
| Read Transition Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Methods readsPrec :: Int -> ReadS Transition # readList :: ReadS [Transition] # readPrec :: ReadPrec Transition # readListPrec :: ReadPrec [Transition] # | |||||
| Show Transition Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Methods showsPrec :: Int -> Transition -> ShowS # show :: Transition -> String # showList :: [Transition] -> ShowS # | |||||
| Eq Transition Source # | |||||
Defined in Modelling.PetriNet.Reach.Type | |||||
| Ord Transition Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Methods compare :: Transition -> Transition -> Ordering # (<) :: Transition -> Transition -> Bool # (<=) :: Transition -> Transition -> Bool # (>) :: Transition -> Transition -> Bool # (>=) :: Transition -> Transition -> Bool # max :: Transition -> Transition -> Transition # min :: Transition -> Transition -> Transition # | |||||
| Hashable Transition Source # | |||||
Defined in Modelling.PetriNet.Reach.Type | |||||
| type Rep Transition Source # | |||||
Defined in Modelling.PetriNet.Reach.Type type Rep Transition = D1 ('MetaData "Transition" "Modelling.PetriNet.Reach.Type" "modelling-tasks-0.0.0.1-2KiclaEArwR4yz1IHg8eKf" 'True) (C1 ('MetaCons "Transition" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int))) | |||||
newtype ShowTransition Source #
Constructors
| ShowTransition Transition |
Instances
| Show ShowTransition Source # | |
Defined in Modelling.PetriNet.Reach.Type Methods showsPrec :: Int -> ShowTransition -> ShowS # show :: ShowTransition -> String # showList :: [ShowTransition] -> ShowS # | |
| Eq ShowTransition Source # | |
Defined in Modelling.PetriNet.Reach.Type Methods (==) :: ShowTransition -> ShowTransition -> Bool # (/=) :: ShowTransition -> ShowTransition -> Bool # | |
| Ord ShowTransition Source # | |
Defined in Modelling.PetriNet.Reach.Type Methods compare :: ShowTransition -> ShowTransition -> Ordering # (<) :: ShowTransition -> ShowTransition -> Bool # (<=) :: ShowTransition -> ShowTransition -> Bool # (>) :: ShowTransition -> ShowTransition -> Bool # (>=) :: ShowTransition -> ShowTransition -> Bool # max :: ShowTransition -> ShowTransition -> ShowTransition # min :: ShowTransition -> ShowTransition -> ShowTransition # | |
showTransition :: Transition -> String Source #
newtype TransitionsList Source #
Constructors
| TransitionsList | |
Fields | |
Instances
| Reader TransitionsList Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Methods atomic_reader :: Parser TransitionsList atomic_readerPrec :: Int -> Parser TransitionsList reader :: Parser TransitionsList readerPrec :: Int -> Parser TransitionsList | |||||
| ToDoc TransitionsList Source # | |||||
Defined in Modelling.PetriNet.Reach.Type | |||||
| Generic TransitionsList Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Associated Types
Methods from :: TransitionsList -> Rep TransitionsList x # to :: Rep TransitionsList x -> TransitionsList # | |||||
| Show TransitionsList Source # | |||||
Defined in Modelling.PetriNet.Reach.Type Methods showsPrec :: Int -> TransitionsList -> ShowS # show :: TransitionsList -> String # showList :: [TransitionsList] -> ShowS # | |||||
| type Rep TransitionsList Source # | |||||
Defined in Modelling.PetriNet.Reach.Type type Rep TransitionsList = D1 ('MetaData "TransitionsList" "Modelling.PetriNet.Reach.Type" "modelling-tasks-0.0.0.1-2KiclaEArwR4yz1IHg8eKf" 'True) (C1 ('MetaCons "TransitionsList" 'PrefixI 'True) (S1 ('MetaSel ('Just "transitionsList") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Transition]))) | |||||
hasIsolatedNodes :: (Ord s, Ord t) => Net s t -> Bool Source #
Check if a net has any isolated nodes (nodes with no connections)
connectionTokenBehavior :: Connection s t -> (Int, Int) Source #
Determine the token behavior of a connection Returns: (consumed, produced)
satisfiesTransitionBehaviorConstraints :: Net s t -> TransitionBehaviorConstraints -> Bool Source #
Check if a net satisfies the given transition behavior constraints
countFusableTransitionsConsuming :: Ord s => [([s], t, [s])] -> Int Source #
Count transitions with exactly one input place which moreover is exclusively consumed from by that transition. More specifically, a "fusable transition consuming" is a transition t where: - t consumes (truly) from exactly one input place s, AND - t is the only transition that consumes from s (except for trivial back-and-forth looping transitions)
countFusableTransitionsProducing :: Ord s => [([s], t, [s])] -> Int Source #
Count transitions with exactly one output place which moreover is exclusively produced to by that transition. More specifically, a "fusable transition producing" is a transition t where: - t produces (truly) to exactly one place s, AND - t is the only transition that produces to s (except for trivial back-and-forth looping transitions)