{ "info": { "author": "Florian Schanda", "author_email": "florian@schanda.org.uk", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Intended Audience :: Science/Research", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Topic :: Scientific/Engineering :: Mathematics", "Topic :: Software Development :: Libraries", "Topic :: System :: Emulators" ], "description": "# PyMPF\nThis is an arbitrary precision IEEE-754 floating point implementation.\n\nThe main motivation is correctness and test-case generation, so a\nnumber of things might seem a bit strange. This library has a bunch of\nlimitations and should never be used if you want things to be\nfast. MPFR, SymFPU or Z3's MPF library are what you want.\n\nWhy \"yet another\" implementation?\n - This library supports RNA (MPFR does not)\n - This library supports subnormals and infinities (MPFR does, but only with\n tricks)\n - This library uses IEEE or SMTLIB terminology where possible (MPFR tends to\n stick to more \"maths\" terminology)\n - This library is implemented completely in Python unlike gmpy, mpmath, etc.\n - This library is an independent implementation so can be used to check\n Z3/SymFPU\n - This library uses a stupid but simple algorithm to do rounding\n\nThe main use of this library is random test-case generation for\nSMT-LIB. It has been used to validate the FP implementations of CVC4,\nZ3, MathSAT, SONOLAR, Alt-Ergo, Colibri, goSAT, and xsat; and has\nfound bugs in all of them ;)\n\n# Requirements\nPython 3.5 or later.\n\nThere is also a Python2 port, but I don't plan to maintain it\n(although do shout if you need it).\n\n# Documentation\nThis is very much work in progress and entirely incomplete (I just\nstarted adding this).\n\n* [PyMPF API Documentation](https://florianschanda.github.io/PyMPF/)\n\n# Installation\nThis package is available on PyPI. To install simply run:\n\n```\n$ pip3 install PyMPF\n```\n\n# License and Copyright\nEverything in this repository is licensed under the GNU GPL v3.\n\nKey copyright holders that contributed to this library are:\n* Florian Schanda\n* Altran UK Limited\n* Zenuity AB\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/florianschanda/PyMPF", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "pympf", "package_url": "https://pypi.org/project/pympf/", "platform": "", "project_url": "https://pypi.org/project/pympf/", "project_urls": { "Bug Tracker": "https://github.com/florianschanda/PyMPF/issues", "Documentation": "https://florianschanda.github.io/PyMPF/", "Homepage": "https://github.com/florianschanda/PyMPF", "Source Code": "https://github.com/florianschanda/PyMPF" }, "release_url": "https://pypi.org/project/pympf/1.0.3/", "requires_dist": null, "requires_python": ">=3.5, <4", "summary": "An arbitrary precision IEEE-754 implementation in Python", "version": "1.0.3" }, "last_serial": 4952850, "releases": { "1.0.2": [ { "comment_text": "", "digests": { "md5": "d09c027123aea816bb14503a4a0efcc4", "sha256": "da653e66c33c7514ce7234cacc53e8b179c2f4a08a004400b943b122bf397d03" }, "downloads": -1, "filename": "pympf-1.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "d09c027123aea816bb14503a4a0efcc4", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5, <4", "size": 28658, "upload_time": "2019-03-13T10:56:37", "url": "https://files.pythonhosted.org/packages/2f/e9/51b90bed286bee7a176c655363560fbeed02a10d348830e89b99e34de95d/pympf-1.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2f1d57050f74825a616afdf532b0bd34", "sha256": "0cc90296e2eb892a14d76883f598262a119f3926c61c803355956e726afd1d99" }, "downloads": -1, "filename": "pympf-1.0.2.tar.gz", "has_sig": false, "md5_digest": "2f1d57050f74825a616afdf532b0bd34", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5, <4", "size": 13576, "upload_time": "2019-03-13T10:56:39", "url": "https://files.pythonhosted.org/packages/57/b1/02dcc94d53e405868734d5ba7b4835d8fd3d9afd7832fcfe139b98763671/pympf-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "06f5d321f4daa2dffcc731499f96eeaa", "sha256": "ade348cf7066fae0b9dc3e5f67002adc6a96e6a15dfc6413997a9746d886a716" }, "downloads": -1, "filename": "pympf-1.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "06f5d321f4daa2dffcc731499f96eeaa", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5, <4", "size": 31486, "upload_time": "2019-03-18T08:20:54", "url": "https://files.pythonhosted.org/packages/47/62/b0e6e3078f64890c40236b46ac67e8639c10633a90ad9e50b58589a82d23/pympf-1.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c478cb4fd2680c90b3773b6da60ff35f", "sha256": "c5845a46a9a3a7985b44adad48650f91395563d2783aa8615a247b9673afa9dd" }, "downloads": -1, "filename": "pympf-1.0.3.tar.gz", "has_sig": false, "md5_digest": "c478cb4fd2680c90b3773b6da60ff35f", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5, <4", "size": 16542, "upload_time": "2019-03-18T08:20:55", "url": "https://files.pythonhosted.org/packages/24/73/33c021a185db56a79869d4bdde756442c7dfd8be19e61be2a9a6465f2da2/pympf-1.0.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "06f5d321f4daa2dffcc731499f96eeaa", "sha256": "ade348cf7066fae0b9dc3e5f67002adc6a96e6a15dfc6413997a9746d886a716" }, "downloads": -1, "filename": "pympf-1.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "06f5d321f4daa2dffcc731499f96eeaa", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5, <4", "size": 31486, "upload_time": "2019-03-18T08:20:54", "url": "https://files.pythonhosted.org/packages/47/62/b0e6e3078f64890c40236b46ac67e8639c10633a90ad9e50b58589a82d23/pympf-1.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c478cb4fd2680c90b3773b6da60ff35f", "sha256": "c5845a46a9a3a7985b44adad48650f91395563d2783aa8615a247b9673afa9dd" }, "downloads": -1, "filename": "pympf-1.0.3.tar.gz", "has_sig": false, "md5_digest": "c478cb4fd2680c90b3773b6da60ff35f", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5, <4", "size": 16542, "upload_time": "2019-03-18T08:20:55", "url": "https://files.pythonhosted.org/packages/24/73/33c021a185db56a79869d4bdde756442c7dfd8be19e61be2a9a6465f2da2/pympf-1.0.3.tar.gz" } ] }