автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.17, диссертация на тему:Функциональный поход к концептуальному программированию

кандидата физико-математических наук
Приходько, Павел Петрович
город
Киев
год
1992
специальность ВАК РФ
05.13.17
Автореферат по информатике, вычислительной технике и управлению на тему «Функциональный поход к концептуальному программированию»

Автореферат диссертации по теме "Функциональный поход к концептуальному программированию"

НАУЧНО-ПРОИЗВОДСГаВННОВ ОБЪЕДИНЕНИЕ "ГОРСИСТЕМОТВХНИКЛ"

На правах рукописи

ПР11ХОДБКО Павел Петрович

У,ЦК 681.3.06

ФУНКЦИОНАЛЬНЫЙ ПОДХОД К КОНШТУМЬНОМУ ПРОГРАММИРОВАНИЮ

Специальность 05.13.17 - теоретические основы информатики

Автореферат диссертации на соискание ученой степени кандидато флзико-катсматических наук

Работа выполнена в 1£лерском унигерситете им. Т.Г.Шевченко

Научный руководитель: доктор физико-математических наук,

профессор Редьхо В.Н.

ОЬлдизльныо оппоненты: доктор физико-математических наук

Капитонова Ю.В.,

кандидат физико-математических наук Оленин М.В.

Ведущая организация: Киевский политехнический институт

Защита состоится " " 159^ г. в Ц£,____ часа--

из заседании специализированного Сорота Д 166.CI.01 лри научи-, производственном объединении "Гсро-иптеютечшко" по адресу: ЖС С4, Киен, ул.КраеноарлеЯекая,23-6, кон1еренц-зал.

С диссертацией можно ознакомиться s ^«С.ти^теле И! 1С "Горсистемотехника".

Автореферат разослан 'bfà'"hCQS^j^ IS&) г.

.УченнИ секретарь Спс1.';:пл;!!?иро?анного Covsva

г Т<.ХШ!Ч»<\ЧЧХ наук v i'

ОБЩАЯ ХЛРЛКТЕВ1СТИКА РАБОТЫ

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

АКТУАЛЬНОСТЬ. Эффективность использования информационно-сычлслдтельной техники определяется прежде всего решением проблема быстрой разработки качественных програш. Природа ситуации, злоязвшейся в програгалщюва нпи, связана с выбором средств для этражения в проградглах объектов, описываемых условиями решаемых задач. Одно из направлений в разработка таких средств составляет звтсматизация программирования. В числе различных подходов к автоматизации программирования дедуктивный подход выделяется тем, 1то он предполагает извлечение синтезируемых программ из выводов з некоторых дедуктивных системах и представление-объектов вычис-ттвлышмй моделями - совокупностями некоторых исходных (функциональных зависимостей.

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

ЦЕЛЬ РАБОТЫ. Целью реферируемой работы является развитие етодов и.средств концептуального программирования как обработки каний, представляемых вычислительными моделями, разработка дэ-укяивной системы для эффективного практического синтеза програш ад вычислительными моделями.

МЕТОДУ ИССЛЕДОВАНИЯ. В работе используется композиционный сдход к прогрчи,шроваш!1з, предложенный и развитый в работах .Н.Редько. Зтот подход основывается- на использования фикций эк средств математического списания семантики програш. Состэе-аз програшике конструкции представляются кошоэодилни Функций.

Для математически точного списания семантической сущности С!(1тавлткг;Ш" моделей, баяошх программных модулей,

•?к?8зпру?г«сг программ " структурируемое:1!! дэтш, кроме аппарата

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

НАУЧНАЯ НОВИЗНА РЕЗУЛЬТАТОВ. В работе описан подход к дедуктивному синтезу программ, основывающийся на учете структурированности данных и использовании функций для представления базисных программных модулей и синтезируемых программ. Достоинством выбранного подхода является то, что в отличии от современных распространенных подходов он позволяет непосредственно организовать дедуктивный синтез циклических предложений и программ, содержащих циклические предложения. Используя концепции именных функций л композиций разработан подход к построению языков программного специфицирования вычислительных моделей и базовых языков синтезируемых программ. Разработаны дедуктивная система для синтеза программ (исчисление императивных схем) и метод построения вывода в этой системе. Показано, что предлагаемый метод обладает свойством сильной полноты и использование построенной дедуктивной системы для синтеза программ обеспечивает непосредственный переход от вычислительной модели к аксиомам, используемым для построения вывода, и от выводящегося объекта к требуемой программе.

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

АПРОБАЦИЯ РАБОТЫ. Основные результаты исследований по теме диссертации докладывались на республиканском семинаре "Програм-мологпя и ее применения" (Киев,- 1990), семинаре "Математические к •кгиопционные проблем регионального управления" (Киев, 1987).

П° дассеРтаЩ™ опубликовано 3 работы. иЛ.нШРА РАБОТЫ. Диссертация состоит из введения, трзх тоь, иг-^я литературы (75 наименований) и приложения.

СОДЕРЖАНИЕ РАБОТЫ

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

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

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

Эффективны^ синтез программ по вычислительным моделям предполагает представление в вычислительных моделях организации данных синтезируемых программ. Структура используемых данных должна отражать структуру моделируемых объектов. Представляется целеео-' образным при описании организации данных использовать алгебраический метод абстрагирования данных. Данные каждого типа образуют

частично-упорядоченное множество. Функциональные зависимости, доставляемые вычислительными моделями, должны быть непрерывны и монотонны для таких множеств. '

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

Б разделе 1.2 сформированы определения модели предметной областа первого, второго и третьего типа. Составляющие предметной области представляются множеством X -'программных объектов, семейством 6 = {Е£:хеХ} значений программных объектов, булевой алгеброй множеств Хс2Х наборов программных объектов. Программные объекты представляют характеристики предметной области (моделируемого объекта). Структурированность значений характеристик представляется дли-каждого программного объекта хеК отношением частичного пордцка Сх ,'задаваемым на'множест-Бе • Моделируемый объект выражается совокупностью своих

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

где

Хцг^Х) ЧхеХи игсх)б

