Bernhard Steffen, Falk Howar, Malte Isberner TU Dortmund /CMU. B. Steffen Summer School CPS

Similar documents
CSE255 Introduction to Databases - Fall 2007 Semester Project Overview and Phase I

Kronos Workforce Instructions

Analyzing Medical Processes

CWE Flow-based Market Coupling Project. at EMART Energy 2012

Statistical Analysis Tools for Particle Physics

The Nottingham eprints service makes this work by researchers of the University of Nottingham available open access under the following conditions.

Logic-Based Benders Decomposition for Multiagent Scheduling with Sequence-Dependent Costs

Scheduling Home Hospice Care with Logic-based Benders Decomposition

Correlation of: Let s Begin with the Letter People to the Florida Department of Education 2008 Voluntary Prekindergarten Education Standards.

A STUDY ON KSA (KNOWLEDGE, SKILLS AND ABILITY) COMPETENCY AMONG NURSES

CWE Flow-based Market Coupling Project

Critique of a Nurse Driven Mobility Study. Heather Nowak, Wendy Szymoniak, Sueann Unger, Sofia Warren. Ferris State University

ALICE Policy for Publications and Presentations

Computer Science Undergraduate Scholarship

Raiser s Edge: How To Query Constituent Giving With A Cumulative Total Including Soft Credits

Optimization Problems in Machine Learning

Assuring Better Child health Development Family Medicine Cohort 2016 Quality Improvement Project: Retrospective Medical Record Review

SNOMED CT AND ICD-10-BE: TWO OF A KIND?

Blackjacking 0wning the Enterprise via Blackberry. Jesse x30n D Aguanno

Fingers In The Air. A Gentle Introduction To Software Estimation. Giovanni Asproni

RTLS and the Built Environment by Nelson E. Lee 10 December 2010

Managing and Visualizing Non-linear Workflows using a Kanban Matrix. Agenda

HYDROELECTRIC COMMUNICATION TECHNICIAN I HYDROELECTRIC COMMUNICATION TECHNICIAN II Range B55/B75 BOD 7/12/2017

Kaba Clock Time Collection Device Update. onesource.uga.edu

MODULE 04 THE THREE FACTOR FRAMEWORK CLIENT FACTORS

Student Guide: Using Real Time Labor Market Information

Draagbare geïntegreerde technologie voor gezondheidsmonitoring. Prof. dr. ir. Ronald Thoelen Genk, January

1. New proposal or continued New Proposal has been selected in advance. (The applicant cannot select Continued.)

Introduction to Handwritten Signature Verification

Tree Based Modeling Techniques Applied to Hospital Length of Stay

Architecture and the City, Modus and Experiment: Public building / public realm, composition & tectonics

SAMPLE. RISE Data Use Request Form - Academic. Step 1 - Contact Information. Who will serve as the point of contact for this project?

What Makes a Good Paper?

Swarm Intelligence: Charged System Search

How Much Does a Household Robot Need to Know in Order to Tidy up?

Abstract submission regulations and instructions

Familial Hypercholesterolaemia Quality Improvement Tool Instruction Guide

In order to analyze the relationship between diversion status and other factors within the

Creating Documentation for Section GG

8/2/2017. Strategies for Quality Improvement based on RO-ILS

V300 Independent and Supplementary Prescribing for Nurses: MSAP 4021 And HESC 3020

FY2016 Procedures for Preparing and Entering a Proposal for Grant-in-Aid for Scientific Research (B) (Generative Research Fields) (New)

Techstream ECU Flash Reprogramming Procedure

ECE Computer Engineering I. Z. Aliyazicioglu. Electrical and Computer Engineering Department Cal Poly Pomona

Proceedings of the 2016 Winter Simulation Conference T. M. K. Roeder, P. I. Frazier, R. Szechtman, E. Zhou, T. Huschka, and S. E. Chick, eds.

Purpose/Goal: This course introduces the purpose and use of Smart Chart as a means of legal documentation.

ONLINE FINANCIAL STATEMENT INSTRUCTIONS

Targeted technology and data management solutions for observational studies

Adaptive Medical Workflow Management for a Context-Dependent Home Healthcare Assistance Service

Nursys e-notify. Nursys e-notify File and API Specifications Version 2.1.5

Connect Your Universe The complete solution for emergencies, events and every day

Surgery Scheduling Using Simulation with Arena

CYSTIC FIBROSIS FOUNDATION

Connect Your Universe

1st Grade Language Arts - Dunlap #323

