Математика для чайников №3
30 Март 2016 20:26 #361
Alexander wrote:
Когда говорят о "бурбакизме" всегда вспоминается Арнольд с его остроумной критикой аксиоматического преподавания математики в школе.
А преподавание в школе и не должно быть бурбакистическим.
Условно говоря, преподавая детям информатику в школе, совсем не нужно заставлять их писать программы на ассемблере.
Каждому - своё.
The topic has been locked.
Математика для чайников №3
30 Март 2016 20:35 #362
а щас кто-нибудь пишет на ассемблере?
The topic has been locked.
Математика для чайников №3
30 Март 2016 20:36 #363
Я бы сказал, что ассемблер вообще не для алгоритмов нужен...
Но фундаментальная слабость бурбакизма в том, что он изгоняет интуицию. Которая в конечном счете больше формалистики
Пуанкаре wrote:
Непогрешимость логистики
Что касается плодотворности, то Кутюра, по-видимому, строит наивные иллюзии. Логистика, по его мнению, дает изобретательности в ее распоряжение «леса и крылья». А на следующей, странице он говорит: «десять лет тому назад Пеано опубликовал первое издание своего «Formulaire» (2).
Как, уже десять лет, как вы имеете крылья, и вы еще не полетели!
Я питаю величайшее уважение к Пеано, который сделал превосходные работы (например, его кривая, которая заполняет целую площадь), но в конце концов он не ушел ни дальше, ни выше, ни быстрее, чем большая часть бескрылых математиков, и этот путь он мог бы ведь проделать так же хорошо на своих ногах.
Я, напротив, вижу в логистике только помеху для изобретателя; с ее помощью мы отнюдь не выигрываем в сжатости; если нужны 27 уравнений, для того чтобы установить, что 1 есть число, то сколько нужно будет уравнений, чтобы доказать настоящую теорему? Если мы различаем вместе с Уайтхедом индивид х, класс, единственный член коего есть х и который называется ix, затем — класс, единственный член которого есть класс с единственным членом x и который называется iix, то можно ли думать, что эти различия, как бы ни были они полезны, облегчат нам движение вперед?
The topic has been locked.
Математика для чайников №3
30 Март 2016 21:08 #364
ассемблер нужен для оптимизации памяти или быстродействия, в конце концов все программы переводятся (автоматизированным, хоть и не всегда оптимизированным, способом) на ассемблер.
а нащот интуиции горячо поддерживаю вас с Арнольдом - она не только бОльше формалистики, она неизмеримо бОльше, в действительности никто и никогда не думает формально. Лишь в исключительных случаях, когда пришлось доказывать правильность уже предложенного доказательства теоремы 4-ёх красок или плотнейшего заполнения 3-пространства (одинаковыми) шарами, только тогда поручили компу формальные преобразования во избежание ошибок; притом нужно было проделать большую предварительную работу для того, чтобы обеспечить релевантность всех этих умопомрачительных преобразований по отношению к вопросной теореме
Математика для чайников №3
30 Март 2016 21:39 #366
думал, что нет особой разницы между ассемблером и машинными кодами
The topic has been locked.
Математика для чайников №3
30 Март 2016 21:48 #367
Первая программа очень проста, сама строка Hello, world! составляет почти половину программы. Все что нужно сделать - это поместить в регистр AH номер функции DOS (9), адрес строки поместить в DS:DX и вызвать 21-е прерывание (символ доллара является концом строки):
Адрес Код Метка Команда
----- -------- ----- ------------------
0100 1E push DS
0101 B4 09 mov AH,09
0103 BA 10 01 mov DX,offset @H
0106 0E push CS
0107 1F pop DS
0108 CD 21 int 21H
010A 1F pop DS
010B B8 00 4C mov AX,4C00H
010E CD 21 int 21H
0110 48 @H: db "Hello, world!$"
0111 65
0112 6C
0113 6C
0114 6F
0115 2C
0116 20
0117 77
0118 6F
0119 72
011A 6C
011B 64
011C 21
011D 24
Слева - машинный код в системе команд 8086. Справа - ассемблер, могущий давать разный машинный код
The topic has been locked.
Математика для чайников №3
30 Март 2016 21:58 #368
Alexander wrote:
Я бы сказал, что ассемблер вообще не для алгоритмов нужен...
Правильно. Это и есть формальный аксиоматический метод По сути.... Alexander wrote:
Но фундаментальная слабость бурбакизма в том, что он изгоняет интуицию. Которая в конечном счете больше формалистики
Это уже перевод проблемы в практическую плоскость.
Есть неизменная основа. ARM, x86 и иже. Кои разные. Но основополагающик.
А все теории суть построение непротиворечивых теорий. Кои могут быть любыми
А иначе здравствуй синий экран
Каждому - своё.
The topic has been locked.
Математика для чайников №3
30 Март 2016 22:27 #369
Между прочим, нет операционных систем, удовлетворяющих Бурбакам. И не все их запуски заканчиваются синим экраном
The topic has been locked.
Математика для чайников №3
31 Март 2016 03:56 #370
Alexander wrote:
ассемблер вообще не для алгоритмов нужен...
Vladimirovich wrote:
Это и есть формальный аксиоматический метод
не понял ни первого, ни тем более второго
Vladimirovich wrote:
Есть неизменная основа. ARM, x86 и иже. Кои разные. Но основополагающиe. А все теории суть построение непротиворечивых теорий. Кои могут быть любыми
как определить непротиворечивость для ARM, x86 и иже?
Математика для чайников №3
31 Март 2016 06:43 #371
Хайдук wrote:
как определить непротиворечивость для ARM, x86 и иже?
Непротиворечивость определяется не для самих команд, а для теорий программ, созданных на их базе.
Очень просто определяется... Работает, или нет
Наборы же команд суть термы и схемы (ну не совсем конечно ) в метаматематическом смысле
Каждому - своё.
The topic has been locked.
Математика для чайников №3
31 Март 2016 15:36 #372
дело в том что такое будет "работает, или нет" для программы?
дойдя до своего конца, последовательность ассемблерных команд может остановиться, но может и НЕ остановиться никогда угодив в бесконечный (мото)цикл-цикл-цикл и старушки бОльше нет; по мне, в любом случае должны признать любую последовательность команд работающей и никакого "противоречия" не может быть, поскольку таковые попросту не имеют смысла по отношению к ассемблерным последовательностям/программам
Математика для чайников №3
31 Март 2016 16:30 #373
Хайдук wrote:
по мне, в любом случае должны признать любую последовательность команд работающей и никакого "противоречия" не может быть, поскольку таковые попросту не имеют смысла по отношению к ассемблерным последовательностям/программам
Это не так, думаю.
Программа "не работает", если она вызывает например exception. Это явно не то, что задумывалось.
Т.е имеем противоречие. Хайдук wrote:
дойдя до своего конца, последовательность ассемблерных команд может остановиться, но может и НЕ остановиться никогда угодив в бесконечный (мото)цикл-цикл-цикл
А это не имеет никакого значения с точки зрения непротиворечивости.
Противоречивость наступает тогда, когда очередная инструкция портит задуманную последовательность.
Это лишь условная аналогия, конечно, о чем говорилось с самого начала.
Но аналогия.
Так же, как мы укладываем новое допущение поверх теории и смотрим - обрушит оно ее или ляжет нормально
(А если ляжет, то обрушит ли теорию отрицание оного.)
Вот и тут - вызовет ли очередная инструкция фатальный сбой или нет.
Каждому - своё.
The topic has been locked.
Математика для чайников №3
31 Март 2016 17:50 #374
Vladimirovich wrote:
Программа "не работает", если она вызывает например exception. Это явно не то, что задумывалось. Т.е имеем противоречие.
думаю, что это немного другое, а не противоречие: программа делает нечто другое, что не дует нам в паруса; именно такого очень трудно избежать в компьютерных доказательствах 4-х красок и упаковки пространства шарами/ядрами.
Vladimirovich wrote:
Противоречивость наступает тогда, когда очередная инструкция портит задуманную последовательность... вызовет ли очередная инструкция фатальный сбой или нет.
не можем задумать наперёд "задуманную" последовательность или вызвать (или нет) "фатальный" збой, поскольку выполнение формальной последовательностью сугубо неформальных намерений (разработчика или заказчика) суть сугубо неформальная проблема и доказательству не подвержена.
Vladimirovich wrote:
укладываем новое допущение поверх теории и смотрим - обрушит оно ее или ляжет нормально (А если ляжет, то обрушит ли теорию отрицание оного.)
если обрушит отрицание оного, то значит укладывать поверх якобы "новое" не стоило, поскольку оное уже было где-то пониже, может и поверху
Математика для чайников №3
31 Март 2016 18:47 #375
Хайдук wrote:
думаю, что это немного другое, а не противоречие: программа делает нечто другое, что не дует нам в паруса; именно такого очень трудно избежать в компьютерных доказательствах 4-х красок и упаковки пространства шарами/ядрами.
Я и не говорю, что это точно же самое.
Это была условная аналогия.
И математика бурбаковская и ассембле начинаются с набора операций над знаками.
И определения того, что легально.
В этом сходство.
Противоречие же есть "сбой" легальной последовательности. Хайдук wrote:
не можем задумать наперёд "задуманную" последовательность или вызвать (или нет) "фатальный" збой, поскольку выполнение формальной последовательностью сугубо неформальных намерений (разработчика или заказчика) суть сугубо неформальная проблема и доказательству не подвержена.
Почему? Это очень легко вызвать фатальный сбой Хайдук wrote:
если обрушит отрицание оного, то значит укладывать поверх якобы "новое" не стоило, поскольку оное уже было где-то пониже, может и поверху
Правильно. Это и есть процесс доказательства\выполнения
Каждому - своё.
The topic has been locked.
Математика для чайников №3
31 Март 2016 19:20 #376
встрять "противоречием" может нелегальная знаковая конструкция, что компилятор сразу заметит и выдаст сообщение о тривиальной синтаксической ошибке; не вижу пока как могут подвернуться нелегальные последовательности легальных ассемблерных команд
Математика для чайников №3
31 Март 2016 20:52 #377
Хайдук wrote:
не вижу пока как могут подвернуться нелегальные последовательности легальных ассемблерных команд
О Майн Готт...
По нулевому адресу что-нибудь записать mov
Каждому - своё.
The topic has been locked.
Математика для чайников №3
31 Март 2016 21:09 #378
ну и что? комп здохнет, но не сломается же
The topic has been locked.
Математика для чайников №3
31 Март 2016 21:14 #379
Но мы же не о компе
Каждому - своё.
The topic has been locked.
Математика для чайников №3
31 Март 2016 21:41 #380
понятно, что компу нужна некая минимальная база, чтоб не сплясать мертвецом и мог отвечать воздействиям и запросам; если выключен нах, то вынуждают физически начать с какого-то места и восстановить эту базу, но (нелегальных, плохих) программ, которых не "понимает", выполнять всё равно не станет, а будет стоять/циклить как статуя с огромным ...
как определить непротиворечивость для ARM, x86 и иже?
Непротиворечивость определяется не для самих команд, а для теорий программ, созданных на их базе.
Очень просто определяется... Работает, или нет
Наборы же команд суть термы и схемы (ну не совсем конечно ) в метаматематическом смысле
Что касается утверждения: Очень просто определяется... Работает, или нет в идеальном случае, ИНАЧЕ, с учетом сказанного ГИ (Это уже перевод проблемы в практическую плоскость.)
тут, как обычно, кажущаяся обманчивая простота ДА/НЕТ присутствует, т.е. и для программ (возможно), как и для схем на микросхемах (тавтологию прошу простить), есть исчезающе малая вероятность некорректной работы (то да, то нет ...). Как сейчас помню, что на устройство ЕС 9024 из Крыма (или Одессы) пришло рацпредложение, которое устраняло неисправность, обнаруженную только после того как было выпущено около полутора десятков тысяч изделий: при перфорировании нескольких подряд повторяющихся групп из трех цифр происходил сбой (с вероятностью около 50%)... А микросхемы - то примитивные были, серия К155.
на последовательность команд, что ломает комп и превращает кирпич, можно смотреть как на останавливающуюся в смысле Тьюринга программу, в то время как операционная система есть пример обратного - бесконечно зацикленной программы ждущей следующего задания или (на телефоне, как я щас) ввода пальцами юзверей.
Как сейчас помню, что на устройство ЕС 9024 из Крыма (или Одессы) пришло рацпредложение, которое устраняло неисправность, обнаруженную только после того как было выпущено около полутора десятков тысяч изделий: при перфорировании нескольких подряд повторяющихся групп из трех цифр происходил сбой (с вероятностью около 50%)
Интел тоже иногда выпускает глючные процессоры. И на них тоже можно было работать
на последовательность команд, что ломает комп и превращает того в кирпич, можно смотреть как на останавливающуюся в смысле Тьюринга программу, в то время как операционная система есть пример обратного, бесконечно зацикленной программы ждущей следующего задания или (на телефоне, как я щас) ввода пальцами юзверей.
Ждущей следующего прерывания и знающей, что с этим делать
ну да, и если передаст управление прерыванию-окажись-программой, то нелегальный/неузнаваемый код выдаст ошибку и, как правило, комп забьёт с прибором на прерывание и вернётся в цикл всуе операционки.
ну, а как всё время новые third-party apps всплывают, чем телефоны и хороши? правда, у айфонов контроль за ними гораздо строже, чем у разгильдяев андроидов и потому айфоны меньше глючат, видимо