Awali
Another Weighted Automata library
Data Structures | Public Types | Public Member Functions
awali::sttc::internal::detweighted_algo_impl< Aut > Class Template Reference

The weighted determinization of weighted automaton. More...

#include <determinize.hxx>

Data Structures

struct  stateset
 An output state is a list of weighted input states. More...
 

Public Types

using automaton_t = Aut
 
using label_t = label_t_of< automaton_t >
 
using state_name_t = typename state_nameset_t::value_t
 
using state_nameset_t = polynomialset< context< stateset, weightset_t > >
 
using weight_t = weight_t_of< automaton_t >
 
using weightset_t = weightset_t_of< automaton_t >
 

Public Member Functions

 detweighted_algo_impl (const automaton_t &a, int lim=-1)
 Build the weighted determinizer. More...
 
automaton_t operator() ()
 
template<typename Pred >
automaton_t operator() (Pred pred)
 The determinization of weighted automaton the state is added to the result only if the predicate pred is true, otherwise it is replace by the 'unknown' state. More...
 

Detailed Description

template<typename Aut>
class awali::sttc::internal::detweighted_algo_impl< Aut >

The weighted determinization of weighted automaton.

This function only applies to true finite state machine. The result is a deterministic automaton where the weight of the word is given by the final function. If the semiring is not locally finite, the termination is not assured.

Template Parameters
Autan weighted automaton type.
Precondition
labelset is free.

Member Typedef Documentation

◆ automaton_t

template<typename Aut >
using awali::sttc::internal::detweighted_algo_impl< Aut >::automaton_t = Aut

◆ label_t

◆ state_name_t

◆ state_nameset_t

◆ weight_t

◆ weightset_t

Constructor & Destructor Documentation

◆ detweighted_algo_impl()

template<typename Aut >
awali::sttc::internal::detweighted_algo_impl< Aut >::detweighted_algo_impl ( const automaton_t a,
int  lim = -1 
)

Build the weighted determinizer.

Parameters
athe weighted automaton to determinize
limthe depth of the determinisation; -1 means infinity

Member Function Documentation

◆ operator()() [1/2]

template<typename Aut >
automaton_t awali::sttc::internal::detweighted_algo_impl< Aut >::operator() ( )

◆ operator()() [2/2]

template<typename Aut >
template<typename Pred >
automaton_t awali::sttc::internal::detweighted_algo_impl< Aut >::operator() ( Pred  pred)

The determinization of weighted automaton the state is added to the result only if the predicate pred is true, otherwise it is replace by the 'unknown' state.

Parameters
preda lambda state_name_t -> bool
Template Parameters
Predthe type of pred

The documentation for this class was generated from the following file: