{"id":13439496,"url":"https://github.com/smackers/smack","last_synced_at":"2025-05-15T15:04:21.272Z","repository":{"id":4123002,"uuid":"5234086","full_name":"smackers/smack","owner":"smackers","description":"SMACK Software Verifier and Verification Toolchain","archived":false,"fork":false,"pushed_at":"2025-04-17T21:30:29.000Z","size":8031,"stargazers_count":436,"open_issues_count":110,"forks_count":83,"subscribers_count":23,"default_branch":"main","last_synced_at":"2025-04-18T11:51:34.617Z","etag":null,"topics":["c","c-plus-plus","llvm","rust","smt","verification","verification-toolchain","verifier"],"latest_commit_sha":null,"homepage":"http://smackers.github.io","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"jh00nbr/Routerhunter-2.0","license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/smackers.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"docs/code-of-conduct.md","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}},"created_at":"2012-07-30T15:32:57.000Z","updated_at":"2025-04-16T13:53:37.000Z","dependencies_parsed_at":"2023-07-06T10:16:39.382Z","dependency_job_id":"d9db66c6-d827-44a0-a277-0823c2c4f051","html_url":"https://github.com/smackers/smack","commit_stats":{"total_commits":2594,"total_committers":35,"mean_commits":74.11428571428571,"dds":0.5867386276021589,"last_synced_commit":"c7d0694f08cefb422ebcc67c23824727b06b370e"},"previous_names":[],"tags_count":32,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smackers%2Fsmack","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smackers%2Fsmack/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smackers%2Fsmack/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smackers%2Fsmack/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/smackers","download_url":"https://codeload.github.com/smackers/smack/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254364270,"owners_count":22058878,"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":["c","c-plus-plus","llvm","rust","smt","verification","verification-toolchain","verifier"],"created_at":"2024-07-31T03:01:14.396Z","updated_at":"2025-05-15T15:04:21.244Z","avatar_url":"https://github.com/smackers.png","language":"C","funding_links":[],"categories":["C","Tools","工具","Starchart"],"sub_categories":["YAML"],"readme":"[![main branch ci status](https://github.com/smackers/smack/workflows/SMACK%20CI/badge.svg?branch=main)](https://github.com/smackers/smack/actions)\n[![develop branch ci status](https://github.com/smackers/smack/workflows/SMACK%20CI/badge.svg?branch=develop)](https://github.com/smackers/smack/actions)\n\n\u003cimg src=\"docs/smack-logo.png\" width=400 alt=\"SMACK Logo\" align=\"right\"\u003e\n\nSMACK is both a *modular software verification toolchain* and a\n*self-contained software verifier*. It can be used to verify the assertions\nin its input programs. In its default mode, assertions are verified up to a\ngiven bound on loop iterations and recursion depth; it contains experimental\nsupport for unbounded verification as well. SMACK handles complicated feature\nof the C language, including dynamic memory allocation, pointer arithmetic, and\nbitwise operations.\n\nUnder the hood, SMACK is a translator from the [LLVM](http://www.llvm.org)\ncompiler's popular intermediate representation (IR) into the\n[Boogie](https://github.com/boogie-org/boogie) intermediate verification language (IVL).\nSourcing LLVM IR exploits an increasing number of compiler front-ends,\noptimizations, and analyses. Currently SMACK only supports the C language via\nthe [Clang](http://clang.llvm.org) compiler, though we are working on providing\nsupport for additional languages. Targeting Boogie exploits a canonical\nplatform which simplifies the implementation of algorithms for verification,\nmodel checking, and abstract interpretation. Currently, SMACK leverages the\n[Boogie](https://github.com/boogie-org/boogie) and [Corral](https://github.com/boogie-org/corral)\nverifiers.\n\nSee below for system requirements, installation, usage, and everything else.\n\n*We are very interested in your experience using SMACK. Please do contact\n[Zvonimir](mailto:zvonimir@cs.utah.edu) or\n[Michael](mailto:michael.emmi@gmail.com) with any possible feedback.*\n\n\n### Support\n\n* For general questions, first consult the [FAQ](docs/faq.md).\n\n* If something is otherwise broken or missing, open an [issue](https://github.com/smackers/smack/issues).\n\n* As a last resort, send mail to \n  [Michael](mailto:michael.emmi@gmail.com), [Zvonimir](mailto:zvonimir@cs.utah.edu), or both.\n\n* To stay informed about updates, you can watch SMACK's Github page.\n\n\n### Acknowledgements\n\nSMACK project has been partially supported by funding from the National Science\nFoundation, VMware, Amazon, and Microsoft Research. We also rely on University of\nUtah's [Emulab](http://www.emulab.net/) infrastructure for extensive\nbenchmarking of SMACK.\n\n\n### Table of Contents\n\n1. [System Requirements and Installation](docs/installation.md)\n1. [Running SMACK](docs/running.md)\n1. [Demos](docs/demos.md)\n1. [FAQ](docs/faq.md)\n1. [Inline Boogie Code](docs/boogie-code.md)\n1. [Contribution Guidelines](CONTRIBUTING.md)\n1. [Projects](docs/projects.md)\n1. [Publications](docs/publications.md)\n1. [People](docs/people.md)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsmackers%2Fsmack","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsmackers%2Fsmack","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsmackers%2Fsmack/lists"}