Size: a a a

Compiler Development

2020 March 16

λ

λoλdog in Compiler Development
Anton Trunov
есть свежий обзор, но особо про перспективу там не было, кажется -- QED at Large: A Survey of Engineering of Formally Verified Software - T. Ringer, K. Palmskog, I. Sergey, M. Gligoric, Z. Tatlock(2019)
Мог бы скинуть прям документ)
источник

EM

Evgenii Moiseenko in Compiler Development
Evgenii Moiseenko
Можно посмотреть на статьи по f*
И lean
источник

МБ

Михаил Бахтерев in Compiler Development
Anton Trunov
А есть какие-то работы по этому поводу? Я часто об этом задумываюсь
Я видел только один доклад. Там было об абстрактной интерпретации. Дело было на ютубе, и я утерял ссылку. Что-то похожее делают, как я уже написал в mini kanren, но там больше о синтезе по тестам, а не о проверке. В качества апогея статья:

https://papers.nips.cc/paper/7445-neural-guided-constraint-logic-programming-for-program-synthesis.pdf
источник

AT

Anton Trunov in Compiler Development
Михаил Бахтерев
Я видел только один доклад. Там было об абстрактной интерпретации. Дело было на ютубе, и я утерял ссылку. Что-то похожее делают, как я уже написал в mini kanren, но там больше о синтезе по тестам, а не о проверке. В качества апогея статья:

https://papers.nips.cc/paper/7445-neural-guided-constraint-logic-programming-for-program-synthesis.pdf
спасибо!
источник

IJ

Igor 🐱 Jirkov in Compiler Development
Михаил Бахтерев
Вон Compcert компилируется, а ошибки в нём до сих пор находят.
Или в местах,  где код неверифицирован, или в местах,  где модель упрощает реальность
источник

AT

Anton Trunov in Compiler Development
Igor 🐱 Jirkov
Или в местах,  где код неверифицирован, или в местах,  где модель упрощает реальность
:+1:
источник

AT

Alexander Tchitchigin in Compiler Development
Михаил Бахтерев
Вот и вопрос: а должен ли я заставлять своего пользователя трудиться над этим? Оно понятное дело, что дело очень интересное. Но вот есть у меня друг - биолог, ему важнее пересчитать варианты (забыл научное название) кусочков форм вирусов уже сейчас, потому как через год уже будет другой штамм гриппа...

А я вот не понимаю, есть ли вообще надежда, что когда-нибудь с типами будет легко и просто доказываться всё. А ещё лучше, будут ли завтипы выводится? Или это вообще невозможный вариант?
Мне кажется, Вы тут немного смешиваете тёплое с мягким: (мейнстримовые) системы доказательства теорем/верификации программ - про функциаональную корректность дискретных (по сути и по факту) систем/алгоритмов, а то, чем Вы занимаетесь - больше про численную корректность (стабильность, и т.д.) непрерывных (гладких) по сути формул. Второе направление реально плохо покрыто формальной верификацией как по техническим, так и по социальным причинам.

Но "Вашего пользователя" это всё не должно волновать. Как не волнует меня как пользователя (к примеру) Scikit-learn какие именно алгоритмы и оптимизации используются в её недрах.
источник

IJ

Igor 🐱 Jirkov in Compiler Development
Например, находили баги, связанные с допущением о бесконечности памяти, или с линковкой (а линкер еще не верифицирован). До недавнего времени доказательства писались для отдельного юнита трансляции,  недавно добавилась "синтаксическая  линковка" емнип
источник

МБ

Михаил Бахтерев in Compiler Development
Alexander Tchitchigin
Мне кажется, Вы тут немного смешиваете тёплое с мягким: (мейнстримовые) системы доказательства теорем/верификации программ - про функциаональную корректность дискретных (по сути и по факту) систем/алгоритмов, а то, чем Вы занимаетесь - больше про численную корректность (стабильность, и т.д.) непрерывных (гладких) по сути формул. Второе направление реально плохо покрыто формальной верификацией как по техническим, так и по социальным причинам.

Но "Вашего пользователя" это всё не должно волновать. Как не волнует меня как пользователя (к примеру) Scikit-learn какие именно алгоритмы и оптимизации используются в её недрах.
По каким социальным причинам?
источник

IJ

Igor 🐱 Jirkov in Compiler Development
Мне иногда кажется,  что некоторую важную работу не выполняют не из-за отсутствия ресурсов. Такую,  как формализацию экстракции из coq, например
источник

IJ

Igor 🐱 Jirkov in Compiler Development
Как с ракетами : почему мы не летим в космосе далеко ? Потому что если послать экспедицию в deep space сейчас,  через 50 лет мы сделаем корабли, которые обгонят их
источник

AT

Alexander Tchitchigin in Compiler Development
Михаил Бахтерев
По каким социальным причинам?
Те, кто фигачат численные алгоритмы не интересуются формальной верификацией, те, кто упарывается формальной верификацией не шарят в численных алгоритмах. 😃
источник

AT

Anton Trunov in Compiler Development
Alexander Tchitchigin
Те, кто фигачат численные алгоритмы не интересуются формальной верификацией, те, кто упарывается формальной верификацией не шарят в численных алгоритмах. 😃
с некоторыми исключениями вроде http://iste.co.uk/book.php?id=1238
источник

МБ

Михаил Бахтерев in Compiler Development
Igor 🐱 Jirkov
Как с ракетами : почему мы не летим в космосе далеко ? Потому что если послать экспедицию в deep space сейчас,  через 50 лет мы сделаем корабли, которые обгонят их
К сожалению, мы не летим в космос далеко, потому что энергетический потенциал современных двигателей исчерпан. Альтернатив пока нет.

Но аналогия не понятна. Какие ожидания от будущего Coq сделают эту работу не актуальной?
источник

IJ

Igor 🐱 Jirkov in Compiler Development
Михаил Бахтерев
К сожалению, мы не летим в космос далеко, потому что энергетический потенциал современных двигателей исчерпан. Альтернатив пока нет.

Но аналогия не понятна. Какие ожидания от будущего Coq сделают эту работу не актуальной?
Появление новых, более эффективных  техник (в аналогии двигателей)
источник

IJ

Igor 🐱 Jirkov in Compiler Development
Пруверов и тд
источник

EZ

Evgeniy Zheltonozhskiy🇮🇱 in Compiler Development
Igor 🐱 Jirkov
Как с ракетами : почему мы не летим в космосе далеко ? Потому что если послать экспедицию в deep space сейчас,  через 50 лет мы сделаем корабли, которые обгонят их
Наоборот же, мы не летим в космос далеко потому что Вояджер не обогнать
источник

IJ

Igor 🐱 Jirkov in Compiler Development
Evgeniy Zheltonozhskiy🇮🇱
Наоборот же, мы не летим в космос далеко потому что Вояджер не обогнать
В фантастике неоднократно обыгрывались ситуации, когда в глубокий космос посылались экспедиции с расчетом на успех миссии через условные 400 лет, а через 200 лет появлялись какие-нибудь технологии быстрого межзвездного путешествия, которые делали эти миссии устаревшими
источник

EZ

Evgeniy Zheltonozhskiy🇮🇱 in Compiler Development
Igor 🐱 Jirkov
В фантастике неоднократно обыгрывались ситуации, когда в глубокий космос посылались экспедиции с расчетом на успех миссии через условные 400 лет, а через 200 лет появлялись какие-нибудь технологии быстрого межзвездного путешествия, которые делали эти миссии устаревшими
А вот в жизни такого нет)
источник

EZ

Evgeniy Zheltonozhskiy🇮🇱 in Compiler Development
Пока что
источник