что такое натуральный алгоритм

Что такое натуральный алгоритм

что такое натуральный алгоритм. Смотреть фото что такое натуральный алгоритм. Смотреть картинку что такое натуральный алгоритм. Картинка про что такое натуральный алгоритм. Фото что такое натуральный алгоритмчто такое натуральный алгоритм. Смотреть фото что такое натуральный алгоритм. Смотреть картинку что такое натуральный алгоритм. Картинка про что такое натуральный алгоритм. Фото что такое натуральный алгоритмчто такое натуральный алгоритм. Смотреть фото что такое натуральный алгоритм. Смотреть картинку что такое натуральный алгоритм. Картинка про что такое натуральный алгоритм. Фото что такое натуральный алгоритмчто такое натуральный алгоритм. Смотреть фото что такое натуральный алгоритм. Смотреть картинку что такое натуральный алгоритм. Картинка про что такое натуральный алгоритм. Фото что такое натуральный алгоритмчто такое натуральный алгоритм. Смотреть фото что такое натуральный алгоритм. Смотреть картинку что такое натуральный алгоритм. Картинка про что такое натуральный алгоритм. Фото что такое натуральный алгоритм

4.4. Натуральные алгоритмы. Порождение первичных алгоритмов

В § 2.5 дано общее определение операции. Однако из всех операций нам пока известны только натуральные, которые являются операциями только над словами и квазисловами. Язык L2 построен нами из конечного числа морфем при помощи последовательно выполняемых операций сцепления слов.

Теперь нетрудно определить формальный язык, предложениями которого будут всевозможные слова и квазислова в алфавите А1. Чтобы не говорить только об одном конкретном алфавите, считаем метасимвол заданным. Формальная грамматика нового языка в этом случае имеет вид.

что такое натуральный алгоритм. Смотреть фото что такое натуральный алгоритм. Смотреть картинку что такое натуральный алгоритм. Картинка про что такое натуральный алгоритм. Фото что такое натуральный алгоритм

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

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

что такое натуральный алгоритм. Смотреть фото что такое натуральный алгоритм. Смотреть картинку что такое натуральный алгоритм. Картинка про что такое натуральный алгоритм. Фото что такое натуральный алгоритм

Между знаками операций и самими операциями установим следующее соответствие (табл. 4.1.).

что такое натуральный алгоритм. Смотреть фото что такое натуральный алгоритм. Смотреть картинку что такое натуральный алгоритм. Картинка про что такое натуральный алгоритм. Фото что такое натуральный алгоритм
Таблица 4.1. Соответствие между знаками операций и операциями

В качестве упражнения построим алгоритм нахождения конца слова в определенном нами семействе натуральных алгоритмов. Его запись может иметь вид:

В этой записи (исключительно для наглядности) мы расположили приказы в виде столбца. Можно было бы их написать в виде одной строки и это не уменьшило бы понятности алгоритма для того, кто знает правило выполнения (см. с. 63). Первый приказ гласит: если преобразуемое слово непусто, то перейти к приказу 2, а иначе снова к приказу 1. Значит, если слово пусто, то сдвинуться с приказа 1 невозможно. Это значит, что к пустому слову наш алгоритм неприменим. Это естественно, так как пустое слово не имеет конца.

Составив такой алгоритм, мы можем выполняемое им преобразование объявить операцией. Обозначим ее «**».

Составим еще натуральный алгоритм, который проверял бы, является ли рассматриваемое слово однобуквенным? Его запись может иметь вид

Искомый натуральный алгоритм может иметь запись:

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

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

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

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

Источник

Алгоритмы

Алгоритмы. Разработка алгоритма решения задачи

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

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

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

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

Базовые алгоритмические конструкции

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

Линейные алгоритмы

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

что такое натуральный алгоритм. Смотреть фото что такое натуральный алгоритм. Смотреть картинку что такое натуральный алгоритм. Картинка про что такое натуральный алгоритм. Фото что такое натуральный алгоритм

Пример

ЗАДАЧА. Разработать алгоритм вычисления гипотенузы прямоугольного треугольника по известным значениям длин его катетов a и b.

На примере данной задачи рассмотрим все три этапа разработки алгоритма решения задачи:

Этап 1. Математическое описание решения задачи.

Математическим решением задачи является известная формула:

что такое натуральный алгоритм. Смотреть фото что такое натуральный алгоритм. Смотреть картинку что такое натуральный алгоритм. Картинка про что такое натуральный алгоритм. Фото что такое натуральный алгоритм,

