{"id":24540609,"url":"https://github.com/sybila/pithya-core","last_synced_at":"2025-08-10T22:42:56.486Z","repository":{"id":140590773,"uuid":"53173335","full_name":"sybila/pithya-core","owner":"sybila","description":null,"archived":false,"fork":false,"pushed_at":"2022-08-16T13:05:37.000Z","size":3117,"stargazers_count":1,"open_issues_count":8,"forks_count":0,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-03-16T05:43:17.481Z","etag":null,"topics":["ctl","model-checker","parameter-estimation"],"latest_commit_sha":null,"homepage":null,"language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sybila.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2016-03-05T00:01:17.000Z","updated_at":"2022-08-16T13:05:39.000Z","dependencies_parsed_at":null,"dependency_job_id":"30a8d9b5-2dbd-43ef-b682-8c42995fb853","html_url":"https://github.com/sybila/pithya-core","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sybila/pithya-core","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sybila%2Fpithya-core","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sybila%2Fpithya-core/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sybila%2Fpithya-core/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sybila%2Fpithya-core/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sybila","download_url":"https://codeload.github.com/sybila/pithya-core/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sybila%2Fpithya-core/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269799505,"owners_count":24477643,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-10T02:00:08.965Z","response_time":71,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ctl","model-checker","parameter-estimation"],"created_at":"2025-01-22T18:14:15.327Z","updated_at":"2025-08-10T22:42:56.468Z","avatar_url":"https://github.com/sybila.png","language":"Kotlin","readme":"[![Build Status](https://travis-ci.org/sybila/pithya-core.svg?branch=master)](https://travis-ci.org/sybila/pithya-core)\n[![License](https://img.shields.io/badge/License-GPL%20v3-blue.svg?style=flat)](https://github.com/sybila/biodivine-ctl/blob/master/LICENSE.txt)\n[![Docker Pulls](https://badgen.net//docker/pulls/sybila/pithya?icon=docker)](https://hub.docker.com/r/sybila/pithya/)\n\nPithya is a tool for parameter synthesis of ODE-based models and properties based on a hybrid extension of CTL.\n\n## Online demo\n\nTo try Pithya online, visit [pithya.fi.muni.cz](https://pithya.fi.muni.cz/). In case of any problems/questions, feel free to contact us at [sybila@fi.muni.cz](mailto:sybila@fi.muni.cz).\n\n## Dependencies\n\nTo run Pithya, you need to have **Java 8+** and Microsoft **Z3 4.5.0** \ninstalled. If your OS is supported, we strongly recommend downloading precompiled\nZ3 binaries from github (Pithya allows you to specify a custom Z3 \nlocation, so you don't necessarily need to have it in your PATH, but we recommend doing that anyway).\n\nWe strongly recommend to use Pithya with a GUI that is developed as a separate project and accessible at https://github.com/sybila/pithya-gui. \n\n## Download Pithya\n\nYou can download the latest version of Pithya from the releases. \n\n## Run\n\nPithya has one main binary **bin/pithya**. The bin folder also contains other executables,\nhowever, these are used only when pithya operates together with the GUI interface, so you\ndon't need to worry about them.\n\n### Arguments\n\nThis is desription of arguments for parameter synthesis. Arguments for component analysis are described in the corresponding [repo](https://github.com/sybila/terminal-components).\n\n#### Input and output\n\n - ```[-m,--model] filePath``` *required* Path to the .bio file from which the model should be loaded. Detailed\n description of the .bio format can be found here *TODO link*\n - ```[-p,--property] filePath``` *required* Path to the .huctl file from which verified properties are loaded. Detailed\n descrption of the .huctl format can be found here *TODO link*\n - ```[-ro,--result-output] [stdout, stderr, filePath]``` *default: stdout* File/stream to which verification results should be printed. \n*You can use this option to print log and results separately. Note: errors are always printed to stderr.*\n - ```[-r,--result] [human, json]``` *default: human* Output format that is used when printing results.\n   * ```human``` Informal text format that should be easily readable to sentient creatures.\n   * ```json``` A more formal output format that can be easily parsed by other tools. Description *TODO*.\n - ```[-lo,--log-output] [stdout, stderr, filePath]``` *default: stdout* File/stream to which logging info should be printed. \n*You can use this option to print log and results separately. Note: errors are always printed to stderr.*\n - ```[-l,--log] [none, info, verbose, debug]``` *default: verbose* Amount of log data to print during execution.\n   * ```none``` No logging.\n   * ```info``` Print coarse verification progress and statistics (started operators, final solver throughput).\n   * ```verbose``` Print interactive progress with dynamic throughput statistics (roughly every 2s).\n   * ```debug``` Print everything.\n\n#### Verification options\n\n - ```--parallelism integer``` *default: runtime.avaialableProcessors* The maximum number of threads that are used for parallel\n computation (this is an upper bound, for some specific models/properties, the desired level of parallelism might not be achievable).\n - ```--z3-path filePath``` *default: z3* Relative or absolute path to the z3 command line executable.\n - ```--fast-approximation [true, false]``` *default: false* Uses much faster, but not necessarily optimal \n version of the [Piecewise linear approximation] (https://optimization.mccormick.northwestern.edu/index.php/Piecewise_linear_approximation) \n when evaluating the model ODEs.\n - ```--create-self-loops [true, false]``` *default: true* Creating selfloops can cause significant overhead even though they have no\n impact on some types of properties (mainly reachability). You can disable selfloops using this switch.\n## Build from source\n\nYou can naturally build Pithya from source if you're so inclined. After you clone \nthe repository, you can run one of these commands in the root folder:\n\n``` \n# On Windows, replace ./gradlew with ./gradlew.bat\n\n# Build Pithya and place unpacked distribution into ./build/install/pithya\n./gradlew installDist\n\n# Build Pithya and place compressed distribution into ./build/distributions\n./gradlew distZip\n```\n\n(if you have a local gradle installation, you can replace ./gradlew with gradle for faster build)\n \n### Project status\n\nPithya is composed of several independent modules. Here you can find links to them and their current status:\n\n[![Release](https://jitpack.io/v/sybila/ctl-model-checker.svg)](https://jitpack.io/#sybila/ctl-model-checker)\n[![Build Status](https://travis-ci.org/sybila/ctl-model-checker.svg?branch=master)](https://travis-ci.org/sybila/ctl-model-checker)\n[![codecov.io](https://codecov.io/github/sybila/ctl-model-checker/coverage.svg?branch=master)](https://codecov.io/github/sybila/ctl-model-checker?branch=master)\n[CTL Model Checker](https://github.com/sybila/ctl-model-checker)\n\n[![Release](https://jitpack.io/v/sybila/huctl.svg)](https://jitpack.io/#sybila/huctl)\n[![Build Status](https://travis-ci.org/sybila/huctl.svg?branch=master)](https://travis-ci.org/sybila/huctl)\n[![codecov.io](https://codecov.io/github/sybila/huctl/coverage.svg?branch=master)](https://codecov.io/github/sybila/huctl?branch=master)\n[HUCTL Query Parser](https://github.com/sybila/huctl)\n\n[![Release](https://jitpack.io/v/sybila/ode-generator.svg)](https://jitpack.io/#sybila/ode-generator)\n[![Build Status](https://travis-ci.org/sybila/ode-generator.svg?branch=master)](https://travis-ci.org/sybila/ode-generator)\n[![codecov.io](https://codecov.io/github/sybila/ode-generator/coverage.svg?branch=master)](https://codecov.io/github/sybila/ode-generator?branch=master)\n[ODE State Space Generator](https://github.com/sybila/ode-generator)\n\n[![Release](https://jitpack.io/v/sybila/terminal-components.svg)](https://jitpack.io/#sybila/terminal-components)\n[![Build Status](https://travis-ci.org/sybila/terminal-components.svg?branch=master)](https://travis-ci.org/sybila/terminal-components)\n[Terminal Components Analysis](https://github.com/sybila/terminal-components)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsybila%2Fpithya-core","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsybila%2Fpithya-core","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsybila%2Fpithya-core/lists"}