Множество максимальных префиксных кодов и соответствующая ему полугруппа
А. А. Мельникова
Аннотация-Одним из самых многочисленных классов алгебры являются полугруппы - по-видимому, в связи с тем, что единственная аксиома, которая должна выполняться для полугруппы, - это аксиома ассоциативности заданной на ней операции. В данной работе показано, что множество максимальных префиксных кодов является множеством образующих соответствующей им полугруппы относительно заданной на ней операции конкатенации. Важным вопросом остается представление о структуре полугруппы, о чем также говорится в статье.
В статье рассмотрены вопросы морфизмов максимальных префиксных кодов. На основе представления максимальных префиксных кодов как последовательности слов в алфавитном порядке (если алфавит упорядочен), формулируется предложение о возможности поставить в соответствие каждому такому коду последовательность длин его слов. Обсуждаются некоторые условия, при которых последовательности длин будет соответствовать максимальный префиксный код.
Рассматривается вариант сжатия таких кодов с использованием длин слов, описывается алгоритм. Как известно, кодирование, сжатие информации имеет большое значение на практике. Приводится пример выполнения алгоритма и рисунок к нему. Также говорится о возможных направлениях продолжения развития тематики статьи, возможностях исследования максимальных префиксных кодов, их свойств, структуры, инвариантов, возможностей сжатия и однозначности декодирования, восстановления исходного кода.
Приведены примеры выполнения определений и свойств для максимальных префиксных кодов.
Ключевые слова-регулярные языки, коды, максимальные префиксные коды, полугруппы, морфизмы, инверсные морфизмы.
I. Введение
Одним из важных вопросов теории полугрупп является структура этих формализмов. Понятие полугруппы и соответствующий термин возникли в начале ХХ века, в конце 1920-х годов начались систематические исследования полугрупп (см., например, [1]). В 1960-е годы теория полугрупп стала активно развивающейся областью алгебры, использующей различные методы, подходы и решающей разнообразные задачи, тесно связанной со многими областями математики, как с собственно алгебраическими, в первую очередь, с теорией групп
Статья получена 10 июля 2023.
Александра Александровна Мельникова, Димитровградский инженерно-технологический институт - филиал Национального исследовательского ядерного университета «МИФИ» (e-mail: super-avahi @yandex.ru).
и теорией колец, так и другими, например, алгебраической теорией автоматов (полугруппы автоматов), регулярных языков.
В те же годы появились и первые монографии, целиком посвященные алгебраической теории полугрупп. При работе с данными, в частности - со сжатием информации при её передаче, большое практическое значение имеет теория кодирования, также рассматриваемая в настоящей статье. Как указывается в [2], под кодированием в широком смысле понимается переход от одного способа задания информации к другому, допускающий восстановление исходной информации. Такой метод широко распространен в математике и ее приложениях. Возникновение теория кодирования как самостоятельного раздела математики в 40-х годах XX века, изучающего кодирование в различных его аспектах, было с появлением работ К. Шеннона. В математической теории кодирования изучаются методы кодирования, связанные с основными математическими моделями, которые отражают существенные, основные черты реальных информационных систем. В данной работе теория полугрупп применяется к конкретным разделам теории кодирования, для множества максимальных префиксных кодов (МПК), которые, в отличие от кодов фиксированной длины, более эффективно использовать в силу того, что они занимают меньше памяти для хранения и передачи информации.
Данную статью можно считать продолжением тематики статьи [3], в которой рассматривались некоторые алгоритмы работы с языками, используя расширенные максимальных префиксные коды и морфизмы над этими кодами.
В первой части статьи (раздел II) рассмотрены предварительные сведения, на основе которых в разделе III делается вывод о том, что множество максимальных префиксных кодов является множеством образующих соответствующей им полугруппы. Далее приведены примеры, поясняющие и иллюстрирующие рассмотренные вопросы. На основе того, что максимальные префиксные коды можно представить как последовательности слов в алфавитном порядке (если алфавит упорядочен), формулируется предложение о возможности каждому МПК поставить в соответствие последовательность длин его слов. Обсуждаются некоторые условия, при которых последовательности длин (натуральных чисел) будет соответствовать МПК. В IV разделе рассматривается вариант сжатия максимальных префиксных кодов с использованием длин слов, описывается алгоритм такого сжатия. Как уже отмечалось ранее, кодирование, сжатие информации имеет большое значение на практике. Приводится пример выполнения алго-
ритма и рисунок к нему. В последнем разделе статьи говорится о возможных направлениях продолжения развития тематики статьи, возможностях исследования максимальных префиксных кодов, их свойств, структуры, инвариантов, возможностей сжатия.
II. Предварительные сведения
В данной работе будут использованы следующие определения, взятые из [3,4].
Определение. Непустой язык С в алфавите Е называется кодом, если для любых слов Хй, х,2, ..., Хт и Хд, ..., хп из С, таких, что
ХИ хг2 ... хгт Х'1 ... xjn, (I)
имеет место х,1 = х^.
Из данного определения следует, что если С является кодом, то из (1) получаем т = п и хи = х^при t = 1, ..., т. Поэтому каждое слово в С* единственным образом декодируется как произведение слов из С. Очевидно также, что пустое слово не может входить в код, кроме того, непустое подмножество кода также является кодом. Будем считать, что алфавит Е содержит не менее двух символов, так как однобуквенный алфавит тривиален с точки зрения кодирования. Приведем два довольно простых характеристических свойства кодов (см. [4]).
Лемма 1. Непустой язык С над алфавитом Е является кодом тогда и только тогда, когда существует множество символов Е1 и биекция Е1 на С, которую можно продолжить до инъективного морфизма Е1* в Е*.
Следующий результат известен под названием критерия Шютценберже. Будем говорить, что язык Ь катена-тивно-независим, если никакое слово V из Ь нельзя представить как произведение
V = ^ ... wn, где п > 2 и каждое ^^ Е Ь, I = 1,2, ..., п.
Лемма 2. Катенативно-независимый непустой язык С над Е является кодом тогда и только тогда, когда для любого слова V в алфавите Е из того, что оба языка C*w и wC* пересекаются с С*, следует, что V Е С*.
Как указывается в [4], леммы 1 и 2 сами по себе не дают эффективного метода, позволяющего определить, является ли данный язык кодом, однако такие алгоритмы (для конечных языков) существуют. В сущности, результаты исследования приводят к следующему алгоритму: надо проверить, пусто ли множество х1С*Пх2С* для каждой пары (х1, х2) различных элементов из С, т. е. х1 Ф х2. Старейшим является алгоритм, вытекающий из следующей теоремы и в первоначальном варианте принадлежащий Сардинасу и Паттерсону (см. [4]).
Теорема 3. Пусть С - непустой язык над Е. Определим индуктивно языки С0, С1, С2, ... над Е, полагая Со = С,
Ст = {V Е Е+| (3 х Е С) (3 у Е С!) yw = х или xw = у}. Язык С является кодом тогда и только тогда, когда С,ПС = 0 для каждого / > 1.
Заметим, что в случае конечного языка С длина каждого слова в каждом С, не превосходит длину самого длинного слова в С. Следовательно, существует лишь конечное число различных языков С, и мы действительно получаем алгоритм, определяющий, является ли множество С кодом.
Для произвольного регулярного языка А рассмотрим
алфавит
Ал = | I Е I}, где I - некоторое множество индексов, причем такой же мощности, как и мощность А. Записью Ил обозначим некоторый морфизм
Ил : Ал - £*,
для которого
и, Е /Ы д = А,
причём если и Ф V, то Ил (и) Ф Ил (у) (последнее условие важно только в случае бесконечных языков А и Ал). В этих последних обозначениях будем иногда, если понятно, какое множество л подразумевается, опускать нижний индекс и писать А.
Рассмотрим произвольный алфавит А и следующее рекуррентное определение множества максимальных префиксных кодов над А в соответствии с терминологией теории кодирования (см. [4], гл. 4 и др.). Обозначим через тр (А) определяемое множество языков.
• Считаем, что А Е тр (А).
• Для произвольных С Е тр (А) и В £ С полагаем
(С \ В) и В А Е тр (А).
Заметим, что если алфавит А, конечен то выполнено следующее.
Во-первых, приведённое определение действительно задаёт коды, являющиеся максимальными и префиксными, что легко доказывается индукцией по длине максимального слова в языке, поскольку, согласно определению, для произвольного
А Е тр (А)
выполнены условия
Рг (А) и С (А) = 1 (2).
Первое из условий (2) означает, что язык является префиксным, а второе означает, что кодовый индикатор языка равен 1. Максимальные коды можно охарактеризовать посредством некоторых числовых величин, связанных с языками. Кодовым индикатором слова V Е А -язык над алфавитом А, состоящим из п > 2 букв, называется величина С (V) = п В предположении, что А -минимальный алфавит языка А, т. е. А не является языком ни над каким собственным подмножеством А, кодовый индикатор а(А) языка А, определяется как сумма кодовых индикаторов всех слов в А. Таким образом, если язык А конечен, то й(А) - положительное рациональное число. Если же язык А бесконечен, то й(А) либо является положительным вещественным числом (если соответствующий ряд сходится), либо равно бесконечности. Конечный код А максимален тогда и только тогда, когда а(А) = 1 (см. [4]).
Во-вторых, в определении достаточно допускать только случай |В| = 1.
Если множество Б таково, что для некоторого С Е тр (А)
выполнено включение С £ Б, то будем писать Б Е тр+ (А).
Если для некоторого языка А Е Е выполнено условие С Е тр (Аа) ( или Б Е тр+ (Аа) ), то для языков
С ' = ИА (С) (соответственно, Б ' = Ил (Б) ), будем писать
С ' Е тр (А) (соответственно Б Е тр+ (А) )
Следующее определение дано в соответствии с [5].
Определение Полугруппой (S, •) называется непустое множество S вместе с бинарной операцией •, удовлетворяющей ассоциативному закону:
X • (y • z) = (х • y) • z для любых х, у, z 6 S.
Для произвольного непустого подмножества А полугруппы S существует наименьшая подполугруппа в S, содержащая А. Она состоит из всех конечных произведений элементов из А и обозначается через (Л ) (см. [5]). Любое подмножество А из S, для которого (Л ) = S, называется множеством образующих полугруппы S; такое множество всегда существует: можно взять, например, А = S. Множество всех подполугрупп из S частично упорядочено по включению, и любые две подполугруппы T1, Т2 имеют наибольшую нижнюю границу mf(Tb T2) = T1 T2 и наименьшую верхнюю границу sup(Tb T2) = (Ti T2). Таким образом, подполугруппы произвольной полугруппы образуют решетку (см. стр.17, [5], а также [6]).
Проблемы решеток и полурешеток широко рассматриваются в нестоящее время, о них идет речь, в частности, в статьях [7], [8-10].
III. Структура полугрупп, связанных с множеством МПК
В этом разделе применим определения и свойства из предыдущего раздела к множеству максимальных префиксных кодов.
Предложение 1. Рассмотрим непустой язык mp (А) над алфавитом А, являющийся множеством максимальных префиксных кодов (МПК) и на нем операцию конкатенации о, алгебра ((mp (Д)), о) образует полугруппу (свободную полугруппу), множеством образующих является mp (А).
Доказательство. Действительно, аксиома ассоциативности операции выполняется: для любых х, у, z 6 (mp (Д)),
X о (y о z) = (х о y) о Z по определению конкатенации. Т. к. каждое слово в (mp (Д)), единственным образом декодируется как произведение слов из mp (А), то и для левой и правой частей последнего равенства декодирование будет одинаковым в силу того, что ни один код не является префиксом другого.
Обозначим, как обычно, через P (mp (А)) множество подмножеств множества mp (А). Для любого B 6 P (mp (А)), B является множеством образующих для подполугруппы (ß ) из полугруппы (mp (Д )), а все такие подполугруппы полугруппы ( ( )) образуют решетку.
В качестве примера рассмотрим язык, являющийся максимальным префиксным кодом
B = { aa, abaa, ababa, ababb, abb, ba, bb } для E = { a, b }, причем слова B расположены в алфавитном порядке. Непосредственно можно убедиться в том, что он действительно префиксный, т. е. Pr (B) выполняется. Кроме того, кодовый индикатор ci (B) языка B равен 1 (в данном случае n = 2, раз алфавит состоит из двух букв): ci(B) = 3 (1/22) + (1/23) + (1/24) + 2-(1/25) = 1.
Пусть имеется некоторый морфизм hA : Аа — £ *. Возникает вопрос, каким же был исходный язык A и
соответствующий морфизм, а, значит, и инверсный морфизм 1 (В)? Очевидный морфизм, который можно задать, такой: кА (0) = а, кА (1) = Ь для соответствующего МПК
Аг = { 00, 0100, 01010; 01011; 011; 10; 11 } над А = { 0, 1 } . Кроме него можно рассматривать и другие морфизмы, например, занумеровав все слова множества В цифрами от 0 до 6:
А2 = { 0, 1, 2, 3, 4, 5, 6 } над А = { 0, 1, 2, 3, 4, 5, 6 } , где ИА (0) = аа, ИА (1) = аЬаа,..., кА (6) = ЬЬ. В связи с этим появляется вопрос и об их оптимальности по разным критериям, таким, минимальное количество символов алфавита и т. п. Второй вариант задания вряд ли можно назвать оптимальным.
Представление максимальных префиксных кодов как последовательности слов в алфавитном порядке (если алфавит упорядочен) дает возможность каждому МПК поставить в соответствие последовательность длин его слов, поэтому очевидно следующее предложение.
Предложение 2. Каждому максимальному префиксному коду, слова которого упорядочены в алфавитном порядке, соответствует последовательность длин этих слов. Но не каждой конечной последовательности натуральных чисел (задающих длины слов) соответствует МПК.
Для нашего примера, МПК соответствует последовательность длин (по алфавиту) { 2, 4, 5, 5, 3, 2, 2 }. Эти же длины использовались для подсчета величины а (В) , которую можно назвать инвариантом максимальности кода, а условие а (В) = 1 - одно из условий существования для последовательности МПК. Убедиться в том, что не всякой конечной последовательности соответствует максимальный префиксный код, можно, если, например, рассмотреть последовательность, в которой цифр 1 больше, чем число букв алфавита. Это последовательность { 1, 1, 1 } для алфавита из двух букв { а, Ь }. Поэтому одно из условий того, что последовательности длин соответствует МПК - то, что число единиц (слов из одного символа) не превосходит числа элементов алфавита п. Конечно, число слов длины t не должно превосходить числа перестановок с повторениями из t элементов. Если среди t элементов (букв) слова есть П1 элементов одного вида, п2 элементов второго вида., пк элементов к - го вида, то число перестановок с повторениями определяется формулой:
где щ + п2 +... . + пк = t, при этом к < п.
Если п = 2, т.е. в алфавите 2 буквы { а, Ь }, то число слов длины t не должно превосходить числа перестановок с повторениями из t элементов, где буква «а» повторяется п 1 раз, а буква «Ь» п2= t - п1 раз:
РЛпх, п2) =-у-—^ = Сп 1.
" 2' п 1 ■(* - п 1 ) ! 4
Для нашего примера при £ = 5, буква «а» если повторяется щ = 3 раза, а буква «Ь» п2= 5 - 3 = 2 раза, то Рч(3, 2) = — = С2 = 1 0 .
ь 3! -2! ь
В действительности же в В такое слово только одно, и вообще, нет слов с одинаковым числом вхождений каждой буквы.
Таким образом, можно считать, что последовательность - это неполный инвариант. Возникает задача описания полного множества инвариантов, а также, в том числе - минимального такого множества. Возможно, есть и другие условия, которые должны выполняться, чтобы последовательность задавала максимальный префиксный код. Это может быть темой дальнейших исследований.
IV. Возможности сжатия элементов
МНОЖЕСТВА МАКСИМАЛЬНЫХ ПРЕФИКСНЫХ КОДОВ
В этой части статьи рассматривается возможность (вариант) сжатия максимальных префиксных кодов с использованием длин слов, а сжатие информации имеет большое практическое значение.
Для сжатия МПК можно записать последовательность изменения длин каждого слова над предыдущим. Опишем этот процесс на разобранном выше примере последовательности слов (расположенных в алфавитном порядке) МПК B. Возможно «закодировать» МПК с помощью следующего алгоритма.
Алгоритм.
• Шаг 1. Сначала записываем длину 1-го слова, в примере это 2 - длина (aa).
• Шаг 2. Затем записываем, на сколько букв следующее слово изменяется по сравнению с предыдущим. В примере - это снова 2, увеличение длины 2-го слова (abaa) по сравнению с 1-м.
• Шаг 3. Повторяем шаг 2, пока не дойдем до последнего слова последовательности (тогда переходим к шагу 4), причем, если последующее слово - это слово минимально возможной (здесь) длины, то ничего не записываем в новую последовательность (сжатие исходной).
В примере: далее получаем 1 - увеличение длины для 3-го слова (ababa);
затем слово abb - но это слово минимально возможной (здесь) длины поэтому ничего не пишем;
далее минимально возможное слово было бы b но реально это ba поэтому пишем увеличение на 1.
• Шаг 4. После обработки последнего слова МПК получаем сжатую последовательность (что и требовалось).
В примере: получаем сжатую последовательность {2, 2, 1, 1 }.
Конец описания алгоритма.
Подчеркнем, что алгоритм корректен в силу его построения, алфавитного порядка слов, исходная последовательность однозначно восстанавливается (раскодируется) по сжатой последовательности (см. рисунок 1 к
алгоритму).
abb - слово мин. возможной длины
Рисунок 1. Пример построения к алгоритму
Очевидно, что длина получившейся после выполнения алгоритма сжатой последовательности меньше дли-
ны исходной, а значит, занимаемая ей память меньше по объему.
V. Заключение
В дальнейшем возможно продолжить развивать тематику статьи, исследование максимальных префиксных кодов, их свойств, структуры, инвариантов, возможностей сжатия, в частности, показать, что, возможно, в МПК не содержится слов с одинаковым количеством вхождений одних и тех же букв, рассмотреть, какие ограничения накладываются на последовательность длин слов. Для этих исследований подойдут, например, некоторые статистические эксперименты, в которых каким-либо способом генерируются последовательности МПК с разным числом букв (скажем, от 2 до 10), разной минимальной и разной максимальной длиной. Будет возможность сравнить память, занимаемую исходной и сжатой каким-либо способом последовательностями. Некоторые интересные направления также задаются в статьях [3,7,11].
Библиография
[1] Общая алгебра. Том 2 / Артамонов В.А., Салий В.Н., Скорняков Л.А. и др. М.: Наука, Физматлит, 1991.
[2] Марков А.А., Введение в теорию кодирования // М.: Наука, Гл. ред. физ.-мат. лит., 1982. - 192с.
[3] Мельников Б.Ф., Мельникова А.А. Полиномиальный алгоритм проверки выполнения условия морфического образа расширенного максимального префиксного кода // International Journal of Open Information Technologies. 2022. Т. 10. № 12. С. 1-9.
[4] Саломаа A. Жемчужины теории формальных языков // М.: Мир, 1986.
[5] Лаллеман Ж. Полугруппы и комбинаторные приложения, М. : Мир, 1985.
[6] Биркгоф Г., Барти Т. Современная прикладная алгебра // М.: Мир, 1976.
[7] Зяблицева Л.В., Корабельщикова С.Ю., Абрамян М.Э. Графы полурешеток, матричные представления полугрупп идемпотен-тов и полурешетки автомата Ватерлоо // International Journal of Open Information Technologies. 2023. Т. 11. № 7. С. 69-76.
[8] Мельников Б.Ф. Полурешётки подмножеств потенциальных корней в задачах теории формальных языков. Часть I. Извлечение корня из языка // International Journal of Open Information Technologies. 2022. Т. 10. № 4. С. 1-9.
[9] Мельников Б.Ф. Полурешётки подмножеств потенциальных корней в задачах теории формальных языков. Часть II. Построение инверсного морфизма // International Journal of Open Information Technologies. 2022. Т. 10. № 5. С. 1-8.
[10] Мельников Б.Ф. Полурешётки подмножеств потенциальных корней в задачах теории формальных языков. Часть III. Условие существования решётки // International Journal of Open Information Technologies. 2022. Т. 10. № 7. С. 1-9.
[11] Данг В.В., Додонова Н.Л., Корабельщикова С.Ю., Мельников Б.Ф. SH-слабая двойственность полугрупп и минимальная полугруппа SH-аппроксимации // Известия высших учебных заведений. Поволжский регион. Физико-математические науки. 2019. № 1 (49). С. 29-39.
Александра Александровна Мельникова,
доцент Димитровградского инженерно-
технологического института -
филиала Национального исследовательского
ядерного университета «МИФИ»
(https://diti-mephi.ru/),
email: [email protected],
mathnet.ru: personid=148963,
elibrary. ru: authorid= 143351,
scopus.com: authorId=6603567251,
ORCID: orcidID=0000-0002-1658-6857.
The set of maximal prefix codes and the corresponding semigroup
Aleksandra Melnikova
Abstract-One of the most numerous classes of algebra are semigroups - apparently, due to the fact that the only axiom that must be fulfilled for a semigroup is the axiom of associativity of the operation given on it. In this paper, it is shown that the set of maximal prefix codes is the set of forming the corresponding semigroup with respect to the concatenation operation specified on it. An important issue remains the idea of the structure of the semigroup, which is also discussed in the article.
The article deals with the issues of morphisms of maximal prefix codes. Based on the representation of the maximum prefix codes as a sequence of words in alphabetical order (if the alphabet is ordered), a proposal is formulated on the possibility of putting a sequence of the lengths of its words in accordance with each such code. Some conditions are discussed under which a maximum prefix code will correspond to a sequence of lengths.
The variant of compression of such codes with the use of word lengths is considered, the algorithm is described. As you know, encoding, compression of information is of great importance in practice. An example of the algorithm execution and a drawing for it are given. It also talks about possible directions for the continuation of the development of the subject of the article, the possibilities of studying maximum prefix codes, their properties, structure, invariants, compression capabilities and unambiguity of decoding, restoration of the source code.
Examples of definitions and properties for maximum prefix codes are given.
the existence of a lattice // International Journal of Open Information Technologies. 2022. Vol. 10. No. 7. P. 1-9 (in Russian).
[11] Dang V.V., Dodonova N.L., Korabelshchikova S.Yu, Melnikov B.F. SH-weak duality of semigroups and minimum semigroup of SH-approximation // University proceedings. Volga region. Physical and mathematical sciences. 2019. No. 1 (49). P. 29-39 (in Russian).
Aleksandra Aleksandrovna MELNIKOVA,
Associated Professor of Dimitrovgrad Engineering and
Technology Institute - Branch of National Research Nuclear
University "MEPhl" (https://diti-mephi.ru/),
email: [email protected],
mathnet.ru: personid=148963,
elibrary.ru: authorid=143351,
scopus.com: authorId=6603567251,
ORCID:orcidID=0 0 0 0-0 0 02-165 8-68 57.
Keywords-regular languages, codes, maximal prefix codes,
semigroups, morphisms, inverse morphisms.
References
[1] Abstract algebra. Vol. 2 / Artamonov V.A., Saliy V.N., Skornyakov L.A. et al. Moscow: Nauka Publ., Phizmatlit, 1991 (in Russian).
[2] Markov A.A., Introduction to coding theory // M.: Nauka, Gl. ed. phys.-mat. lit., 1982. - 192 p. (in Russian).
[3] Melnikov B., Melnikova A. A polynomial algorithm for checking the fulfillment of the condition of the morphic image of the extended maximal prefix code // International Journal of Open Information Technologies. - 2022. - Vol. 10. No. 12. - P. 1-9 (in Russian).
[4] Salomaa A. Pearls of the theory of formal languages // Moscow: Mir, 1986 (in Russian).
[5] Lallement G. Semigroups and Combinatorial Applications. - NJ, Wiley & Sons, Inc. - 1979. - 376 p. (in Russian).
[6] Birkhoff G., Barty T. Modern applied Algebra // Moscow: Mir, 1976. - 400 p. (in Russian).
[7] Zyablitceva L.V., Korabelshchikova S.Yu., Abramyan M. E. Semilat-tice graphs, matrix representations of idempotent semigroups and Waterloo automaton semilattices // International Journal of Open Information Technologies. 2023. Vol. 11. No 7. P. 69-76 (in Russian).
[8] Melnikov B.F. Semi-lattices of the subsets of potential roots in the problems of the formal languages theory. Part I. Extracting the root from the language // International Journal of Open Information Technologies. 2022. Vol. 10. No. 4. P. 1-9 (in Russian).
[9] Melnikov B.F. Semi-lattices of the subsets of potential roots in the problems of the formal languages theory. Part II. Constructing an inverse morphism // International Journal of Open Information Technologies. 2022. Vol. 10. No 5. P. 1-8 (in Russian).
[10] Melnikov B.F. Semi-lattices of the subsets of potential roots in the problems of the formal languages theory. Part III. The condition for