static model now compiles, and should be correct as no counterexamples can be found