Введение к работе
Актуальность теми В настоящее время получает приоритет создание таких систем программирования, которые оперировали би математическими моделями объектов. Эти модели долиш содержать метода иг анализа и преобразования. Желательно, чтобы пользователь, обращаясь в реише диалога к такой системе, задавал лишь конечный результат, а его получение обеспечивалось бы самой системой на основе описанных в модели методов. Ясно, что такие системы позволяют значительно повисить производительность труда программистов и пользователей, облегчают работу на ЭВМ. Однако самим вашим является то, что при использовании таких систем работа ЭВМ заметно "кнтеллектуалпзпруется". Это позволяет ей стать еще более гибким шіструмелтом в различных исследованиях и експериментах. Создашге таїаїх систем нуждается в новых подходах к технологии программирования. Такими подходаші являвтея лопі-ческое и функциональное програмяірования, а таіс:е концептуальное или обьектно-ориентнроэашюе программирование ( ООП ), которое в последнее время получает все большее распространение и становится одной из водудих концепций современного программиро-веїшя. С другой стороны эти подходы вызывают повыгэшшп интерес к моделям и методам дискретной математики н математической логика.
Работы по доннім научным направлениям имеются у белорусских ученых Петровского Л.Л., Влизілкова В.Л., Склярова В.Л., Бородача D.C., Вальвачева А.Н. и др., а тг.кїє у зарубеггшх учєїих -Тиугу Э.Х., Ченя Ч., Ли Р., Кальмэрсэ Д., утн К., Судзукл И., Манна 3., йлойда Р. н др.
U&Sk. работы. Разработать алгоритма, метода, я таккз осуществить программную реалізацій автоматического проектароваїзш програмі по операторным термам. Операторное термы выбраны потому, что ими более економно задагзтея вичислити функции, чем, скажем, логическими выводами.
Для достижения втеп цели необходимо рєппть следуїЕдпа основные задачи:
разработать математические методы для синтеза программ по операторным термам;
разработать модель синтеза программ по операторным термам, которая при проектировании использует
дедуктивный подход к автоматическому синтезу программ,
объектно-ориентированный подход; разработать структуру и осуществить программную реализацию системы автоматического проектирования программ по операторным термам ( САППОТ );
исследовать предложенные методы, в том числе оценить снизу и сверху число различных вычислимых функций, предсадвленных через термы и находящихся на данном расстоянии от фиксированного множества первоначальных функций.
Используемые в данной диссертации операторные термы являются термами в смысле, А.И.Мальцева и представляют собой выражения, состоящие из функциональных символов примитивной рекурсии R, минимизации М, суперпозиции Sn , а также символов простейших функций о, s, т.
Методы исследования. При решении втих задач использовались следующие методы: логических выводов в формальных теориях, теории алгоритмов, комбинаторного анализа, дедуктивного подхода к автоматическому синтезу программ, объектно-ориентированного подхода к проектированию программ.
Научная новизна. Основные результаты, выносимые на защиту, заключаются в следующем.
-
Разработаны математические метода для синтеза программ по операторным термам.
-
Разработана математическая модель автоматического проектирования программ по операторным термам, которая работает следующим образом.
а. вычисляет по терму, задающему вычислимую функцию і, значение этой функции I при указанных значениях аргументов;
О. проектирует и выдает по введенному терму программу на языке Паскаль для функции, заданной втим термом, следуя при етом одному из подходов логического программирования - дедуктивному подходу к автоматическому синтезу программ;
в. применяет один из операторов примитивной рекурсии, минимизации или суперпозиции к программам, спроектированным и выданным как самой САЛЮТ, так и написанным на языке Паскаль для вычислимой функции человеком , для проектирования и выдачи новых программ для соответствующих вычислимых функций, следуя при атом объектно-ориентированному подходу к проектированию программ,
3. Дана оценки oiawy и сверху числа различных вичислишх
'Іупіігй, пгэдстазлеш:ж чер.зз тертщ :і пзг.одтглтгсл ітз дзіес:: рзо-стс.тта от :п:с:грсЕ2:зтого гс.-'.^ства пзрсоиачз.тьіліл; .ругпогтЛ. Это члзла рзз;:о возрастпс? с увз-тпеггле*; испсдьзуем'лг: г» тер-'? cmcso-лзз операторов прз.гп^нгпзП: psitypcnrr, !,сзха"зз:пк:, супзргозшрт:. Этот ії-зкт гссор:гг о теч, ;;тз >гэ рзснілі то^г;гм сгпг" :: тс.'1, ~з л""п: ік,:;ст б:гтъ паггг.езло етзго різлтаїшс гсрогрг:.?.!, і:стср':з Е'гпюллг.1 рззлтиглз е'гп'сл;:;":з ^упіспя.
Ссо прсгрл"і":і СЛОЮ? пяп::сепу из язкпз Псс"яхь. Пга.':т:і'іас:;г)я нз.'щзгл:, д-:~:о'1 рз'стц ссстсггг в сл.эг.гг"::, 1. Ссзл"ігп:з.ч СЛІІГОГ "ест ::с::ользсвзтьэл в r,'!;.-;no-rrr.a:*.r::-'іосгл:^ г:ссі;єдя2р:пілл. Hp:s nic: с*із сі'Зепечтазст:
пзле::л,сп;;э эпг:'гогп:." е^пзлг: фтгггг^!, гтголсггз.гзїгзг;:: чзрзз терм;
прсгі;т;фгтіз;і::з rrrcrpf"-: длі. птічпспгг'іп !:т::^:"Г;, прз-з-тзпл?:спс чзр.оз їз;-:,'
пре-лгтрег.згп::? прогр"'-? "л r>.irv'.a.~v:jr. ї""'-~-"-'- rpr": пр~.'Э7?ггЕ:л оперзтеро:? г:г-:іт:-?"-о:і рз::урс::д, г-зг"1::?":*:::, сутг:р-поз":;!; цг/.і сгс:> злзрлтзрч 'лсіодьзї!:-.! і.':: ггрогрз'-'::, спрззг:т:грсг)і.ти^.'3 і: гулзтглз п:.--зі СЛІДОГ, таї: їх грзгг"'""' --"" "тгт.:огп?.*:іт ^уикгЛ, ::з::::з;:г:-з пи гз::кэ Пае^з^ї, ^0.-.^::^:.
С:*згг':> т"*г'з гогг: ігг;г'.-:г:лгьсг: в y:eGT'-:: цо.г:~л ггр.'.: ::?;'-лс:~-:т г:урзсп "Зжрзт::;:-; '-гг':т::кз'' :; "Тгср".': глгсу::-:з:і", з тпг.":ї з ;:yjC3 ''ГГрсгрс*"":рг"':!-:і"' ~;\: ::з,лу:с-Г'л грзгг""'": ':*: гс"гг П?с:;?.":;> тг.'Л/:с> с :;гт:":;:: ?-""'.
С:::;!:-.", r-г.з різ, 'то с"';*: Г ггг: ггрозр.гг'рс-'-'--""' гт"7"-"' ::~-іїопкз"5Т "ззз'глу ::-77-с:," :: гротр;:г.""..!ро?з'"г.'?, з гг-"зг.го ;.і,;*„'к~:::-:::'." по.^од :: с^тззу прзі'р-""' ': сСі':':і::з-ор:"?нтг;зг:;::г;!: полгал.
3. 0;:сз>;г-етзя, рз;:::"і> тлр'.-} с~:зл :: тс" гз псгГоп^с.: ,с'-'.::'-' зз-з::г ілізго г:пз:а::з':г: .:,,1:::::,::.1 ( -.-зср"-:.':; І !! 2 ). Сл"::'7зт :.::>-ло, ':о:-:зт С'іть нзгп:са:'о глзгз гзз:п:л прзгр""!, г.с~ог\'^ ггг-г-г.'.с.-л-т-::аз.т.*л:і::з гич,.:2л:"":'* ."""пстл :.о от:іЗз;:гзгь::з кзгоїп/: vp1'';"! -"5 )гсм те:!;пто."!-.з7г>уоз і:зл; че:т-::: сцз":::з c:"3j *:::зго~з"і "spsrcio-р:*з"г-зі ti/":^.':."":^ ;Jyr:::::!::; r-i::v тегз, -;ro с"з яз^готс:"; дз-;::з пе."г::сгТїїсЛ.
Рззл::ззгз::; гззу.тятзгег; г:;.:ст;г. Ссздзітзл с::зт?::з ззтстзт::-ч-зс::зго гтрсзг.-л^:ст,с-:п:л прзгр-"'-'! по сіирзтср:л.-: т-зг:-.*; ггр:аіЛ73 -'.'глизтерстроч сСрззопзг.лл і: пр-Г-.'з:гс!л:л в учебіг-.-з ц^лях прті ::зу-leifrt курсоз "Гг'.с.хрътг.зп. !-37':',Q,n:2a',f. "Тесрнл плгсг::г.:сз" і: ''Прзгрч^з.фслзтпїо". С::зтс::з тз::г:з одзіїа d FT Ml ' s::t і; 0/5СЭ-9Э
от 23 сентября 1993 г.).
Апробация. Основные принципа и результаты, которые излагаются в работе, рассматривались и обсуждались на следующих конференциях: межреспубликанской научно-практической конференции творческой молодежи "Актуальные проблемы информатики: математическое, программное и информационное обеспечение" ( г. Минск, 1992 г; ), 1-й белорусской конференции "Новые информационные технологии обучения" ( г. Минск, 1992 г. ). Принципы и результаты этой работы также рассматривались, обсуждались и получили одобрение нз международном семинаре в МГУ "Компьютеры в естественнонаучном образовании" ( г. Москва, 24-26 марта 1992 г. ).
Основные результаты работы опубликованы в 3 работах: в 1 статье и 2 тезисах докладов на научных конференциях.
Структура и объем диссертации. Диссертация изложена на 204 листах машинописного текста, содериїт 33 рисунка на 45 страницах и состоит из введения, четырех глав, заключения, списка литературы и трех приложений. Библиография включает 48 наименований.