parapluu/Concuerror

Concuerror is a stateless model checking tool for Erlang programs.

Erlang

349

2,395 commits

updated Jun 24, 2026

See the code

README

Hex Docs Tests Codecov

Concuerror

Concuerror is a stateless model checking tool for Erlang programs. It can be used to systematically test programs for concurrency errors, detect and report errors that only occur on few, specific schedulings or verify their absence.

Visit the website for documentation, examples, tutorials, publications, and many more!

Supported OTP Releases

Erlang Versions

How to build

  • Compile : make
  • Build documentation : make edoc
  • Run the testsuites : make tests tests-real tests-unit
  • Run Dialyzer : make dialyzer
  • Run Elvis : make lint
  • Check code coverage : make cover
  • Cleanup : make clean

The preferred way to start concuerror is via the bin/concuerror escript.

Is there bash_completion?

Yes!

Is there a changelog?

Yes!

How to prepare for a release?

Read this

Copyright (c) 2014-2023, Stavros Aronis (aronisstav@gmail.com) and Kostis Sagonas (kostis@cs.ntua.gr). All rights reserved

Copyright (c) 2011-2013, Alkis Gotovos (el3ctrologos@hotmail.com), Maria Christakis (mchrista@softlab.ntua.gr) and Kostis Sagonas (kostis@cs.ntua.gr). All rights reserved.

Concuerror is distributed under the Simplified BSD License. Details can be found in the LICENSE file.

automatic
codecov
codecov-badge
concuerror
concurrent-erlang-programs
concurrent-programming
debugging
erlang
erlang-programs
erlang-versions-badge
model-checker
model-checking
otp
stateless-model-checking
systematic-testing
testing
tool
travis-badge
verification

Contributors

aronisstav

1,671 commits

3lectrologos

264 commits

mariachris

169 commits

iliastsi

147 commits

parapluu/Concuerror

Concuerror is a stateless model checking tool for Erlang programs.

Erlang

349

2,395 commits

updated Jun 24, 2026

See the code

README

Hex Docs Tests Codecov

Concuerror

Concuerror is a stateless model checking tool for Erlang programs. It can be used to systematically test programs for concurrency errors, detect and report errors that only occur on few, specific schedulings or verify their absence.

Visit the website for documentation, examples, tutorials, publications, and many more!

Supported OTP Releases

Erlang Versions

How to build

  • Compile : make
  • Build documentation : make edoc
  • Run the testsuites : make tests tests-real tests-unit
  • Run Dialyzer : make dialyzer
  • Run Elvis : make lint
  • Check code coverage : make cover
  • Cleanup : make clean

The preferred way to start concuerror is via the bin/concuerror escript.

Is there bash_completion?

Yes!

Is there a changelog?

Yes!

How to prepare for a release?

Read this

Copyright (c) 2014-2023, Stavros Aronis (aronisstav@gmail.com) and Kostis Sagonas (kostis@cs.ntua.gr). All rights reserved

Copyright (c) 2011-2013, Alkis Gotovos (el3ctrologos@hotmail.com), Maria Christakis (mchrista@softlab.ntua.gr) and Kostis Sagonas (kostis@cs.ntua.gr). All rights reserved.

Concuerror is distributed under the Simplified BSD License. Details can be found in the LICENSE file.

automatic
codecov
codecov-badge
concuerror
concurrent-erlang-programs
concurrent-programming
debugging
erlang
erlang-programs
erlang-versions-badge
model-checker
model-checking
otp
stateless-model-checking
systematic-testing
testing
tool
travis-badge
verification

Contributors

aronisstav

1,671 commits

3lectrologos

264 commits

mariachris

169 commits

iliastsi

147 commits

Languages

Erlang

96.3%

Shell

2.6%