SlideShare a Scribd company logo
Вероятностная верификация при проектировании вычислительных систем 
С.Л. Френкель1 , В.Н.Захаров1, В.Г. Ушаков2 
1 Институт проблем информатики (fsergei@mail.ru, VZakharov@ipiran.ru) 
2Московский гос. университет им. М.В. Ломоносова, Институт проблем информатики РАН ( Ushakov@akado.ru ).
Проблема обеспечение устойчивости программно-аппаратных средств к случайным кратковременным сбоям при проектировании. 
1. Защита (“укрепление”, hardening) уязвимых элементов (ячеек памяти, регистров) от искажающих воздействий, как внешних (частицы, излучения), так и возможного неспецифицированного поведения. 
 для HW и SW используется репликация: 
TMR (Triple Modular Redundancy) на аппаратом 
уровне, или N-version programming (NVP) , состоящее в выполнении N независимых функционально- эквивалентных программ, полученных из одной спецификации. 
2
Model Checking для выбора защищаемых элементов/переменных 
Model Checking- это — проверка, удовлетворяет ли заданная модель системы формальным спецификациям, описанных средствами LTL, CTL, и.тд.. 
Мотивация: верификация свойств Fault-tolerance без симуляции. 
Условие применения- возможность построить конечно- 
автоматную модель системы. Тогда широкий класс ошибок в любой момент времени можно представить как изменение значения в соответствующем разряде вектора состояний автомата. 
Например, если в исправной системе должна выполняться формула AG , то можно также рассмотреть условия AG(¬fault   ))- т.е. система будет работать правильно, пока не появилась ошибка, и условие, что введение неисправности в модель не приведет к некорректному поведению AG(¬injected   ). 
3
Модель Single event Upset 
для системы (S, T, S0), где S – множество состояний, кодируемых булевыми векторами s1,s2,..,sn S, T  S×S – способ вычисления переходов как функций si := fi(V), где fi (V)– некоторые функции подмножеств V  S. 
Если булевы переменные начального состояния s0i из множества S0 возможных начальных состояний искажаются, модель переключает значение в следующем цикле как s0i := ¬fi(V). 
4
Поиск угрожаемых элементов 
(Например,. S. A. Seshia, W.Li, S. Mitra,“Verification-guided soft error resilience”, DATE07, 2007) 
(i)Каждой переменной модели соответствует множество assertions (формальных LTL/CTL утверждений ) которые задают условия корректного поведения. 
(ii)изменение одного бита (согласно модели SEU) ведет, к произвольному изменению состояний автомата, ведущему к невыполнению тех или иных assertions. 
(iii) строится n автоматов (FSM) с измененными битами соответствующего вектора состояния , n-число бит вектора состояний, n+1 раз выполняется Model Checking : один раз для свободной от SEU модели, чтобы проверить, что разработанный проект удовлетворяет требуемому свойству, и n раз для моделей с неисправностями. 
Элемент системы нуждается в защите, если хотя бы одна из n моделей с неисправностями не удовлетворяет требуемому свойству
Формальный метод вероятностной верификации :Probabilistic Model Checking 
Язык описания свойств в Probabilistic Model Checking PC позволяет описывать системы, представленных как Марковская Цепь Дискретного Времени ( DTMC) : (S, s0,P,L), где 
−S – конечное множество состояний (“state space”) 
−s0 ∈ S – начальное состояние, 
−P: S ×S →[0,1] матрица переходов, 
Σs’∈SP(s,s’) = 1 для всехs ∈S 
L : S →2AP is function labelling states with atomic propositions 
AP={try,fail,succ}, 
L(s0)=, L(s1)={try L(s2)={fail}, L{s3}={succ} 
6
Расширение формул CTL на PCTL 
−reachability: вероятность достигнуть состояние, удовлетворяюще φ 
P~p[ F φ] 
−invariance: вероятность выполнения φ всегда истинна 
P~p [ G φ] 
- Вероятность истинности формулы до момента T 
P~p (U≤Tφ) 
7
Вычислительная сложность PMC для проверки сушественности неисправности 
СPMC= O(poly(N))·T·|φ|, 
N- число состояний DTMC, |φ1| - размер формулы, специфицирующей проверяемые свойства, 
Как правило, poly(N)  N6 !!! 
Полином в приведенной оценке обычно третьей степени, что соответствует сложности известных методов вычисления вероятностей для цепи Маркова. 
8
Проблема нахождение контр-примеров для диагностики результатов 
В PMC контрпримеры формируются по множеству путей, для которых вероятности не удовлетворяют заданному порогу. 
Вероятность попадания в момент T в некоторое подмножество состояний S цепи Маркова, такое, что s|=ϕ с матрицей переходных вероятностей P(s, s’) вычисляется как Prob(True U≤ T ϕ) =  s|=ϕ P(s,T), P(s,T) – вероятность попадания цепи в состояние s в момент времени T, которая вычисляется для данной DTMC по всем путям перехода в s за T переходов 
9
Комбинированный логико-числовой метод (CLNM) 
Основная идея вероятностной верификации свойств устойчивости автоматной модели к случайным сбоям состоит в том, что угрожаемые элементы проектируемой системы определяются методом Model Checking, а затем вычисляется вероятность того, что проявление ошибки (SEU) в данном элементе не приведет к проявлению ошибки в результате. 
10
CLNM и PMC 
11
Модель самовосстановления 
Fault-Free: начальное состояние s0i Faulty: начальное состояние s0j Цепь Mаркова с двумя поглощающими состояниями: A0 : Y=YF до момента перехода траектории переходов автомата в правильное состояние, A1 : Y≠YF
Модель сбоя 
13 
Сбой: пара (i,j) at, as- текущее и следующие состояния, X-входы, Y- выходы.
Вычисление вероятности самовосстановления 
14 
Вектор начального распределения определяется начальными состояниями исправного и неисправного автоматов. Если исправный автомат в начальный момент 0 находится в состоянии i0, а неисправный – в состоянии j0 ≠ i0, то p(i0,j0)(0) = 1, а остальные координаты вектора нулевые. Матрица переходных вероятностей *вычисляется по известным вероятностям входных переменных автомата. 
Вероятность самовосстановления за t тактов после прекращения действия помехи:
Вычислительная сложность CLMN 
СCLNM =O(poly(size(D))) 
CCLNM/CPMCT|1| 
15
Задача оценки вероятностей в модели CLNM 
Задача: оценить вероятности P(xi =1) 
входных переменных автоматной модели 
проектирования. 
Средства:симуляторы и наборы бенчмарков, используемых при 
отработке устройств. 
16
Фаза выборки конвейеризированного процессора 
17
Входные данные программ верификации 
Таблица переходов автомата 
Микрооперации 
18 
at, as- текущее и следующие состояния, X-входы, Y-выходы.
Вероятности восстановления 
Вероятности восстановления через t тактов после сбоя (1,2): 
(DMAcycle до команды “S” (Start)) 
SH = (0.0, 0.034, 0.46, 0.55, 0.64, 0.68), 
и после сбоя (5.2)- (ошибка заполнения программного счетчика): 
S = (0.00, 0.79, 0.79, 0,85, 0.89, 0.92, 0.93 
19
20 
Thank You!

More Related Content

PDF
A Method of Reducing Computational Complexity in Verification of Programming ...
PDF
TMPA-2015: Expanding the Meta-Generation of Correctness Conditions by Means o...
PDF
TMPA-2013 Dmitry Zaitsev
PDF
A System of Deductive Verification of Predicate Programs
PDF
TMPA-2015: Lexical analysis of dynamically formed string expressions
PDF
TMPA-2013 Vert Krikun: Finding Defects in C and C++ Pointers Using Static Ana...
PPTX
TMPA-2013 Chupilko: Verification of Correct Behaviour of HDL Models
PDF
Лекция №3. Свойства и моделирование стандартных схем программ. Предмет "Теори...
A Method of Reducing Computational Complexity in Verification of Programming ...
TMPA-2015: Expanding the Meta-Generation of Correctness Conditions by Means o...
TMPA-2013 Dmitry Zaitsev
A System of Deductive Verification of Predicate Programs
TMPA-2015: Lexical analysis of dynamically formed string expressions
TMPA-2013 Vert Krikun: Finding Defects in C and C++ Pointers Using Static Ana...
TMPA-2013 Chupilko: Verification of Correct Behaviour of HDL Models
Лекция №3. Свойства и моделирование стандартных схем программ. Предмет "Теори...

What's hot (20)

PDF
TMPA-2013 Anureyev: On the Road to Technology of Developing the Means of Dedu...
PDF
Лекция №2. Алгоритмические проблемы. Стандартные схемы программ. Предмет "Тео...
PPTX
Советский суперкомпьютер К-340А и секретные вычисления
PDF
Лекция №1. Введение. Предмет "Теория вычислительных процессов"
PPT
5 логические элементы компьютера
PPTX
логические модели переключательных схем
PDF
A Method of Building Extended Finite State Machines According to HDL-Descript...
PDF
Основы MATLAB. Лекция 1.
PDF
Представление графов в памяти компьютера (c++).
DOC
Структурные формулы и функциональные схемы
DOC
Логические основы построения эвм
DOC
КР Решение логических задач. логические основы построения пк
PDF
Основы MATLAB. Программирование
PPTX
Введение в теорию автоматов и вычислений. 1.12 дорожная карта 2 - ДКА
PDF
Основы программирования на C++
PPT
4 algoritm
PPT
Конструирование алгоритмов
PDF
4. Многомерные массивы и массивы массивов в C#
PDF
Алгоритмы и языки программирования
PPT
Программирование разветвляющихся алгоритмов
TMPA-2013 Anureyev: On the Road to Technology of Developing the Means of Dedu...
Лекция №2. Алгоритмические проблемы. Стандартные схемы программ. Предмет "Тео...
Советский суперкомпьютер К-340А и секретные вычисления
Лекция №1. Введение. Предмет "Теория вычислительных процессов"
5 логические элементы компьютера
логические модели переключательных схем
A Method of Building Extended Finite State Machines According to HDL-Descript...
Основы MATLAB. Лекция 1.
Представление графов в памяти компьютера (c++).
Структурные формулы и функциональные схемы
Логические основы построения эвм
КР Решение логических задач. логические основы построения пк
Основы MATLAB. Программирование
Введение в теорию автоматов и вычислений. 1.12 дорожная карта 2 - ДКА
Основы программирования на C++
4 algoritm
Конструирование алгоритмов
4. Многомерные массивы и массивы массивов в C#
Алгоритмы и языки программирования
Программирование разветвляющихся алгоритмов
Ad

Viewers also liked (7)

PDF
Verification of 800 Automata-Based Programs Built by means of Genetic Program...
PDF
Testing of a Risk Control System Implementation for High-Load Exchange and Br...
PDF
Modelling of Exchange Trading Participants Behavior Test Scenarios
PDF
Parametrized Model Checking of Fault Tolerant Distributed Algorithms by Abstr...
PDF
Alias Calculus for a Simple Imperative Language with Decidable Pointer Arithm...
PDF
Service Robotics in Science and Education
PDF
Model Driven Developing & Model Based Checking: Applying Together
Verification of 800 Automata-Based Programs Built by means of Genetic Program...
Testing of a Risk Control System Implementation for High-Load Exchange and Br...
Modelling of Exchange Trading Participants Behavior Test Scenarios
Parametrized Model Checking of Fault Tolerant Distributed Algorithms by Abstr...
Alias Calculus for a Simple Imperative Language with Decidable Pointer Arithm...
Service Robotics in Science and Education
Model Driven Developing & Model Based Checking: Applying Together
Ad

More from Iosif Itkin (20)

PDF
Foundations of Software Testing Lecture 4
PPTX
QA Financial Forum London 2021 - Automation in Software Testing. Humans and C...
PDF
Exactpro FinTech Webinar - Global Exchanges Test Oracles
PDF
Exactpro FinTech Webinar - Global Exchanges FIX Protocol
PDF
Operational Resilience in Financial Market Infrastructures
PDF
20 Simple Questions from Exactpro for Your Enjoyment This Holiday Season
PDF
Testing the Intelligence of your AI
PDF
EXTENT 2019: Exactpro Quality Assurance for Financial Market Infrastructures
PDF
ClearTH Test Automation Framework: Case Study in IRS & CDS Swaps Lifecycle Mo...
PPTX
EXTENT Talks 2019 Tbilisi: Failover and Recovery Test Automation - Ivan Shamrai
PDF
EXTENT Talks QA Community Tbilisi 20 April 2019 - Conference Open
PDF
User-Assisted Log Analysis for Quality Control of Distributed Fintech Applica...
PPTX
QAFF Chicago 2019 - Complex Post-Trade Systems, Requirements Traceability and...
PDF
QA Community Saratov: Past, Present, Future (2019-02-08)
PDF
Machine Learning and RoboCop Testing
PDF
Behaviour Driven Development: Oltre i limiti del possibile
PDF
2018 - Exactpro Year in Review
PPTX
Exactpro Discussion about Joy and Strategy
PPTX
FIX EMEA Conference 2018 - Post Trade Software Testing Challenges
PDF
BDD. The Outer Limits. Iosif Itkin at Youcon (in Russian)
Foundations of Software Testing Lecture 4
QA Financial Forum London 2021 - Automation in Software Testing. Humans and C...
Exactpro FinTech Webinar - Global Exchanges Test Oracles
Exactpro FinTech Webinar - Global Exchanges FIX Protocol
Operational Resilience in Financial Market Infrastructures
20 Simple Questions from Exactpro for Your Enjoyment This Holiday Season
Testing the Intelligence of your AI
EXTENT 2019: Exactpro Quality Assurance for Financial Market Infrastructures
ClearTH Test Automation Framework: Case Study in IRS & CDS Swaps Lifecycle Mo...
EXTENT Talks 2019 Tbilisi: Failover and Recovery Test Automation - Ivan Shamrai
EXTENT Talks QA Community Tbilisi 20 April 2019 - Conference Open
User-Assisted Log Analysis for Quality Control of Distributed Fintech Applica...
QAFF Chicago 2019 - Complex Post-Trade Systems, Requirements Traceability and...
QA Community Saratov: Past, Present, Future (2019-02-08)
Machine Learning and RoboCop Testing
Behaviour Driven Development: Oltre i limiti del possibile
2018 - Exactpro Year in Review
Exactpro Discussion about Joy and Strategy
FIX EMEA Conference 2018 - Post Trade Software Testing Challenges
BDD. The Outer Limits. Iosif Itkin at Youcon (in Russian)

Probabilistic Verification in Computational Systems Design

  • 1. Вероятностная верификация при проектировании вычислительных систем С.Л. Френкель1 , В.Н.Захаров1, В.Г. Ушаков2 1 Институт проблем информатики (fsergei@mail.ru, VZakharov@ipiran.ru) 2Московский гос. университет им. М.В. Ломоносова, Институт проблем информатики РАН ( Ushakov@akado.ru ).
  • 2. Проблема обеспечение устойчивости программно-аппаратных средств к случайным кратковременным сбоям при проектировании. 1. Защита (“укрепление”, hardening) уязвимых элементов (ячеек памяти, регистров) от искажающих воздействий, как внешних (частицы, излучения), так и возможного неспецифицированного поведения.  для HW и SW используется репликация: TMR (Triple Modular Redundancy) на аппаратом уровне, или N-version programming (NVP) , состоящее в выполнении N независимых функционально- эквивалентных программ, полученных из одной спецификации. 2
  • 3. Model Checking для выбора защищаемых элементов/переменных Model Checking- это — проверка, удовлетворяет ли заданная модель системы формальным спецификациям, описанных средствами LTL, CTL, и.тд.. Мотивация: верификация свойств Fault-tolerance без симуляции. Условие применения- возможность построить конечно- автоматную модель системы. Тогда широкий класс ошибок в любой момент времени можно представить как изменение значения в соответствующем разряде вектора состояний автомата. Например, если в исправной системе должна выполняться формула AG , то можно также рассмотреть условия AG(¬fault   ))- т.е. система будет работать правильно, пока не появилась ошибка, и условие, что введение неисправности в модель не приведет к некорректному поведению AG(¬injected   ). 3
  • 4. Модель Single event Upset для системы (S, T, S0), где S – множество состояний, кодируемых булевыми векторами s1,s2,..,sn S, T  S×S – способ вычисления переходов как функций si := fi(V), где fi (V)– некоторые функции подмножеств V  S. Если булевы переменные начального состояния s0i из множества S0 возможных начальных состояний искажаются, модель переключает значение в следующем цикле как s0i := ¬fi(V). 4
  • 5. Поиск угрожаемых элементов (Например,. S. A. Seshia, W.Li, S. Mitra,“Verification-guided soft error resilience”, DATE07, 2007) (i)Каждой переменной модели соответствует множество assertions (формальных LTL/CTL утверждений ) которые задают условия корректного поведения. (ii)изменение одного бита (согласно модели SEU) ведет, к произвольному изменению состояний автомата, ведущему к невыполнению тех или иных assertions. (iii) строится n автоматов (FSM) с измененными битами соответствующего вектора состояния , n-число бит вектора состояний, n+1 раз выполняется Model Checking : один раз для свободной от SEU модели, чтобы проверить, что разработанный проект удовлетворяет требуемому свойству, и n раз для моделей с неисправностями. Элемент системы нуждается в защите, если хотя бы одна из n моделей с неисправностями не удовлетворяет требуемому свойству
  • 6. Формальный метод вероятностной верификации :Probabilistic Model Checking Язык описания свойств в Probabilistic Model Checking PC позволяет описывать системы, представленных как Марковская Цепь Дискретного Времени ( DTMC) : (S, s0,P,L), где −S – конечное множество состояний (“state space”) −s0 ∈ S – начальное состояние, −P: S ×S →[0,1] матрица переходов, Σs’∈SP(s,s’) = 1 для всехs ∈S L : S →2AP is function labelling states with atomic propositions AP={try,fail,succ}, L(s0)=, L(s1)={try L(s2)={fail}, L{s3}={succ} 6
  • 7. Расширение формул CTL на PCTL −reachability: вероятность достигнуть состояние, удовлетворяюще φ P~p[ F φ] −invariance: вероятность выполнения φ всегда истинна P~p [ G φ] - Вероятность истинности формулы до момента T P~p (U≤Tφ) 7
  • 8. Вычислительная сложность PMC для проверки сушественности неисправности СPMC= O(poly(N))·T·|φ|, N- число состояний DTMC, |φ1| - размер формулы, специфицирующей проверяемые свойства, Как правило, poly(N)  N6 !!! Полином в приведенной оценке обычно третьей степени, что соответствует сложности известных методов вычисления вероятностей для цепи Маркова. 8
  • 9. Проблема нахождение контр-примеров для диагностики результатов В PMC контрпримеры формируются по множеству путей, для которых вероятности не удовлетворяют заданному порогу. Вероятность попадания в момент T в некоторое подмножество состояний S цепи Маркова, такое, что s|=ϕ с матрицей переходных вероятностей P(s, s’) вычисляется как Prob(True U≤ T ϕ) =  s|=ϕ P(s,T), P(s,T) – вероятность попадания цепи в состояние s в момент времени T, которая вычисляется для данной DTMC по всем путям перехода в s за T переходов 9
  • 10. Комбинированный логико-числовой метод (CLNM) Основная идея вероятностной верификации свойств устойчивости автоматной модели к случайным сбоям состоит в том, что угрожаемые элементы проектируемой системы определяются методом Model Checking, а затем вычисляется вероятность того, что проявление ошибки (SEU) в данном элементе не приведет к проявлению ошибки в результате. 10
  • 12. Модель самовосстановления Fault-Free: начальное состояние s0i Faulty: начальное состояние s0j Цепь Mаркова с двумя поглощающими состояниями: A0 : Y=YF до момента перехода траектории переходов автомата в правильное состояние, A1 : Y≠YF
  • 13. Модель сбоя 13 Сбой: пара (i,j) at, as- текущее и следующие состояния, X-входы, Y- выходы.
  • 14. Вычисление вероятности самовосстановления 14 Вектор начального распределения определяется начальными состояниями исправного и неисправного автоматов. Если исправный автомат в начальный момент 0 находится в состоянии i0, а неисправный – в состоянии j0 ≠ i0, то p(i0,j0)(0) = 1, а остальные координаты вектора нулевые. Матрица переходных вероятностей *вычисляется по известным вероятностям входных переменных автомата. Вероятность самовосстановления за t тактов после прекращения действия помехи:
  • 15. Вычислительная сложность CLMN СCLNM =O(poly(size(D))) CCLNM/CPMCT|1| 15
  • 16. Задача оценки вероятностей в модели CLNM Задача: оценить вероятности P(xi =1) входных переменных автоматной модели проектирования. Средства:симуляторы и наборы бенчмарков, используемых при отработке устройств. 16
  • 18. Входные данные программ верификации Таблица переходов автомата Микрооперации 18 at, as- текущее и следующие состояния, X-входы, Y-выходы.
  • 19. Вероятности восстановления Вероятности восстановления через t тактов после сбоя (1,2): (DMAcycle до команды “S” (Start)) SH = (0.0, 0.034, 0.46, 0.55, 0.64, 0.68), и после сбоя (5.2)- (ошибка заполнения программного счетчика): S = (0.00, 0.79, 0.79, 0,85, 0.89, 0.92, 0.93 19