<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>ALTNLP), June</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Algorithm for Uzbek Language</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Maksud Sharipov</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ollabergan Yuldashov</string-name>
          <email>ollaberganyuldashov@gmail.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Urgench State University</institution>
          ,
          <addr-line>14. Kh.Alimdjan str, Urgench City, 220100</addr-line>
          ,
          <country country="UZ">Uzbekistan</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2022</year>
      </pub-date>
      <volume>6</volume>
      <issue>2022</issue>
      <abstract>
        <p>In this paper we present a rule-based stemming algorithm for the Uzbek language. Uzbek is an agglutinative language, so many words are formed by adding suffixes, and the number of suffixes is also large. For this reason, it is difficult to find a stem of words. The methodology is proposed for doing the stemming of the Uzbek words with an affix stripping approach whereas not including any database of the normal word forms of the Uzbek language. Word affixes are classified into fifteen classes and designed as finite state machines (FSMs) for each class according to morphological rules. We created fifteen FSMs and linked them together to create the Basic FSM. A lexicon of affixes in XML format was created and a stemming application for Uzbek words has been developed Stemming is defined as the conflation of all variations of specific words to a single form called the root or stem. Stemming algorithms for some languages have been published and applied in the building of information retrieval systems, among which for English is the well-known Porter's algorithm [1,2]. According to the stemming principle, stemming algorithms can be divided into four categories, that are rule-based (truncating, affix removal) method, dictionary look-up (table lookup) method, statistical method, and mixed-method [3].</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>2022 Copyright for this paper by its authors.
stem of the word [6]. For instance, a single word “O‘qi/ma/gan/lar/dan/mi/siz?” (Are you from those
who did not read?), which in fact is a question, can be parsed as following:
o‘qi to read
o‘qi/ma don’t read
o‘qi/ma/gan he/she di not read
o‘qi/ma/gan/lar they did not read
o‘qi/ma/gan/lar/dan from those who did not read
o‘qi/ma/gan/lar/dan/mi/siz are you from those who did not read</p>
    </sec>
    <sec id="sec-2">
      <title>2. Finite State Machines(FSM) Generation</title>
      <p>An affix in Uzbek can have multiple allomorphs in order to provide sound harmony (as the
phonological rules) in the word to which it is affixed. For example, the Declension suffix with generic
representation –Ga has three allomorphs: –ga, –ka, –qa. The abbreviations used to show suffixes in a
generic way are shown below:
G: g, k, q Y: a, y K: k, g Q: k, g, g’, q T: t, d A: a,o
(): the letter between parentheses can be omitted</p>
      <p>All affixes are stored in the Suffixes.xml file. The structure of the XML file is as follows:
&lt;?xml version='1.0' encoding='UTF-8'?&gt;
&lt;suffixes&gt;
&lt;item fsm_id="" suff_id="" group="" pos="" class=""&gt;
&lt;suffix allomorph="false"&gt;
&lt;name&gt;...&lt;/name&gt;
&lt;exception_cut&gt;...&lt;/exception_cut&gt;
&lt;exception_pass&gt;...&lt;/exception_pass&gt;
&lt;/suffix&gt;
&lt;definition&gt;...&lt;/definition&gt;
&lt;old_pos&gt;...&lt;/old_pos&gt;
&lt;new_pos&gt;...&lt;/new_pos&gt;
&lt;/item&gt;
&lt;/suffixes&gt;</p>
      <p>Here, the &lt;suffixes&gt; ... &lt;/suffixes&gt; tag is the root tag, &lt;item&gt;...&lt;/item&gt; teg for affixes, there
are fsm_id(for FSM id in Table 1), suff_id(for affixes id in each FSM Suffixes table), group=""
category="" class="" type="" ( for to express the internal division of affixes in Table 2 within word
classes) attributes in &lt;item&gt;...&lt;/item&gt;. The &lt;exception_cut&gt; &lt;/exception_cut&gt; and &lt;exception_pass&gt;
&lt;/exception_pass&gt; tags are used for exceptions. The &lt;old_pos&gt; &lt;/old_pos&gt; and &lt;new_pos&gt;
&lt;/new_pos&gt; tags indicate the state before and after the affixes under consideration in the context of
open word classes. If the allomorph attribute of the &lt;suffixes&gt; ... &lt;/suffixes&gt; tag is true, all allomorphs
of the affixes are entered as:
&lt;suffix allomorph="true"&gt;
&lt;allomorph&gt;
&lt;name&gt;...&lt;/name&gt;
&lt;exception_cut&gt;...&lt;/exception_cut&gt;
&lt;exception_pass&gt;...&lt;/exception_pass&gt;
&lt;/allomorph&gt;
&lt;allomorph&gt;
&lt;name&gt;...&lt;/name&gt;
&lt;exception_cut&gt;...&lt;/exception_cut&gt;
&lt;exception_pass&gt;...&lt;/exception_pass&gt;
&lt;/allomorph&gt;
&lt;/suffix&gt;</p>
    </sec>
    <sec id="sec-3">
      <title>2.1. Declension Suffixes</title>
      <p>Declension suffixes are added in Uzbek after open word classes such as noun, adjective, pronoun,
