SMT solvers, in case you haven't heard about them, let you make assertions over booleans, integers, reals, lists and so on and get satisfying solutions or proofs that they can't be satisfied ...
Okay, I have seriously gotten addicted to solving this problem on Project Euler. Except, no matter what I do, I cannot figure it out. a) It broke. It breaking being defined as running into a situation ...