Filters








85 Hits in 3.3 sec

Parallelism for free: Bitvector analyses ⇒ no state explosion! [chapter]

Jens Knoop, Bernhard Steffen, Jürgen Vollmer
1995 Lecture Notes in Computer Science  
The only known cure for this problem are application specific techniques, which avoid the state explosion problem under special frame conditions.  ...  In this paper we present a new such technique, which is tailored to bitvector analyses, which are very common in data flow analysis.  ...  All these techniques, which only require unidirectional bitvector analyses, are now available for parallel programs.  ... 
doi:10.1007/3-540-60630-0_13 fatcat:3qhjkw7ecbaxvbut7ym6vkfvni

Evaluation of efficient security for BGP route announcements using parallel simulation

David M Nicol, Sean W Smith, Meiyuan Zhao
2004 Simulation modelling practice and theory  
We examine the impact of highly aggressive caching and pre-computation optimizations for S-BGP, and find that convergence time is much closer to BGP.  ...  These experiments--whose memory demands easily exceed 10Gb--are made possible using Simulation Modelling Practice and Theory 12 (2004) 187-216 parallel simulation.  ...  Premore for their helpful suggestions. This project was supported under Award No. 2000-DT-CX-K001 from the Office for Domestic Preparedness, U.S. Department of Homeland Security.  ... 
doi:10.1016/j.simpat.2003.10.003 fatcat:pvj7ij22cnfnbm3w3xnj25b4ti

The Complexity of Copy Constant Detection in Parallel Programs [chapter]

Markus Müller-Olm
2001 Lecture Notes in Computer Science  
Despite of the well-known state-explosion problem, certain simple but important data-flow analysis problems known as gen/kill problems can be solved efficiently and completely for parallel programs with  ...  We show that already the intraprocedural problem for loop-free parallel programs is co-NP-complete and that the interprocedural problem is even PSPACE-hard. 1 Gen/kill problems are characterized by the  ...  I am also grateful to the anonymous referees for their valuable comments.  ... 
doi:10.1007/3-540-44693-1_43 fatcat:35x4aaeuxjbincrud4iemih26m

Compositional Bitvector Analysis for Concurrent Programs with Nested Locks [chapter]

Azadeh Farzan, Zachary Kincaid
2010 Lecture Notes in Computer Science  
We propose a new technique to perform bitvector data flow analysis for concurrent programs. Our algorithm works for concurrent programs with nested locking synchronization.  ...  We show that this algorithm computes precise solutions (meet over all paths) to bitvector problems.  ...  This is not true for data flow analyses which are not bitvector analyses.  ... 
doi:10.1007/978-3-642-15769-1_16 fatcat:qrswf7z6xzbqtlghooiedyhgnm

From DFA-Frameworks to DFA-Generators: A Unifying Multiparadigm Approach [chapter]

Jens Knoop
1999 Lecture Notes in Computer Science  
In this article we exploit this for the construction of program analysis generators based on a uniform design principle.  ...  This considerably eases the construction of analyses within a specific paradigm as well as the switch between and the transfer of analyses to other paradigms.  ...  : a dilemma often condensed to the catch-phrase "state explosion problem."  ... 
doi:10.1007/3-540-49059-0_25 fatcat:ayepr6dncbckzoc6erwzdbzqhi

Automatic Verification of LLVM Code [article]

Axel Legay, Dirk Nowotka, Danny Bøgsted Poulsen
2020 arXiv   pre-print
In this work we present our work in developing a software verification tool for llvm-code - Lodin - that incorporates both explicit-state model checking, statistical model checking and symbolic state model  ...  State Space Reductions A well-known problem for explicit-state reachability checking of parallel systems is the notorious state space explosion problem i.e. that the combined state space increases exponentially  ...  a new context state updated with information that t is no longer free for allocation. free A : S A × ty∈T dom A (ty * ) → S A This function takes a context state s and a value in k ∈ i∈B dom A (ii * )  ... 
arXiv:2006.02670v1 fatcat:566pfscbeveplm4awzknablv4u

Juxtapp: A Scalable System for Detecting Code Reuse among Android Applications [chapter]

Steve Hanna, Ling Huang, Edward Wu, Saung Li, Charles Chen, Dawn Song
2013 Lecture Notes in Computer Science  
Mobile application markets such as the Android Marketplace and the Amazon Android store provide a centralized showcase of applications that end users can purchase or download for free onto their mobile  ...  In light of this, we propose Juxtapp, a scalable infrastructure for code similarity analysis among Android applications.  ...  They roughly fall into two categories: syntactic level analyses and semantic level analyses.  ... 
doi:10.1007/978-3-642-37300-8_4 fatcat:d2hjua4yljdf7d5f2dk4cqhyay

Floating-point symbolic execution: A case study in N-version programming

Daniel Liew, Daniel Schemmel, Cristian Cadar, Alastair F. Donaldson, Rafael Zahl, Klaus Wehrle
2017 2017 32nd IEEE/ACM International Conference on Automated Software Engineering (ASE)  
Accepted for publication in Proc. of ASE 2017. Copyright IEEE.  ...  Symbolic execution is a well-known program analysis technique for testing software, which makes intensive use of constraint solvers.  ...  The Z3 developers confirmed this, suggesting that Z3 is not currently well-optimized for queries mixing the theory of quantifier-free bitvector arrays with the theory of quantifier-free floating point  ... 
doi:10.1109/ase.2017.8115670 dblp:conf/kbse/LiewSCDZW17 fatcat:2mzqrrregjaxhiug5ujg3cf6pa

