Научная статья на тему 'ДЕДУКТИВНАЯ И ИНДУКТИВНАЯ СИСТЕМЫ ПРАВИЛ ВЫВОДА ДЛЯ ПОСТРОЕНИЯ ФОРМАЛЬНЫХ СИСТЕМ'

ДЕДУКТИВНАЯ И ИНДУКТИВНАЯ СИСТЕМЫ ПРАВИЛ ВЫВОДА ДЛЯ ПОСТРОЕНИЯ ФОРМАЛЬНЫХ СИСТЕМ Текст научной статьи по специальности «Компьютерные и информационные науки»

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

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Малинина Наталия Леонидовна

Цель статьи - сравнительная оценка сложности дедуктивной (ДСПВ) и индуктивной (ИСПВ) систем правил вывода при построении формальных систем. При использовании правил вывода «если q, то P» (ДСПВ) построение формальной системы осуществляется в лучшем случае с помощью полиномиальных алгоритмов синтеза. Поэтому характерной особенностью развития программирования в настоящее время является постоянное увеличение стоимости разработки программных средств по мере усложнения задач. Индуктивный подход («P, если q») не требует указания адресов передачи выходной информации, что существенно упрощает задачу составления алгоритма. Сравнение особенностей ДСПВ и ИСПВ позволяет сделать следующие выводы: ДСПВ отличается более высокой сложностью по сравнению с ИСПВ и не обеспечивает однозначного линейного упорядочения алгоритмических операторов при построении формальной системы, тогда как применение ИСПВ позволяет формализовать процесс построения алгоритма линейным образом.

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

Текст научной работы на тему «ДЕДУКТИВНАЯ И ИНДУКТИВНАЯ СИСТЕМЫ ПРАВИЛ ВЫВОДА ДЛЯ ПОСТРОЕНИЯ ФОРМАЛЬНЫХ СИСТЕМ»

УДК 510.6.66

Дедуктивная и индуктивная системы правил вывода для построения формальных систем

Н.Л. Малинина.

Цель статьи - сравнительная оценка сложности дедуктивной (ДСПВ) и индуктивной (ИСПВ) систем правил вывода при построении формальных систем. При использовании правил вывода «если q, то Р» (ДСПВ) построение формальной системы осуществляется в лучшем случае с помощью полиномиальных алгоритмов синтеза. Поэтому характерной особенностью развития программирования в настоящее время является постоянное увеличение стоимости разработки программных средств по мере усложнения задач. Индуктивный подход («Р, если q») не требует указания адресов передачи выходной информации, что существенно упрощает задачу составления алгоритма. Сравнение особенностей ДСПВ и ИСПВ позволяет сделать следующие выводы: ДСПВ отличается более высокой сложностью по сравнению с ИСПВ и не обеспечивает однозначного линейного упорядочения алгоритмических операторов при построении формальной системы, тогда как применение ИСПВ позволяет формализовать процесс построения алгоритма линейным образом.

Целью статьи является сравнительная оценка сложности дедуктивной (ДСПВ) и индуктивной (ИСПВ) систем правил вывода при построении с их помощью такой формальной системы, как алгоритм.

Характерной особенностью развития программирования на базе существующих в настоящее время различных алгоритмических языков и операционных систем является постоянное увеличение стоимости разработки программных систем по мере усложнения задач, решаемых с помощью вычислительной техники. К началу 80-х годов стоимость программного обеспечения уже составляла « 85% от общей стоимости ЭВМ и программного обеспечения, и это соотношение постоянно растет. Программирование складывается как очень трудно дисциплинируемая область творческой деятельности человека и существующие на сегодняшний день способы разработки и построения математического и программного обеспечения (МПО) для задач, решаемых в САПР, АСК и при математическом моделировании сложных процессов в основном сводятся к единой технологической схеме (рис.1).

Неавтоматизированный ручной труд

Возможна автоматизация частных вопросов в ограниченных размерах

а) Неавтоматизированный ручной труд

б) Способ автоматизиции разработан, но широко не применяется Частично-

автоматизированный труд

а) Неавтоматизированный труд

б) Автоматизированный труд

1. Изучение объекта исследования, моделирования или проектирования и выбор необходимых расчетных методов или способов моделирования.

2. Декомпозиция объекта, процесса проектирования или конструирования, процесса функционирования, решения расчетной _задачи на элементарные модули ли операции._

3. Выбор и разработка расчетных моделей, операторов, соответствующих элементарным операциям, составляющим процессы проектирования, конструирования и т.д.

4. Разработка произвольного алгоритма (блок-схемы) проектирования конструирования, решения расчетной задачи, математического моделирования.

5. Программирование отдельных модулей операторов или блоков, входящих в произвольный алгоритм.

6. Преобразование произвольного алгоритма в нормальный.

I

7. Разработка программы для реализации нормального алгоритма (управляющей программы).

Рис. 1. Единая технологическая схема разработки МПО.

Подавляющее большинство разработчиков до недавнего времени вообще объединяли 4, 6 и 7 этапы в один - программирование. По мере усложнения задач выявилась необходимость выделения построения блок-схемы алгоритма в самостоятельный этап работы.

