B Abstrakte Syntax
| program |
::= |
chans |
: |
chandec list |
| |
|
procs |
: |
process list |
| process |
::= |
vars |
: |
vardec list |
| |
|
body |
: |
transition list |
| transition |
::= |
source |
: |
astate |
| |
|
target |
: |
astate |
| |
|
lab |
: |
label |
| label |
::= |
guard |
: |
expr |
| |
|
act |
: |
action |
| action |
::= |
|
|
tau |
| |
| |
|
|
input_action |
| |
| |
|
|
output_action |
| |
| |
|
|
assign_action |
| astate |
::= |
|
|
initstate |
| |
| |
|
|
state |
| state |
::= |
name |
: |
string |
| |
|
assert |
: |
expr |
| initstate |
::= |
name |
: |
string |
| |
|
assert |
: |
expr |
| expr |
::= |
|
|
b_expr |
| |
| |
|
|
u_expr |
| |
| |
|
|
constval |
| |
| |
|
|
variable |
| b_expr |
: |
left_expr |
: |
expr |
| |
|
right_expr |
: |
expr |
| |
|
op |
: |
operand |
| u_expr |
: |
sub_expr |
: |
expr |
| |
|
op |
: |
operand |
| operand |
::= |
PLUS
|MINUS
|TIMES
|DIV |
| |
| |
AND
|OR
|NEG |
| input_action |
::= |
chan |
: |
string |
| |
|
var |
: |
variable |
| |
| |
|
| output_action |
::= |
chan |
: |
string |
| |
|
val |
: |
expr |
| assign_action |
::= |
var |
: |
variable |
| |
| |
val |
: |
expr |
| vardec |
::= |
var |
: |
variable |
| chandec |
::= |
chan |
: |
string |
| variable |
::= |
name |
: |
string |
| constval |
::= |
|
|
b_val |
| |
| |
|
|
i_val |
| b_val |
::= |
|
|
bool |
| i_val |
::= |
|
|
int |
©Public License