OberonCore
https://forum.oberoncore.ru/

Нормальные марковские алгоритмы
https://forum.oberoncore.ru/viewtopic.php?f=72&t=3053
Страница 2 из 2

Автор:  Валерий Лаптев [ Суббота, 11 Декабрь, 2010 01:44 ]
Заголовок сообщения:  Re: Нормальные марковские алгоритмы

Alexey Veselovsky писал(а):
Geniepro писал(а):
Современное ФП по сути имеет трёх родителей -- лямбда-исчисление, комбинаторная логика и марковские алгорифмы...

Ну да. Только если про лямбду кричат на всех углах, комбинаторную логику вспоминают иногда, а вот марковские алгорифмы не упоминают вообще. Соответственно сопоставление с образцом в ФЯ как бы появляется ВНЕЗАПНО и из неоткуда.
Дык обычная история - российский же математик... :)

Автор:  Alexey Veselovsky [ Суббота, 11 Декабрь, 2010 13:27 ]
Заголовок сообщения:  Re: Нормальные марковские алгоритмы

Geniepro писал(а):
А Рефал не зря всё-таки расшифровывается как "РЕкурсивных Функций АЛгоритмический язык" -- он вполне себе ФЯ -- в нём есть функции высшего порядка.

По крайней мере в базисном рефале я функций высшего порядка не наблюдаю.

Насколько я понимаю, функции высшего порядка это расширизм: http://iu9.bmstu.ru/science/refal.pdf

Автор:  Geniepro [ Среда, 15 Декабрь, 2010 15:37 ]
Заголовок сообщения:  Re: Нормальные марковские алгоритмы

Вздумалось порешать задачки на тему 15. АЛГОРИФМЫ МАРКОВА, посмотрел на решения -- это какую же больную фантазию надо иметь, что бы додуматься до таких извращений?

Автор:  Alexey Veselovsky [ Среда, 15 Декабрь, 2010 15:49 ]
Заголовок сообщения:  Re: Нормальные марковские алгоритмы

Никакую. Нужен просто небольшой опыт. Если порешать, то становится видны базовые приемы для решения. Потом комбинируем. Всё как обычно в общем то :-) Просто несколько не привычно (ибо большенство привыкли к тьюринг-мутунтам, впрочем, я думаю, что на машине тьюринга непосредственно писать алгоритмы (хотя бы те же) тоже весьма весело :-) ).

Автор:  Info21 [ Среда, 15 Декабрь, 2010 16:24 ]
Заголовок сообщения:  Re: Нормальные марковские алгоритмы

Alexey Veselovsky писал(а):
Нужен просто небольшой опыт. Если порешать, то становится видны базовые приемы для решения. Потом комбинируем. Всё как обычно в общем то :-) Просто несколько не привычно
Именно.
Именно поэтому я всегда рекомендую любому программеру с претензиями на серьезность с этим делом ознакомиться на уровне "порешать".

Alexey Veselovsky писал(а):
на машине тьюринга непосредственно писать алгоритмы (хотя бы те же) тоже весьма весело :-) ).
Мальцев, которого я вспоминал, вообще вводит МТ и АМ так, что между ними разница какая-то косметическая. Рекомендую посмотреть при случае.

Автор:  Geniepro [ Среда, 15 Декабрь, 2010 18:46 ]
Заголовок сообщения:  Re: Нормальные марковские алгоритмы

Alexey Veselovsky писал(а):
Никакую. Нужен просто небольшой опыт.
Не, оно, конечно, понятно, что как гимнастика для ума -- самое то наряду с брейнфаком (который и есть воплощение Машины Тьюринга в языке программирования).
Но интересно всё же, может ли это практически применяться в обычном, промышленном, коде?

Автор:  Info21 [ Среда, 15 Декабрь, 2010 21:58 ]
Заголовок сообщения:  Re: Нормальные марковские алгоритмы

Geniepro писал(а):
Но интересно всё же, может ли это практически применяться в обычном, промышленном, коде?
Если заложить это себе в голову и попримерять к окружающему миру, то выяснится, что марковские мотивы встречаются отнюдь не редко. Другое дело, что комп -- штука процедурная, поэтому конструкты Ф- и М-типа более естественны на некотором удалении от "железа".

Автор:  Alexey Veselovsky [ Пятница, 17 Декабрь, 2010 00:23 ]
Заголовок сообщения:  Re: Нормальные марковские алгоритмы

http://www.intuit.ru/department/expert/logicpr/1/
Очень хороший курс лекций. В т.ч. по рефалу я там нашел то, чего не нашел в документации к оному (возможно просто не увидел).

Автор:  Galkov [ Пятница, 17 Декабрь, 2010 10:40 ]
Заголовок сообщения:  Re: Нормальные марковские алгоритмы

Alexey Veselovsky писал(а):
я там нашел то, чего не нашел в документации к оному
Хм..
А я не нашел. Может быть тоже плохо искал (но в лекциях)
Пальцем не покажите ???

Автор:  Alexey Veselovsky [ Пятница, 17 Декабрь, 2010 10:54 ]
Заголовок сообщения:  Re: Нормальные марковские алгоритмы

Вот это:
Цитата:
В том случае, когда нужно ограничить множество значений, которое может принимать переменная (левой части рефал-предложения), в описание переменной вводится спецификация, которая должна находиться между типом переменной и индексом без пробелов. Спецификация может быть определена непосредственно в круглых скобках либо именем спецификатора (для предопределенных имен спецификаторов). Например, переменная S('+-')z может принимать значения только знаков '+' или '-'.