CWE FB MC project. PLEF SG1, March 30 th 2012, Brussels

Cerner Registration QUICK GUIDE

DC & Verification January 2015

Pure Experts Portal. Quick Reference Guide

Installing and Configuring Siebel CRM Server Software on Linux

2013 Workplace and Equal Opportunity Survey of Active Duty Members. Nonresponse Bias Analysis Report

WHAT IS EQ-5D: INTRODUCTION:

Achieving a Patient Unit Record Within Electronic Record Systems

Operator Assignment and Routing Problems in Home Health Care Services

Copyright 2013 GE Multilin Inc. All rights reserved. Power Management Control System (PMCS) software revision EnerVista, Integrator, Digital

WarmWise Business Custom Rebates Program Manual

GLI Standards Composite Submission Requirements Initial Release, Version: 1.0 Release Date: August 25, 2011

Application Notes for IgeaCare ApoloDS with Avaya IP Office Issue 1.0

Identifying Research Questions

Benchmarking: Coding Productivity

How to Run the Student Detail Report and Campus Summary Report SMS 2.0 rev 4/2016

RESEARCH METHODOLOGY

Medication Safety Action Bundle Adverse Drug Events (ADE) All High-Risk Medication Safety

J Lab and Life Scs Vol.1, Iss. 2, September Knowledge and Practice of Staff Nurses about Nursing Care of Children with Fever

Quick-start Guide: Using the Chronic Illness Intensity Index Report

Automatically Recommending Healthy Living Programs to Patients with Chronic Diseases through Hybrid Content-Based and Collaborative Filtering

GUIDE TO PRODUCING DATA QUALITY REPORTS IN THE EBMT REGISTRY DATABASE USING ProMISe

These slides are to explain why the Trust is adopting the National Early Warning Score which is being adopted across all sectors of health care in

3M Health Information Systems. 3M Clinical Risk Groups: Measuring risk, managing care

IRBNet Instructions for Investigators

UNMC COLLEGE OF PHARMACY ADVANCED PHARMACY PRACTICE EXPERIENCE SYLLABUS (Revised November 2014)

Design, Implementation, Use, and Preliminary Evaluation of SEBASTIAN, a Standards-Based Web Service for Clinical Decision Support

ENRS: an Object Oriented Approach. By Faris Kateb

N-Order Rational Solutions to the Johnson Equation Depending on Parameters

Dispensing error rates and impact of interruptions in a simulation setting.

Studying Software Vulnerabilities

A Simulation and Optimization Approach to Scheduling Chemotherapy Appointments

Cognitive Triangle. Dec The Overall classification of this Briefing is UNCLASSIFIED

Overview. Overview 01:55 PM 09/06/2017

Copyright 2005, Robust Decisions Inc.

Planning Calendar Grade 5 Advanced Mathematics. Monday Tuesday Wednesday Thursday Friday 08/20 T1 Begins

SM Agent Technology For Human Operator Modelling

Course Instructor Karen Migl, Ph.D, RNC, WHNP-BC

Florida Statewide Regional Evacuation Study Program. Regional Evacuation Transportation Analysis

Development and verification of an agent-based model of opinion leadership

SIMULATION FOR OPTIMAL UTILIZATION OF HUMAN RESOURCES IN SURGICAL INSTRUMENTS DISTRIBUTION IN HOSPITALS

Scan of the Evidence Provisions in the Every Student Succeeds Act (ESSA) April 28, 2016

Context paper CWE Intraday

The Website Revealed

Using Epic Data for Research and QI. Mark Weiner, MD, FACP, FACMI Assistant Dean of Informatics Professor of Clinical Sciences

Transcription:

Active Automata Learning: From DFA to Interface Programs and Beyond or From Languages to Program Executions or (more technically) The Power of Counterexample Analysis Bernhard Steffen, Falk Howar, Malte Isberner TU Dortmund /CMU B. Steffen Summer School CPS 2014 1

Connect Scenario some service connector interrogate learn X try to use inform about new service and device learner CONNECT environment interrogate look for known models B. Steffen Summer School CPS 2014 2

Data-Dependent Control Value-independent Data Dependencies B. Steffen Summer School CPS 2014 3

How to Extend w. Data? Data is crucial for modeling Interface specifications relate data in input to data in subsequent output Communication protocols sequence numbers, identifiers,.. (External) Mapper-Based Data Treatment Explicit Data Modelling B. Steffen Summer School CPS 2014 4

