diff --git a/src/Parser/PP.hs b/src/Parser/PP.hs index 67310f5991af86ea2b0d75edd69d59600dec557e..f8627f03baf24e6cdf994e87f1b9794621b3e792 100644 --- a/src/Parser/PP.hs +++ b/src/Parser/PP.hs @@ -174,8 +174,9 @@ recordPP2PopulationProtocol :: RecordPP -> PopulationProtocol recordPP2PopulationProtocol r = makePopulationProtocolFromStrings (title r) (states r) (map name (transitions r)) (initialStates r) (trueStates r) falseStates p arcs where falseStates = [q | q <- states r, not (S.member q (S.fromList (trueStates r)))] - count = \x -> length . (filter (== x)) - arcs = [(name t, q, toInteger m) | t <- transitions r, q <- (pre t ++ post t), let m = (count q) (post t) - (count q) (pre t)] + count = \x -> fromIntegral . length . (filter (== x)) + arcs = [(q, name t, (count q) (pre t)) | t <- transitions r, q <- pre t] ++ + [(name t, q, (count q) (post t)) | t <- transitions r, q <- post t] p = case predicate r of Nothing -> ExQuantFormula [] FTrue (Just p') -> p'