Skip to main content

Neural networks powered research of semigroups

Project description

PyPI version CircleCI Documentation Status

Neural Semigroups

Here we try to model Cayley tables of semigroups using neural networks.

More documentation can be found here.

Motivation

This work was inspired by a sudoku solver. A solved Sudoku puzzle is nothing more than a Cayley table of a quasigroup from 9 items with some well-known additional properties. So, one can imagine a puzzle made from a Cayley table of any other magma, e. g. a semigroup, by hiding part of its cells.

There are two major differences between sudoku and puzzles based on semigroups:

  1. it's easy to take a glance on a table to understand whether it is a sudoku or not. That's why it was possible to encode numbers in a table cells as colour intensities. Sudoku is a picture, and a semigroup is not. It's difficult to check a Cayley table's associativity with a naked eye;

  2. sudoku puzzles are solved by humans for fun and thus catalogued. When solving a sudoku one knows for sure that there is a unique solution. On the contrary, nobody guesses values in a partially filled Cayley table of a semigroup as a form of amuzement. As a result, one can create a puzzle from a full Cayley table of a semigroup but there may be many distinct solutions.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for neural-semigroups, version 0.2.5
Filename, size File type Python version Upload date Hashes
Filename, size neural_semigroups-0.2.5-py3-none-any.whl (23.6 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size neural-semigroups-0.2.5.tar.gz (17.6 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page