module Utils
  (
  listOfAtoms
  ) where

import Logic

listOfAtoms :: (Formula a)-> [a]
listOfAtoms formula = overAtoms (\x y -> x:y) formula []

module Utils
  ( atoms
  , atomUnion
  ) where

import Data.List
import Logic

-- Get list of atoms
atoms formula = atomUnion (\atom -> [atom]) formula

-- Collect atoms by some attribute set by function
atomUnion function formula = overAtoms (\p q -> function p `union` q) formula []

Implement functions to work with atoms
utils: Implement functions to work with atoms
