A contraction algorithm for finding small cycle cutsets
Journal of Algorithms
Properties of data flow frameworks: a unified model
Acta Informatica
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
About synchronous programming and abstract interpretation
Science of Computer Programming
Oracle-based checking of untrusted software
POPL '01 Proceedings of the 28th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
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
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Program Flow Analysis: Theory and Application
Program Flow Analysis: Theory and Application
Delay Analysis in Synchronous Programs
CAV '93 Proceedings of the 5th International Conference on Computer Aided Verification
Efficient Representation and Validation of Proofs
LICS '98 Proceedings of the 13th Annual IEEE Symposium on Logic in Computer Science
Foundational proof checkers with small witnesses
Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programming
Lightweight Bytecode Verification
Journal of Automated Reasoning
A contraction algorithm for finding minimal feedback sets
ACSC '05 Proceedings of the Twenty-eighth Australasian conference on Computer Science - Volume 38
Proof-carrying code from certified abstract interpretation and fixpoint compression
Theoretical Computer Science - Applied semantics
Reduced certificates for abstraction-carrying code
ICLP'06 Proceedings of the 22nd international conference on Logic Programming
Goal-directed weakening of abstract interpretation results
ACM Transactions on Programming Languages and Systems (TOPLAS)
Computing Stack Maps with Interfaces
ECOOP '08 Proceedings of the 22nd European conference on Object-Oriented Programming
Combining a verification condition generator for a bytecode language with static analyses
TGC'07 Proceedings of the 3rd conference on Trustworthy global computing
Proceedings of the IEEE/ACM international conference on Automated software engineering
Certified result checking for polyhedral analysis of bytecode programs
TGC'10 Proceedings of the 5th international conference on Trustworthly global computing
Hi-index | 0.00 |
Abstract interpretation-based proof carrying code uses post-fixpoints of abstract interpretations to witness that a program respects a safety policy. Some witnesses carry more information than needed and are therefore unnecessarily large. We introduce a notion of size of a witness and propose techniques for reducing the size of such certificates. For distributive analyses, we show that a smallest witness exist and we give an iterative algorithm for computing it. For nondistributive analyes we propose a technique for pruning a witness and illustrate this pruning on a relational, polyhedra-based analysis. Finally, only the existence of a witness is needed to assure the code consumer of the safety of a given program. This makes possible a compression technique of witnesses where only part of a witness is sent together with an encoding of the iterative steps necessary to prove that it is part of a post-fixpoint.