From f5a7d857c61fd68da046c8a533f6de98967a0633 Mon Sep 17 00:00:00 2001 From: Artur Meski Date: Sat, 17 Feb 2018 22:09:48 +0000 Subject: [PATCH] CA parsing (without interpretation) --- rsin_parser.ll | 1 + rsin_parser.yy | 24 ++++++++++++++++++++---- 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/rsin_parser.ll b/rsin_parser.ll index 23e010d..5c8249a 100644 --- a/rsin_parser.ll +++ b/rsin_parser.ll @@ -53,6 +53,7 @@ blank [ \t] "]" return token::RSB; "<" return token::LAB; ">" return token::RAB; +":" return token::COL; ";" return token::SEMICOL; "," return token::COMMA; "->" return token::RARR; diff --git a/rsin_parser.yy b/rsin_parser.yy index 6fbfa41..08722df 100644 --- a/rsin_parser.yy +++ b/rsin_parser.yy @@ -46,7 +46,7 @@ class rsin_driver; %token REACTIONS INITIALCONTEXTS CONTEXTENTITIES RSCTLFORM %token CONTEXTAUTOMATON STATES TRANSITIONS -%token LCB RCB LRB RRB LSB RSB LAB RAB SEMICOL COMMA RARR +%token LCB RCB LRB RRB LSB RSB LAB RAB COL SEMICOL COMMA RARR %token AND OR XOR IMPLIES NOT %token EX EU EF EG AX AU AF AG E A X U F G EMPTY @@ -176,20 +176,36 @@ actentity: IDENTIFIER { ctxaut: | STATES LCB autstates RCB ctxaut - | TRANSITIONS LCB auttrans RCB ctxaut + | TRANSITIONS LCB auttransitions RCB ctxaut ; autstate: IDENTIFIER { } + ; autstates: - | autstate + autstate | autstate COMMA autstates ; -auttrans: +auttransitions: + | auttrans + | auttrans SEMICOL auttransitions ; +auttrans: LCB contextset RCB COL autstate RARR autstate + ; + +contextset: + ctxentity + | contextset COMMA ctxentity + ; + +ctxentity: IDENTIFIER { + // + } + ; + /* formulae */ bool_contexts: IDENTIFIER {