How does Mathematica integrate?
Mathematica can perform the following integral with apparent ease (returning very fast with the result)
Integrate[(1 - a Tan[b x]^2)^(-1/2), x]
The answer happens to be
(ArcTan[(Sqrt Sqrt[1 + a] Sin[b x])/Sqrt[ 1 - a + (1 + a) Cos[2 b x]]] Sqrt[1 - a + (1 + a) Cos[2 b x]] Sec[b x])/(Sqrt Sqrt[1 + a] b Sqrt[1 - a Tan[b x]^2])
Is there a way to have Mathematica show what sort of substitutions it made along the way?