где с-длина гипотенузы, a, b – длины катетов.

Этап 2. Определение входных и выходных данных.

Входными данными являются значения катетов a и b. Выходными данными является длина гипотенузы – c.

Этап 3. Разработка алгоритма решения задачи.

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

что такое натуральный алгоритм. Смотреть фото что такое натуральный алгоритм. Смотреть картинку что такое натуральный алгоритм. Картинка про что такое натуральный алгоритм. Фото что такое натуральный алгоритм

Разветвляющиеся алгоритмы

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

что такое натуральный алгоритм. Смотреть фото что такое натуральный алгоритм. Смотреть картинку что такое натуральный алгоритм. Картинка про что такое натуральный алгоритм. Фото что такое натуральный алгоритм

Пример

ЗАДАЧА. Разработать алгоритм вычисления наибольшего числа из двух чисел x и y.

Этап 1. Математическое описание решения задачи.

что такое натуральный алгоритм. Смотреть фото что такое натуральный алгоритм. Смотреть картинку что такое натуральный алгоритм. Картинка про что такое натуральный алгоритм. Фото что такое натуральный алгоритм

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

В рассматриваемом алгоритме (рис.3) имеются три ветви решения задачи:

Выбор ветви определяется значениями x и y в элементах 3 и 5, которые являются условиями, определяющими порядок выполнения элементов алгоритма. Если условие (равенство), записанное внутри символа «решение», выполняется при введенных значениях x и y, то следующими выполняется элементы 4 и 8. Это следует из того, что они соединены линией с надписью «да» и направление (последовательность) вычислений обозначена стрелочкой.

Если условие в элементе 3 не выполняется, то следующим выполняется элемент 5. Он соединен с элементом 3 линией с надписью «нет». Если условие, записанное в элементе 5, выполняется, то выполняется элементы 6 и 8, в противном случае выполняются элементы 7 и 8.

Циклические алгоритмы

Циклический алгоритм определяет повторение некоторой части действий (операций), пока не будет нарушено условие, выполнение которого проверяется в начале цикла. Совокупность операций, выполняемых многократно, называется телом цикла.

что такое натуральный алгоритм. Смотреть фото что такое натуральный алгоритм. Смотреть картинку что такое натуральный алгоритм. Картинка про что такое натуральный алгоритм. Фото что такое натуральный алгоритм

Алгоритмы, отдельные действия в которых многократно повторяются, называются циклическими алгоритмами, Совокупность действий, связанную с повторениями, называют циклом.

При разработке алгоритма циклической структуры выделяют следующие понятия:

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

что такое натуральный алгоритм. Смотреть фото что такое натуральный алгоритм. Смотреть картинку что такое натуральный алгоритм. Картинка про что такое натуральный алгоритм. Фото что такое натуральный алгоритм

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

В тело цикла входят:

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

Пример

ЗАДАЧА. Разработать алгоритм вычисления суммы натуральных чисел от 1 до 100.

Этап 1. Математическое описание решения задачи.

Обозначим сумму натуральных чисел через S. Тогда формула вычисления суммы натуральных чисел от 1 до 100 может быть записана так:

что такое натуральный алгоритм. Смотреть фото что такое натуральный алгоритм. Смотреть картинку что такое натуральный алгоритм. Картинка про что такое натуральный алгоритм. Фото что такое натуральный алгоритм

где Xi – натуральное число X c номером i, который изменяется от 1 до n, n=100 – количество натуральных чисел.

Этап 2. Определение входных и выходных данных.

Входными данными являются натуральные числа: 1, 2, 3, 4, 5, …, 98, 99, 100.

Выходные данные – значение суммы членов последовательности натуральных чисел.

Параметр цикла величина, определяющая количество повторений цикла. В нашем случае i – номер натурального числа.

Подготовка цикла заключается в задании начального и конечного значений параметра цикла.

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

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

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

Этап 3. Разработка алгоритма решения задачи.

Введем обозначения: S – сумма последовательности, i – значение натурального числа.

Начальное значение цикла i=1, конечное значение цикла i =100, шаг цикла 1.

Источник

Что такое алгоритм?! Часть первая

Терзаем вместе основной кирпичик программиста — Алгоритм.

