fact: Definition φ' (n: nat) := match decode n with | (x, 0) => φ x | (x, S m) => match decode m with | (y, 0) => (φ x) * (φ x) | (y, 1) => (φ y) * (φ y) | (y, 2) => (φ x) * (φ x) + (φ y) * (φ y) | (y, 3) => (φ x) + (φ y) | (y, 4) => ((φ x) + (φ y)) * ((φ x) + (φ y)) | (y, 5) => (φ x) * (φ y) + (φ x) * (φ y) | (_, _) => 0 end end.
imports: List Lia Undecidability.DiophantineConstraints.H10C ssreflect ssrbool ssrfun