Home | History | Annotate | Download | only in fst

Lines Matching defs:Subset

113 // Represents an element in a subset
151 typedef slist< DeterminizeElement<Arc> > Subset;
152 typedef map<Label, Subset*> LabelMap;
170 // typedef slist<Element> Subset;
178 // // Lookup state ID by subset (not depending of the element order).
180 // // ownership of the subset argument (so that it doesn't have to
182 // StateId FindState(Subset *subset);
184 // // Lookup subset by ID.
185 // const Subset *FindSubset(StateId id) const;
198 typedef slist<Element> Subset;
213 // Finds the state corresponding to a subset. Only creates a new
214 // state if the subset is not found. FindState takes ownership of
215 // the subset argument (so that it doesn't have to copy it if it
217 StateId FindState(Subset *subset) {
219 StateId s = subsets_.FindId(subset);
220 if (s != ns) delete subset; // subset found
224 const Subset* FindSubset(StateId s) { return subsets_.FindEntry(s); }
227 // Comparison object for hashing Subset(s). Subsets are not sorted in this
244 bool operator()(Subset* subset1, Subset* subset2) const {
253 // Loads first subset elements in element vector.
254 for (typename Subset::iterator iter1 = subset1->begin();
263 // Checks second subset matches first via element vector.
264 for (typename Subset::iterator iter2 = subset2->begin();
273 for (typename Subset::iterator iter1 = subset1->begin();
288 // Hash function for Subset to Fst states. Subset elements are not
290 // under subset reordering.
293 size_t operator()(const Subset* subset) const {
295 if (subset) {
296 for (typename Subset::const_iterator iter = subset->begin();
297 iter != subset->end();
312 typedef CompactHashBiTable<StateId, Subset *,
331 float delta; // Quantization delta for subset weights
469 typedef slist<Element> Subset;
530 Subset *subset = new Subset;
531 subset->push_front(element);
532 return FindState(subset);
536 const Subset *subset = state_table_->FindSubset(s);
538 for (typename Subset::const_iterator siter = subset->begin();
539 siter != subset->end();
550 StateId FindState(Subset *subset) {
551 StateId s = state_table_->FindState(subset);
553 out_dist_->push_back(ComputeDistance(subset));
559 Weight ComputeDistance(const Subset *subset) {
561 for (typename Subset::const_iterator siter = subset->begin();
562 siter != subset->end(); ++siter) {
586 // Constructs destination subsets per label. At return, subset
590 const Subset *src_subset = state_table_->FindSubset(s);
592 for (typename Subset::const_iterator siter = src_subset->begin();
606 Subset* dest_subset;
608 dest_subset = new Subset;
622 // with subset DEST_SUBSET (as created by LabelSubsets).
623 void AddArc(StateId s, Label label, Subset *dest_subset) {
629 typename Subset::iterator oiter;
630 for (typename Subset::iterator diter = dest_subset->begin();
655 // Divides out label weight from destination subset elements.
658 for (typename Subset::iterator diter = dest_subset->begin();
672 float delta_; // Quantization delta for subset weights
948 float delta; // Quantization delta for subset weights.