spot 2.16
Loading...
Searching...
No Matches
cobuchi.hh
1// -*- coding: utf-8 -*-
2// Copyright (C) by the Spot authors, see the AUTHORS file for details.
3//
4// This file is part of Spot, a model checking library.
5//
6// Spot is free software; you can redistribute it and/or modify it
7// under the terms of the GNU General Public License as published by
8// the Free Software Foundation; either version 3 of the License, or
9// (at your option) any later version.
10//
11// Spot is distributed in the hope that it will be useful, but WITHOUT
12// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
13// or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
14// License for more details.
15//
16// You should have received a copy of the GNU General Public License
17// along with this program. If not, see <http://www.gnu.org/licenses/>.
18
19#pragma once
20
21#include <spot/misc/bitvect.hh>
22#include <spot/twa/fwd.hh>
23
24#include <vector>
25
26namespace spot
27{
38 {
39 unsigned clause_num;
40 unsigned state_num;
42
48 nca_st_info(unsigned clause, unsigned st, bitvect* dst)
49 {
50 clause_num = clause;
51 state_num = st;
52 all_dst = dst;
53 }
54
56 {
57 delete all_dst;
58 }
59 };
60
63 typedef std::vector<struct nca_st_info*> vect_nca_info;
64
78 SPOT_API twa_graph_ptr
80 bool named_states = false,
81 vect_nca_info* nca_info = nullptr);
82
93 SPOT_API twa_graph_ptr
95 bool named_states = false,
96 vect_nca_info* nca_info = nullptr);
97
107 SPOT_API twa_graph_ptr
108 to_nca(const_twa_graph_ptr aut, bool named_states = false);
109
119 SPOT_API twa_graph_ptr
120 nsa_to_dca(const_twa_graph_ptr aut, bool named_states = false);
121
131 SPOT_API twa_graph_ptr
132 dnf_to_dca(const_twa_graph_ptr aut, bool named_states = false);
133
144 SPOT_API twa_graph_ptr
145 to_dca(const_twa_graph_ptr aut, bool named_states = false);
146}
A bit vector.
Definition bitvect.hh:51
std::vector< struct nca_st_info * > vect_nca_info
Vector of nca_st_info pointers used by the co-Büchi construction.
Definition cobuchi.hh:63
twa_graph_ptr dnf_to_dca(const_twa_graph_ptr aut, bool named_states=false)
Converts an aut. with acceptance in DNF to a det. co-Büchi aut.
twa_graph_ptr dnf_to_nca(const_twa_graph_ptr aut, bool named_states=false, vect_nca_info *nca_info=nullptr)
Converts an aut. with acceptance in DNF to a nondet. co-Büchi aut.
twa_graph_ptr to_dca(const_twa_graph_ptr aut, bool named_states=false)
Converts any ω-automata to deterministic co-buchi.
twa_graph_ptr to_nca(const_twa_graph_ptr aut, bool named_states=false)
Converts any ω-automata to non-deterministic co-buchi.
twa_graph_ptr nsa_to_dca(const_twa_graph_ptr aut, bool named_states=false)
Converts a nondet Streett-like aut. to a det. co-Büchi aut.
twa_graph_ptr nsa_to_nca(const_twa_graph_ptr aut, bool named_states=false, vect_nca_info *nca_info=nullptr)
Converts a nondet Streett-like aut. to a nondet. co-Büchi aut.
std::shared_ptr< twa_graph > twa_graph_ptr
Shared pointer to a mutable twa_graph.
Definition fwd.hh:44
std::shared_ptr< const twa_graph > const_twa_graph_ptr
Shared pointer to a const twa_graph.
Definition fwd.hh:41
Definition automata.hh:26
Definition cobuchi.hh:38
bitvect * all_dst
Bit vector of all successor states.
Definition cobuchi.hh:41
nca_st_info(unsigned clause, unsigned st, bitvect *dst)
Construct an nca_st_info entry.
Definition cobuchi.hh:48
unsigned state_num
State number in the NCA.
Definition cobuchi.hh:40
unsigned clause_num
Index of the NCA clause for this state.
Definition cobuchi.hh:39

Please direct any question, comment, or bug report to the Spot mailing list at spot@lrde.epita.fr.
Generated on Fri Feb 27 2015 10:00:07 for spot by doxygen 1.9.8