# Software for handling chess problems

This article covers computer software designed to solve, or assist people in creating or solving, chess problems – puzzles in which pieces are laid out as in a game of chess, and may at times be based upon real games of chess that have been played and recorded, but whose aim is to challenge the problemist to find a solution to the posed situation, within the rules of chess, rather than to play games of chess from the beginning against an opponent.
This is usually distinct from actually playing and analyzing games of chess. Many chess playing programs also have provision for solving some kinds of problem such as checkmate in a certain number of moves (directmates), and some also have support for helpmates and selfmates.
Software for chess problems can be used for creating and solving problems, including checking the soundness of a concept and position, storing it in a database, printing and publishing, and saving and exporting the problem. As such they can not only solve direct mates, helpmates and selfmates, but at times even problems with fairy pieces and other fairy chess problems. There have also been some attempts to have computers "compose" problems, largely autonomously.

## Software
### Alybadix

First developed in 1980 by Ilkka Blom, Alybadix is a suite of chess problem-solving programs for DOS and Commodore 64. Alybadix supports solving classical problems: selfmates, reflex mates, series mates, Circe, maximummers, and many Fairy types. It comes with a large problem collection and supports quality printing. In 1993, Schach und Spiele magazine considered Alybadix to be six times faster than other playing machines including the RISC 2500.

### Popeye

Popeye is a chess problem-solving software accommodating many fairy chess rules and able to investigate set play and tries. It can be used with several operating systems and can be connected to several existing graphical interfaces since it comes with freely available source code, cf. popeye on GitHub. Since its origin, Popeye was designed as a general-purpose, extensible tool for checking fairy and heterodox chess problems. The original author of Popeye was Philippe Schnoebelen who wrote it in Pascal under MS-DOS around 1983-84. In 1986 the code was donated in the spirit of the free software movement. Elmar Bartel, Norbert Geissler, Thomas Maeder, Torsten Linss, Stefan Hoening, Stefan Brunzen, Harald Denker, Thomas Bark and Stephen Emmerson, converted Popeye to the C programming language, and now maintain the program.
A good graphic interface "AP WIN" a freeware, for using with Windows XP or Windows 7 has since been developed by Paul H. Wiereyn. Using this one can create diagrams and use Popeye for solving problems directly from the diagram.

### Chloe and Winchloe

Chloe (DOS) and Winchloe (proprietary software) are solving programs written by Christian Poisson. Winchloe not only supports classical problems — direct mates, helpmates and selfmates — but also many fairy pieces and conditions with different sized chessboards (up to 250 by 250 squares). It comes with a collection of more than 300,000 problems that can be updated via the Internet. Christian Poisson also maintains the Web site Problemesis.

### Natch and iNatch

Natch and iNatch are freeware programs written by Pascal Wassong for DOS and Linux. Natch solves retrograde analysis problems by constructing a "proof game" - the shortest possible game leading to a certain position. Natch is a command line utility, but there is a Java based graphical interface. iNatch also provides moves with fairy conditions: monochrome chess, Einstein chess, vertical cylinder.

### Problemist(e)

Problemist is a shareware program written by Matthieu Leschamelle for Windows and Windows Mobile. Problemist solves direct mates, helpmates, selfmates and reflexmates. It can rotate positions, print diagrams and much more. With Problemist come two TrueType chess fonts, and from its web page one can download more than 100,000 problems. Problemist is the first chess problems exchange format.

### Jacobi

Jacobi is a program to solve fairy chess proof game problems by François Labelle. It is written in JavaScript and run from browser . In 2003, Labelle already developed chess-related programs and published computer-generated chess problems .

### Chest

Chest was created by Heiner Marxen in 1999. It is written in C, and distributed as source code . It solves direct mates, self mates, and help mates (as well as stalemates for self- and help mates). A UCI adapter (written by Franz Huber) is also available, allowing Chest to be used as solving engine in any UCI-capable chess GUI.

### Stelvio

Stelvio is a freeware program written by Reto Aschwanden devoted to solving orthodox shortest proof games. It is written in Java and can therefore run on various platforms.

## Databases
### Chess Problem Database Server

Chess Problem Database Server is online database of all types of chess problems, maintained by Gerd Wilts, hosted by Die Schwalbe. Database incorporated John Niemann collection and the work of a lot of contributors. Database has 428,703 problems (as of November 2019). Problems are represented graphically with solutions and commentary.

## Other
### LaTeX Diagram Style

Diagram is a style file for LaTeX for typesetting chess diagrams. The style was originally created by Thomas Brand and further developed by Stefan Hoening, both based on ideas of a TeX package from Elmar Bartel. The style is used to produce the German problem chess magazine Die Schwalbe.