-- | Adds a formula to the markov logic network using the parser. If the parser
-- fails, the function returns the MLN unmodified.
tell :: String -> MLN -> MLN
tell s mln@(MLN m) = case parseWFOL s of
  Left _        -> mln
  Right (f, w)  -> MLN $ Map.insert f w m

-- | Gathers all the predicates of a markov logic network in a set.
tell :: String -> MLN -> MLN
tell s mln@(MLN m) = case parseWFOL s of
  Left _        -> mln
  Right (f, w)  -> MLN $ Map.insert f w m

-- | Gathers all the predicates of a markov logic network in a set.
tell s mln@(MLN m) = case parseWFOL s of
  Left _        -> mln
  Right (f, w)  -> MLN $ Map.insert f w m

-- | Gathers all the predicates of a markov logic network in a set.