Главная » Просмотр файлов » Презентация 17

Презентация 17 (1131944)

Файл №1131944 Презентация 17 (Лекции)Презентация 17 (1131944)2019-05-12СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла

Математическая логикаи логическое программированиеЛектор:Подымов Владислав Васильевичe-mail:valdus@yandex.ru2016, весенний семестрКороткое вступлениеВ чём состоит основная сложность анализа императивныхпрограмм?Короткое вступлениеВ чём состоит основная сложность анализа императивныхпрограмм?Они полны по Тьюрингу11То есть программами моделируются все вычислимые функцииКороткое вступлениеВ чём состоит основная сложность анализа императивныхпрограмм?Они полны по Тьюрингу1Значит, анализ их поведения настолько же труден, насколько идля машин Тьюринга212То есть программами моделируются все вычислимые функцииТо есть многие нетривиальные свойства программ неразрешимыКороткое вступлениеВ чём состоит основная сложность анализа императивныхпрограмм?Они полны по Тьюрингу1Значит, анализ их поведения настолько же труден, насколько идля машин Тьюринга2А что если сильно ограничить их возможности?12То есть программами моделируются все вычислимые функцииТо есть многие нетривиальные свойства программ неразрешимыКороткое вступлениеВ чём состоит основная сложность анализа императивныхпрограмм?Они полны по Тьюрингу1Значит, анализ их поведения настолько же труден, насколько идля машин Тьюринга2А что если сильно ограничить их возможности?Например, свойства такой программыπ: x ⇐ x + 500можно легко проверить12То есть программами моделируются все вычислимые функцииТо есть многие нетривиальные свойства программ неразрешимыКороткое вступлениеВ чём состоит основная сложность анализа императивныхпрограмм?Они полны по Тьюрингу1Значит, анализ их поведения настолько же труден, насколько идля машин Тьюринга2А что если сильно ограничить их возможности?Например, свойства такой программыπ: x ⇐ x + 500можно легко проверитьА что если несколько простых программ работают,взаимодействуя между собой и с внешней средой?12То есть программами моделируются все вычислимые функцииТо есть многие нетривиальные свойства программ неразрешимыКороткое вступлениеВ чём состоит основная сложность анализа императивныхпрограмм?Они полны по Тьюрингу1Значит, анализ их поведения настолько же труден, насколько идля машин Тьюринга2А что если сильно ограничить их возможности?Например, свойства такой программыπ: x ⇐ x + 500можно легко проверитьА что если несколько простых программ работают,взаимодействуя между собой и с внешней средой?(то есть образуют распределённую систему)12То есть программами моделируются все вычислимые функцииТо есть многие нетривиальные свойства программ неразрешимыВерификация распределённых системПримерvoid премия() {счёт += 1 000 000;}void зарплата() {счёт += 1 000;}Верификация распределённых системПримерvoid премия() {счёт += 1 000 000;}void зарплата() {счёт += 1 000;}Пусть все функции выплат параллельно изменяют переменную“счёт”Верификация распределённых системПримерvoid премия() {счёт += 1 000 000;}void зарплата() {счёт += 1 000;}Пусть все функции выплат параллельно изменяют переменную“счёт”Как изменится счёт после одной зарплаты и одной премии?Верификация распределённых системПримерvoid премия() {счёт += 1 000 000;}void зарплата() {счёт += 1 000;}Пусть все функции выплат параллельно изменяют переменную“счёт”Как изменится счёт после одной зарплаты и одной премии?{счёт = x}счёт ⇐ счёт + 1 000 000;счёт ⇐ счёт + 1 000{счёт = x + 1 001 000}Верификация распределённых системПримерvoid премия() {счёт += 1 000 000;}void зарплата() {счёт += 1 000;}Пусть все функции выплат параллельно изменяют переменную“счёт”Как изменится счёт после одной зарплаты и одной премии?{счёт = x}счёт ⇐ счёт + 1 000 000;счёт ⇐ счёт + 1 000{счёт = x + 1 001 000}{счёт = x}счёт ⇐ счёт + 1 000;счёт ⇐ счёт + 1 000 000{счёт = x + 1 001 000}Верификация распределённых системПримерvoid премия() {счёт += 1 000 000;}void зарплата() {счёт += 1 000;}Пусть все функции выплат параллельно изменяют переменную“счёт”Как изменится счёт после одной зарплаты и одной премии?{счёт = x}счёт ⇐ счёт + 1 000 000;счёт ⇐ счёт + 1 000{счёт = x + 1 001 000}{счёт = x}счёт ⇐ счёт + 1 000;счёт ⇐ счёт + 1 000 000{счёт = x + 1 001 000}Модель императивных программ утверждает, что всё работаеткорректноВерификация распределённых системПримерvoid премия() {счёт += 1 000 000;}void зарплата() {счёт += 1 000;}Пусть все функции выплат параллельно изменяют переменную“счёт”Как изменится счёт после одной зарплаты и одной премии?{счёт = x}счёт ⇐ счёт + 1 000 000;счёт ⇐ счёт + 1 000{счёт = x + 1 001 000}{счёт = x}счёт ⇐ счёт + 1 000;счёт ⇐ счёт + 1 000 000{счёт = x + 1 001 000}Модель императивных программ утверждает, что всё работаеткорректноНо так ли это?Верификация распределённых системПримерvoid премия() {счёт += 1 000 000;}премиясчёт = счёт + 106void зарплата() {счёт += 1 000;}счёт0зарплатасчёт = счёт + 1000Верификация распределённых системПримерvoid премия() {счёт += 1 000 000;}премиясчёт = счёт + 106счёт = 0 + 106void зарплата() {счёт += 1 000;}счёт0зарплатасчёт = счёт + 1000Верификация распределённых системПримерvoid премия() {счёт += 1 000 000;}премиясчёт = счёт + 106void зарплата() {счёт += 1 000;}счёт0зарплатасчёт = счёт + 1000счёт = 0 + 106счёт = 0 + 1000Верификация распределённых системПримерvoid премия() {счёт += 1 000 000;}премиясчёт = счёт + 106void зарплата() {счёт += 1 000;}счёт0зарплатасчёт = счёт + 1000счёт = 0 + 106счёт = 0 + 1000счёт = 106106Верификация распределённых системПримерvoid премия() {счёт += 1 000 000;}премиясчёт = счёт + 106void зарплата() {счёт += 1 000;}счёт0зарплатасчёт = счёт + 1000счёт = 0 + 106счёт = 0 + 1000счёт = 1061061000счёт = 1000Верификация распределённых системПримерvoid премия() {счёт += 1 000 000;}премиясчёт = счёт + 106void зарплата() {счёт += 1 000;}счёт0зарплатасчёт = счёт + 1000счёт = 0 + 106счёт = 0 + 1000счёт = 1061061000счёт = 1000Где мой миллион?!Верификация распределённых системПримерvoid премия() {счёт += 1 000 000;}премиясчёт = счёт + 106void зарплата() {счёт += 1 000;}счёт0зарплатасчёт = счёт + 1000счёт = 0 + 106счёт = 0 + 1000счёт = 1061061000счёт = 1000Где мой миллион?!Такая ошибка возникает крайне редко, и потому считаетсятруднообнаружимой и невоспроизводимойВерификация распределённых системК чему приводят такие ошибки?11Карпов.

