Change name of DecayingUtils.

Bug: 6669677
Change-Id: I97839b2184b95ae1659c55a9b31d22e2d601cba1
diff --git a/native/jni/Android.mk b/native/jni/Android.mk
index 36afea5..ca6a779 100644
--- a/native/jni/Android.mk
+++ b/native/jni/Android.mk
@@ -85,8 +85,8 @@
     $(addprefix suggest/policyimpl/dictionary/utils/, \
         buffer_with_extendable_buffer.cpp \
         byte_array_utils.cpp \
-        decaying_utils.cpp \
         dict_file_writing_utils.cpp \
+        forgetting_curve_utils.cpp \
         format_utils.cpp) \
     suggest/policyimpl/gesture/gesture_suggest_policy_factory.cpp \
     $(addprefix suggest/policyimpl/typing/, \
diff --git a/native/jni/src/suggest/policyimpl/dictionary/bigram/dynamic_bigram_list_policy.cpp b/native/jni/src/suggest/policyimpl/dictionary/bigram/dynamic_bigram_list_policy.cpp
index 67a085d..9c3dc39 100644
--- a/native/jni/src/suggest/policyimpl/dictionary/bigram/dynamic_bigram_list_policy.cpp
+++ b/native/jni/src/suggest/policyimpl/dictionary/bigram/dynamic_bigram_list_policy.cpp
@@ -20,7 +20,7 @@
 #include "suggest/policyimpl/dictionary/dynamic_patricia_trie_node_reader.h"
 #include "suggest/policyimpl/dictionary/dynamic_patricia_trie_writing_helper.h"
 #include "suggest/policyimpl/dictionary/utils/buffer_with_extendable_buffer.h"
-#include "suggest/policyimpl/dictionary/utils/decaying_utils.h"
+#include "suggest/policyimpl/dictionary/utils/forgetting_curve_utils.h"
 
 namespace latinime {
 
@@ -43,7 +43,7 @@
     }
     *outProbability = BigramListReadWriteUtils::getProbabilityFromFlags(bigramFlags);
     *outHasNext = BigramListReadWriteUtils::hasNext(bigramFlags);
-    if (mIsDecayingDict && !DecayingUtils::isValidBigram(*outProbability)) {
+    if (mIsDecayingDict && !ForgettingCurveUtils::isValidBigram(*outProbability)) {
         // This bigram is too weak to output.
         *outBigramPos = NOT_A_DICT_POS;
     } else {
@@ -261,7 +261,7 @@
             const int originalProbability = BigramListReadWriteUtils::getProbabilityFromFlags(
                     bigramFlags);
             const int probabilityToWrite = mIsDecayingDict ?
-                    DecayingUtils::getUpdatedBigramProbabilityDelta(
+                    ForgettingCurveUtils::getUpdatedBigramProbabilityDelta(
                             originalProbability, probability) : probability;
             const BigramListReadWriteUtils::BigramFlags updatedFlags =
                     BigramListReadWriteUtils::setProbabilityInFlags(bigramFlags,
@@ -294,7 +294,7 @@
         int *const writingPos) {
     // hasNext is false because we are adding a new bigram entry at the end of the bigram list.
     const int probabilityToWrite = mIsDecayingDict ?
-            DecayingUtils::getUpdatedBigramProbabilityDelta(NOT_A_PROBABILITY, probability) :
+            ForgettingCurveUtils::getUpdatedBigramProbabilityDelta(NOT_A_PROBABILITY, probability) :
                     probability;
     return BigramListReadWriteUtils::createAndWriteBigramEntry(mBuffer, bigramTargetPos,
             probabilityToWrite, false /* hasNext */, writingPos);
@@ -365,9 +365,9 @@
     *outRemoved = false;
     if (mIsDecayingDict) {
         // Update bigram probability for decaying.
-        const int newProbability = DecayingUtils::getBigramProbabilityDeltaToSave(
+        const int newProbability = ForgettingCurveUtils::getBigramProbabilityDeltaToSave(
                 BigramListReadWriteUtils::getProbabilityFromFlags(bigramFlags));
-        if (DecayingUtils::isValidBigram(newProbability)) {
+        if (ForgettingCurveUtils::isValidBigram(newProbability)) {
             // Write new probability.
             const BigramListReadWriteUtils::BigramFlags updatedBigramFlags =
                     BigramListReadWriteUtils::setProbabilityInFlags(
diff --git a/native/jni/src/suggest/policyimpl/dictionary/dynamic_patricia_trie_gc_event_listeners.cpp b/native/jni/src/suggest/policyimpl/dictionary/dynamic_patricia_trie_gc_event_listeners.cpp
index 081163a..26ea6ab 100644
--- a/native/jni/src/suggest/policyimpl/dictionary/dynamic_patricia_trie_gc_event_listeners.cpp
+++ b/native/jni/src/suggest/policyimpl/dictionary/dynamic_patricia_trie_gc_event_listeners.cpp
@@ -16,7 +16,7 @@
 
 #include "suggest/policyimpl/dictionary/dynamic_patricia_trie_gc_event_listeners.h"
 
-#include "suggest/policyimpl/dictionary/utils/decaying_utils.h"
+#include "suggest/policyimpl/dictionary/utils/forgetting_curve_utils.h"
 
 namespace latinime {
 
@@ -29,14 +29,14 @@
     bool isUselessPtNode = !node->isTerminal();
     if (node->isTerminal() && mIsDecayingDict) {
         const int newProbability =
-                DecayingUtils::getUnigramProbabilityToSave(node->getProbability());
+                ForgettingCurveUtils::getUnigramProbabilityToSave(node->getProbability());
         int writingPos = node->getProbabilityFieldPos();
         // Update probability.
         if (!DynamicPatriciaTrieWritingUtils::writeProbabilityAndAdvancePosition(
                 mBuffer, newProbability, &writingPos)) {
             return false;
         }
-        if (!DecayingUtils::isValidUnigram(newProbability)) {
+        if (!ForgettingCurveUtils::isValidUnigram(newProbability)) {
             isUselessPtNode = false;
         }
     }
diff --git a/native/jni/src/suggest/policyimpl/dictionary/dynamic_patricia_trie_policy.cpp b/native/jni/src/suggest/policyimpl/dictionary/dynamic_patricia_trie_policy.cpp
index a5a42ea..60d0db0 100644
--- a/native/jni/src/suggest/policyimpl/dictionary/dynamic_patricia_trie_policy.cpp
+++ b/native/jni/src/suggest/policyimpl/dictionary/dynamic_patricia_trie_policy.cpp
@@ -28,7 +28,7 @@
 #include "suggest/policyimpl/dictionary/dynamic_patricia_trie_reading_utils.h"
 #include "suggest/policyimpl/dictionary/dynamic_patricia_trie_writing_helper.h"
 #include "suggest/policyimpl/dictionary/patricia_trie_reading_utils.h"
-#include "suggest/policyimpl/dictionary/utils/decaying_utils.h"
+#include "suggest/policyimpl/dictionary/utils/forgetting_curve_utils.h"
 #include "suggest/policyimpl/dictionary/utils/probability_utils.h"
 
 namespace latinime {
@@ -154,7 +154,7 @@
 int DynamicPatriciaTriePolicy::getProbability(const int unigramProbability,
         const int bigramProbability) const {
     if (mHeaderPolicy.isDecayingDict()) {
-        return DecayingUtils::getProbability(unigramProbability, bigramProbability);
+        return ForgettingCurveUtils::getProbability(unigramProbability, bigramProbability);
     } else {
         if (unigramProbability == NOT_A_PROBABILITY) {
             return NOT_A_PROBABILITY;
@@ -344,10 +344,10 @@
         // Needs to reduce dictionary size.
         return true;
     } else if (mHeaderPolicy.isDecayingDict()) {
-        if (mUnigramCount >= DecayingUtils::MAX_UNIGRAM_COUNT) {
+        if (mUnigramCount >= ForgettingCurveUtils::MAX_UNIGRAM_COUNT) {
             // Unigram count exceeds the limit.
             return true;
-        } else if (mBigramCount >= DecayingUtils::MAX_BIGRAM_COUNT) {
+        } else if (mBigramCount >= ForgettingCurveUtils::MAX_BIGRAM_COUNT) {
             // Bigram count exceeds the limit.
             return true;
         } else if (mindsBlockByGC && needsToDecay()) {
diff --git a/native/jni/src/suggest/policyimpl/dictionary/dynamic_patricia_trie_writing_helper.cpp b/native/jni/src/suggest/policyimpl/dictionary/dynamic_patricia_trie_writing_helper.cpp
index db6d48f..9dc2abe 100644
--- a/native/jni/src/suggest/policyimpl/dictionary/dynamic_patricia_trie_writing_helper.cpp
+++ b/native/jni/src/suggest/policyimpl/dictionary/dynamic_patricia_trie_writing_helper.cpp
@@ -25,8 +25,8 @@
 #include "suggest/policyimpl/dictionary/header/header_policy.h"
 #include "suggest/policyimpl/dictionary/patricia_trie_reading_utils.h"
 #include "suggest/policyimpl/dictionary/shortcut/dynamic_shortcut_list_policy.h"
-#include "suggest/policyimpl/dictionary/utils/decaying_utils.h"
 #include "suggest/policyimpl/dictionary/utils/dict_file_writing_utils.h"
+#include "suggest/policyimpl/dictionary/utils/forgetting_curve_utils.h"
 #include "utils/hash_map_compat.h"
 
 namespace latinime {
@@ -494,7 +494,7 @@
         return false;
     }
     if (mNeedsToDecay && traversePolicyToUpdateUnigramProbabilityAndMarkUselessPtNodesAsDeleted
-            .getValidUnigramCount() > DecayingUtils::MAX_UNIGRAM_COUNT_AFTER_GC) {
+            .getValidUnigramCount() > ForgettingCurveUtils::MAX_UNIGRAM_COUNT_AFTER_GC) {
         // TODO: Remove more unigrams.
     }
 
@@ -507,7 +507,7 @@
     }
 
     if (mNeedsToDecay && traversePolicyToUpdateBigramProbability.getValidBigramEntryCount()
-            > DecayingUtils::MAX_BIGRAM_COUNT_AFTER_GC) {
+            > ForgettingCurveUtils::MAX_BIGRAM_COUNT_AFTER_GC) {
         // TODO: Remove more bigrams.
     }
 
@@ -545,7 +545,8 @@
 int DynamicPatriciaTrieWritingHelper::getUpdatedProbability(const int originalProbability,
         const int newProbability) {
     if (mNeedsToDecay) {
-        return DecayingUtils::getUpdatedUnigramProbability(originalProbability, newProbability);
+        return ForgettingCurveUtils::getUpdatedUnigramProbability(originalProbability,
+                newProbability);
     } else {
         return newProbability;
     }
diff --git a/native/jni/src/suggest/policyimpl/dictionary/utils/decaying_utils.cpp b/native/jni/src/suggest/policyimpl/dictionary/utils/forgetting_curve_utils.cpp
similarity index 67%
rename from native/jni/src/suggest/policyimpl/dictionary/utils/decaying_utils.cpp
rename to native/jni/src/suggest/policyimpl/dictionary/utils/forgetting_curve_utils.cpp
index 942a742..c525a8a 100644
--- a/native/jni/src/suggest/policyimpl/dictionary/utils/decaying_utils.cpp
+++ b/native/jni/src/suggest/policyimpl/dictionary/utils/forgetting_curve_utils.cpp
@@ -14,26 +14,26 @@
  * limitations under the License.
  */
 
-#include "suggest/policyimpl/dictionary/utils/decaying_utils.h"
+#include "suggest/policyimpl/dictionary/utils/forgetting_curve_utils.h"
 
 #include "suggest/policyimpl/dictionary/utils/probability_utils.h"
 
 namespace latinime {
 
-const int DecayingUtils::MAX_UNIGRAM_COUNT = 12000;
-const int DecayingUtils::MAX_UNIGRAM_COUNT_AFTER_GC = 10000;
-const int DecayingUtils::MAX_BIGRAM_COUNT = 12000;
-const int DecayingUtils::MAX_BIGRAM_COUNT_AFTER_GC = 10000;
+const int ForgettingCurveUtils::MAX_UNIGRAM_COUNT = 12000;
+const int ForgettingCurveUtils::MAX_UNIGRAM_COUNT_AFTER_GC = 10000;
+const int ForgettingCurveUtils::MAX_BIGRAM_COUNT = 12000;
+const int ForgettingCurveUtils::MAX_BIGRAM_COUNT_AFTER_GC = 10000;
 
-const int DecayingUtils::MAX_COMPUTED_PROBABILITY = 127;
-const int DecayingUtils::MAX_UNIGRAM_PROBABILITY = 120;
-const int DecayingUtils::MIN_VALID_UNIGRAM_PROBABILITY = 24;
-const int DecayingUtils::UNIGRAM_PROBABILITY_STEP = 8;
-const int DecayingUtils::MAX_BIGRAM_PROBABILITY_DELTA = 15;
-const int DecayingUtils::MIN_VALID_BIGRAM_PROBABILITY_DELTA = 3;
-const int DecayingUtils::BIGRAM_PROBABILITY_DELTA_STEP = 1;
+const int ForgettingCurveUtils::MAX_COMPUTED_PROBABILITY = 127;
+const int ForgettingCurveUtils::MAX_UNIGRAM_PROBABILITY = 120;
+const int ForgettingCurveUtils::MIN_VALID_UNIGRAM_PROBABILITY = 24;
+const int ForgettingCurveUtils::UNIGRAM_PROBABILITY_STEP = 8;
+const int ForgettingCurveUtils::MAX_BIGRAM_PROBABILITY_DELTA = 15;
+const int ForgettingCurveUtils::MIN_VALID_BIGRAM_PROBABILITY_DELTA = 3;
+const int ForgettingCurveUtils::BIGRAM_PROBABILITY_DELTA_STEP = 1;
 
-/* static */ int DecayingUtils::getProbability(const int encodedUnigramProbability,
+/* static */ int ForgettingCurveUtils::getProbability(const int encodedUnigramProbability,
         const int encodedBigramProbabilityDelta) {
     if (encodedUnigramProbability == NOT_A_PROBABILITY) {
         return NOT_A_PROBABILITY;
@@ -49,8 +49,8 @@
     }
 }
 
-/* static */ int DecayingUtils::getUpdatedUnigramProbability(const int originalEncodedProbability,
-        const int newProbability) {
+/* static */ int ForgettingCurveUtils::getUpdatedUnigramProbability(
+        const int originalEncodedProbability, const int newProbability) {
     if (originalEncodedProbability == NOT_A_PROBABILITY) {
         // The unigram is not in this dictionary.
         if (newProbability == NOT_A_PROBABILITY) {
@@ -68,15 +68,16 @@
     }
 }
 
-/* static */ int DecayingUtils::getUnigramProbabilityToSave(const int encodedProbability) {
+/* static */ int ForgettingCurveUtils::getUnigramProbabilityToSave(const int encodedProbability) {
     return max(encodedProbability - UNIGRAM_PROBABILITY_STEP, 0);
 }
 
-/* static */ int DecayingUtils::getBigramProbabilityDeltaToSave(const int encodedProbabilityDelta) {
+/* static */ int ForgettingCurveUtils::getBigramProbabilityDeltaToSave(
+        const int encodedProbabilityDelta) {
     return max(encodedProbabilityDelta - BIGRAM_PROBABILITY_DELTA_STEP, 0);
 }
 
-/* static */ int DecayingUtils::getUpdatedBigramProbabilityDelta(
+/* static */ int ForgettingCurveUtils::getUpdatedBigramProbabilityDelta(
         const int originalEncodedProbabilityDelta, const int newProbability) {
     if (originalEncodedProbabilityDelta == NOT_A_PROBABILITY) {
         // The bigram relation is not in this dictionary.
@@ -96,15 +97,15 @@
     }
 }
 
-/* static */ int DecayingUtils::isValidUnigram(const int encodedUnigramProbability) {
+/* static */ int ForgettingCurveUtils::isValidUnigram(const int encodedUnigramProbability) {
     return encodedUnigramProbability >= MIN_VALID_UNIGRAM_PROBABILITY;
 }
 
-/* static */ int DecayingUtils::isValidBigram(const int encodedBigramProbabilityDelta) {
+/* static */ int ForgettingCurveUtils::isValidBigram(const int encodedBigramProbabilityDelta) {
     return encodedBigramProbabilityDelta >= MIN_VALID_BIGRAM_PROBABILITY_DELTA;
 }
 
-/* static */ int DecayingUtils::decodeUnigramProbability(const int encodedProbability) {
+/* static */ int ForgettingCurveUtils::decodeUnigramProbability(const int encodedProbability) {
     const int probability = encodedProbability - MIN_VALID_UNIGRAM_PROBABILITY;
     if (probability < 0) {
         return NOT_A_PROBABILITY;
@@ -113,7 +114,8 @@
     }
 }
 
-/* static */ int DecayingUtils::decodeBigramProbabilityDelta(const int encodedProbabilityDelta) {
+/* static */ int ForgettingCurveUtils::decodeBigramProbabilityDelta(
+        const int encodedProbabilityDelta) {
     const int probabilityDelta = encodedProbabilityDelta - MIN_VALID_BIGRAM_PROBABILITY_DELTA;
     if (probabilityDelta < 0) {
         return NOT_A_PROBABILITY;
@@ -122,7 +124,7 @@
     }
 }
 
-/* static */ int DecayingUtils::getDecayedProbability(const int rawProbability) {
+/* static */ int ForgettingCurveUtils::getDecayedProbability(const int rawProbability) {
     return rawProbability;
 }
 
diff --git a/native/jni/src/suggest/policyimpl/dictionary/utils/decaying_utils.h b/native/jni/src/suggest/policyimpl/dictionary/utils/forgetting_curve_utils.h
similarity index 91%
rename from native/jni/src/suggest/policyimpl/dictionary/utils/decaying_utils.h
rename to native/jni/src/suggest/policyimpl/dictionary/utils/forgetting_curve_utils.h
index 1ca0391..11ffb2e 100644
--- a/native/jni/src/suggest/policyimpl/dictionary/utils/decaying_utils.h
+++ b/native/jni/src/suggest/policyimpl/dictionary/utils/forgetting_curve_utils.h
@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef LATINIME_DECAYING_UTILS_H
-#define LATINIME_DECAYING_UTILS_H
+#ifndef LATINIME_FORGETTING_CURVE_UTILS_H
+#define LATINIME_FORGETTING_CURVE_UTILS_H
 
 #include "defines.h"
 
@@ -25,7 +25,7 @@
 // required to introduced to each terminal PtNode and bigram entry.
 // TODO: Quit using bigram probability to indicate the delta.
 // TODO: Quit using bigram probability delta.
-class DecayingUtils {
+class ForgettingCurveUtils {
  public:
     static const int MAX_UNIGRAM_COUNT;
     static const int MAX_UNIGRAM_COUNT_AFTER_GC;
@@ -50,7 +50,7 @@
     static int getBigramProbabilityDeltaToSave(const int encodedProbabilityDelta);
 
  private:
-    DISALLOW_IMPLICIT_CONSTRUCTORS(DecayingUtils);
+    DISALLOW_IMPLICIT_CONSTRUCTORS(ForgettingCurveUtils);
 
     static const int MAX_COMPUTED_PROBABILITY;
     static const int MAX_UNIGRAM_PROBABILITY;
@@ -67,4 +67,4 @@
     static int getDecayedProbability(const int rawProbability);
 };
 } // namespace latinime
-#endif /* LATINIME_DECAYING_UTILS_H */
+#endif /* LATINIME_FORGETTING_CURVE_UTILS_H */