MCPcopy Index your code
hub / github.com/CAAL/CAAL

github.com/CAAL/CAAL @v1.0.4

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.0.4 ↗ · + Follow
3,138 symbols 7,926 edges 72 files 896 documented · 29% updated 3y agov1.0.4 · 2023-01-19★ 456 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

CAAL

CAAL (Concurrency Workbench, Aalborg Edition) is a web-based tool for modelling, visualization and verification of concurrent processes expressed in the well-known CCS language (Calculus of Communicating Systems).

The tool allows to edit CCS processes, explore the generated labelled transition systems and verify their correctness via the equivalence checking approach (e.g. strong and weak bisimulation, and strong and weak trace equivalence checking) and model checking approach (determining whether a given process satisfies a HML formulae with recursion, including a generation of distinguishing formulae). Both equivalence and model checking approaches support a visualization of counter examples via equivalence/model checking games.

Try it!

A live demo of CAAL is available at caal.cs.aau.dk

Offline version

Download and unzip the latest release for offline use. Extract the package and run the scripts; there is a script for Windows, MacOs, and Linux. For more information read the README bundled with the package.

For developers

Setup

All you need is to have installed is Node.js, npm, and Python (for building ace). Clone this repository and run the following commands in the root directory of the repository:

npm install
git submodule init
git submodule update
cd modules/ace
npm install

Building

To build CAAL, run the following command in the root directory.

npm run build

This will run the build.sh script, which will compile all of the Typescript files, and compile any potential changes in the Ace submodule.

To compile the project, run all unit tests, and zip all necessary files to run CAAL:

npm run release

The release will be zipped to release.tar.gz. (caal.cs.aau.dk is running the latest release.)

Another option (not recommended) is to compile the release without running tests:

npm run release-notest

Troubleshooting

You might see the following JavaScript errors in the browser console upon running the tool.

ace.js:14346 Uncaught SyntaxError: Unexpected token ILLEGAL
editor.ts:19 Uncaught ReferenceError: ace is not defined

The problem is that some line endings characters are causing issues. One possible method to fix this is to run the following commands.

  1. Delete the directory modules/ace.
  2. Run git config --global core.autocrlf input.
  3. Run the above setup again.

Extension points exported contracts — how you extend this code

Core symbols most depended-on inside this repo

Shape

Method 2,089
Function 607
Class 245
Interface 189
Enum 8

Languages

TypeScript100%
PHP1%

Modules by API surface

lib/ace.d.ts488 symbols
src/workers/lib.webworker.d.ts287 symbols
lib/jquery.d.ts242 symbols
src/ccs/ccs.ts170 symbols
src/ccs/hml.ts146 symbols
src/workers/lib.core.d.ts143 symbols
src/activity/game.ts143 symbols
lib/blob-stream.js133 symbols
lib/peg-0.8.0.min.js123 symbols
src/ccs/util.ts100 symbols
src/gui/property.ts95 symbols
lib/jquery-3.1.1.min.js85 symbols

For agents

$ claude mcp add CAAL \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page