Научная статья на тему 'Методы порождения формул подстановки заданной конфигурации (часть 1)'

Методы порождения формул подстановки заданной конфигурации (часть 1) Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
71
9
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
АЛФАВИТ / ПОДСТАНОВКА / ФОРМУЛА / ПРОДУКЦИЯ / ОБРАЗЕЦ / МОДИФИКАТОР / МОДИФИЦИРОВАННЫЙ / НОРМАЛЬНЫЙ АЛГОРИТМ / СЛОВО / КОНСТРУКТИВНЫЙ / ПРОЦЕСС / ОБЪЕКТ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Костиков Д.Н.

В статье рассматриваются методы порождения самоактивирующихся формул подстановки, соответствующих конфигурациям самоактивации, содержащим один или два истинных члена конструктивной дизъюнкции. Предложенные методы могут быть использованы в разработке программного обеспечения, моделирующего работу модифицированной алгоритмической системы, основанной на теории нормальных алгорифмов Маркова.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Методы порождения формул подстановки заданной конфигурации (часть 1)»

УДК 510.5(075)

МЕТОДЫ ПОРОЖДЕНИЯ ФОРМУЛ ПОДСТАНОВКИ ЗАДАННОЙ КОНФИГУРАЦИИ (ЧАСТЬ 1)

©2017 Д. Н. Костиков

аспирант каф. программного обеспечения и администрирования информационных систем e-mail: kostikov.dmitry@gmail.com,

Курский государственный университет

В статье рассматриваются методы порождения самоактивирующихся формул подстановки, соответствующих конфигурациям самоактивации, содержащим один или два истинных члена конструктивной дизъюнкции. Предложенные методы могут быть использованы в разработке программного обеспечения, моделирующего работу модифицированной алгоритмической системы, основанной на теории нормальных алгорифмов Маркова.

Ключевые слова: алфавит, подстановка, формула, продукция, образец, модификатор, модифицированный, нормальный алгоритм, слово, конструктивный, процесс, объект

Развитие информационных технологий стремится к упрощению взаимодействия информационных систем и их пользователей. Постоянно совершенствуются интерфейсы более естественных для человека методов обмена информацией, таких как распознавание речи, рукописного текста и др. Решение задач обработки символьной информации (ОСИ) является одним из важнейших направлений развития информационных технологий, направленных на поддержку интеллектуальной деятельности человека.

Одним из инструментов, используемых для решения задач ОСИ, является универсальная алгоритмическая модель Маркова, разработанная в конце 40-х гг. XX столетия советским математиком Андреем Андреевичем Марковым (младшим) [Марков 1984]. Нормальные алгорифмы Маркова (НАМ) могут быть реализованы в форме программных и аппаратных технических средств и применены для обработки символьной информации, имеющей соответствующую форму записи в виде конструктивного задания.

К недостаткам алгоритмической системы А. А. Маркова можно отнести низкую скорость обработки информации по сравнению с существующими аналогами. Одним из методов решения этой проблемы является метод расстановки итерационных скобок в словах-вхождениях (образцах) [Dovgal Part 1 2008].

В работе [Костиков, Довгаль, Гордиенко 2016] произведено доказательство строгой эквивалентности существующих марковских продукций и их модифицированных форм представления [Dovgal Part 2 2008] в алгоритмических схемах.

Для дальнейшего исследования особенностей работы модифицированной алгоритмической системы необходимо разработать программное обеспечение, позволяющее смоделировать конструктивный процесс применения данной алгоритмической системы к входным словам. Данное программное обеспечение должно включать в себя возможность генерации самоактивирующихся формул подстановки как случайным образом, так и по заданной пользователем конфигурации,

зависящей от истинности членов конструктивной дизъюнкции (2), приведенной ниже по тексту.

Также для оценки скорости работы модифицированной алгоритмической системы и её сопоставления с НАМ необходимо разработать метод генерации входных слов, содержащих вхождение образца формулы подстановки, а также его повторяющиеся фрагменты, заключённые в итерационные скобки в модифицированной эквивалентной форме представления.

Цель данной работы заключается в разработке методов порождения самоактивирующихся формул подстановки согласно конфигурации, соответствующей истинности одного или нескольких членов конструктивной дизъюнкции (2).

Основные термины