что такое натуральный алгоритм. Смотреть фото что такое натуральный алгоритм. Смотреть картинку что такое натуральный алгоритм. Картинка про что такое натуральный алгоритм. Фото что такое натуральный алгоритм

Проблема

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

В результате программированию учишься по наитию. Лишь немного в этом труде помогают сборники алгоритмов, прикладных техник и шаблонов проектирования. Общая совокупность предлагаемых ими рецептов выстраивается длинным списком, и его длина грозит каждому из прочитанных приемов быть позабытым (как была забыта 53-яя личная группа в «телеге» до введения разбиения по каталогам). Но даже тот прием, который остался в памяти, чаще всего просто является описанием прикладной задачи, в которой было успешно его использование.

Почему конкретный прием был успешен в задаче-образце? Будет ли он успешен в твоём проекте? Какие признаки проекта дают понять, что использование приёма уместно?

В личном опыте существования в профессии не раз отмечено, что каждый Junior борется с одинаковыми ветряными мельницами и постигает методы создания программ основываясь только на своих ошибках. Но ведь такие ошибки совершили уже очень многие. Почему до сих пор не создана система правил программирования, которая поможет обойти новоиспеченному кораблю-программисту подводные прибрежные камни? Ну, например, объяснение вреда использования метода «Copy-Paste» для развития кода. Если такие правила получится объяснить малым набором причин, их сформировавшим, то это объяснение обеспечит их запоминание и последующее использование в практике, тем самым поможет уклониться от бесчисленных грабель, разложенных тут и там.

Для компактного и полезного набора объяснений нужно:

Если обобщить, то нужны алгоритмы для написания и развития алгоритмов.

Задуманная серия статей не претендует на полное решение указанной проблемы. Предпринимается небесспорная попытка сделать первый шаг на пути к этому решению. Этот шаг состоит в выделении структуры и свойств главного кирпичика программиста — Алгоритма.

Задача

Сформулируем основную задачу, которую хочется решить. Для этого сначала запишем операции над алгоритмами, которые программист выполняет в ходе написания своего проекта:

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

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

Сразу возникает масса вопросов к этому определению:

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

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

Определение алгоритма

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

что такое натуральный алгоритм. Смотреть фото что такое натуральный алгоритм. Смотреть картинку что такое натуральный алгоритм. Картинка про что такое натуральный алгоритм. Фото что такое натуральный алгоритм

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

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

Если «действие = алгоритм», то определение можно попробовать переписать рекурсивно «алгоритм — это приводящая к решению задачи последовательность использования существующих алгоритмов». Рекурсивные определение не самое простое, что можно записать в словаре обычного человека. Но для программиста и математика эта форма знакома. Мы умеем с ней работать, и это даёт нам преимущество в рассмотрении разных задач, разбиваемых на подобные себе подзадачи. Так давайте воспользуемся этим преимуществом.

Чтобы разрешить рекурсию нам необходимо найти:

Действие

Для начала рассмотрим «действие» и попробуем найти причину, обеспечивающую возможность использования существующего «действия» для создания нового алгоритма.

Этой причиной является возможность повторного использования «действия» с получением тождественного результата. Только тогда разработанный с использованием этого «действия» алгоритм решения некоторой задачи будет одинаково решать эту задачу снова и снова. Мы нащупали важные законы нашего мира, в котором:

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

что такое натуральный алгоритм. Смотреть фото что такое натуральный алгоритм. Смотреть картинку что такое натуральный алгоритм. Картинка про что такое натуральный алгоритм. Фото что такое натуральный алгоритмЗакон гравитации, описывающий повторяющееся явление падения яблока, тоже может стать действием. Ведь любое яблоко будет падать на землю? Значит этот процесс можно использовать в качестве «действия»! Например решая задачу прогнать Ньютона от яблони, на которую Вы случайно забрались ранее.

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

В рамках примера процесса «Земля-Яблоко» можно отметить у «действия» следующие признаки:

Рассмотрим с этими признаками разные области и процессы, выделяя в них примеры «действий» и контролируя особенности указанных признаков в описании структуры «действия».

Физические процессы

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

что такое натуральный алгоритм. Смотреть фото что такое натуральный алгоритм. Смотреть картинку что такое натуральный алгоритм. Картинка про что такое натуральный алгоритм. Фото что такое натуральный алгоритм

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

Химические процессы