Outline Background Manual Treatment of Data Automated Alphabet Abstraction Refinement Modelling Data Explicitly Conclusions B. Steffen Summer School CPS 2014 5 5

Computer/Telephony Integrated Systems LAN Switch Model-Generator Application-PCs ISDN Network Application- Server B. Steffen Summer School CPS 2014 6

The Concrete Scenario Test Coordinator Rational Robot Hipermon Hipermon HTTP CSTA II/III PCM Application PCs HTTP Hipermon Hipermon PCM Application Server B. Steffen Summer School CPS 2014 7

Means of Observation Hipermon Test Coordinator Hipermon ^ HTTP Rational Robot CSTA II/III PCM Application PCs HTTP Hipermon Hipermon PCM Application Server (small) learned models imposed major test suite optimizations B. Steffen Summer School CPS 2014 8

Moderated, Regular Extrapolation l Extrapolation Hypothesis Building beyond known facts l Regular Extrapolation-Universe: Extended Finite Automata l Moderated The Extrapolation Process requires targeted interaction Neither Correct nor Complete! B. Steffen Summer School CPS 2014 9

Models in our Scenario Abstract representation of the protocol-level behaviour. Abstraction typically concerns { invokeid = 58391, replace operation-value = 21 (cstaeventreport), {eventspecificinfo.....hookswitch symbolic names details l i no time stamps etc. {deviceid.dialingnumber = 500 hookswitchonhook= TRUE,... timestamp = 20001010095551 } }}} {obsevent deviceid = A1 switchonhook,... }} B. Steffen Summer School CPS 2014 10

Sketch of the Model Structure Models comprise state changes as well as UPN- and CSTA-Observations. Sys_Info obs_csta upnoffhook obs_csta obs_csta obs_csta Sys_Info { {deviceid = A1 hookswitchonhook,... }} device A1 display(line 1,...) LEDs: (1,on) (2,off)...... B. Steffen Summer School CPS 2014 11

Transitions Reaching Words Active Automata Learning OT Distinguishing Futures Lower Hypothesis Automaton Unknown System Closeness & Consistency Validation B. Steffen Summer School CPS 2014 12

Membership Queries OT 1 Abstract States Unknown System a 1 b 0 Not closed! Transition Relation B. Steffen Summer School CPS 2014 13

Closure & Consistency OT 1 b 0 Unknown System a 1 ba 0 bb 0 a Closed & Consistent b a,b B. Steffen Summer School CPS 2014 14

Equivalence Queries OT 1 b 0 a 1 Unknown System ab 1 a 1 a ba 0 bb 0 b a,b Counterexample: ab L B. Steffen Summer School CPS 2014 15

Counter Example-Based Extension OT 1 b 0 a 1 ab 1 a Unknown System ba 0 bb 0 aa 0 aba 0 abb 1 b a,b Counterexample: ab L B. Steffen Summer School CPS 2014 16

Closure & Consistency OT 1 b 0 a 1 ab 1 ba 0 bb 0 Not consistent: row ( ) = row (a), but row ( a) row (aa) Unknown System aa 0 aba 0 abb 1 New Column: a B. Steffen Summer School CPS 2014 17

Next Iteration OT a 1 1 b 0 0 a 1 0 Unknown System ab 1 0 ba 0 0 bb 0 0 Closed & Consistent aa 0 0 aba 0 0 abb 1 0 B. Steffen Summer School CPS 2014 18

Next Iteration OT a 1 1 b 0 0 a 1 0 ab 1 0 ba 0 0 bb 0 0 aa 0 0 aba 0 0 abb 1 0 b a a,b a Unknown System b Finished! B. Steffen Summer School CPS 2014 19

Active automata learning: L* a Σ={a,b} b b a a a b b aba L? MQ-Oracle no a a,b b? no, bb L! EQ-Oracle B. Steffen Summer School CPS 2014 20

Summary of L* algorithm L* infers Finite State Machine from queries: 1. Pose membership queries until saturation 2. Construct Hypothesis from obtained information 3. Pose equivalence query 4. if no look at counterexample and goto 1 5. else return Hypothesis end Has been used to learn large automata ( 100 kstates) Adapted for Mealy Machines [Niese et al. 2003] and for Interface Automata [Aarts et al. 2010] Efficient Tool: LearnLib [TUDortmund] B. Steffen Summer School CPS 2014 21

