I suppose there was at least once in our lifetime the point where we resorted to mathematica for help with an integral.-Unless you chose not to have the pleasure of using the continuum in your mathematical field of research.

I am wondering however whether behind a computer algebra system like mathematica that does symbolic computations there is some high-level idea how it would approach an awkward integral and try to find an anti-derivative?-I focus here on the integration part, since I think I would understand how to implement symbolic differentiation, at least conceptually, but integration seems to be rather mysterious to me.