Два последних этапа (6 и 7) разработки МПО являются самыми сложными и трудоемкими, поскольку приходится одновременно решать три группы вопросов:

- Упорядочение всех операторов алгоритма.

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

- Информационное снабжение программы из внешних источников и базы данных.

Смешение трех групп вопросов делает работу специалистов весьма сложной и не позволяет

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

Математическое описание задачи

Произвольный алгоритм (блок-схема)

Нормальный алгоритм (граф-схема)

Программа 4-

а) Прямое программирование

б) R-технология.

Математическое описание задачи

Математическое описание задачи

Произвольный алгоритм (блок-схема)

Нормальный алгоритм (граф-схема)

Программа

в) Концептуальное программирование г) Автоматизированный синтез алгоритмов

Рис. 2. Принципиальные схемы разработки МПО.

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

Все это происходит потому, что до сих пор построение алгоритмов для решения задач различных типов осуществляется только с помощью средств дедуктивной математики, т.е. формальную систему или структурную схему алгоритма строят обычно от исходных данных (аксиом) к окончательному результату (теореме), применяя правила вывода типа: "если q, то Р". При этом синтез или построение формальной системы осуществляется либо вручную, либо с помощью дедуктивных алгоритмов синтеза: полный перебор, метод ветвей и границ, некоторые полиномиальные алгоритмы синтеза и т.д. В последнее время, в связи с появлением других математических методов [1], появилась реальная возможность развития индуктивного подхода

применительно к построению формальных систем, т.е. применение правил вывода типа: "Р, если ц".

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

Отметим, что метод, связывающий воедино индукцию и дедукцию, для регулярного построения формальных систем как структуры вычислительных алгоритмов и программ изложен в [2]. Любую формальную систему можно представить в виде ориентированного или неориентированного графа: вершинного G(Q,Г), где операторам алгоритма соответствуют вершины, а связям - дуги, или реберного где операторам ставятся в соответствие дуги

графа, а связям между ними - вершины. Первым соответствуют сопряженные сетевые модели (ССМ), вторым - обыкновенные сетевые модели (ОСМ).

В обычной практике разработки формальных систем в виде алгоритмов или программ применяют ССМ или блок-схемы, которые, как правило, непосредственно не обладают свойством эффективной рекурсивности, что является необходимым условием для реализации формальной системы на ЭВМ. Эта особенность блок-схем создает основные трудности при разработке алгоритмов и программ. Однако появилась возможность автоматизированного перехода от ССМ к ОСМ с помощью регулярных алгоритмов синтеза первого порядка [1,2]. Кроме того, с помощью тех же алгоритмов синтеза, стало возможным немедленное построение непосредственно ОСМ, обладающих свойством эффективной рекурсивности. Поэтому в настоящее время можно говорить о реальном сравнении ДСПВ и ИСПВ в применении к построению формальных систем.

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

т - число правил вывода в ДСПВ (число дуг графа); п-1 - число правил вывода в ИСПВ (число вершин графа без одной). Тогда относительная сложность ДСПВ по отношению к сложности ИСПВ будет:

5 - т

n -1

Одной из характеристик сложности структуры графа может служить его цикломатическое число:

v = m — n + 1 = m - (n — l) Введем коэффициент плотности заполнения матрицы смежности:

m

r =-

M max

n2 - n

где: M =-

A ^^ • max ^

^ n2 - n Тогда: m = r* M max = r*-

v = | r * n Л

- 1)*(n - 1)

Обозначим:

- число правил вывода в ИСПВ;

Мс - число правил вывода в ДСПВ.

Легко видеть, что:

П - п

м. = г*-

* 2

Мс=п- 1 ^ = ^ = г* П

п - 1 2

Таким образом, число правил вывода в ДСПВ практически пропорционально квадрату числа последовательно выводимых теорем (применительно к разработке алгоритмов или программного обеспечения - квадрату операторов или модулей алгоритма). Показатель параболы может быть даже выше [3]. Правда, в ДСПВ многие правила вывода повторяются, и число повторяющихся равно числу правил вывода в ИСПВ. Тем не менее, чтобы исключить все повторяющиеся правила вывода, необходимо вначале переписать их все. Поэтому на концептуальном этапе проектирования для задач высокой и очень высокой размерности требуются огромные затраты времени и труда для построения формальной системы в виде набора аксиом и правил вывода. Это обстоятельство является главной причиной быстрого роста трудозатрат в случае разработки алгоритмов и программ с использованием ДСПВ (рис. 3).

Рис. 3. Сравнительная оценка сложности дедуктивной и индуктивной систем правил вывода.

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

>г)

А 01 х

ДСПВ

х э (а1;а2;...)

А лго ритм :

(х э ,г,у})

D

?

?

Е>

Рис. 4. ДСПВ - неопределенность поиска - неоднозначность решения.