Пусть R и S слова в алфавите A. Будем говорить, что слово S является собственным началом слова R, если существует такое непустое слово T в алфавите A, что R = ST. Здесь и далее символом «=» будет обозначаться графическое равенство слов. Для обозначения графического различия слов будем использовать символ «i». Собственное начало S слова R будем обозначать символом [R^

Будем говорить, что слово S является собственным окончанием слова R, если существует такое непустое слово T в алфавите A, что R = TS. Собственное окончание S слова R будем обозначать символом [R^

Пусть R - какое-либо слово в алфавите A, i - натуральное число. Символом {R} обозначим слово в алфавите A, полученное путём записи i раз подряд и без разрывов слова R, например, {R}i = R, {R}2 = RR, {R}3 = RRR и т.д. {R}0 = Л - обозначение пустого слова.

Символом |R| обозначим число букв в записи слова R. Например, если в записи слова R используется три буквы, то |R| будет означать число 3, |{R}2| - число 6 и т.д. |Л| обозначает число 0.

Возьмём алфавит B такой, что буква ^ не входит в B. Пусть Р и Q - какие-либо фиксированные слова в алфавите B.

Рассмотрим нормальный алгорифм Маркова A в алфавите B со схемой, состоящей из одной единственной формулы подстановки

P ^ Q. (1)

Здесь и далее словами P и Q будут обозначаться соответственно образец и модификатор формулы подстановки.

Конструктивная дизъюнкция, описанная в работе [Костиков, Довгаль, Гордиенко 2015], представляющая собой логический индикатор самоактивирующейся формулы подстановки, может быть записана в виде:

([Рк = Q) V ([Рн = Q) V ([Рк = Q) V ([Рн = Q) V (P = RQS), (2)

где R и S непустые слова в алфавите B.

Истинность каждого члена данной конструктивной дизъюнкции однозначно определяет конфигурацию структурно-логического отношения между образцом и модификатором формулы подстановки и соответствующую данной конфигурации необходимую трансформацию формы представления продукции.

Каждую их таких конфигураций будем называть конфигурацией самоактивации. Таким образом, под словосочетанием «конфигурация самоактивации ([Рк = [Q^» будем понимать такое состояние конструктивной дизъюнкции (2), при котором член ([Рк = Q) будет истинным, а все остальные ложными. В случае, когда конструктивная дизъюнкция содержит несколько истинных членов, после слов «конфигурация самоактивации» будем перечислять все члены дизъюнкции, являющиеся истинными, разделённые знаком «Л». Например, конфигурация самоактивации ([Рк = Q) Л ([Рн = Q).

Когда конструктивная дизъюнкция (2), содержит некоторые истинные члены, применительно к какой-либо формуле подстановки, тогда будем говорить, что данная формула подстановки соответствует конфигурации самоактивации, определённой истинностью членов дизъюнкции.

Словосочетанием порождение слова в алфавите В будем называть конструктивный процесс, заключающийся в написании пустого слова и дальнейшем приписывании справа к этому слову случайным образом выбранных букв из алфавита В. Для порождения слова длиной п букв, процедуру приписывания букв к существующему слову необходимо повторить п раз. В общем случае п может быть любым натуральным числом.

Словосочетанием порождение формулы подстановки будем называть конструктивный процесс порождения двух слов в алфавите В, образца и модификатора формулы подстановки, и их последующей записи через разделитель «—•», где образец записывается слева от разделителя, а модификатор - справа.

Последовательно рассмотрим механизм порождения формул подстановки соответствующих каждой конфигурации самоактивации.

1. Конфигурации одного истинного члена

1.1. Конфигурация самоактивации ([Рк = [Qн)

Формула подстановки, соответствующая рассматриваемой конфигурации может быть записана в виде:

XR — RY, (3)

где X, У и R - слова в алфавите В, такие что Р = XR, Q = RY, R = [Рк = [Qн.

Таким образом, для порождения требуемой формулы подстановки достаточно породить непустые слова X, У и R в алфавите В и записать их в виде, соответствующем формуле (3).

Заметим, что каждая вновь созданная формула подстановки должна быть проверена на наличие «лишних» признаков самоактивации. То есть если требуется породить формулу подстановки, для которой будет истинным только первый член конструктивной дизъюнкции (2), то никакой другой член этой конструктивной дизъюнкции не должен быть истинным. Таким образом, процедура порождения должна повторяться до тех пор, пока не получим подходящую формулу подстановки. Это замечание относится как к рассматриваемому, так и ко всем последующим случаям.

1.2. Конфигурация самоактивации ([Рн = [Qк)

Данный случай, аналогично предыдущему, сводится к порождению непустых слов X, У и R в алфавите В, с той лишь разницей, что для порождения необходимой формулы подстановки соответствующие слова должны быть записаны в виде формулы

RX — YR. (4)

1.3. Конфигурация самоактивации ([Рк = Q)

В этом случае формула подстановки (1) может быть представлена в виде

XQ - Q, (5)

где X и Q слова в алфавите В, такие что Р = XQ.

Таким образом, для порождения требуемой формулы подстановки достаточно породить непустые слова Xи Q и записать их в виде, соответствующем формуле (5).

1.4. Конфигурация самоактивации ([Рн = Q)

Данный случай, аналогично предыдущему, сводится к порождению непустых слов X и Q в алфавите В, с той лишь разницей, что для порождения необходимой формулы подстановки соответствующие слова должны быть записаны в виде формулы

QX — QL (6)

1.5. Конфигурация самоактивации (Р = RQS)

В этом случае формула подстановки (1) может быть представлена в виде

щя — а, (7)

где К, Я и а - слова в алфавите В, такие что Р = КаЯ.

Таким образом, для порождения соответствующей данному случаю формулы подстановки достаточно породить непустые слова К, Я и а и записать их в виде, соответствующем формуле (7).

На этом рассмотрение случаев, в которых необходимо породить формулу подстановки, соответствующую конфигурации с одним единственным истинным членом конструктивной дизъюнкции (2), заканчивается.

Рассмотрим случаи, когда истинными должны быть два члена конструктивной дизъюнкции (2). Таких случаев может быть С5=10, однако методы порождения формул подстановки, соответствующих каждой конфигурации самоактивации, теперь будут зависеть ещё и от структуры связей между различными вхождениями образца в модификатор и наоборот.

2. Конфигурации двух истинных членов

2.1. Конфигурация самоактивации ([Рк = [ан) Л ([Рн = [ак)

Пусть К и Я слова в алфавите В, такие что К = [Рк = [ан, Я = [Рн = [ак.

В зависимости от выполнения условия неравенств

|Р| > |КЯ| (8)

\а\ > т (9)

возможны различные варианты порождения слов образца и модификатора для получения требуемой формулы подстановки.

Пусть выполняется неравенство (8), тогда образец формулы подстановки (1) может быть записан как ЯХК, где X- слово в алфавите В, такое что Р = ЯХК.

Если (8) не выполняется, то есть |Р| < |RS|, то образец формулы подстановки (1) может быть записан как ЬМЫ, где Ь, М и N - непустые слова в алфавите В, такие что ЬМ=Я, Ш = К.

Пусть выполняется равенство (9), тогда модификатор формулы подстановки (1) может быть записан как КУЯ, где У - слово в алфавите В, такое что а = КУЯ.

Если (9) не выполняется, то есть |а| < |КЯ|, то образец модификатор формулы подстановки (1) может быть записан как ТиУ, где Т, и и V - непустые слова в алфавите В, такие что Ти=К, ^ = Я.

Таким образом, в зависимости от выполнения или невыполнения условий неравенств (8) и (9), формула подстановки (1) может быть записана в одном из следующих вариантов:

ЯХК — КУЯ, (10)

ЯХК — ТШ, (11)

LMN — КУЯ, (12)

LMN — ТШ. (13)

В результате все формулы подстановки, соответствующие конфигурации самоактивации ([Рк = [ан) л ([Рн = [ак), могут быть порождены с использованием форм записи (10 - 13). Для этого необходимо предварительно породить слова Ь, М, N, К, Я, Т, и, V, X, У и записать их в одной из полученных форм записи (10-13). Заметим, что все слова, кроме X и У, должны быть непустыми.

2.2. Конфигурация самоактивации ([Рк = [ан) л ([Рк = а)

Для порождения формулы подстановки, соответствующей данной конфигурации, необходимо породить слова X, У и К в алфавите В, такие что а = КУ, Р = Ха, К = [Рк = а и записать их в следующем виде:

ХКУ — КУ. (14)

2.3. Конфигурация самоактивации ([Рк = [ан) л ([Рн = а)

Пусть Я - слово в алфавите В, такое что К = [Рк = [ан.

Для порождения формулы подстановки, соответствующей данной конфигурации, необходимо породить слова X, У и R в алфавите В, такие что выполняется Q = RY, R Щ Л, У Щ Л, и записать их в виде

QXR — КУ. (15)

Очевидно, что в данном случае |Р| = |QXR| > |QR|.

Допустим, существует формула подстановки, соответствующая конфигурации самоактивации ([Рк = [Qн) Л ([Рн = Q), образцом которой является слово Р* в алфавите В, такое что |Р*| < |QR|. Из этого следует, что существует слово Т в алфавите В, такое что Т = [Qк = [Qн. А так как Q = [Р*н, то и Т = [Qн = [Р*н. Таким образом, получаем Т = [Р*н = [Qк, а значит, член ([Рн = [Qк) конструктивной дизъюнкции является истинным, следовательно, данная формула не соответствует рассматриваемой конфигурации самоактивации и допущение неверно.

2.4. Конфигурация самоактивации ([Рк = [Qн) л (Р = RQS)

Пусть Т - слово в алфавите В, такое что Т = [Рк = [Qн.

Все возможные формулы подстановки, соответствующие конфигурации самоактивации, рассматриваемой в данном пункте, могут быть порождены двумя способами, в зависимости от выполнения условия неравенства |£| > \Т\.

Для порождения формулы подстановки, для которой выполняется |Б| > \Т\, необходимо предварительно породить слова К, Т, X, У в алфавите В и записать их в виде.

КТТ^Т — ТУ, (16)

причём все слова, кроме X, должны быть непустыми, а если X = Л, то |£| = Щ.

Заметим, что в данном случае Q = ТУ, Б = Р = RQS.

Если |Б| < |Т|, то существует слово М в алфавите В, такое что М = [Qк = [Тн, Т = МБ. Таким образом, чтобы породить соответствующую формулу подстановки, необходимо породить непустые слова Ь, М, К, Б, У в алфавите В, такие что Т = МБ, Q = ЬМ = ТУ. Другими словами, нужно подобрать такие Т и У, чтобы выполнялось Q = ТУ и [Qк = [Тн = М. Далее, полученные слова необходимо записать в виде

КЬМБ — МБУ. (17)

Заметим, что в данном случае Q = ЬМ = МБУ, Р = RQS.

2.5. Конфигурация самоактивации ([Рн = [Qк) л ([Рк = Q).

Пусть К - слово в алфавите В, такое что К = [Рн = [Qк.

Для порождения формулы подстановки, соответствующей данной конфигурации, необходимо породить слова X, У и К в алфавите В, такие что Q = КУ, К Щ Л, У Щ Л, и записать их в виде

RXQ — УК. (18)

Очевидно, что в данном случае |Р| = |RXQ| > |RQ|.

Допустим, существует формула подстановки, соответствующая конфигурации самоактивации ([Рн = [Qк) л ([Рк = Q), образцом которой является слово Р* в алфавите В, такое что |Р*| < |RQ|. Из этого следует, что существует слово Т в алфавите В, такое что Т = [Qн = [Qк. А так как Q = [Р*к, то и Т = [Qк = [Р*к. Таким образом, получаем Т = [Р*к = [Qн, а значит, член ([Рк = [Qн) конструктивной дизъюнкции является истинным, следовательно, данная формула не соответствует рассматриваемой конфигурации самоактивации и допущение неверно.

2.6. Конфигурация самоактивации ([Рн = [Qк) л ([Рн = Q)

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Для порождения формулы подстановки, соответствующей данной конфигурации ,необходимо породить слова X, У и К в алфавите В, такие что Q = УК, Р = QX, К = [Рн = [Qк, и записать их в следующем виде:

УЖ — УК. (19)

2.7. Конфигурация самоактивации ([Рн = [ак) л (Р = КОЯ)

Пусть Т - слово в алфавите В, такое что Т = [Рн = [ак.

Все возможные формулы подстановки, соответствующие рассматриваемой в этом пункте конфигурации, могут быть порождены двумя способами, в зависимости от выполнения условия неравенства К > Щ.

Для порождения формулы подстановки, для которой выполняется К > Щ, необходимо предварительно породить слова Я, Т, Х, У в алфавите В и записать их в виде

ТХУТЯ — УТ, (20)

причём все слова, кроме Х, должны быть непустыми, а если Х = Л, то К = Щ.

Заметим, что в данном случае а = УТ, К = ТХ, Р = КОЯ.

Если К < то существует слово М в алфавите В, такое что М = [ан = [Тк, Т = КМ. Таким образом, чтобы породить необходимую в данном случае формулу подстановки, нужно породить непустые слова М, N, К, Я, У в алфавите В, такие что Т = КМ, а = MN = УТ. Другими словами, нужно подобрать такие Т и У, чтобы а = УТ и [ан = [Тк = М. Далее, полученные слова необходимо записать в виде

КМЖ — УКМ. (21)

Заметим, что в данном случае а = MN = УКМ, Р = КОЯ.

2.8. Конфигурация самоактивации ([Рк = а) л ([Рн = 0)

Для порождения формулы подстановки, соответствующей данной конфигурации, необходимо породить слова о и Х в алфавите В, такие что о £ Л, и записать их в виде

охо — а. (22)

Очевидно, что в данном случае |Р| = 10X01 > 2|О|.

Допустим, существует формула подстановки, соответствующая конфигурации самоактивации ([Рн = 0) л ([Рн = 0), образцом которой является слово Р* в алфавите В, такое что |Р*| < 2|0|. Из этого следует, что существует слово и в алфавите В, такое что и = [0к = [0н. А так как 0 = [Р*н, то и и = [0н = [Р*н, соответственно, так как 0 = [Р*к, то и и = [0к = [Р*к. Следовательно, рассматриваемая формула подстановки не соответствует конфигурации самоактивации ([Рн = 0) л ([Рн = 0), так как члены ([Рк = [0н) и ([Рн = [0к) конструктивной дизъюнкции являются истинными, а значит, допущение не верно.

2.9. Конфигурация самоактивации ([Рк = 0) л (Р = КОЯ)

Для порождения формулы подстановки, соответствующей данной конфигурации необходимо породить слова К, 0 и X в алфавите В, такие что К £ Л, 0 £ Л, и записать их в виде

КОЯ —а, (23)

где Я - слово в алфавите В, такое что Я = Х0.

Очевидно, что в данном случае |Я| > |0|.

Проверим, существуют ли такие формулы подстановки, соответствующие конфигурации самоактивации ([Рк = 0) л (Р = КОЯ), которые при записи в виде (25) могут содержать Я, такие что |Я| < |0|.

Допустим такая формула существует, тогда существует слово и в алфавите В, такое что 0 = иЯ, [0н = [0к = и. А так как 0 = [Рк, то и и = [0к = [Рк. Таким образом, получаем и = [Рк = [0н, из чего следует, что данная формула не соответствует рассматриваемой конфигурации самоактивации, а значит, допущение неверно.

2.10. Конфигурация самоактивации ([Рн = 0) л (Р = КОЯ)

Для порождения формулы подстановки, соответствующей данной конфигурации необходимо породить слова Я, 0 и X в алфавите В, такие что Я £ Л, 0 £ Л, и записать их в виде

КОЯ — а, (24)

где R - слово в алфавите B, такое что R = QX.

Очевидно, что в данном случае |R| > |Q|.

Проверим, существуют ли такие формулы подстановки, соответствующие конфигурации самоактивации ([Рн = Q) Л (Р = RQS), которые при записи в виде (26) могут содержать R, такие что |R| < |Q|.

Допустим такая формула существует, тогда существует слово U в алфавите B, такое что Q = RU, Q = Q = U. А так как Q = [Рн, то и U = [Qн = [Рн. Таким образом, получаем U = [Рн = [QK, из чего следует, что данная формула не соответствует рассматриваемой конфигурации самоактивации, а значит, допущение неверно.

В данной работе были рассмотрены методы порождения самоактивирующихся формул подстановки, соответствующих конфигурациям самоактивации, содержащим один или два истинных члена конструктивной дизъюнкции (1). Разработка соответствующих методов для конфигураций, содержащих от трёх до пяти истинных членов вышеупомянутой дизъюнкции (2), - это цель следующей статьи (часть 2), планируемой в рамках разработки модифицированной алгоритмической системы и ее экспериментальных исследований.

Библиографический список

Dovgal V., ets. The problem of constructing symbolic bridges for interracing heterogeneous computer networks. Acceleration of the work of autonomous productions // Telecomunication and radio engineering. Vol. 3, 2008. Part 1.

Dovgal V., ets. Acceleration of algorithmic diagrams and hardware architecture// Telecomunication and radio engineering. Vol. 12, 2008. Part 2.

Костиков Д. Н., Довгаль В. М., Гордиенко В. В., Разработка и обоснование средств минимизации числа шагов работы формул подстановок нормальных алгорифмов // Auditorium. Электронный научный журнал Курского государственного университета. 2016. Вып. №2(10). URL: http://auditorium.kursksu.ru/pdf/010-011.pdf (дата обращения: 25.03.2017)

Марков А. А., Нагорный Н. М. Теория алгорифмов. М.: Наука. Главная редакция физико-математической литературы, 1984. 432 с.

i Надоели баннеры? Вы всегда можете отключить рекламу.