numeral and past participle. First, we learn the sequence of affixes, then we build the FSM from left to
right [6,10,11,12,13].</p>
      <p>In Figure 1, a numerical value is indicated a state. In the following stages, the states will be expressed
with these numbers: 0 – ending state, 1 – initial state. The character “ε” means the empty transitions
between the states. The final state is represented by 2 circles.</p>
      <p>In the next step, the affixes in Figure 1 are numbered. In the next steps, the sequence number in
Table 2 is used instead of the affixes.</p>
      <p>In Figure 2, the right to left NFA is shown, in which the FSM position from left to right in reverse
order is constructed from right to left.</p>
      <p>
        Let us look at some examples of how the following Declension suffixes are made from left to right
finite automata (Figure 1): qishlog‘ (
        <xref ref-type="bibr" rid="ref1">1</xref>
        ) → im (2) → dan (5) → siz (6) → lar (0) (You are from my
village), where the numbers in parentheses indicate the transitions in Figure 1.
      </p>
      <p>The large number of gaps in the FSM from left to right and the depth of the FSM complicate the
construction of the FSM from right to left.</p>
      <p>Table 3 illustrates the transition from NFA to DFA. In DFA, there is only one way out of each entry
and exit. There will be no empty transaction at DFA.</p>
      <p>If we define the input state of the DFA as A, it includes the input state of the NFA 0 and the states
1,2,4,5,6,7,8 that can pass through the 0-statement empty transition. Entry in DFA A state includes all
{0,1,2,4,5,6,7,8} initial cases in NFA. We analyze the new states formed as a result of trimming the
suffixes of each state, after the initial case. For example, if the initial state of a word in state A is defined
by the suffixes "1-5"(1 - (i)m, 2 - (i)ng, 3 - (s)i, 4 - (i)miz, 5 - (i)ngiz) in Table 2, it will cut the suffix
defined on the right side of the word and move the word to the next state B.</p>
      <p>When depicting the FSM from right to left, the state contains the final state of the NFA - 1, while
from right to left the state of the FSM is the final state and is represented by 2 circular circles. In this
case, the FSM ends in the state if no other suffix is found after the word that cut the suffix and the
incoming state is the final state.</p>
    </sec>
    <sec id="sec-4">
      <title>2.2. Noun &amp; Adjective Suffixes</title>
      <p>If we analyze the word “yaxshiroqlaridan” (from things/people which are better). The word initially
passes in Figure 3, through Declension Suffixes FSM from right to left, and in this FSM, 10(dan) suffix
of the word are cut and go from A to C state, then FSM cut the 3((s)i) suffix and it move from C to B
state: “yaxshiroqlaridan”( A– 10 → C ) → “yaxshiroqlari”( C – 3 →B). It stops here because no suffixes
after B state are found and B state is the final state. The resulting “yaxshiroqlar”(things/people which
are better) word is passed to the next Noun&amp;Adjective Suffixes FSM in Figure 5. In this FSM, the suffix
11(lar) is cut and moves from state A to state B, then cut the suffix 8 (roq) and move from B to C state:
“yaxshiroqlar”( A – 11 → B) → “yaxshiroq” ( B – 8 → C) → “yaxshi” (good). The result is the stem of
the word.</p>
    </sec>
    <sec id="sec-5">
      <title>2.3. Derivational [Noun] Suffixes</title>
      <p>Most suffixes in Uzbek belong to the category of nouns[14]. Figure 6 depicts the left to right Noun
Derivational Suffixes. In Uzbek, Derivational suffixes belonging to several different word groups can
be added to the same base. In order to reduce errors in Figure 6, other word group suffixes that are
added to the base before Noun Suffixes are also given without spaces.</p>
    </sec>
    <sec id="sec-6">
      <title>2.4. Main FSM</title>
      <p>The main FSM has entry from 2 FSMs: Particle and Derivational [Adv]. If adverb affixes are added
to the stem, inflectional ones are not added. A sequence of connections of FSMs is given in the main
FSM. Each word should be in the entry part of the main FSM. Words are passed from one FSM to
another. There are 3 outputs in the main FSM: Prefixes, Pronouns, and Numbers. There are 9 paths in
the main FSM. The word is passed through all the ways whichever way many affixes are stripped, we
take the word in this way as a stem. Depending on the way in which the stem is found, it is possible to
tell which word classes it belongs to.</p>
      <p>Currently, the issue of creating an Uzbek stemmer has not been resolved due to insufficient NLP
