minimize_wdba: use a product to decide accepting SCCs
Fixes #347. * spot/twaalgos/minimize.cc, spot/twaalgos/minimize.hh: An SCC of the determinized automaton is marked as accepting if it intersects any accepting SCC of the original automaton. This can be checked by making a product. As a consequence the output of minimize_wdba() now always includes the original language, and minimize_obligation() only needs a single containment check. * NEWS: Mention this.
This commit is contained in:
parent
4afd1856a6
commit
730c6bbca2
3 changed files with 48 additions and 124 deletions
|
|
@ -1,5 +1,5 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016
|
||||
// Copyright (C) 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2018
|
||||
// Laboratoire de Recherche et Développement de l'Epita (LRDE).
|
||||
//
|
||||
// This file is part of Spot, a model checking library.
|
||||
|
|
@ -64,17 +64,17 @@ namespace spot
|
|||
/// Deterministic Büchi Automaton, and construct a minimal WDBA for
|
||||
/// this language. This essentially chains three algorithms:
|
||||
/// determinization, acceptance adjustment (Löding's coloring
|
||||
/// algorithm), and minimization (using a Moore-like approache).
|
||||
/// algorithm), and minimization (using a Moore-like approach).
|
||||
///
|
||||
/// If the input automaton does not represent a WDBA language,
|
||||
/// the resulting automaton is still a WDBA, but it will not
|
||||
/// be equivalent to the original automaton. Use the
|
||||
/// minimize_obligation() function if you are not sure whether
|
||||
/// it is safe to call this function.
|
||||
///
|
||||
/// Please see the following paper for a discussion of this
|
||||
/// technique.
|
||||
/// If the input automaton does not represent a WDBA language, the
|
||||
/// resulting automaton is still a WDBA, but it will accept a
|
||||
/// superset of the original language. Use the
|
||||
/// minimize_obligation() function if you are not sure whether it is
|
||||
/// safe to call this function.
|
||||
///
|
||||
/// The construction is inspired by the following paper, however we
|
||||
/// guarantee that the output language is a subsets of the original
|
||||
/// language while they don't.
|
||||
/** \verbatim
|
||||
@InProceedings{ dax.07.atva,
|
||||
author = {Christian Dax and Jochen Eisinger and Felix Klaedtke},
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue