{"id":19311653,"url":"https://github.com/rpigor/librobdd","last_synced_at":"2025-10-08T09:05:25.292Z","repository":{"id":208853302,"uuid":"717170146","full_name":"rpigor/librobdd","owner":"rpigor","description":"Minimal ROBDD library","archived":false,"fork":false,"pushed_at":"2024-03-04T11:07:49.000Z","size":9549,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-01-06T02:24:16.468Z","etag":null,"topics":["binary-decision-diagrams","decision-trees","formal-verification","robdd"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"RPTU-EIS/VDSProject","license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rpigor.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,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2023-11-10T18:08:23.000Z","updated_at":"2024-12-23T09:23:05.000Z","dependencies_parsed_at":"2024-03-04T12:42:24.737Z","dependency_job_id":null,"html_url":"https://github.com/rpigor/librobdd","commit_stats":null,"previous_names":["rpigor/vdsproject_23group7","rpigor/librobdd"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rpigor%2Flibrobdd","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rpigor%2Flibrobdd/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rpigor%2Flibrobdd/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rpigor%2Flibrobdd/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rpigor","download_url":"https://codeload.github.com/rpigor/librobdd/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240415216,"owners_count":19797599,"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":["binary-decision-diagrams","decision-trees","formal-verification","robdd"],"created_at":"2024-11-10T00:29:41.215Z","updated_at":"2025-10-08T09:05:20.247Z","avatar_url":"https://github.com/rpigor.png","language":"C++","readme":"\u003cdiv id=\"top\"\u003e\u003c/div\u003e\n\n\u003c!-- PROJECT SHIELDS --\u003e\n[![Contributors][contributors-shield]][contributors-url]\n[![Stargazers][stars-shield]][stars-url]\n[![Issues][issues-shield]][issues-url]\n\n\u003c!-- PROJECT LOGO --\u003e\n\u003cbr /\u003e\n\u003cdiv align=\"center\"\u003e\n  \u003ch3 align=\"center\"\u003e\n  ROBDD library\n  \u003c/h3\u003e\n\n  \u003cp align=\"center\"\u003e\n    Verification of Digital Systems class project\n    \u003cbr /\u003e\n    Winter Semester 2023/2024\n    \u003cbr /\u003e\n    Group #7\n  \u003c/p\u003e\n\u003c/div\u003e\n\n\u003cbr /\u003e\n\u003cbr /\u003e\n\n\u003c!-- TABLE OF CONTENTS --\u003e\n\u003cdetails\u003e\n  \u003csummary\u003eTable of Contents\u003c/summary\u003e\n  \u003col\u003e\n    \u003cli\u003e\n      \u003ca href=\"#about-the-project\"\u003eAbout the project\u003c/a\u003e\n    \u003c/li\u003e\n    \u003cli\u003e\n      \u003ca href=\"#getting-started\"\u003eGetting started\u003c/a\u003e\n      \u003cul\u003e\n        \u003cli\u003e\u003ca href=\"#dependencies\"\u003eDependencies\u003c/a\u003e\u003c/li\u003e\n        \u003cli\u003e\u003ca href=\"#installation\"\u003eInstallation\u003c/a\u003e\u003c/li\u003e\n      \u003c/ul\u003e\n    \u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#acknowledgments\"\u003eAcknowledgments\u003c/a\u003e\u003c/li\u003e\n  \u003c/ol\u003e\n\u003c/details\u003e\n\n\u003c!-- ABOUT THE PROJECT --\u003e\n## About the project\nThis is a minimal Reduced Ordered Binary Decision Diagram (ROBDD) package written in C++. This package implements the fundamental manipulation methods for BDDs as they were introduced in the lecture Verification of Digital Systems by Prof. Kunz. The package was implemented using the Test Driven Development paradigm presented by Dr. Wedler.\n\nThe project is split into three parts.\n\n- Implementation of the basic functionality of the BDD package using the TDD methodology. This is the biggest part of the project.\n\n- Improvement of the performance of the implementation via provided benchmarks.\n\n- Extending the existing implementation by a practical application of BDD. Using BDDs, it is possible to symbolically represent a state-space and perform a reachability analysis.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- GETTING STARTED --\u003e\n## Getting started\n\n### Dependencies\nList of dependencies required to compile the project:\n\n* Boost 1.81 or higher (`libboost-all-dev`)\n* Graphviz (`graphviz-dev`)\n* GoogleTest (`libgtest-dev`)\n\nBe aware that this project uses `boost::unordered_flat_map` and thus requires Boost 1.81 or higher, which is not currently available in Ubuntu's official repository. If you don't have access to this version of the library, you can use `boost::unordered_map` with minor adjustments.\n\n### Installation\n1. Install the dependencies\n\n2. Clone the repo\n   ```sh\n   git clone https://github.com/rpigor/librobdd\n   ```\n**Installation with CLion**\n\nCLion comes with CMake.\n\n3. Open CLion and open librobdd/CMakeLists.txt as a project\n\n4. Select your target and build the project\n\n**Installation without CLion**\n\n3. Navigate to the project folder\n    ```sh\n    cd librobdd\n    ```\n4. Invoke CMake to create the build directory and generate makefiles\n    ```sh\n    cmake -S . -B build\n    ```\n5. Invoke CMake to build the project\n    ```sh\n    cmake --build build\n    ```\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- ACKNOWLEDGMENTS --\u003e\n## Acknowledgments\nThank you Veli Durmuşcan, Shreya Vithal Kulhalli and Osama Omar Youssif Ayoub for the work on this README.md.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- MARKDOWN LINKS \u0026 IMAGES --\u003e\n\u003c!-- https://www.markdownguide.org/basic-syntax/#reference-style-links --\u003e\n[contributors-shield]: https://img.shields.io/github/contributors/rpigor/librobdd.svg?style=for-the-badge\n[contributors-url]: https://github.com/rpigor/librobdd/graphs/contributors\n[stars-shield]: https://img.shields.io/github/stars/rpigor/librobdd.svg?style=for-the-badge\n[stars-url]: https://github.com/rpigor/librobdd/stargazers\n[issues-shield]: https://img.shields.io/github/issues/rpigor/librobdd.svg?style=for-the-badge\n[issues-url]: https://github.com/rpigor/librobdd/issues\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frpigor%2Flibrobdd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frpigor%2Flibrobdd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frpigor%2Flibrobdd/lists"}