Research and De­velop­ment of
Reactive Systems

Bigraphs ​provide an algebraic and visual foundational modeling framework for representing what is where and how it interacts. Building on this foundation, the Bigraph Toolkit Suite (BTS) offers an extensible software environment for the design, simulation, and verification of abstract reactive systems, across domains such as IoT, cyber-physical, sociotechnical, and biological systems. Within BTS, bigraphs serve as a universal language, enabling interoperability across heterogeneous spatio-temporal models and other dynamic structures of the world.      

Explore Toolkit Components Go to GitHub
graphic bigraph glue

Reactive Systems - For Software Developers

Distributed, networked reactive systems are everywhere: a simple while(true) in a program, game engines responding to input, control circuits regulating temperature, neural networks adjusting to stimuli, or ecosystems balancing through feedback.

BTS provides a general-purpose software environment to use this universal pattern, capturing what a system does, and how it reacts and evolves over time and across contexts, guided by model-driven software engineering principles.

Explore the Bi­graphical Tool­kit Suite

BTS, i.e., any of its constituents listed below, is licensed according to the terms of the Apache License, Version 2.0.

Visit the whole Bigraph Toolkit Suite at GitHub

Learn

Project Template

Starter template (Gradle/Maven) to jumpstart Bigraph Framework projects.

Take me there!

Getting Started

Using Bigraph Framework to learn the core concepts behind it.

Take me there!

Tutorials

Hands-on Java tutorials for the Bigraph Framework.


Take me there!

Bigraph Vending Machine (Java)

Java implementation of the bigraphical vending machine.

Take me there!

Bigraph Vending Machine (Slides)

Explanatory slide set of the bigraphical vending machine.

Take me there!

BiGGer (Slides)

Accompanying slide set explaining how to simulate bigraphs using GrGen.NET with the BiGGer tool.

Take me there!

BDSL (User Manual)

The user manual of a bigraphical domain-specific language.

Take me there!

Different paths, one goal

BTS unifies diverse modeling and programming approaches through a single, shared metamodel. This common foundation ensures seamless interoperability, no matter which approach is chosen.

graphic level of abstraction
  • Uniform XMI Representation:  All model files use the XMI standard for XML-based metadata exchange, ensuring seamless interoperability across every API.
  • Intuitive Visual Modeling: ​Interactive tools make creating and editing bigraph models more accessible.
  • Powerful Java API: ​The Bigraph Framework is more flexibility through a programmatic interface.

Combine 

BTS APIs span multiple levels of abstraction for building bigraphical models and programs, which are fully interoperable. Applications are never locked into a single abstraction: multiple abstractions can be seamlessly combined.

graphic metamodel universal interface
  • Metamodeling:  BTS defines a family of metamodels to ensure structural consistency, from high-level concepts to low-level execution details.
  • Verification:​ BTS supports mathematical reasoning about parallel, reactive systems, enabling analysis of behaviors, safety properties, and optimizations.
  • Interoperability: BTS supports rich toolchains and model exchange between many formats and frameworks.

"Both the kind and granularity of a problem suggest the tools to best work with in order to solve the problem."