  This paper presents Giallar, a fully-automated verification toolkit for
quantum compilers. Giallar requires no manual specifications, invariants, or
proofs, and can automatically verify that a compiler pass preserves the
semantics of quantum circuits. To deal with unbounded loops in quantum
compilers, Giallar abstracts three loop templates, whose loop invariants can be
automatically inferred. To efficiently check the equivalence of arbitrary input
and output circuits that have complicated matrix semantics representation,
Giallar introduces a symbolic representation for quantum circuits and a set of
rewrite rules for showing the equivalence of symbolic quantum circuits. With
Giallar, we implemented and verified 44 (out of 56) compiler passes in 13
versions of the Qiskit compiler, the open-source quantum compiler standard,
during which three bugs were detected in and confirmed by Qiskit. Our
evaluation shows that most of Qiskit compiler passes can be automatically
verified in seconds and verification imposes only a modest overhead to
compilation performance.
