Tyche


NameTyche JSON
Version 1.0.1 PyPI version JSON
download
home_pagehttps://github.com/TycheLibrary/Tyche
SummaryTyche is a library to facilitate the use of aleatoric description logic to construct, query, and update probabilistic belief models.
upload_time2023-03-15 05:32:58
maintainer
docs_urlNone
authorPaddy Lamont
requires_python
licenseMIT License
keywords probability belief knowledge-base ontology description-logic
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <p align="center">
  <img src="https://raw.githubusercontent.com/TycheLibrary/Tyche/master/docs/banner.png" alt="Tyche Logo" width="480" />
</p>

Tyche is a Python library to support the representation of, and the reasoning about, aleatoric information.
Aleatoric information is information that has an independent probability of being true each time it is observed
(i.e., each observation is treated as a roll of the dice). For example, every text message that people send _may_
include emojis, with a different probability for each individual that sent the message. Tyche provides functionality
to reason about this aleatoric information using aleatoric description logic. This allows the probability of truth
of logical statements to be efficiently queried, and allows the probability of the tendencies of individuals to
be learnt through observation.

Tyche provides its main functionality through its `tyche.individuals` module, which facilitates the
construction of ontological knowledge bases with probabilistic beliefs. This allows the simple
representation of individuals, the probabilistic beliefs about them (termed concepts), and the
probabilistic relationships between them (termed roles). Aleatoric description logic sentences
may then be constructed using the `tyche.language` module to be used to query a knowledge base
for a probability, or to be used as an observation to update a knowledge base. This allows
fine-grained modelling of probabilistic belief systems, with a rigorous mathematical foundation.

