{ "info": { "author": "John Thorvald Wodder II", "author_email": "permutation@varonathe.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Scientific/Engineering :: Mathematics" ], "description": ".. image:: http://www.repostatus.org/badges/latest/active.svg\n :target: http://www.repostatus.org/#active\n :alt: Project Status: Active \u2014 The project has reached a stable, usable\n state and is being actively developed.\n\n.. image:: https://travis-ci.org/jwodder/permutation.svg?branch=master\n :target: https://travis-ci.org/jwodder/permutation\n\n.. image:: https://codecov.io/gh/jwodder/permutation/branch/master/graph/badge.svg\n :target: https://codecov.io/gh/jwodder/permutation\n\n.. image:: https://img.shields.io/pypi/pyversions/permutation.svg\n :target: https://pypi.org/project/permutation\n\n.. image:: https://img.shields.io/github/license/jwodder/permutation.svg\n :target: https://opensource.org/licenses/MIT\n :alt: MIT License\n\n.. image:: https://img.shields.io/badge/Say%20Thanks-!-1EAEDB.svg\n :target: https://saythanks.io/to/jwodder\n\n`GitHub `_\n| `PyPI `_\n| `Documentation `_\n| `Issues `_\n\n``permutation`` provides a ``Permutation`` class for representing `permutations\n`_ of finitely many positive\nintegers in Python. Supported operations & properties include inverses, (group\ntheoretic) order, parity, composition/multiplication, cycle decomposition,\ncycle notation, word representation, Lehmer codes, and, of course, use as a\ncallable on integers.\n\n\nInstallation\n============\n``permutation`` is written in pure Python with no dependencies. Just use `pip\n`_ (You have pip, right?) to install::\n\n pip install permutation\n\n\nExamples\n========\n\n::\n\n >>> from permutation import Permutation\n >>> p = Permutation(2, 1, 4, 5, 3)\n >>> p.to_cycles()\n [(1, 2), (3, 4, 5)]\n >>> print(p)\n (1 2)(3 4 5)\n >>> print(p.inverse())\n (1 2)(3 5 4)\n >>> p.degree\n 5\n >>> p.order\n 6\n >>> p.is_even\n False\n >>> p.lehmer(5)\n 27\n >>> q = Permutation.cycle(1,2,3)\n >>> print(p * q)\n (2 4 5 3)\n >>> print(q * p)\n (1 3 4 5)\n >>> for p in Permutation.group(3):\n ... print(p)\n ...\n 1\n (1 2)\n (2 3)\n (1 3 2)\n (1 2 3)\n (1 3)\n\n\n", "description_content_type": "text/x-rst", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/jwodder/permutation", "keywords": "permutation,math,maths,mathematics,symmetric group,group theory", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "permutation", "package_url": "https://pypi.org/project/permutation/", "platform": "", "project_url": "https://pypi.org/project/permutation/", "project_urls": { "Bug Tracker": "https://github.com/jwodder/permutation/issues", "Documentation": "https://permutation.readthedocs.io", "Homepage": "https://github.com/jwodder/permutation", "Say Thanks!": "https://saythanks.io/to/jwodder", "Source Code": "https://github.com/jwodder/permutation" }, "release_url": "https://pypi.org/project/permutation/0.2.0/", "requires_dist": null, "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, <4", "summary": "Permutations of finitely many positive integers", "version": "0.2.0" }, "last_serial": 4657093, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "4ba5eba838b8e0db61b9c089ee1fea32", "sha256": "178696c8e4be2d591a10b9523f22092be8bf2dc84a97af82fbc523fd2d8adf48" }, "downloads": -1, "filename": "permutation-0.1.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "4ba5eba838b8e0db61b9c089ee1fea32", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, <4", "size": 10351, "upload_time": "2017-10-02T17:14:37", "url": "https://files.pythonhosted.org/packages/a6/e6/018f6b92f89feddba6f7b919864fb2d9198311713e407e76ac75d5573319/permutation-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d0eff9aba6854ed8c712c77555595dfa", "sha256": "93af8e53c3f1c8616df7d7040f0cad9f5b82ba4ee13130c25842f6db9c80007c" }, "downloads": -1, "filename": "permutation-0.1.0.tar.gz", "has_sig": true, "md5_digest": "d0eff9aba6854ed8c712c77555595dfa", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, <4", "size": 13474, "upload_time": "2017-10-02T17:14:39", "url": "https://files.pythonhosted.org/packages/aa/78/1e3e66fc25dd98977a2329d1dd1e5a3d8a45598fccd4df03fcbabd8de253/permutation-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "aacb4014ca89886bf30de969c5aca1e5", "sha256": "5900dbb41bd6ad67310958fc8f95e9341e23c94ec9ff6d0f6a00687862e93583" }, "downloads": -1, "filename": "permutation-0.1.1-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "aacb4014ca89886bf30de969c5aca1e5", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, <4", "size": 8506, "upload_time": "2018-09-18T20:28:27", "url": "https://files.pythonhosted.org/packages/75/3b/b227fa18233769e45190940c78c355ac7f63edb264b870b43070445da62d/permutation-0.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "da8762e03373d30d1bc7d73d7d71bf62", "sha256": "66a3491014e27096932accb8926d3856e1d169cf080226c99c79144aebbbcdb1" }, "downloads": -1, "filename": "permutation-0.1.1.tar.gz", "has_sig": true, "md5_digest": "da8762e03373d30d1bc7d73d7d71bf62", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, <4", "size": 13724, "upload_time": "2018-09-18T20:28:28", "url": "https://files.pythonhosted.org/packages/40/15/37488a9e78eff5db49bbf7e1546fc181e5e6258aa01ec7147df8cc54b129/permutation-0.1.1.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "103c4f64ab19c19fcada7996462db2b1", "sha256": "580c5a10ebe89cc45dc73365ebe4b703822469b1200276f2fe59ad226d33772a" }, "downloads": -1, "filename": "permutation-0.2.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "103c4f64ab19c19fcada7996462db2b1", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, <4", "size": 9013, "upload_time": "2019-01-03T17:13:27", "url": "https://files.pythonhosted.org/packages/aa/6f/793f3e001988db8178e6ea7cc85ec3a4242311b678732a22ef257a07b60c/permutation-0.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fc2024a9a6d25bfd292d4c35fa96bac7", "sha256": "9f67602225f254b00060e2a6adc50428262eb37f9739b37a0148f15b217863bc" }, "downloads": -1, "filename": "permutation-0.2.0.tar.gz", "has_sig": true, "md5_digest": "fc2024a9a6d25bfd292d4c35fa96bac7", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, <4", "size": 14487, "upload_time": "2019-01-03T17:13:29", "url": "https://files.pythonhosted.org/packages/af/bd/ab6c2b2762fd1075bc2b9ccb4071df383e60fd2058a32a73d1bebdb3112b/permutation-0.2.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "103c4f64ab19c19fcada7996462db2b1", "sha256": "580c5a10ebe89cc45dc73365ebe4b703822469b1200276f2fe59ad226d33772a" }, "downloads": -1, "filename": "permutation-0.2.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "103c4f64ab19c19fcada7996462db2b1", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, <4", "size": 9013, "upload_time": "2019-01-03T17:13:27", "url": "https://files.pythonhosted.org/packages/aa/6f/793f3e001988db8178e6ea7cc85ec3a4242311b678732a22ef257a07b60c/permutation-0.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fc2024a9a6d25bfd292d4c35fa96bac7", "sha256": "9f67602225f254b00060e2a6adc50428262eb37f9739b37a0148f15b217863bc" }, "downloads": -1, "filename": "permutation-0.2.0.tar.gz", "has_sig": true, "md5_digest": "fc2024a9a6d25bfd292d4c35fa96bac7", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, <4", "size": 14487, "upload_time": "2019-01-03T17:13:29", "url": "https://files.pythonhosted.org/packages/af/bd/ab6c2b2762fd1075bc2b9ccb4071df383e60fd2058a32a73d1bebdb3112b/permutation-0.2.0.tar.gz" } ] }