english only
EPFL > I&C > Tresor > Seminars
RESOURCES
Home
People
Seminars
Courses
Research Topics
Events
Useful Links

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
seminars:2010 [2010/07/08 22:37]
psuter
seminars:2010 [2010/07/19 14:26]
psuter
Line 192: Line 192:
  
 We have implemented our type system as an extension to Scala. Practical experience suggests that our system allows type checking real-world actor-based concurrent programs with only a small number of additional type annotations. We have implemented our type system as an extension to Scala. Practical experience suggests that our system allows type checking real-world actor-based concurrent programs with only a small number of additional type annotations.
 +
 \\ \\
 \\ \\
Line 219: Line 220:
  
 (Joint work with Pierre Ganty and Benjamin Monmege) (Joint work with Pierre Ganty and Benjamin Monmege)
 +
 +\\
 +\\
 +===== Automatically Identifying Critical Input Regions and Code in Applications =====
 +
 +  * 2010-07-09 - 15:15, [[http://​plan.epfl.ch/?​lang=en&​room=BC229|BC229]],​ [[http://​people.csail.mit.edu/​mcarbin|Michael Carbin]], MIT CSAIL
 +
 +Abstract:
 +
 +Applications that process complex inputs often react in different ways to changes in different regions of the input. Small changes to forgiving regions induce correspondingly small changes in the behavior and output. Small changes to critical regions, on the other hand, can induce disproportionally large changes in the behavior or output. Identifying the critical and forgiving regions in the input and the corresponding critical and forgiving regions of code is directly relevant to many software engineering tasks.
 +
 +In this talk, I will present a system, Snap, for automatically grouping related input bytes into fields and classifying each field and corresponding regions of code as critical or forgiving. Given an application and one or more inputs, Snap uses targeted input fuzzing in combination with dynamic execution and influence tracing to classify regions of input fields and code as critical or forgiving. Our experimental evaluation shows that Snap makes classifications with close to perfect precision (99%) and very good recall (between 99% and 73%, depending on the application).