Having it only use operations that use a specific set of zero-page addresses is already supported, yep!

20-30 ops is probably impossible, unfortunately. The combinatorial explosion is just too enormous.

e-graphs have been repeatedly reinvented across decades for many purposes. One of them is superoptimization.

https://en.wikipedia.org/wiki/E-graph

https://www.cs.cornell.edu/courses/cs6120/2025sp/blog/supero...

https://github.com/philzook58/awesome-egraphs