Use -fvisibility=hidden in src/ltlast/, src/ltlvisit/, and src/ltlenv/.
* src/ltlast/Makefile.am, src/ltlenv/Makefile.am, src/ltlvisit/Makefile.am: Use $(VISIBILITY_CXXFLAGS). * src/misc/common.hh (SPOT_DEPRECATED): New macro. * src/ltlast/atomic_prop.hh, src/ltlast/automatop.hh, src/ltlast/binop.hh, src/ltlast/bunop.hh, src/ltlast/constant.hh, src/ltlast/formula.hh, src/ltlast/formula_tree.hh, src/ltlast/multop.hh, src/ltlast/nfa.hh, src/ltlast/refformula.hh, src/ltlast/unop.hh, src/ltlast/visitor.hh, src/ltlenv/declenv.hh, src/ltlenv/defaultenv.hh, src/ltlvisit/apcollect.hh, src/ltlvisit/clone.hh, src/ltlvisit/contain.hh, src/ltlvisit/destroy.hh, src/ltlvisit/dotty.hh, src/ltlvisit/dump.hh, src/ltlvisit/lbt.hh, src/ltlvisit/length.hh, src/ltlvisit/lunabbrev.hh, src/ltlvisit/nenoform.hh, src/ltlvisit/postfix.hh, src/ltlvisit/randomltl.hh, src/ltlvisit/reduce.hh, src/ltlvisit/relabel.hh, src/ltlvisit/remove_x.hh, src/ltlvisit/simpfg.hh, src/ltlvisit/simplify.hh, src/ltlvisit/snf.hh, src/ltlvisit/tostring.hh, src/ltlvisit/tunabbrev.hh, src/ltlvisit/wmunabbrev.hh: Add SPOT_API in fron of exported symbols. * src/ltlvisit/nenoform.cc, src/ltlvisit/remove_x.cc: Add missing include of the corresponding header file.
This commit is contained in:
parent
cbfbf14297
commit
8ba3e64f0a
41 changed files with 180 additions and 157 deletions
|
|
@ -21,7 +21,7 @@
|
|||
## along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
AM_CPPFLAGS = -I$(srcdir)/.. -I.. $(BUDDY_CPPFLAGS)
|
||||
AM_CXXFLAGS = $(WARNING_CXXFLAGS)
|
||||
AM_CXXFLAGS = $(WARNING_CXXFLAGS) $(VISIBILITY_CXXFLAGS)
|
||||
|
||||
ltlvisitdir = $(pkgincludedir)/ltlvisit
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2012 Laboratoire de Recherche et Développement
|
||||
// Copyright (C) 2012, 2013 Laboratoire de Recherche et Développement
|
||||
// de l'Epita (LRDE).
|
||||
// Copyright (C) 2004, 2005 Laboratoire d'Informatique de Paris 6 (LIP6),
|
||||
// département Systèmes Répartis Coopératifs (SRC), Université Pierre
|
||||
|
|
@ -23,8 +23,8 @@
|
|||
#ifndef SPOT_LTLVISIT_APCOLLECT_HH
|
||||
# define SPOT_LTLVISIT_APCOLLECT_HH
|
||||
|
||||
#include <set>
|
||||
#include "ltlast/atomic_prop.hh"
|
||||
#include <set>
|
||||
#include "bdd.h"
|
||||
|
||||
namespace spot
|
||||
|
|
@ -50,7 +50,7 @@ namespace spot
|
|||
/// set containing all these atomic propositions if \c s is 0.
|
||||
/// The atomic propositions inserted into \a s are not cloned, so
|
||||
/// they are only valid as long as \a f is.
|
||||
atomic_prop_set*
|
||||
SPOT_API atomic_prop_set*
|
||||
atomic_prop_collect(const formula* f, atomic_prop_set* s = 0);
|
||||
|
||||
/// \brief Return the set of atomic propositions occurring in a
|
||||
|
|
@ -59,7 +59,7 @@ namespace spot
|
|||
/// \param f the formula to inspect
|
||||
/// \param a that automaton that should register the BDD variables used.
|
||||
/// \return A conjunction the atomic propositions.
|
||||
bdd
|
||||
SPOT_API bdd
|
||||
atomic_prop_collect_as_bdd(const formula* f, const tgba* a);
|
||||
|
||||
/// @}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2009, 2010, 2012 Laboratoire de Recherche et
|
||||
// Copyright (C) 2009, 2010, 2012, 2013 Laboratoire de Recherche et
|
||||
// Développement de l'Epita (LRDE).
|
||||
// Copyright (C) 2003, 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
|
||||
// département Systèmes Répartis Coopératifs (SRC), Université Pierre
|
||||
|
|
@ -37,7 +37,7 @@ namespace spot
|
|||
/// to derive from it and override part of its methods.
|
||||
/// But if you just want the functionality, consider using
|
||||
/// spot::ltl::formula::clone instead, it is way faster.
|
||||
class clone_visitor : public visitor
|
||||
class SPOT_API clone_visitor : public visitor
|
||||
{
|
||||
public:
|
||||
clone_visitor();
|
||||
|
|
@ -59,17 +59,11 @@ namespace spot
|
|||
const formula* result_;
|
||||
};
|
||||
|
||||
#if __GNUC__
|
||||
/// \ingroup ltl_essential
|
||||
/// \brief Clone a formula.
|
||||
/// \deprecated Use f->clone() instead.
|
||||
SPOT_API SPOT_DEPRECATED
|
||||
const formula* clone(const formula* f) __attribute__ ((deprecated));
|
||||
#else
|
||||
/// \ingroup ltl_essential
|
||||
/// \brief Clone a formula.
|
||||
/// \deprecated Use f->clone() instead.
|
||||
const formula* clone(const formula* f);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,8 @@
|
|||
// Copyright (C) 2011, 2012 Laboratoire de Recherche et Developpement de
|
||||
// l'Epita (LRDE).
|
||||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2011, 2012, 2013 Laboratoire de Recherche et
|
||||
// Developpement de l'Epita (LRDE).
|
||||
// Copyright (C) 2006 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
|
||||
// et Marie Curie.
|
||||
//
|
||||
// This file is part of Spot, a model checking library.
|
||||
|
|
@ -31,8 +32,8 @@ namespace spot
|
|||
{
|
||||
namespace ltl
|
||||
{
|
||||
// Check containment of language represented by LTL formulae.
|
||||
class language_containment_checker
|
||||
/// Check containment between LTL formulae.
|
||||
class SPOT_API language_containment_checker
|
||||
{
|
||||
struct record_
|
||||
{
|
||||
|
|
@ -44,7 +45,7 @@ namespace spot
|
|||
record_, formula_ptr_hash> trans_map;
|
||||
public:
|
||||
/// This class uses spot::ltl_to_tgba_fm to translate LTL
|
||||
/// formulae. See that class for the meaning of these options.
|
||||
/// formulae. See that function for the meaning of these options.
|
||||
language_containment_checker(bdd_dict* dict, bool exprop,
|
||||
bool symb_merge,
|
||||
bool branching_postponement,
|
||||
|
|
@ -106,13 +107,9 @@ namespace spot
|
|||
/// reduce some U, R, and X usages.
|
||||
///
|
||||
/// \deprecated Use spot::ltl::ltl_simplifier instead.
|
||||
#if __GNUC__
|
||||
SPOT_API SPOT_DEPRECATED
|
||||
const formula* reduce_tau03(const formula* f,
|
||||
bool stronger = true)
|
||||
__attribute__ ((deprecated));
|
||||
#else
|
||||
const formula* reduce_tau03(const formula* f, bool stronger = true);
|
||||
#endif
|
||||
bool stronger = true);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,8 @@
|
|||
// Copyright (C) 2009 Laboratoire de Recherche et Développement
|
||||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2009, 2013 Laboratoire de Recherche et Développement
|
||||
// de l'Epita (LRDE).
|
||||
// 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
|
||||
// et Marie Curie.
|
||||
//
|
||||
// This file is part of Spot, a model checking library.
|
||||
|
|
@ -22,23 +23,18 @@
|
|||
#ifndef SPOT_LTLVISIT_DESTROY_HH
|
||||
# define SPOT_LTLVISIT_DESTROY_HH
|
||||
|
||||
#include "ltlvisit/postfix.hh"
|
||||
# include "misc/common.hh"
|
||||
# include "ltlvisit/postfix.hh"
|
||||
|
||||
namespace spot
|
||||
{
|
||||
namespace ltl
|
||||
{
|
||||
#if __GNUC__
|
||||
/// \ingroup ltl_essential
|
||||
/// \brief Destroys a formula
|
||||
/// \deprecated Use f->destroy() instead.
|
||||
void destroy(const formula *f) __attribute__ ((deprecated));
|
||||
#else
|
||||
/// \ingroup ltl_essential
|
||||
/// \brief Destroys a formula
|
||||
/// \deprecated Use f->destroy() instead.
|
||||
SPOT_API SPOT_DEPRECATED
|
||||
void destroy(const formula *f);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,8 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2013 Laboratoire de Recherche et Développement
|
||||
// de l'Epita (LRDE).
|
||||
// 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
|
||||
// et Marie Curie.
|
||||
//
|
||||
// This file is part of Spot, a model checking library.
|
||||
|
|
@ -34,6 +37,7 @@ namespace spot
|
|||
///
|
||||
/// \c dot is part of the GraphViz package
|
||||
/// http://www.research.att.com/sw/tools/graphviz/
|
||||
SPOT_API
|
||||
std::ostream& dotty(std::ostream& os, const formula* f);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,8 @@
|
|||
// Copyright (C) 2003, 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
|
||||
// département Systèmes Répartis Coopératifs (SRC), Université Pierre
|
||||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2013 Laboratoire de Recherche et Développement de
|
||||
// l'Epita (LRDE).
|
||||
// Copyright (C) 2003, 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
|
||||
// département Systèmes Répartis Coopératifs (SRC), Université Pierre
|
||||
// et Marie Curie.
|
||||
//
|
||||
// This file is part of Spot, a model checking library.
|
||||
|
|
@ -33,6 +36,7 @@ namespace spot
|
|||
/// \param f The formula to dump.
|
||||
///
|
||||
/// This is useful to display a formula when debugging.
|
||||
SPOT_API
|
||||
std::ostream& dump(std::ostream& os, const formula* f);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2012 Laboratoire de Recherche et
|
||||
// Copyright (C) 2012, 2013 Laboratoire de Recherche et
|
||||
// Développement de l'Epita (LRDE).
|
||||
//
|
||||
// This file is part of Spot, a model checking library.
|
||||
|
|
@ -41,7 +41,7 @@ namespace spot
|
|||
///
|
||||
/// \param f The formula to translate.
|
||||
/// \param os The stream where it should be output.
|
||||
std::ostream&
|
||||
SPOT_API std::ostream&
|
||||
to_lbt_string(const formula* f, std::ostream& os);
|
||||
|
||||
/// \brief Output an LTL formula as a string in LBT's format.
|
||||
|
|
@ -53,7 +53,7 @@ namespace spot
|
|||
/// rewrite these two operators using unabbreviate_wm().
|
||||
///
|
||||
/// \param f The formula to translate.
|
||||
std::string
|
||||
SPOT_API std::string
|
||||
to_lbt_string(const formula* f);
|
||||
/// @}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,8 @@
|
|||
// Copyright (C) 2012 Laboratoire de Recherche et Developement de
|
||||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2012, 2013 Laboratoire de Recherche et Developement de
|
||||
// l'Epita (LRDE).
|
||||
// Copyright (C) 2004, 2005 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
|
||||
// et Marie Curie.
|
||||
//
|
||||
// This file is part of Spot, a model checking library.
|
||||
|
|
@ -40,6 +41,7 @@ namespace spot
|
|||
///
|
||||
/// If squash_boolean is set, all Boolean formulae are assumed
|
||||
/// to have length one.
|
||||
SPOT_API
|
||||
int length(const formula* f);
|
||||
|
||||
/// \ingroup ltl_misc
|
||||
|
|
@ -47,6 +49,7 @@ namespace spot
|
|||
///
|
||||
/// This is similar to spot::ltl::length(), except all Boolean
|
||||
/// formulae are assumed to have length one.
|
||||
SPOT_API
|
||||
int length_boolone(const formula* f);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2012 Laboratoire de Recherche et Développement
|
||||
// Copyright (C) 2012, 2013 Laboratoire de Recherche et Développement
|
||||
// de l'Epita (LRDE).
|
||||
// Copyright (C) 2003, 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
|
||||
// département Systèmes Répartis Coopératifs (SRC), Université Pierre
|
||||
|
|
@ -41,7 +41,7 @@ namespace spot
|
|||
/// to derive from it and override some of its methods.
|
||||
/// But if you just want the functionality, consider using
|
||||
/// spot::ltl::unabbreviate_logic instead.
|
||||
class unabbreviate_logic_visitor : public clone_visitor
|
||||
class SPOT_API unabbreviate_logic_visitor : public clone_visitor
|
||||
{
|
||||
typedef clone_visitor super;
|
||||
public:
|
||||
|
|
@ -61,7 +61,7 @@ namespace spot
|
|||
/// This will rewrite binary operators such as binop::Implies,
|
||||
/// binop::Equals, and binop::Xor, using only unop::Not, multop::Or,
|
||||
/// and multop::And.
|
||||
const formula* unabbreviate_logic(const formula* f);
|
||||
SPOT_API const formula* unabbreviate_logic(const formula* f);
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2009, 2010, 2011, 2012 Laboratoire de Recherche et
|
||||
// Développement de l'Epita (LRDE).
|
||||
// Copyright (C) 2009, 2010, 2011, 2012, 2013 Laboratoire de Recherche
|
||||
// et Développement de l'Epita (LRDE).
|
||||
// Copyright (C) 2003, 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
|
||||
// département Systèmes Répartis Coopératifs (SRC), Université Pierre
|
||||
// et Marie Curie.
|
||||
|
|
@ -20,6 +20,7 @@
|
|||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
#include "nenoform.hh"
|
||||
#include "simplify.hh"
|
||||
|
||||
namespace spot
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2011, 2012 Laboratoire de Recherche et Développement de
|
||||
// l'Epita (LRDE).
|
||||
// Copyright (C) 2011, 2012, 2013 Laboratoire de Recherche et
|
||||
// Développement de l'Epita (LRDE).
|
||||
// Copyright (C) 2003, 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
|
||||
// département Systèmes Répartis Coopératifs (SRC), Université Pierre
|
||||
// et Marie Curie.
|
||||
|
|
@ -44,7 +44,7 @@ namespace spot
|
|||
/// or spot::ltl::unabbreviate_ltl first. (Calling these functions
|
||||
/// after spot::ltl::negative_normal_form would likely produce a
|
||||
/// formula which is not in negative normal form.)
|
||||
const formula*
|
||||
SPOT_API const formula*
|
||||
negative_normal_form(const formula* f, bool negated = false);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,8 @@
|
|||
// Copyright (C) 2009, 2010, 2012 Laboratoire de Recherche et Développement
|
||||
// de l'Epita (LRDE).
|
||||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2009, 2010, 2012, 2013 Laboratoire de Recherche et
|
||||
// Développement de l'Epita (LRDE).
|
||||
// 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
|
||||
// et Marie Curie.
|
||||
//
|
||||
// This file is part of Spot, a model checking library.
|
||||
|
|
@ -35,7 +36,7 @@ namespace spot
|
|||
///
|
||||
/// Override one or more of the postifix_visitor::doit methods
|
||||
/// with the algorithm to apply.
|
||||
class postfix_visitor : public visitor
|
||||
class SPOT_API postfix_visitor : public visitor
|
||||
{
|
||||
public:
|
||||
postfix_visitor();
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2010, 2011, 2012 Laboratoire de Recherche et
|
||||
// Copyright (C) 2010, 2011, 2012, 2013 Laboratoire de Recherche et
|
||||
// Développement de l'Epita (LRDE).
|
||||
// Copyright (C) 2005 Laboratoire d'Informatique de Paris 6 (LIP6),
|
||||
// département Systèmes Répartis Coopératifs (SRC), Université Pierre
|
||||
|
|
@ -33,7 +33,7 @@ namespace spot
|
|||
|
||||
/// \ingroup ltl_io
|
||||
/// \brief Base class for random formula generators
|
||||
class random_formula
|
||||
class SPOT_API random_formula
|
||||
{
|
||||
public:
|
||||
random_formula(unsigned proba_size,
|
||||
|
|
@ -110,7 +110,7 @@ namespace spot
|
|||
/// Also, each atomic proposition has as much chance as each
|
||||
/// constant (i.e., true and false) to be picked. This can be
|
||||
/// tuned using parse_options().
|
||||
class random_ltl: public random_formula
|
||||
class SPOT_API random_ltl: public random_formula
|
||||
{
|
||||
public:
|
||||
/// Create a random LTL generator using atomic propositions from \a ap.
|
||||
|
|
@ -160,7 +160,7 @@ namespace spot
|
|||
/// constant and all Boolean operators supported by Spot.
|
||||
///
|
||||
/// By default each operator has equal chance to be selected.
|
||||
class random_boolean: public random_formula
|
||||
class SPOT_API random_boolean: public random_formula
|
||||
{
|
||||
public:
|
||||
/// Create a random Boolean formula generator using atomic
|
||||
|
|
@ -200,7 +200,7 @@ namespace spot
|
|||
/// constant and all SERE operators supported by Spot.
|
||||
///
|
||||
/// By default each operator has equal chance to be selected.
|
||||
class random_sere: public random_formula
|
||||
class SPOT_API random_sere: public random_formula
|
||||
{
|
||||
public:
|
||||
/// Create a random SERE genere using atomic propositions from \a ap.
|
||||
|
|
@ -241,7 +241,7 @@ namespace spot
|
|||
/// The formulae will use the use atomic propositions from the
|
||||
/// set of propositions passed to the constructor, in addition to the
|
||||
/// constant and all PSL operators supported by Spot.
|
||||
class random_psl: public random_ltl
|
||||
class SPOT_API random_psl: public random_ltl
|
||||
{
|
||||
public:
|
||||
/// Create a random PSL generator using atomic propositions from \a ap.
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2010, 2011, 2012 Laboratoire de Recherche et
|
||||
// Copyright (C) 2010, 2011, 2012, 2013 Laboratoire de Recherche et
|
||||
// Développement de l'Epita (LRDE).
|
||||
// Copyright (C) 2004, 2006 Laboratoire d'Informatique de Paris 6
|
||||
// (LIP6), département Systèmes Répartis Coopératifs (SRC), Université
|
||||
|
|
@ -68,12 +68,8 @@ namespace spot
|
|||
/// \return the reduced formula
|
||||
///
|
||||
/// \deprecated Use spot::ltl::ltl_simplifier instead.
|
||||
#if __GNUC__
|
||||
const formula*
|
||||
reduce(const formula* f, int opt = Reduce_All) __attribute__ ((deprecated));
|
||||
#else
|
||||
const formula* reduce(const formula* f, int opt = Reduce_All);
|
||||
#endif
|
||||
SPOT_API SPOT_DEPRECATED const formula*
|
||||
reduce(const formula* f, int opt = Reduce_All);
|
||||
/// @}
|
||||
|
||||
/// \ingroup ltl_misc
|
||||
|
|
@ -99,11 +95,8 @@ namespace spot
|
|||
/// anything and still satisfies the formula.
|
||||
///
|
||||
/// \deprecated Use f->is_eventual() instead.
|
||||
#if __GNUC__
|
||||
bool is_eventual(const formula* f) __attribute__ ((deprecated));
|
||||
#else
|
||||
SPOT_API SPOT_DEPRECATED
|
||||
bool is_eventual(const formula* f);
|
||||
#endif
|
||||
|
||||
/// \ingroup ltl_misc
|
||||
/// \brief Check whether a formula is purely universal.
|
||||
|
|
@ -128,11 +121,8 @@ namespace spot
|
|||
/// universal formula also satisfies the formula.
|
||||
///
|
||||
/// \deprecated Use f->is_universal() instead.
|
||||
#if __GNUC__
|
||||
bool is_universal(const formula* f) __attribute__ ((deprecated));
|
||||
#else
|
||||
SPOT_API SPOT_DEPRECATED
|
||||
bool is_universal(const formula* f);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2012 Laboratoire de Recherche et
|
||||
// Copyright (C) 2012, 2013 Laboratoire de Recherche et
|
||||
// Développement de l'Epita (LRDE).
|
||||
//
|
||||
// This file is part of Spot, a model checking library.
|
||||
|
|
@ -29,8 +29,8 @@ namespace spot
|
|||
enum relabeling_style { Abc, Pnn };
|
||||
|
||||
/// \ingroup ltl_rewriting
|
||||
/// \brief Relabel the atomic proposition in a formula.
|
||||
///
|
||||
/// \brief Relabel the atomic propositions in a formula.
|
||||
SPOT_API
|
||||
const formula* relabel(const formula* f, relabeling_style style);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@
|
|||
#include "ltlvisit/simplify.hh"
|
||||
#include "ltlvisit/clone.hh"
|
||||
#include "ltlvisit/apcollect.hh"
|
||||
#include "ltlvisit/remove_x.hh"
|
||||
|
||||
namespace spot
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2013 Laboratoire de Recherche et Developpement de
|
||||
// l'Epita (LRDE).
|
||||
//
|
||||
|
|
@ -19,6 +20,8 @@
|
|||
#ifndef SPOT_LTLVISIT_REMOVE_X_HH
|
||||
# define SPOT_LTLVISIT_REMOVE_X_HH
|
||||
|
||||
# include "misc/common.hh"
|
||||
|
||||
namespace spot
|
||||
{
|
||||
namespace ltl
|
||||
|
|
@ -43,6 +46,7 @@ namespace spot
|
|||
pages = {261--263}
|
||||
}
|
||||
\endverbatim */
|
||||
SPOT_API
|
||||
const formula* remove_x(const formula* f);
|
||||
|
||||
/// \brief Whether an LTL formula \a f is stutter-insensitive.
|
||||
|
|
@ -63,6 +67,7 @@ namespace spot
|
|||
pages = {261--263}
|
||||
}
|
||||
\endverbatim */
|
||||
SPOT_API
|
||||
bool is_stutter_insensitive(const formula* f);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2010, 2012 Laboratoire de Recherche et Développement
|
||||
// de l'Epita (LRDE).
|
||||
// Copyright (C) 2010, 2012, 2013 Laboratoire de Recherche et
|
||||
// Développement de l'Epita (LRDE).
|
||||
// Copyright (C) 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
|
||||
// département Systèmes Répartis Coopératifs (SRC), Université Pierre
|
||||
// et Marie Curie.
|
||||
|
|
@ -40,7 +40,7 @@ namespace spot
|
|||
/// - false R a = G a
|
||||
/// - a W false = G a
|
||||
///
|
||||
class simplify_f_g_visitor : public clone_visitor
|
||||
class SPOT_API simplify_f_g_visitor : public clone_visitor
|
||||
{
|
||||
typedef clone_visitor super;
|
||||
public:
|
||||
|
|
@ -64,7 +64,7 @@ namespace spot
|
|||
/// - false R a = G a
|
||||
/// - a W false = G a
|
||||
///
|
||||
const formula* simplify_f_g(const formula* f);
|
||||
SPOT_API const formula* simplify_f_g(const formula* f);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -75,7 +75,7 @@ namespace spot
|
|||
|
||||
/// \ingroup ltl_rewriting
|
||||
/// \brief Rewrite or simplify \a f in various ways.
|
||||
class ltl_simplifier
|
||||
class SPOT_API ltl_simplifier
|
||||
{
|
||||
public:
|
||||
ltl_simplifier(bdd_dict* dict = 0);
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2012 Laboratoire de Recherche et Developpement
|
||||
// Copyright (C) 2012, 2013 Laboratoire de Recherche et Developpement
|
||||
// de l'Epita (LRDE).
|
||||
//
|
||||
// This file is part of Spot, a model checking library.
|
||||
|
|
@ -50,8 +50,8 @@ namespace spot
|
|||
///
|
||||
/// \param sere the SERE to rewrite
|
||||
/// \param cache an optional cache
|
||||
const formula* star_normal_form(const formula* sere,
|
||||
snf_cache* cache = 0);
|
||||
SPOT_API const formula*
|
||||
star_normal_form(const formula* sere, snf_cache* cache = 0);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2010, 2011, 2012 Laboratoire de Recherche et
|
||||
// Copyright (C) 2010, 2011, 2012, 2013 Laboratoire de Recherche et
|
||||
// Développement de l'Epita (LRDE).
|
||||
// Copyright (C) 2003, 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
|
||||
// département Systèmes Répartis Coopératifs (SRC), Université Pierre
|
||||
|
|
@ -40,7 +40,7 @@ namespace spot
|
|||
/// \param full_parent Whether or not the string should by fully
|
||||
/// parenthesized.
|
||||
/// \param ratexp Whether we are printing a SERE.
|
||||
std::ostream&
|
||||
SPOT_API std::ostream&
|
||||
to_string(const formula* f, std::ostream& os, bool full_parent = false,
|
||||
bool ratexp = false);
|
||||
|
||||
|
|
@ -50,7 +50,7 @@ namespace spot
|
|||
/// \param full_parent Whether or not the string should by fully
|
||||
/// parenthesized.
|
||||
/// \param ratexp Whether we are printing a SERE.
|
||||
std::string
|
||||
SPOT_API std::string
|
||||
to_string(const formula* f, bool full_parent = false, bool ratexp = false);
|
||||
|
||||
/// \brief Output a formula as an utf8 string which is parsable unless
|
||||
|
|
@ -60,7 +60,7 @@ namespace spot
|
|||
/// \param full_parent Whether or not the string should by fully
|
||||
/// parenthesized.
|
||||
/// \param ratexp Whether we are printing a SERE.
|
||||
std::ostream&
|
||||
SPOT_API std::ostream&
|
||||
to_utf8_string(const formula* f, std::ostream& os, bool full_parent = false,
|
||||
bool ratexp = false);
|
||||
|
||||
|
|
@ -70,7 +70,7 @@ namespace spot
|
|||
/// \param full_parent Whether or not the string should by fully
|
||||
/// parenthesized.
|
||||
/// \param ratexp Whether we are printing a SERE.
|
||||
std::string
|
||||
SPOT_API std::string
|
||||
to_utf8_string(const formula* f, bool full_parent = false,
|
||||
bool ratexp = false);
|
||||
|
||||
|
|
@ -79,23 +79,27 @@ namespace spot
|
|||
/// \param os The stream where it should be output.
|
||||
/// \param full_parent Whether or not the string should by fully
|
||||
/// parenthesized.
|
||||
std::ostream& to_spin_string(const formula* f, std::ostream& os,
|
||||
bool full_parent = false);
|
||||
SPOT_API std::ostream&
|
||||
to_spin_string(const formula* f, std::ostream& os,
|
||||
bool full_parent = false);
|
||||
|
||||
/// \brief Convert a formula into a string parsable by Spin.
|
||||
/// \param f The formula to translate.
|
||||
/// \param full_parent Whether or not the string should by fully
|
||||
/// parenthesized.
|
||||
std::string to_spin_string(const formula* f, bool full_parent = false);
|
||||
SPOT_API std::string
|
||||
to_spin_string(const formula* f, bool full_parent = false);
|
||||
|
||||
/// \brief Output a formula as a string parsable by Wring.
|
||||
/// \param f The formula to translate.
|
||||
/// \param os The stream where it should be output.
|
||||
std::ostream& to_wring_string(const formula* f, std::ostream& os);
|
||||
SPOT_API std::ostream&
|
||||
to_wring_string(const formula* f, std::ostream& os);
|
||||
|
||||
/// \brief Convert a formula into a string parsable by Wring
|
||||
/// \param f The formula to translate.
|
||||
std::string to_wring_string(const formula* f);
|
||||
SPOT_API std::string
|
||||
to_wring_string(const formula* f);
|
||||
|
||||
/// @}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2011, 2012 Laboratoire de Recherche et Développement de
|
||||
// Copyright (C) 2011, 2012, 2013 Laboratoire de Recherche et Développement de
|
||||
// l'Epita (LRDE).
|
||||
// Copyright (C) 2003, 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
|
||||
// département Systèmes Répartis Coopératifs (SRC), Université Pierre
|
||||
|
|
@ -44,7 +44,7 @@ namespace spot
|
|||
/// to derive from it and override some of its methods.
|
||||
/// But if you just want the functionality, consider using
|
||||
/// spot::ltl::unabbreviate_ltl instead.
|
||||
class unabbreviate_ltl_visitor : public unabbreviate_logic_visitor
|
||||
class SPOT_API unabbreviate_ltl_visitor : public unabbreviate_logic_visitor
|
||||
{
|
||||
typedef unabbreviate_logic_visitor super;
|
||||
public:
|
||||
|
|
@ -65,7 +65,7 @@ namespace spot
|
|||
///
|
||||
/// This will also rewrite unary operators such as unop::F,
|
||||
/// and unop::G, using only binop::U, and binop::R.
|
||||
const formula* unabbreviate_ltl(const formula* f);
|
||||
SPOT_API const formula* unabbreviate_ltl(const formula* f);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2012 Laboratoire de Recherche et Développement
|
||||
// Copyright (C) 2012, 2013 Laboratoire de Recherche et Développement
|
||||
// de l'Epita (LRDE).
|
||||
//
|
||||
// This file is part of Spot, a model checking library.
|
||||
|
|
@ -20,6 +20,8 @@
|
|||
#ifndef SPOT_LTLVISIT_WMUNABBREV_HH
|
||||
# define SPOT_LTLVISIT_WMUNABBREV_HH
|
||||
|
||||
# include "misc/common.hh"
|
||||
|
||||
namespace spot
|
||||
{
|
||||
namespace ltl
|
||||
|
|
@ -35,7 +37,7 @@ namespace spot
|
|||
/// <code>a W b</code> is replaced by <code>b R (b | a)</code>,
|
||||
/// and <code>a M b</code> is replaced by <code>b U (b & a)</code>.
|
||||
///
|
||||
const formula* unabbreviate_wm(const formula* f);
|
||||
SPOT_API const formula* unabbreviate_wm(const formula* f);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue