Cartan-Karlhede algorithm