Skip to main content

Implements a finite, negative, totally ordered monoid together with methods to compute its one-element Rees coextensions

Project description

fntom

This package contains an implementation of the algorithm that serves to find all the one-element Rees co-extensions of a given finite, negative totally ordered monoid (abbreviated by f. n. tomonoid).

Note that a commutative f. n. tomonoid represents a conjunction in the semantics of a many-valued (fuzzy) logic that has finitely many totally ordered logical values.

Installation

Install the package from PyPI utilizing the pip module:

python -m pip install fntom

Alternatively, you can download and unpack this package and install it by:

python -m pip install path

where path refers to the directory where setup.py is present.

Example

The following program defines a f. n. tomonoid with the Cayley table:

0 x y z 1
0 0 0 x z
0 0 0 0 y
0 0 0 0 x
0 0 0 0 0

Subsequently, it finds all its commutative one-element Rees co-extensions and displays both the f. n. tomonoid and its co-extensions on the terminal output:

    import fntom
    counter = fntom.Counter()
    xyzTable = [['0' ,'x' ,'y' ,'z' ,'1'],
                ['0' ,'0' ,'0' ,'x' ,'z'],
                ['0' ,'0' ,'0' ,'0' ,'y'],
                ['0' ,'0' ,'0' ,'0' ,'x'],
                ['0' ,'0' ,'0' ,'0' ,'0']]
    fntom = fntom.FNTOMonoid(counter.getNew(), xyzTable = xyzTable)
    coextensions = fntom.computeCoExtensions(counter, commutative = True)
    fntom.show()
    for coext in coextensions:
        coext.show()

Documentation

For a detailed decription of the program and its purpose, see the documentation generated by pdoc3 in the directory docs/ or read the papers listed in References below.

References

For the theoretical description of the problem and for the description of the algorithm se the paper:

  • M. Petrik and Th. Vetterlein. Rees coextensions of finite, negative tomonoids. Journal of Logic and Computation 27 (2017) 337-356. DOI: 10.1093/logcom/exv047, PDF.

For a more detailed description of the algorithm see the papers:

  • M. Petrik and Th. Vetterlein. Algorithm to generate finite negative totally ordered monoids. In: IPMU 2016: 16th International Conference on Information Processing and Management of Uncertainty in Knowledge-Based Systems. Eindhoven, Netherlands, June 20-24, 2016. PDF.

  • M. Petrik and Th. Vetterlein. Algorithm to generate the Archimedean, finite, negative tomonoids. In: Joint 7th International Conference on Soft Computing and Intelligent Systems and 15th International Symposium on Advanced Intelligent Systems. Kitakyushu, Japan, Dec. 3-6, 2014. DOI: 10.1109/SCIS-ISIS.2014.7044822. PDF.

For more details on one-element co-extensions of finite, negative, tomonoids see the paper:

  • M. Petrik and Th. Vetterlein. Rees coextensions of finite tomonoids and free pomonoids. Semigroup Forum 99 (2019) 345-367. DOI: 10.1007/s00233-018-9972-z, PDF.

Project details


Download files

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

Source Distribution

fntom-0.2.0.tar.gz (118.2 kB view hashes)

Uploaded Source

Built Distribution

fntom-0.2.0-py3-none-any.whl (47.8 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page