Towards Porting Operating Systems with Program Synthesis [article]

Jingmei Hu, Eric Lu, David A. Holland, Ming Kawaguchi, Stephen Chong, Margo I. Seltzer
2022 arXiv   pre-print
One of the issues involved is writing specifications, both for machine-dependent operating system functionality and for instruction set architectures.  ...  The effectiveness of our languages and ability to synthesize code for all 140 specifications is evidence of the feasibility of program synthesis for machine-dependent OS code.  ...  We are grateful to the support of the Barrelfish team from ETH Zurich, and especially, to Reto Achermann for answering our many questions about the system and its ecosystem.  ... 
arXiv:2204.07167v1 fatcat:mgdchxpsijf4dmt5si6bfmiomu

Symbooglix: A Symbolic Execution Engine for Boogie Programs

Daniel Liew, Cristian Cadar, Alastair F. Donaldson
2016 2016 IEEE International Conference on Software Testing, Verification and Validation (ICST)  
Our results show that Symbooglix significantly outperforms Boogaloo, an existing symbolic execution tool for Boogie, and is competitive with GPUVerify on benchmarks for which GPUVerify is highly optimised  ...  We present the design and implementation of Symbooglix, a symbolic execution engine for the Boogie intermediate verification language.  ...  This optimisation is currently implemented only for integers, and not bitvectors. Efficient execution state cloning.  ... 
doi:10.1109/icst.2016.11 dblp:conf/icst/LiewCD16 fatcat:dg2lmao6hfcwzdpuwdsnfydzou

Input-covering schedules for multithreaded programs

Tom Bergan, Luis Ceze, Dan Grossman
2013 Proceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applications - OOPSLA '13  
To deal with programs that run for an unbounded length of time, we partition execution into bounded epochs, find input-covering schedules for each epoch in isolation, and then piece the schedules together  ...  Our approach is to first compute a small Σ for a given program P, and then, at runtime, constrain P's execution to always follow some schedule in Σ, and never deviate.  ...  This is a source of state-space explosion that we can think of no good way to eliminate.  ... 
doi:10.1145/2509136.2509508 dblp:conf/oopsla/BerganCG13 fatcat:ui4h7kutbzenxgyo5j5mmyrdya

Input-covering schedules for multithreaded programs

Tom Bergan, Luis Ceze, Dan Grossman
2013 SIGPLAN notices  
To deal with programs that run for an unbounded length of time, we partition execution into bounded epochs, find input-covering schedules for each epoch in isolation, and then piece the schedules together  ...  Our approach is to first compute a small Σ for a given program P, and then, at runtime, constrain P's execution to always follow some schedule in Σ, and never deviate.  ...  This is a source of state-space explosion that we can think of no good way to eliminate.  ... 
doi:10.1145/2544173.2509508 fatcat:x7dxa65wnbb7jeifwgm2eqexlq

Abstract Interpretation with Unfoldings [chapter]

Marcelo Sousa, César Rodríguez, Vijay D'Silva, Daniel Kroening
2017 Lecture Notes in Computer Science  
We present and evaluate a technique for computing pathsensitive interference conditions during abstract interpretation of concurrent programs.  ...  The authors would like to thank Antoine Miné for the invaluable help with AstreeA and the anonymous reviewers for their helpful feedback. Abstract Interpretation with Unfoldings  ...  Static analyses of sequential programs often avoid this explosion (at the expense of precision) by over-approximating (using join or widening) the abstract state at the CFG locations where two or more  ... 
doi:10.1007/978-3-319-63390-9_11 fatcat:n57filwwlfgilprwfeku75v2mm

High-Performance Graph Algorithms (Dagstuhl Seminar 18241)

Henning Meyerhenke, Richard Peng, Ilya Safro, Michael Wagner
2018 Dagstuhl Reports  
The abstracts included in this report contain and survey recent state-of-the-art results, but also point to promising new directions for high-performance graph algorithms and their applications, both from  ...  Massively parallel communication-free graph generators We present efficient distributed algorithms for generating massive graphs for several popular models of random graphs.  ...  The rapid growth of the Internet and the explosion in online social media has led to a data deluge.  ... 
doi:10.4230/dagrep.8.6.19 dblp:journals/dagstuhl-reports/MeyerhenkePS18 fatcat:nbodjldinjgq7eahxl6obpaqie

Static Analysis of IMC

Nataliya Skrypnyuk, Flemming Nielson, Henrik Pilegaard
2012 The Journal of Logic and Algebraic Programming  
An IMC G expression E is considered well-formed if, first, only process identifier closed processes are put in parallel (rule (7) ), and second, no free name can be hidden (rule (6) ).  ...  The closeness for E{X/X := E} follows from the fact that the only free process variable in E can be X, therefore no free process identifiers are present in E{X/X := E} after the substitution.  ... 
doi:10.1016/j.jlap.2012.03.011 fatcat:zqeohfjbqnekdkhm5l3xpydrpi
« Previous Showing results 1 — 15 out of 85 results