= Solitaire = <> == Problem Description == Solitaire is a single player game played on a 7x7 board with 2x2 corners omitted. Each position is either full (containing a peg / marble) or empty. With 'O' representing full positions and '.' representing an empty position, a possible board configuration is: {{{ OOO OOO OOO.OOO OOOOOOO OOOOOOO OOO OOO }}} Each turn the player must jump (orthogonally but not diagonally) a peg over an existing peg and removed the 'jumped' peg. For example, numbering the board from the top left, moving peg (6,3) left would give the following board configuration: {{{ OOO OOO OOOO..O OOOOOOO OOOOOOO OOO OOO }}} The task is, given an initial board configuration, to find a sequence of the given number of moves. == Predicates == * '''Input''': {{{full/2, empty/2, time/1}}} * '''Output''': {{{move/1}}} == Input format == Thirty two facts giving the initial board configuration, each of which is either: {{{full(X,Y).}}} or {{{empty(X,Y).}}} indicating that position (X,Y) is either full or empty. A number of time facts, in the form {{{time(i)}}}, specifying the number of moves that must be found. These are given as a range of consecutive, ascending integers, starting at 1. == Output format == The input facts plus a number of move facts equal to the number of time facts. Each move fact is of the form: {{{move(T,D,X,Y)}}}. indicating that to get to time step T from time step T-1 (the initial conditions are regarded to be time step 0), the peg in position (X,Y) is moved in direction D (up, down, left or right). == Example(s) == == Comment == This problem took part in the Second ASP Competition and was proposed by Martin Brain. == Notes and Updates == == Author(s) == * Author: Marcello Balduccini * Affiliation: Kodak Research Labs * Author: Yuliya Lierler * Affiliation: University of Kentucky