resources for the Uzbek language. Therefore, it is developed for Uzbek by using the rule-based structure
of the language. In Uzbek sentences, words are usually concatenated with lots of suffixes, that is the
reason an information retrieval system needs a quick performing stemming algorithm. In systems that
work with root detection, it is recommended not to use a dictionary to increase application speed.
Therefore, this study does not use any word databases. The considered method in this study can be the
basis for the development of an Uzbek stemming algorithm and according to the approaches (algorithm)
the python library developed that is easy to install and use in NLP applications. The software and
instructions can be reached from the address [15]. This will be applied to develop a software in
information retrieval system for Uzbek documents.
4. References</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1] [2]
          <string-name>
            <surname>Porter</surname>
            <given-names>MF.</given-names>
          </string-name>
          <article-title>An algorithm for suffix stripping</article-title>
          .
          <year>1980</year>
          ;
          <fpage>130</fpage>
          -
          <lpage>137</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          <string-name>
            <surname>Mengliev</surname>
            <given-names>D</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Barakhnin</surname>
            <given-names>V</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Abdurakhmonova</surname>
            <given-names>N.</given-names>
          </string-name>
          <article-title>Development of intellectual web system for morph analyzing of uzbek words</article-title>
          .
          <source>Applied Sciences (Switzerland)</source>
          <year>2021</year>
          ;
          <fpage>11</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          <string-name>
            <surname>Tengku Mohd T. Sembok</surname>
          </string-name>
          , Belal Mustafa Abu Ata,
          <source>Zainab Abu Bakar. A Rule and Template Based Stemming Algorithm for Arabic Language</source>
          .
          <year>2011</year>
          974-
          <fpage>981</fpage>
          (May 28,
          <year>2022</year>
          , date last accessed).
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          <string-name>
            <given-names>Maksud</given-names>
            <surname>Sharipov</surname>
          </string-name>
          , Ulugbek Salaev, Gayrat Matlatipov.
          <article-title>IMPLEMENTED STEMMING ALGORITHMS BASED ON FINITE STATE MACHINE FOR UZBEK VERBS | COMPUTER LINGUISTICS: PROBLEMS, SOLUTIONS</article-title>
          , PROSPECTS.
          <year>2021</year>
          (May 28,
          <year>2022</year>
          , date last accessed).
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          <string-name>
            <surname>Bakayev</surname>
            <given-names>I.</given-names>
          </string-name>
          <article-title>View of DEVELOPMENT OF A STEMMING ALGORITHM BASED ON A LINGUISTIC APPROACH FOR WORDS OF THE UZBEK LANGUAGE</article-title>
          .
          <year>2021</year>
          195-
          <fpage>202</fpage>
          (May 28,
          <year>2022</year>
          , date last accessed).
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          <string-name>
            <given-names>Sapayev</given-names>
            <surname>Qalandar</surname>
          </string-name>
          .
          <article-title>Hozirgi o'zbek tili(morfemika, so'z yasalishi va morfologiya</article-title>
          ).
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          <string-name>
            <given-names>Tayebeh</given-names>
            <surname>Mosavi Miangah</surname>
          </string-name>
          .
          <source>Finite-State Technology in Natural Language Processing</source>
          .
          <source>2014 (May 28</source>
          ,
          <year>2022</year>
          , date last accessed).
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          <string-name>
            <surname>Bakaev</surname>
            <given-names>I.</given-names>
          </string-name>
          <article-title>Creation of a morphological analyzer based on finite-state techniques for the Uzbek language</article-title>
          .
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          <string-name>
            <surname>Eryiğit</surname>
            <given-names>G</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Adalı</surname>
            <given-names>E.</given-names>
          </string-name>
          <article-title>AN AFFIX STRIPPING MORPHOLOGICAL ANALYZER FOR TURKISH</article-title>
          .
          <year>2004</year>
          ;
          <fpage>299</fpage>
          -
          <lpage>304</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          <string-name>
            <given-names>Hamroyeva</given-names>
            <surname>Orzigul</surname>
          </string-name>
          .
          <article-title>Ona tili ma'ruzalar to'plami. 2021; Yormat Tojiyev. O'zbek tili morfemikasi</article-title>
          .
          <year>1992</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          <string-name>
            <given-names>M.</given-names>
            <surname>Hamroyev</surname>
          </string-name>
          , D.Muhamedova, va b.
          <source>Ona tili. Toshkent: IQTISOD-MOLIYA</source>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          <string-name>
            <given-names>Tojiyev</given-names>
            <surname>Yormat</surname>
          </string-name>
          , Nazarova Nodira,
          <string-name>
            <given-names>Tojiyeva</given-names>
            <surname>Gulchexra</surname>
          </string-name>
          .
          <article-title>O'zbek tilidagi ergash morfemalarning semantik-stilistik xususiyatlari</article-title>
          .
          <source>Toshkent</source>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          <string-name>
            <surname>Toshkent</surname>
          </string-name>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          <string-name>
            <given-names>Maksud</given-names>
            <surname>Sharipov</surname>
          </string-name>
          , Salaev Ulugbek, Ollabergan Yuldashov,
          <string-name>
            <given-names>Sobirov</given-names>
            <surname>Jasurbek</surname>
          </string-name>
          .
          <article-title>Stemming Algorithm for Uzbek language</article-title>
          :
          <source>UzbekStemmer</source>
          .
          <year>2021</year>
          https://www.higithub.com/MaksudSharipov/repo/UzbekStemmer (May 29,
          <year>2022</year>
          , date last accessed).
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>