  We present a detailed and simplified version of Hrushovski's algorithm that
determines the Galois group of a linear differential equation. There are three
major ingredients in this algorithm. The first is to look for a degree bound
for proto-Galois groups, which enables one to compute one of them. The second
is to determine the identity component of the Galois group that is the pullback
of a torus to the proto-Galois group. The third is to recover the Galois group
from its identity component and a finite Galois group.
