Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Содержание сайт... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Создание отчето... 63296
Модуль Forms 63202
ТЕХНОЛОГИИ ДОСТ... 59869
Пример работы с... 58761
Имитационное мо... 55326
Реклама
Сейчас на сайте
Гостей: 14
На сайте нет зарегистрированных пользователей

Пользователей: 13,077
новичок: radikrr
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Лабораторная работа по динамическим спискам на Turbo Pascal (перемещение...
Моделирование работы обрабатывающего участка цеха в GPSS
Моделирование работы участка термической обработки шестерен на GPSS + По...

Реклама



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

ПОДПИСЫВАЙСЯ на канал о программировании
Предварительные сведения
К настоящему времени в теоретических исследованиях в области
computer science сложился основной математический аппарат. На
первый взгляд он не является однородным. Более того, каждое очередное исследование, как правило, содержит построение своего собственного математического аппарата.
Очень часто применяемые автором основные математические идеи оказываются завуалированными громоздкими выкладками.
Вместе с тем при более внимательном рассмотрении часто оказывается, что работа использует те или иные идеи либо из теории категорий, либо из комбинаторной логики, либо из исчисления (лямда)-конверсий,
либо из всех трех этих математических дисциплин сразу. О важности
овладения этими разделами математики свидетельствует хотя бы
тот факт, что открыв практически наугад труды любой конференции
по computer science, можно найти не только чисто номинальное использование ??обозначений, но фактическую разработку собственного математического языка, опирающегося на применение аппликаций и абстракций. Тем не менее попытки самостоятельного изучения основ ?-исчисления или комбинаторной логики наталкиваются
на препятствие с самых первых шагов : требуется известное усилие, чтобы “перестроить мышление” с операторной точки зрения на
математические записи на аппликативную, когда нет изначального
разделения математических сущностей на “функции” и “аргументы”,
а есть только “объекты”. Интересно отметить, что один и тот же объект в зависимости от контекста может использоваться в различных
ролях, играя то роль аргумента, то роль функции.
С синтаксической точки зрения объекты выделяются либо использованием специальной скобочной записи, либо принятием соглашения об опускании скобок, когда их при желании можно однозначно восстановить. Другая важная отличительная особенность заключается в акцентировании свойствабазисностинекоторых заранее
выделенных объектов. Всякий раз оказывается, что вновь вводимый
объект может быть выражен путем комбинирования исходных объектов, которые в силу этого обстоятельства вполне уместно назвать
комбинаторами. Такую разложимость произвольно введенного объекта в базисе трудно переоценить: вместо исследования свойств
громоздкой прикладной теории с большим числом самых разных
объектов можно заняться исследованием свойств всего нескольких
объектов, нисколько не теряя при этом общности получаемого результата.
Для специалиста в computer science это весьма желаемое свойство. Оказывается, что базисные комбинаторы могут быть приняты
за систему команд некоторой абстрактной вычислительной системы,
а все прочие объекты могут быть выражены, то есть “запрограммированы” посредством использования именно этого набора команд.
Несмотря на кажущуюся очевидность, эта возможность аппарата
комбинаторной логики еще не достаточно применена в практике компьютерных исследований.
Обсуждение философских, чисто математических или технических аспектов аппликативных вычислений может увести далеко в
сторону оснований математики. Тем не менее существует вполне
приемлемый путь. Можно сперва ограничиться решением некоторых -- хотя и на первый взгляд абстрактных,-- задач, а затем сделать
вывод, стоит ли двигаться дальше, в глубь идей аппликативных вычислений.
Данный раздел следует воспринимать как некоторое подобие
меню, в котором обозначены основные вопросы, взаимодействие
которых предстоит сначала увидеть непосредственно, а потом при
детальном изучении выявить его более глубокую сущность.
В настоящем разделе приводятся подборки вариантов задач, которые рекомендуется использовать при самостоятельном изучении.
В случае организации аудиторной работы по изучению (лямда) исчисления и комбинаторной логики можно порекомендовать специальные подборки задач по вариантам, позволяющие делать не “слишком большие”, а вполне посильные шаги при освоении новых математических, или, скорее, вычислительных идей. Эти варианты задач
сведены в таблицу. Варианты задания для самостоятельной работы
над материалом:

Hомеp Рекомендуемый
ваpианта набоp задач
1 1.1 2.6 3.3 4.7 5.1 6.1
2 1.2 2.5 3.1 4.6 5.2 6.2
3 1.3 2.4 3.2 4.5 5.3 6.3
4 1.4 2.3 3.3 4.4 5.4 6.4
5 1.5 2.2 3.1 4.3 5.1 6.5
6 1.6 2.1 3.2 4.2 5.2 6.6
7 1.7 2.5 3.3 4.1 5.3 6.7
8 1.8 2.4 3.1 4.7 5.4 6.8
9 1.9 2.3 3.2 4.6 5.1 6.9
10 1.10 2.2 3.3 4.5 5.2 6.1
11 1.11 2.1 3.1 4.4 5.3 6.2
12 1.12 2.5 3.2 4.3 5.4 6.3
13 1.1 2.4 3.3 4.2 5.1 6.4
14 1.2 2.3 3.1 4.1 5.2 6.5
15 1.3 2.2 3.2 4.7 5.3 6.6
16 1.4 2.1 3.3 4.6 5.4 6.7
17 1.5 2.5 3.1 4.5 5.1 6.8
18 1.6 2.4 3.2 4.4 5.2 6.9
19 1.7 2.3 3.3 4.3 5.3 6.1
20 1.8 2.2 3.1 4.2 5.4 6.2
21 1.9 2.1 3.2 4.1 5.1 6.3
22 1.10 2.5 3.3 4.7 5.2 6.4
23 1.11 2.4 3.1 4.6 5.3 6.5
24 1.12 2.3 3.2 4.5 5.4 6.6
25 1.1 2.2 3.3 4.4 5.1 6.7
26 1.2 2.1 3.1 4.3 5.2 6.8
27 1.3 2.5 3.2 4.2 5.3 6.9
28 1.4 2.4 3.3 4.1 5.4 6.1
29 1.5 2.3 3.1 4.7 5.1 6.2
30 1.6 2.2 3.2 4.6 5.2 6.3
31 1.7 2.1 3.3 4.5 5.3 6.4



Для углубленного изучения разделов настоящего пособия, для тех,
кто не захочет удовлетвориться вполне элементарным уровнем, можно порекомендовать некоторые работы. Часть из них вполне доступна как материал для первого чтения, тогда как другие носят характер оригинального исследования. В последнем случае открывается
возможность соприкоснуться с тем, как делаются математические
теории в computer science. Для этого лучше всего использовать оригинальные исследования в авторской публикации, к чтению и пониманию которых вполне можно подготовиться, прорешав рекомендуемые задачи.
Пионерское для computer science исследование выполнено Дж.
Маккарти в [83]. Им разработан язык обработки списков LISP, являющийся вполне объектно-ориентированным и к тому же функциональным языком программирования. В течение ряда лет LISP был
одной из самых популярных систем программирования в области
искусственного интеллекта, заслужив название “ассемблер знаний”.
Отметим, что LISP является компьютерной реализацией (лямда)-исчисления, предоставляя программисту практически все средства этой
мощной математической теории.
В работе [19] можно найти краткое и доступное неспециалисту
введение в систему обозначений, принятую в (лямда) исчислении и комбинаторной логике. Исчерпывающее изложение всего круга математических идей содержится в [2], однако для изучения требуется
предварительная математическая подготовка. Классическое, очень
подробное, ясное и обстоятельное обсуждение логического аппарата аппликативных вычислительных систем в [17] поможет сформировать мировоозрение, вероятно, на весь объектно-ориентированный
подход, сложившийся в математических разделах computer science.
Следует иметь ввиду, что именно благодаря усилиям Х. Карри комбинаторная логика сформировалась не только как общематематическая дисциплина, но и как необходимый фундамент компьютерных
исследований.
Различную методическую помощь при решении задач, иллюстрирующих приложения АВС, можно почерпнуть из работ [38], [5],
[6], [7], [8], [16], [1].
Исследование [9] содержит подробные построения различных
вариантов прикладных аппликативных систем, имеющих значение
для решения прикладных задач, направленных на разработку информационных систем.
Особое место занимает работа [94]. Ее значимость и диапазон21
влияния на несколько поколений теоретиков computer science трудно переоценить. По-видимому, еще далеко не все, содержащиеся
в этой работе идеи, нашли свое непосредственное применение. В
частности, идея построения систем комбинаторов для специальных
классов вычислений служит стимулом для глубоких и принципиальных исследований.
Работы [60], [61], [62] содержат разработку специальной комбинаторной логики, получившей название категориальная комбинаторная логика. На ее основе разработана абстрактная машина, являющаяся усовершенствованной концепцией понятия вычисления, а
также самостоятельная система программирования, предназначенная для исследований в области программирования.
Несколько дополнительных работ, приводимых в библиографии,
помогут начать самостоятельные исследования в различных прикладных областях, опираясь на возможности аппликативных вычислительных систем. В [49], [107] можно найти применения в искусственном интеллекте.
Особо следует остановиться на исследованиях Д. Скотта [90],[91],
[92],[93],[94],[95],[96],[97]. Эти (и многие другие) его работы заложили
не только математические основы, но и, по-видимому, всю современную систему мировоззрения computer science. Теория вычислений,
семантика языков программирования, вычисления, основанные на
объектах -- вот далеко не полный перечень направлений исследований, инициированных этим математиком.
Введение в математическую проблематику комбинаторной логики и (лямда)-исчисления можно найти в работах [21],[22], [23], [24],[25], [26],
[27], [28],[29]. В этих работах выполнено исследование выразительных возможностей систем с операторами аппликации и (функциональной) абстракции. Элементарные основы комбинаторной логики
подробно изложены в [77].
Работы Н. Белнапа могут принести пользу при разработке теории компьютерных информационных систем ([4], [51], [52]). Эти же
вопросы затронуты в [59].
Системы программирования в терминах объектов, основанные
на технике аппликативных вычислений, в разной степени подробности изложены в [3], [15], [46], [47], [54], [69], [70], [75], [79], [84],22 РАЗДЕЛ 1. ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ
[86], [103]. В качестве основополагающей работы -- для суперкомбинаторного программирования -- следует обратить внимание на
исследование [79] и [86].
Остальные работы, приводимые в библиографии, помогут сориентироваться в смежных вопросах и начать самостоятельные исследования в области аппликативных вычислений.
Опубликовал Kest April 03 2014 03:18:30 · 0 Комментариев · 2749 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
Flash MP3 Player ...
Программирование ...
Report
Просмотр коммент...
Exe in exe
PCX
Основы Delphi
TsHintManager
C# Учебный курс
PHP 5. Полное рук...
Программирование ...
Фундаментальные а...
Apollovcl61
Программирование ...
DemoEdit [Исходни...
Игра змейка
Панель поиска
Delphi 6/7 базы д...
Pro-Download Sys...
PHP 5 в подлинник...

Топ загрузок
Приложение Клие... 100426
Delphi 7 Enterp... 85342
Converter AMR<-... 20062
GPSS World Stud... 12255
Borland C++Buil... 11462
Borland Delphi ... 8428
Turbo Pascal fo... 7014
Visual Studio 2... 4985
Калькулятор [Ис... 4686
FreeSMS v1.3.1 3530
Случайные статьи
Однократно использ...
Контроль ошибок
Заблуждения в С++
Глава 15. Страт...
Типы материнских плат
Уникальные характе...
номер заказа OrderID
Элементы USB
Серверы, обеспечив...
Теперь рассмотрим ...
вычисления значени...
Блок-диаграммы (бл...
Чем занимаются СРО?
Питер Наур и его р...
групповой политики...
Френды (друзья) в ...
Процедура Ellipse ...
Повторное использо...
Общие принципы соз...
Задачи привратника...
Особенности модаль...
Установка адаптера...
Создание примера п...
Внутренний процесс...
Видеоприложения со...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?