Safe kernel extensions without run-time checking
OSDI '96 Proceedings of the second USENIX symposium on Operating systems design and implementation
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Program fragments, linking, and modularization
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A type system for Java bytecode subroutines
POPL '98 Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Operational reasoning for functions with local state
Higher order operational techniques in semantics
From system F to typed assembly language
ACM Transactions on Programming Languages and Systems (TOPLAS)
A semantic model of types and machine instructions for proof-carrying code
Proceedings of the 27th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A type system for object initialization in the Java bytecode language
ACM Transactions on Programming Languages and Systems (TOPLAS)
Typing a multi-language intermediate code
POPL '01 Proceedings of the 28th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
An indexed model of recursive types for foundational proof-carrying code
ACM Transactions on Programming Languages and Systems (TOPLAS)
Java Program Verification via a Hoare Logic with Abrupt Termination
FASE '00 Proceedings of the Third Internationsl Conference on Fundamental Approaches to Software Engineering: Held as Part of the European Joint Conferences on the Theory and Practice of Software, ETAPS 2000
A Programming Logic for Sequential Java
ESOP '99 Proceedings of the 8th European Symposium on Programming Languages and Systems
ESOP '00 Proceedings of the 9th European Symposium on Programming Languages and Systems
A Logic of Object-Oriented Programs
TAPSOFT '97 Proceedings of the 7th International Joint Conference CAAP/FASE on Theory and Practice of Software Development
Hoare Logic for Mutual Recursion and Local Variables
Proceedings of the 19th Conference on Foundations of Software Technology and Theoretical Computer Science
Hoare Logic for NanoJava: Auxiliary Variables, Side Effects, and Virtual Methods Revisited
FME '02 Proceedings of the International Symposium of Formal Methods Europe on Formal Methods - Getting IT Right
Local Reasoning about Programs that Alter Data Structures
CSL '01 Proceedings of the 15th International Workshop on Computer Science Logic
Formalization of generics for the .NET common language runtime
Proceedings of the 31st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Semantic types: a fresh look at the ideal model for types
Proceedings of the 31st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Stack-based typed assembly language
Journal of Functional Programming
Semantics of types for mutable state
Semantics of types for mutable state
An Observationally Complete Program Logic for Imperative Higher-Order Frame Rules
LICS '05 Proceedings of the 20th Annual IEEE Symposium on Logic in Computer Science
Certifying Compilation for a Language with Stack Allocation
LICS '05 Proceedings of the 20th Annual IEEE Symposium on Logic in Computer Science
Electronic Notes in Theoretical Computer Science (ENTCS)
Relational reasoning in a nominal semantics for storage
TLCA'05 Proceedings of the 7th international conference on Typed Lambda Calculi and Applications
Reducibility and ⊤⊤-lifting for computation types
TLCA'05 Proceedings of the 7th international conference on Typed Lambda Calculi and Applications
L3: a linear language with locations
TLCA'05 Proceedings of the 7th international conference on Typed Lambda Calculi and Applications
Modular verification of assembly code with stack-based control abstractions
Proceedings of the 2006 ACM SIGPLAN conference on Programming language design and implementation
A compositional natural semantics and Hoare logic for low-level languages
Theoretical Computer Science
Formalizing and verifying semantic type soundness of a simple compiler
Proceedings of the 9th ACM SIGPLAN international conference on Principles and practice of declarative programming
Formal Translation of Bytecode into BoogiePL
Electronic Notes in Theoretical Computer Science (ENTCS)
A Characterisation of Lambda Definability with Sums Via T T-Closure Operators
CSL '08 Proceedings of the 22nd international workshop on Computer Science Logic
APLAS '09 Proceedings of the 7th Asian Symposium on Programming Languages and Systems
Semantic foundations for typed assembly languages
ACM Transactions on Programming Languages and Systems (TOPLAS)
CSL'06 Proceedings of the 20th international conference on Computer Science Logic
Program logics for sequential higher-order control
FSEN'09 Proceedings of the Third IPM international conference on Fundamentals of Software Engineering
A compositional logic for control flow
VMCAI'06 Proceedings of the 7th international conference on Verification, Model Checking, and Abstract Interpretation
A bytecode logic for JML and types
APLAS'06 Proceedings of the 4th Asian conference on Programming Languages and Systems
High-level separation logic for low-level code
POPL '13 Proceedings of the 40th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Coq: the world's best macro assembler?
Proceedings of the 15th Symposium on Principles and Practice of Declarative Programming
Compositional type systems for stack-based low-level languages
CATS '06 Proceedings of the Twelfth Computing: The Australasian Theory Symposium - Volume 51
Hi-index | 0.00 |
We define a compositional program logic in the style of Floyd and Hoare for a simple, typed, stack-based abstract machine with unstructured control flow, global variables and mutually recursive procedure calls. Notable features of the logic include a careful treatment of auxiliary variables and quantification and the use of substructural typing to permit local, modular reasoning about program fragments. Semantic soundness is established using an interpretation of types and assertions defined by orthogonality with respect to sets of contexts.