Физик по образованию, выпускник МФТИ. Работал в области компутинга. В настоящее время занимаюсь теорией денег, автор монографий "Новые деньги для России и мира" (совместно с В.Жириновским), М. Галерия, 1998, "Эволюция денег", М. Гроссмедиа, 2005. Преподаю в МФТИ и РГСУ.
Вычислительный стандарт IEEE 754 — угрозf самому существования человечества. Этот стандарт уже явился источником крупнейших техногенных катастроф и если от него не отказаться, то будущее нашей цивилизации может оказаться в большом тумане.
При этом, если не обращать внимания на технические ляпы, то факты более-менее корректны. Но какие выводы из этого делаются! — космического масштаба и космической же глупости. Ладно бы еще гундосил чисто сам с собою. Дак ведь он еще и преподает эту ахинею! — вот это уже действительно, "пропал дом".
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.
давно уже подобные статьи не читаю, в интернете их полно, а времени и так не хватает. Что Вас удивляет? Обычный коммерсант от науки. Сейчас в научной среде очень много таких, если не большинство. В развитых странах государство поддерживает ученых, у нас же они предоставлены самим себе, вот и крутятся. Хорошо хоть то, что в последнее время есть положительные сдвиги в этом направлении — хотя я могу судить только приминительно к своей области, которая относится больше к фундаментальным исследованиям
Здравствуйте, sadomovalex, Вы писали:
S>давно уже подобные статьи не читаю, в интернете их полно, а времени и так не хватает. Что Вас удивляет? Обычный коммерсант от науки.
Не удивляет, а возмущает то, что подобных "деятелей" допускают до преподавания в уважаемом в общем-то университете.
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.
Здравствуйте, McSeem2, Вы писали:
MS>При этом, если не обращать внимания на технические ляпы, то факты более-менее корректны. Но какие выводы из этого делаются! — космического масштаба и космической же глупости.
Про технические ляпы и факты — понятно, про глупость выводов — объясни. Я как-то до сих пор не сталкивался с этой темой.
Здравствуйте, McSeem2, Вы писали:
MS>Не удивляет, а возмущает то, что подобных "деятелей" допускают до преподавания в уважаемом в общем-то университете.
Не исключено что просто выбирать не из кого. И потом — человек может нести совершеннейшую ахинею в своих "научных" трудах, но быть при этом очень приличным преподавателем скажем теоретической механики или сопромата или дифференциальной геометрии (см. академик Фоменко)... в общем любой такой науки где достаточно знать предмет, а шаги влево/вправо делать некуда. Это первый вариант.
Есть ещё и второй, менее приятный. В любом ВУЗе на любой специальности по стандарту образования спускают некоторое количество дисциплин, которые априори никому не нужны. "Методология научного творчества" например. Или "История специальности". Но отчитать N часов по ним надо. И желательно с ненулевой явкой студентов на эти N часов. Поскольку нормальный человек за них либо не возьмётся, либо возьмётся, но займёт другим (нам например в бытность мою студентом вместо одного такого "предмета" преподаватель по сговору с нами прочитал отличный углубленный курс численных методов, при этом в зачётках стояла та самая лажа, но это — определённый риск, ему могло и влететь), их часто делегируют какому-нибудь идиоту, прикормленному при кафедре на полставки специально ради этих двух-трёх предметов.
Впрочем я учусь/работаю в провинции, может быть в столице с этим обстоит как-то иначе.
Здравствуйте, SergH, Вы писали:
SH>Про технические ляпы и факты — понятно, про глупость выводов — объясни. Я как-то до сих пор не сталкивался с этой темой.
На вскидку.
Часто используемое терминологическое описание данного типа информации как «числа с плавающей точкой (запятой)» неверно и бессмысленно математически.
Бред. Смысл чисел с плавающей точкой строго математически определен и описан.
Математическая наука вообще не знает такого вида чисел. Нет в математике ни арифметики, ни алгебры, ни функционального анализа «чисел с плавающей точкой».
Тоже бред. Формат чисел является почти точным отражением величин, записанных в экспоненциальной форме (6.626E–34 — постоянная Планка) и используются они испокон веков.
Пусть даны два вещественных вектора x и y: . . .
Если разобраться с форматированием, то по форме все верно. Но это просто автор в свои почтенные годы с удивлением обнаружил, что сравнивать на равенство два числа, вычисленные разными способами нехорошо. А еще он обнаружил то, что числа, оказывается имеют ограничение на диапазон. А еще то, что числа с плавающей точкой (в отличие от чисел с фиксированной точкой) имеют относительную, а не абсолютную погрешность. Об этом говорят чуть ли не на первом уроке информатики в школе. Но автор делает потрясающий вывод:
Таким образом, цивилизационное развитие идет в направлении увеличения вероятности неправильных, «аматематических» результатов компьютерных расчетов и уменьшении вероятности их идентификации и «обезвреживания». А воздействие на управляемую компьютером систему «аматематики» может иметь самый различный характер.
Ничего подобного из примеров, приведенных автором (про сложение векторов и тождество) не следует.
Ну и т.д. Аналогичные рассуждения можно применить и к целочисленной арифметике с ограниченной разрядностью. Но из этого не следует, что компьютеры вообще являются всемирным заговором.
На наш взгляд, будущее компьютеринга лежит сзади.
Шикарная фраза.
Надо вновь на новом уровне осмыслить и оценить концепцию приближенных чисел времен ручной обработки, отвергнутую компьютерной наукой в самом начале ее становления. Уж по крайней мере, приближенные вычисления никогда не вступали в конфликт с математикой
Абсолютно непонятно, что же конкретно предлагает автор. Какую-такую "концепцию приближенных чисел"? IEEE-754 — это и есть концепция приближенных чисел (причем времен ручной обработки!), против которой он ведет свою яростную проповедь.
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.
Здравствуйте, McSeem2, Вы писали:
MS>Здравствуйте, SergH, Вы писали:
MS>
MS>На наш взгляд, будущее компьютеринга лежит сзади.
MS>Шикарная фраза.
MS>
MS>Надо вновь на новом уровне осмыслить и оценить концепцию приближенных чисел времен ручной обработки, отвергнутую компьютерной наукой в самом начале ее становления. Уж по крайней мере, приближенные вычисления никогда не вступали в конфликт с математикой
MS>Абсолютно непонятно, что же конкретно предлагает автор. Какую-такую "концепцию приближенных чисел"? IEEE-754 — это и есть концепция приближенных чисел (причем времен ручной обработки!), против которой он ведет свою яростную проповедь.
Я думаю, что имеется ввиду вычисление в виде "число +/- погрешность".
Такая схема легко реализуется на основе обычных чисел с плавающей точкой.
(и используется в некоторых библиотеках)
Здравствуйте, McSeem2, Вы писали:
MS>Ничего подобного из примеров, приведенных автором (про сложение векторов и тождество) не следует. MS>Ну и т.д. Аналогичные рассуждения можно применить и к целочисленной арифметике с ограниченной разрядностью.
Не, не совсем. Когда у нас фиксированная разрядность, у нас и точность фиксированная и она не "плывёт" в процессе вычислений.
MS>
MS>На наш взгляд, будущее компьютеринга лежит сзади.
MS>Шикарная фраза.
MS>Абсолютно непонятно, что же конкретно предлагает автор. Какую-такую "концепцию приближенных чисел"? IEEE-754 — это и есть концепция приближенных чисел (причем времен ручной обработки!), против которой он ведет свою яростную проповедь.
Он просто пишет невнятно и неконкретно. Если комментарии почитать, более понятно становится.
Он имеет ввиду, что на практике не бывает "просто чисел".
"Идеальные" числа — в математическом понимании на компьютере представимы плохо. Но в реальных задачах и не встречаются никогда.
Целые числа — количество коробок/пользователй/и т.п. представимы отлично. Поэтому всякая бухгалтерия и учёт на компьютерах работают неплохо.
Большая проблема с результатами измерений. Результат измерения всегда имеет погрешность, причём вполне конкретную, погрешность является неотьемлимой частью числа (кстати, сюда ещё вероятность можно засунуть ). Стандарт IEEE-754 на прямую не подходит для работы c такими числами. Во-первых, информация о погрешности просто теряется, во-вторых, непонятно, какова погрешность результата.
Тогда вопросы
— для чего же он подходит?
— где стандарт для работы с такими числами? Именно эти числа встречаются в инженерных и прочих расчётах.
Другое дело, что скорее всего, все приличные пакеты как-то с этим работают. Во всяком случае, я на это надеюсь.
Здравствуйте, SergH, Вы писали:
SH>Он просто пишет невнятно и неконкретно. Если комментарии почитать, более понятно становится. SH>Он имеет ввиду, что на практике не бывает "просто чисел".
То есть, я понимаю, что он пишет много утверждений мм.. сомнительной верности Но это-то ладно, у каждого свои недостатки, это ещё не повод отбрасывать всё, что он говорит. А по сути его высказываний я ошибок не вижу. Если они есть, объясните, буду очень рад.
"McSeem2" <12737@users.rsdn.ru> wrote in message news:2471281@news.rsdn.ru... > Владимир Юровицкий >
> Физик по образованию, выпускник МФТИ. Работал в области компутинга. В настоящее время занимаюсь теорией денег, автор монографий "Новые деньги для России и мира" (совместно с В.Жириновским), М. Галерия, 1998, "Эволюция денег", М. Гроссмедиа, 2005. Преподаю в МФТИ и РГСУ.
> Вычислительный стандарт IEEE 754 — угрозf самому существования человечества. Этот стандарт уже явился источником крупнейших техногенных катастроф и если от него не отказаться, то будущее нашей цивилизации может оказаться в большом тумане.
> > При этом, если не обращать внимания на технические ляпы, то факты более-менее корректны. Но какие выводы из этого делаются! — космического масштаба и космической же глупости. Ладно бы еще гундосил чисто сам с собою. Дак ведь он еще и преподает эту ахинею! — вот это уже действительно, "пропал дом".
Вообще, среди студентов на физтехе таких "оригинально мыслящих" (а иногда и откровенно больных на голову) всегда хватало. Но вот чтобы среди преподавателей — что-то не припоминается Хотя, нигде ж не написано, что он именно вычматы преподает — небось, экономику какую.
Posted via RSDN NNTP Server 2.1 beta
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Здравствуйте, McSeem2, Вы писали:
MS>Тоже бред. Формат чисел является почти точным отражением величин, записанных в экспоненциальной форме (6.626E–34 — постоянная Планка) и используются они испокон веков.
Это, конечно, у него написано максимально невнятно.. Но, насколько я понял, так:
Тут опять фишка в погрешности. Когда ты пишешь 6.626E-34 ты, помимо прочего, указываешь точность этого значения — четыре разряда. И это, в общем-то, не тоже самое, что 6.6260000E-34. Зато это точно тоже самое, что 6626E-37 — указана степень младшего знака. А мантисса числа имеет фиксированную длину, одинаковую для всех, и значащие разряды в ней все, так что опять нет погрешностей.
А про алгебру/анализ — так эти дисциплины, насколько я знаю, действительно не заморачиваются такими вопросами как представление чисел на практике. Может ими заморачивается вычислительная математика, но с ней я знаком мало.
Здравствуйте, SergH, Вы писали:
SH>То есть, я понимаю, что он пишет много утверждений мм.. сомнительной верности Но это-то ладно, у каждого свои недостатки, это ещё не повод отбрасывать всё, что он говорит. А по сути его высказываний я ошибок не вижу. Если они есть, объясните, буду очень рад.
Он ополчился на представление значений в IEEE-754, как на всемирный заговор. Вот этот его вывод и является абсурдным. А это всего-лишь инструмент, которым тоже необходимо уметь пользоваться. Топором можно и руку отрубить, но это не повод запрещать топоры во всем мире.
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.
Здравствуйте, SergH, Вы писали:
MS>>Ну и т.д. Аналогичные рассуждения можно применить и к целочисленной арифметике с ограниченной разрядностью.
SH>Не, не совсем. Когда у нас фиксированная разрядность, у нас и точность фиксированная и она не "плывёт" в процессе вычислений.
Я имею в виду, что на типовом 32-х разрядном процессоре целочисленное умножение 100000*100000 выдаст 1410065408, а не 10000000000. Тоже абсурд, но это не значит, что целочисленную арифметику надо запретить.
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.
Здравствуйте, McSeem2, Вы писали:
MS>Он ополчился на представление значений в IEEE-754, как на всемирный заговор. Вот этот его вывод и является абсурдным. А это всего-лишь инструмент, которым тоже необходимо уметь пользоваться. Топором можно и руку отрубить, но это не повод запрещать топоры во всем мире.
Угу, с соглашусь, это не заговор. Но про заговор и аццкого сатану это скорее метафора Он просто утверждает, что это плохой инструмент, не годный для работы. Лезвие у вашего топора соскакивает, расклинить надо.
Для работы с результатами измерений эти числа не подходят, а альтернативного стандарта нет. В результате, нужно разрабатывать самому или пользоваться чужими разработками — но хорошего, продуманного стандарта на это дело нету. И он предпологает (имхо, обоснованно), что 90% программистов этим заморачиваться не будут. Конечно, это значит, что они неграмотны в области вычислительной математики и сами себе здобные буратины, но мосты будут падать в реальности. И ведь так несложно было упростить всем жизнь.
Кроме того, всё ещё непонятно, для чего же подходит существующий стандарт. Т.е. если применять его в чистом виде, не заморачиваясь с дополнительной обработкой — для каких классов вычислений он годится?
Здравствуйте, McSeem2, Вы писали:
MS>Я имею в виду, что на типовом 32-х разрядном процессоре целочисленное умножение 100000*100000 выдаст 1410065408, а не 10000000000. Тоже абсурд, но это не значит, что целочисленную арифметику надо запретить.
Да, но это будет переполнение — т.е. явно оговоренная ошибочная ситуация. Во-первых, при этом процессор выставит специальный флажок, во-вторых, про переполнение знают даже ну очень наивные программисты А с плавающими точками переполнения не бывает, в результате создаётся иллюзия того, что можно делать что угодно.
Здравствуйте, SergH, Вы писали:
SH>Это, конечно, у него написано максимально невнятно.. Но, насколько я понял, так: SH>Тут опять фишка в погрешности. Когда ты пишешь 6.626E-34 ты, помимо прочего, указываешь точность этого значения — четыре разряда. И это, в общем-то, не тоже самое, что 6.6260000E-34. Зато это точно тоже самое, что 6626E-37 — указана степень младшего знака. А мантисса числа имеет фиксированную длину, одинаковую для всех, и значащие разряды в ней все, так что опять нет погрешностей.
Вот IEEE как раз работает как "6.626E-37" — мы сохраняем мантиссу в диапазоне от 0 до 1 и экспоненту.
Здравствуйте, SergH, Вы писали:
SH>Для работы с результатами измерений эти числа не подходят, а альтернативного стандарта нет.
Я вот не пойму — почему это они не подходят?! Замечательно подходят. Более того — именно плавающая точка подходит для работы с результатами измерений гораздо лучше, чем фиксированная, потому что отсутствует необходимость в постоянной нормализации — можешь одинаково успешно работать и на планковских масштабах и на космических.
SH>В результате, нужно разрабатывать самому или пользоваться чужими разработками — но хорошего, продуманного стандарта на это дело нету. И он предпологает (имхо, обоснованно), что 90% программистов этим заморачиваться не будут. Конечно, это значит, что они неграмотны в области вычислительной математики и сами себе здобные буратины, но мосты будут падать в реальности. И ведь так несложно было упростить всем жизнь.
Я понял, что они будут падать, но я категорически не понимаю, почему они должны падать. И каким именно образом можно было "упростить всем жизнь"?
SH>Кроме того, всё ещё непонятно, для чего же подходит существующий стандарт. Т.е. если применять его в чистом виде, не заморачиваясь с дополнительной обработкой — для каких классов вычислений он годится?
Почти для всех, кроме денег. Безо всякой дополнительной обработки. Есть возражения?
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.
Здравствуйте, SergH, Вы писали:
SH>Тут опять фишка в погрешности. Когда ты пишешь 6.626E-34 ты, помимо прочего, указываешь точность этого значения — четыре разряда. И это, в общем-то, не тоже самое, что 6.6260000E-34. Зато это точно тоже самое, что 6626E-37 — указана степень младшего знака. А мантисса числа имеет фиксированную длину, одинаковую для всех, и значащие разряды в ней все, так что опять нет погрешностей.
То есть предлагается всего-навсего мантисса с переменной длиной, так? Это, конечно замечательно теоретически, но я тогда вообще не смогу вычислить sqrt(2), ибо мантисса получится бесконечной длины. Значит надо накладывать ограничение на максимальную длину мантиссы. А раз ограничение, то мы снова упираемся ровно в те же проблемы. Даже рациональные числа невозможно представить без ограничений. Например число 1/10 не представимо точно в двоичной форме. Что, перейти на десятичную систему из за этого? А как тогда быть с числом 1/3? Можно теоретически представлять числа в форме типа 0.3(3) (ноль три и три в периоде), но надо иметь в виду, что это самое значение в периоде тоже может быть очень и очень длинным, практически бесконечным. А когда оно становится не практически, а по-настоящему бесконечным, мы имеем дело с иррациональнвм числом.
Не понимаю, каким образом, можно например обеспечить практическую тождественность всех (всех!) математических тождеств на всем диапазоне значений. В силу ограниченности ресурсов Вселенной это принципиально невозможно.
А если предлагается представлять значения с погрешностью, в форме "число +- лапоть", то не понимаю, чем плоха существующая спецификация для этого? И зачем изобретать какую-то другую спецификацию, если все можно сделать на программном уровне?
Я все-таки в упор не понимаю, чем же автор недоволен и что он предлагает? Получается просто борьба с ветряными мельницами, которй еще и студентов заморачивают.
Мое предположение в том, что у автора не сошелся баланс при расчетах во флоатах (совершенно обычное дело) и ему по этому поводу явилось прозрение обо все глубине грехопадения человечества.
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.
Здравствуйте, SergH, Вы писали:
SH>Да, но это будет переполнение — т.е. явно оговоренная ошибочная ситуация.
Потеря точности, переполнение порядка, исчезновение порядка — это точно такие же явно оговоренные ошибочные ситуации.
SH>Во-первых, при этом процессор выставит специальный флажок,
При умножении не выставит, потому что при целочисленном умножении на большинстве современных процессоров нет такого понятия как переполнение (надеюсь, не нужно объяснять, почему). А вот на любом языке высокого уровня — есть. Но нет никакого способа узнать — возникло переполнение или нет. Такие дела.
SH>во-вторых, про переполнение знают даже ну очень наивные программисты
Про особенности работы с плавающей точкой тоже обязаны знать "даже ну очень наивные программисты".
SH>А с плавающими точками переполнения не бывает, в результате создаётся иллюзия того, что можно делать что угодно.
Бывает.
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.