Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Provide primitives to construct words over free groups to solve picture-hanging puzzles
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
bin Executable created
picture
.gitignore
.travis.yml
README.md

README.md

Picture-Hanging

Build Status

In Picture-Hanging Puzzles a famous puzzle, and some of its generalisations are solved using a words over a free group.

This project offers primitives which enable a developer to express words over free groups and operate on these words in similiar ways as expressed in the article.

Free Group

Wikipedia has a nice article on free groups.

In mathematics, a group G is called free if there is a subset S of G such that any element of G can be written in one and only one way as a product of finitely many elements of S and their inverses (disregarding trivial variations). Apart from the existence of inverses no other relation exists between the generators of a free group.

Environment

Python is used in this project. Make sure that python is able to find the project. I usually add the current directory to the PYTHONPATH with the following command.

> export PYTHONPATH=.

Tests

Execute the following command to run all tests in the project

> python picture/test/test_all.py

Executables

To solve a picture hanging puzzle with n pins run

> bin/picture-hanging n
Something went wrong with that request. Please try again.