Partial implementations of abstract data types: a dissenting view on errors.
Proc. of the international symposium on Semantics of data types
Partial interpretations of higher order algebraic types
Proceedings of the 12th symposium on Mathematical foundations of computer science 1986
A theoretical basis for stepwise refinement and the programming calculus
Science of Computer Programming
An introduction to mathematical logic and type theory: to truth through proof
An introduction to mathematical logic and type theory: to truth through proof
A calculus of refinements for program derivations
Acta Informatica
A simple approach to specifying concurrent systems
Communications of the ACM
The RAISE language, methods and tools
Formal Aspects of Computing
A generalization of Dijkstra's calculus
ACM Transactions on Programming Languages and Systems (TOPLAS)
Tentative steps toward a development method for interfering programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Fundamentals of algebraic specification 2: module specifications and constraints
Fundamentals of algebraic specification 2: module specifications and constraints
Predicate calculus and program semantics
Predicate calculus and program semantics
Case studies in systematic software development
Case studies in systematic software development
Systematic software development using VDM (2nd ed.)
Systematic software development using VDM (2nd ed.)
The existence of refinement mappings
Theoretical Computer Science
The temporal logic of reactive and concurrent systems
The temporal logic of reactive and concurrent systems
The Z notation: a reference manual
The Z notation: a reference manual
A practical theory of programming
A practical theory of programming
A superimposition control construct for distributed systems
ACM Transactions on Programming Languages and Systems (TOPLAS)
ACM Transactions on Programming Languages and Systems (TOPLAS)
The lattice of data refinement
Acta Informatica
Theoretical Computer Science
Programming from specifications (2nd ed.)
Programming from specifications (2nd ed.)
A behavioral notion of subtyping
ACM Transactions on Programming Languages and Systems (TOPLAS)
Functorial theory of parameterized specifications in a general specification framework
Theoretical Computer Science
Specification and validation methods
Specification and validation methods
Using Z: specification, refinement, and proof
Using Z: specification, refinement, and proof
Software engineering with B
On concurrent programming
Categorical semantics of parallel program design
Science of Computer Programming - Special issue: on formal specifications: foundations, methods, tools and applications: selected papers from the FMTA '95 conference (29–31 May 1995, Konstancin n. Warsaw, Poland)
Comparing LOTOS and Z refinement relations
IFIP TC6/ 6.1 international conference on formal description techniques IX/protocol specification, testing and verification XVI on Formal description techniques IX : theory, application and tools: theory, application and tools
Modelling systems: practical tools and techniques in software development
Modelling systems: practical tools and techniques in software development
Modular design for the Java virtual machine architecture
Architecture design and validation methods
Computable analysis: an introduction
Computable analysis: an introduction
On the inevitable intertwining of specification and implementation
Communications of the ACM
Program development by stepwise refinement
Communications of the ACM
Specification and development of interactive systems: focus on streams, interfaces, and refinement
Specification and development of interactive systems: focus on streams, interfaces, and refinement
Refinement in Z and object-Z: foundations and advanced applications
Refinement in Z and object-Z: foundations and advanced applications
Digital Control Systems
Object-Oriented Software Construction
Object-Oriented Software Construction
Specification in B: An Introduction Using the B Toolkit
Specification in B: An Introduction Using the B Toolkit
Digital Control of Dynamic Systems
Digital Control of Dynamic Systems
Refinement Calculus: A Systematic Introduction
Refinement Calculus: A Systematic Introduction
Program Development by Refinement: Case Studies Using the B Method
Program Development by Refinement: Case Studies Using the B Method
Java and the Java Virtual Machine: Definition, Verification, Validation with Cdrom
Java and the Java Virtual Machine: Definition, Verification, Validation with Cdrom
Specification Case Studies
Fundamentals of Algebraic Specification I
Fundamentals of Algebraic Specification I
Proceedings of the First International Workshop on Hybrid Systems: Computation and Control
HSCC '98 Proceedings of the First International Workshop on Hybrid Systems: Computation and Control
Proceedings of the Second International Workshop on Hybrid Systems: Computation and Control
HSCC '99 Proceedings of the Second International Workshop on Hybrid Systems: Computation and Control
Superimposition for Interacting Processes
CONCUR '90 Proceedings of the Theories of Concurrency: Unification and Extension
Why Use Evolving Algebras for Hardware and Software Engineering?
SOFSEM '95 Proceedings of the 22nd Seminar on Current Trends in Theory and Practice of Informatics
A Relational Model of Programs Without the Restriction to Egli-Milner-Monotone Constructs
PROCOMET '94 Proceedings of the IFIP TC2/WG2.1/WG2.2/WG2.3 Working Conference on Programming Concepts, Methods and Calculi
How Firing Conditions Help Inheritance
ZUM '95 Proceedings of the 9th International Conference of Z Usres on The Z Formal Specification Notation
More Powerful Z Data Refinement: Pushing the State of the Art in Industrial Refinement
ZUM '98 Proceedings of the 11th International Conference of Z Users on The Z Formal Specification Notation
Controlling Control Systems: An Application of Evolving Retrenchment
ZB '02 Proceedings of the 2nd International Conference of B and Z Users on Formal Specification and Development in Z and B
Retrenchment: An Engineering Variation on Refinement
B '98 Proceedings of the Second International B Conference on Recent Advances in the Development and Use of the B Method
Class Refinement and Interface Refinement in Object-Oriented Programs
FME '97 Proceedings of the 4th International Symposium of Formal Methods Europe on Industrial Applications and Strengthened Foundations of Formal Methods
Retrenchment and Punctured Simulation
IFM '99 Proceedings of the 1st International Conference on Integrated Formal Methods
Minimally and Maximally Abstract Retrenchments
IFM '02 Proceedings of the Third International Conference on Integrated Formal Methods
Specware: Formal Support for Composing Software
MPC '95 Mathematics of Program Construction
Refinement Calculus, Part I: Sequential Nondeterministic Programs
Stepwise Refinement of Distributed Systems, Models, Formalisms, Correctness, REX Workshop
Generalized Heterogeneous Algebras and Partial Interpretations
CAAP '83 Proceedings of the 8th Colloquium on Trees in Algebra and Programming
Retrenchment: Extending the Reach of Refinement
ASE '99 Proceedings of the 14th IEEE international conference on Automated software engineering
Decentralization of process nets with centralized control
PODC '83 Proceedings of the second annual ACM symposium on Principles of distributed computing
Evolution: A More Practical Approach than Refinement for Software Development
ICECCS '97 Proceedings of the Third IEEE International Conference on Engineering of Complex Computer Systems
Fragmented Retrenchment, Concurrency and Fairness
ICFEM '00 Proceedings of the 3rd IEEE International Conference on Formal Engineering Methods
Maximally Abstract Retrenchments
ICFEM '00 Proceedings of the 3rd IEEE International Conference on Formal Engineering Methods
Behavioral Subtyping Relations for Active Objects
Formal Methods in System Design
From z to c: illustration of a rigorous development method (specification hierarchy)
From z to c: illustration of a rigorous development method (specification hierarchy)
Chapter I: Notes on structured programming
Structured programming
Retrenching the Purse: Finite Exception Logs, and Validating the Small
SEW '06 Proceedings of the 30th Annual IEEE/NASA Software Engineering Workshop
Retrenching the Purse: The Balance Enquiry Quandary, and Generalised and (1,1) Forward Refinements
Fundamenta Informaticae - This is a SPECIAL ISSUE ON ASM'05
Retrenching the Purse: Hashing Injective CLEAR Codes, and Security Properties
ISOLA '06 Proceedings of the Second International Symposium on Leveraging Applications of Formal Methods, Verification and Validation
Retrenchment, and the generation of fault trees for static, dynamic and cyclic systems
SAFECOMP'06 Proceedings of the 25th international conference on Computer Safety, Reliability, and Security
Retrenching the purse: finite sequence numbers, and the tower pattern
FM'05 Proceedings of the 2005 international conference on Formal Methods
Refinement and reachability in event_b
ZB'05 Proceedings of the 4th international conference on Formal Specification and Development in Z and B
Retrenchment: extending refinement for continuous and control systems
IW-FM'00 Proceedings of the 4th Irish conference on Formal Methods
Recasting hoare and he's unifying theory of programs in the context of general correctness
IW-FM'01 Proceedings of the 5th Irish conference on Formal Methods
3FACS'98 Proceedings of the 3rd BCS-FACS conference on Northern Formal Methods
Specification and refinement in general correctness
3FACS'98 Proceedings of the 3rd BCS-FACS conference on Northern Formal Methods
Theorem Proving with the Real Numbers
Theorem Proving with the Real Numbers
Retrenching the Purse: The Balance Enquiry Quandary, and Generalised and (1,1) Forward Refinements
Fundamenta Informaticae - This is a SPECIAL ISSUE ON ASM'05
Model Based Refinement and the Tools of Tomorrow
ABZ '08 Proceedings of the 1st international conference on Abstract State Machines, B and Z
UseCase-Wise Development: Retrenchment for Event-B
ABZ '08 Proceedings of the 1st international conference on Abstract State Machines, B and Z
Extending Formal Methods for Software-Intensive Systems
Software-Intensive Systems and New Computing Paradigms
FM '09 Proceedings of the 2nd World Congress on Formal Methods
A deidealisation semantics for KAOS
Proceedings of the 2010 ACM Symposium on Applied Computing
Formal Methods in System Design
Property transformation under specification change
Frontiers of Computer Science in China
Changing system interfaces consistently: A new refinement strategy for CSP||B
Science of Computer Programming
UC'11 Proceedings of the 10th international conference on Unconventional computation
Continuous ASM, and a pacemaker sensing fragment
ABZ'12 Proceedings of the Third international conference on Abstract State Machines, Alloy, B, VDM, and Z
Retrenching the Purse: The Balance Enquiry Quandary, and Generalised and (1,1) Forward Refinements
Fundamenta Informaticae - This is a SPECIAL ISSUE ON ASM'05
Pushouts in software architecture design
Proceedings of the 11th International Conference on Generative Programming and Component Engineering
Hi-index | 0.00 |
Refinement is reviewed, highlighting in particular the distinction between its use as a specification constructor at a high level, and its use as an implementation mechanism at a low level. Some of its shortcomings as a specification constructor at high levels of abstraction are pointed out, and these are used to motivate the adoption of retrenchment for certain high level development steps. Basic properties of retrenchment are described, including a justification of the operation proof obligation, simple examples, its use in requirements engineering and model evolution, and simulation properties. The interaction of retrenchment with refinement notions of correctness is overviewed, as is a range of other technical issues. Two case study scenarios are presented. One is a simple digital redesign control theory problem, and the other is an overview of the application of retrenchment to the Mondex Purse development.