При этом возможные состояния моделируемого объекта представляются не всеми элементами множества . \\/( X , £ , % - 0 всех значений -наборов программных -объектов,- га-яишь -возможными значениями (состояниями) наборов программных объектов - элементами его определенного подмножества £ \//( X г £ , X ).

Для какого-либо ТеХ множество ЦадмСТ) - множество состояний набора Т , \л/юз„(Т) - множество.состояний всех наборов-подмножеств набора у" ..На множестве W( X , . £ ■, ) определяется отношение частичного порядка £ , представляющее полноту описания состояния моделируемого объекта значениями наборов програАшныхйэбъектов;

Уи.ггб\-/(Х,£,Х) и^ггЪ^ХнСХибУх^ и(х)ски(хЬ.

Сказанному отношению с на IV ( X , £ > ) соотшт-отвует операция II взятия точной верхней грани.

Свойства моделируемого объекта в моделях предметных областей представляются функциональнши зависимостями, устанавли.вао-ьдад мезду состояния!® наборов программных объектов.

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

тану®, что . для ыеУымСА') , гдо

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

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

В разделе 1.3 с точки зрения функционального специфицирования программ рассматривается представление подзадач в моделях предметных областей программ. Подзадача выражает наличие такой функциональной зависимости между возможными состояниям" соответствующих данной подзадаче наборов программных объектов, которая вместе с этими состояниями определяется состоянием модели- ' руе^ого объекта. Саму такую функциональную зависимость следует рассматривать как значение некоторой характеристики моделируемого объекта. Поэтому сама подзадача является программным объектом, а соответствующая ей функция - значением этого программного объекта. Значение подзадачи представляет некоторый особый моделируемый ^объект, определяемый состоянием Моделируемого объекта, представляемого программой, содержащей реализацию данного значения подзадачи. Для предметной области моделируемого объекта, представляемого значением подзадачи, л предметной области моделируемого объекта^ представляемого программной, совпадают наборы программных объектов, совокупности состояний которых включают область

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

чи. V

Множество возможных значений какой-либо подзадачи

соотавляют монотонные функции вида -этом для

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

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

В иазделе 1.4 с точки зрения функционального специфицарова ния программ рассматриваются возыонные соответствия мекду циклаь и некоторши компонентами моделей предметных областей программ. Возможность получения цикла обусловлена наличием в моделируемом объекте некоторой совокупности подобных учаотков. Подобие таких участков состоит в совпадении их свойств к выращется в модели предметной области совпадением функциональных зависимостей, связывающих значения характеристик, представляющих эти участки мод< лируемого объекта. Тем самым, с одной стороны, указанная совоку] ность подобных участков выделяется в моделируемом объекте и пол: чает в пределах всего моделируемого объекта относительную смысл< вую самостоятельность. С другой стороны, указанная^совокупность подобных участков составляет класс эквивалентности по совпадешь функциональных зависимостей, связывающих значения набора харакТ' ристик каждого из этих участков. Тогда некоторый набор характеристик - "представитель" указанного класса эквивалентности тага получает некотррую смысловую самостоятельность. (• . Поэтому в самой модели предметной области наличие цикла в некоторой соответствующей модели программе может выражаться про паммным объектом , федставляицим значения характерном