Model checking. 2010Верификация распределённых системК чему приводят такие ошибки?1I11996 взорвалась ракета “Ариан 5”; причина: ошибка в навигационнойпрограмме бортового компьютера; прямой ущерб: 7 млрд.$Карпов. Model checking. 2010Верификация распределённых системК чему приводят такие ошибки?1I1996 взорвалась ракета “Ариан 5”; причина: ошибка в навигационнойпрограмме бортового компьютера; прямой ущерб: 7 млрд.$I1994 массовая замена дефектных процессоров компанией Intel;причина: ошибка в программе деления; ущерб: сотни миллионов $I2009 банк UBS чудом избежал потери 31 млрд.$: из-за системнойошибки к заказу на 310 тыс.$ добавилось 5 нолей1Карпов. Model checking. 2010Верификация распределённых системК чему приводят такие ошибки?1I1996 взорвалась ракета “Ариан 5”; причина: ошибка в навигационнойпрограмме бортового компьютера; прямой ущерб: 7 млрд.$I1994 массовая замена дефектных процессоров компанией Intel;причина: ошибка в программе деления; ущерб: сотни миллионов $I2009 банк UBS чудом избежал потери 31 млрд.$: из-за системнойошибки к заказу на 310 тыс.$ добавилось 5 нолейI1982 при лечении аппаратом облучения раковой опухоли Therac-25погибло 2 человека, несколько остались инвалидами; причина:ошибка программы управления облучением, очень редкоинтенсивность облучения возрастала на 2 порядкаI1995 крушение самолёта “Боинг-757”, 159 погибших; причина: ошибкав одном символе программной системы управления полётом1Карпов.

