Class mata::Mintermization¶
-
class Mintermization¶
Public Functions
-
std::unordered_set<BDD> compute_minterms(const std::unordered_set<BDD> &source_bdds)¶
Takes a set of BDDs and build a minterm tree over it.
The leaves of BDDs, which are minterms of input set, are returned
- Parameters:
source_bdds – BDDs for which minterms are computed
- Returns:
Computed minterms
-
BDD graph_to_bdd_nfa(const FormulaGraph &graph)¶
Transforms a graph representing formula at transition to bdd.
- Parameters:
graph – Graph to be transformed
- Returns:
Resulting BDD
-
OptionalBdd graph_to_bdd_afa(const FormulaGraph &graph)¶
Transforms a graph representing formula at transition to bdd.
This version of method is a more general one and accepts also formula including states.
- Parameters:
graph – Graph to be transformed
- Returns:
Resulting BDD
-
mata::IntermediateAut mintermize(const mata::IntermediateAut &aut)¶
Method mintermizes given automaton which has bitvector alphabet.
It transforms its transitions to BDDs, then build a minterm tree over the BDDs and finally transforms automaton to explicit one.
- Parameters:
aut – Automaton to be mintermized.
- Returns:
Mintermized automaton
-
std::vector<mata::IntermediateAut> mintermize(const std::vector<const mata::IntermediateAut*> &auts)¶
Methods mintermize given automata which have bitvector alphabet.
It transforms transitions of all automata to BDDs, then build a minterm tree over the BDDs and finally transforms automata to explicit one (sharing the same minterms).
- Parameters:
auts – Automata to be mintermized.
- Returns:
Mintermized automata corresponding to the input autamata
-
void minterms_to_aut_nfa(mata::IntermediateAut &res, const mata::IntermediateAut &aut, const std::unordered_set<BDD> &minterms)¶
The method performs the mintermization over @aut with given @minterms.
It is method specialized for NFA.
- Parameters:
res – The resulting mintermized automaton
aut – Automaton to be mintermized
minterms – Set of minterms for mintermization
-
void minterms_to_aut_afa(mata::IntermediateAut &res, const mata::IntermediateAut &aut, const std::unordered_set<BDD> &minterms)¶
The method for mintermization of alternating finite automaton using a given set of minterms.
- Parameters:
res – The resulting mintermized automaton
aut – Automaton to be mintermized
minterms – Set of minterms for mintermization
-
std::unordered_set<BDD> compute_minterms(const std::unordered_set<BDD> &source_bdds)¶