A generalization of Dijkstra's calculus
ACM Transactions on Programming Languages and Systems (TOPLAS)
Introduction to algorithms
Behavioural correctness of data representations
Science of Computer Programming
Algebraic implementation of objects over objects
REX workshop Proceedings on Stepwise refinement of distributed systems: models, formalisms, correctness
Multivalued possibilities mappings
REX workshop Proceedings on Stepwise refinement of distributed systems: models, formalisms, correctness
Systematic software development using VDM (2nd ed.)
Systematic software development using VDM (2nd ed.)
The existence of refinement mappings
Theoretical Computer Science
Copying and Swapping: Influences on the Design of Reusable Software Components
IEEE Transactions on Software Engineering
Modular verification of Ada generics
Computer Languages
Component-based software using RESOLVE
ACM SIGSOFT Software Engineering Notes
Programming Methodology: A Collection of Articles by Members of IFIP WG 2.3
Programming Methodology: A Collection of Articles by Members of IFIP WG 2.3
Expressiveness of the operation set of a data abstraction
POPL '80 Proceedings of the 7th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Recasting Algorithms to Encourage Reuse
IEEE Software
Modular Verification of Data Abstractions with Shared Realizations
IEEE Transactions on Software Engineering
ESOP '86 Proceedings of the European Symposium on Programming
A New Definition of the Subtype Relation
ECOOP '93 Proceedings of the 7th European Conference on Object-Oriented Programming
STACS '87 Proceedings of the 4th Annual Symposium on Theoretical Aspects of Computer Science
Characterizing Observability and Controllability of Software Components
ICSR '96 Proceedings of the 4th International Conference on Software Reuse
1997 workshop on foundations of component-based systems
ACM SIGSOFT Software Engineering Notes
A system for predictable component-based software construction
High integrity software
Increasing client-side confidence in remote component implementations
Proceedings of the 8th European software engineering conference held jointly with 9th ACM SIGSOFT international symposium on Foundations of software engineering
A Data Abstraction Alternative to Data Structure/Algorithm Modularization
Selected Papers from the International Seminar on Generic Programming
Roadmap for enhanced languages and methods to aid verification
Proceedings of the 5th international conference on Generative programming and component engineering
Performance analysis based upon complete profiles
Proceedings of the 2006 conference on Specification and verification of component-based systems
Incremental Benchmarks for Software Verification Tools and Techniques
VSTTE '08 Proceedings of the 2nd international conference on Verified Software: Theories, Tools, Experiments
Interfaces first (and foremost) with Java
Proceedings of the 41st ACM technical symposium on Computer science education
Hi-index | 0.00 |
The typical correspondence between a concrete representation and an abstract conceptual value of an abstract data type (ADT) variable (object) is a many-to-one function. For example, many different pointer aggregates give rise to exactly the same binary tree. The theoretical possibility that this correspondence generally should be relational has long been recognized. By using a nontrivial ADT for handling an optimization problem, we show why the need for generalizing from functions to relations arises naturally in practice. Making this generalization is among the steps essential for enhancing the practical applicability of formal reasoning methods to industrial-strength software systems.