All Projects → uuverifiers → eldarica

uuverifiers / eldarica

Licence: other
The Eldarica model checker

Programming Languages

scala
5932 projects
SMT
39 projects
shell
77523 projects
Lex
420 projects
Makefile
30231 projects
c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to eldarica

munta
Fully verified model checker for realtime systems
Stars: ✭ 14 (-65.85%)
Mutual labels:  verification, model-checker
intrepid
Intrepyd Model Checker
Stars: ✭ 14 (-65.85%)
Mutual labels:  smt-solver, model-checker
wal
WAL enables programmable waveform analysis.
Stars: ✭ 36 (-12.2%)
Mutual labels:  verification
cafeobj
Development of the CafeOBJ interpreter
Stars: ✭ 25 (-39.02%)
Mutual labels:  verification
IDVerification
"Very simple but works well" Computer Vision based ID verification solution provided by LibraX.
Stars: ✭ 44 (+7.32%)
Mutual labels:  verification
vericert
A formally verified high-level synthesis tool based on CompCert and written in Coq.
Stars: ✭ 63 (+53.66%)
Mutual labels:  verification
move
Home of the Move programming language
Stars: ✭ 125 (+204.88%)
Mutual labels:  verification
libvata
VATA Tree Automata Library
Stars: ✭ 23 (-43.9%)
Mutual labels:  verification
pcievhost
PCIe (1.0a to 2.0) Virtual host model for verilog
Stars: ✭ 22 (-46.34%)
Mutual labels:  verification
captcha-generator
An NPM package to generate captcha images that can be used in Discord bots or various other projects
Stars: ✭ 45 (+9.76%)
Mutual labels:  verification
yoti-php-sdk
The PHP SDK for interacting with the Yoti Platform
Stars: ✭ 22 (-46.34%)
Mutual labels:  verification
SyReNN
SyReNN: Symbolic Representations for Neural Networks
Stars: ✭ 35 (-14.63%)
Mutual labels:  verification
mCRL2
The Git repository for the mCRL2 toolset.
Stars: ✭ 67 (+63.41%)
Mutual labels:  model-checker
VerificationCodeBox
验证码 && 密码 校验View(类似于支付宝、网商银行等密码校验框)
Stars: ✭ 25 (-39.02%)
Mutual labels:  verification
nnv
Neural Network Verification Software Tool
Stars: ✭ 71 (+73.17%)
Mutual labels:  verification
vigor
Main repository of the Vigor NF verification project.
Stars: ✭ 40 (-2.44%)
Mutual labels:  verification
in3-legacy
[Deprecated] Typescript-version of the IN3 client.
Stars: ✭ 69 (+68.29%)
Mutual labels:  verification
fastapi-cloudauth
Simple integration between FastAPI and cloud authentication services (AWS Cognito, Auth0, Firebase Authentication).
Stars: ✭ 221 (+439.02%)
Mutual labels:  verification
Unload
An advanced automatic speedrun load time remover for community verifiers.
Stars: ✭ 20 (-51.22%)
Mutual labels:  verification
z3 tutorial
Jupyter notebooks for tutorial on the Z3 SMT solver
Stars: ✭ 117 (+185.37%)
Mutual labels:  smt-solver

Eldarica

Eldarica is a model checker for Horn clauses, Numerical Transition Systems, and software programs. Inputs can be read in a variety of formats, including SMT-LIB 2 and Prolog for Horn clauses, and fragments of Scala and C for software programs, and are analysed using a variant of the Counterexample-Guided Abstraction Refinement (CEGAR) method. Eldarica is fast and includes sophisticated interpolation-based techniques for synthesising new predicates for CEGAR, enabling it to solve a wide range of verification problems.

The Eldarica C parser accepts programs augmented with various primitives from the timed automata world: supporting concurrency, clocks, communication channels, as well as analysis of systems with an unbounded number of processes (parameterised analysis).

There is also a variant of Eldarica for analysing Petri nets: http://www.philipp.ruemmer.org/eldarica-p.shtml

Eldarica has been developed by Hossein Hojjat and Philipp Ruemmer, with further contributions by Zafer Esen, Filip Konecny, and Pavle Subotic.

There is a simple web interface to experiment with the C interface of Eldarica: http://logicrunch.it.uu.se:4096/~wv/eldarica

The latest nightly build is available from: http://logicrunch.it.uu.se:4096/~wv/eldarica/eldarica-bin-nightly.zip

Documentation

You can either download a binary release of Eldarica, or compile the Scala code yourself. Since Eldarica uses sbt, compilation is quite simple: you just need sbt installed on your machine, and then type sbt assembly to download the compiler, all required libraries, and produce a binary of Eldarica.

After compilation (or downloading a binary release), calling Eldarica is normally as easy as saying

./eld regression-tests/horn-smt-lib/rate_limiter.c.nts.smt2

When using a binary release, one can instead also call

java -jar target/scala-2.*/Eldarica-assembly*.jar regression-tests/horn-smt-lib/rate_limiter.c.nts.smt2

A set of examples is provided on http://logicrunch.it.uu.se:4096/~wv/eldarica, and included in the distributions directory regression-tests.

You can use the script eld-client instead of eld in order to run Eldarica in a server-client mode, which significantly speeds up processing of multiple problems.

A full list of options can be obtained by calling ./eld -h.
In particular, the options -disj, -abstract, -stac can be used to control predicate generation.

Papers

Related Links

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].