Funk, MauriceEibl, MaximilianGaedke, Martin2017-08-282017-08-282017978-3-88579-669-5This paper presents a system for constraint programming in Java using translation of JVM bytecode into SMT. This allows the constraints to be written in normal Java, to being interoperable with the rest of the program and lowers the entry barrier to using specialised solvers in applications. Due to the nature of the performed translation, variable assignments for other runtime properties than constraint satisfaction can be found. These include variable assignments that lead to runtime exceptions during normal code execution. We demonstrate that the implemented approach is able to find variable assignments for non-trivial constraints such as a Sudoku puzzle.enConstraint ProgrammingSMTJavaProgram AnalysisSymbolic ExecutionA system for SMT based constraint programming in Java10.18420/in2017_2601617-5468