Перейдем к следующей большой области — химическим процессам. Химические реакции (например, что такое натуральный алгоритм. Смотреть фото что такое натуральный алгоритм. Смотреть картинку что такое натуральный алгоритм. Картинка про что такое натуральный алгоритм. Фото что такое натуральный алгоритм) по признаку своей повторимости так же являются «действиями». Объектами в них являются атомы и молекулы. Для описания происходящих изменений необходимо немного преобразовать «физические» изменения. Так изменения параметров движения в совокупности дают нам изменение температуры в ходе химической реакции. А среди изменений расстояний между молекулами мы, игнорируя броуновское движение, можем выделить фиксацию расстояния в виде повторимого формирования и разрушения связей между частями взаимодействующих молекул. Локальность для химической реакции тоже существует — это отсутствие реакции при нахождении гидроксида натрия и соляной кислоты в разных пробирках и наличие реакции при соприкосновении веществ. Конечно, в «химической» области «действий» есть особенности не сводящиеся к молекулам, например, фотохимические реакции, где к объектам необходимо добавить фотоны. Самые простые процессы выбраны для рассмотрения намеренно.

что такое натуральный алгоритм. Смотреть фото что такое натуральный алгоритм. Смотреть картинку что такое натуральный алгоритм. Картинка про что такое натуральный алгоритм. Фото что такое натуральный алгоритм

Математические процессы

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

В ситуации с математиком можно выделить много объектов, но с точки зрения «действия» («сложение математиком двух целых чисел»), объекта всего три: это объект «математик», объект «первое число» и объект «второе число». В отличие от всех рассмотренных ранее объектов числа являются обозначениями, то есть виртуальными объектами. И их преобразование в алгоритме более сложно устроено нежели изменение расстояния и параметров движения объектов, как это было для «химических» действий. Подробности такого преобразования — это тема отдельной увлекательной статьи. А в рамках текущей рассмотрим древнего математика, который складывает числа, используя кучки камешков (рим. ‘calculi’), и более «современного» математика, использующего абак. Абстракции таких способов вычисления суммы не так далеко отошли от физических и химических процессов, поэтому структура процессов их «действий» полностью описывается изменениями расстояний и связей.

что такое натуральный алгоритм. Смотреть фото что такое натуральный алгоритм. Смотреть картинку что такое натуральный алгоритм. Картинка про что такое натуральный алгоритм. Фото что такое натуральный алгоритм

Интересно, что на примере древнего математика становится понятен смысл слова «сложить», которое отсылает нас к действию «класть» и к фразе «положить вместе».

Сложение и древний математик

Для математика, оперирующего камешками, сумма это «действие» со следующими характеристиками.

Сложение и математик-абакист

У математика с абаком ситуация сложнее. Кучки разделены по значению на разрядные борозды.

что такое натуральный алгоритм. Смотреть фото что такое натуральный алгоритм. Смотреть картинку что такое натуральный алгоритм. Картинка про что такое натуральный алгоритм. Фото что такое натуральный алгоритм

Можно рассмотреть самый простой абак с двумя разрядами-бороздами. Пусть он будет десятичный. Тогда один камешек на борозде десятков соответствует десяти камешкам на борозде единиц. И 10 — это максимальное количество камешков на борозде единиц. По сравнению с действием первого математика меняется представление слагаемых. И в арсенале математика уже необходимы нескольких готовых «действий».

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

Сложение и машина Тьюринга

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

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

Подробное описание исходных и результирующих состояний объектов, а так же «действий» производящих эти изменения для сложения, исполняемого машиной Тьюринга, оставим за рамками этой статьи. Но упомянем, что перейдя к машине мы снижаем требования к исполнителю «действия», что является главным способом для создания формальных методов работы с алгоритмом. Можно поставить себе целью упрощение каждой составляющей алгоритма до состояния, когда её выполнение можно будет поручить компьютеру. Тогда в определении алгоритма не останется тёмных мест, и многочисленные вопросы, перечисленные в начале, найдут свои ответы. Пока формализован только исполнитель. Скажем спасибо за это Тьюрингу и вспомним про «действие», формализация которого уже на пороге.

Выводы

Соберём всё, что мы отметили рассматривая разные примеры «действия»:

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

Следующая статья серии (Часть 2) будет посвящена рассмотрению способов, с использованием которых «действия» могут быть сгруппированы в алгоритм. Этих способов достаточно много и есть предпосылки, что их описание не получится уместить в одну статью. Напишем — увидим.

Спасибо Вам за внимание.

Отзывы

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

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *