#include<dyn/module/quotient.hh>Namespace: awali::dyn
automaton_t merge(automaton_t aut, std::vector<std::vector<state_t>>& partition);
A dynamic Awali automaton which is the quotient of the input with respect to the partition. This automaton has a PARTITION history.
The representant of each part is the state with the minimal id; parts are sorted with respect to their representant; the identifiers of states of the quotient are ordered with respect to this ordering.
Outgoing transitions are computed with respect to outgoing transitions of the representants.
There is no checking that the partition is congruent with transitions.
automaton_t quotient(automaton_t aut, std::vector<std::vector<state_t>>& partition);
A dynamic Awali automaton which is the quotient of the input with respect to the partition. This automaton has a PARTITION history.
The representant of each part is the state with the minimal id; parts are sorted with respect to their representant; the identifiers of states of the quotient are ordered with respect to this ordering.
If the partition is not congruent with transitions, a runtime error is thrown.
bool is_congruence(automaton_t aut, const std::vector<std::vector<state_t>>& partition);
true if the partition is congruent with the transitions of the input; false otherwise.
automaton_t min_quotient(automaton_t aut, param_t algo = HOPCROFT);
A dynamic Awali automaton which is the minimal quotient of the input. This automaton has a PARTITION history.
automaton_t min_quotient_det(automaton_t aut, param_t algo = MOORE);
A deterministic dynamic Awali automaton which is the minimal quotient of the input. This automaton has a PARTITION history.
This function is specialization of the previous one for deterministic automata. Weighted deterministic automata are supported.
#include<dyn/module/quotient.hh>Namespace: awali::dyn
automaton_t min_coquotient(automaton_t aut, param_t algo = HOPCROFT);
A dynamic Awali automaton which is the minimal co-quotient of the input. This automaton has a PARTITION history.
automaton_t coquotient(automaton_t aut, std::vector<std::vector<state_t>>& partition);
A dynamic Awali automaton which is the co-quotient of the input with respect to the partition. This automaton has a PARTITION history.
The representant of each part is the state with the minimal id; parts are sorted with respect to their representant; the identifiers of states of the quotient are ordered with respect to this ordering.
If the partition is not congruent with reverse transitions, a runtime error is thrown.