1.3, Aleksey (??), 13:03, 14/08/2009 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
У нас сегодня определенно день надуманных новостей. В тексте новости явно рассказано, что исследователям удалось создать первое ядро системы для которого для которого было проведено доказательство 100% соответствия тех.заданию. (First Formally-Proven OS Kernel).
А механизмы доказательства корректности алгоритмов известны не одно десятилетие и вовсю применяются в областях, где это необходимо.
| |
|
2.4, Aleksey (??), 13:04, 14/08/2009 [^] [^^] [^^^] [ответить]
| +3 +/– |
И как правильно заметили в комментарии к исходной новости:
It only means it meets the spec, not that the spec is correct ...
It does not mean that the faulty or erratic hardware cannot crash the system
It does not mean that other programs cannot crash and lose your data ...
It does not mean that buggy device drivers can make your system unusable
It does not mean that the system is perfect, only that it will always do what it is supposed to ... which may not be what you want ...
| |
|
3.6, dq0s4y71 (?), 13:20, 14/08/2009 [^] [^^] [^^^] [ответить]
| +1 +/– |
Ну и нормально. И хорошо, что пока еще не изобрели методику, которая за меня определяет _что_ я хочу. :)
| |
3.43, Vkni (ok), 03:26, 11/06/2020 [^] [^^] [^^^] [ответить]
| +/– |
> only that it will always do what it is supposed to
Скорее, что она работает не выходя за рамки спецификации... Это не совсем "supposed to".
Скажем, практически все спецификации на сортировку будут удовлетворены командами sort | uniq. А значительная часть спецификаций из всяких самоучителей вообще пропустит такую функцию сортировки:
sort :: Ord a => [a] -> [a]
sort _ = []
Нельзя ведь сказать, что результат выполнения этой функции неотсортирован!
| |
|
2.26, anonymous (??), 15:42, 14/08/2009 [^] [^^] [^^^] [ответить]
| +1 +/– |
> А механизмы доказательства корректности алгоритмов известны не одно десятилетие и вовсю применяются в областях, где это необходимо.
Вот-вот. Поправьте новость уже, без слез смотреть нельзя.
| |
|
|
2.10, zazik (ok), 13:48, 14/08/2009 [^] [^^] [^^^] [ответить]
| +/– |
Первый вопрос, который пришёл в голову. Лем очень неплохо в Ананке над верификаторами постебался.
| |
2.23, nathoo (?), 15:21, 14/08/2009 [^] [^^] [^^^] [ответить]
| +2 +/– |
примерно так же, как компилируют компиляторы: первым делом ;-)
| |
2.24, anonymous (??), 15:24, 14/08/2009 [^] [^^] [^^^] [ответить]
| +/– |
> Риторический вопрос: как верифицировать верификатор?
Так ведь как обычно. Выбрать аксиоматику (ту же ZFC) и пожалуйста, в бой.
| |
|
1.7, FractalizeR (ok), 13:21, 14/08/2009 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
И все равно непонятно, что именно доказано?
>математически доказать, что определенное ПО не содержит ошибок
Слишком общая формулировка. Никакой конкретики.
| |
|
2.8, Аноним (8), 13:28, 14/08/2009 [^] [^^] [^^^] [ответить]
| –1 +/– |
>И все равно непонятно, что именно доказано?
Доказано соответствие спецификации.
| |
|
1.13, fooser (?), 13:52, 14/08/2009 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Пускай программу проверки проверят ею же. не исключено что программа не пройдет проверки корректности ;)
| |
1.14, uZver (??), 14:09, 14/08/2009 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
+1. Если они действительно смогут математически доказывать корректность программы, то это уменьшит количество проблем и багов на порядок.
| |
|
2.15, Имя (?), 14:26, 14/08/2009 [^] [^^] [^^^] [ответить]
| +/– |
Это смотря кем ещё программа написана. Есть такие программные гении (которые даже не знают что такое указатель), что анализируя их программы быстро исдохнет любая математическая логика.
| |
|
3.20, psyhomo (?), 15:01, 14/08/2009 [^] [^^] [^^^] [ответить]
| +/– |
Угу. Вечный вопрос - "можно ли математически описать хаос?". Как-то тоже пришлось поглядеть на творчество и фантазию "программных гениев" изнутри.
| |
3.31, uZver (??), 21:53, 14/08/2009 [^] [^^] [^^^] [ответить]
| +/– |
> Есть такие программные гении (которые даже не знают что такое указатель), что анализируя их программы быстро исдохнет любая математическая логика.
дык в этом случае пофигу - прописать в ТЗ что код должен проходить анализ. Потому сдыхание анализатора это несоответствие ТЗ, а сам програмер идет переучиваться.
| |
|
2.22, Aleksey (??), 15:15, 14/08/2009 [^] [^^] [^^^] [ответить]
| +2 +/– |
Выдержка из с их страницы (statistic):
=======
Сколько строк было проверено?
> 7500 строк на C. Пока не проверен эсемблерный код и код, ответственный за загрузку (1200 строк)
Насколько большое получилось доказательство?
Около 200000 строк кода на языке доказательств Isabelle. Весь код доказательства был написан вручную с последующей машинной проверкой. В сумме это приблизительно 3500 страниц формата A4, если его распечатать (высота распечатки будет около полуметра высотой).
Это одно из самых больших формальных доказательств из когда-либо сделаных. Для примера, известная теорема о четырех красках (которая тоже была доказана машиной) состояла из 60000 строк в доказательстве теоремы. Единственное известное доказательство, которое больше этого принадлежит проекту Verisoft (они сообщают о 245000 строк доказательства). И конечно, в математике, чем меньше доказательство, тем оно понятнее :)
=======
Так что ни о каком прорыве в программировании речи не идет.
| |
|
3.32, uZver (??), 21:55, 14/08/2009 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Так что ни о каком прорыве в программировании речи не идет.
прорыв будет если мат.правила для доказательства будут примерно 1-1 к коду.
| |
|
|
1.30, Slava_K (?), 21:32, 14/08/2009 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
>> Итоговый анализ выполняется с помощью интерактивной программы Isabelle
А кто проверит Isabelle? Вдруг там ошибка?
| |
1.33, аноним (?), 23:36, 14/08/2009 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Не отсутствия ошибок, а соответствия спецификации, а вообще это неразрешимая проблема в общем случае
| |
|
2.42, Vkni (ok), 03:20, 11/06/2020 [^] [^^] [^^^] [ответить]
| +/– |
+1
Новость в стиле "учёный изнасиловал журналиста". Проверка спецификации, кстати, отдельная задача. ;-)
| |
|
1.35, Качатель (?), 19:37, 15/08/2009 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Каким образом они собираются ТЕКСТОВУЮ спецификацию подавать на вход программы для её проверки на соответствие с КОДОМ.
| |
1.36, FrBrGeorge (ok), 08:16, 16/08/2009 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Следующий шаг -- создание достаточно богатой непротиворечивой теории, включающей в себя инструментарий, с помощью которого доказывается непротиворечивость этой теории.
| |
|
2.38, nuclight (??), 15:00, 18/08/2009 [^] [^^] [^^^] [ответить]
| +/– |
>Следующий шаг -- создание достаточно богатой непротиворечивой теории, включающей в себя инструментарий,
>с помощью которого доказывается непротиворечивость этой теории.
Это напрямую запрещено теоремой Гёделя.
| |
|
1.37, Онаним (?), 16:17, 17/08/2009 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
А если наша Гостехкомиссия (или кто там щас вместо неё) будет юзать эту штуку - время выдачи сертификата уменьшится или увеличится?
| |
|