{"id":22131817,"url":"https://github.com/distributedcomponents/infseqext","last_synced_at":"2025-07-25T19:32:28.275Z","repository":{"id":13395000,"uuid":"74302094","full_name":"DistributedComponents/InfSeqExt","owner":"DistributedComponents","description":"A Coq library for reasoning (co)inductively on infinite sequences using LTL-like modal operators","archived":false,"fork":false,"pushed_at":"2023-01-07T12:58:58.000Z","size":91,"stargazers_count":13,"open_issues_count":1,"forks_count":4,"subscribers_count":3,"default_branch":"master","last_synced_at":"2023-08-11T00:17:39.885Z","etag":null,"topics":["coq","coq-library","ltl","modal-logic","proof","temporal-logic"],"latest_commit_sha":null,"homepage":"","language":"Coq","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DistributedComponents.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-11-20T20:58:15.000Z","updated_at":"2023-08-11T00:17:39.886Z","dependencies_parsed_at":"2023-01-11T18:34:53.922Z","dependency_job_id":null,"html_url":"https://github.com/DistributedComponents/InfSeqExt","commit_stats":null,"previous_names":[],"tags_count":2,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DistributedComponents%2FInfSeqExt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DistributedComponents%2FInfSeqExt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DistributedComponents%2FInfSeqExt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DistributedComponents%2FInfSeqExt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DistributedComponents","download_url":"https://codeload.github.com/DistributedComponents/InfSeqExt/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":227613550,"owners_count":17793926,"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":["coq","coq-library","ltl","modal-logic","proof","temporal-logic"],"created_at":"2024-12-01T18:37:46.715Z","updated_at":"2024-12-01T18:37:47.358Z","avatar_url":"https://github.com/DistributedComponents.png","language":"Coq","readme":"# InfSeqExt\n\n[![Docker CI][docker-action-shield]][docker-action-link]\n\n[docker-action-shield]: https://github.com/DistributedComponents/InfSeqExt/workflows/Docker%20CI/badge.svg?branch=master\n[docker-action-link]: https://github.com/DistributedComponents/InfSeqExt/actions?query=workflow:\"Docker%20CI\"\n\n\n\n\nCoq library for reasoning inductively and coinductively on infinite sequences,\nusing modal operators similar to those in linear temporal logic (LTL).\n\n## Meta\n\n- Author(s):\n  - Yuxin Deng (initial)\n  - Jean-Francois Monin (initial)\n  - Karl Palmskog\n  - Ryan Doenges\n- Compatible Coq versions: 8.9 or later\n- Additional dependencies: none\n- Coq namespace: `InfSeqExt`\n- Related publication(s): none\n\n## Building and installation instructions\n\nThe easiest way to install InfSeqExt is via\n[OPAM](https://opam.ocaml.org/doc/Install.html):\n```shell\nopam repo add coq-extra-dev https://coq.inria.fr/opam/extra-dev\nopam install coq-inf-seq-ext\n```\n\nTo instead build and install manually, do:\n```shell\ngit clone https://github.com/DistributedComponents/InfSeqExt.git\ncd InfSeqExt\nmake   # or make -j \u003cnumber-of-cores-on-your-machine\u003e\nmake install\n```\n\n## Documentation\n\nInfSeqExt is based on an [earlier library][infseq-paper] by Deng and Monin.\nIt is intended as a more comprehensive alternative to [Streams][streams-link]\nin the Coq standard library. In particular, InfSeqExt provides machinery commonly\nused when reasoning about temporal properties of system execution traces, and\nfollows the modal operator [name conventions][spin-ltl-link] used in the Spin model checker.\n\n### Files\n\n- `infseq.v`: main definitions and results\n  - coinductive definition of infinite sequences\n  - definitions and notations for modal operators and connectors\n      - basic modal operators: `now`, `next`, `consecutive`, `always1`, `always`, `weak_until`, `until`, `release`, `eventually`\n      - composite modal operators: `inf_often`, `continuously`\n      - modal connectors: `impl_tl` (`-\u003e_`), `and_tl` (`/\\_`), `or_tl` (`\\/_`), `not_tl` (`~_`)\n  - lemmas about modal operators and connectors\n  - tactics\n- `map.v`: corecursive definitions of the `map` and `zip` functions for use on infinite sequences, and related lemmas\n- `exteq.v`: coinductive definition of extensional equality (`exteq`) for infinite sequences, and related lemmas\n- `subseq.v`: coinductive definitions of infinite subsequences and related lemmas\n- `classical.v`: lemmas about modal operators and connectors when assuming classical logic (excluded middle)\n\n### Related libraries\n\nInfSeqExt has some overlap with the less exhaustive [CTLTCTL][ctltctl-link]\nand [LTL][ltl-link] Coq contributions, which provide similar machinery.\nIn contrast to CTLTCTL and LTL, InfSeqExt does not provide a definition\nof traces following some labeled reduction relation, nor an explicit\nnotion of time. Fairness is also left up to library users to define.\n\n[infseq-paper]: http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=5198503\n[streams-link]: https://coq.inria.fr/library/Coq.Lists.Streams.html\n[spin-ltl-link]: http://spinroot.com/spin/Man/ltl.html\n[ctltctl-link]: https://github.com/coq-contribs/ctltctl\n[ltl-link]: https://github.com/coq-contribs/ltl\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdistributedcomponents%2Finfseqext","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdistributedcomponents%2Finfseqext","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdistributedcomponents%2Finfseqext/lists"}