«сой указанной совокупности подобных участков-моделируемого объ та, н метакабором для х - набором программных объектов 6

представятодим набор характеристик каждого из этих участков. Цикл характеризуется наличие« определенного алгоритма, многократно применяемого при обращении к данному циклу. Такой алгоритм определяется по модели предметной области, исходя из возможного значения набора программных объектов.

В модели предметной области цикл можно представлять тройкой вида (5, $ ( А , В ), X ), где - метанабор для

программного объекта Хс-Х г $ (А > В) - подзадача с входные, набором • Д и выходным 8 . Такая тройка представляет итерацию, если Х$ 5и В ' , В случае рекурсии хе (ЗлВ)4«/!.

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

В разделе 1.5 рассматривается модель предметной области кр средство представления знаний. При дедуктивном подходе к автоматизация программирования всякая программа рассматривается как последовательность обращений к знаниям, составляющим вычислительную модель, В процессе дедуктивного синтеза программы такая последовательность формируется в соответствии с выводом теоремы, рредставляющэй условия решаемой задачи, в дедуктивно! схзме, представляющей значения о способах решения класса зада-?, связанных о моделированием некоторого объекта. Используемое исчисление представляет "теорию" моделируемого объекта. Существование различ Йых путей фиксации знаний о способах решения таких классов задач определяет наличие различных подходов к организации дедуктивного ртруктурного синтеза программ.

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

Эффективность организации дедуктивного структурного синтеза программ определяется эффективностью привнесения программистской семантики для составляющих вычислительных моделей, /.¡атематический

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

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

Вторая глава посвящена исследованию подходов к практическому чредставлению моделей предметных областей в -аспекте "реализации /называемых ими функциональных зависимостей программными моду ляли (базисным! программными модулями). Рассматриваются возможности представления на ЭВМ составляющих вычислительных моделей, обосновывается выбор композиционного подхода к программированию как основания для построения средств, практического представления п:вяительннх моделей.

в разделе 2.1 рассматриваются вопросы практического пред-таълс-нкя знаний на ЭВМ вычислительными моделями. Форма представ-'олня знаний вычислительной моделью определяется гчбором семанта-программных объектов, предстгваисшх в шчислптеяыгай ио-лгрякт?рнотази моЛоднруеиого сс'т-ектг. К числу' возможных ин-"::;программны:: сл-ос.^ю« порег.екные лрогра.чм,

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

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

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

В разделе 2.2 устанавливается взаимосвязь медцу составляющими вычислительных моделей и составляющими композиционных программ, а также рассматриваются возможные пути реализации шчислн-те.'шлгх моделей и их составляющих средствами композиционного прура:,парования. При' этом для составляющих вычислительных моделей' устанавливается программистская семантика.

Ко;"!озп:шош!ое программирование предполагает подход к прог-п програшшл модулям как к функциям лад обрабатываемыми

данными, организованными как именные. данные, причем программные конструкции, используемые для построения программ из соотавлякь щих их модулей, представляются композициям}: над указанными функциями. Элементарные компоненты композиционных программ - базовые функции и простые операции (базовые композиции). Для построения композиционных программ кроме базовых используются и производные композиции, задаваемые метакошозицияш из базовых и ранее определенных. Множество именных данных определяется рекурсивно как объединение мнонества имен, множества базовых значений и совокупности конечных множеств именованных элементов -пар, в которых первая компонента - имя, а вторая - именное данное. Наличие имен у обрабатываемых данных отражает возможности обращения к данным в процессе выполнения программы. Множество имен и множество базошх значений могут иметь непустое пересечение, что отражает возможности косвенной адресации данных в памяти. Именные данные, которые составляют множества именованных элементов, в которых вторую компоненту составляют в свою очередь множества именованных элементов, модно отнести к данным структурного типа.