Model checking. 2010Верификация распределённых системКак обнаруживать такие ошибки?Верификация распределённых системКак обнаруживать такие ошибки?Например, если все компоненты распределённой системыпростые, то что мешает явно перебрать все сценарии работы идля каждого из них убедиться в отсутствии ошибок?Верификация распределённых системКак обнаруживать такие ошибки?Например, если все компоненты распределённой системыпростые, то что мешает явно перебрать все сценарии работы идля каждого из них убедиться в отсутствии ошибок?Пусть в системе параллельно работают 70 программ, каждая изкоторых совершает одно действие и завершаетсяТогда всевозможных сценариев работы будет 70!Гугол(и даже немного больше)Верификация распределённых системКак обнаруживать такие ошибки?Например, если все компоненты распределённой системыпростые, то что мешает явно перебрать все сценарии работы идля каждого из них убедиться в отсутствии ошибок?Пусть в системе параллельно работают 70 программ, каждая изкоторых совершает одно действие и завершаетсяТогда всевозможных сценариев работы будет 70!Гугол(и даже немного больше)При этом разные последовательности действий могут приводитьк совершенно разным и неожиданным результатамВерификация распределённых системКак обнаруживать такие ошибки?Например, если все компоненты распределённой системыпростые, то что мешает явно перебрать все сценарии работы идля каждого из них убедиться в отсутствии ошибок?Пусть в системе параллельно работают 70 программ, каждая изкоторых совершает одно действие и завершаетсяТогда всевозможных сценариев работы будет 70!Гугол(и даже немного больше)При этом разные последовательности действий могут приводитьк совершенно разным и неожиданным результатам(где мой миллион?!)Верификация распределённых системКак обнаруживать такие ошибки?IтестированиеIверификацияВерификация распределённых системКак обнаруживать такие ошибки?IIтестирование: исполнять программу на заданных наборахвходных данных и искать отклонения от ожидаемыхрезультатовверификацияВерификация распределённых системКак обнаруживать такие ошибки?IIтестирование: исполнять программу на заданных наборахвходных данных и искать отклонения от ожидаемыхрезультатов— не подходитверификацияВерификация распределённых системКак обнаруживать такие ошибки?IIтестирование: исполнять программу на заданных наборахвходных данных и искать отклонения от ожидаемыхрезультатов— не подходит (почему?)верификацияВерификация распределённых системКак обнаруживать такие ошибки?IIтестирование: исполнять программу на заданных наборахвходных данных и искать отклонения от ожидаемыхрезультатов— не подходит (почему?)верификация:Iпостроить адекватную модель программыВерификация распределённых системКак обнаруживать такие ошибки?IIтестирование: исполнять программу на заданных наборахвходных данных и искать отклонения от ожидаемыхрезультатов— не подходит (почему?)верификация:IIпостроить адекватную модель программызаписать требования к программе на формальном языкеВерификация распределённых системКак обнаруживать такие ошибки?IIтестирование: исполнять программу на заданных наборахвходных данных и искать отклонения от ожидаемыхрезультатов— не подходит (почему?)верификация:IIIпостроить адекватную модель программызаписать требования к программе на формальном языкестрого доказать соблюдение требований для всехвычислений моделиВерификация распределённых системКак обнаруживать такие ошибки?IIтестирование: исполнять программу на заданных наборахвходных данных и искать отклонения от ожидаемыхрезультатов— не подходит (почему?)верификация:IIIпостроить адекватную модель программызаписать требования к программе на формальном языкестрого доказать соблюдение требований для всехвычислений моделиСамый известный метод верификации распределённых систем —метод проверки моделей (model checking)Верификация распределённых системКакие свойства распределённых систем проверяются методомmodel checking?Верификация распределённых системКакие свойства распределённых систем проверяются методомmodel checking?В требованиях, предъявляемых к работе распределённойсистеме, часто так или иначе присутствует времяВерификация распределённых системКакие свойства распределённых систем проверяются методомmodel checking?В требованиях, предъявляемых к работе распределённойсистеме, часто так или иначе присутствует времяНапример:void премия() {счёт += 1 000 000;}void зарплата() {счёт += 1 000;}Верификация распределённых системКакие свойства распределённых систем проверяются методомmodel checking?В требованиях, предъявляемых к работе распределённойсистеме, часто так или иначе присутствует времяНапример:void премия() {счёт += 1 000 000;}void зарплата() {счёт += 1 000;}Требование: если мне положены одна зарплата и одна премия,то на счету появятся миллион и тысячаВерификация распределённых системКакие свойства распределённых систем проверяются методомmodel checking?В требованиях, предъявляемых к работе распределённойсистеме, часто так или иначе присутствует времяНапример:void премия() {счёт += 1 000 000;}void зарплата() {счёт += 1 000;}Требование: если мне положены одна зарплата и одна премия,то на счету появятся миллион и тысячаИными словами: при любом развитии событий (во времени)после завершения работы функций “премия” и “зарплата” ксчёту добавится 1 001 000Верификация распределённых системЕщё один пример:Имеется несколько компьютеров, не взаимодействующих междусобой, но имеющих доступ к сетевому принтеруВерификация распределённых системЕщё один пример:Имеется несколько компьютеров, не взаимодействующих междусобой, но имеющих доступ к сетевому принтеруКак корректно организовать взаимодействие компьютеров спринтером?Верификация распределённых системЕщё один пример:Имеется несколько компьютеров, не взаимодействующих междусобой, но имеющих доступ к сетевому принтеруКак корректно организовать взаимодействие компьютеров спринтером?Считаем, что принтер работает последовательно и может бытьзанят (какой-либо компьютер передаёт на него данные) илисвободен (никакие данные не передаются)Верификация распределённых системКорректное взаимодействие компьютеров с принтеромудовлетворяет следующим требованиям:Верификация распределённых системКорректное взаимодействие компьютеров с принтеромудовлетворяет следующим требованиям:1.

