Parametric Abstract Domains for Shape Analysis

Size: px
Start display at page:

Download "Parametric Abstract Domains for Shape Analysis"

Transcription

1 Parametri Abstrat Domains for Shape Analysis Xavier RIVAL (INRIA & Éole Normale Supérieure) Joint work with Bor-Yuh Evan CHANG (University of Maryland U University of Colorado) and George NECULA (University of California at Berkeley)

2 Purpose of Shape Analysis Infer preise information about memory layout: pointers dynami, unbounded data-strutures e.g., lists, queues, staks, trees omplex omposite strutures: e.g., in devie drivers Wide range of appliations: proving memory safety absene of memory leaks, null/dangling pointer dereferene proving the preservation of shapes e.g., no yle is introdued in what should be a tree establishing stronger properties e.g., orretness of a sorting algorithm allow other analyses to support manipulation of omplex strutures Parametri Abstrat Domains for Shape Analysis p.2/48

3 A Basi Example Closing a list of File Desriptors: Properties of interest: assume(l points to a list) = l; while( NULL){ } lose( FD); = next; 1. memory safety: e.g., = next; should not rash no null pointer dereferene (easy on this program) no segmentation fault 2. preservation of the shape i.e., l should still point to a list 3. funtional orretness i.e., at the end, all FDs are losed Parametri Abstrat Domains for Shape Analysis p.3/48

4 Our Proposal user-supplied inputs parametri analyzer struture desriptions list, tree,... parametri abstrat domain unfolding widening C ode analysis engine fixpoint omputation Stati analysis by abstrat interpretation: sound automati Based on an over-approximation of sets of stores Parametri Abstrat Domains for Shape Analysis p.4/48

5 Main Diffiulties Express the adequate properties: points-to relations, aliasing, et data-strutures need be summarized fragments of strutures Infer these properties, using abstrat interpretation tehniques: analysis of elementary statements hoie of a widening operator, to enfore termination Make the abstrat domain expressive Parametri Abstrat Domains for Shape Analysis p.5/48

6 Outline An Abstrat Domain for Shapes Unfolding Edges: Loal Conretization Abstration of Segments Infering Shape Invariants Relations among Shape Properties Need for a Redution Operator Conlusion Parametri Abstrat Domains for Shape Analysis p.6/48

7 Abstration of Shapes Abstrat value: a graph representation symboli nodes (, β, γ...) represent integer values e.g., addresses, data... edges stand for onstraints about memory regions a graph an be written as a separation logi formula i.e., onstraints about a separating onjuntion of regions ( ) Simplest kind of edges: points-to edges β, means at address plus offset f, we read β graph representation: f β denotes stores like: to to addr[β] other kinds of edges to be defined later... Parametri Abstrat Domains for Shape Analysis p.7/48

8 Conretization for Graphs (1) One graph stands for a set of onrete stores: e.g., f g β γ stands for stores like: to addr[] to addr[β] to addr[β] = to addr[γ] Relations to state: node to addresses variables to addresses Parametri Abstrat Domains for Shape Analysis p.8/48

9 Conretization for Graphs (2) environment: address mapping: stores: rules, suh as: points-to edge: E : Var nodes to_addr[.] : nodes Æ σ : Æ Æ γ(@f β) = {[to_addr[] +f to_addr[β]]} to addr[] to separating onjuntion: γ(s 0 S 1 ) = {σ 0 σ 1 σ 0 γ(s 0 ) σ 1 γ(s 1 )} where "glues" two separate stores together S 0 S 1 γ γ γ(s 0 ) γ(s 1 ) Parametri Abstrat Domains for Shape Analysis p.9/48

