A fuzzer for the Toy Optimizer
Summary
This post describes building a fuzzer for a toy optimizer to detect correctness bugs that may arise from optimization passes. It covers generating random programs, defining a correctness invariant, implementing an interpreter to simulate execution, and a verification harness that exposes potential aliasing bugs. The piece also discusses testing workflows, potential extensions, and references to related work and tooling.