{"repo":"seahorn/crab","free":true,"listed":false,"github":"https://github.com/seahorn/crab","clone":"git clone https://github.com/seahorn/crab.git","description":"A library for building abstract interpretation-based analyses.","language":"C++","stars":253,"topics":["static-analysis","abstract-interpretation","program-analysis","invariants","verification"],"license":"Apache-2.0","category":"dev-tools","readme_excerpt":"Crab: A C++ Library for Building Program Static Analyses # Crab is a C++ library for building program static analyses based on Abstract Interpretation. Crab provides a rich set of abstract domains, Kleene-based fixpoint solvers, as well as different analyses such as dataflow, inter-procedural and backward. The design of Crab is quite modular so that it is easy to plugin new abstract domains and solvers or build new analyses. Crab abstract domains can reason about memory contents, C-like arrays and numerical properties. Crab uses efficient implementations of popular numerical domains such as Zones and Octagons and novel domains to reason, for instance, about symbolic terms (aka uninterpreted functions). Crab also implements popular non-relational domains such as interval or congruences using efficient environment maps, and allows the combination of arbitrary domains via standard reduced product constructions. Crab also provides non-convex domains such as specialized disjunctive intervals called Boxes based on linear decision diagrams and a more general value partitioning strategy that lifts an arbitrary domain to an over-approximation of its disjunction completion. In addition to these domains, all developed by Crab authors, the Crab library integrates popular abstract domain libraries such as Apron, Elina, and PPLite. Crab provides the state-of-the-art interleaved fixpoint solver that uses Bourdoncle's Weak Topological Ordering to select the set of widening points. To mitigat","default_branch":null,"files":null,"tree":[],"storefront":"/r/seahorn","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/seahorn/crab/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}