Abstraction and specification in program development
Abstraction and specification in program development
Formal Verification of Ada Programs
IEEE Transactions on Software Engineering
Code complete: a practical handbook of software construction
Code complete: a practical handbook of software construction
Forcing behavioral subtyping through specification inheritance
Proceedings of the 18th international conference on Software engineering
The B-book: assigning programs to meanings
The B-book: assigning programs to meanings
Precise interprocedural dataflow analysis with applications to constant propagation
TAPSOFT '95 Selected papers from the 6th international joint conference on Theory and practice of software development
Data groups: specifying the modification of extended state
Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Symbolic execution and program testing
Communications of the ACM
Monitors: an operating system structuring concept
Communications of the ACM
An axiomatic basis for computer programming
Communications of the ACM
Enforcing high-level protocols in low-level software
Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation
Contract Soundness for object-oriented languages
OOPSLA '01 Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Extended static checking for Java
PLDI '02 Proceedings of the ACM SIGPLAN 2002 Conference on Programming language design and implementation
Automating proofs of the absence of common runtime errors
POPL '78 Proceedings of the 5th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
POPL '75 Proceedings of the 2nd ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Programming with Specifications: An Introduction to Anna, a Language for Specifying ADA Programs
Programming with Specifications: An Introduction to Anna, a Language for Specifying ADA Programs
Object-Oriented Software Construction
Object-Oriented Software Construction
The Java Language Specification
The Java Language Specification
Data abstraction and information hiding
ACM Transactions on Programming Languages and Systems (TOPLAS)
Essential .NET: The Common Language Runtime
Essential .NET: The Common Language Runtime
Ownership types for safe programming: preventing data races and deadlocks
OOPSLA '02 Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
The LOOP Compiler for Java and JML
TACAS 2001 Proceedings of the 7th International Conference on Tools and Algorithms for the Construction and Analysis of Systems
Checking Java Programs via Guarded Commands
Proceedings of the Workshop on Object-Oriented Technology
Extended Static Checking: A Ten-Year Perspective
Informatics - 10 Years Back. 10 Years Ahead.
6th ICSE workshop on component-based software engineering: automated reasoning and prediction
Proceedings of the 25th International Conference on Software Engineering
Gypsy: A language for specification and implementation of verifiable programs
Proceedings of an ACM conference on Language design for reliable software
An interactive program verification system
Proceedings of the international conference on Reliable software
High Integrity Software: The SPARK Approach to Safety and Security
High Integrity Software: The SPARK Approach to Safety and Security
Runtime verification of .NET contracts
Journal of Systems and Software - Special issue on: Component-based software engineering
Stanford Pascal Verifier user manual
Stanford Pascal Verifier user manual
Proving that computer programs terminate cleanly.
Proving that computer programs terminate cleanly.
Declaring and checking non-null types in an object-oriented language
OOPSLA '03 Proceedings of the 18th annual ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications
Report on the programming language Euclid
ACM SIGPLAN Notices
SEFM '04 Proceedings of the Software Engineering and Formal Methods, Second International Conference
Generating error traces from verification-condition counterexamples
Science of Computer Programming - Formal methods for components and objects pragmatic aspects and applications
An overview of JML tools and applications
International Journal on Software Tools for Technology Transfer (STTT) - Special section on formal methods for industrial critical systems
Theoretical Computer Science - Formal methods for components and objects
An Introduction to the Construction and Verification of Alphard Programs
IEEE Transactions on Software Engineering
Crosscutting techniques in program specification and analysis
Proceedings of the 4th international conference on Aspect-oriented software development
Echo: a practical approach to formal verification
Proceedings of the 10th international workshop on Formal methods for industrial critical systems
Proceedings of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering
Online testing with model programs
Proceedings of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Exploring the acceptability envelope
OOPSLA '05 Companion to the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Weakest-precondition of unstructured programs
PASTE '05 Proceedings of the 6th ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Safe Concurrency for Aggregate Objects with Invariants
SEFM '05 Proceedings of the Third IEEE International Conference on Software Engineering and Formal Methods
SEFM '05 Proceedings of the Third IEEE International Conference on Software Engineering and Formal Methods
SEFM '05 Proceedings of the Third IEEE International Conference on Software Engineering and Formal Methods
Automatic Maintenance of Association Invariants
SEFM '05 Proceedings of the Third IEEE International Conference on Software Engineering and Formal Methods
Logical Foundations of Program Assertions: What do Practitioners Want?
SEFM '05 Proceedings of the Third IEEE International Conference on Software Engineering and Formal Methods
A specification-based approach to reasoning about pointers
SAVCBS '05 Proceedings of the 2005 conference on Specification and verification of component-based systems
Non-null references by default in the Java modeling language
SAVCBS '05 Proceedings of the 2005 conference on Specification and verification of component-based systems
Inculcating invariants in introductory courses
Proceedings of the 28th international conference on Software engineering
The echo approach to formal verification
Proceedings of the 28th international conference on Software engineering
A proof outline logic for object-oriented programming
Theoretical Computer Science - Formal methods for components and objects
Postmodern prospects for conceptual modelling
APCCM '06 Proceedings of the 3rd Asia-Pacific conference on Conceptual modelling - Volume 53
Polymorphism and separation in hoare type theory
Proceedings of the eleventh ACM SIGPLAN international conference on Functional programming
Practical proofs of concurrent programs
Proceedings of the eleventh ACM SIGPLAN international conference on Functional programming
Extended static checking for haskell
Proceedings of the 2006 ACM SIGPLAN workshop on Haskell
Propagation of JML non-null annotations in Java programs
PPPJ '06 Proceedings of the 4th international symposium on Principles and practice of programming in Java
Roadmap for enhanced languages and methods to aid verification
Proceedings of the 5th international conference on Generative programming and component engineering
Towards imperative modules: reasoning about invariants and sharing of mutable state
Theoretical Computer Science - Components and objects
Science of Computer Programming - Special issue: Synchronization and concurrency in object-oriented languages
Observational purity and encapsulation
Theoretical Computer Science
A Sound Assertion Semantics for the Dependable Systems Evolution Verifying Compiler
ICSE '07 Proceedings of the 29th international conference on Software Engineering
Information Hiding and Visibility in Interface Specifications
ICSE '07 Proceedings of the 29th international conference on Software Engineering
Broad new OS research: challenges and opportunities
HOTOS'05 Proceedings of the 10th conference on Hot Topics in Operating Systems - Volume 10
Electronic Notes in Theoretical Computer Science (ENTCS)
Model-driven validation of SystemC designs
Proceedings of the 44th annual Design Automation Conference
Implicitly parallel programming models for thousand-core microprocessors
Proceedings of the 44th annual Design Automation Conference
Reachability analysis for annotated code
Proceedings of the 2007 conference on Specification and verification of component-based systems: 6th Joint Meeting of the European Conference on Software Engineering and the ACM SIGSOFT Symposium on the Foundations of Software Engineering
Ilea: inter-language analysis across java and c
Proceedings of the 22nd annual ACM SIGPLAN conference on Object-oriented programming systems and applications
Establishing object invariants with delayed types
Proceedings of the 22nd annual ACM SIGPLAN conference on Object-oriented programming systems and applications
Modular verification of higher-order methods with mandatory calls specified by model programs
Proceedings of the 22nd annual ACM SIGPLAN conference on Object-oriented programming systems and applications
Mop: an efficient and generic runtime verification framework
Proceedings of the 22nd annual ACM SIGPLAN conference on Object-oriented programming systems and applications
Verification condition generation for conditional information flow
Proceedings of the 2007 ACM workshop on Formal methods in security engineering
Verified component-based software in SPARK: experimental results for a missile guidance system
Proceedings of the 2007 ACM international conference on SIGAda annual international conference
Specifying and verifying software
Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering
Technological foundations of electronic governance
Proceedings of the 1st international conference on Theory and practice of electronic governance
Separation logic, abstraction and inheritance
Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Enhancing modular OO verification with separation logic
Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Back to the future: revisiting precise program verification using SMT solvers
Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
ISEC '08 Proceedings of the 1st India software engineering conference
Using SMT solvers to verify high-integrity programs
Proceedings of the second workshop on Automated formal methods
The Verification of rCOS Using Spin
Electronic Notes in Theoretical Computer Science (ENTCS)
Model-based User Interface Testing With Spec Explorer and ConcurTaskTrees
Electronic Notes in Theoretical Computer Science (ENTCS)
Implementing Java modeling language contracts with AspectJ
Proceedings of the 2008 ACM symposium on Applied computing
Electronic Notes in Theoretical Computer Science (ENTCS)
Analysing memory resource bounds for low-level programs
Proceedings of the 7th international symposium on Memory management
Checking the hardware-software interface in spec#
Proceedings of the 4th workshop on Programming languages and operating systems
Verifying dereference safety via expanding-scope analysis
ISSTA '08 Proceedings of the 2008 international symposium on Software testing and analysis
Ynot: dependent types for imperative programs
Proceedings of the 13th ACM SIGPLAN international conference on Functional programming
The Spec# Programming System: Challenges and Directions
Verified Software: Theories, Tools, Experiments
Implications of a Data Structure Consistency Checking System
Verified Software: Theories, Tools, Experiments
Eiffel as a Framework for Verification
Verified Software: Theories, Tools, Experiments
Verified Software: Theories, Tools, Experiments
ICESS '07 Proceedings of the 3rd international conference on Embedded Software and Systems
Efficient E-Matching for SMT Solvers
CADE-21 Proceedings of the 21st international conference on Automated Deduction: Automated Deduction
FM '08 Proceedings of the 15th international symposium on Formal Methods
Checking Well-Formedness of Pure-Method Specifications
FM '08 Proceedings of the 15th international symposium on Formal Methods
A Hoare Logic for Call-by-Value Functional Programs
MPC '08 Proceedings of the 9th international conference on Mathematics of Program Construction
An Algebraic Semantics for Contract-Based Software Components
AMAST 2008 Proceedings of the 12th international conference on Algebraic Methodology and Software Technology
Verification of Java Programs with Generics
AMAST 2008 Proceedings of the 12th international conference on Algebraic Methodology and Software Technology
A Unified Framework for Verification Techniques for Object Invariants
ECOOP '08 Proceedings of the 22nd European conference on Object-Oriented Programming
Extensible Universes for Object-Oriented Data Models
ECOOP '08 Proceedings of the 22nd European conference on Object-Oriented Programming
Using Dynamic Symbolic Execution to Improve Deductive Verification
SPIN '08 Proceedings of the 15th international workshop on Model Checking Software
Efficient Well-Definedness Checking
IJCAR '08 Proceedings of the 4th international joint conference on Automated Reasoning
Engineering DPLL(T) + Saturation
IJCAR '08 Proceedings of the 4th international joint conference on Automated Reasoning
jStar: towards practical verification for java
Proceedings of the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications
Enforcing object protocols by combining static and runtime analysis
Proceedings of the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications
Proceedings of the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications
Grey-box specifications for object-oriented program components
Companion to the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications
A programming model for concurrent object-oriented programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Verifiable functional purity in java
Proceedings of the 15th ACM conference on Computer and communications security
HOL-Boogie -- An Interactive Prover for the Boogie Program-Verifier
TPHOLs '08 Proceedings of the 21st International Conference on Theorem Proving in Higher Order Logics
Model-driven validation of SystemC designs
EURASIP Journal on Embedded Systems - C-Based Design of Heterogeneous Embedded Systems
Unifying type checking and property checking for low-level code
Proceedings of the 36th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Design patterns in separation logic
Proceedings of the 4th international workshop on Types in language design and implementation
A Practical Approach to Partiality --- A Proof Based Approach
ICFEM '08 Proceedings of the 10th International Conference on Formal Methods and Software Engineering
A Lightweight Container Architecture for Runtime Verification
Runtime Verification
Valigator: A Verification Tool with Bound and Invariant Generation
LPAR '08 Proceedings of the 15th International Conference on Logic for Programming, Artificial Intelligence, and Reasoning
CUDA-Lite: Reducing GPU Programming Complexity
Languages and Compilers for Parallel Computing
Refinement and verification in component-based model-driven design
Science of Computer Programming
An Extensible Encoding of Object-oriented Data Models in hol
Journal of Automated Reasoning
A Scalable Memory Model for Low-Level Code
VMCAI '09 Proceedings of the 10th International Conference on Verification, Model Checking, and Abstract Interpretation
A Machine Checked Soundness Proof for an Intermediate Verification Language
SOFSEM '09 Proceedings of the 35th Conference on Current Trends in Theory and Practice of Computer Science
Automatic processor customization for zero-overhead online software verification
IEEE Transactions on Very Large Scale Integration (VLSI) Systems
Specification and Verification of Invariants by Exploiting Layers in OO Designs
Fundamenta Informaticae - Concurrency Specification and Programming (CS&P)
Hoare type theory, polymorphism and separation1
Journal of Functional Programming
Contract Specification in Java: Classification, Characterization, and a New Marker Method
IEICE - Transactions on Information and Systems
Extended static checking in JML4: benefits of multiple-prover support
Proceedings of the 2009 ACM symposium on Applied Computing
Reasoning about comprehensions with first-order SMT solvers
Proceedings of the 2009 ACM symposium on Applied Computing
Algebraic specification techniques for parametric types with logic-based constraints
Proceedings of the 2009 ACM symposium on Applied Computing
Verifying Reference Counting Implementations
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,
FASE '09 Proceedings of the 12th International Conference on Fundamental Approaches to Software Engineering: Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009
Finding Loop Invariants for Programs over Arrays Using a Theorem Prover
FASE '09 Proceedings of the 12th International Conference on Fundamental Approaches to Software Engineering: Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009
Certificate translation for optimizing compilers
ACM Transactions on Programming Languages and Systems (TOPLAS)
The need for flexible object invariants
International Workshop on Aliasing, Confinement and Ownership in Object-Oriented Programming
Guaranteeing correctness of component bindings in dynamic adaptive systems based on runtime testing
Proceedings of the 4th international workshop on Services integration in pervasive environments
Software hardening: a research agenda
Proceedings for the 1st workshop on Script to Program Evolution
A comparative study of programmer-written and automatically inferred contracts
Proceedings of the eighteenth international symposium on Software testing and analysis
Automatic Generation of Runtime Failure Detectors from Property Templates
Software Engineering for Self-Adaptive Systems
CAV '09 Proceedings of the 21st International Conference on Computer Aided Verification
Incremental integrity checking of UML/OCL conceptual schemas
Journal of Systems and Software
Typestate protocol specification in JML
Proceedings of the 8th international workshop on Specification and verification of component-based systems
Who: a verifier for effectful higher-order programs
Proceedings of the 2009 ACM SIGPLAN workshop on ML
PPDP '09 Proceedings of the 11th ACM SIGPLAN conference on Principles and practice of declarative programming
Generating Verified Java Components through RESOLVE
ICSR '09 Proceedings of the 11th International Conference on Software Reuse: Formal Foundations of Reuse and Domain Engineering
A Reusable Model for Data-Centric Web Services
ICSR '09 Proceedings of the 11th International Conference on Software Reuse: Formal Foundations of Reuse and Domain Engineering
On Deciding Satisfiability by DPLL($\Gamma+{\mathcal T}$) and Unsound Theorem Proving
CADE-22 Proceedings of the 22nd International Conference on Automated Deduction
VCC: A Practical System for Verifying Concurrent C
TPHOLs '09 Proceedings of the 22nd International Conference on Theorem Proving in Higher Order Logics
Improving application security with data flow assertions
Proceedings of the ACM SIGOPS 22nd symposium on Operating systems principles
Separation Logic Verification of C Programs with an SMT Solver
Electronic Notes in Theoretical Computer Science (ENTCS)
A Precise Yet Efficient Memory Model For C
Electronic Notes in Theoretical Computer Science (ENTCS)
Formal Verification of a Reader-Writer Lock Implementation in C
Electronic Notes in Theoretical Computer Science (ENTCS)
Test Case Generation by Contract Mutation in Spec#
Electronic Notes in Theoretical Computer Science (ENTCS)
The mythical matched modules: overcoming the tyranny of inflexible software construction
Proceedings of the 24th ACM SIGPLAN conference companion on Object oriented programming systems languages and applications
Automatic Inference of Frame Axioms Using Static Analysis
ASE '08 Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering
Proceedings of the 7th International Workshop on Satisfiability Modulo Theories
HOL-Boogie--An Interactive Prover-Backend for the Verifying C Compiler
Journal of Automated Reasoning
Faster and More Complete Extended Static Checking for the Java Modeling Language
Journal of Automated Reasoning
FM '09 Proceedings of the 2nd World Congress on Formal Methods
Verifying the Microsoft Hyper-V Hypervisor with VCC
FM '09 Proceedings of the 2nd World Congress on Formal Methods
Implementing a Direct Method for Certificate Translation
ICFEM '09 Proceedings of the 11th International Conference on Formal Engineering Methods: Formal Methods and Software Engineering
Decision Procedures for Set-Valued Fields
Electronic Notes in Theoretical Computer Science (ENTCS)
Electronic Notes in Theoretical Computer Science (ENTCS)
Decision procedures for algebraic data types with abstractions
Proceedings of the 37th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Modular reasoning about invariants over shared state with interposed data members
Proceedings of the 4th ACM SIGPLAN workshop on Programming languages meets program verification
Practical reasoning about invocations and implementations of pure methods
FASE'07 Proceedings of the 10th international conference on Fundamental approaches to software engineering
Using history invariants to verify observers
ESOP'07 Proceedings of the 16th European conference on Programming
Abstract predicates and mutable adts in hoare type theory
ESOP'07 Proceedings of the 16th European conference on Programming
Using first-order theorem provers in the Jahob data structure verification system
VMCAI'07 Proceedings of the 8th international conference on Verification, model checking, and abstract interpretation
VMCAI'07 Proceedings of the 8th international conference on Verification, model checking, and abstract interpretation
A reachability predicate for analyzing low-level software
TACAS'07 Proceedings of the 13th international conference on Tools and algorithms for the construction and analysis of systems
A representation-independent behavioral semantics for object-oriented components
FMOODS'07 Proceedings of the 9th IFIP WG 6.1 international conference on Formal methods for open object-based distributed systems
Proceedings of the 2010 ACM Symposium on Applied Computing
A machine-checked soundness proof for an efficient verification condition generator
Proceedings of the 2010 ACM Symposium on Applied Computing
Proving programs incorrect using a sequent calculus for Java dynamic logic
TAP'07 Proceedings of the 1st international conference on Tests and proofs
Using contracts and Boolean queries to improve the quality of automatic test generation
TAP'07 Proceedings of the 1st international conference on Tests and proofs
JACK: a tool for validation of security and behaviour of Java applications
FMCO'06 Proceedings of the 5th international conference on Formal methods for components and objects
Verifying heap-manipulating programs in an SMT framework
ATVA'07 Proceedings of the 5th international conference on Automated technology for verification and analysis
Runtime checking for program verification
RV'07 Proceedings of the 7th international conference on Runtime verification
Runtime checking for separation logic
VMCAI'08 Proceedings of the 9th international conference on Verification, model checking, and abstract interpretation
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
An automatic verifier for Java-like programs based on dynamic frames
FASE'08/ETAPS'08 Proceedings of the Theory and practice of software, 11th international conference on Fundamental approaches to software engineering
Verification of equivalent-results methods
ESOP'08/ETAPS'08 Proceedings of the Theory and practice of software, 17th European conference on Programming languages and systems
Semi-persistent data structures
ESOP'08/ETAPS'08 Proceedings of the Theory and practice of software, 17th European conference on Programming languages and systems
A realizability model for impredicative Hoare type theory
ESOP'08/ETAPS'08 Proceedings of the Theory and practice of software, 17th European conference on Programming languages and systems
Elimination of ghost variables in program logics
TGC'07 Proceedings of the 3rd conference on Trustworthy global computing
Reverse engineered formal models for GUI testing
FMICS'07 Proceedings of the 12th international conference on Formal methods for industrial critical systems
Verification by parallelization of parametric code
Algebraic and proof-theoretic aspects of non-classical logics
Balancing insight and effort: the industrial uptake of formal methods
Formal methods and hybrid real-time systems
Model-based testing of object-oriented reactive systems with spec explorer
Formal methods and testing
Specification and verification of web services transactions
Proceedings of the Fourth SIGMOD PhD Workshop on Innovative Database Research
On theorem proving for program checking: historical perspective and recent developments
Proceedings of the 12th international ACM SIGPLAN symposium on Principles and practice of declarative programming
Modular inference of subprogram contracts for safety checking
Journal of Symbolic Computation
Deductive verification of cryptographic software
Innovations in Systems and Software Engineering
Reasoning about multiple related abstractions with MultiStar
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Contracts for first-class classes
Proceedings of the 6th symposium on Dynamic languages
Verifying executable object-oriented specifications with separation logic
ECOOP'10 Proceedings of the 24th European conference on Object-oriented programming
Verifying generics and delegates
ECOOP'10 Proceedings of the 24th European conference on Object-oriented programming
Falling back on executable specifications
ECOOP'10 Proceedings of the 24th European conference on Object-oriented programming
Towards scalable modular checking of user-defined properties
VSTTE'10 Proceedings of the Third international conference on Verified software: theories, tools, experiments
Dafny meets the verification benchmarks challenge
VSTTE'10 Proceedings of the Third international conference on Verified software: theories, tools, experiments
To goto where no statement has gone before
VSTTE'10 Proceedings of the Third international conference on Verified software: theories, tools, experiments
An abstract machine for the old value retrieval
MPC'10 Proceedings of the 10th international conference on Mathematics of program construction
Mechanically verified proof obligations for linearizability
ACM Transactions on Programming Languages and Systems (TOPLAS)
Refinement types for secure implementations
ACM Transactions on Programming Languages and Systems (TOPLAS)
Reasoning about function objects
TOOLS'10 Proceedings of the 48th international conference on Objects, models, components, patterns
The .NET primitives for open, dynamic and reflective component frameworks
SC'10 Proceedings of the 9th international conference on Software composition
Practical issues with formal specifications: lessons learned from an industrial case study
FMICS'10 Proceedings of the 15th international conference on Formal methods for industrial critical systems
An overview of the Jahob analysis system: project goals and current status
IPDPS'06 Proceedings of the 20th international conference on Parallel and distributed processing
A parametric segmentation functor for fully automatic and scalable array content analysis
Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Correct blame for contracts: no more scapegoating
Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Formal Methods in System Design
Interleaving symbolic execution and partial evaluation
FMCO'09 Proceedings of the 8th international conference on Formal methods for components and objects
Dafny: an automatic program verifier for functional correctness
LPAR'10 Proceedings of the 16th international conference on Logic for programming, artificial intelligence, and reasoning
ISoLA'10 Proceedings of the 4th international conference on Leveraging applications of formal methods, verification, and validation - Volume Part I
Code contracts for .NET: runtime verification and so much more
RV'10 Proceedings of the First international conference on Runtime verification
Applying PVS background theories and proof strategies in invariant based programming
ICFEM'10 Proceedings of the 12th international conference on Formal engineering methods and software engineering
Matching logic: an alternative to hoare/floyd logic
AMAST'10 Proceedings of the 13th international conference on Algebraic methodology and software technology
ExplainHoudini: making Houdini inference transparent
VMCAI'11 Proceedings of the 12th international conference on Verification, model checking, and abstract interpretation
Typechecking higher-order security libraries
APLAS'10 Proceedings of the 8th Asian conference on Programming languages and systems
CVPP: a tool set for compositional verification of control-flow safety properties
FoVeOOS'10 Proceedings of the 2010 international conference on Formal verification of object-oriented software
A refinement methodology for object-oriented programs
FoVeOOS'10 Proceedings of the 2010 international conference on Formal verification of object-oriented software
Specification and verification: the Spec# experience
Communications of the ACM
The VATES-diamond as a verifier's best friend
Verification, induction termination analysis
Second-order programs with preconditions
Verification, induction termination analysis
DKAL and Z3: a logic embedding experiment
Fields of logic and computation
Pest: from the lab to the classroom
Proceedings of the 1st Workshop on Developing Tools as Plug-ins
An Abstract Model of Certificate Translation
ACM Transactions on Programming Languages and Systems (TOPLAS)
NFM'11 Proceedings of the Third international conference on NASA Formal methods
OpenJML: JML for Java 7 by extending OpenJDK
NFM'11 Proceedings of the Third international conference on NASA Formal methods
The VATES-diamond as a verifier's best friend
Verification, induction termination analysis
Second-order programs with preconditions
Verification, induction termination analysis
Midlet navigation graphs in JML
SBMF'10 Proceedings of the 13th Brazilian conference on Formal methods: foundations and applications
Invariant generation in vampire
TACAS'11/ETAPS'11 Proceedings of the 17th international conference on Tools and algorithms for the construction and analysis of systems: part of the joint European conferences on theory and practice of software
Enforcing structural invariants using dynamic frames
TACAS'11/ETAPS'11 Proceedings of the 17th international conference on Tools and algorithms for the construction and analysis of systems: part of the joint European conferences on theory and practice of software
Satisfiability modulo theories: introduction and applications
Communications of the ACM
Test case generation from mutated task models
Proceedings of the 3rd ACM SIGCHI symposium on Engineering interactive computing systems
Proofs of numerical programs when the compiler optimizes
Innovations in Systems and Software Engineering
Automatically refining partial specifications for program verification
FM'11 Proceedings of the 17th international conference on Formal methods
Structured specifications for better verification of heap-manipulating programs
FM'11 Proceedings of the 17th international conference on Formal methods
jStar-eclipse: an IDE for automated verification of Java programs
Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering
Types, regions, and effects for safe programming with object-oriented parallel frameworks
Proceedings of the 25th European conference on Object-oriented programming
Verifying multi-object invariants with relationships
Proceedings of the 25th European conference on Object-oriented programming
Temporal higher-order contracts
Proceedings of the 16th ACM SIGPLAN international conference on Functional programming
On Deciding Satisfiability by Theorem Proving with Speculative Inferences
Journal of Automated Reasoning
WP semantics and behavioral subtyping
ICTAC'11 Proceedings of the 8th international conference on Theoretical aspects of computing
On contract satisfaction in a higher-order world
ACM Transactions on Programming Languages and Systems (TOPLAS)
Software verification using k-induction
SAS'11 Proceedings of the 18th international conference on Static analysis
Null dereference verification via over-approximated weakest pre-conditions analysis
Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications
Towards client-aware interface specifications
Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion
Praspel: a specification language for contract-based testing in PHP
ICTSS'11 Proceedings of the 23rd IFIP WG 6.1 international conference on Testing software and systems
A formalisation of java strings for program specification and verification
SEFM'11 Proceedings of the 9th international conference on Software engineering and formal methods
Usable verification of object-oriented programs by combining static and dynamic techniques
SEFM'11 Proceedings of the 9th international conference on Software engineering and formal methods
Specification-based sketching with Sketch
Proceedings of the 13th Workshop on Formal Techniques for Java-Like Programs
Smallfoot: modular automatic assertion checking with separation logic
FMCO'05 Proceedings of the 4th international conference on Formal Methods for Components and Objects
Beyond assertions: advanced specification and verification with JML and ESC/Java2
FMCO'05 Proceedings of the 4th international conference on Formal Methods for Components and Objects
Boogie: a modular reusable verifier for object-oriented programs
FMCO'05 Proceedings of the 4th international conference on Formal Methods for Components and Objects
Allowing state changes in specifications
ETRICS'06 Proceedings of the 2006 international conference on Emerging Trends in Information and Communication Security
APLAS'05 Proceedings of the Third Asian conference on Programming Languages and Systems
How symbolic animation can help designing an efficient formal model
ICFEM'05 Proceedings of the 7th international conference on Formal Methods and Software Engineering
A model-to-implementation mapping tool for automated model-based GUI testing
ICFEM'05 Proceedings of the 7th international conference on Formal Methods and Software Engineering
Zap: automated theorem proving for software analysis
LPAR'05 Proceedings of the 12th international conference on Logic for Programming, Artificial Intelligence, and Reasoning
Second-order principles in specification languages for object-oriented programs
LPAR'05 Proceedings of the 12th international conference on Logic for Programming, Artificial Intelligence, and Reasoning
Access permission contracts for scripting languages
POPL '12 Proceedings of the 39th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Hybrid contract checking via symbolic simplification
PEPM '12 Proceedings of the ACM SIGPLAN 2012 workshop on Partial evaluation and program manipulation
The VerCors project: setting up basecamp
PLPV '12 Proceedings of the sixth workshop on Programming languages meets program verification
A statically verifiable programming model for concurrent object-oriented programs
ICFEM'06 Proceedings of the 8th international conference on Formal Methods and Software Engineering
Discovering likely method specifications
ICFEM'06 Proceedings of the 8th international conference on Formal Methods and Software Engineering
ICATPN'06 Proceedings of the 27th international conference on Applications and Theory of Petri Nets and Other Models of Concurrency
VMCAI'10 Proceedings of the 11th international conference on Verification, Model Checking, and Abstract Interpretation
Efficient runtime assertion checking of assignable clauses with datagroups
FASE'10 Proceedings of the 13th international conference on Fundamental Approaches to Software Engineering
Modular verification of static class invariants
FM'05 Proceedings of the 2005 international conference on Formal Methods
Abstract interpretation with alien expressions and heap structures
VMCAI'05 Proceedings of the 6th international conference on Verification, Model Checking, and Abstract Interpretation
Dynamic logic with non-rigid functions: a basis for object-oriented program verification
IJCAR'06 Proceedings of the Third international joint conference on Automated Reasoning
Formal methods for smartcard security
Foundations of Security Analysis and Design III
State based ownership, reentrance, and encapsulation
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
Extending JML for modular specification and verification of multi-threaded programs
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
Multiplexing of partially ordered events
TestCom'05 Proceedings of the 17th IFIP TC6/WG 6.1 international conference on Testing of Communicating Systems
ACM Transactions on Programming Languages and Systems (TOPLAS)
From coupling relations to mated invariants for checking information flow
ESORICS'06 Proceedings of the 11th European conference on Research in Computer Security
Heap-Dependent expressions in separation logic
FMOODS'10/FORTE'10 Proceedings of the 12th IFIP WG 6.1 international conference and 30th IFIP WG 6.1 international conference on Formal Techniques for Distributed Systems
Automated boundary test generation from JML specifications
FM'06 Proceedings of the 14th international conference on Formal Methods
Changing programs correctly: refactoring with specifications
FM'06 Proceedings of the 14th international conference on Formal Methods
Static verification of indirect data sharing in loosely-coupled component systems
SC'06 Proceedings of the 5th international conference on Software Composition
Using the spec# language, methodology, and tools to write bug-free programs
Advanced Lectures on Software Engineering
FATES'05 Proceedings of the 5th international conference on Formal Approaches to Software Testing
A modular verification methodology for c# delegates
Rigorous Methods for Software Construction and Analysis
Safety property driven test generation from JML specifications
FATES'06/RV'06 Proceedings of the First combined international conference on Formal Approaches to Software Testing and Runtime Verification
Extending OCL with null-references: towards a formal semantics for OCL 2.1
MODELS'09 Proceedings of the 2009 international conference on Models in Software Engineering
ESOP'10 Proceedings of the 19th European conference on Programming Languages and Systems
Multi-Prover verification of floating-point programs
IJCAR'10 Proceedings of the 5th international conference on Automated Reasoning
Bugs, moles and skeletons: symbolic reasoning for software development
IJCAR'10 Proceedings of the 5th international conference on Automated Reasoning
Automatically verifying typing constraints for a data processing language
CPP'11 Proceedings of the First international conference on Certified Programs and Proofs
Hardware-dependent proofs of numerical programs
CPP'11 Proceedings of the First international conference on Certified Programs and Proofs
Proof obligations preserving compilation
FAST'05 Proceedings of the Third international conference on Formal Aspects in Security and Trust
A behavioral model for software containers
FASE'06 Proceedings of the 9th international conference on Fundamental Approaches to Software Engineering
A verification methodology for model fields
ESOP'06 Proceedings of the 15th European conference on Programming Languages and Systems
ILC: a foundation for automated reasoning about pointer programs
ESOP'06 Proceedings of the 15th European conference on Programming Languages and Systems
A separation logic for OO programs
FACS'10 Proceedings of the 7th international conference on Formal Aspects of Component Software
Behavioral interface specification languages
ACM Computing Surveys (CSUR)
Improving the usability of specification languages and methods for annotation-based verification
FMCO'10 Proceedings of the 9th international conference on Formal Methods for Components and Objects
ABS: a core language for abstract behavioral specification
FMCO'10 Proceedings of the 9th international conference on Formal Methods for Components and Objects
Variability modelling in the ABS language
FMCO'10 Proceedings of the 9th international conference on Formal Methods for Components and Objects
A certified multi-prover verification condition generator
VSTTE'12 Proceedings of the 4th international conference on Verified Software: theories, tools, experiments
Science of Computer Programming
Verifying invariant based programs in the SOCOS environment
TFM'06 Proceedings of the 2006 conference on Teaching Formal Methods: practice and experience
Translating B machines to JML specifications
Proceedings of the 27th Annual ACM Symposium on Applied Computing
Zeno: an automated prover for properties of recursive data structures
TACAS'12 Proceedings of the 18th international conference on Tools and Algorithms for the Construction and Analysis of Systems
Verifying backwards compatibility of object-oriented libraries using Boogie
Proceedings of the 14th Workshop on Formal Techniques for Java-like Programs
Detecting inconsistencies via universal reachability analysis
Proceedings of the 2012 International Symposium on Software Testing and Analysis
Residual investigation: predictive and precise bug detection
Proceedings of the 2012 International Symposium on Software Testing and Analysis
Inferring method specifications from natural language API descriptions
Proceedings of the 34th International Conference on Software Engineering
Specification engineering and modular verification using a web-integrated verifying compiler
Proceedings of the 34th International Conference on Software Engineering
JavaMOP: efficient parametric runtime monitoring framework
Proceedings of the 34th International Conference on Software Engineering
Towards the formal specification and verification of maple programs
CICM'12 Proceedings of the 11th international conference on Intelligent Computer Mathematics
SYMDIFF: a language-agnostic semantic diff tool for imperative programs
CAV'12 Proceedings of the 24th international conference on Computer Aided Verification
Specification and Verification of Invariants by Exploiting Layers in OO Designs
Fundamenta Informaticae - Concurrency Specification and Programming (CS&P)
Predicate abstraction of Java programs with collections
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Reducing the barriers to writing verified specifications
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Modular safety checking for fine-grained concurrency
SAS'07 Proceedings of the 14th international conference on Static Analysis
Non-null references by default in java: alleviating the nullity annotation burden
ECOOP'07 Proceedings of the 21st European conference on Object-Oriented Programming
A relational model of object collaborations and its use in reasoning about relationships
ECOOP'07 Proceedings of the 21st European conference on Object-Oriented Programming
Hi-Lite: the convergence of compiler technology and program verification
Proceedings of the 2012 ACM conference on High integrity language technology
Formal semantics of model fields in annotation-based specifications
KI'12 Proceedings of the 35th Annual German conference on Advances in Artificial Intelligence
Challenges in defining a programming language for provably correct dynamic analyses
ISoLA'12 Proceedings of the 5th international conference on Leveraging Applications of Formal Methods, Verification and Validation: technologies for mastering change - Volume Part I
A unified approach for static and runtime verification: framework and applications
ISoLA'12 Proceedings of the 5th international conference on Leveraging Applications of Formal Methods, Verification and Validation: technologies for mastering change - Volume Part I
A Rewriting Logic Approach to Static Checking of Units of Measurement in C
Electronic Notes in Theoretical Computer Science (ENTCS)
Modular verification of OO programs with interfaces
ICFEM'12 Proceedings of the 14th international conference on Formal Engineering Methods: formal methods and software engineering
Automatic generation of test models and properties from UML models with OCL constraints
Proceedings of the 12th Workshop on OCL and Textual Modelling
Past expression: encapsulating pre-states at post-conditions by means of AOP
Proceedings of the 12th annual international conference on Aspect-oriented software development
Almost-correct specifications: a modular semantic framework for assigning confidence to warnings
Proceedings of the 34th ACM SIGPLAN conference on Programming language design and implementation
Common specification language for static and dynamic analysis of C programs
Proceedings of the 28th Annual ACM Symposium on Applied Computing
Formal verification of side-channel countermeasures using self-composition
Science of Computer Programming
Expressing and checking intended changes via software change contracts
Proceedings of the 2013 International Symposium on Software Testing and Analysis
Proceedings of the 2013 International Symposium on Software Testing and Analysis
Local Reasoning for Global Invariants, Part II: Dynamic Boundaries
Journal of the ACM (JACM)
Local Reasoning for Global Invariants, Part I: Region Logic
Journal of the ACM (JACM)
What good are strong specifications?
Proceedings of the 2013 International Conference on Software Engineering
Programming with permissions in Mezzo
Proceedings of the 18th ACM SIGPLAN international conference on Functional programming
Proceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applications
Growing solver-aided languages with rosette
Proceedings of the 2013 ACM international symposium on New ideas, new paradigms, and reflections on programming & software
Client-aware checking and information hiding in interface specifications with JML/ajmlc
Proceedings of the 2013 companion publication for conference on Systems, programming, & applications: software for humanity
Contracts for First-Class Classes
ACM Transactions on Programming Languages and Systems (TOPLAS)
Reducing lookups for invariant checking
ECOOP'13 Proceedings of the 27th European conference on Object-Oriented Programming
State based encapsulation for modular reasoning about behavior-preserving refactorings
Aliasing in Object-Oriented Programming
Separation logic for object-oriented programming
Aliasing in Object-Oriented Programming
Invariants synthesis over a combined domain for automated program verification
Theories of Programming and Formal Methods
Hi-index | 0.03 |
The Spec# programming system is a new attempt at a more cost effective way to develop and maintain high-quality software. This paper describes the goals and architecture of the Spec# programming system, consisting of the object-oriented Spec# programming language, the Spec# compiler, and the Boogie static program verifier. The language includes constructs for writing specifications that capture programmer intentions about how methods and data are to be used, the compiler emits run-time checks to enforce these specifications, and the verifier can check the consistency between a program and its specifications.