Graph-Based Algorithms for Boolean Function Manipulation
IEEE Transactions on Computers
Abstract interpretation and application to logic programs
Journal of Logic Programming
IEEE Transactions on Software Engineering - Special issue on formal methods in software practice
Automatic predicate abstraction of C programs
Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation
The SLAM project: debugging system software via static analysis
POPL '02 Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
POPL '02 Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
ESP: path-sensitive program verification in polynomial time
PLDI '02 Proceedings of the ACM SIGPLAN 2002 Conference on Programming language design and implementation
Extended static checking for Java
PLDI '02 Proceedings of the ACM SIGPLAN 2002 Conference on Programming language design and implementation
Automatic discovery of linear restraints among variables of a program
POPL '78 Proceedings of the 5th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
A unified approach to global program optimization
POPL '73 Proceedings of the 1st annual ACM SIGACT-SIGPLAN symposium on Principles of programming languages
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Systematic design of program analysis frameworks
POPL '79 Proceedings of the 6th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Comparing the Galois Connection and Widening/Narrowing Approaches to Abstract Interpretation
PLILP '92 Proceedings of the 4th International Symposium on Programming Language Implementation and Logic Programming
Relative Completeness of Abstraction Refinement for Software Model Checking
TACAS '02 Proceedings of the 8th International Conference on Tools and Algorithms for the Construction and Analysis of Systems
Reliable and Precise WCET Determination for a Real-Life Processor
EMSOFT '01 Proceedings of the First International Workshop on Embedded Software
Compactly Representing First-Order Structures for Static Analysis
SAS '02 Proceedings of the 9th International Symposium on Static Analysis
Speeding Up Dataflow Analysis Using Flow-Insensitive Pointer Analysis
SAS '02 Proceedings of the 9th International Symposium on Static Analysis
Static Analysis of the Numerical Stability of Loops
SAS '02 Proceedings of the 9th International Symposium on Static Analysis
Construction of Abstract State Graphs with PVS
CAV '97 Proceedings of the 9th International Conference on Computer Aided Verification
FM-Trends 98 Proceedings of the International Workshop on Current Trends in Applied Formal Method: Applied Formal Methods
WCRE '01 Proceedings of the Eighth Working Conference on Reverse Engineering (WCRE'01)
CMC: a pragmatic approach to model checking real code
OSDI '02 Proceedings of the 5th symposium on Operating systems design and implementationCopyright restrictions prevent ACM from being able to make the PDFs for this conference available for downloading
Checking system rules using system-specific, programmer-written compiler extensions
OSDI'00 Proceedings of the 4th conference on Symposium on Operating System Design & Implementation - Volume 4
Symbolic transfer function-based approaches to certified compilation
Proceedings of the 31st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Validation of assembler programs for DSPs: a static analyzer
Proceedings of the 5th ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Precise and efficient static array bound checking for large embedded C programs
Proceedings of the ACM SIGPLAN 2004 conference on Programming language design and implementation
Online Cycle Detection and Difference Propagation: Applications to Pointer Analysis
Software Quality Control
DynaMine: finding common error patterns by mining software revision histories
Proceedings of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering
Termination of Floating-Point Computations
Journal of Automated Reasoning
Termination proofs for systems code
Proceedings of the 2006 ACM SIGPLAN conference on Programming language design and implementation
Field-sensitive value analysis of embedded C programs with union types and pointer arithmetics
Proceedings of the 2006 ACM SIGPLAN/SIGBED conference on Language, compilers, and tool support for embedded systems
Higher-Order and Symbolic Computation
Some ways to reduce the space dimension in polyhedra computations
Formal Methods in System Design
Proving the absence of RTSJ related runtime errors through data flow analysis
JTRES '06 Proceedings of the 4th international workshop on Java technologies for real-time and embedded systems
A framework for the static verification of api calls
Journal of Systems and Software
Proceedings of the 2007 ACM SIGPLAN conference on Programming language design and implementation
Proceedings of the 2007 ACM SIGPLAN conference on Programming language design and implementation
Source Code Analysis: A Road Map
FOSE '07 2007 Future of Software Engineering
The trace partitioning abstract domain
ACM Transactions on Programming Languages and Systems (TOPLAS) - Special Issue ESOP'05
State space exploration using feedback constraint generation and Monte-Carlo sampling
Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering
Proving the absence of run-time errors in safety-critical avionics code
EMSOFT '07 Proceedings of the 7th ACM & IEEE international conference on Embedded software
Verification of device drivers and intelligent controllers: a case study
EMSOFT '07 Proceedings of the 7th ACM & IEEE international conference on Embedded software
Efficient field-sensitive pointer analysis of C
ACM Transactions on Programming Languages and Systems (TOPLAS)
A practical and precise inference and specializer for array bound checks elimination
PEPM '08 Proceedings of the 2008 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
The pitfalls of verifying floating-point computations
ACM Transactions on Programming Languages and Systems (TOPLAS)
Pentagons: a weakly relational abstract domain for the efficient validation of array accesses
Proceedings of the 2008 ACM symposium on Applied computing
Discovering properties about arrays in simple programs
Proceedings of the 2008 ACM SIGPLAN conference on Programming language design and implementation
Practical memory leak detector based on parameterized procedural summaries
Proceedings of the 7th international symposium on Memory management
A practical approach to formal software verification by static analysis
ACM SIGAda Ada Letters
The Verification Grand Challenge and Abstract Interpretation
Verified Software: Theories, Tools, Experiments
Towards the Integration of Symbolic and Numerical Static Analysis
Verified Software: Theories, Tools, Experiments
Abstract Interpretation with Applications to Timing Validation
CAV '08 Proceedings of the 20th international conference on Computer Aided Verification
Scalable Shape Analysis for Systems Code
CAV '08 Proceedings of the 20th international conference on Computer Aided Verification
Effective blame for information-flow violations
Proceedings of the 16th ACM SIGSOFT International Symposium on Foundations of software engineering
Class invariants as abstract interpretation of trace semantics
Computer Languages, Systems and Structures
Automatic modular abstractions for linear constraints
Proceedings of the 36th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A Sound Floating-Point Polyhedra Abstract Domain
APLAS '08 Proceedings of the 6th Asian Symposium on Programming Languages and Systems
A Scalable Memory Model for Low-Level Code
VMCAI '09 Proceedings of the 10th International Conference on Verification, Model Checking, and Abstract Interpretation
Combining predicate and numeric abstraction for software model checking
Proceedings of the 2008 International Conference on Formal Methods in Computer-Aided Design
TACAS '09 Proceedings of the 15th International Conference on Tools and Algorithms for the Construction and Analysis of Systems: Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009,
SoftBound: highly compatible and complete spatial memory safety for c
Proceedings of the 2009 ACM SIGPLAN conference on Programming language design and implementation
Cardinality Abstraction for Declarative Networking Applications
CAV '09 Proceedings of the 21st International Conference on Computer Aided Verification
Formal methods: Practice and experience
ACM Computing Surveys (CSUR)
ACM Computing Surveys (CSUR)
Proving the Correctness of the Implementation of a Control-Command Algorithm
SAS '09 Proceedings of the 16th International Symposium on Static Analysis
Theoretical Computer Science
Refining the control structure of loops using static analysis
EMSOFT '09 Proceedings of the seventh ACM international conference on Embedded software
Program Analysis with Dynamic Precision Adjustment
ASE '08 Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering
Attacking Large Industrial Code with Bi-abductive Inference
FMICS '09 Proceedings of the 14th International Workshop on Formal Methods for Industrial Critical Systems
Certifiable Specification and Verification of C Programs
FM '09 Proceedings of the 2nd World Congress on Formal Methods
Exploration of SWRL Rule Bases through Visualization, Paraphrasing, and Categorization of Rules
RuleML '09 Proceedings of the 2009 International Symposium on Rule Interchange and Applications
Large Spurious Cycle in Global Static Analyses and Its Algorithmic Mitigation
APLAS '09 Proceedings of the 7th Asian Symposium on Programming Languages and Systems
Refining Abstract Interpretation-Based Static Analyses with Hints
APLAS '09 Proceedings of the 7th Asian Symposium on Programming Languages and Systems
Electronic Notes in Theoretical Computer Science (ENTCS)
Proceedings of the 37th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Static determination of quantitative resource usage for higher-order programs
Proceedings of the 37th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Abstraction-guided synthesis of synchronization
Proceedings of the 37th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Weakly-relational shapes for numeric abstractions: improved algorithms and proofs of correctness
Formal Methods in System Design
Formal Methods in System Design
A minimalistic look at widening operators
Higher-Order and Symbolic Computation
WYSINWYX: What you see is not what you eXecute
ACM Transactions on Programming Languages and Systems (TOPLAS)
Interprocedurally analysing linear inequality relations
ESOP'07 Proceedings of the 16th European conference on Programming
Constraint solving for interpolation
VMCAI'07 Proceedings of the 8th international conference on Verification, model checking, and abstract interpretation
Structural abstraction of software verification conditions
CAV'07 Proceedings of the 19th international conference on Computer aided verification
Towards program optimization through automated analysis of numerical precision
Proceedings of the 8th annual IEEE/ACM international symposium on Code generation and optimization
Dual analysis for proving safety and finding bugs
Proceedings of the 2010 ACM Symposium on Applied Computing
Combination of abstractions in the ASTRÉE static analyzer
ASIAN'06 Proceedings of the 11th Asian computing science conference on Advances in computer science: secure software and related issues
Inferring disjunctive postconditions
ASIAN'06 Proceedings of the 11th Asian computing science conference on Advances in computer science: secure software and related issues
Abstract interpretation of cellular signalling networks
VMCAI'08 Proceedings of the 9th international conference on Verification, model checking, and abstract interpretation
On the relative completeness of bytecode analysis versus source code analysis
CC'08/ETAPS'08 Proceedings of the Joint European Conferences on Theory and Practice of Software 17th international conference on Compiler construction
Analyzing stripped device-driver executables
TACAS'08/ETAPS'08 Proceedings of the Theory and practice of software, 14th international conference on Tools and algorithms for the construction and analysis of systems
Static analysis of the accuracy in control systems: principles and experiments
FMICS'07 Proceedings of the 12th international conference on Formal methods for industrial critical systems
Pentagons: A weakly relational abstract domain for the efficient validation of array accesses
Science of Computer Programming
A novel analysis space for pointer analysis and its application for bug finding
Science of Computer Programming
An algorithmic mitigation of large spurious interprocedural cycles in static analysis
Software—Practice & Experience
Widening and narrowing operators for abstract interpretation
Computer Languages, Systems and Structures
Range and Set Abstraction using SAT
Electronic Notes in Theoretical Computer Science (ENTCS)
Abstract Fixpoint Computations with Numerical Acceleration Methods
Electronic Notes in Theoretical Computer Science (ENTCS)
Relational Abstract Domain of Weighted Hexagons
Electronic Notes in Theoretical Computer Science (ENTCS)
Automatic verification of control system implementations
EMSOFT '10 Proceedings of the tenth ACM international conference on Embedded software
Deriving numerical abstract domains via principal component analysis
SAS'10 Proceedings of the 17th international conference on Static analysis
Proceedings of the FSE/SDP workshop on Future of software engineering research
100% coverage for safety-critical software - efficient testing by static analysis
SAFECOMP'10 Proceedings of the 29th international conference on Computer safety, reliability, and security
Static analysis by abstract interpretation of embedded critical software
ACM SIGSOFT Software Engineering Notes
Verified squared: does critical software deserve verified tools?
Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Calling context abstraction with shapes
Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Non-monotonic refinement of control abstraction for concurrent programs
ATVA'10 Proceedings of the 8th international conference on Automated technology for verification and analysis
Mutation-based test case generation for simulink models
FMCO'09 Proceedings of the 8th international conference on Formal methods for components and objects
Simple and precise widenings for H-polyhedra
APLAS'10 Proceedings of the 8th Asian conference on Programming languages and systems
Static contract checking with abstract interpretation
FoVeOOS'10 Proceedings of the 2010 international conference on Formal verification of object-oriented software
Sawja: static analysis workshop for java
FoVeOOS'10 Proceedings of the 2010 international conference on Formal verification of object-oriented software
Inferring loop invariants using postconditions
Fields of logic and computation
MeCC: memory comparison-based clone detector
Proceedings of the 33rd International Conference on Software Engineering
Infer: an automatic program verifier for memory safety of C programs
NFM'11 Proceedings of the Third international conference on NASA Formal methods
Improving strategies via SMT solving
ESOP'11/ETAPS'11 Proceedings of the 20th European conference on Programming languages and systems: part of the joint European conferences on theory and practice of software
Static analysis of run-time errors in embedded critical parallel C programs
ESOP'11/ETAPS'11 Proceedings of the 20th European conference on Programming languages and systems: part of the joint European conferences on theory and practice of software
Subregion analysis and bounds check elimination for high level arrays
CC'11/ETAPS'11 Proceedings of the 20th international conference on Compiler construction: part of the joint European conferences on theory and practice of software
Separation logic + superposition calculus = heap theorem prover
Proceedings of the 32nd ACM SIGPLAN conference on Programming language design and implementation
Temporal property verification as a program analysis task
CAV'11 Proceedings of the 23rd international conference on Computer aided verification
HMC: verifying functional programs using abstract interpreters
CAV'11 Proceedings of the 23rd international conference on Computer aided verification
The two variable per inequality abstract domain
Higher-Order and Symbolic Computation
Using bounded model checking to focus fixpoint iterations
SAS'11 Proceedings of the 18th international conference on Static analysis
Static analysis in disjunctive numerical domains
SAS'06 Proceedings of the 13th international conference on Static Analysis
Static analysis of numerical algorithms
SAS'06 Proceedings of the 13th international conference on Static Analysis
SAS'06 Proceedings of the 13th international conference on Static Analysis
Combining widening and acceleration in linear relation analysis
SAS'06 Proceedings of the 13th international conference on Static Analysis
Proving the properties of communicating imperfectly-clocked synchronous systems
SAS'06 Proceedings of the 13th international conference on Static Analysis
The parallel implementation of the astrée static analyzer
APLAS'05 Proceedings of the Third Asian conference on Programming Languages and Systems
Integrating physical systems in the static analysis of embedded control software
APLAS'05 Proceedings of the Third Asian conference on Programming Languages and Systems
Abstract dependences for alarm diagnosis
APLAS'05 Proceedings of the Third Asian conference on Programming Languages and Systems
An abstract domain to discover interval linear equalities
VMCAI'10 Proceedings of the 11th international conference on Verification, Model Checking, and Abstract Interpretation
Scalable analysis of linear systems using mathematical programming
VMCAI'05 Proceedings of the 6th international conference on Verification, Model Checking, and Abstract Interpretation
The arithmetic-geometric progression abstract domain
VMCAI'05 Proceedings of the 6th international conference on Verification, Model Checking, and Abstract Interpretation
An overview of semantics for the validation of numerical programs
VMCAI'05 Proceedings of the 6th international conference on Verification, Model Checking, and Abstract Interpretation
VMCAI'05 Proceedings of the 6th international conference on Verification, Model Checking, and Abstract Interpretation
Predicate abstraction and canonical abstraction for singly-linked lists
VMCAI'05 Proceedings of the 6th international conference on Verification, Model Checking, and Abstract Interpretation
Verification of an error correcting code by abstract interpretation
VMCAI'05 Proceedings of the 6th international conference on Verification, Model Checking, and Abstract Interpretation
Cryptographic protocol analysis on real c code
VMCAI'05 Proceedings of the 6th international conference on Verification, Model Checking, and Abstract Interpretation
RED: a tool for runtime error detection in C programs using abstract interpretation
Proceedings of the 5th India Software Engineering Conference
cascade: C assertion checker and deductive engine
CAV'06 Proceedings of the 18th international conference on Computer Aided Verification
Tools for verification and validation
Embedded Systems Design
Trace partitioning in abstract interpretation based static analyzers
ESOP'05 Proceedings of the 14th European conference on Programming Languages and Systems
ESOP'05 Proceedings of the 14th European conference on Programming Languages and Systems
A framework for certified program analysis and its applications to mobile-code safety
VMCAI'06 Proceedings of the 7th international conference on Verification, Model Checking, and Abstract Interpretation
Symbolic methods to enhance the precision of numerical abstract domains
VMCAI'06 Proceedings of the 7th international conference on Verification, Model Checking, and Abstract Interpretation
Abstract interpretation-based verification of non-functional requirements
COORDINATION'05 Proceedings of the 7th international conference on Coordination Models and Languages
Widening operators for weakly-relational numeric abstractions
SAS'05 Proceedings of the 12th international conference on Static Analysis
Generation of basic semi-algebraic invariants using convex polyhedra
SAS'05 Proceedings of the 12th international conference on Static Analysis
Taming false alarms from a domain-unaware c analyzer by a bayesian statistical post analysis
SAS'05 Proceedings of the 12th international conference on Static Analysis
A generic framework for interprocedural analysis of numerical properties
SAS'05 Proceedings of the 12th international conference on Static Analysis
Understanding the origin of alarms in ASTRÉE
SAS'05 Proceedings of the 12th international conference on Static Analysis
Exploiting sparsity in polyhedral analysis
SAS'05 Proceedings of the 12th international conference on Static Analysis
Join algorithms for the theory of uninterpreted functions
FSTTCS'04 Proceedings of the 24th international conference on Foundations of Software Technology and Theoretical Computer Science
Dependable Systems
ARMC: the logical choice for software model checking with abstraction refinement
PADL'07 Proceedings of the 9th international conference on Practical Aspects of Declarative Languages
RATA: rapid atomic type analysis by abstract interpretation – application to javascript optimization
CC'10/ETAPS'10 Proceedings of the 19th joint European conference on Theory and Practice of Software, international conference on Compiler Construction
Access-Based localization with bypassing
APLAS'11 Proceedings of the 9th Asian conference on Programming Languages and Systems
Runtime enforcement of information flow security in tree manipulating processes
ESSoS'12 Proceedings of the 4th international conference on Engineering Secure Software and Systems
Sound non-statistical clustering of static analysis alarms
VMCAI'12 Proceedings of the 13th international conference on Verification, Model Checking, and Abstract Interpretation
DC2: A framework for scalable, scope-bounded software verification
ASE '11 Proceedings of the 2011 26th IEEE/ACM International Conference on Automated Software Engineering
Using data flow analysis for the reliability assessment of safety-critical software systems
CSCC'11 Proceedings of the 2nd international conference on Circuits, Systems, Communications & Computers
Design and implementation of sparse global analyses for C-like languages
Proceedings of the 33rd ACM SIGPLAN conference on Programming Language Design and Implementation
SuperC: parsing all of C by taming the preprocessor
Proceedings of the 33rd ACM SIGPLAN conference on Programming Language Design and Implementation
Test-case reduction for C compiler bugs
Proceedings of the 33rd ACM SIGPLAN conference on Programming Language Design and Implementation
Formal verification by abstract interpretation
NFM'12 Proceedings of the 4th international conference on NASA Formal Methods
CLSE: closed-loop symbolic execution
NFM'12 Proceedings of the 4th international conference on NASA Formal Methods
Discovering invariants via simple component analysis
Journal of Symbolic Computation
Using dynamic analysis to discover polynomial and array invariants
Proceedings of the 34th International Conference on Software Engineering
Temporal property verification as a program analysis task
Formal Methods in System Design
A divide-and-conquer approach for analysing overlaid data structures
Formal Methods in System Design
Interval-Based resource usage verification: formalization and prototype
FOPARA'11 Proceedings of the Second international conference on Foundational and Practical Aspects of Resource Analysis
Modeling and analyzing the interaction of C and C++ strings
FoVeOOS'11 Proceedings of the 2011 international conference on Formal Verification of Object-Oriented Software
Program analysis using symbolic ranges
SAS'07 Proceedings of the 14th international conference on Static Analysis
Arithmetic strengthening for shape analysis
SAS'07 Proceedings of the 14th international conference on Static Analysis
Astrée: from research to industry
SAS'07 Proceedings of the 14th international conference on Static Analysis
Experimental assessment of Astrée on safety-critical avionics software
SAFECOMP'07 Proceedings of the 26th international conference on Computer Safety, Reliability, and Security
Access-Based Localization for Octagons
Electronic Notes in Theoretical Computer Science (ENTCS)
TreeKs: A Functor to Make Numerical Abstract Domains Scalable
Electronic Notes in Theoretical Computer Science (ENTCS)
PAGAI: A Path Sensitive Static Analyser
Electronic Notes in Theoretical Computer Science (ENTCS)
When the decreasing sequence fails
SAS'12 Proceedings of the 19th international conference on Static Analysis
SAS'12 Proceedings of the 19th international conference on Static Analysis
POPL '13 Proceedings of the 40th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Sub-polyhedral scheduling using (unit-)two-variable-per-inequality polyhedra
POPL '13 Proceedings of the 40th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Adoption of Model-Based Testing and Abstract Interpretation by a Railway Signalling Manufacturer
International Journal of Embedded and Real-Time Communication Systems
Experience with testing and rigorous program analysis for qualification of RTOS
Proceedings of the 6th India Software Engineering Conference
How to combine widening and narrowing for non-monotonic systems of equations
Proceedings of the 34th ACM SIGPLAN conference on Programming language design and implementation
Loop invariants: Analysis, classification, and examples
ACM Computing Surveys (CSUR)
Solving existentially quantified horn clauses
CAV'13 Proceedings of the 25th international conference on Computer Aided Verification
Abstract acceleration of general linear loops
Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
A galois connection calculus for abstract interpretation
Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
Software dataplane verification
NSDI'14 Proceedings of the 11th USENIX Conference on Networked Systems Design and Implementation
Hi-index | 0.00 |
We show that abstract interpretation-based static program analysis can be made efficient and precise enough to formally verify a class of properties for a family of large programs with few or no false alarms. This is achieved by refinement of a general purpose static analyzer and later adaptation to particular programs of the family by the end-user through parametrization. This is applied to the proof of soundness of data manipulation operations at the machine level for periodic synchronous safety critical embedded software.The main novelties are the design principle of static analyzers by refinement and adaptation through parametrization (Sect. 3 and 7), the symbolic manipulation of expressions to improve the precision of abstract transfer functions (Sect. 6.3), the octagon (Sect. 6.2.2), ellipsoid (Sect. 6.2.3), and decision tree (Sect. 6.2.4) abstract domains, all with sound handling of rounding errors in oating point computations, widening strategies (with thresholds: Sect. 7.1.2, delayed: Sect. 7.1.3) and the automatic determination of the parameters (parametrized packing: Sect. 7.2).