Created: 2012-03-22 07:05
Updated: 2013-11-26 09:09



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.


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=.


Execute the following command to run all tests in the project

> python picture/test/test_all.py


To solve a picture hanging puzzle with n pins run

> bin/picture-hanging n
Cookies help us deliver our services. By using our services, you agree to our use of cookies Learn more