{ "info": { "author": "Jack Fletcher", "author_email": "jack.mckayfletcher@plymouth.ac.uk", "bugtrack_url": null, "classifiers": [], "description": "schematax\r\n=========\r\n\r\n|PyPI version| |License| |Supported Python| |Downloads|\r\n\r\nschematax is a simple Python package to do all things related to schemata_.\r\n\r\nA schema is word made using an extra symbol, '*', called the wild card symbol.\r\nFor example the schema over the binary aplhapbet '1*0', represents the set of\r\nstrings. {'100','110'}'.\r\n\r\nSchema have properties. For example, for a schema s, the order of s is the\r\nnumber of symbols in s which are not the wild card symbols (called fixed symbols).\r\nThe defining length of s is the distance between the first and last fixed symbol. \r\n\r\nGiven a set of words of the same length S, the schematic completion of S\r\nreturns all schema which make subsets of the words in S. \r\nWhats more given the partial ordering over schemata, the schematic completion of S\r\nforms a `Complete Lattice`_. \r\n\r\n\r\nLinks\r\n-----\r\n\r\n- GitHub: https://github.com/iSTB/python-schemata\r\n- PyPI: http://pypi.python.org/pypi/schematax\r\n- Issue Tracker: https://github.com/iSTB/python-schemata/issues\r\n- Download: http://pypi.python.org/pypi/schematax#downloads\r\n\r\n\r\nInstallation\r\n------------\r\n\r\nThis package runs under Python 2.7, use pip_ to install:\r\n\r\n.. code:: bash\r\n\r\n $ pip install schematax\r\n\r\nThis will also install the graphviz_ package from PyPI as\r\nrequired dependencies.\r\n\r\n**Important**: Drawing the the schematic lattice uses `Graphviz software`_. Make sure it\r\nis installed and ``dot`` executable is on your systems' path.\r\n\r\n\r\nQuickstart\r\n----------\r\nThe file example.py gives a good overview of how to use the package.\r\n\r\nBasic schema operations:\r\n\r\n.. code-block:: python\r\n\r\n >>> import schematax\r\n\r\n >>> s = schematax.schema('10*1') #makes a schema\r\n\r\n >>> s\r\n 10*1\r\n\r\n >>> s.get_order()\r\n 3\r\n\r\n >>> s.get_defining_length()\r\n 3\r\n\r\n >>> s2 = schematax.schema('1**1') #makes another schema\r\n\r\n >>> s <= s2 \r\n True\r\n\r\n >>> s < s2\r\n True\r\n\r\n >>> s == s2\r\n False\r\n \r\n >>> schematax.meet(s,s2)\r\n 10*1\r\n\r\n >>> schematax.join(s,s2)\r\n 1**1\r\n\r\n >>> s3 = schematax.schema('00*1')\r\n \r\n >>> schematax.supremum([s,s2,s3])\r\n ***1\r\n\r\n >>> schematax.infimum([s,s2,s3])\r\n e #e stands for the empty schema\r\n\r\nSchematic completion and drawing the schematic lattice:\r\n\r\n.. code-block:: python\r\n \r\n >>> import schematax\r\n \r\n >>> xs = ['111', '011', '001']\r\n \r\n >>> ss = schematax.complete(xs) #performing schematic completion \r\n \r\n >>> ss\r\n [111, 011, 001, *11, **1, 0*1, e] #e stands for the empty schema\r\n\r\n >>> schematax.draw(ss,'my_lattice') #draws the schematic lattice of ss and saves it as my_lattice.pdf \r\n \r\n\r\nThe image produced here:\r\n\r\n.. image:: https://github.com/iSTB/python-schemata/blob/master/docs/my_lattice.png?raw=true\r\n :align: center\r\n\r\n\r\nFurther reading\r\n---------------\r\n\r\n- https://en.wikipedia.org/wiki/Schema_%28genetic_algorithms%29\r\n- https://en.wikipedia.org/wiki/Lattice_%28order%29\r\n\r\nSee also\r\n--------\r\n\r\nThe implementation is based on these Python packages:\r\n\r\n- graphviz_ |--| Simple Python interface for Graphviz\r\n\r\n\r\n\r\n\r\n\r\nLicense\r\n-------\r\n\r\nSchemata is distributed under the `MIT license`_.\r\n\r\n\r\n\r\n.. _Complete Lattice: https://en.wikipedia.org/wiki/Complete_lattice\r\n.. _schemata: https://en.wikipedia.org/wiki/Schema_%28genetic_algorithms%29\r\n\r\n.. _pip: http://pip.readthedocs.org\r\n.. _Graphviz software: http://www.graphviz.org\r\n\r\n\r\n.. _graphviz: http://pypi.python.org/pypi/graphviz\r\n\r\n\r\n.. _MIT license: http://opensource.org/licenses/MIT\r\n\r\n\r\n.. |--| unicode:: U+2013\r\n\r\n\r\n.. |PyPI version| image:: https://img.shields.io/pypi/v/schematax.svg\r\n :target: https://pypi.python.org/pypi/schematax\r\n :alt: Latest PyPI Version\r\n.. |License| image:: https://img.shields.io/pypi/l/schematax.svg\r\n :target: https://pypi.python.org/pypi/concepts\r\n :alt: License\r\n.. |Supported Python| image:: https://img.shields.io/pypi/pyversions/schematax.svg\r\n :target: https://pypi.python.org/pypi/schematax\r\n :alt: Supported Python Versions\r\n.. |Format| image:: https://img.shields.io/pypi/format/schematax.svg\r\n :target: https://pypi.python.org/pypi/concepts\r\n :alt: Format\r\n.. |Downloads| image:: https://img.shields.io/pypi/dm/schematax.svg\r\n :target: https://pypi.python.org/pypi/schematax\r\n :alt: Downloads", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/iSTB/python-schemata", "keywords": "schemata,schema,genetic algorithms,GAs,complete lattice,meet,join", "license": "LICENSE.txt", "maintainer": "Jack Fletcher", "maintainer_email": "jack.mckayfletcher@plymouth.ac.uk", "name": "schematax", "package_url": "https://pypi.org/project/schematax/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/schematax/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/iSTB/python-schemata" }, "release_url": "https://pypi.org/project/schematax/0.1.6/", "requires_dist": null, "requires_python": null, "summary": "A python package for all things schemata related", "version": "0.1.6" }, "last_serial": 1766219, "releases": { "0.1.6": [ { "comment_text": "", "digests": { "md5": "8454554ed4f9c4e4b0e30ea1fbe9c8ba", "sha256": "8aa4653c3188593195ced6df047225e1081c6dc7615758cfc5f4f71ee0b5ffcb" }, "downloads": -1, "filename": "schematax-0.1.6.tar.gz", "has_sig": false, "md5_digest": "8454554ed4f9c4e4b0e30ea1fbe9c8ba", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 39460, "upload_time": "2015-10-13T12:37:16", "url": "https://files.pythonhosted.org/packages/5b/cf/44d39edd9a4ce9a32573812fcb17131840f74208ac3ac6bb5b733e5c990f/schematax-0.1.6.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8454554ed4f9c4e4b0e30ea1fbe9c8ba", "sha256": "8aa4653c3188593195ced6df047225e1081c6dc7615758cfc5f4f71ee0b5ffcb" }, "downloads": -1, "filename": "schematax-0.1.6.tar.gz", "has_sig": false, "md5_digest": "8454554ed4f9c4e4b0e30ea1fbe9c8ba", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 39460, "upload_time": "2015-10-13T12:37:16", "url": "https://files.pythonhosted.org/packages/5b/cf/44d39edd9a4ce9a32573812fcb17131840f74208ac3ac6bb5b733e5c990f/schematax-0.1.6.tar.gz" } ] }