Giter Site home page Giter Site logo

ncatanoc / cyber_resilience_python Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 401 KB

The goal of this project is to bring most of Event-B and refinement calculus into Python

Jupyter Notebook 100.00%
cyber-resilience cyber-security formal-methods pyhon formal-verification weakest-preconditions autonomous-vehicles platooning linear-temporal-logic ltl

cyber_resilience_python's Introduction

Cyber Resilience for Python

This repository includes (a) two Event-B models for vehicle platooning, which can be imported from the Rodin IDE version 3.5; (b) a Jupyter Notebook with a formal verification framework in Python with an encoding for safety and liveness properties and a formal model for vehicle platooning manually ported from Event-B.

Event-B models for platooning

Files rodin_platooning.zip and rodin_platooning_simplified.zip are two Rodin project files. They can be imported in Rodin version 3.5 (File, Import, Existing Projects into Workspace).

Unit Testing

File eclipse_single_platooning is an Eclipse project that contains manually-written unit tests for the platooning system. We used the EventB2Java code generator to generate Java code from the Event-B model of platooning.

Jupyter Notebook

File B2Py.ipynb is a formal verification framework for Python. It can be imported from Google Colab or JupyterLab.

cyber_resilience_python's People

Contributors

ncatanoc avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.