Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | Both sides next revision | ||
alvis:introduction [2017/01/11 22:37] marcin removed | — (current) | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Introduction ====== | ||
- | **Alvis** is a **formal modelling language** being developed at [[http:// | ||
- | |||
- | Alvis uses a very small number of graphical items and language statements. Our goal was to provide a flexible language with a small number of concepts, but with a possibility of a formal verification of models. An Alvis model semantic finds expression in a LTS graph (//labelled transition system//). Execution of any language statement is expressed as a transition between formally defined states of such a model. | ||
- | |||
- | The key concept of Alvis is **agent** that denotes any distinguished part of the system under consideration with defined identity persisting in time. An Alvis model is a system of agents that usually run concurrently, | ||
- | |||
- | An Alvis model is composed of three layers: | ||
- | |||
- | - **Graphical layer** is used to define data and control flow among distinguished parts of the system under consideration that are called **agents**. The layer takes the form of a hierarchical graph called **communication diagram** and supports both // | ||
- | - **Code layer** is used to describe the behaviour of individual agents. It uses both **Haskell** functional programming language and original **Alvis statements**. | ||
- | - **System layer** that is predefined and provides information about a running environment i.e. the hardware and/or operating system. It is necessary for the simulation and verification purposes. | ||
- | |||
- | **[[: |