taskID = selectATask() verifier = getVerifierForTask(taskId) solution = shortestSolutionForTask(taskID) if not verifier(solution) then error 'Sanity check failed' end if verifier '' then error 'Sanity check failed (or problem is trivial)' end while shouldRun() do solution2 = shorten(solution) if solution2 == nil then break end if verifier(solution2) then solution = solution2 print('Shortened solution to '..#solution2..' chars') end end