Algebraic Programming System APS

Скачать презентацию на тему: "Algebraic Programming System APS" с количеством слайдов в размере 18 страниц. У нас вы найдете презентацию на любую тему и для каждого класса школьной программы. Мы уверены, что наши слайды помогут найти вам свою аудиторию. Весь материал предоставлен бесплатно, в знак благодарности мы просим Вас поделиться ссылками в социальных сетях и по возможности добавьте наш сайт MirPpt.ru в закладки.

Нажмите для просмотра
Algebraic Programming System APS

1: ЛЕКЦИЯ 3 ALGEBRAIC PROGRAMMING SYSTEM APS доц. Песчаненко В. С. Херсонский государственный университет Кафедра информатики Научно-исследовательский институт информационных технологий Лаборатория по разработке и внедрению педагогических программных средств 2010

2: ALGEBRAIC PROGRAMMING SYSTEM APS Области применения: прототипирование алгоритмов, верификация, доказательство программ, компьютерная алгебра, алгебра логики, конвертация данных, парсеры Если данные можно представить в виде дерева, и это дерево надо как-то преобразовывать – в этом случае точно можно использовать APS.

3: ALGEBRAIC PROGRAMMING SYSTEM APS WHAT ARE NEW? Язык FPL (Formula Processing Language) – позволяет использовать язык APLAN на C. Интеграция с технологиями SmartPtr, GMP library. Реализация процедуры хеширования в алгоритме переписывания. Реализация функций добавления, удаления и обновления правил системы переписывающих правил (задача хеширования термов). Реализация недетерминированной стратегии переписывания.

4: ALGEBRAIC PROGRAMMING SYSTEM APS Файловая структура: aps. exe intlib. dll intlibcan. tbl intlibproc. tbl sublib. dll sublibproc. tbl usrlib. dll usrlibcan. tbl usrlibproc. tbl

5: ALGEBRAIC PROGRAMMING SYSTEM APS proc. tbl (описание С процедур): 1 строка: 30 – количество записей в файле Оставшиеся строки имеют вид: vVS… V – интерпретировать S – копировать Количество больших V,S – количество параметров процедуры Пример: let vVS let В языке APLAN C функцию let можно вызвать использовав имя let с двумя параметрами. Первый параметр интерпретируется, второй – копируется.

6: ALGEBRAIC PROGRAMMING SYSTEM APS Определения: Канонизатор – С функция или система переписывающих правил которая строит каноническую форму. Отметка – тип данных APS, который определяется так: MARK (,,,) и. ф. з для арности 2 и. ф. з – инфиксная форма записи. 0 – дерево для одинаковых вершин – правосторонние, а 1 – левосторонние Пример: ADD (2, 54, "" ). ADD(x,y)xy

7: ALGEBRAIC PROGRAMMING SYSTEM APS can. tbl (описание С канонизаторов отметок): 1 строка – количество записей в файле Оставшиеся строки имеют вид: Пример: ADD add addcan ADD – имя отметки, которое должно быть определено (std. ap: ADD(2,…)) add – имя введено специально для процедуры markcan (1 add 2) addcan – имя C функции

8: ALGEBRAIC PROGRAMMING SYSTEM APS Основная структура данных – правосторонние дерево Типы данных APS: Имена, Отметки, Целые, вещественные числа, строки, Атомы Совет: Если написанная программа - не работает и Вы нашли место в котором ошибка – проверьте приоритеты операций

9: ALGEBRAIC PROGRAMMING SYSTEM APS Имена: Могут быть глобальные или локальные. Доступны только с момента объявления. Локальные имена доступны только до конца файла в котором они объявлены Объявление глобальных имен: NAME ; Объявление локальных имен: PRIVATE ;

10: ALGEBRAIC PROGRAMMING SYSTEM APS Примеры: NAME T; NAME P3; P1:P3; PRIVATE P;

11: ALGEBRAIC PROGRAMMING SYSTEM APS Целые числа – GMP library Вещественные числа – GMP library, разделитель «. » Строки – как в С Скобки: ,. Атомы: Если это ни один из перечисленных выше типов, тогда это АТОМ. Явное объявление: АТОМ ; Локальные и формальные параметры процедур, считаются именами с областью видимости – тело процедуры. Если имена пересекаются с локальными или формальными параметрами процедуры, то из тела процедуры не будет доступа к глобальному имени.

12: ALGEBRAIC PROGRAMMING SYSTEM APS 1 столбик proc. tbl – АТОМЫ Примеры: prn 1 2 1 2 prn(1 2) 1 2 prn 1;2 1 prn(1;2) 1;2 APPLMRK – отметка с наивысшим приоритетом в APS. Круглые скобочки в APS влияют на построение дерева, но в самом дереве они отсутствуют.

13: ALGEBRAIC PROGRAMMING SYSTEM APS 1 столбик can. tbl – имена ОТМЕТОК prn 12 1 prn(12) 3 cantbl. tbl: ADD add addcan std. ap: ADD( 2, 54, "")

14: ALGEBRAIC PROGRAMMING SYSTEM APS Пример канонизатора на APLAN: INCLUDE INCLUDE MARK myADD(2,54,!); NAME R; R:rs(x,y)( x!yxy ); task: markcan(()!(),R),prn (1!2); Попробуйте сделать канонизатор для GCD

15: ALGEBRAIC PROGRAMMING SYSTEM APS Файл std. ap: Определение основных отметок для выражений и операторов Определение точки входа в программу. Если не подключить std. ap, то канонизаторы отметок описанные в cantbl. tbl работать не будут (Например - будет атомом, а не инфиксной формой записи некой отметки). Минимальная программа APS: NAME task; task:prn Hello world;

16: ALGEBRAIC PROGRAMMING SYSTEM APS Файл genobj. ap – дополнительные определения отметок compile. Правило интерпретации оператора APS: Вызов процедуры, описанной в proctbl. tbl Вызов канонизатора, если он установлен для верхней отметки дерева В противном случае APS вызывает систему переписывающих правил compile Если оператора нет и в compile – сообщение об ошибке и продолжение работы. Расширение языков возможностей APS проходит в compile Подключение genobj. ap существенно упрощает процесс разработки на APS

17: ALGEBRAIC PROGRAMMING SYSTEM APS Стратегия – некая процедура, которая реализует некий обход дерева с применением системы переписывающих правил. Файл strat. ap –определения различных стратегий стратегий(некоторые из них в комментарии, т. к. перенесены на С, можно их откомментировать – тогда они будут использоваться. Почему?) Процесс разработки на APS: Прототип на APLAN анализ прототипа и его усовершенствование реализация С

18: ALGEBRAIC PROGRAMMING SYSTEM APS Джентльменский набор файлов APS: aps. exe intlib. dll intlibcan. tbl intlibproc. tbl sublib. dll sublibproc. tbl usrlib. dll usrlibcan. tbl usrlibproc. tbl std. ap genobj. ap strat. ap

Скачать презентацию


MirPpt.ru