Автор:  Сергей Губанов [ Пятница, 17 Декабрь, 2010 12:37 ]
Заголовок сообщения:  Re: Нормальные марковские алгоритмы

Alexey Veselovsky писал(а):
Кто-нибудь может посоветовать...
Info21 писал(а):
Снобол-4, Schoonschip
Из допотопных ещё REDUCE.

Из современных - пакет Mathematica:
Сортировка букв по алфавиту:
Вложение:
sort.png
sort.png [ 16.55 КБ | Просмотров: 6875 ]

Оператор дифференцирования:
Вложение:
dif.png
dif.png [ 13.16 КБ | Просмотров: 6875 ]

Автор:  Сергей Губанов [ Пятница, 17 Декабрь, 2010 13:10 ]
Заголовок сообщения:  Re: Нормальные марковские алгоритмы

Сергей Губанов писал(а):
Сортировка букв по алфавиту
Физики-теоретики обычно так гамма матрицы Дирака коммутируют. Там же в правую часть ещё коммутатор можно прибавить.

Автор:  Alexey Veselovsky [ Пятница, 17 Декабрь, 2010 13:30 ]
Заголовок сообщения:  Re: Нормальные марковские алгоритмы

Ну да. В рефале примерно также. Только компактней.

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

Т.е. как бы считается (создателями), что рефал самое то для символьных вычислений.

Автор:  Info21 [ Пятница, 17 Декабрь, 2010 13:58 ]
Заголовок сообщения:  Re: Нормальные марковские алгоритмы

Alexey Veselovsky писал(а):
Т.е. как бы считается (создателями), что рефал самое то для символьных вычислений.
Когда-то под него и планировали процессор в Минске именно с прицелом на компьютерную алгебру. Помню, когда-то был доклад какой-то на физфаке, кажется, МГУ, году в 198*. Тогда в Дубне и НИИЯФ МГУ пытались "развивать символьную алгебру". Некто академик Ширков, дуб-дубом, решил на этом щеки дуть, вот он эту тему и окормлял по понятиям, с семинарами и т.п.
На одном из них про рефал мужик из Минска и рассказывал.

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

Но пока Оберон в виде Блэкбокса не подоспел, сделать что-то по уму было невозможно.

Автор:  Alexey Veselovsky [ Пятница, 17 Декабрь, 2010 14:13 ]
Заголовок сообщения:  Re: Нормальные марковские алгоритмы

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

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

Автор:  Galkov [ Пятница, 17 Декабрь, 2010 15:24 ]
Заголовок сообщения:  Re: Нормальные марковские алгоритмы

Alexey Veselovsky писал(а):
Т.е. как бы считается (создателями), что рефал самое то для символьных вычислений
Созидатели считали совсем по другому :D
Турчин создавал Рефал как метаязык для формального изложения семантики любого другого языка. В виде интерпретатора. А дальше - суперкомпиляция. (и что занимательно - сделали ведь)
Типа - и будет всем счастие.

Алексей, там не были ??? Вроде это они наследники главного созидателя.
Как минимум, про историю и цели созидателя - доходчиво рассказывают :)

Автор:  Alexey Veselovsky [ Пятница, 17 Декабрь, 2010 15:42 ]
Заголовок сообщения:  Re: Нормальные марковские алгоритмы

Galkov писал(а):
Alexey Veselovsky писал(а):
Т.е. как бы считается (создателями), что рефал самое то для символьных вычислений
Созидатели считали совсем по другому :D
Турчин создавал Рефал как метаязык для формального изложения семантики любого другого языка. В виде интерпретатора. А дальше - суперкомпиляция. (и что занимательно - сделали ведь)
Типа - и будет всем счастие.

Алексей, там не были ??? Вроде это они наследники главного созидателя.
Как минимум, про историю и цели созидателя - доходчиво рассказывают :)

Нет, не был спасибо за ссылку.

Цитатка про плавающую запятую:
Цитата:
Плавающая запятая - одно из мощнейших средств дезориентирования
математика-вычислителя. Она годится лишь для инженерных расчётов, а в
более серьёзных задачах (а главным назначением Рефала является всё же
обработка символьных данных, а не написание инженерных калькуляторов) её
применение становится просто опасным: результат сложного расчёта может
не иметь ничего общего с действительностью! Поэтому такие расчёты лучше
(на мой личный взгляд, разумеется) проводить непосредственно в
рациональных числах, понимая под таковыми, например, выражения Рефала-5
вида ((e.Num) e.Den), где e.Num - числитель, а e.Den - знаменатель.
Благо, средства для работы с натуральными числами произвольной
разрядности в Рефалах имеются.

Автор:  Info21 [ Пятница, 17 Декабрь, 2010 19:03 ]
Заголовок сообщения:  Re: Нормальные марковские алгоритмы

Alexey Veselovsky писал(а):
Безусловно имея в голове базу из циклов и ифов довольно утомительно писать на языках имеющих иную базу. Просто потому, что постоянно в голове транслируешь код из одних понятий в другие.
Моим первым серьезным языком был SCHOONSCHIP. Потом одна простенькая програмка на фортране. А потом снова символика в изрядном количестве.
И почему-то "процедуры" в моем списке нужностей Вы опустили. О чем бы это говорило.

Так что Вы пульнули в воздух. Даже не в воздух, а в безвоздушное пространство.

Страница 2 из 2 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/