more doxygen
This introduce some section for acceptance transformation, and add more comments in a few places. * spot/taalgos/emptinessta.hh, spot/twa/twa.hh, spot/twa/twagraph.hh, spot/twaalgos/bfssteps.hh, spot/twaalgos/cleanacc.hh, spot/twaalgos/degen.hh, spot/twaalgos/dualize.hh, spot/twaalgos/parity.hh, spot/twaalgos/rabin2parity.hh, spot/twaalgos/remfin.hh, spot/twaalgos/sccinfo.hh, spot/twaalgos/sepsets.hh, spot/twaalgos/split.hh, spot/twaalgos/totgba.hh: More doxygen. * spot/twa/twagraph.cc: Typos in comments.
This commit is contained in:
parent
7e02aae366
commit
1a0fa3b722
15 changed files with 115 additions and 49 deletions
|
|
@ -1,6 +1,6 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2011, 2013, 2014 Laboratoire de Recherche et Developpement de
|
||||
// l'Epita (LRDE).
|
||||
// Copyright (C) 2011, 2013, 2014, 2018 Laboratoire de Recherche et
|
||||
// Developpement 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
|
||||
// et Marie Curie.
|
||||
|
|
@ -27,7 +27,7 @@
|
|||
|
||||
namespace spot
|
||||
{
|
||||
/// \ingroup twa_misc
|
||||
/// \ingroup twa_generic
|
||||
/// \brief Make a BFS in a spot::tgba to compute a twa_run::steps.
|
||||
///
|
||||
/// This class should be used to compute the shortest path
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2015, 2017 Laboratoire de Recherche et Développement
|
||||
// de l'Epita.
|
||||
// Copyright (C) 2015, 2017, 2018 Laboratoire de Recherche et
|
||||
// Développement de l'Epita.
|
||||
//
|
||||
// This file is part of Spot, a model checking library.
|
||||
//
|
||||
|
|
@ -23,7 +23,7 @@
|
|||
|
||||
namespace spot
|
||||
{
|
||||
/// \ingroup twa_algorithms
|
||||
/// \ingroup twa_acc_transform
|
||||
/// \brief Remove useless acceptance sets
|
||||
///
|
||||
/// This removes from the automaton the acceptance marks that are
|
||||
|
|
@ -37,7 +37,7 @@ namespace spot
|
|||
SPOT_API twa_graph_ptr
|
||||
cleanup_acceptance_here(twa_graph_ptr aut, bool strip = true);
|
||||
|
||||
/// \ingroup twa_algorithms
|
||||
/// \ingroup twa_acc_transform
|
||||
/// \brief Remove useless acceptance sets
|
||||
///
|
||||
/// This removes from the automaton the acceptance marks that are
|
||||
|
|
@ -49,7 +49,7 @@ namespace spot
|
|||
cleanup_acceptance(const_twa_graph_ptr aut);
|
||||
|
||||
/// @{
|
||||
/// \ingroup twa_algorithms
|
||||
/// \ingroup twa_acc_transform
|
||||
/// \brief Simplify an acceptance condition
|
||||
///
|
||||
/// Does evereything cleanup_acceptance() does, but additionally:
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2012, 2013, 2014 2015, 2017, Laboratoire de Recherche et
|
||||
// Développement de l'Epita.
|
||||
// Copyright (C) 2012-2015, 2017, 2018 Laboratoire de
|
||||
// Recherche et Développement de l'Epita.
|
||||
//
|
||||
// This file is part of Spot, a model checking library.
|
||||
//
|
||||
|
|
@ -23,7 +23,7 @@
|
|||
|
||||
namespace spot
|
||||
{
|
||||
/// \ingroup twa_misc
|
||||
/// \ingroup twa_acc_transform
|
||||
/// \brief Degeneralize a spot::tgba into an equivalent sba with
|
||||
/// only one acceptance condition.
|
||||
///
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2017 Laboratoire de Recherche et Développement de
|
||||
// l'Epita (LRDE).
|
||||
// Copyright (C) 2017, 2018 Laboratoire de Recherche et Développement
|
||||
// de l'Epita (LRDE).
|
||||
//
|
||||
// This file is part of Spot, a model checking library.
|
||||
//
|
||||
|
|
@ -24,6 +24,7 @@
|
|||
|
||||
namespace spot
|
||||
{
|
||||
/// \ingroup twa_misc
|
||||
/// \brief Complement an automaton by dualizing it.
|
||||
///
|
||||
/// Given an automaton \a aut of any type, produces the dual as output. The
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@
|
|||
namespace spot
|
||||
{
|
||||
/// \addtogroup parity_algorithms Algorithms for parity acceptance
|
||||
/// \ingroup twa_algorithms
|
||||
/// \ingroup twa_acc_transform
|
||||
|
||||
/// \ingroup parity_algorithms
|
||||
/// @{
|
||||
|
|
|
|||
|
|
@ -22,6 +22,7 @@
|
|||
|
||||
namespace spot
|
||||
{
|
||||
/// \ingroup twa_acc_transform
|
||||
/// \brief Turn a Rabin-like automaton into a parity automaton based on the
|
||||
/// index appearence record (IAR)
|
||||
///
|
||||
|
|
@ -34,12 +35,18 @@ namespace spot
|
|||
/// acceptance condition.
|
||||
/// Details on the algorithm can be found in:
|
||||
/// https://arxiv.org/pdf/1701.05738.pdf (published at TACAS 2017)
|
||||
///
|
||||
/// Throws an std::runtime_error if the input is not Rabin-like.
|
||||
SPOT_API
|
||||
twa_graph_ptr
|
||||
iar(const const_twa_graph_ptr& aut);
|
||||
|
||||
/// Return nullptr if the input automaton is not Rabin-like, and calls iar()
|
||||
/// otherwise.
|
||||
/// \ingroup twa_acc_transform
|
||||
/// \brief Turn a Rabin-like automaton into a parity automaton based on the
|
||||
/// index appearence record (IAR)
|
||||
///
|
||||
/// Return nullptr if the input automaton is not Rabin-like, and
|
||||
/// calls spot::iar() otherwise.
|
||||
SPOT_API
|
||||
twa_graph_ptr
|
||||
iar_maybe(const const_twa_graph_ptr& aut);
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2015, 2017 Laboratoire de Recherche et Développement
|
||||
// de l'Epita.
|
||||
// Copyright (C) 2015, 2017, 2018 Laboratoire de Recherche et
|
||||
// Développement de l'Epita.
|
||||
//
|
||||
// This file is part of Spot, a model checking library.
|
||||
//
|
||||
|
|
@ -23,7 +23,7 @@
|
|||
|
||||
namespace spot
|
||||
{
|
||||
/// \ingroup twa_algorithms
|
||||
/// \ingroup twa_acc_transform
|
||||
/// \brief Convert a Rabin automaton to Büchi automaton, preserving
|
||||
/// determinism when possible.
|
||||
///
|
||||
|
|
@ -40,7 +40,7 @@ namespace spot
|
|||
SPOT_API twa_graph_ptr
|
||||
rabin_to_buchi_maybe(const const_twa_graph_ptr& aut);
|
||||
|
||||
/// \ingroup twa_algorithms
|
||||
/// \ingroup twa_acc_transform
|
||||
/// \brief Rewrite an automaton without Fin acceptance.
|
||||
///
|
||||
/// This algorithm dispatches between many strategies. It has
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2014-2017 Laboratoire de Recherche et Développement
|
||||
// Copyright (C) 2014-2018 Laboratoire de Recherche et Développement
|
||||
// de l'Epita (LRDE).
|
||||
//
|
||||
// This file is part of Spot, a model checking library.
|
||||
|
|
@ -211,7 +211,8 @@ namespace spot
|
|||
}
|
||||
|
||||
|
||||
/// Storage for SCC related information.
|
||||
/// \ingroup twa_misc
|
||||
/// \brief Storage for SCC related information.
|
||||
class SPOT_API scc_info_node
|
||||
{
|
||||
public:
|
||||
|
|
@ -298,7 +299,8 @@ namespace spot
|
|||
}
|
||||
};
|
||||
|
||||
/// Options to alter the behavior of scc_info
|
||||
/// \ingroup twa_misc
|
||||
/// \brief Options to alter the behavior of scc_info
|
||||
enum class scc_info_options
|
||||
{
|
||||
/// Stop exploring when an accepting SCC is found, and do not track
|
||||
|
|
@ -347,6 +349,7 @@ namespace spot
|
|||
| static_cast<ut>(right));
|
||||
}
|
||||
|
||||
/// \ingroup twa_misc
|
||||
/// \brief Compute an SCC map and gather assorted information.
|
||||
///
|
||||
/// This takes twa_graph as input and compute its SCCs. This
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2015 Laboratoire de Recherche et Développement
|
||||
// Copyright (C) 2015, 2018 Laboratoire de Recherche et Développement
|
||||
// de l'Epita.
|
||||
//
|
||||
// This file is part of Spot, a model checking library.
|
||||
|
|
@ -23,10 +23,12 @@
|
|||
|
||||
namespace spot
|
||||
{
|
||||
/// \ingroup twa_acc_transform
|
||||
/// \brief Whether the Inf and Fin numbers are disjoints
|
||||
SPOT_API bool
|
||||
has_separate_sets(const const_twa_graph_ptr& aut);
|
||||
|
||||
/// \ingroup twa_acc_transform
|
||||
/// \brief Separate the Fin and Inf sets used by an automaton
|
||||
///
|
||||
/// This makes sure that the numbers used a Fin and Inf are
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2017 Laboratoire de Recherche et Développement
|
||||
// Copyright (C) 2017, 2018 Laboratoire de Recherche et Développement
|
||||
// de l'Epita.
|
||||
//
|
||||
// This file is part of Spot, a model checking library.
|
||||
|
|
@ -23,6 +23,7 @@
|
|||
|
||||
namespace spot
|
||||
{
|
||||
/// \ingroup twa_misc
|
||||
/// \brief transform edges into transitions
|
||||
///
|
||||
/// Create a new version of the automaton where all edges are split
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@
|
|||
|
||||
namespace spot
|
||||
{
|
||||
/// \ingroup twa_algorithms
|
||||
/// \ingroup twa_acc_transform
|
||||
/// \brief Take an automaton with any acceptance condition and return
|
||||
/// an equivalent Generalized Büchi automaton.
|
||||
///
|
||||
|
|
@ -37,13 +37,13 @@ namespace spot
|
|||
SPOT_API twa_graph_ptr
|
||||
to_generalized_buchi(const const_twa_graph_ptr& aut);
|
||||
|
||||
/// \ingroup twa_algorithms
|
||||
/// \ingroup twa_acc_transform
|
||||
/// \brief Convert Streett acceptance into generalized Büchi
|
||||
/// acceptance.
|
||||
SPOT_API twa_graph_ptr
|
||||
streett_to_generalized_buchi(const const_twa_graph_ptr& in);
|
||||
|
||||
/// \ingroup twa_algorithms
|
||||
/// \ingroup twa_acc_transform
|
||||
/// \brief Convert Streett acceptance into generalized Büchi
|
||||
///
|
||||
/// This version only works SPOT_STREET_CONF_MIN is set to a number
|
||||
|
|
@ -53,7 +53,7 @@ namespace spot
|
|||
SPOT_API twa_graph_ptr
|
||||
streett_to_generalized_buchi_maybe(const const_twa_graph_ptr& in);
|
||||
|
||||
/// \ingroup twa_algorithms
|
||||
/// \ingroup twa_acc_transform
|
||||
/// \brief Take an automaton with any acceptance condition and return
|
||||
/// an equivalent Generalized Rabin automaton.
|
||||
///
|
||||
|
|
@ -68,7 +68,7 @@ namespace spot
|
|||
to_generalized_rabin(const const_twa_graph_ptr& aut,
|
||||
bool share_inf = false);
|
||||
|
||||
/// \ingroup twa_algorithms
|
||||
/// \ingroup twa_acc_transform
|
||||
/// \brief Take an automaton with any acceptance condition and return
|
||||
/// an equivalent Generalized Streett automaton.
|
||||
///
|
||||
|
|
@ -83,6 +83,7 @@ namespace spot
|
|||
to_generalized_streett(const const_twa_graph_ptr& aut,
|
||||
bool share_fin = false);
|
||||
|
||||
/// \ingroup twa_acc_transform
|
||||
/// \brief Converts any DNF acceptance condition into Streett-like.
|
||||
///
|
||||
/// This function is an optimized version of the construction described
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue