70 bool operator != (
const symbol_t &s2)
const;
95 friend inline ostream& operator<<(ostream& s,
const Lattice::Node &n);
96 friend inline ostream& operator<<(ostream& s,
const Lattice::Arc &n);
100 float qmap_error_margin;
113 int e_move_symbol_index;
120 int alphabet_index_lookup(
int nmap_index,
int qmap_index);
136 bool build_transition_function();
138 bool build_distinguished_state_table(
bool ** &dst);
139 bool build_distinguished_state_table_direct(
bool ** &dst);
140 bool build_distinguished_state_table_from_transition_function(
bool ** &dst);
142 void sort_arc_lists();
143 bool link(
Node *n1,
Node *n2,
int label);
147 void prune_arc(
Node *node,
Arc *arc);
149 void remove_arc_from_nodes_out_list(
Node *n,
Arc *a);
151 int node_index(
Node *n);
175 EST_Litem *current_symbol = NULL,
176 Node *start_node = NULL);
179 float viterbi_transduce(
EST_Track &observations,
182 int current_frame = 0,
183 Node *start_node = NULL);
187 float qmap_index_to_value(
int index);
188 int qmap_value_to_index(
float value);
191 int nmap_name_to_index(
const EST_String &name);
193 symbol_t* alphabet_index_to_symbol(
int index);
194 int alphabet_symbol_to_index(
symbol_t *sym);
197 friend bool save(Lattice &lattice,
EST_String filename);
198 friend bool load(Lattice &lattice,
EST_String filename);
200 friend class Lattice_Language_Model;