Constraint Lingo (CL) is a formalism for expressing the clues in logic puzzles. You can read about it in
Raphael Finkel, Wiktor Marek, Miroslaw Truszczyński, "Constraint Lingo: Towards High-Level Constraint Programming", Software ― Practice and Experience, 34:15, pp 1481-1504, December 2004.You can look here for a summary of CL syntax.
Consider the Boo! puzzle from Dell Logic Puzzles, October 1999, page 8:
There are four children: Bernadette, Juan, Keisha, and Sam, who dressed in four costumes: crayon, lion, robot, and scarecrow, standing in a row in positions 1 through 4.
Here is a representation of the puzzle in Constraint Lingo:
CLASS place: 1 .. 4
CLASS child: bernadette juan keisha sam
CLASS costume: crayon lion robot scarecrow
# clue 1
CONFLICT sam robot
REQUIRED sam 4
# clue 2
OFFSET 1 place: scarecrow lion
# clue 3
CONFLICT bernadette 2
# clue 4
OFFSET 2 place: crayon keisha
Here is the solution:
child costume place
========== ========= =====
bernadette crayon 1
juan robot 2
keisha scarecrow 3
sam lion 4