bool PinyinLookup::unigram_gen_next_step(int nstep, lookup_value_t * cur_step, phrase_token_t token){
PinyinKey * pinyinkeys = ((PinyinKey *)m_keys->data) + nstep;
- if (!m_phrase_index->get_phrase_item(token, m_cache_phrase_item))
+ if (m_phrase_index->get_phrase_item(token, m_cache_phrase_item))
return false;
size_t phrase_length = m_cache_phrase_item.get_phrase_length();
gfloat elem_poss = m_cache_phrase_item.get_unigram_frequency() / (gfloat)
bool PinyinLookup::bigram_gen_next_step(int nstep, lookup_value_t * cur_step, phrase_token_t token, gfloat bigram_poss){
PinyinKey * pinyinkeys = ((PinyinKey *)m_keys->data) + nstep;
- if (!m_phrase_index->get_phrase_item(token, m_cache_phrase_item))
+ if (m_phrase_index->get_phrase_item(token, m_cache_phrase_item))
return false;
size_t phrase_length = m_cache_phrase_item.get_phrase_length();
gfloat unigram_poss = m_cache_phrase_item.get_unigram_frequency() / (gfloat)
}
bool PinyinLookup::add_constraint(CandidateConstraints constraints, size_t index, phrase_token_t token){
- if ( !m_phrase_index->get_phrase_item(token, m_cache_phrase_item) )
+ if ( m_phrase_index->get_phrase_item(token, m_cache_phrase_item) )
return false;
size_t phrase_length = m_cache_phrase_item.get_phrase_length();
assert(constraint->m_type == CONSTRAINT_ONESTEP);
phrase_token_t token = constraint->m_token;
- if (!m_phrase_index->get_phrase_item(token, m_cache_phrase_item))
+ if (m_phrase_index->get_phrase_item(token, m_cache_phrase_item))
return false;
size_t phrase_length = m_cache_phrase_item.get_phrase_length();
guint32 freq = 0;
parameter_t elem_poss = 0;
PhraseItem item;
- if (unigram->get_phrase_item(token, item)){
+ if (!unigram->get_phrase_item(token, item)){
guint32 freq = item.get_unigram_frequency();
guint32 total_freq = unigram->get_phrase_index_total_freq();
elem_poss = freq / (parameter_t)total_freq;