It is universal in the sense that any quantum circuit can be approximated to arbitrary precision by this set of gates.
One distinguishes between Clifford and non-Clifford gates, where the T gate is a special case of a non-Clifford gate. In many fault-tolerant quantum computing settings, T gates are considered the most expensive gates to implement, and their count is often the target metric to minimize in quantum compilation routines (see this blog post on T-gate optimization).
In most quantum error correction codes like the surface code, (Clifford + T) is the target gate set.
Inputs
Arbitrary circuit U
Outputs
Approximated circuit U_\text{(Clifford + T)}
Example
A Pauli rotation about a multiple of \frac{\pi}{2} is a Clifford operation. For example, we have
R_Z\left(\frac{\pi}{2}\right) = e^{-i \frac{\pi}{4}} S.
However, in general, Pauli rotations are realized by a series consisting of phase gates S, Hadamard gates H and, in particular, T gates.
For example, R_Z\left(\frac{\pi}{128}\right) is realized by the series
Depending on the definition, Toffoli gates are not considered to be in (Clifford + T), but they can be decomposed in this gate set in the following way.
import pennylane as qp
toffoli = qp.Toffoli([0, 1, 2]).decomposition()
print(qp.draw(lambda: [qp.apply(op) for op in toffoli])())
In most error correction schemes, quantum circuits are assumed to be executed in the (Clifford + T) gate set, where Clifford gates are executed in a fault-tolerant way and T gates are performed via magic state injection. A magic state |H\rangle = |0 \rangle + e^{i \frac{\pi}{4}} |1\rangle can be used as a resource from an auxiliary wire to apply T on an arbitrary state |\psi\rangle in the following way.
Korbinian likes simulating quantum systems, whether it be via tensor network methods during his PhD, or with quantum computers at Xanadu. Currently, he works on quantum compilation to make simulation algorithms go brrr.