Mathematical Foundations
The mathematics underlying Quiver’s design and DSP algorithms.
Category Theory
Quivers
A quiver $Q = (V, E, s, t)$ consists of:
- $V$: Set of vertices (objects)
- $E$: Set of edges (arrows/morphisms)
- $s: E \to V$: Source function
- $t: E \to V$: Target function
In Quiver:
- Vertices = Modules
- Edges = Patch cables
- Source/Target = Output/Input ports
The Free Category
Given a quiver $Q$, the free category $\text{Path}(Q)$ has:
- Objects: Same as $Q$’s vertices
- Morphisms: Paths (sequences of composable arrows)
- Composition: Path concatenation
This is what patch.compile() computes.
Arrow Laws
For arrows $f: A \to B$, $g: B \to C$, $h: C \to D$:
Identity: $$\text{id}_B \circ f = f \circ \text{id}_A = f$$
Associativity: $$(h \circ g) \circ f = h \circ (g \circ f)$$
First/Second: $$\text{first}(f) = f \times \text{id}$$ $$\text{second}(f) = \text{id} \times f$$
Digital Signal Processing
Sampling Theory
Nyquist-Shannon Theorem: A signal can be perfectly reconstructed if sampled at rate $f_s > 2f_{max}$.
At 44.1 kHz: $f_{max} = 22.05$ kHz
Z-Transform
The z-transform converts discrete signals to the z-domain:
$$X(z) = \sum_{n=-\infty}^{\infty} x[n] z^{-n}$$
Unit delay: $z^{-1}$ (one sample delay)
Transfer Functions
Lowpass filter (1-pole): $$H(z) = \frac{1-p}{1-pz^{-1}}$$
Where $p = e^{-2\pi f_c / f_s}$
State-Variable Filter: $$\begin{aligned} \text{LP} &= \text{LP}{n-1} + f \cdot \text{BP}{n-1} \ \text{HP} &= \text{input} - \text{LP} - q \cdot \text{BP}{n-1} \ \text{BP} &= f \cdot \text{HP} + \text{BP}{n-1} \end{aligned}$$
Waveform Mathematics
Sine Wave
$$x(t) = A \sin(2\pi f t + \phi)$$
Sawtooth (Band-Limited)
Fourier series: $$x(t) = \frac{2}{\pi} \sum_{k=1}^{\infty} \frac{(-1)^{k+1}}{k} \sin(2\pi k f t)$$
Square Wave
$$x(t) = \frac{4}{\pi} \sum_{k=1,3,5,…}^{\infty} \frac{1}{k} \sin(2\pi k f t)$$
Only odd harmonics!
Triangle Wave
$$x(t) = \frac{8}{\pi^2} \sum_{k=1,3,5,…}^{\infty} \frac{(-1)^{(k-1)/2}}{k^2} \sin(2\pi k f t)$$
Envelope Mathematics
Exponential Segments
Attack (charging capacitor): $$v(t) = V_{max} (1 - e^{-t/\tau})$$
Decay/Release (discharging): $$v(t) = V_{start} \cdot e^{-t/\tau}$$
Time constant $\tau$: time to reach $1 - 1/e \approx 63.2%$
RC Time Constant
$$\tau = RC$$
For envelope times: $\tau = \text{time} / \ln(1000) \approx \text{time} / 6.9$
FM Synthesis
Basic FM Equation
$$y(t) = A \sin(2\pi f_c t + I \sin(2\pi f_m t))$$
- $f_c$: Carrier frequency
- $f_m$: Modulator frequency
- $I$: Modulation index
Sidebands
FM produces sidebands at: $$f_c \pm n \cdot f_m \quad (n = 1, 2, 3, …)$$
Number of significant sidebands ≈ $I + 1$
Bessel Functions
Amplitude of each sideband given by Bessel functions: $$A_n = J_n(I)$$
Filter Response
Pole-Zero Form
$$H(z) = \frac{\sum_{k=0}^{M} b_k z^{-k}}{\sum_{k=0}^{N} a_k z^{-k}}$$
Cutoff Frequency
For bilinear transform: $$\omega_d = \frac{2}{T} \tan\left(\frac{\omega_a T}{2}\right)$$
Resonance (Q)
$$Q = \frac{f_0}{\Delta f}$$
Where $\Delta f$ is bandwidth at -3dB.
High Q → narrow peak → self-oscillation
Analog Modeling
Thermal Noise
$$V_n = \sqrt{4kTRB}$$
- $k$: Boltzmann constant
- $T$: Temperature (K)
- $R$: Resistance
- $B$: Bandwidth
Saturation Functions
Tanh (soft): $$y = \tanh(x \cdot \text{drive})$$
Polynomial (3rd order): $$y = x - \frac{x^3}{3}$$
Asymmetric: $$y = \tanh(a \cdot x^+) - \tanh(b \cdot x^-)$$
V/Oct System
Pitch to Frequency
$$f = f_0 \cdot 2^V$$
$f_0 = 261.63$ Hz (C4) at 0V
Frequency to Pitch
$$V = \log_2\left(\frac{f}{f_0}\right)$$
Semitone
$$\Delta V = \frac{1}{12} \text{ V} \approx 83.33 \text{ mV}$$
Cent
$$\Delta V = \frac{1}{1200} \text{ V} \approx 0.833 \text{ mV}$$
SIMD Mathematics
Vectorized Operations
For 4-wide SIMD: $$[a_1, a_2, a_3, a_4] + [b_1, b_2, b_3, b_4] = [a_1+b_1, a_2+b_2, a_3+b_3, a_4+b_4]$$
Single instruction, multiple data.
Block Processing
Process $N$ samples per function call:
- Reduces function call overhead by factor of $N$
- Enables vectorization
- Improves cache locality
References
- Smith, J.O. Mathematics of the Discrete Fourier Transform
- Välimäki, V. Discrete-Time Synthesis of the Sawtooth Waveform
- Mac Lane, S. Categories for the Working Mathematician
- Chowning, J. The Synthesis of Complex Audio Spectra by Means of FM