Здравствуйте, Ziaw, Вы писали:
Z>Здравствуйте, jhfrek, Вы писали:
J>>злобный язык АДА — шаг влево, шаг вправо — расстрел через повешенье
Z>Да, АДА. Дело там не только в языке, но язык выбран наиболее строгий из самых простых.
HH> 1) Не формулируется математическая модель предметной области, не доказываются необходимые теоремы. Возможно не везде это требуется, но в нетривиальных случаях без этого не обойтись. HH> 2) Не учитываются свойства системы, о которых надо помнить при проектировании каждой операции (например, это могут быть такие свойства, как безопасность, одновременный доступ к ресурсам, блокировки, какие-то инварианты предметной области) HH> 3) Не осуществляется полный анализ всех возможных вариантов. Такой анализ вообще возможен только в случае, когда у нас есть нечто хотя бы напоминающее абстрактную* математическую модель, в противном случае количество вариантов будет слишком большим для такого анализа. Например, нужен анализ всех вариантов одновременных операций при доступе нескольких пользователей к иерархии ресурсов.
После того как я прочел книгу академика Алексея Николаевича Крылова “Мои воспоминания” жаркие споры на профессиональных формах о том, что программисты недостаточно используют математику, что когда космические корабли бороздят программы будут записываться как доказательства теорем и т.д., я невольно вспоминаю большую главу из этой книги под названием “Служба в Военно-морской академии и в Академии наук” (и ее раздел “Значение математики для кораблестроения”). Процитирую оттуда один фрагмент для демонстрации:
Знаменитый английский натуралист лет 70 тому назад сказал: «Математика подобно жернову перемалывает лишь то, что под него засыплют». Вы видели, что в строгой эвклидовой математике эта засыпка состоит из таких аксиом и постулатов, в справедливости которых инженер усомниться не может, а так как лишь эти аксиомы и постулаты «перемалываются» без добавления новых (а если что добавляется, то должно быть точно и ясно указано), то инженер и придает такую веру математическому доказательству. Но здесь необходимо постоянно иметь в виду следующее обстоятельство: когда конкретный вопрос приводится к вопросу математическому, то всегда приходится делать ряд допущений, ибо математика вместе с механикой оперируют над объектами идеальными, лишь более или менее близкими к объектам реальным, к которым инженер будет прилагать полученные математические выводы. Ясно, что сколько бы ни было точно математическое решение, оно не может быть точнее тех приближенных предпосылок, на коих оно основано. Об этом часто забывают, делают вначале какое-нибудь грубое приближенное предположение или допущение, часто даже не оговорив таковое, а затем придают полученной формуле гораздо большее доверие, нежели она заслуживает, и это потому, что ее вывод сложный.
Напомню, что это сказал не программист, а человек, занимавшийся кораблестроением – отраслью много более наукоемкой, чем программирование. И стоимость ошибки в которой много выше, чем в среднем по софтостроению.
Здравствуйте, Mamut, Вы писали:
HH>> 1) Не формулируется математическая модель предметной области, не доказываются необходимые теоремы. Возможно не везде это требуется, но в нетривиальных случаях без этого не обойтись. HH>> 2) Не учитываются свойства системы, о которых надо помнить при проектировании каждой операции (например, это могут быть такие свойства, как безопасность, одновременный доступ к ресурсам, блокировки, какие-то инварианты предметной области) HH>> 3) Не осуществляется полный анализ всех возможных вариантов. Такой анализ вообще возможен только в случае, когда у нас есть нечто хотя бы напоминающее абстрактную* математическую модель, в противном случае количество вариантов будет слишком большим для такого анализа. Например, нужен анализ всех вариантов одновременных операций при доступе нескольких пользователей к иерархии ресурсов.
...
Хозяева Hyatt Regency – нового отеля в Канзас Сити, мечтали, чтобы всё у них было со всякими сопелками и свистелками. Архитектурная фирма, ответственная за дизайн здания, выступила с предложением сделать несколько галерей, которые крепились бы к потолку. Задумка была очень изящной. Вот только её воплощение привело к гибели более ста человек.
Недостаток проекта был прост до смешного:
Один длинный стержень был заменен на два коротких.
...
Здравствуйте, Mamut, Вы писали:
HH>> 1) Не формулируется математическая модель предметной области, не доказываются необходимые теоремы. Возможно не везде это требуется, но в нетривиальных случаях без этого не обойтись. HH>> 2) Не учитываются свойства системы, о которых надо помнить при проектировании каждой операции (например, это могут быть такие свойства, как безопасность, одновременный доступ к ресурсам, блокировки, какие-то инварианты предметной области) HH>> 3) Не осуществляется полный анализ всех возможных вариантов. Такой анализ вообще возможен только в случае, когда у нас есть нечто хотя бы напоминающее абстрактную* математическую модель, в противном случае количество вариантов будет слишком большим для такого анализа. Например, нужен анализ всех вариантов одновременных операций при доступе нескольких пользователей к иерархии ресурсов.
M>Hнайдено тут: http://eao197.blogspot.com/2012/02/progflame_19.html
M>
M>После того как я прочел книгу академика Алексея Николаевича Крылова “Мои воспоминания” жаркие споры на профессиональных формах о том, что программисты недостаточно используют математику, что когда космические корабли бороздят программы будут записываться как доказательства теорем и т.д., я невольно вспоминаю большую главу из этой книги под названием “Служба в Военно-морской академии и в Академии наук” (и ее раздел “Значение математики для кораблестроения”). Процитирую оттуда один фрагмент для демонстрации:
M>
Знаменитый английский натуралист лет 70 тому назад сказал: «Математика подобно жернову перемалывает лишь то, что под него засыплют». Вы видели, что в строгой эвклидовой математике эта засыпка состоит из таких аксиом и постулатов, в справедливости которых инженер усомниться не может, а так как лишь эти аксиомы и постулаты «перемалываются» без добавления новых (а если что добавляется, то должно быть точно и ясно указано), то инженер и придает такую веру математическому доказательству. Но здесь необходимо постоянно иметь в виду следующее обстоятельство: когда конкретный вопрос приводится к вопросу математическому, то всегда приходится делать ряд допущений, ибо математика вместе с механикой оперируют над объектами идеальными, лишь более или менее близкими к объектам реальным, к которым инженер будет прилагать полученные математические выводы. Ясно, что сколько бы ни было точно математическое решение, оно не может быть точнее тех приближенных предпосылок, на коих оно основано. Об этом часто забывают, делают вначале какое-нибудь грубое приближенное предположение или допущение, часто даже не оговорив таковое, а затем придают полученной формуле гораздо большее доверие, нежели она заслуживает, и это потому, что ее вывод сложный.
M>
M>Напомню, что это сказал не программист, а человек, занимавшийся кораблестроением – отраслью много более наукоемкой, чем программирование. И стоимость ошибки в которой много выше, чем в среднем по софтостроению.
Супер! В точку!
Математика фикция — что посеешь, то и пожнешь! Что закладываем, то и получаем на выходе.
Здраствуйте, Капитан Очевидность.
В математическую модель что засовываешь, то и получаешь. Естественно.
Так вот, если в том, что засовываешь, есть противоречия, то математическая модель это покажет.
Формулы начнут не сходиться.
И вот именно так можно отловить НЕКОТОРЫЕ ошибки.
HH>В математическую модель что засовываешь, то и получаешь. Естественно. HH>Так вот, если в том, что засовываешь, есть противоречия, то математическая модель это покажет. HH>Формулы начнут не сходиться. HH>И вот именно так можно отловить НЕКОТОРЫЕ ошибки.
когда конкретный вопрос приводится к вопросу математическому, то всегда приходится делать ряд допущений, ибо математика вместе с механикой оперируют над объектами идеальными, лишь более или менее близкими к объектам реальным, к которым инженер будет прилагать полученные математические выводы.
Какую математическую модель, и какие формулы ни используй, они будут только приближениями реальности.
Здравствуйте, Mamut, Вы писали:
M>Какую математическую модель, и какие формулы ни используй, они будут только приближениями реальности.
Это Капитан Очевидность дубль два.
Только не понятно, с чем Вы спорите, учитывая что в предыдущем моем посте выделено большими буквами, что математическая модель может помочь найти НЕКОТОРЫЕ ошибки.
Кстати, сама формулировка "приближение к реальности" довольно забавна. Это как нечто, что не есть реальность, но находится от реальности на некотором расстоянии. В чем измеряется это расстояние? Впрочем, это уже оффтоп.
Здравствуйте, Klapaucius, Вы писали:
S>>Вывод такой, что на практике автоматы уже стали более безупречными, чем постановка задачи.
K>И что дальше? Выявляются проблемы со спецификацией, которые обходятся дорого — и что с этим делать? Решать? Или не надо?
Ну их и решают, обычно в каждой области своими какими-то способами, но формализация реального мира имеет мало схожего с математическим доказательством теорем.
M>>Какую математическую модель, и какие формулы ни используй, они будут только приближениями реальности.
HH>Это Капитан Очевидность дубль два. HH>Только не понятно, с чем Вы спорите, учитывая что в предыдущем моем посте выделено большими буквами, что математическая модель может помочь найти НЕКОТОРЫЕ ошибки.
Некоторые — это сколько? Одну? Две? 1% от всех ошибок? 2%?
При этом в изначальном топик делалось следующее заявление:
А что если предположить, что баг не должно быть вообще? Почему человек не может думать без ошибок? В чем причина ошибок?
Мне кажется, основная причина в том...
И дальше — список, завязанный на математику.
И вот ВНЕЗАПНО выясняется, что математика не поможет избавиться от ошибок, так как она поволит выявить лишь некоторые из ошибок
IT>>>Наши определения не могу быть тождественны, как не могут быть тождественны целое и его часть. Р>>Как математик, я с тобой не согласен.
IT>Как человек, привыкший пользоваться здравым смыслом, я не могу понять, как по твоей логике мы с тобой можем быть тождественны, находя в тысячах километрах друг от друга
Здравствуйте, Mamut, Вы писали:
M>И вот ВНЕЗАПНО выясняется, что математика не поможет избавиться от ошибок, так как она поволит выявить лишь некоторые из ошибок
Внезапно выясняется, что я вообще-то писал о другом, и если почитать мои пояснения в ветке, то это станет понятно.
А Вы спорите с чем-то, что сами же и придумали.
M>>И вот ВНЕЗАПНО выясняется, что математика не поможет избавиться от ошибок, так как она поволит выявить лишь некоторые из ошибок
HH>Внезапно выясняется, что я вообще-то писал о другом, и если почитать мои пояснения в ветке, то это станет понятно. HH>А Вы спорите с чем-то, что сами же и придумали.
То есть для того, чтобы телепатировать, что у тебя там понаписано, мне надо читать все стопятьсот веток? Извини, не буду.
То есть проблема в том, что люди пытаются спорить, не успев для начала понять, о чем идет речь.
Надо сказать, что мой первый пост был достаточно расплывчатым, потому что я не дал возможности идее отстояться в голове пару лет, чтобы она лучше сформировалась.
В результате каждый увидел в этом посте то, что ему было ближе.
Здравствуйте, Mamut, Вы писали:
M>То есть для того, чтобы телепатировать, что у тебя там понаписано, мне надо читать все стопятьсот веток? Извини, не буду.
Идей несколько.
Первая идея.
Почему все так уверены, что человеку свойственно ошибаться? Потому что это сказал Сенека?
А если он ошибся? Не надо тут меня ловить на противоречии.
Возможность ошибиться и необходимость ошибки это разные вещи.
Что является причиной ошибок в мышлении человека?
Прежде всего само мышление.
Представьте, что Вы создаете программу искуственного интеллекта. И эта программа делает ошибку.
Что Вы начинаете делать? Вы начинаете отлаживать программу, пытаясь понять, где был сделан неверный вывод.
А почему в случае ошибки человека этого не делается? Не ищется этот неверный шаг в рассуждении?
Я здесь пишу эту идею, пока только одну, не с целью, чтобы Вы с ней спорили.
Хотя спор тоже может быть полезен, но мне бы хотелось, чтобы для начала тот кто будет спорить, понял о чем речь.
M>>То есть для того, чтобы телепатировать, что у тебя там понаписано, мне надо читать все стопятьсот веток? Извини, не буду.
HH>Идей несколько. HH>Первая идея. HH>Почему все так уверены, что человеку свойственно ошибаться? Потому что это сказал Сенека?
Потому что это утверждение подтверждается эмпирически.
HH>А если он ошибся? Не надо тут меня ловить на противоречии. HH>Возможность ошибиться и необходимость ошибки это разные вещи.
Из того, что человеку свойственно ошибаться, не следует ни то, что ошибка возможно ни то, что ошибка необходима.
HH>Что является причиной ошибок в мышлении человека? HH>Прежде всего само мышление. HH>Представьте, что Вы создаете программу искуственного интеллекта. И эта программа делает ошибку. HH>Что Вы начинаете делать? Вы начинаете отлаживать программу, пытаясь понять, где был сделан неверный вывод. HH>А почему в случае ошибки человека этого не делается? Не ищется этот неверный шаг в рассуждении?
Почему не ищется? Во всей этой теме ищутся огибки в твоих рассуждениях
Здравствуйте, Mamut, Вы писали:
M>Из того, что человеку свойственно ошибаться, не следует ни то, что ошибка возможно ни то, что ошибка необходима.
Согласен. Т.е. можно принять как рабочую гипотезу, что можно найти методологию, позволяющую не совершать ошибок при разработке программ.
По поводу мат. модели в следующий раз, увы но мне нужно бежать.
M>>Из того, что человеку свойственно ошибаться, не следует ни то, что ошибка возможно ни то, что ошибка необходима. HH>Согласен. Т.е. можно принять как рабочую гипотезу, что можно найти методологию, позволяющую не совершать ошибок при разработке программ.
HH>То есть проблема в том, что люди пытаются спорить, не успев для начала понять, о чем идет речь. HH>Надо сказать, что мой первый пост был достаточно расплывчатым, потому что я не дал возможности идее отстояться в голове пару лет, чтобы она лучше сформировалась. HH>В результате каждый увидел в этом посте то, что ему было ближе.
Ну так это не наша проблема, и не проблема абстрактных людей, а сугубо твоя
Здравствуйте, HrorH, Вы писали:
HH>Почему все так уверены, что человеку свойственно ошибаться? Потому что это сказал Сенека?
потому что не ошибается лишь механизм, работающий по строго детерминированному алгоритму, например, часы — они не ошибаются, они ломаются, т.е. совсем перестают выполнять алгоритм. А начать отставать, потому что им лениво и они хотят поспать, часы не могут. А человек — может.
И улучшить сами себя часы не могут, а человек — может, но он может и ошибиться при улучшении.
Короче, поведение человека не детерминировано, способности человека по оценке внешних условий ограничены, именно поэтому человек, робот, супер-мозг и любой другой механизм, обладающий свободой выбора и взаимодействующий с внешней средой будет ошибаться.
HH>Что является причиной ошибок в мышлении человека? HH>Прежде всего само мышление.
масло-масляное
HH>Представьте, что Вы создаете программу искуственного интеллекта. И эта программа делает ошибку. HH>Что Вы начинаете делать? Вы начинаете отлаживать программу, пытаясь понять, где был сделан неверный вывод. HH>А почему в случае ошибки человека этого не делается? Не ищется этот неверный шаг в рассуждении?
ну это вам лучше знать, почему вы постоянно на одни и те же грабли наступаете Более другие человеки ваше "этое" делают
HH>Я здесь пишу эту идею, пока только одну, не с целью, чтобы Вы с ней спорили.
да мы и не собирались спорить с идеей, шизофренией мы вроде не страдаем, мы с вами спорим
HH>Хотя спор тоже может быть полезен, но мне бы хотелось, чтобы для начала тот кто будет спорить, понял о чем речь.
а еще лучше что бы тот кто пишет идеи с целью что бы понял речь о чем который перешел Йода с язык на нормальный излагать свои мысли