Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/avp/gridsolve

A program for solving grid logic puzzles while printing out its reasoning.
https://github.com/avp/gridsolve

Last synced: 15 days ago
JSON representation

A program for solving grid logic puzzles while printing out its reasoning.

Awesome Lists containing this project

README

        

= Gridsolve

A program for solving grid logic puzzles while printing out its reasoning.

== Getting Started

Try it out on the https://avp.github.io/gridsolve[website] for a simple input format.

Or use the CLI program with `cargo run`,
and see the link:./puzzles/[puzzles] directory for the puzzle format.

== Inspiration

The program is based on Escamocher and O'Sullivan's paper
https://arxiv.org/pdf/1910.06636.pdf[Solving Logic Grid Puzzles with an Algorithm that Imitates Human Behavior], with some modifications.

== Example

Here's the output when solving the example provided in the paper:

* The person from the “United States” was born in “1946”.
* “Leo” is younger than the person from “Germany”.
* “Donald” was born in “1946”, or he is from “Ireland”.

See the solution in the web interface https://avp.github.io/gridsolve/#%7B%22categories%22%3A%5B%22name%22%2C%22country%22%2C%22year%22%5D%2C%22labels%22%3A%5B%22angela%22%2C%22donald%22%2C%22leo%22%2C%22germany%22%2C%22ireland%22%2C%22usa%22%2C%221946%22%2C%221954%22%2C%221979%22%5D%2C%22numLabels%22%3A%223%22%2C%22clues%22%3A%5B%7B%22name%22%3A%221%22%2C%22kind%22%3A%22yes%22%2C%22params%22%3A%5B%225%22%2C%226%22%5D%7D%2C%7B%22name%22%3A%222%22%2C%22kind%22%3A%22after%22%2C%22params%22%3A%5B%222%22%2C%222%22%2C%223%22%5D%7D%2C%7B%22name%22%3A%223%22%2C%22kind%22%3A%22or%22%2C%22params%22%3A%5B%221%22%2C%226%22%2C%224%22%5D%7D%5D%7D[here].

Or with the CLI, `./gridsolve puzzles/simple.txt`:
....
+------------+---------------+---------------+
| First Name | Country | Year of Birth |
+------------+---------------+---------------+
| Angela | Germany | 1954 |
+------------+---------------+---------------+
| Donald | United States | 1946 |
+------------+---------------+---------------+
| Leo | Ireland | 1979 |
+------------+---------------+---------------+
....