Recognize Goal's syntax for Boolean operators.
* src/ltlparse/ltlscan.ll: Recognize ~, -->, and <--> operators from Goal, to ease the use of formulas provided by the Goal team. * src/ltltest/equals.test: Use these once, just to be on the safe side.
This commit is contained in:
parent
2fe5b3fb62
commit
3278844c2a
3 changed files with 19 additions and 8 deletions
|
|
@ -1,3 +1,12 @@
|
||||||
|
2011-02-03 Alexandre Duret-Lutz <adl@lrde.epita.fr>
|
||||||
|
|
||||||
|
Recognize Goal's syntax for Boolean operators.
|
||||||
|
|
||||||
|
* src/ltlparse/ltlscan.ll: Recognize ~, -->, and <--> operators
|
||||||
|
from Goal, to ease the use of formulas provided by the Goal team.
|
||||||
|
* src/ltltest/equals.test: Use these once, just to be on the
|
||||||
|
safe side.
|
||||||
|
|
||||||
2011-02-03 Alexandre Duret-Lutz <adl@lrde.epita.fr>
|
2011-02-03 Alexandre Duret-Lutz <adl@lrde.epita.fr>
|
||||||
|
|
||||||
Minor fixes to ltl2tgba.html.
|
Minor fixes to ltl2tgba.html.
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
/* Copyright (C) 2010, Laboratoire de Recherche et Développement de
|
/* Copyright (C) 2010, 2011, Laboratoire de Recherche et Développement de
|
||||||
** l'Epita (LRDE).
|
** l'Epita (LRDE).
|
||||||
** Copyright (C) 2003, 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
|
** Copyright (C) 2003, 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
|
||||||
** département Systèmes Répartis Coopératifs (SRC), Université Pierre
|
** département Systèmes Répartis Coopératifs (SRC), Université Pierre
|
||||||
|
|
@ -72,17 +72,17 @@ flex_set_buffer(const char* buf)
|
||||||
"0"|[fF][aA][lL][sS][eE] BEGIN(0); return token::CONST_FALSE;
|
"0"|[fF][aA][lL][sS][eE] BEGIN(0); return token::CONST_FALSE;
|
||||||
|
|
||||||
|
|
||||||
|
/* ~ comes from Goal, ! from everybody else */
|
||||||
"!" BEGIN(0); return token::OP_NOT;
|
"!"|"~" BEGIN(0); return token::OP_NOT;
|
||||||
|
|
||||||
/* & and | come from Spin. && and || from LTL2BA.
|
/* & and | come from Spin. && and || from LTL2BA.
|
||||||
/\, \/, and xor are from LBTT.
|
/\, \/, and xor are from LBTT.
|
||||||
*/
|
--> and <--> come from Goal. */
|
||||||
"||"|"|"|"+"|"\\/" BEGIN(0); return token::OP_OR;
|
"||"|"|"|"+"|"\\/" BEGIN(0); return token::OP_OR;
|
||||||
"&&"|"&"|"."|"/\\" BEGIN(0); return token::OP_AND;
|
"&&"|"&"|"."|"/\\" BEGIN(0); return token::OP_AND;
|
||||||
"^"|"xor" BEGIN(0); return token::OP_XOR;
|
"^"|"xor" BEGIN(0); return token::OP_XOR;
|
||||||
"=>"|"->" BEGIN(0); return token::OP_IMPLIES;
|
"=>"|"->"|"-->" BEGIN(0); return token::OP_IMPLIES;
|
||||||
"<=>"|"<->" BEGIN(0); return token::OP_EQUIV;
|
"<=>"|"<->"|"<-->" BEGIN(0); return token::OP_EQUIV;
|
||||||
|
|
||||||
/* <>, [], and () are used in Spin. */
|
/* <>, [], and () are used in Spin. */
|
||||||
"F"|"<>" BEGIN(0); return token::OP_F;
|
"F"|"<>" BEGIN(0); return token::OP_F;
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
# Copyright (C) 2009 Laboratoire de Recherche et Développement
|
# Copyright (C) 2009, 2011 Laboratoire de Recherche et Développement
|
||||||
# de l'Epita (LRDE).
|
# de l'Epita (LRDE).
|
||||||
# Copyright (C) 2003, 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
|
# Copyright (C) 2003, 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
|
||||||
# département Systèmes Répartis Coopératifs (SRC), Université Pierre
|
# département Systèmes Répartis Coopératifs (SRC), Université Pierre
|
||||||
|
|
@ -29,9 +29,11 @@
|
||||||
|
|
||||||
# A few things which are equal
|
# A few things which are equal
|
||||||
run 0 ../equals 'a' 'a'
|
run 0 ../equals 'a' 'a'
|
||||||
|
run 0 ../equals '~a' '!a'
|
||||||
run 0 ../equals '1' '1'
|
run 0 ../equals '1' '1'
|
||||||
run 0 ../equals '0' '0'
|
run 0 ../equals '0' '0'
|
||||||
run 0 ../equals 'a => b' 'a => b'
|
run 0 ../equals 'a => b' 'a --> b'
|
||||||
|
run 0 ../equals 'a <-> b' 'a <--> b'
|
||||||
run 0 ../equals 'G a ' ' G a'
|
run 0 ../equals 'G a ' ' G a'
|
||||||
run 0 ../equals 'a U b' 'a U b'
|
run 0 ../equals 'a U b' 'a U b'
|
||||||
run 0 ../equals 'a & b' 'a & b'
|
run 0 ../equals 'a & b' 'a & b'
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue