Tangle Software

We have set up a software library to facilitate applications of the mathematical theory of tangles. As it stands, the library offers a collection of basic Python modules to get you started: enough to find and analyse tangles as described in Part III of theTangles book, in data of your own choice.

But the library is not intended to be complete: we hope for many new contributions over time. We also welcome comments, bug reports etc sent to our Tangle Software email account. And if you need help, do get in touch!

We also wrote some tutorials that show you how the software can be used. These come in two forms.

The original tutorials are interactive Jupyter notebooks provided on GitHub. These guide you through examples based on toy data provided by us. You can modify the parameters you want your tangles to adhere to, such as their order or agreement value, and see how the tangles you find change accordingly. Using these tutorials as intended requires basic familiarity with Python and a bit of preparation, see below under 'prerequisites'.

There are also read-only trailers of these tutorials, which require no preparation; the images below take you to them.

The first of these, Mindset Tangles, shows how to find the most typical ways of answering a questionnaire in a large survey. See the book's introductory section for social scientists, Chapter 1.2 on page 7.

The second, Point Cloud Tangles, indicates how tangles can be used for generic clustering as described in Chapters 6 and 14 of the book.

The third, Tangles in Images, illustrates how tangles offer a new approach in image processing and how tangles might be applied in what is known broadly as image segmentation. Note, however, that tangles differ from classical image processing precisely in this point: they concentrate neither on single pixels nor on sets of pixels forming a 'segment', but identify fuzzy regions of an image in their own, indirect, way.


The read-only trailers for the tutorials, linked to above, can be viewed without any prerequisites whatsoever – except for the material from the book as indicated.

Step-by-step instructions for how to get our software and run the interactive notebooks can be found on our GitHub page. These instructions assume basic familiarity with Python.