![Cyclone Logo](/_next/static/media/logo.eaa6949d.png)
Cyclone: A Graph-Based Specification Language
Code up your verification tasks using a simple graph notation.
- Graph Oriented Spec – Visualise problems and exchange ideas using graphs.
- Simple Notation – No need to learn complex formalisms before writing your specification.
- Online Editor – Use our newly designed online editor to unlock the full experience of Cyclone.
/* A Simple Graph
* Demonstrate how to use path conditions.
*/
graph G{
/* the set of nodes */
abstract start node S1{}
abstract node S2{}
/* the set of edges */
edge { S1 -> S1 }
edge { S1 -> S2 }
edge { S2 -> S1 }
edge { S2 -> S2 }
goal{
/*
* Find a path (starts from node S1) that
* has a length of 5,
* must not include self-loops,
* and eventually reach S2.
*/
check for 5 condition (!(S1->S1) && !(S2->S2)) reach (S2)
}
}
Using Cyclone
This website is designed by Haoyang Lu.
Cyclone is designed by Hao Wu.
Principles of Programming Research Group, Maynooth University.
Last Updated: Sun Sep 08 2024