я (е, г')

ИСПВ

у<=(ю5;ю4;...) А лго ритм:

Ап (х Э ^

о

^ о

Рис. 5. ИСПВ - определенность поиска - однозначность решения.

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

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

В простейшем случае ДСПВ может быть представлена в виде ориентированного графа без контуров G(Q,Г), где:

Q - множество вершин; Г = Qi —0} - множество дуг.

В таком графе (рис. 4):

{х} - множество минорант, {х} е (;

{у, *,v,...} - множество мажорант, {у , *, v, • • •} е (.

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

Причем любая дуга ^е ( соединена по крайней мере одним путем с одной из ду€ {у, *,v, • •.} . Однако при выходе из миноранты X нельзя указать в точности дугу, которой начинается путь, ведущий в искомую мажоранту V. Это утверждение справедливо для каждой из вершин, находящихся на любом из путей, соединяющих множество минорант {х} с множеством мажорант {у,*,v,•••} . В то же время для получения однозначного решения задачи необходимо выявить в графе G(Q,Г) все те и только те пути, которые соединяют множество минорант {х} с искомой мажорантой V.

Для выявления таких путей необходимо:

1. Определить все пути, соединяющие множество минорант {х} с множеством мажорант {у,*,v.

2. Выделить из этого множества путей, подмножество тех путей, которые заканчиваются искомой мажорантой V.

3. Исключить из графа G(Q,Г) все дуги и вершины, не принадлежащие выделенному подмножеству путей. Оставшийся подграф G'(Q',Г') будет отражать искомый алгоритм.

Таким образом, при применении ДСПВ, мы сталкиваемся с неопределенностью при поиске подграфа, являющегося отображением искомого алгоритма, и с неоднозначностью решения. Разрешить эту неопределенность при использовании ДСПВ можно либо введением дополнительной информации, сужающей область поиска, либо перебором всех путей в графе G(Q,Г). Индуктивная система правил вывода, в отличие от дедуктивной, позволяет исключить фактор неопределенности на данный момент времени для исходной системы аксиом. Действительно, при применении ИСПВ, поиск пути, соединяющего {х} с заданной мажорантой V, начинается именно с искомой мажоранты. В этом случае при движении в графе G(Q,Г) от искомой мажоранты V к миноранте {х} при прохождении любой из вершин выход из вершины

со1 осуществляется только в направлении тех вершин со 1 _ 1, которые необходимы, как исходные данные для работы алгоритмического оператора в вершине со1. Поэтому любой путь от мажоранты V к миноранте {х} строится вполне определенно. При этом, если {х} - суть множество вершин, то после построения всех путей, ведущих в обратном направлении от искомой мажоранты V к миноранте х из множества {х} исключаются те вершины, в которых не начинается ни один путь, ведущий в мажоранту V.

В рассмотренном примере на рис. 3 при построении подграфа 0'@',Г') с использованием ДСПВ необходимо, прежде всего, построить граф ЯеГ), содержащий 14 путей, соединяющих {х} с {у ,г,v,•••} . В то же время граф Я(е,Г) (рис. 4), построенный с применением ИСПВ, содержит всего 6 путей, соединяющих {х} с V.

Проведенное обсуждение особенностей ДСПВ и ИСПВ позволяет сделать следующие выводы:

1. ДСПВ отличается более высокой сложностью по сравнению с ИСПВ.

2. ДСПВ не обеспечивает однозначного линейного упорядочения блоков алгоритма или алгоритмических операторов при построении формальной системы.

3. ДСПВ не обеспечивает определенности поиска при построении структурной схемы алгоритма и однозначности решения задачи.

4. Применение ИСПВ позволяет формализовать процесс построения алгоритма линейным образом и исключить фактор неопределенности на данный момент времени. В случае изменения системы исходных аксиом формальную систему легко вновь построить или перестроить с учетом новых исходных данных.

5. Применение ИСПВ для построения формальной системы позволяет существенно сократить трудозатраты на разработку алгоритма и программы уже на концептуальном этапе проектирования.

ЛИТЕРАТУРА:

1. Малинин Л.И. Восемь дополнительных теорем из теории графов. В кн. Нечипоренко В.И. Структурный анализ сложных систем. М.: Сов. Радио, 1977.-С.198-212.

2. Малинина Н.Л. Автоматизированный синтез вычислительных алгоритмов для проектирования сложных систем. Дис. к. ф.-м. н.// МАИ.- М.: 1993. - 200с.

3. Тыугу Э.Х. Концептуальное программирование. М.: Наука. 1984.-255с.

4. Нагих Н.Я. К вопросу о происхождении индукции и дедукции. Автореферат на соискание ученой степени кандидата философских наук. М.: МГУ, 1968.-15с.

5. Формальная логика. Л.: ЛГУ, 1977.-357с.

6. Иванова И.И. Сравнительный анализ методов античной, средневековой и классической логики. Автореферат на соискание ученой степени кандидата философских наук. М.: МГУ, 1984.-25с.

7. Индуктивная логика и формирование научного знания. Сб. статей. М.: Наука, 1987.-185с.

8. Кайберг Г. Вероятность и индуктивная логика. М.: Прогресс, 1978.-373с.

СВЕДЕНИЯ ОБ АВТОРЕ

Малинина Наталия Леонидовна, доцент кафедры вычислительной математики и программирования Московского авиационного института (государственного технического университета), к.ф.-м.н.

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