Freyd's adjoint functor theorem