Would this type of thing be suited for program synthesis or property based testing?
Program synthesis only in some particular cases, like the parametrization of programs for speed or another criterion - but not in the general case of program synthesis.