**Documentation:** [tychelibrary.github.io](https://tychelibrary.github.io)

**Tyche Paper:**
- "Tyche: A library for probabilistic reasoning and belief modelling in Python"
  by Padraig Lamont (2022): [link](https://doi.org/10.1007/978-3-031-22695-3_27)

**Related Publications:**
- "Aleatoric Description Logic for Probabilistic Reasoning" by
  Tim French and Thomas Smoker (2021): [arXiv link](https://arxiv.org/abs/2108.13036)
- "A modal aleatoric calculus for probabilistic reasoning" by
  Tim French, Andrew Gozzard and Mark Reynolds (2018): [arXiv link](https://arxiv.org/abs/1812.11741)


## Usage

Tyche may be installed via pip from [PyPi](https://pypi.org/project/Tyche/).
```sh
pip install Tyche
```

The functions and classes of Tyche can then be imported from the tyche package.
```python
from tyche.language import *
from tyche.individuals import *
from tyche.distributions import *
```

Tyche does not yet have tutorials or documentation for its usage. However, example uses of Tyche are
provided in the [examples directory](https://github.com/TycheLibrary/Tyche/tree/main/examples), and
the [source code](https://github.com/TycheLibrary/Tyche/tree/main/tyche) contains doc comments to
explain the functionality of classes and methods. In the future, more extensive documentation of
Tyche is planned.


## Structure

The *tyche* package consists of the following main modules:
- **language**. This is the aleatoric description logic language module for representing sentences. The language
  module also contains the representation used for the value of roles.
- **individuals**. This is the ontological knowledge base individuals module for representing ontologies of
  individuals, the probabilistic beliefs about them (concepts), and the probabilistic relationships between
  them (roles). The individuals module also contains classes and functions that may be used to learn from
  aleatoric description logic observations.
- **distributions**. This module contains utility classes for representing and manipulating probability
  distributions. These distributions may be used to convert continuous quantities into probabilities,
  and to learn the probability distributions from aleatoric description logic observations.

The Tyche project also consists of the package *test* that contains unit tests for the functionality of
Tyche, and the package *examples* that contains example uses of Tyche.

## License

Tyche is licensed under the [MIT License](/LICENSE).

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/TycheLibrary/Tyche",
    "name": "Tyche",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "probability,belief,knowledge-base,ontology,description-logic",
    "author": "Paddy Lamont",
    "author_email": "padraiglamont@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/49/4f/418da3351e9ebdeff627ad5c987c71757e13a31c1f0467248309e8364a0e/Tyche-1.0.1.tar.gz",
    "platform": null,
    "description": "<p align=\"center\">\n  <img src=\"https://raw.githubusercontent.com/TycheLibrary/Tyche/master/docs/banner.png\" alt=\"Tyche Logo\" width=\"480\" />\n</p>\n\nTyche is a Python library to support the representation of, and the reasoning about, aleatoric information.\nAleatoric information is information that has an independent probability of being true each time it is observed\n(i.e., each observation is treated as a roll of the dice). For example, every text message that people send _may_\ninclude emojis, with a different probability for each individual that sent the message. Tyche provides functionality\nto reason about this aleatoric information using aleatoric description logic. This allows the probability of truth\nof logical statements to be efficiently queried, and allows the probability of the tendencies of individuals to\nbe learnt through observation.\n\nTyche provides its main functionality through its `tyche.individuals` module, which facilitates the\nconstruction of ontological knowledge bases with probabilistic beliefs. This allows the simple\nrepresentation of individuals, the probabilistic beliefs about them (termed concepts), and the\nprobabilistic relationships between them (termed roles). Aleatoric description logic sentences\nmay then be constructed using the `tyche.language` module to be used to query a knowledge base\nfor a probability, or to be used as an observation to update a knowledge base. This allows\nfine-grained modelling of probabilistic belief systems, with a rigorous mathematical foundation.\n\n**Documentation:** [tychelibrary.github.io](https://tychelibrary.github.io)\n\n**Tyche Paper:**\n- \"Tyche: A library for probabilistic reasoning and belief modelling in Python\"\n  by Padraig Lamont (2022): [link](https://doi.org/10.1007/978-3-031-22695-3_27)\n\n**Related Publications:**\n- \"Aleatoric Description Logic for Probabilistic Reasoning\" by\n  Tim French and Thomas Smoker (2021): [arXiv link](https://arxiv.org/abs/2108.13036)\n- \"A modal aleatoric calculus for probabilistic reasoning\" by\n  Tim French, Andrew Gozzard and Mark Reynolds (2018): [arXiv link](https://arxiv.org/abs/1812.11741)\n\n\n## Usage\n\nTyche may be installed via pip from [PyPi](https://pypi.org/project/Tyche/).\n```sh\npip install Tyche\n```\n\nThe functions and classes of Tyche can then be imported from the tyche package.\n```python\nfrom tyche.language import *\nfrom tyche.individuals import *\nfrom tyche.distributions import *\n```\n\nTyche does not yet have tutorials or documentation for its usage. However, example uses of Tyche are\nprovided in the [examples directory](https://github.com/TycheLibrary/Tyche/tree/main/examples), and\nthe [source code](https://github.com/TycheLibrary/Tyche/tree/main/tyche) contains doc comments to\nexplain the functionality of classes and methods. In the future, more extensive documentation of\nTyche is planned.\n\n\n## Structure\n\nThe *tyche* package consists of the following main modules:\n- **language**. This is the aleatoric description logic language module for representing sentences. The language\n  module also contains the representation used for the value of roles.\n- **individuals**. This is the ontological knowledge base individuals module for representing ontologies of\n  individuals, the probabilistic beliefs about them (concepts), and the probabilistic relationships between\n  them (roles). The individuals module also contains classes and functions that may be used to learn from\n  aleatoric description logic observations.\n- **distributions**. This module contains utility classes for representing and manipulating probability\n  distributions. These distributions may be used to convert continuous quantities into probabilities,\n  and to learn the probability distributions from aleatoric description logic observations.\n\nThe Tyche project also consists of the package *test* that contains unit tests for the functionality of\nTyche, and the package *examples* that contains example uses of Tyche.\n\n## License\n\nTyche is licensed under the [MIT License](/LICENSE).\n",
    "bugtrack_url": null,
    "license": "MIT License",
    "summary": "Tyche is a library to facilitate the use of aleatoric description logic to construct, query, and update probabilistic belief models.",
    "version": "1.0.1",
    "split_keywords": [
        "probability",
        "belief",
        "knowledge-base",
        "ontology",
        "description-logic"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d23a239b6af9019911c274a1ea508790474fc41a87d1597efede8e9b06df8b8a",
                "md5": "98285814fa88eb39170e7851fb4d61eb",
                "sha256": "72a75d4fd5092ac6d16da275f439ea94a8998416fe1af6b20c96365caf6d9b5d"
            },
            "downloads": -1,
            "filename": "Tyche-1.0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "98285814fa88eb39170e7851fb4d61eb",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 36531,
            "upload_time": "2023-03-15T05:32:57",
            "upload_time_iso_8601": "2023-03-15T05:32:57.083811Z",
            "url": "https://files.pythonhosted.org/packages/d2/3a/239b6af9019911c274a1ea508790474fc41a87d1597efede8e9b06df8b8a/Tyche-1.0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "494f418da3351e9ebdeff627ad5c987c71757e13a31c1f0467248309e8364a0e",
                "md5": "e8ca9d5b8530939f7bada96c9cbdc811",
                "sha256": "cbcb48792a50cd76ad147f6d0eb786720db5cfe95ad944fba4e3f617e914a91f"
            },
            "downloads": -1,
            "filename": "Tyche-1.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "e8ca9d5b8530939f7bada96c9cbdc811",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 33246,
            "upload_time": "2023-03-15T05:32:58",
            "upload_time_iso_8601": "2023-03-15T05:32:58.866354Z",
            "url": "https://files.pythonhosted.org/packages/49/4f/418da3351e9ebdeff627ad5c987c71757e13a31c1f0467248309e8364a0e/Tyche-1.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-03-15 05:32:58",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "TycheLibrary",
    "github_project": "Tyche",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "tyche"
}
        
Elapsed time: 0.04395s