MiniZinc is a high level solver-independent constraint modeling language.

MiniZinc is a high level solver-independent constraint modeling language. The solvers supporting the FlatZinc files (which is generated during the process of running MiniZinc) format use different solving algorithms: Constraint Programming (Finite Domain), Lazy Clause Generation (CP/SAT), SAT, MIP, Local Search, SMT.

See https://www.minizinc.org.