Given a signature assigning each operation symbol a natural-number arity, a -algebra consists of (i) a carrier set A, and (ii) for each n-ary symbol , an interpretation .

In Haskell, the symbols are the constructors and their arguments.