Опровержение мифа о "единстве математики"

Jun 07, 2011 12:59

Мнимое "единство математики" уже более ста лет является (само)обманом. Почти сразу же после скандала с противоречивостью наивной теории множеств, единая прежде математика успешно раскололась на несколько несовместных между собой: классическую (традиционную), конструктивную (к которой, хотя этого толком почти никто не осознаёт, относится и вся ( Read more... )

Leave a comment

gaz_v_pol June 7 2011, 09:36:09 UTC
А можно ли привести какой-то конкретный пример алогоритма, который (будучи написанным с точки зрения классической математики) может приветс к фактической ошибке в итоговых выводах?

Reply

matholimp June 7 2011, 09:47:33 UTC
Вообще говоря, сколько угодно. Другое дело, что ошибки, лежащие на поверхности (например, вызванные округлением чисел в компьютере), давно изучены и с ними худо-бедно научились бороться. Однако вспомните хрестоматийное: "правила техники безопасности пишутся кровью". Каждый новый тип ошибки обнаруживается лишь после того, как она "сработает". Иногда с весьма печальными последствиями.

Reply

matholimp June 7 2011, 09:57:43 UTC
Попробуйте порешать задачку с http://matholimp.livejournal.com/598424.html . Там почти на каждом шаге алгоритм, успешно проработавший для предыдущего n, при очередном n+1 нарывается на неожиданные ошибки, обнаружить которые весьма непросто.

Reply

matholimp June 7 2011, 10:07:23 UTC
Еще в середине 1980-ых я написал простенькую программу "Графический микроскоп" и методические рекомендации по её использованию для "наглядного" изучения производных. А несколько лет спустя она была встроена в "студенческие" модели микрокалькуляторов Casio.
Серии тщательно подобранных примеров, демонстрирующих возможные последствия «безобидного» (на первый взгляд) округления, а также иные ошибки, связанные с автоматизацией вычислений была включена мною в 1986г. в рукопись конкурсного учебника ОИВТ для 9-10 классов. Один из разобранных в учебнике примеров - синусоида, видимый на дисплее период которой оказывается во много раз больше истинного. Более сложный пример позволяет собственными глазами увидеть качественную картину эффектов, связанных с нарастанием ошибок округления. Сначала гладкий график становится слегка "шершавым", затем эта шершавость приобретает форму ступеней, на монотонных участках растут непредсказуемые всплески, пока весь график не превратится в гребенку "белого шума" (когда ошибки уже полностью подавят содержательную

Reply

gaz_v_pol June 7 2011, 11:35:23 UTC
Может быть, Вам пригодится. Я как-то поймал зримо видимую накапливающуюся ошибку округления в Microsoft Power Calculator, см. http://gaz-v-pol.livejournal.com/361.html

Reply

matholimp June 7 2011, 12:07:41 UTC
А теперь оцените разницу между тремя типами ошибок.
1. Ошибка бросается в глаза в силу явной нелепости (Ваш пример).
2. Ошибка не бросается в глаза, но её можно обнаружить в результате перепроверки.
3. Ошибка не может быть проконтролирована ни грубой прикидкой, ни альтернативным вычислением.
Ошибки третьего типа могут привести к авариям масштаба Чернобыля.

Reply

gaz_v_pol June 7 2011, 16:43:54 UTC
Ну, теоретически это может привести к серьёзной ошибке, но на практие (предполагаю) все такого рода большие вычисления делаются на языках программирования, в которых на уровне языка заложена возможность хранения сколь угодно больших чисел (или почти сколь угодно). Я для таких вычислений использую язык Maple (который понимает "в буковках" не только десятичную дробь, но и корень и двух, и многое другое).

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

Reply

matholimp June 8 2011, 08:13:41 UTC
На практике происходит размазывание ответственности между математиками и программистами: математики не могут разобраться, что именно делает программа, а программисты слабы в математике. В конечном счёте, никто ни за что не отвечает.
Весьма выразительным примером подобной тотальной безответственности был уже давний казус с моей родной сестрой. Она пришла получать деньги за ПОСЛЕродовой отпуск и очень удивилась, обнаружив удержание налога за БЕЗдетность. Ответ бухгалтера: раз так посчитала машина, то мы уже ничего не можем сделать.

Reply

matholimp June 7 2011, 12:18:17 UTC
Пример ошибки второго типа - фрагмент из инструкции ещё к советским микрокалькуляторам типа БЗ-34.
Там сказано, что аргумент для вычисления тангенса можно брать не более 10^10, а сам тангенс будет найден с точностью порядка 10^(-5)%.
А что на самом деле? Близкие к 10^10 - это 9-значные целые числа. Тогда как на индикации всего 8 цифр. Девятая цифра блокируется при вводе и округляется при вычислениях. Значит, близкий к 10^10 аргумент тангенса будет введён (или вычислен) с ошибкой до 5 единиц. Ну и с какой точностью можно найти тангенс, ошибка в аргументе которого перекрывает сразу три периода?
Подчёркиваю, это инструкция. Что же говорить о менее торжественных случаях.

Reply


Leave a comment

Up