Кіріспе
Теориялық компьютерлік ғылымда және формалды тіл теориясында, тұрақты өрнектермен сипатталатын ресми тіл, сондай-ақ тұрақты тіл (рационалдық тіл деп те аталады) (американдық математик Стивен Коул Клиннің есімімен аталған). Чомски иерархиясында тұрақты тілдер 3-типті грамматикалармен туындайтын тілдер болып табылады.
natural language that is regulated
In theoretical computer science and formal language theory, a regular language (also called a rational language) (after American mathematician Stephen Cole Kleene). In the Chomsky hierarchy, regular languages are the languages generated by Type 3 grammars.
Мысалдар
Барлық шекті тілдер тұрақты; әсіресе бос тізбек тілі {ε} = Ø* тұрақты. Басқа да кең таралған мысалдарға, {a, b} алфавиті бойынша жұп сандағы 'a' әріптерін қамтитын барлық тізбектерден тұратын тіл, немесе бірнеше 'a' әріптерінен кейін бірнеше 'b' әріптерінен тұратын барлық тізбектерден тұратын тіл жатады. Тұрақты емес тілдің қарапайым мысалы — {anbn | n ≥ 0} тізбектерінің жиыны. Интуитивті түрде, оны шекті автоматпен тану мүмкін емес, себебі шекті автоматтың шектеулі жады бар және ол 'a' әріптерінің нақты санын есте сақтай алмайды. Бұл фактіні қатаң түрде дәлелдеу әдістері төменде келтірілген.
Күрделілік нәтижелері
Есептеу күрделілігі теориясында барлық тұрақты тілдердің күрделілік класы кейде REGULAR немесе REG деп аталады және DSPACE(O(1))-ге тең, яғни тұрақты кеңістікте шешілетін мәселелер (қолданылатын кеңістік кіріс мөлшеріне тәуелсіз). REGULAR ≠ AC0, себебі ол (тривиалды түрде) кірістегі 1-дің саны жұп немесе тақ екенін анықтау мәселесін қамтиды, ал бұл мәселе AC0 класында жоқ. Екінші жағынан, REGULAR AC0 класын қамтымайды, өйткені палиндромдардың тұрақты емес тілі немесе басқа тұрақты емес тілдер AC0 арқылы танылуы мүмкін. Егер тіл тұрақты болмаса, оны тану үшін кем дегенде Ω(log log n) кеңістігі бар машина қажет (мұнда n – кіріс мөлшері). Басқаша айтқанда, DSPACE(o(log log n)) тұрақты тілдер класына тең. Іс жүзінде, көптеген тұрақты емес мәселелер кем дегенде логарифмдік кеңістік қолданатын машиналармен шешіледі.
Жалпылау
Қалыпты тіл ұғымы шексіз сөздерге (ω автоматтарына қараңыз) және ағаштарға (ағаш автоматтарына қараңыз) жалпыланды. Рационалды жиын қалыпты/рационалды тіл ұғымын міндетті түрде еркін емес моноидтарға жалпылайды. Сол сияқты, шекті автоматпен танылатын тіл ұғымы міндетті түрде еркін емес моноид үстінде танылатын жиын ретінде аталады. Говард Штраубинг осы фактілерге қатысты: "Қалыпты тіл" термині сәл өкінішті." Эйленбергтің монографиясына әсер еткен мақалалар көбінесе автоматтардың мінез-құлқына сілтеме жасайтын "танымдық тіл" немесе тұрақты өрнектер мен рационалды қуат қатарлары арасындағы маңызды аналогияларды көрсететін "рационалды тіл" терминін қолданады. (Шындығында, Эйленберг кез келген моноидтардың рационалды және танымдық ішкі жиындықтарын анықтайды; екі ұғым, әдетте, сәйкес келмейді.) Бұл терминология жақсы негізделгенімен, кеңінен қолданылмады және "қалыпты тіл" термині дерлік барлық жерде қолданылады. Рационалды қатар – бұл тағы бір жалпылау, осы жолы жартылай сақинадағы ресми қуат қатарының аясында. Бұл тәсіл салмақты рационалдық өрнектер мен салмақты автоматтарға әкеледі. Бұл алгебралық контексте қалыпты тілдер (бульдік салмақты рационалдық өрнектерге сәйкес) әдетте рационалды тілдер деп аталады. Сондай-ақ, осы контексте Клин теоремасы Клин-Шутценбергер теоремасы деп аталатын жалпылауға ие болады.
Rational series is another generalization, this time in the context of a formal power series over a semiring. This approach gives rise to weighted rational expressions and weighted automata. In this algebraic context, the regular languages (corresponding to Boolean weighted rational expressions) are usually called rational languages. Also in this context, Kleene's theorem finds a generalization called the Kleene Schützenberger theorem.