В этом же разделе'показано, что множеству всех значений У/СХ^ЭО соответствует множеотво именных данных ЯЫЛ**) , где множество £ кроме базовых значений, доставляемых семейством £ , содержит логические зйачения и натуральные чиола для удобства представления операторов предперехода и предпроизводя-щих операторов, а множество V имен составляют имена программных объектов и имена компонент структурированных значений программных объектов. Исходным функциональным зависимостям, представляющим свойства моделируемого объекта, соответствует некоторое множество Зо исходных имендах функций, получаемых при помощи композиций из базошх функций. Сами базовые' функции, как-и исходите именные функции, могут использоваться для получения производных именных функций,, в композиционных программах подзадачи реализуются блоками, а циклы - обращениями к операции цитирования. Функции, указываемые в модели предметной области и представляющие ее отдельные свойства, составляют исходное множество именных функций, из которых при помощи композиций синтезируется требуемая композиционная профайла, реализующая отображение аначени: входных параметров в выходные. Тем самым композиционное программ рование привносит программистскую семантику в исходное абстраги-

К1

роваяное представление предметной области.

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

2 третьей главе рассматриваются пути.практической организации ' автоматического дедуктивного синтеза програш и возможные направления его применения. На основе композиционного программирования описывается подход к дедуктивному синтезу програш. Рассматриваются возможности эффективного синтеза программ на основе этого подхода. Рассматриваются возможности практического использования для обработки знаний средств дедуктивного синтеза програг как систем инженерии знаний.

В Раздело 3.1 списывается язык итеративных программ как интерпретированных императивных схем. Для произвольной модели предаетной области представляется формальный язык, к терминальным символам которого относятся указываемые в модели предметной области функциональные зависимости,., представляющие отдельные свЬйства предметной области (моделируемого объекта), множество программных объектов и множество наборов программных объектов. Программистская семантика для этого формального языка устанавливается композиционными средствам. Предложенный язык императивны схем отражает взаимосвязь представления предметных областей вы* числительными моделями и синтеза програш, реализующих представл емые свойства. Указанная композиционная семантика представляет возмояности вычислительных моделей' как средств специфицирования програш.

^ разделе 3.2 рассматривается дедуктивная система для синтеза императивных програш - исчисление иитерпретироваиных 1шп>;|

тлвшх схем. Объекты этого исчисления" доставляет продлоаетшй » разделе 3»! язык императивных схем, а правила швода определяются возможностью получения при обращении к синтезируемой программной конструкции (композиции) состояния набора лрограшках объектов, составляющего точную верхнюю грань состояли!:, поучаемых при всех возмонных обращениях к составляющим (операндам) зтой программной конструкции. Предлагается метод построения вывода императивной схемы требуемой программы, обладающий свойством сильной полноты..

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

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

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

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

в рассматриваются возможности обработки знаний

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

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

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

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

Заключение и основные выводы. В диссертации получены следующие основные результаты.

1. Развит функциональный подход^ концептуальному программированию: описаны типы и структура организации данных в вычислительных моделях как функциональных спецификациях синтезируемых программ.

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

3. Описаны пути отражения в вычислительной модели структуры моделируемого объекта и структуры, значений его характеристик.

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

5. Описаны критерии организации дедуктивного структурного синтез ^рамм,.

6. Разработано исчисление интерпретированных императивных схем, представляющее синтез, требуемой программы как вывод соответствующей схемы, В указанном исчислении обеспечивается вывод схем, содержащих циклические предложения. Тем самым обоснована возможность непосредственного синтеза прдграмм, содержащих циклы, в инструментальных системах, обеспечивающих концептуальное программирование. Возможность подобного рода отсутствует в известных системах подобного тип?.

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

интерфейса'программных систем инженерии знаний", -«

Основные положения диссертации изложены в следующих работах,

1. О возможной формальной постановке задачи автоматического синтеза программ в случае структурирования данных/Приходько П.П.; Киев. Науч.-произвол.объед, "Горсистемотехника". - Киев, 1992,14 С.г Библиогр.: II назв.-. Рус— Дел. в УкрИНТЭИ'04.03.92, Ш2-Ук92." ^

2. О автоматическом сййт^зе программ, содержащих вызовы ■Ьуккций высших порядков, в случае структурирования данных /

Приходько П.П.; Киев. Идут.-произвол, одъед. 'Торснстемотохнп-ка".~ Киев, 1992.- 10 С,- Библиогр.: б назв.- Рур.- Деп. в УкрШГГЭИ СИ.аз.92, ;В>81-Ук92. '

3. Приходько ПЛи 0 возможном подходе к организации синтеза программ для структурированных данных // УПр. оистемн и мантии, 1992,- №/4,