  We present a constructive method to create quantum circuits that implement
oracles $|x\rangle|y\rangle|0\rangle^k \mapsto |x\rangle|y \oplus
f(x)\rangle|0\rangle^k$ for $n$-variable Boolean functions $f$ with low
$T$-count. In our method $f$ is given as a 2-regular Boolean logic network over
the gate basis $\{\land, \oplus, 1\}$. Our construction leads to circuits with
a $T$-count that is at most four times the number of AND nodes in the network.
In addition, we propose a SAT-based method that allows us to trade qubits for
$T$ gates, and explore the space/complexity trade-off of quantum circuits.
  Our constructive method suggests a new upper bound for the number of $T$
gates and ancilla qubits based on the multiplicative complexity $c_\land(f)$ of
the oracle function $f$, which is the minimum number of AND gates that is
required to realize $f$ over the gate basis $\{\land, \oplus, 1\}$. There
exists a quantum circuit computing $f$ with at most $4 c_\land(f)$ $T$ gates
using $k = c_\land(f)$ ancillae. Results known for the multiplicative
complexity of Boolean functions can be transferred.
  We verify our method by comparing it to different state-of-the-art compilers.
Finally, we present our synthesis results for Boolean functions used in quantum
cryptoanalysis.
