{"id":16976253,"url":"https://github.com/johnyf/contract_maker","last_synced_at":"2025-03-21T21:21:58.306Z","repository":{"id":72637407,"uuid":"43189497","full_name":"johnyf/contract_maker","owner":"johnyf","description":"Construction of GR(1) contracts for distributed systems (research prototype): \u003chttps://doi.org/10.1109/JPROC.2018.2834926\u003e and \u003chttps://doi.org/10.1109/ACC.2016.7525009\u003e","archived":false,"fork":false,"pushed_at":"2024-10-22T09:00:40.000Z","size":52,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"dev","last_synced_at":"2025-01-26T15:51:28.612Z","etag":null,"topics":["contracts","control-systems","games","symbolic"],"latest_commit_sha":null,"homepage":"https://resolver.caltech.edu/CaltechAUTHORS:20180920-104049492","language":"Python","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/johnyf.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2015-09-26T03:08:27.000Z","updated_at":"2023-09-24T22:55:05.000Z","dependencies_parsed_at":null,"dependency_job_id":"5274a886-0792-4daf-ba41-c5267be6a63b","html_url":"https://github.com/johnyf/contract_maker","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johnyf%2Fcontract_maker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johnyf%2Fcontract_maker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johnyf%2Fcontract_maker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johnyf%2Fcontract_maker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/johnyf","download_url":"https://codeload.github.com/johnyf/contract_maker/tar.gz/refs/heads/dev","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244869907,"owners_count":20523771,"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","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":["contracts","control-systems","games","symbolic"],"created_at":"2024-10-14T01:25:28.731Z","updated_at":"2025-03-21T21:21:58.280Z","avatar_url":"https://github.com/johnyf.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"About\n=====\n\nConstruction of temporal logic contracts for distributed systems,\nstarting from GR(1) specifications.\nThis implementation is experimental, so expect changes.\n\n\nInstallation\n============\n\nThe dependencies are listed in the file `requirements.txt`. Installing a\nsuitable version of the package `dd` can be done as follows.\n\n```shell\npip uninstall --yes dd\npip install cython\npip download --no-dependencies dd==0.5.1\ntar xzf dd-*.tar.gz\ncd dd-*/\nexport CUDD_VERSION=3.0.0\nexport CUDD_GZ=cudd-${CUDD_VERSION}.tar.gz\ncurl -sSL https://sourceforge.net/projects/cudd-mirror/files/${CUDD_GZ}/download \u003e ${CUDD_GZ}\ntar -xzf ${CUDD_GZ}\npython -c 'from download import make_cudd; make_cudd()'\npython setup.py install --cudd\n```\n\nThese steps will download and build the C library CUDD, and then build and\ninstall `dd`, including the Cython module `dd.cudd`. The steps are based on\n[this `.travis.yml`](https://github.com/tulip-control/tulip-control/blob/ce54897c242689f45ad33650f157bf1805b35ed6/.travis.yml#L45-L56).\nThe repository `contract_maker` requires `dd==0.5.1` (as listed in the file\n`requirements.txt`), and the above steps correspond to that version of `dd`.\n\n\nReferences\n==========\n\nFilippidis I., Murray R.M.\u003cbr\u003e\n  [Layering assume-guarantee contracts for hierarchical system design][1]\u003cbr\u003e\n  Proceedings of the IEEE\u003cbr\u003e\n  Volume 106, Number 9, pages 1616--1654, 2018\u003cbr\u003e\n  [DOI][2]\n\n\nFilippidis I., Murray R.M.\u003cbr\u003e\n  [Symbolic construction of GR(1) contracts for systems with full information][3]\u003cbr\u003e\n  The 2016 American Control Conference (ACC)\u003cbr\u003e\n  Boston, MA, July 6--8, 2016\u003cbr\u003e\n  pages 782--789, [DOI][4]\n\n\nFilippidis I., Murray R.M.\u003cbr\u003e\n  [Symbolic construction of GR(1) contracts for synchronous systems with full information][5]\u003cbr\u003e\n  ArXiv CoRR abs/1508.02705, August, 2015\u003cbr\u003e\n  (technical report with proofs and more details)\n\n\nLicense\n=======\n[BSD-3](http://opensource.org/licenses/BSD-3-Clause), see file `LICENSE`.\n\n[1]: https://resolver.caltech.edu/CaltechAUTHORS:20180920-104049492\n[2]: https://doi.org/10.1109/JPROC.2018.2834926\n[3]: https://resolver.caltech.edu/CaltechCDSTR:2016.003\n[4]: https://doi.org/10.1109/ACC.2016.7525009\n[5]: https://arxiv.org/abs/1508.02705\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjohnyf%2Fcontract_maker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjohnyf%2Fcontract_maker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjohnyf%2Fcontract_maker/lists"}