Summary of L* algorithm L* infers Finite State Machine from queries: 1. Pose membership queries until saturation 2. Construct Hypothesis from obtained information 3. Pose equivalence query 4. if no look at counterexample and goto 1 5. else return Hypothesis end Has been used to learn large automata ( 100 kstates) Adapted for Mealy Machines [Niese et al. 2003] and for Interface Automata [Aarts et al. 2010] Efficient Tool: LearnLib [TUDortmund] B. Steffen Summer School CPS 2014 22

Analysis of Counterexamples I one essential suffix All prefixes of counterexample a b bb ε 0 0 a 1 1 b 1 1 bb 0 0 bbb 0 0 aa 1 1 ab 1 1 ba 0 0 B. Steffen Summer School CPS 2014 23

Analysis of Counterexamples I one essential suffix All prefixes of counterexample a b bb ε 0 0 a 1 1 b 1 1 bb 0 0 bbb 0 0 aa 1 1 ab 1 1 ba 0 0 Essential suffix B. Steffen Summer School CPS 2014 24

Effect: Reduced Observation Table Rivest and Shapire: Analyze counterexample separately (not in the table) Only add one essential suffix (i.e., witness), as column label to the table Consequence: Guaranteed Consistency! Improved worst case complexity BUT: Hypothesis Automata are no longer guaranteed to be minimal! (cf. Pnueli / Mahler s criticism) B. Steffen Summer School CPS 2014 25

Outline Background Manual Treatment of Data Automated Alphabet Abstraction Refinement Modelling Data Explicitly Conclusions B. Steffen Summer School CPS 2014 26 26

Simple Stack finite capacity B. Steffen Summer School CPS 2014 27

Mappers B. Steffen Summer School CPS 2014 28

Learning the stack as a language push, pop L, L stack.push(1) stack.pop() true, false, null, 1 B. Steffen Summer School CPS 2014 29

Introducing outputs: Mealy machines push, pop OK, NOK, null, 1 stack.push(1) stack.pop() true, false, null, 1 B. Steffen Summer School CPS 2014 30

Introducing outputs: Mealy machines push1, push2, pop stack.push(1) Stack.push(2) stack.pop() OK, NOK, null, 1, 2 true, false, null, 1, 2 B. Steffen Summer School CPS 2014 31

Outline Background Manual Treatment of Data Automated Alphabet Abstraction Refinement Modelling Data Explicitly Conclusions B. Steffen Summer School CPS 2014 32 32

Automated Alphabet Abstraction Refinement Learning setup in Practice <presence type= /> Available <iq type= result /> Test-driver Static alphabet abstraction OK LearnLib B. Steffen Summer School CPS 2014 33

Automated Alphabet Abstraction Refinement <presence type= /> Available(type=avail ) <iq type= result /> Test-driver OK LearnLib Learning relative to a given representation system Available Available(type=avail ) Available Available(type=unavail ) Non-det. during EQ Test CEGAR teacher <presence type= /> Available <iq type= result /> Test-driver Static alphabet abstraction OK LearnLib B. Steffen Summer School CPS 2014 34

The Mod-k Stack finite set of outputs, e.g.: odd / even push, push, pop OK, NOK, null, odd, even stack.push(51); stack.push(2012); stack.pop() true, false, null, 51, 2012 B. Steffen Summer School CPS 2014 35

The Mod-k Stack finite set of outputs, e.g.: odd / even push push pop / odd push push pop / even push, push, pop OK, NOK, null, odd, even stack.push(51); stack.push(2012); stack.pop() true, false, null, 51, 2012 B. Steffen Summer School CPS 2014 36

Counter Examples and Witnesses c 1 c 2 c 3 c 4 c 5 c 6 γ(α(c 1 )) γ(α(c 2 )) γ(α(c 3 )) γ(α(c 4 )) γ(α(c 5 )) γ(α(c 6 )) Bern hard B. Steffen Summer School CPS 2014 37

Counter Examples and Witnesses c 1 c 2 c 3 c 4 c 5 c 6 c 5 c 6 γ(α(c 1 )) γ(α(c 2 )) γ(α(c 3 )) c 4 γ(α(c 4 )) c 5 c 6 γ(α(c 1 )) γ(α(c 2 )) γ(α(c 3 )) γ(α(c 4 )) γ(α(c 5 )) γ(α(c 6 )) Bern hard B. Steffen Summer School CPS 2014 38

Counter Examples and Witnesses c 5 c 6 γ(α(c 1 )) γ(α(c 2 )) γ(α(c 3 )) c 4 d p γ(α(c 4 )) c 5 c 6 Separating pattern p c 4 d state representation future B. Steffen Summer School CPS 2014 39

