Allow atomic propositions negated with a combining overline.

* src/ltlparse/ltlscan.ll: Understand the combining overline, and
combining overbar as synonym for =0.
* src/ltlvisit/tostring.cc: Emit a combining overline for
single-letter atomic propositions.
* src/ltlast/atomic_prop.hh (is_atomic_prop): New function.
* doc/tl/tl.tex: Document these two characters.
This commit is contained in:
Alexandre Duret-Lutz 2012-04-29 19:25:43 +02:00
parent 1319e18e1d
commit 6ea88efddc
4 changed files with 39 additions and 6 deletions

View file

@ -158,7 +158,9 @@ BOXDARROW {BOX}{DARROWL}|"|"{DARROWL}|"⤇"
"W" BEGIN(0); return token::OP_W;
"M" BEGIN(0); return token::OP_M;
"=0" return token::OP_POST_NEG;
/* The combining overline or macron (overbar) should normally
occur only after a single letter, but we do not check that. */
"=0"|"̅"|"̄" return token::OP_POST_NEG;
"=1" return token::OP_POST_POS;
<*>[ \t\n]+ /* discard whitespace */ yylloc->step ();