Характеристики

Тип файла
PDF-файл
Размер
863,09 Kb
Материал
Тип материала
Высшее учебное заведение

Тип файла PDF

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

Например, если Вам нужно распечатать чертёж из автокада, Вы сохраните чертёж на флешку, но будет ли автокад в пункте печати? А если будет, то нужная версия с нужными библиотеками? Именно для этого и нужен формат PDF - в нём точно будет показано верно вне зависимости от того, в какой программе создали PDF-файл и есть ли нужная программа для его просмотра.

Список файлов лекций

Лекции
3. Логика предикатов - синтаксис (термы и формулы), семантика (интерпретации и отношение выполнимости), модели, логическое следствие, проблема общезначимости формул.pdf
5. Полнота табличного вывода. Теорема Лёвенгейма-Сколема. Теорема компактности Мальцева. Автоматическое доказательство теорем. Теорема Чёрча.pdf
6. Общая схема метода резолюций. Равносильные формулы. Теорема о равносильной замене. Предварённая нормальная форма. Сколемовская стандартная форма.pdf
10. Аксиоматические теории первого порядка. Теория частичных порядков. Основные свойства теорий - непротиворечивость, разрешимость, независимость, полнота.pdf
12. Бескванторные теории с равенством. Линейная арифметика. Теория массивов. Теория равенства с неинтерпретируемыми функциями. Комбинация SMT и SAT.pdf
16-17. Формальная верификация. Императивные программы. Логика Хоара. Автоматическая проверка правильности программ. Верификация распределённых систем. Модальные логи.pdf
Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6384
Авторов
на СтудИзбе
308
Средний доход
с одного платного файла
Обучение Подробнее