Alphabet Abstraction Refinement Σ C Σ C \ α old (c) c push γ(α(p)) x d = γ(α(p)) c d α old (c) γ old (α old (c)) push B. Steffen Summer School CPS 2014 40

Case Study Biometric Passport [Aarts et. al, 2010] 262 Concrete symbols, 256 x readfile(i). - 1 initial abstract symbols - 8 alphabet refinements, to split readfile - 9 final abstract symbols read file(i) aggregated according to the required authentication Bernhard Steffen VMCAI 2011 @ Austin, Texas B. Steffen Summer School CPS 2014 41

Outline Background Manual Treatment of Data Automated Alphabet Abstraction Refinement Modelling Data Explicitly Conclusions B. Steffen Summer School CPS 2014 42 42

How to Extend with Data? Data is crucial for modeling Interface specifications relate data in input to data in subsequent output Communication protocols sequence numbers, identifiers,.. Extend automaton model Data parameters in actions State variables to remember parameter values How to extend the learning techniques? 43 B. Steffen Summer School CPS 2014 43

Register Automata B. Steffen Summer School CPS 2014 44

Relation: Data Languages B. Steffen Summer School CPS 2014 45

The Impact of Register Automata Query: push(p 1 )/OK push(p 2 )/OK pop()/p 2 push(p)/ok, pop()/o(p), L, L stack.push(51); stack.push(2012); stack.pop() true, false, null, 51, 2012 B. Steffen Summer School CPS 2014 46

A Data-Aware Nerode-Relation B. Steffen Summer School CPS 2014 47

Reusing structure of L* B. Steffen Summer School CPS 2014 48

Analysis of Counterexamples III Counterexample Analysis for inferring New locations New registers New transitions B. Steffen Summer School CPS 2014 50 50

CE: New location B. Steffen Summer School CPS 2014 51

CE: New location B. Steffen Summer School CPS 2014 52

CE: New location B. Steffen Summer School CPS 2014 53

CE: New location B. Steffen Summer School CPS 2014 54

CE: New location B. Steffen Summer School CPS 2014 55

CE: New location B. Steffen Summer School CPS 2014 56

CE: New register B. Steffen Summer School CPS 2014 57

CE: New register B. Steffen Summer School CPS 2014 58

CE: New register B. Steffen Summer School CPS 2014 59

CE: New register B. Steffen Summer School CPS 2014 60

CE: New transition B. Steffen Summer School CPS 2014 61

CE: New transition B. Steffen Summer School CPS 2014 62

CE: New transition B. Steffen Summer School CPS 2014 63

CE: New transition B. Steffen Summer School CPS 2014 64

Experimental Evaluation B. Steffen Summer School CPS 2014 65

Modeling Output explicitly: RMMs RA RMM is in language Example: Stack of capacity 3 RA: output encoded as guarded transition RMM: output with data for transitions leads to output B. Steffen Summer School CPS 2014 66

RMM: Explicit Output B. Steffen Summer School CPS 2014 67

RMM: Explicit Output Query: push(p 1 )push(p 2 )pop() / p 2 push(p), pop() OK, NOK, null, p stack.push(51) stack.push(2012) stack.pop() true, false, null, 51, 2012 B. Steffen Summer School CPS 2014 68

Inferring RMMs Example: Nested stack of capacity 16 RMM: 781 locations, 45k MQ, 9 EQ, 20 sec. Mealy, D =4: > 10 9 states B. Steffen Summer School CPS 2014 69

Outline Background Manual Treatment of Data Automated Alphabet Abstraction Refinement Modelling Data Explicitly Conclusions B. Steffen Summer School CPS 2014 70 70

Conclusions and Perspectives Main Practical Challenges are Search for Counterexamples Counterexample Analysis Question: How much can counter examples tell about a system? We have seen scenarios for (beside the classical locations), Optimal Alphabet Abstraction Optimal Register Allocation Optimal Transition Functions We have seen how to get From DFA to Interface Programs or From Languages to Program Executions B. Steffen Summer School CPS 2014 71 71

Conclusions and Perspectives Beyond: Investigation of language extensions Extended Guards Actions with Effect Procedural Structure? Hybrid Approaches and Case Studies Experimental Evaluation and Performance Analysis The RERS Greybox Challenge 2014 B. Steffen Summer School CPS 2014 72 72