10 Summarization of Regions We have to deal with unbounded strutures Lists: typedef typedef PList{ void data; typedef PList next; }PList; How to abstrat regions pointed to by a PList? Some onrete values: the null pointer pointer to ells of addresses to_addr[ i ] in the store below: to addr[ 0 ] to addr[ 1 ] to addr[ NULL Parametri Abstrat Domains for Shape Analysis p.10/48

11 Indutive Definitions and Summarization Summarization: prediate a memory region satisfied indutive definition at the address represented by (onretization on the next slide...) graph representation: List indutive definition (or heker):.list() := = 0 emp Why also all these definitions hekers? β β.list() programmers often write funtions like hek_doubly_linked_list suh ode an be (almost) diretly used (aveat: separation) rough intuition: it heks that the memory region satisfies the property Parametri Abstrat Domains for Shape Analysis p.11/48

12 Semantis of Indutive Definitions Cheker edges are indexed with the indution depth the onretization of is the join of i the onretizations of all (i Æ) Example for lists: at rank 0, at rank 1, list list 0 1 abstrats the empty store where is 0 abstrats stores of the form: NULL at rank 2,... list 2 to addr[] abstrats stores of NULL Parametri Abstrat Domains for Shape Analysis p.12/48

13 Parameterization of the Abstration Indutive definitions to use: supplied by the user depending on software to analyze A numerial abstration is hosen: = 0, 0; pointer equalities / disequalities; the File Desriptor pointed to by FD is open / losed Parametri Abstrat Domains for Shape Analysis p.13/48

14 Outline An Abstrat Domain for Shapes Unfolding Edges: Loal Conretization Abstration of Segments Infering Shape Invariants Relations among Shape Properties Need for a Redution Operator Conlusion Parametri Abstrat Domains for Shape Analysis p.14/48

15 An Example Bak to the list example... assume(l points to a list) = l; while( NULL){ = next; } First steps of the analysis: assume statement: asserts an initial state l list β the assignment = l; remaps environment edges (not shown) l, list loop: requires omputation of a least fix-point (a few slides later...) first iteration: analyze the body, start with 0 assignment = next;: l, list no next edge from in analysis is stuk; need to deal with full heker edges Parametri Abstrat Domains for Shape Analysis p.15/48

16 Cheker Edge Unfolding Unfolding an indutive: simply open the definition! edge unfolding: returns one symboli disjunt per rule rule unfolding: removes former heker edge reates fresh nodes for unboxed fields adds reursive heker edges aounts for side onditions Case of lists: 0 = 0 next data β list Soundness of the unfolding: γ(s ) {γ(s 0 ) S unfold S 0 } follows from the definition of hekers Parametri Abstrat Domains for Shape Analysis p.16/48

17 Analysis of an Assignment Before the assignment = next;: 0 l, list Result of the unfolding: two rules to onsider empty list does not need be onsidered ontradition with num. invariant 0 non-empty list ase: next l, data β list Result of the assignment: next l data β list note: analyzing the assignment in itself is trivial (frame rule) Parametri Abstrat Domains for Shape Analysis p.17/48

18 Outline An Abstrat Domain for Shapes Unfolding Edges: Loal Conretization Abstration of Segments Infering Shape Invariants Relations among Shape Properties Need for a Redution Operator Conlusion Parametri Abstrat Domains for Shape Analysis p.18/48

19 Need for Folding (1) First iterates in the loop: at iteration 0 (before entering the loop): 0 l, list at iteration 1: next 0 1 l data β 1 list at iteration 2: next l data next data β 1 β 2 list We are still not folding anything! how to abstrat the region between l and? Parametri Abstrat Domains for Shape Analysis p.19/48

20 Notion of Segment After two iterations: l to addr[] NULL properties to abstrat: l points to a list; points to a list; atually, points to a sub-list of l Summarization of a segment a struture with a hole position of the ursor store above abstrated by: l β list list list Parametri Abstrat Domains for Shape Analysis p.20/48

21 Formalization Segment edge β roughly means: if we add a memory region starting at address β, satisfying indutive, region starting at address satisfies indutive Conretization: defined by indution as well! o For instane, in the ase of lists: at rank 0, list list abstrats the empty region; states that = β at rank n + 1, list 0 n+1 β list β abstrats stores of to addr[β] Parametri Abstrat Domains for Shape Analysis p.21/48

22 Bak to the Example Bak to the initial example: Best invariants: assume(l points to a list) = l; 1while( NULL){ 2 = next; 3 } 4 at 1: l, list at 2: l β list list list and β 0 at 3: l β list list list and β at 4: l β list list list How to infer these invariants? and β = 0 Parametri Abstrat Domains for Shape Analysis p.22/48

23 Outline An Abstrat Domain for Shapes Unfolding Edges: Loal Conretization Abstration of Segments Infering Shape Invariants Relations among Shape Properties Need for a Redution Operator Conlusion Parametri Abstrat Domains for Shape Analysis p.23/48

24 Need for Folding (2) First iterates in the loop: at iteration 0 (before entering the loop): 0 l, list at iteration 1: next 0 1 l data β 1 list at iteration 2: next l data next data β 1 β 2 list How to infer the loop invariant? How to inrodue a segment edge? This is the purpose of widening! Parametri Abstrat Domains for Shape Analysis p.24/48

25 Widening Algorithm Widening should ahieve two things: soundness, i.e. ompute a ommon over-approximation enfore termination Separation: If i {0, 1}, s {lft, rgh}, γ(s i,s ) γ(s s), then: s, γ(s 0,s S 1,s ) γ(s lft S rgh ) we an hoose S lft S rgh as our widening: 0 S 1 2 0,lft S 1,lft Ψ Ψ Ψ γ 0 S γ 1 γ 2 0 S 1 β 0 S β 1 β 0,rgh S 1,rgh 2 join algorithm: split both graphs into regions, thanks to maintain a node-to-node mapping relation Ψ (address mapping) find a ommon abstration for well-hosen pairs of regions Parametri Abstrat Domains for Shape Analysis p.25/48

26 Segment Edges Introdution Rule: if S lft Ψ Ψ β 0 S β 1 β 0 β rgh 1 then S lft S rgh = γ 0 γ 1 Ψ (, β 0 ) γ 0 Ψ (, β 1 ) γ 1 Appliation to list traversal, at the end of iteration 1: before iteration 0: 0 l, list end of iteration 0: join, before iteration 1: next β 0 β 1 l data β 2 list γ 0 γ 1 list list list l { Ψ(0, β 0 ) = γ 0 Ψ( 0, β 1 ) = γ 1 Parametri Abstrat Domains for Shape Analysis p.26/48

27 Segment Edges Extension Rule: if 0 S 1 lft Ψ Ψ β 0 S β 1 β 0 β rgh 1 then S lft S rgh = γ 0 γ 1 Ψ ( 0, β 0 ) γ 0 Ψ ( 1, β 1 ) γ 1 Appliation to list traversal, at the end of iteration 1: previous invariant before iteration 1: end of iteration 1: 0 1 list list list l β 0 β 1 β 2 list list l next data β 3 list join, before iteration 1: γ 0 γ 1 list list list l { Ψ(0, β 0 ) = γ 0 Ψ( 1, β 2 ) = γ 1 Parametri Abstrat Domains for Shape Analysis p.27/48

28 Comparison Operator Algorithm struture: quite similar to join... based on separation and loal rules: use of a ounterpart for Ψ A set of strutural rules suh as: segment splitting: full heker folding: Corretness: γ(s 0 ) γ(s 1 ) = γ(s 0 S ) γ(s 1 S ) S = S β β unfold S 0 S S 0 } = S S 0 S 1 = γ(s 0 ) γ(s 1 ) Parametri Abstrat Domains for Shape Analysis p.28/48

29 Widening Properties Soundness: ensured by onstrution { γ(s 0 ) γ(s 0 S 1 ) γ(s 1 ) γ(s 0 S 1 ) Termination: The following sequene is ultimately stable S 0 S n+1 = S n F (n ) abstration at loop entrane where F interprets the loop body in the abstrat level Parametri Abstrat Domains for Shape Analysis p.29/48

30 Outline An Abstrat Domain for Shapes Unfolding Edges: Loal Conretization Abstration of Segments Infering Shape Invariants Relations among Shape Properties Need for a Redution Operator Conlusion Parametri Abstrat Domains for Shape Analysis p.30/48

31 Beyond Lists and Trees: Bak Pointers Trees: quite similar to lists... tree unfolds into two disjunts 0 = 0 l r β 0 tree β 1 tree What about new issue: bak pointers x NULL x next NULL = x next prev = x indutive definition: needs a parameter, to hek pointer relations Parametri Abstrat Domains for Shape Analysis p.31/48

32 Indutive Definitions with Parameters Indutive heker: dll(β) unfolds into two disjunts = 0 β prev 0 next γ dll() note that: parameter β speifies where the bak-edge is pointing to parameter for next unfold is itself head of the list: parameter is NULL.dll(β) := = 0 emp β γ.dll() Conretization: defined as usual, by indutive unfolding Parametri Abstrat Domains for Shape Analysis p.32/48

33 Unfolding Segments Bakwards Issue with unfolding: bakward traversal of doubly-linked lists does not math the built-in indution sheme example: assume(l points to a dll) = l; 0 dll(δ1 ) l, while( NULL && ondition) = next; 0 1 dll(δ 0 ) dll(δ 1 ) dll(δ 1 ) l if( 0 && prev 0) = prev prev; In fat, two separate issues need be solved: how to unfold a segment? (semanti point of view) disover automatially when the analysis needs it Parametri Abstrat Domains for Shape Analysis p.33/48

34 Segment Splitting Segment edges: defined by indution over lengths of all hains unfolding: requires deomposing the segments Splitting lemma: i+j desribes the same set of stores as: i j Bakward unfolding algorithm: treat the ase of the segment of length 0 separately assert equalities of nodes, parameters... for a segment of length j + 1, split it into a segment of length j; a segment of length 1, whih is trivial to unfold Parametri Abstrat Domains for Shape Analysis p.34/48

35 Bakward Unfolding of Segments We fous on the non empty segment ase: 1. Segment splitting: 2. Unfolding of the 1-segment: β 1 prev 0 i+1 1 l dll(β 0 ) dll(β 1 ) i dll(β l 0 ) dll(β 2 ) dll(β 2 ) dll(β 1 ) β 2 prev β 1 prev i dll(β l 0 ) dll(β 2 ) next dll( 2 ) dll(β 1 ) 3. Unfolding of the 0-segment, and reduing equalities ( 1 = 3, 2 = β 1 ): β 1 prev 0 l i dll(β 0 ) dll(β 2 ) β 2 prev prev β 1 next 1 4. Assignment = prev an be analyzed Parametri Abstrat Domains for Shape Analysis p.35/48

36 Forward Segment Unfolding Forward unfolding of segments works similarly disjuntion for the empty segment, splitting, unfolding of a 1-segment Useful in the following ase: assume(l points to a dll) = l; while( NULL && ondition) = next; if( l && ondition) = prev; Results in: prev β 0 0 γ 1 next l dll( 0) dll(β 1 ) Parametri Abstrat Domains for Shape Analysis p.36/48

37 When to Perform Bakward Unfolding An abstration: 0 3 dll(null) dll( 2 ) dll( 2 ) l to expose prev: unfold the full heker but then, how to unfold prev prev or prev next? A onrete element: to addr[ 0 ] to addr[ 1 ] to addr[ 2 ] to addr[ all 0 all 1 all 2 all 3 is in heker all number 3 prev points into all number 2 i.e., 3-1 to expose prev prev unfold previous all (end of the segment) Inferene of field levels using a typing system Parametri Abstrat Domains for Shape Analysis p.37/48

38 Benhmarks EXtensible Indutive Shape Analyzer ( Analyzes standard algorithms on lists, doubly-linked lists, fixed level skip-lists binary trees... A few seleted test ases: Benhmark Time (se) Disjunts Iterations doubly-linked list insertion searh tree with bak pointers insert and bak to root sull driver (without strings) 900 lines Parametri Abstrat Domains for Shape Analysis p.38/48

39 Outline An Abstrat Domain for Shapes Unfolding Edges: Loal Conretization Abstration of Segments Infering Shape Invariants Relations among Shape Properties Need for a Redution Operator Conlusion Parametri Abstrat Domains for Shape Analysis p.39/48

40 Uniqueness of Abstration There is NO unique abstration in general: existene of distint ways to express a same property may ause the analysis to fail Forward vs bakward doubly-linked list hekers: prev next FWD dll(β) unfold = 0 BWD dll(β) unfold = 0 β BWD dll() 0 β γ prev FWD dll() 0 Then the following two segments have the same onretization: next γ 0 1 FWD dll(β 0 ) FWD dll(β 1 ) β 0 β 1 BWD dll( 0 ) BWD dll( 1 ) they represent stores suh as: to addr[β 0 ] to addr[ to addr[β to addr[ 1 ] Parametri Abstrat Domains for Shape Analysis p.40/48

41 Forward and Bakward Indutive Definitions In ertain ases, unfolding of segments fixes the problem: For instane, to unover prev: 2 prev 0 1 FWD dll(β 0 ) FWD dll( 2 ) unfold FWD dll(β 0 ) FWD dll( 3 ) prev prev next prev β BWD dll( 1 ) BWD dll( 0 ) unfold β BWD dll( 0 ) BWD dll( 2 ) prev next prev However, folding definetely fails: Our widening annot fold β BWD dll( 0 ) BWD dll( 2 ) FWD dll( 1 ) Though, it abstrats the same stores as 0 FWD dll(β0 ) Parametri Abstrat Domains for Shape Analysis p.41/48

42 What Needs to be Done? Automatially derive inlusions suh as: β 0 β 1 BWD dll( 0 ) BWD dll( 1 ) 0 1 FWD dll(β 0 ) FWD dll(β 1 ) we do not want to rely on user-written assumptions we ould build a deision proedure but, we an also use our abstrat domain here! Infer when suh a redution should be used How to set up an abstrat interpretation of hekers? an operational semantis for indutive definitions is needed Parametri Abstrat Domains for Shape Analysis p.42/48

43 An Alternate Conretization for Indutive Defs. Deomposing our onretization for graphs: abstrat graphs β 0 β 1 BWD dll( 0 ) BWD dll( 1 ) operational semantis γ oper set of onrete graphs (only p.t. edges) prev prev β 0 0 β 1 1 next next γ γ map address mapping set of onrete stores (addresses mapped) to addr[β 0 ] to addr[ 0 ] to addr[β 1 ] to addr[ Main property: γ = γ map γ oper Operational semantis: defined as an lfp abstrat interpretation of it an be performed Parametri Abstrat Domains for Shape Analysis p.43/48

44 Indutive Definitions as Transition Systems Computing the semantis of S = β 0 onfigurations: BWD dll( 0 ) BWD dll( 1 ) P, (β 0, 0 ), (β 1, 1 ) initial states (empty segments): I init = 0 β 0 (β 0, β 0 ), ( 0, 0 ) transitions (indutive ase): β 1 P β 0 β 1 (β 0, 0 ), (β 1, 1 ) = 0 1 β P 0 β 1 prev next (β 0, 0 ), ( 1, 2 ) Program generating γ oper (S ): I = I init ; while(true); I = {P nxt P I P = Pnxt} The transition system is systematially derived from the indutive Parametri Abstrat Domains for Shape Analysis p.44/48

45 Abstrat Interpretation of An Indutive Def. Abstrat interpretation: abstration: sets of stores, abstrated with our domain, with only FWD_dll as a parameter omputation: abstrat interpretation of the transition system First abstrat iterates: at rank 0: I init 0 β0 (β 0, β 0 ), ( 0, 0 ) at the end of iter 1: β 0 prev next (β 0, 0 ), ( 0, 1 ) 0 1 widening: introdues the segment edge 0 = β (β0 FWD dll(β 0 ) FWD dll(β 1, ) 0 ), (β 1, 1 ) Parametri Abstrat Domains for Shape Analysis p.45/48

46 Abstrat Interpretation of An Indutive Def. End of the analysis: next iterate: transition adds a pair of edges: 0 = β FWD dll(β 0 ) FWD dll(β 1 ) β 1 next prev (β 0, 0 ), (β 1, 2 ) widening: the above is stable! 0 2 FWD dll(β 0 ) FWD dll( 1 ) (β 0, 0 ), (β 1, 2 ) β γ oper ( 0 β 1 BWD dll( 1 ) BWD dll( 0 ) ) γ oper ( A similar approah works in other ases of onversions: weakening strutures: FD list list 0 1 FWD dll(β 0 ) FWD dll(β 1 ) ) turning segments into full hekers, with additional parameters Parametri Abstrat Domains for Shape Analysis p.46/48

47 Outline An Abstrat Domain for Shapes Unfolding Edges: Loal Conretization Abstration of Segments Infering Shape Invariants Relations among Shape Properties Need for a Redution Operator Conlusion Parametri Abstrat Domains for Shape Analysis p.47/48

48 Towards Shape Analysis Abstrat Domains Our main ontributions: a parametri shape analysis domain strutures to hek are not built-in a numerial abstration an also be hosen good support for loal onretization (unfolding) a widening operator powerful abstration: usable even to analyze its parameterization Long term goal: make a parametri shape analysis domain available for other analyses Many theoretial and pratial issues yet to solve: redution arrays... Parametri Abstrat Domains for Shape Analysis p.48/48

Outline: Software Design

Outline: Software Design Outline: Software Design. Goals History of software design ideas Design priniples Design methods Life belt or leg iron? (Budgen) Copyright Nany Leveson, Sept. 1999 A Little History... At first, struggling

More information

Recursion examples: Problem 2. (More) Recursion and Lists. Tail recursion. Recursion examples: Problem 2. Recursion examples: Problem 3

Recursion examples: Problem 2. (More) Recursion and Lists. Tail recursion. Recursion examples: Problem 2. Recursion examples: Problem 3 Reursion eamples: Problem 2 (More) Reursion and s Reursive funtion to reverse a string publi String revstring(string str) { if(str.equals( )) return str; return revstring(str.substring(1, str.length()))

More information

Exploring the Commonality in Feature Modeling Notations

Exploring the Commonality in Feature Modeling Notations Exploring the Commonality in Feature Modeling Notations Miloslav ŠÍPKA Slovak University of Tehnology Faulty of Informatis and Information Tehnologies Ilkovičova 3, 842 16 Bratislava, Slovakia miloslav.sipka@gmail.om

More information

Extracting Partition Statistics from Semistructured Data

Extracting Partition Statistics from Semistructured Data Extrating Partition Statistis from Semistrutured Data John N. Wilson Rihard Gourlay Robert Japp Mathias Neumüller Department of Computer and Information Sienes University of Strathlyde, Glasgow, UK {jnw,rsg,rpj,mathias}@is.strath.a.uk

More information

Algorithms, Mechanisms and Procedures for the Computer-aided Project Generation System

Algorithms, Mechanisms and Procedures for the Computer-aided Project Generation System Algorithms, Mehanisms and Proedures for the Computer-aided Projet Generation System Anton O. Butko 1*, Aleksandr P. Briukhovetskii 2, Dmitry E. Grigoriev 2# and Konstantin S. Kalashnikov 3 1 Department

More information

Separating Shape Graphs

Separating Shape Graphs Separating Shape Graphs Vincent Laviron Bor-Yuh Evan Chang Xavier Rival ENS University of Colorado INRIA Boulder ENS European Symposium on Programming 1/ 23 Shape Analysis Analysis of programs using dynamic

More information

Formal Verification by Model Checking

Formal Verification by Model Checking Formal Verifiation by Model Cheking Jonathan Aldrih Carnegie Mellon University Based on slides developed by Natasha Sharygina 15-413: Introdution to Software Engineering Fall 2005 3 Formal Verifiation

More information

Verifying Interaction Protocol Compliance of Service Orchestrations

Verifying Interaction Protocol Compliance of Service Orchestrations Verifying Interation Protool Compliane of Servie Orhestrations Andreas Shroeder and Philip Mayer Ludwig-Maximilians-Universität Münhen, Germany {shroeda, mayer}@pst.ifi.lmu.de Abstrat. An important aspet

More information

Compilation Lecture 11a. Register Allocation Noam Rinetzky. Text book: Modern compiler implementation in C Andrew A.

Compilation Lecture 11a. Register Allocation Noam Rinetzky. Text book: Modern compiler implementation in C Andrew A. Compilation 0368-3133 Leture 11a Text book: Modern ompiler implementation in C Andrew A. Appel Register Alloation Noam Rinetzky 1 Registers Dediated memory loations that an be aessed quikly, an have omputations

More information

Pipelined Multipliers for Reconfigurable Hardware

Pipelined Multipliers for Reconfigurable Hardware Pipelined Multipliers for Reonfigurable Hardware Mithell J. Myjak and José G. Delgado-Frias Shool of Eletrial Engineering and Computer Siene, Washington State University Pullman, WA 99164-2752 USA {mmyjak,

More information

Hierarchical Shape Abstraction of Dynamic Structures in Static Blocks

Hierarchical Shape Abstraction of Dynamic Structures in Static Blocks Hierarchical Shape Abstraction of Dynamic Structures in Static Blocks Pascal Sotin and Xavier Rival INRIA 4 novembre 2013 P. Sotin, X. Rival (INRIA) Hierarchical Shape Abstraction 4 novembre 2013 1 / 29

More information

Algorithms for External Memory Lecture 6 Graph Algorithms - Weighted List Ranking

Algorithms for External Memory Lecture 6 Graph Algorithms - Weighted List Ranking Algorithms for External Memory Leture 6 Graph Algorithms - Weighted List Ranking Leturer: Nodari Sithinava Sribe: Andi Hellmund, Simon Ohsenreither 1 Introdution & Motivation After talking about I/O-effiient

More information

On - Line Path Delay Fault Testing of Omega MINs M. Bellos 1, E. Kalligeros 1, D. Nikolos 1,2 & H. T. Vergos 1,2

On - Line Path Delay Fault Testing of Omega MINs M. Bellos 1, E. Kalligeros 1, D. Nikolos 1,2 & H. T. Vergos 1,2 On - Line Path Delay Fault Testing of Omega MINs M. Bellos, E. Kalligeros, D. Nikolos,2 & H. T. Vergos,2 Dept. of Computer Engineering and Informatis 2 Computer Tehnology Institute University of Patras,

More information

Gray Codes for Reflectable Languages

Gray Codes for Reflectable Languages Gray Codes for Refletable Languages Yue Li Joe Sawada Marh 8, 2008 Abstrat We lassify a type of language alled a refletable language. We then develop a generi algorithm that an be used to list all strings

More information

Calling Context Abstraction with Shapes

Calling Context Abstraction with Shapes Calling Context Abstraction with Shapes Xavier Rival INRIA/ENS Paris Bor-Yuh Evan Chang 張博聿 U of Colorado, Boulder National Taiwan University December 17, 2010 Work to Appear in POPL 2011 Programming Languages

More information

Dynamic Programming. Lecture #8 of Algorithms, Data structures and Complexity. Joost-Pieter Katoen Formal Methods and Tools Group

Dynamic Programming. Lecture #8 of Algorithms, Data structures and Complexity. Joost-Pieter Katoen Formal Methods and Tools Group Dynami Programming Leture #8 of Algorithms, Data strutures and Complexity Joost-Pieter Katoen Formal Methods and Tools Group E-mail: katoen@s.utwente.nl Otober 29, 2002 JPK #8: Dynami Programming ADC (214020)

More information

A service-oriented UML profile with formal support

A service-oriented UML profile with formal support A servie-oriented UML profile with formal support Roberto Bruni 1, Matthias Hölzl 3, Nora Koh 2,3, Alberto Lluh Lafuente 1, Philip Mayer 3, Ugo Montanari 1, and Andreas Shroeder 3 1 University of Pisa,

More information

Interconnection Styles

Interconnection Styles Interonnetion tyles oftware Design Following the Export (erver) tyle 2 M1 M4 M5 4 M3 M6 1 3 oftware Design Following the Export (Client) tyle e 2 e M1 M4 M5 4 M3 M6 1 e 3 oftware Design Following the Export

More information

Learning Convention Propagation in BeerAdvocate Reviews from a etwork Perspective. Abstract

Learning Convention Propagation in BeerAdvocate Reviews from a etwork Perspective. Abstract CS 9 Projet Final Report: Learning Convention Propagation in BeerAdvoate Reviews from a etwork Perspetive Abstrat We look at the way onventions propagate between reviews on the BeerAdvoate dataset, and

More information

Automatic Physical Design Tuning: Workload as a Sequence Sanjay Agrawal Microsoft Research One Microsoft Way Redmond, WA, USA +1-(425)

Automatic Physical Design Tuning: Workload as a Sequence Sanjay Agrawal Microsoft Research One Microsoft Way Redmond, WA, USA +1-(425) Automati Physial Design Tuning: Workload as a Sequene Sanjay Agrawal Mirosoft Researh One Mirosoft Way Redmond, WA, USA +1-(425) 75-357 sagrawal@mirosoft.om Eri Chu * Computer Sienes Department University

More information

A Partial Sorting Algorithm in Multi-Hop Wireless Sensor Networks

A Partial Sorting Algorithm in Multi-Hop Wireless Sensor Networks A Partial Sorting Algorithm in Multi-Hop Wireless Sensor Networks Abouberine Ould Cheikhna Department of Computer Siene University of Piardie Jules Verne 80039 Amiens Frane Ould.heikhna.abouberine @u-piardie.fr

More information

arxiv: v1 [cs.pl] 24 Jun 2017

arxiv: v1 [cs.pl] 24 Jun 2017 Loal Refinement Typing arxiv:176.87v1 [s.pl] 24 Jun 217 BENJAMIN COSMAN, UC San Diego RANJIT JHALA, UC San Diego We introdue the F algorithm for loal re nement type inferene, yielding a new SMT-based method

More information

Calculation of typical running time of a branch-and-bound algorithm for the vertex-cover problem

Calculation of typical running time of a branch-and-bound algorithm for the vertex-cover problem Calulation of typial running time of a branh-and-bound algorithm for the vertex-over problem Joni Pajarinen, Joni.Pajarinen@iki.fi Otober 21, 2007 1 Introdution The vertex-over problem is one of a olletion

More information

Dynamic Algorithms Multiple Choice Test

Dynamic Algorithms Multiple Choice Test 3226 Dynami Algorithms Multiple Choie Test Sample test: only 8 questions 32 minutes (Real test has 30 questions 120 minutes) Årskort Name Eah of the following 8 questions has 4 possible answers of whih

More information

Facility Location: Distributed Approximation

Facility Location: Distributed Approximation Faility Loation: Distributed Approximation Thomas Mosibroda Roger Wattenhofer Distributed Computing Group PODC 2005 Where to plae ahes in the Internet? A distributed appliation that has to dynamially plae

More information

Introductory Programming, IMM, DTU Systematic Software Test. Software test (afprøvning) Motivation. Structural test and functional test

Introductory Programming, IMM, DTU Systematic Software Test. Software test (afprøvning) Motivation. Structural test and functional test Introdutory Programming, IMM, DTU Systemati Software Test Peter Sestoft a Programs often ontain unintended errors how do you find them? Strutural test Funtional test Notes: Systemati Software Test, http://www.dina.kvl.dk/

More information

Verification of Parameterized Concurrent Programs By Modular Reasoning about Data and Control

Verification of Parameterized Concurrent Programs By Modular Reasoning about Data and Control Verifiation of Parameterized Conurrent Programs By Modular Reasoning about Data and Control Azadeh Farzan Zahary Kinaid University of Toronto azadeh,zkinaid@s.toronto.edu Abstrat In this paper, we onsider

More information

Improved Circuit-to-CNF Transformation for SAT-based ATPG

Improved Circuit-to-CNF Transformation for SAT-based ATPG Improved Ciruit-to-CNF Transformation for SAT-based ATPG Daniel Tille 1 René Krenz-Bååth 2 Juergen Shloeffel 2 Rolf Drehsler 1 1 Institute of Computer Siene, University of Bremen, 28359 Bremen, Germany

More information

Optimizing Correlated Path Queries in XML Languages. Technical Report CS November 2002

Optimizing Correlated Path Queries in XML Languages. Technical Report CS November 2002 Optimizing Correlated Path Queries in XML Languages Ning Zhang and M. Tamer Özsu Tehnial Report CS-2002-36 November 2002 Shool Of Computer Siene, University of Waterloo, {nzhang,tozsu}@uwaterloo.a 1 Abstrat

More information

Boosted Random Forest

Boosted Random Forest Boosted Random Forest Yohei Mishina, Masamitsu suhiya and Hironobu Fujiyoshi Department of Computer Siene, Chubu University, 1200 Matsumoto-ho, Kasugai, Aihi, Japan {mishi, mtdoll}@vision.s.hubu.a.jp,

More information

Using Game Theory and Bayesian Networks to Optimize Cooperation in Ad Hoc Wireless Networks

Using Game Theory and Bayesian Networks to Optimize Cooperation in Ad Hoc Wireless Networks Using Game Theory and Bayesian Networks to Optimize Cooperation in Ad Ho Wireless Networks Giorgio Quer, Federio Librino, Lua Canzian, Leonardo Badia, Mihele Zorzi, University of California San Diego La

More information

C 2 C 3 C 1 M S. f e. e f (3,0) (0,1) (2,0) (-1,1) (1,0) (-1,0) (1,-1) (0,-1) (-2,0) (-3,0) (0,-2)

C 2 C 3 C 1 M S. f e. e f (3,0) (0,1) (2,0) (-1,1) (1,0) (-1,0) (1,-1) (0,-1) (-2,0) (-3,0) (0,-2) SPECIAL ISSUE OF IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION: MULTI-ROBOT SSTEMS, 00 Distributed reonfiguration of hexagonal metamorphi robots Jennifer E. Walter, Jennifer L. Welh, and Nany M. Amato Abstrat

More information

Detection and Recognition of Non-Occluded Objects using Signature Map

Detection and Recognition of Non-Occluded Objects using Signature Map 6th WSEAS International Conferene on CIRCUITS, SYSTEMS, ELECTRONICS,CONTROL & SIGNAL PROCESSING, Cairo, Egypt, De 9-31, 007 65 Detetion and Reognition of Non-Oluded Objets using Signature Map Sangbum Park,

More information

CleanUp: Improving Quadrilateral Finite Element Meshes

CleanUp: Improving Quadrilateral Finite Element Meshes CleanUp: Improving Quadrilateral Finite Element Meshes Paul Kinney MD-10 ECC P.O. Box 203 Ford Motor Company Dearborn, MI. 8121 (313) 28-1228 pkinney@ford.om Abstrat: Unless an all quadrilateral (quad)

More information

System-Level Parallelism and Throughput Optimization in Designing Reconfigurable Computing Applications

System-Level Parallelism and Throughput Optimization in Designing Reconfigurable Computing Applications System-Level Parallelism and hroughput Optimization in Designing Reonfigurable Computing Appliations Esam El-Araby 1, Mohamed aher 1, Kris Gaj 2, arek El-Ghazawi 1, David Caliga 3, and Nikitas Alexandridis

More information

A {k, n}-secret Sharing Scheme for Color Images

A {k, n}-secret Sharing Scheme for Color Images A {k, n}-seret Sharing Sheme for Color Images Rastislav Luka, Konstantinos N. Plataniotis, and Anastasios N. Venetsanopoulos The Edward S. Rogers Sr. Dept. of Eletrial and Computer Engineering, University

More information

Anonymity Trilemma: Strong Anonymity, Low Bandwidth, Low Latency Choose Two

Anonymity Trilemma: Strong Anonymity, Low Bandwidth, Low Latency Choose Two Anonymity Trilemma: Strong Anonymity, Low Bandwidth, Low Lateny Choose Two Debajyoti Das Purdue University, USA das48@purdue.edu Sebastian Meiser University College London, U s.meiser@ul.a.uk Esfandiar

More information

COMP 181. Prelude. Intermediate representations. Today. Types of IRs. High-level IR. Intermediate representations and code generation

COMP 181. Prelude. Intermediate representations. Today. Types of IRs. High-level IR. Intermediate representations and code generation Prelude COMP 181 Intermediate representations and ode generation November, 009 What is this devie? Large Hadron Collider What is a hadron? Subatomi partile made up of quarks bound by the strong fore What

More information

Drawing lines. Naïve line drawing algorithm. drawpixel(x, round(y)); double dy = y1 - y0; double dx = x1 - x0; double m = dy / dx; double y = y0;

Drawing lines. Naïve line drawing algorithm. drawpixel(x, round(y)); double dy = y1 - y0; double dx = x1 - x0; double m = dy / dx; double y = y0; Naïve line drawing algorithm // Connet to grid points(x0,y0) and // (x1,y1) by a line. void drawline(int x0, int y0, int x1, int y1) { int x; double dy = y1 - y0; double dx = x1 - x0; double m = dy / dx;

More information

Sparse Certificates for 2-Connectivity in Directed Graphs

Sparse Certificates for 2-Connectivity in Directed Graphs Sparse Certifiates for 2-Connetivity in Direted Graphs Loukas Georgiadis Giuseppe F. Italiano Aikaterini Karanasiou Charis Papadopoulos Nikos Parotsidis Abstrat Motivated by the emergene of large-sale

More information

Chapter 2: Introduction to Maple V

Chapter 2: Introduction to Maple V Chapter 2: Introdution to Maple V 2-1 Working with Maple Worksheets Try It! (p. 15) Start a Maple session with an empty worksheet. The name of the worksheet should be Untitled (1). Use one of the standard

More information

What are Cycle-Stealing Systems Good For? A Detailed Performance Model Case Study

What are Cycle-Stealing Systems Good For? A Detailed Performance Model Case Study What are Cyle-Stealing Systems Good For? A Detailed Performane Model Case Study Wayne Kelly and Jiro Sumitomo Queensland University of Tehnology, Australia {w.kelly, j.sumitomo}@qut.edu.au Abstrat The

More information

Approximate logic synthesis for error tolerant applications

Approximate logic synthesis for error tolerant applications Approximate logi synthesis for error tolerant appliations Doohul Shin and Sandeep K. Gupta Eletrial Engineering Department, University of Southern California, Los Angeles, CA 989 {doohuls, sandeep}@us.edu

More information

HEXA: Compact Data Structures for Faster Packet Processing

HEXA: Compact Data Structures for Faster Packet Processing Washington University in St. Louis Washington University Open Sholarship All Computer Siene and Engineering Researh Computer Siene and Engineering Report Number: 27-26 27 HEXA: Compat Data Strutures for

More information

Layout Compliance for Triple Patterning Lithography: An Iterative Approach

Layout Compliance for Triple Patterning Lithography: An Iterative Approach Layout Compliane for Triple Patterning Lithography: An Iterative Approah Bei Yu, Gilda Garreton, David Z. Pan ECE Dept. University of Texas at Austin, Austin, TX, USA Orale Las, Orale Corporation, Redwood

More information

Tracking Data-Flow with Open Closure Types

Tracking Data-Flow with Open Closure Types Traking Data-Flow with Open Closure Types Gabriel Sherer 1 and Jan Hoffmann 2 1 INRIA Paris-Roquenourt 2 Yale University Abstrat. Type systems hide data that is aptured by funtion losures in funtion types.

More information

A Formal Hybrid Analysis Technique for Composite Web Services Verification

A Formal Hybrid Analysis Technique for Composite Web Services Verification A Formal Hybrid Analysis Tehnique for Composite Web Servies Verifiation MAY HAIDAR 1,2, HICHAM H. HALLAL 1 1 Computer Siene Department / Department of Eletrial Engineering Fahad Bin Sultan University P.O

More information

Query Evaluation Overview. Query Optimization: Chap. 15. Evaluation Example. Cost Estimation. Query Blocks. Query Blocks

Query Evaluation Overview. Query Optimization: Chap. 15. Evaluation Example. Cost Estimation. Query Blocks. Query Blocks Query Evaluation Overview Query Optimization: Chap. 15 CS634 Leture 12 SQL query first translated to relational algebra (RA) Atually, some additional operators needed for SQL Tree of RA operators, with

More information

Hoare logic. A proof system for separation logic. Introduction. Separation logic

Hoare logic. A proof system for separation logic. Introduction. Separation logic Introduction Hoare logic Lecture 6: Examples in separation logic In the previous lecture, we saw how reasoning about pointers in Hoare logic was problematic, which motivated introducing separation logic.

More information

Reverse Engineering of Assembler Programs: A Model-Based Approach and its Logical Basis

Reverse Engineering of Assembler Programs: A Model-Based Approach and its Logical Basis Reverse Engineering of Assembler Programs: A Model-Based Approah and its Logial Basis Tom Lake and Tim Blanhard, InterGlossa Ltd., Reading, UK Tel: +44 174 561919 email: {Tom.Lake,Tim.Blanhard}@glossa.o.uk

More information

The Happy Ending Problem

The Happy Ending Problem The Happy Ending Problem Neeldhara Misra STATUTORY WARNING This doument is a draft version 1 Introdution The Happy Ending problem first manifested itself on a typial wintery evening in 1933 These evenings

More information

The Implementation of RRTs for a Remote-Controlled Mobile Robot

The Implementation of RRTs for a Remote-Controlled Mobile Robot ICCAS5 June -5, KINEX, Gyeonggi-Do, Korea he Implementation of RRs for a Remote-Controlled Mobile Robot Chi-Won Roh*, Woo-Sub Lee **, Sung-Chul Kang *** and Kwang-Won Lee **** * Intelligent Robotis Researh

More information

Abstract. Key Words: Image Filters, Fuzzy Filters, Order Statistics Filters, Rank Ordered Mean Filters, Channel Noise. 1.

Abstract. Key Words: Image Filters, Fuzzy Filters, Order Statistics Filters, Rank Ordered Mean Filters, Channel Noise. 1. Fuzzy Weighted Rank Ordered Mean (FWROM) Filters for Mixed Noise Suppression from Images S. Meher, G. Panda, B. Majhi 3, M.R. Meher 4,,4 Department of Eletronis and I.E., National Institute of Tehnology,

More information

arxiv: v1 [cs.db] 13 Sep 2017

arxiv: v1 [cs.db] 13 Sep 2017 An effiient lustering algorithm from the measure of loal Gaussian distribution Yuan-Yen Tai (Dated: May 27, 2018) In this paper, I will introdue a fast and novel lustering algorithm based on Gaussian distribution

More information

Test Case Generation from UML State Machines

Test Case Generation from UML State Machines Test Case Generation from UML State Mahines Dirk Seifert To ite this version: Dirk Seifert. Test Case Generation from UML State Mahines. [Researh Report] 2008. HAL Id: inria-00268864

More information

Zippy - A coarse-grained reconfigurable array with support for hardware virtualization

Zippy - A coarse-grained reconfigurable array with support for hardware virtualization Zippy - A oarse-grained reonfigurable array with support for hardware virtualization Christian Plessl Computer Engineering and Networks Lab ETH Zürih, Switzerland plessl@tik.ee.ethz.h Maro Platzner Department

More information

Data Structures in Java

Data Structures in Java Data Strutures in Java Leture 8: Trees and Tree Traversals. 10/5/2015 Daniel Bauer 1 Trees in Computer Siene A lot of data omes in a hierarhial/nested struture. Mathematial expressions. Program struture.

More information

Numerical simulation of hemolysis: a comparison of Lagrangian and Eulerian modelling

Numerical simulation of hemolysis: a comparison of Lagrangian and Eulerian modelling Modelling in Mediine and Biology VI 361 Numerial simulation of hemolysis: a omparison of Lagrangian and Eulerian modelling S. Pirker 1, H. Shima 2 & M. Stoiber 2 1 Johannes Kepler University, 4040 Linz,

More information

1. Introduction. 2. The Probable Stope Algorithm

1. Introduction. 2. The Probable Stope Algorithm 1. Introdution Optimization in underground mine design has reeived less attention than that in open pit mines. This is mostly due to the diversity o underground mining methods and omplexity o underground

More information

arxiv: v1 [cs.gr] 10 Apr 2015

arxiv: v1 [cs.gr] 10 Apr 2015 REAL-TIME TOOL FOR AFFINE TRANSFORMATIONS OF TWO DIMENSIONAL IFS FRACTALS ELENA HADZIEVA AND MARIJA SHUMINOSKA arxiv:1504.02744v1 s.gr 10 Apr 2015 Abstrat. This work introdues a novel tool for interative,

More information

A DYNAMIC ACCESS CONTROL WITH BINARY KEY-PAIR

A DYNAMIC ACCESS CONTROL WITH BINARY KEY-PAIR Malaysian Journal of Computer Siene, Vol 10 No 1, June 1997, pp 36-41 A DYNAMIC ACCESS CONTROL WITH BINARY KEY-PAIR Md Rafiqul Islam, Harihodin Selamat and Mohd Noor Md Sap Faulty of Computer Siene and

More information

A Multistart Randomized Greedy Algorithm for Traffic Grooming on Mesh Logical Topologies

A Multistart Randomized Greedy Algorithm for Traffic Grooming on Mesh Logical Topologies Tehnial Report Università di Trento, Diembre 001 1 A Multistart Randomized Greedy Algorithm for Traffi Grooming on Mesh Logial Topologies Mauro Brunato Roberto Battiti Deember 11, 001 Abstrat In this paper

More information

On the Generation of Multiplexer Circuits for Pass Transistor Logic

On the Generation of Multiplexer Circuits for Pass Transistor Logic Preprint from Proeedings of DATE 2, Paris, rane, Marh 2 On the Generation of Multiplexer Ciruits for Pass Transistor Logi Christoph Sholl Bernd Beker Institute of Computer Siene Albert Ludwigs University

More information

Department of Electrical Engineering and Computer Science MASSACHUSETTS INSTITUTE OF TECHNOLOGY Fall Test I Solutions

Department of Electrical Engineering and Computer Science MASSACHUSETTS INSTITUTE OF TECHNOLOGY Fall Test I Solutions Department of Eletrial Engineering and Computer iene MAACHUETT INTITUTE OF TECHNOLOGY 6.035 Fall 2016 Test I olutions 1 I Regular Expressions and Finite-tate Automata For Questions 1, 2, and 3, let the

More information

Plumber: a method for a multi-scale decomposition of 3D shapes into tubular primitives and bodies

Plumber: a method for a multi-scale decomposition of 3D shapes into tubular primitives and bodies ACM Symposium on Solid Modeling and Appliations (2004) P. Brunet, N. Patrikalakis (Editors) Plumber: a method for a multi-sale deomposition of 3D shapes into tubular primitives and bodies M. Mortara G.

More information

Divide-and-conquer algorithms 1

Divide-and-conquer algorithms 1 * 1 Multipliation Divide-and-onquer algorithms 1 The mathematiian Gauss one notied that although the produt of two omplex numbers seems to! involve four real-number multipliations it an in fat be done

More information

Capturing Large Intra-class Variations of Biometric Data by Template Co-updating

Capturing Large Intra-class Variations of Biometric Data by Template Co-updating Capturing Large Intra-lass Variations of Biometri Data by Template Co-updating Ajita Rattani University of Cagliari Piazza d'armi, Cagliari, Italy ajita.rattani@diee.unia.it Gian Lua Marialis University

More information

Department of Electrical and Computer Engineering University of Wisconsin Madison. Fall

Department of Electrical and Computer Engineering University of Wisconsin Madison. Fall Department of Eletrial and Computer Engineering University of Wisonsin Madison ECE 553: Testing and Testable Design of Digital Systems Fall 2014-2015 Assignment #2 Date Tuesday, September 25, 2014 Due

More information

An Optimized Approach on Applying Genetic Algorithm to Adaptive Cluster Validity Index

An Optimized Approach on Applying Genetic Algorithm to Adaptive Cluster Validity Index IJCSES International Journal of Computer Sienes and Engineering Systems, ol., No.4, Otober 2007 CSES International 2007 ISSN 0973-4406 253 An Optimized Approah on Applying Geneti Algorithm to Adaptive

More information

PBFT: A Byzantine Renaissance. The Setup. What could possibly go wrong? The General Idea. Practical Byzantine Fault-Tolerance (CL99, CL00)

PBFT: A Byzantine Renaissance. The Setup. What could possibly go wrong? The General Idea. Practical Byzantine Fault-Tolerance (CL99, CL00) PBFT: A Byzantine Renaissane Pratial Byzantine Fault-Tolerane (CL99, CL00) first to be safe in asynhronous systems live under weak synhrony assumptions -Byzantine Paos! The Setup Crypto System Model Asynhronous

More information

Bayesian Belief Networks for Data Mining. Harald Steck and Volker Tresp. Siemens AG, Corporate Technology. Information and Communications

Bayesian Belief Networks for Data Mining. Harald Steck and Volker Tresp. Siemens AG, Corporate Technology. Information and Communications Bayesian Belief Networks for Data Mining Harald Stek and Volker Tresp Siemens AG, Corporate Tehnology Information and Communiations 81730 Munih, Germany fharald.stek, Volker.Trespg@mhp.siemens.de Abstrat

More information

Partial Character Decoding for Improved Regular Expression Matching in FPGAs

Partial Character Decoding for Improved Regular Expression Matching in FPGAs Partial Charater Deoding for Improved Regular Expression Mathing in FPGAs Peter Sutton Shool of Information Tehnology and Eletrial Engineering The University of Queensland Brisbane, Queensland, 4072, Australia

More information

Definitions Homework. Quine McCluskey Optimal solutions are possible for some large functions Espresso heuristic. Definitions Homework

Definitions Homework. Quine McCluskey Optimal solutions are possible for some large functions Espresso heuristic. Definitions Homework EECS 33 There be Dragons here http://ziyang.ees.northwestern.edu/ees33/ Teaher: Offie: Email: Phone: L477 Teh dikrp@northwestern.edu 847 467 2298 Today s material might at first appear diffiult Perhaps

More information

8 Instruction Selection

8 Instruction Selection 8 Instrution Seletion The IR ode instrutions were designed to do exatly one operation: load/store, add, subtrat, jump, et. The mahine instrutions of a real CPU often perform several of these primitive

More information

One Against One or One Against All : Which One is Better for Handwriting Recognition with SVMs?

One Against One or One Against All : Which One is Better for Handwriting Recognition with SVMs? One Against One or One Against All : Whih One is Better for Handwriting Reognition with SVMs? Jonathan Milgram, Mohamed Cheriet, Robert Sabourin To ite this version: Jonathan Milgram, Mohamed Cheriet,

More information

A Connection Method for the Description Logic ALC

A Connection Method for the Description Logic ALC A Connetion Method for the Desription Logi ALC Fred Freitas Informatis Center, Federal University of Pernambuo (CIn - UFPE), Brazil fred@in.ufpe.br 1 Introdution The problem of reasoning over ontologies

More information

Run Time Environment. Implementing Object-Oriented Languages

Run Time Environment. Implementing Object-Oriented Languages Run Time Environment Implementing Objet-Oriented Languages Copright 2017, Pedro C. Diniz, all rights reserved. Students enrolled in the Compilers lass at the Universit of Southern California have epliit

More information

The recursive decoupling method for solving tridiagonal linear systems

The recursive decoupling method for solving tridiagonal linear systems Loughborough University Institutional Repository The reursive deoupling method for solving tridiagonal linear systems This item was submitted to Loughborough University's Institutional Repository by the/an

More information

An Efficient and Scalable Approach to CNN Queries in a Road Network

An Efficient and Scalable Approach to CNN Queries in a Road Network An Effiient and Salable Approah to CNN Queries in a Road Network Hyung-Ju Cho Chin-Wan Chung Dept. of Eletrial Engineering & Computer Siene Korea Advaned Institute of Siene and Tehnology 373- Kusong-dong,

More information

Semi-Supervised Affinity Propagation with Instance-Level Constraints

Semi-Supervised Affinity Propagation with Instance-Level Constraints Semi-Supervised Affinity Propagation with Instane-Level Constraints Inmar E. Givoni, Brendan J. Frey Probabilisti and Statistial Inferene Group University of Toronto 10 King s College Road, Toronto, Ontario,

More information

M32: A Constructive Multilevel Logic Synthesis System*

M32: A Constructive Multilevel Logic Synthesis System* M32: A Construtive Multilevel Logi Synthesis System* Vitor N. Kravets Karem A. Sakallah Department of Eletrial Engineering and Computer Siene University of Mihigan, Ann Arbor, MI 48109 {vkravets, karem}@ees.umih.edu

More information

Z Combinatorial Filters: Sensor Beams, Obstacles, and Possible Paths

Z Combinatorial Filters: Sensor Beams, Obstacles, and Possible Paths Z Combinatorial Filters: Sensor Beams, Obstales, and Possible Paths BENJAMIN TOVAR, Northwestern University FRED COHEN, University of Rohester LEONARDO BOBADILLA, University of Illinois JUSTIN CZARNOWSKI,

More information

特集 Road Border Recognition Using FIR Images and LIDAR Signal Processing

特集 Road Border Recognition Using FIR Images and LIDAR Signal Processing デンソーテクニカルレビュー Vol. 15 2010 特集 Road Border Reognition Using FIR Images and LIDAR Signal Proessing 高木聖和 バーゼル ファルディ Kiyokazu TAKAGI Basel Fardi ヘンドリック ヴァイゲル Hendrik Weigel ゲルド ヴァニーリック Gerd Wanielik This paper

More information

Background/Review on Numbers and Computers (lecture)

Background/Review on Numbers and Computers (lecture) Bakground/Review on Numbers and Computers (leture) ICS312 Mahine-Level and Systems Programming Henri Casanova (henri@hawaii.edu) Numbers and Computers Throughout this ourse we will use binary and hexadeimal

More information

8 : Learning Fully Observed Undirected Graphical Models

8 : Learning Fully Observed Undirected Graphical Models 10-708: Probabilisti Graphial Models 10-708, Spring 2018 8 : Learning Fully Observed Undireted Graphial Models Leturer: Kayhan Batmanghelih Sribes: Chenghui Zhou, Cheng Ran (Harvey) Zhang When learning

More information

NONLINEAR BACK PROJECTION FOR TOMOGRAPHIC IMAGE RECONSTRUCTION. Ken Sauer and Charles A. Bouman

NONLINEAR BACK PROJECTION FOR TOMOGRAPHIC IMAGE RECONSTRUCTION. Ken Sauer and Charles A. Bouman NONLINEAR BACK PROJECTION FOR TOMOGRAPHIC IMAGE RECONSTRUCTION Ken Sauer and Charles A. Bouman Department of Eletrial Engineering, University of Notre Dame Notre Dame, IN 46556, (219) 631-6999 Shool of

More information

Video Data and Sonar Data: Real World Data Fusion Example

Video Data and Sonar Data: Real World Data Fusion Example 14th International Conferene on Information Fusion Chiago, Illinois, USA, July 5-8, 2011 Video Data and Sonar Data: Real World Data Fusion Example David W. Krout Applied Physis Lab dkrout@apl.washington.edu

More information

A Coarse-to-Fine Classification Scheme for Facial Expression Recognition

A Coarse-to-Fine Classification Scheme for Facial Expression Recognition A Coarse-to-Fine Classifiation Sheme for Faial Expression Reognition Xiaoyi Feng 1,, Abdenour Hadid 1 and Matti Pietikäinen 1 1 Mahine Vision Group Infoteh Oulu and Dept. of Eletrial and Information Engineering

More information

Parallelizing Frequent Web Access Pattern Mining with Partial Enumeration for High Speedup

Parallelizing Frequent Web Access Pattern Mining with Partial Enumeration for High Speedup Parallelizing Frequent Web Aess Pattern Mining with Partial Enumeration for High Peiyi Tang Markus P. Turkia Department of Computer Siene Department of Computer Siene University of Arkansas at Little Rok

More information

Tackling IPv6 Address Scalability from the Root

Tackling IPv6 Address Scalability from the Root Takling IPv6 Address Salability from the Root Mei Wang Ashish Goel Balaji Prabhakar Stanford University {wmei, ashishg, balaji}@stanford.edu ABSTRACT Internet address alloation shemes have a huge impat

More information

DETECTION METHOD FOR NETWORK PENETRATING BEHAVIOR BASED ON COMMUNICATION FINGERPRINT

DETECTION METHOD FOR NETWORK PENETRATING BEHAVIOR BASED ON COMMUNICATION FINGERPRINT DETECTION METHOD FOR NETWORK PENETRATING BEHAVIOR BASED ON COMMUNICATION FINGERPRINT 1 ZHANGGUO TANG, 2 HUANZHOU LI, 3 MINGQUAN ZHONG, 4 JIAN ZHANG 1 Institute of Computer Network and Communiation Tehnology,

More information

Multiple Assignments

Multiple Assignments Two Outputs Conneted Together Multiple Assignments Two Outputs Conneted Together if (En1) Q

More information

Chemical, Biological and Radiological Hazard Assessment: A New Model of a Plume in a Complex Urban Environment

Chemical, Biological and Radiological Hazard Assessment: A New Model of a Plume in a Complex Urban Environment hemial, Biologial and Radiologial Haard Assessment: A New Model of a Plume in a omplex Urban Environment Skvortsov, A.T., P.D. Dawson, M.D. Roberts and R.M. Gailis HPP Division, Defene Siene and Tehnology

More information

Unsupervised Stereoscopic Video Object Segmentation Based on Active Contours and Retrainable Neural Networks

Unsupervised Stereoscopic Video Object Segmentation Based on Active Contours and Retrainable Neural Networks Unsupervised Stereosopi Video Objet Segmentation Based on Ative Contours and Retrainable Neural Networks KLIMIS NTALIANIS, ANASTASIOS DOULAMIS, and NIKOLAOS DOULAMIS National Tehnial University of Athens

More information

This fact makes it difficult to evaluate the cost function to be minimized

This fact makes it difficult to evaluate the cost function to be minimized RSOURC LLOCTION N SSINMNT In the resoure alloation step the amount of resoures required to exeute the different types of proesses is determined. We will refer to the time interval during whih a proess

More information

Contents Contents...I List of Tables...VIII List of Figures...IX 1. Introduction Information Retrieval... 8

Contents Contents...I List of Tables...VIII List of Figures...IX 1. Introduction Information Retrieval... 8 Contents Contents...I List of Tables...VIII List of Figures...IX 1. Introdution... 1 1.1. Internet Information...2 1.2. Internet Information Retrieval...3 1.2.1. Doument Indexing...4 1.2.2. Doument Retrieval...4

More information

Taming Decentralized POMDPs: Towards Efficient Policy Computation for Multiagent Settings

Taming Decentralized POMDPs: Towards Efficient Policy Computation for Multiagent Settings Taming Deentralized PMDPs: Towards ffiient Poliy omputation for Multiagent Settings. Nair and M. Tambe omputer Siene Dept. University of Southern alifornia Los Angeles A 90089 nair,tambe @us.edu M. Yokoo

More information

We don t need no generation - a practical approach to sliding window RLNC

We don t need no generation - a practical approach to sliding window RLNC We don t need no generation - a pratial approah to sliding window RLNC Simon Wunderlih, Frank Gabriel, Sreekrishna Pandi, Frank H.P. Fitzek Deutshe Telekom Chair of Communiation Networks, TU Dresden, Dresden,

More information

1 The Knuth-Morris-Pratt Algorithm

1 The Knuth-Morris-Pratt Algorithm 5-45/65: Design & Analysis of Algorithms September 26, 26 Leture #9: String Mathing last hanged: September 26, 27 There s an entire field dediated to solving problems on strings. The book Algorithms on

More information

A Unified Subdivision Scheme for Polygonal Modeling

A Unified Subdivision Scheme for Polygonal Modeling EUROGRAPHICS 2 / A. Chalmers and T.-M. Rhyne (Guest Editors) Volume 2 (2), Number 3 A Unified Subdivision Sheme for Polygonal Modeling Jérôme Maillot Jos Stam Alias Wavefront Alias Wavefront 2 King St.

More information