Навигация
Главная
Поиск
Форум
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
Создание отчето... 64212
Модуль Forms 63941
Пример работы с... 61019
ТЕХНОЛОГИИ ДОСТ... 60810
Имитационное мо... 56342
Реклама
Сейчас на сайте
Гостей: 4
На сайте нет зарегистрированных пользователей

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

Меры близости на векторах в Delphi + Блок схемы
Лабораторная работа по динамическим спискам на Turbo Pascal (удаление ду...
Моделирование регулировочного участка цеха на 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 Комментариев · 2803 Прочтений · Для печати

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


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



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

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

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

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

Пароль



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

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

Случайные загрузки
CoolDev TipsSyste...
Progressbar
Файловый менеджер
Pirc
Нестандартные при...
PHP: Полезные приемы
Delphi 2005 Секре...
около 291 статьи ...
Генетический алго...
netBIOS
Delphi 6/7 базы д...
GPSS World Studen...
База Allsubmitter...
Язык программиров...
AJAX и PHP. разра...
Delphi. Разработк...
Assembler. Практикум
EditButton
SMLPack v1.0
Email

Топ загрузок
Приложение Клие... 100455
Delphi 7 Enterp... 86155
Converter AMR<-... 20071
GPSS World Stud... 12523
Borland C++Buil... 11612
Borland Delphi ... 8526
Turbo Pascal fo... 7035
Visual Studio 2... 4992
Калькулятор [Ис... 4744
FreeSMS v1.3.1 3539
Случайные статьи
Вы можете настроит...
Синхронизация буфе...
2. RADIUS-прокси т...
Программирование: ...
включите для учетн...
HTPC
Анализатор поисков...
В четвертой главе ...
Формулы
Если поискать в Ин...
Этап опытной экспл...
Работа с плагинами...
Структуры XForms
Опыт оптимизации
Класс TShape
Определение длины ...
РЕЖИМ "ПОПОЛНЕНИЕ ...
Применение элемент...
Написанный вручную...
Подсчет атомов и ч...
Отсоединенный набо...
Проектирование экр...
Компиляция проекта...
Организация информ...
Проверить, правиль...
Статистика



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


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