The Computational Modeling Workbench

The Computational Modeling Workbench (CMWB) is an educational tool and experimental playground for some of the most basic models of computation:

  • Finite Automata
  • Regular Expressions
  • Linear Temporal Logic
  • Discrete-Time Markov Chains
  • Timed Dataflow
  • Max-plus-linear Algebra

You can access the CMWB here.

There is also a version of the CMWB that can be run locally using docker containers. It is available on GitHub at: https://github.com/Model-Based-Design-Lab/cmwb.

dataflow graph LittleXCPS {

    inputs inBottom, inTop
    outputs out

    // inputs
    inBottom -------> InB
    inTop    -------> InT

    // input coordination tops and bottoms
    InB[0]   -------> Pass1 
    Pass1[1] -- 1 --> InT
    InT[0]   -------> Pass2 
    Pass2[1] -------> InB

    // bottom piece pipeline
    InB      -------> BB   
    BB[4]    -------> Rot  
    Rot[2]   -- 1 --> PaP  
    PaP[3]   -------> Exit 
    BB       -------> Exit
    PaP      -------> Rot

    // top piece pipeline
    InT      -------> BT
    BT[7]    -------> PaP

    // the output

    Exit[6] ---> out
}

input signals
inBottoms = [0, -inf, -inf, -inf, -inf]  
inTops = [0, -inf, -inf, -inf, -inf ]
Analysis Output
The throughput analysis of the graph LittleXCPS is as follows.
Throughput:
0.2