  We start by studying the subgroup structures underlying stabilizer circuits.
Then we apply our results to provide two normal forms for stabilizer circuits.
These forms are computed by induction using simple conjugation rules in the
Clifford group and our algorithms do not rely on a special decomposition in the
symplectic group. The first normal form has shape CX-CZ-P-Z-X-H-CZ-P-H, where
CX (resp. CZ) denotes a layer of CNOT (resp. controlled-Z) gates, P a layer of
phase gates, X (resp. Z) a layer of Pauli-X (resp. Pauli-Z) gates. Then we
replace most of the controlled-Z gates by CNOT gates to obtain a second normal
form of type P-CX-CZ-CX-Z-X-H-CZ-CX-P-H. In this second form, both controlled-Z
layers have depth 1 and together contain therefore at most n controlled-Z
gates. We also consider normal forms for stabilizer states and graph states.
Finally we carry out a few tests on classical and quantum computers in order to
show experimentally the utility of these normal forms to reduce the gate count
of a stabilizer circuit.
