It's common knowledge that the standard Monad class can be defined either in terms of return and (>>=) or return, fmap, and join.
Monad
return
(>>=)
fmap
join
But Monad is not the only class that has alternative, equivalent, formulations. Here are some others:
Monoid