Algebraic Knowledge Discovery Using Haskell