Topic: Software Model Checking via Counter-Example Guided Abstraction Refinement. Having a BLAST with SLAM. Combining Strengths. SLAM Overview SLAM
|
|
- Doreen Victoria Smith
- 5 years ago
- Views:
Transcription
1 Hving BLAST with SLAM Topic: Softwre Model Checking vi Counter-Exmple Guided Abstrction Refinement There re esily two dozen SLAM/BLAST/MAGIC ppers; I will skim. # # Theorem Proving Combining Strengths - Need loop invrints (will find utomticlly) + Behviors encoded in logic (used to refine bstrction) + Theorem provers (used to compute successors, refine bstrction) SLAM Progrm Anlysis - Imprecise (will be precise) + Abstrction (will shrink the stte spce we must explore) Model Checking - Finite-stte model, stte explosion (will find smll good model) + Stte Spce Explortion (used to get pth sensitive nlysis) + Counterexmples (used to find relevnt fcts, refine bstrction) # SLAM Overview INPUT: Progrm nd Specifiction Stndrd C Progrm (pointers, procedures) Specifiction = Prtil Correctness Given s finite stte mchine (typestte) I use s correctly not I m webserver OUTPUT: Verified or Counterexmple Verified = progrm does not violte spec Cn come with proof! Counterexmple = concrete bug instnce A pth through the progrm tht violtes the spec # Property : Double Locking Property : Drop Root Privilege un un An ttempt to re-cuire n cuired or relese relesed will cuse ded. [Chen-Den-Wgner 0] Clls to nd un must lternte. # User pplictions must not run with root privilege When execv is clled, must hve suid 0 #6
2 Property : IRP Hndler Exmple SLAM Input MPR strt NP SKIP CllDriver SKIP Skip CllDriver IPC MPR synch NP prop CllDriver PPC MPR completion Complete CllDriver completion MPR reuest DC not pending returned no prop synch completion CllDriver IRP ccessible N/A N/A strt P Mrk Pending CllDriver SKIP SKIP Skip CllDriver IPC MPR synch NP prop CllDriver PPC MPR completion Complete CllDriver completion MPR reuest DC MPRnot pending returned return child sttus return not Pend return Pending : do{ = ; : if (!= NULL){ : ->dt = ; un ++; : while(!= ); : un (); return; un un no prop completion N/A CllDriver [Fhndrich] #7 #8 SLAM in Nutshell SLAM(Progrm p, Spec s) = Progrm = incorporte_spec(p,s); PredicteSet bs = { ; while true do BoolenProgrm b = bstrct(,bs); mtch model_check(b) with No_Error printf( no bug ); exit(0) Counterexmple(c) if is_vlid_pth(c, p) then printf( rel bug ); exit() else bs bs _preds(c) done // progrm nme // slic // cbp // bebop // ton // ton #9 : : do{ = ; : : if if ( (!=!= NULL){ : : ->dt = ; un ++; : : while(!=!= ); : : un (); return; un 0 un ERR Incorporting Specs : do{ if L= goto ERR; else L=; = ; : if (!= NULL){ : ->dt = ; if L=0 goto ERR; else L=0; ++; : while(!= ); : if L=0 goto ERR; else L=0; Originl progrm return; violtes spec iff ERR: bort(); progrm reches ERR #0 Progrm As Lbeled Trnsition System Stte Trnsition The Sfety Verifiction Problem Error (e.g., sttes with PC = Err) 0x : : un ++; : Exmple : : do do { NULL){ : : ->dt ->dt = ; ; un : : while(!=!= ); ); : : un un (); (); return; return; 6 0x # Initil Sfe Sttes (never rech Error) Is there pth from n initil to n error stte Problem: Infinite stte grph (=, =, = ) Solution : Set of sttes logicl formul #
3 Representing [Sets of Sttes] s Formuls [F] sttes stisfying F {s s F [F ] [F ] F F [F ] [F ] F F [F] F FO fml over prog. vrs F [F ] [F ] F F i.e. F F unstisfible # Ide : Predicte Abstrction Predictes on progrm stte: (i.e., =true) = Sttes stisfying sme predictes re euivlent Merged into one bstrct stte #bstrct sttes is finite Thus model-checking the bstrction will be fesible! # Abstrct Sttes nd Trnsitions Abstrction Stte Stte c c 0x : : un ++; : 6 0x 0x : : un ++; : 6 0x = Theorem Prover = # Existentil Lifting (i.e., A A iff c A. c A. c c ) A A Theorem Prover = = #6 Abstrction Anlyze Abstrction Stte 0x : : un ++; : 6 0x Anlyze finite grph Over Approximte: Sfe System Sfe No flse negtives = = Problem Spurious counterexmples #7 #8
4 Ide : Counterex.-Guided Refinement Ide : Counterex.-Guided Refinement Solution Use spurious counterexmples to refine bstrction! Solution Use spurious counterexmples to refine bstrction. Add predictes to distinguish sttes cross cut. Imprecision Build refined due bstrction to merge #9 #0 Itertive Abstrction-Refinement Problem: Abstrction is Expensive Solution Use spurious counterexmples to refine bstrction [Kurshn et l 9] [Clrke et l 00] [Bll-Rjmni 0]. Add predictes to distinguish sttes cross cut. Build refined bstrction -elimintes counterexmple. Repet serch Untill rel counterexmple or system proved sfe Problem #bstrct sttes = #predictes Exponentil Thm. Prover ueries Rechble Observe Frction of stte spce rechble #Preds ~ 00 s, #Sttes ~ 00, #Rech ~ 000 s # # Solution: Only Abstrct Rechble Sttes Solution: Don t Refine Error-Free Regions Sfe Error Free Problem #bstrct sttes = #predictes Exponentil Thm. Prover ueries Solution Build bstrction during serch Problem #bstrct sttes = #predictes Exponentil Thm. Prover ueries Solution Don t refine error-free regions # #
5 Key Ide: Key Ide: Initil Unroll Abstrction. Pick tree-node (=bs. stte). Add children (=bs. successors). On re-visiting bs. stte, cut-off Initil Unroll Abstrction. Pick tree-node (=bs. stte). Add children (=bs. successors). On re-visiting bs. stte, cut-off 6 Find min infesible suffix - Lern predictes - Rebuild subtree with preds. 7 Find min infesible suffix - Lern predictes - Rebuild subtree with preds. Error Free # #6 Key Ide: Build-nd-Serch Initil Unroll. Pick tree-node (=bs. stte). Add children (=bs. successors). On re-visiting bs. stte, cut-off Find min spurious suffix - Lern predictes - Rebuild subtree with preds. : : do{ do{ : : ->dt = ; un :while(!=!= ); Error Free S: Only Abstrct Rechble Sttes S: Don t refine error-free regions #7 Predictes: #8 Build-nd-Serch Build-nd-Serch : : do{ do{ : : ->dt = ; un :while(!=!= ); () = =->next : : do{ do{ : : ->dt = ; un :while(!=!= ); [!=NULL] Predictes: #9 Predictes: #0
6 Build-nd-Serch Build-nd-Serch : : do{ do{ : : ->dt = ; un :while(!=!= ); ->dt = un() ++ : : do{ do{ : : ->dt = ; un :while(!=!= ); [==] Predictes: # Predictes: # Build-nd-Serch Anlyze Counterexmple : : do{ do{ : : ->dt = ; un :while(!=!= ); : : do{ do{ : : ->dt = ; un :while(!=!= ); () = =->next [!=NULL] ->dt = un() ++ [==] un() un() Predictes: # Predictes: # Anlyze Counterexmple Repet Build-nd-Serch : : do{ do{ : : ->dt = ; un :while(!=!= ); = ++ : : do{ do{ : : ->dt = ; un :while(!=!= ); Predictes: [==] Inconsistent == # #6 6
7 Repet Build-nd-Serch Repet Build-nd-Serch : : do{ do{ : : ->dt = ; un :while(!=!= );, == () = =->next : : do{ do{ : : ->dt = ; un :while(!=!= );, ==, ==, = ->dt = un() ++ #7 #8 Repet Build-nd-Serch Repet Build-nd-Serch : : do{ do{ : : ->dt = ; un :while(!=!= );, ==, ==, = [==] : : do{ do{ : : ->dt = ; un :while(!=!= );, ==, ==, = [!=], == #9 #0 Repet Build-nd-Serch : : do{ do{ : : ->dt = ; un :while(!=!= );, ==, ==, =, ==, ==, = # Key Ide: Error Free Initil Unroll. Pick tree-node (=bs. stte). Add children (=bs. successors). On re-visiting bs. stte, cut-off Find min spurious suffix - Lern predictes - Rebuild subtree with preds. S: Only Abstrct Rechble Sttes S: Don t refine error-free regions # 7
8 Two hndwves Two hndwves : : do{ do{ : : ->dt = ; un :while(!=!= );, ==, ==, =, = : : do{ do{ : : ->dt = ; Q. un How to compute, == successors :while(!=!= );, == ->dt = un(), = ++, =, ==, ==, == #, == # Two hndwves Two hndwves : : do{ do{ : : ->dt = ; Q. un How to compute, == successors :while(!=!= );, ==, =, = : : do{ do{ : : ->dt = ; Q. un How to compute, == successors :while(!=!= );, ==, =, = Q. How to find predictes, == Refinement, == Refinement, ==, == # #6 Wekest Preconditions Wekest Preconditions WP(P,OP) Wekest formul P s.t. if P is true before OP then P is true fter OP OP [WP(P, OP)] [P] WP(P,OP) Wekest formul P s.t. if P is true before OP then P is true fter OP OP [WP(P, OP)] [P] Assign x=e P[e/x] P + = = =+ #7 #8 8
9 How to compute successor How to compute successor : : do{ do{ : : ->dt = ; un :while(!=!= );, ==, = F OP For ech p Check if p is true (or flse) fter OP Q: When is p true fter OP - If WP(p, OP) is true before OP! - We know F is true before OP - Thm. Pvr. Query: F WP(p, OP) : : do{ do{ : : ->dt = ; un :while(!=!= ); 7 7, == F OP For ech p Check if p is true (or flse) fter OP Q: When is p flse fter OP - If WP( p, OP) is true before OP! - We know F is true before OP - Thm. Pvr. Query: F WP( p, OP) #9 #0 How to compute successor Advnced SLAM/BLAST : : do{ do{ : : ->dt = ; un :while(!=!= ); Predicte: == True Flse, ==, = F OP For ech p Check if p is true (or flse) fter OP Q: When is p flse fter OP - If WP( p, OP) is true before OP! - We know F is true before OP (, ==) ( + = ) (, ==) ( + ) - Thm. Pvr. Query: F WP( p, OP) NO YES Too Mny Predictes - Use Predictes Loclly Counter-Exmples - Crig Interpolnts Procedures - Summries Concurrency - Thred-Context Resoning # # SLAM Summry ) Instrument Progrm With Sfety Policy ) Predictes = { ) Abstrct Progrm With Predictes ) Use Wekest Preconditions nd Theorem Prover Clls ) Model-Check Resulting Boolen Progrm ) Use Symbolic Model Checking ) Error Stte Not Rechble ) Originl Progrm Hs No Errors: Done! 6) Check Counterexmple Fesibility ) Use Symbolic Execution 7) Counterexmple Is Fesible ) Rel Bug: Done! 8) Counterexmple Is Not Fesible ) Find New Predictes (Refine Abstrction) ) Goto Line # Optionl: SLAM Wekness : F() { : int x=0; : : do x++; : while (x 88); 6: if (x < 77) 7: 8: Preds = {, Pth = 67 [x=0, x+ 88, x+<77] Preds = {x=0, Pth = 67 [x=0, x+ 88, x+<77] Preds = {x=0, x+=88 Pth = 67 [x=0, x+ 88, x+<77] Preds = {x=0,x+=88,x+=88 Pth = 67 Result: the predictes count the loop itertions # 9
10 Homework Project Sttus Updte Project Due Tue Apr You hve ~ dys to complete it. Need help Stop by my office or send emil. # 0
Having a BLAST with SLAM
Having a BLAST with SLAM Meeting, CSCI 555, Fall 20 Announcements Homework 0 due Sat Questions? Move Tue office hours to -5pm 2 Software Model Checking via Counterexample Guided Abstraction Refinement
More informationHaving a BLAST with SLAM
Having a BLAST with SLAM # #2 Topic: Software Model Checking via Counter-Example Guided Abstraction Refinement There are easily two dozen SLAM/BLAST/MAGIC papers; I will skim. #3 SLAM Overview INPUT: Program
More informationHaving a BLAST with SLAM
Having a BLAST with SLAM # #2 Topic: Software Model Checking via Counter-Example Guided Abstraction Refinement There are easily two dozen SLAM/BLAST/MAGIC papers; I will skim. #3 SLAM Overview INPUT: Program
More informationHaving a BLAST with SLAM
Announcements Having a BLAST with SLAM Meetings -, CSCI 7, Fall 00 Moodle problems? Blog problems? Looked at the syllabus on the website? in program analysis Microsoft uses and distributes the Static Driver
More informationScalable Program Verification by Lazy Abstraction
Scalable Program Verification by Lazy Abstraction Ranjit Jhala U.C. Berkeley ars, July, 997 Lost contact due to real-time priority inversion bug ars, December, 999 Crashed due to uninitialized variable
More informationSoftware Model Checking with Abstraction Refinement
Software Model Checking with Abstraction Refinement Computer Science and Artificial Intelligence Laboratory MIT Armando Solar-Lezama With slides from Thomas Henzinger, Ranjit Jhala and Rupak Majumdar.
More informationCS321 Languages and Compiler Design I. Winter 2012 Lecture 5
CS321 Lnguges nd Compiler Design I Winter 2012 Lecture 5 1 FINITE AUTOMATA A non-deterministic finite utomton (NFA) consists of: An input lphet Σ, e.g. Σ =,. A set of sttes S, e.g. S = {1, 3, 5, 7, 11,
More informationSolving Problems by Searching. CS 486/686: Introduction to Artificial Intelligence Winter 2016
Solving Prolems y Serching CS 486/686: Introduction to Artificil Intelligence Winter 2016 1 Introduction Serch ws one of the first topics studied in AI - Newell nd Simon (1961) Generl Prolem Solver Centrl
More informationCS 510/13. Predicate Abstraction
CS 50/3 Predicate Abstraction Predicate Abstraction Extract a finite state model from an infinite state system Used to prove assertions or safety properties Successfully applied for verification of C programs
More informationSolving Problems by Searching. CS 486/686: Introduction to Artificial Intelligence
Solving Prolems y Serching CS 486/686: Introduction to Artificil Intelligence 1 Introduction Serch ws one of the first topics studied in AI - Newell nd Simon (1961) Generl Prolem Solver Centrl component
More informationToday. Search Problems. Uninformed Search Methods. Depth-First Search Breadth-First Search Uniform-Cost Search
Uninformed Serch [These slides were creted by Dn Klein nd Pieter Abbeel for CS188 Intro to AI t UC Berkeley. All CS188 mterils re vilble t http://i.berkeley.edu.] Tody Serch Problems Uninformed Serch Methods
More informationCSCI 446: Artificial Intelligence
CSCI 446: Artificil Intelligence Serch Instructor: Michele Vn Dyne [These slides were creted by Dn Klein nd Pieter Abbeel for CS188 Intro to AI t UC Berkeley. All CS188 mterils re vilble t http://i.berkeley.edu.]
More informationA New Learning Algorithm for the MAXQ Hierarchical Reinforcement Learning Method
A New Lerning Algorithm for the MAXQ Hierrchicl Reinforcement Lerning Method Frzneh Mirzzdeh 1, Bbk Behsz 2, nd Hmid Beigy 1 1 Deprtment of Computer Engineering, Shrif University of Technology, Tehrn,
More informationCS201 Discussion 10 DRAWTREE + TRIES
CS201 Discussion 10 DRAWTREE + TRIES DrwTree First instinct: recursion As very generic structure, we could tckle this problem s follows: drw(): Find the root drw(root) drw(root): Write the line for the
More informationDefinition of Regular Expression
Definition of Regulr Expression After the definition of the string nd lnguges, we re redy to descrie regulr expressions, the nottion we shll use to define the clss of lnguges known s regulr sets. Recll
More informationCS412/413. Introduction to Compilers Tim Teitelbaum. Lecture 4: Lexical Analyzers 28 Jan 08
CS412/413 Introduction to Compilers Tim Teitelum Lecture 4: Lexicl Anlyzers 28 Jn 08 Outline DFA stte minimiztion Lexicl nlyzers Automting lexicl nlysis Jlex lexicl nlyzer genertor CS 412/413 Spring 2008
More informationΕΠΛ323 - Θεωρία και Πρακτική Μεταγλωττιστών
ΕΠΛ323 - Θωρία και Πρακτική Μταγλωττιστών Lecture 3 Lexicl Anlysis Elis Athnsopoulos elisthn@cs.ucy.c.cy Recognition of Tokens if expressions nd reltionl opertors if è if then è then else è else relop
More informationAn introduction to model checking
An introduction to model checking Slide 1 University of Albert Edmonton July 3rd, 2002 Guy Trembly Dépt d informtique UQAM Outline Wht re forml specifiction nd verifiction methods? Slide 2 Wht is model
More informationCSEP 573 Artificial Intelligence Winter 2016
CSEP 573 Artificil Intelligence Winter 2016 Luke Zettlemoyer Problem Spces nd Serch slides from Dn Klein, Sturt Russell, Andrew Moore, Dn Weld, Pieter Abbeel, Ali Frhdi Outline Agents tht Pln Ahed Serch
More informationLING/C SC/PSYC 438/538. Lecture 21 Sandiway Fong
LING/C SC/PSYC 438/538 Lecture 21 Sndiwy Fong Tody's Topics Homework 8 Review Optionl Homework 9 (mke up on Homework 7) Homework 8 Review Question1: write Prolog regulr grmmr for the following lnguge:
More informationFig.25: the Role of LEX
The Lnguge for Specifying Lexicl Anlyzer We shll now study how to uild lexicl nlyzer from specifiction of tokens in the form of list of regulr expressions The discussion centers round the design of n existing
More informationSoftware Model Checking. Xiangyu Zhang
Software Model Checking Xiangyu Zhang Symbolic Software Model Checking CS510 S o f t w a r e E n g i n e e r i n g Symbolic analysis explicitly explores individual paths, encodes and resolves path conditions
More informationIn the last lecture, we discussed how valid tokens may be specified by regular expressions.
LECTURE 5 Scnning SYNTAX ANALYSIS We know from our previous lectures tht the process of verifying the syntx of the progrm is performed in two stges: Scnning: Identifying nd verifying tokens in progrm.
More informationTheory of Computation CSE 105
$ $ $ Theory of Computtion CSE 105 Regulr Lnguges Study Guide nd Homework I Homework I: Solutions to the following problems should be turned in clss on July 1, 1999. Instructions: Write your nswers clerly
More informationIf you are at the university, either physically or via the VPN, you can download the chapters of this book as PDFs.
Lecture 5 Wlks, Trils, Pths nd Connectedness Reding: Some of the mteril in this lecture comes from Section 1.2 of Dieter Jungnickel (2008), Grphs, Networks nd Algorithms, 3rd edition, which is ville online
More informationLexical Analysis. Amitabha Sanyal. (www.cse.iitb.ac.in/ as) Department of Computer Science and Engineering, Indian Institute of Technology, Bombay
Lexicl Anlysis Amith Snyl (www.cse.iit.c.in/ s) Deprtment of Computer Science nd Engineering, Indin Institute of Technology, Bomy Septemer 27 College of Engineering, Pune Lexicl Anlysis: 2/6 Recp The input
More informationMid-term exam. Scores. Fall term 2012 KAIST EE209 Programming Structures for EE. Thursday Oct 25, Student's name: Student ID:
Fll term 2012 KAIST EE209 Progrmming Structures for EE Mid-term exm Thursdy Oct 25, 2012 Student's nme: Student ID: The exm is closed book nd notes. Red the questions crefully nd focus your nswers on wht
More informationControl-Flow Analysis and Loop Detection
! Control-Flow Anlysis nd Loop Detection!Lst time! PRE!Tody! Control-flow nlysis! Loops! Identifying loops using domintors! Reducibility! Using loop identifiction to identify induction vribles CS553 Lecture
More informationCSc 453. Compilers and Systems Software. 4 : Lexical Analysis II. Department of Computer Science University of Arizona
CSc 453 Compilers nd Systems Softwre 4 : Lexicl Anlysis II Deprtment of Computer Science University of Arizon collerg@gmil.com Copyright c 2009 Christin Collerg Implementing Automt NFAs nd DFAs cn e hrd-coded
More informationCSCI 104. Rafael Ferreira da Silva. Slides adapted from: Mark Redekopp and David Kempe
CSCI 0 fel Ferreir d Silv rfsilv@isi.edu Slides dpted from: Mrk edekopp nd Dvid Kempe LOG STUCTUED MEGE TEES Series Summtion eview Let n = + + + + k $ = #%& #. Wht is n? n = k+ - Wht is log () + log ()
More informationExample: Source Code. Lexical Analysis. The Lexical Structure. Tokens. What do we really care here? A Sample Toy Program:
Lexicl Anlysis Red source progrm nd produce list of tokens ( liner nlysis) source progrm The lexicl structure is specified using regulr expressions Other secondry tsks: (1) get rid of white spces (e.g.,
More informationHow to Design REST API? Written Date : March 23, 2015
Visul Prdigm How Design REST API? Turil How Design REST API? Written Dte : Mrch 23, 2015 REpresenttionl Stte Trnsfer, n rchitecturl style tht cn be used in building networked pplictions, is becoming incresingly
More informationLexical Analysis: Constructing a Scanner from Regular Expressions
Lexicl Anlysis: Constructing Scnner from Regulr Expressions Gol Show how to construct FA to recognize ny RE This Lecture Convert RE to n nondeterministic finite utomton (NFA) Use Thompson s construction
More informationGraph Exploration: Taking the User into the Loop
Grph Explortion: Tking the User into the Loop Dvide Mottin, Anj Jentzsch, Emmnuel Müller Hsso Plttner Institute, Potsdm, Germny 2016/10/24 CIKM2016, Indinpolis, US Who we re Dvide Mottin grph mining, novel
More informationIntroduction to Integration
Introduction to Integrtion Definite integrls of piecewise constnt functions A constnt function is function of the form Integrtion is two things t the sme time: A form of summtion. The opposite of differentition.
More informationpdfapilot Server 2 Manual
pdfpilot Server 2 Mnul 2011 by clls softwre gmbh Schönhuser Allee 6/7 D 10119 Berlin Germny info@cllssoftwre.com www.cllssoftwre.com Mnul clls pdfpilot Server 2 Pge 2 clls pdfpilot Server 2 Mnul Lst modified:
More informationSome Thoughts on Grad School. Undergraduate Compilers Review and Intro to MJC. Structure of a Typical Compiler. Lexing and Parsing
Undergrdute Compilers Review nd Intro to MJC Announcements Miling list is in full swing Tody Some thoughts on grd school Finish prsing Semntic nlysis Visitor pttern for bstrct syntx trees Some Thoughts
More informationImplementing Automata. CSc 453. Compilers and Systems Software. 4 : Lexical Analysis II. Department of Computer Science University of Arizona
Implementing utomt Sc 5 ompilers nd Systems Softwre : Lexicl nlysis II Deprtment of omputer Science University of rizon collerg@gmil.com opyright c 009 hristin ollerg NFs nd DFs cn e hrd-coded using this
More informationTopic 2: Lexing and Flexing
Topic 2: Lexing nd Flexing COS 320 Compiling Techniques Princeton University Spring 2016 Lennrt Beringer 1 2 The Compiler Lexicl Anlysis Gol: rek strem of ASCII chrcters (source/input) into sequence of
More informationLexical analysis, scanners. Construction of a scanner
Lexicl nlysis scnners (NB. Pges 4-5 re for those who need to refresh their knowledge of DFAs nd NFAs. These re not presented during the lectures) Construction of scnner Tools: stte utomt nd trnsition digrms.
More informationCOMP 423 lecture 11 Jan. 28, 2008
COMP 423 lecture 11 Jn. 28, 2008 Up to now, we hve looked t how some symols in n lphet occur more frequently thn others nd how we cn sve its y using code such tht the codewords for more frequently occuring
More informationCS553 Lecture Introduction to Data-flow Analysis 1
! Ide Introdution to Dt-flow nlysis!lst Time! Implementing Mrk nd Sweep GC!Tody! Control flow grphs! Liveness nlysis! Register llotion CS553 Leture Introdution to Dt-flow Anlysis 1 Dt-flow Anlysis! Dt-flow
More informationΕΠΛ323 - Θεωρία και Πρακτική Μεταγλωττιστών. Lecture 3b Lexical Analysis Elias Athanasopoulos
ΕΠΛ323 - Θωρία και Πρακτική Μταγλωττιστών Lecture 3 Lexicl Anlysis Elis Athnsopoulos elisthn@cs.ucy.c.cy RecogniNon of Tokens if expressions nd relnonl opertors if è if then è then else è else relop è
More informationSynchronizability of Conversations Among Web Services
1 Synchronizbility of Converstions Among Web Services Xing Fu, Tevfik Bultn, Jinwen Su Abstrct We present frmework for nlyzing interctions mong web services tht communicte with synchronous messges. We
More informationSOME EXAMPLES OF SUBDIVISION OF SMALL CATEGORIES
SOME EXAMPLES OF SUBDIVISION OF SMALL CATEGORIES MARCELLO DELGADO Abstrct. The purpose of this pper is to build up the bsic conceptul frmework nd underlying motivtions tht will llow us to understnd ctegoricl
More informationCOMMON HALF YEARLY EXAMINATION DECEMBER 2018
li.net i.net li.net i.net li.net i.net li.net i.net li.net i.net li.net i.net li.net i.net li.net i.net li.net i.net.pds.pds COMMON HALF YEARLY EXAMINATION DECEMBER 2018 STD : XI SUBJECT: COMPUTER SCIENCE
More informationRegular Expression Matching with Multi-Strings and Intervals. Philip Bille Mikkel Thorup
Regulr Expression Mtching with Multi-Strings nd Intervls Philip Bille Mikkel Thorup Outline Definition Applictions Previous work Two new problems: Multi-strings nd chrcter clss intervls Algorithms Thompson
More informationDr. D.M. Akbar Hussain
Dr. D.M. Akr Hussin Lexicl Anlysis. Bsic Ide: Red the source code nd generte tokens, it is similr wht humns will do to red in; just tking on the input nd reking it down in pieces. Ech token is sequence
More informationFrom Indexing Data Structures to de Bruijn Graphs
From Indexing Dt Structures to de Bruijn Grphs Bstien Czux, Thierry Lecroq, Eric Rivls LIRMM & IBC, Montpellier - LITIS Rouen June 1, 201 Czux, Lecroq, Rivls (LIRMM) Generlized Suffix Tree & DBG June 1,
More informationWhat are suffix trees?
Suffix Trees 1 Wht re suffix trees? Allow lgorithm designers to store very lrge mount of informtion out strings while still keeping within liner spce Allow users to serch for new strings in the originl
More informationCoversheet. Publication metadata
Coversheet This is the ccepted mnuscript (post-print version) of the rticle. Contentwise, the ccepted mnuscript version is identicl to the finl published version, but there my be differences in typogrphy
More informationCS311H: Discrete Mathematics. Graph Theory IV. A Non-planar Graph. Regions of a Planar Graph. Euler s Formula. Instructor: Işıl Dillig
CS311H: Discrete Mthemtics Grph Theory IV Instructor: Işıl Dillig Instructor: Işıl Dillig, CS311H: Discrete Mthemtics Grph Theory IV 1/25 A Non-plnr Grph Regions of Plnr Grph The plnr representtion of
More informationEpson Projector Content Manager Operation Guide
Epson Projector Content Mnger Opertion Guide Contents 2 Introduction to the Epson Projector Content Mnger Softwre 3 Epson Projector Content Mnger Fetures... 4 Setting Up the Softwre for the First Time
More informationData sharing in OpenMP
Dt shring in OpenMP Polo Burgio polo.burgio@unimore.it Outline Expressing prllelism Understnding prllel threds Memory Dt mngement Dt cluses Synchroniztion Brriers, locks, criticl sections Work prtitioning
More informationCompression Outline :Algorithms in the Real World. Lempel-Ziv Algorithms. LZ77: Sliding Window Lempel-Ziv
Compression Outline 15-853:Algorithms in the Rel World Dt Compression III Introduction: Lossy vs. Lossless, Benchmrks, Informtion Theory: Entropy, etc. Proility Coding: Huffmn + Arithmetic Coding Applictions
More informationFall 2018 Midterm 1 October 11, ˆ You may not ask questions about the exam except for language clarifications.
15-112 Fll 2018 Midterm 1 October 11, 2018 Nme: Andrew ID: Recittion Section: ˆ You my not use ny books, notes, extr pper, or electronic devices during this exm. There should be nothing on your desk or
More informationLicense Manager Installation and Setup
The Network License (concurrent-user) version of e-dpp hs hrdwre key plugged to the computer running the License Mnger softwre. In the e-dpp terminology, this computer is clled the License Mnger Server.
More informationCS 430 Spring Mike Lam, Professor. Parsing
CS 430 Spring 2015 Mike Lm, Professor Prsing Syntx Anlysis We cn now formlly descrie lnguge's syntx Using regulr expressions nd BNF grmmrs How does tht help us? Syntx Anlysis We cn now formlly descrie
More information4-1 NAME DATE PERIOD. Study Guide. Parallel Lines and Planes P Q, O Q. Sample answers: A J, A F, and D E
4-1 NAME DATE PERIOD Pges 142 147 Prllel Lines nd Plnes When plnes do not intersect, they re sid to e prllel. Also, when lines in the sme plne do not intersect, they re prllel. But when lines re not in
More informationDiscussion 1 Recap. COP4600 Discussion 2 OS concepts, System call, and Assignment 1. Questions. Questions. Outline. Outline 10/24/2010
COP4600 Discussion 2 OS concepts, System cll, nd Assignment 1 TA: Hufeng Jin hj0@cise.ufl.edu Discussion 1 Recp Introduction to C C Bsic Types (chr, int, long, flot, doule, ) C Preprocessors (#include,
More informationCS 432 Fall Mike Lam, Professor a (bc)* Regular Expressions and Finite Automata
CS 432 Fll 2017 Mike Lm, Professor (c)* Regulr Expressions nd Finite Automt Compiltion Current focus "Bck end" Source code Tokens Syntx tree Mchine code chr dt[20]; int min() { flot x = 42.0; return 7;
More informationModel Checking of Qualitative Sensitivity Preferences to Minimize Credential Disclosure
Model Checking of Qulittive Sensitivity Preferences to Minimize Credentil Disclosure Zchry J. Oster, Gnesh Rm Snthnm, Smik Bsu, nd Vsnt Honvr Deprtment of Computer Science, Iow Stte University, Ames, Iow
More informationMidterm 2 Sample solution
Nme: Instructions Midterm 2 Smple solution CMSC 430 Introduction to Compilers Fll 2012 November 28, 2012 This exm contins 9 pges, including this one. Mke sure you hve ll the pges. Write your nme on the
More informationCS481: Bioinformatics Algorithms
CS481: Bioinformtics Algorithms Cn Alkn EA509 clkn@cs.ilkent.edu.tr http://www.cs.ilkent.edu.tr/~clkn/teching/cs481/ EXACT STRING MATCHING Fingerprint ide Assume: We cn compute fingerprint f(p) of P in
More informationReducing a DFA to a Minimal DFA
Lexicl Anlysis - Prt 4 Reducing DFA to Miniml DFA Input: DFA IN Assume DFA IN never gets stuck (dd ded stte if necessry) Output: DFA MIN An equivlent DFA with the minimum numer of sttes. Hrry H. Porter,
More informationCMSC 331 First Midterm Exam
0 00/ 1 20/ 2 05/ 3 15/ 4 15/ 5 15/ 6 20/ 7 30/ 8 30/ 150/ 331 First Midterm Exm 7 October 2003 CMC 331 First Midterm Exm Nme: mple Answers tudent ID#: You will hve seventy-five (75) minutes to complete
More information9 Graph Cutting Procedures
9 Grph Cutting Procedures Lst clss we begn looking t how to embed rbitrry metrics into distributions of trees, nd proved the following theorem due to Brtl (1996): Theorem 9.1 (Brtl (1996)) Given metric
More informationFile Manager Quick Reference Guide. June Prepared for the Mayo Clinic Enterprise Kahua Deployment
File Mnger Quick Reference Guide June 2018 Prepred for the Myo Clinic Enterprise Khu Deployment NVIGTION IN FILE MNGER To nvigte in File Mnger, users will mke use of the left pne to nvigte nd further pnes
More informationLanguages. L((a (b)(c))*) = { ε,a,bc,aa,abc,bca,... } εw = wε = w. εabba = abbaε = abba. (a (b)(c)) *
Pln for Tody nd Beginning Next week Interpreter nd Compiler Structure, or Softwre Architecture Overview of Progrmming Assignments The MeggyJv compiler we will e uilding. Regulr Expressions Finite Stte
More informationUNIVERSITY OF EDINBURGH COLLEGE OF SCIENCE AND ENGINEERING SCHOOL OF INFORMATICS INFORMATICS 1 COMPUTATION & LOGIC INSTRUCTIONS TO CANDIDATES
UNIVERSITY OF EDINBURGH COLLEGE OF SCIENCE AND ENGINEERING SCHOOL OF INFORMATICS INFORMATICS COMPUTATION & LOGIC Sturdy st April 7 : to : INSTRUCTIONS TO CANDIDATES This is tke-home exercise. It will not
More informationToday. CS 188: Artificial Intelligence Fall Recap: Search. Example: Pancake Problem. Example: Pancake Problem. General Tree Search.
CS 88: Artificil Intelligence Fll 00 Lecture : A* Serch 9//00 A* Serch rph Serch Tody Heuristic Design Dn Klein UC Berkeley Multiple slides from Sturt Russell or Andrew Moore Recp: Serch Exmple: Pncke
More informationCS 221: Artificial Intelligence Fall 2011
CS 221: Artificil Intelligence Fll 2011 Lecture 2: Serch (Slides from Dn Klein, with help from Sturt Russell, Andrew Moore, Teg Grenger, Peter Norvig) Problem types! Fully observble, deterministic! single-belief-stte
More information12 <= rm <digit> 2 <= rm <no> 2 <= rm <no> <digit> <= rm <no> <= rm <number>
DDD16 Compilers nd Interpreters DDB44 Compiler Construction R Prsing Prt 1 R prsing concept Using prser genertor Prse ree Genertion Wht is R-prsing? eft-to-right scnning R Rigthmost derivtion in reverse
More informationIntegration. October 25, 2016
Integrtion October 5, 6 Introduction We hve lerned in previous chpter on how to do the differentition. It is conventionl in mthemtics tht we re supposed to lern bout the integrtion s well. As you my hve
More informationAutomated and Quality-driven Requirements Engineering
Automted nd Qulity-driven Requirements Engineering Rolf Drechsler Mthis Soeken Robert Wille Deprtment of Mmtics nd Computer Science, University of Bremen, Germny Cyber-Physicl Systems, DFKI GmbH, Bremen,
More informationApproximate computations
Living with floting-point numers Stndrd normlized representtion (sign + frction + exponent): Approximte computtions Rnges of vlues: Representtions for:, +, +0, 0, NN (not numer) Jordi Cortdell Deprtment
More informationLecture 10 Evolutionary Computation: Evolution strategies and genetic programming
Lecture 10 Evolutionry Computtion: Evolution strtegies nd genetic progrmming Evolution strtegies Genetic progrmming Summry Negnevitsky, Person Eduction, 2011 1 Evolution Strtegies Another pproch to simulting
More informationA Formalism for Functionality Preserving System Level Transformations
A Formlism for Functionlity Preserving System Level Trnsformtions Smr Abdi Dniel Gjski Center for Embedded Computer Systems UC Irvine Center for Embedded Computer Systems UC Irvine Irvine, CA 92697 Irvine,
More information2014 Haskell January Test Regular Expressions and Finite Automata
0 Hskell Jnury Test Regulr Expressions nd Finite Automt This test comprises four prts nd the mximum mrk is 5. Prts I, II nd III re worth 3 of the 5 mrks vilble. The 0 Hskell Progrmming Prize will be wrded
More informationa < a+ x < a+2 x < < a+n x = b, n A i n f(x i ) x. i=1 i=1
Mth 33 Volume Stewrt 5.2 Geometry of integrls. In this section, we will lern how to compute volumes using integrls defined by slice nlysis. First, we recll from Clculus I how to compute res. Given the
More informationPhylogeny and Molecular Evolution
Phylogeny nd Moleculr Evolution Chrcter Bsed Phylogeny 1/50 Credit Ron Shmir s lecture notes Notes by Nir Friedmn Dn Geiger, Shlomo Morn, Sgi Snir nd Ron Shmir Durbin et l. Jones nd Pevzner s presenttion
More informationUnion-Find Problem. Using Arrays And Chains. A Set As A Tree. Result Of A Find Operation
Union-Find Problem Given set {,,, n} of n elements. Initilly ech element is in different set. ƒ {}, {},, {n} An intermixed sequence of union nd find opertions is performed. A union opertion combines two
More informationMTH 146 Conics Supplement
105- Review of Conics MTH 146 Conics Supplement In this section we review conics If ou ne more detils thn re present in the notes, r through section 105 of the ook Definition: A prol is the set of points
More information10.5 Graphing Quadratic Functions
0.5 Grphing Qudrtic Functions Now tht we cn solve qudrtic equtions, we wnt to lern how to grph the function ssocited with the qudrtic eqution. We cll this the qudrtic function. Grphs of Qudrtic Functions
More informationCS 321 Programming Languages and Compilers. Bottom Up Parsing
CS 321 Progrmming nguges nd Compilers Bottom Up Prsing Bottom-up Prsing: Shift-reduce prsing Grmmr H: fi ; fi b Input: ;;b hs prse tree ; ; b 2 Dt for Shift-reduce Prser Input string: sequence of tokens
More informationScanner Termination. Multi Character Lookahead
If d.doublevlue() represents vlid integer, (int) d.doublevlue() will crete the pproprite integer vlue. If string representtion of n integer begins with ~ we cn strip the ~, convert to double nd then negte
More informationSummer Review Packet For Algebra 2 CP/Honors
Summer Review Pcket For Alger CP/Honors Nme Current Course Mth Techer Introduction Alger uilds on topics studied from oth Alger nd Geometr. Certin topics re sufficientl involved tht the cll for some review
More informationComplete Coverage Path Planning of Mobile Robot Based on Dynamic Programming Algorithm Peng Zhou, Zhong-min Wang, Zhen-nan Li, Yang Li
2nd Interntionl Conference on Electronic & Mechnicl Engineering nd Informtion Technology (EMEIT-212) Complete Coverge Pth Plnning of Mobile Robot Bsed on Dynmic Progrmming Algorithm Peng Zhou, Zhong-min
More informationII. THE ALGORITHM. A. Depth Map Processing
Lerning Plnr Geometric Scene Context Using Stereo Vision Pul G. Bumstrck, Bryn D. Brudevold, nd Pul D. Reynolds {pbumstrck,brynb,pulr2}@stnford.edu CS229 Finl Project Report December 15, 2006 Abstrct A
More informationLexical Analysis and Lexical Analyzer Generators
1 Lexicl Anlysis nd Lexicl Anlyzer Genertors Chpter 3 COP5621 Compiler Construction Copyright Roert vn Engelen, Florid Stte University, 2007-2009 2 The Reson Why Lexicl Anlysis is Seprte Phse Simplifies
More informationECE 468/573 Midterm 1 September 28, 2012
ECE 468/573 Midterm 1 September 28, 2012 Nme:! Purdue emil:! Plese sign the following: I ffirm tht the nswers given on this test re mine nd mine lone. I did not receive help from ny person or mteril (other
More informationCS143 Handout 07 Summer 2011 June 24 th, 2011 Written Set 1: Lexical Analysis
CS143 Hndout 07 Summer 2011 June 24 th, 2011 Written Set 1: Lexicl Anlysis In this first written ssignment, you'll get the chnce to ply round with the vrious constructions tht come up when doing lexicl
More informationAbstract. 1 Introduction /04 $20.00 (c) 2004 IEEE
rithmetic resoning in DPLL-bsed T solving Mrkus Wedler, Dominik toffel, Wolfgng Kunz Dept. of Electricl & Computer Eng., University of Kiserslutern/Germny emil: wedler@eit.uni-kl.de bstrct We propose new
More informationIntegration. September 28, 2017
Integrtion September 8, 7 Introduction We hve lerned in previous chpter on how to do the differentition. It is conventionl in mthemtics tht we re supposed to lern bout the integrtion s well. As you my
More informationAgilent Mass Hunter Software
Agilent Mss Hunter Softwre Quick Strt Guide Use this guide to get strted with the Mss Hunter softwre. Wht is Mss Hunter Softwre? Mss Hunter is n integrl prt of Agilent TOF softwre (version A.02.00). Mss
More informationMath 142, Exam 1 Information.
Mth 14, Exm 1 Informtion. 9/14/10, LC 41, 9:30-10:45. Exm 1 will be bsed on: Sections 7.1-7.5. The corresponding ssigned homework problems (see http://www.mth.sc.edu/ boyln/sccourses/14f10/14.html) At
More informationITEC2620 Introduction to Data Structures
ITEC0 Introduction to Dt Structures Lecture 7 Queues, Priority Queues Queues I A queue is First-In, First-Out = FIFO uffer e.g. line-ups People enter from the ck of the line People re served (exit) from
More informationthis grammar generates the following language: Because this symbol will also be used in a later step, it receives the
LR() nlysis Drwcks of LR(). Look-hed symols s eplined efore, concerning LR(), it is possile to consult the net set to determine, in the reduction sttes, for which symols it would e possile to perform reductions.
More informationMcAfee Network Security Platform
Mnger Applince Quick Strt Guide Revision B McAfee Network Security Pltform This guide is high-level description of how to instll nd configure the Mnger Applince. For more detiled instlltion informtion,
More informationRepresentation of Numbers. Number Representation. Representation of Numbers. 32-bit Unsigned Integers 3/24/2014. Fixed point Integer Representation
Representtion of Numbers Number Representtion Computer represent ll numbers, other thn integers nd some frctions with imprecision. Numbers re stored in some pproximtion which cn be represented by fixed
More information