Abstract
This paper presents a new strand of investigation which complements our previous investigation of refinement for specifications whose semantics is given by partial relations (using Z as a linguistic vehicle for this semantics). It revolves around extending our mathematical apparatus so as to continue our quest for examining mathematically the essence of the lifted-totalisation semantics (which underlies the de facto standard notion of refinement in Z) and the role of the semantic elements\(\perp\) in model-theoretic refinement, but this time in the abortive paradigm. The analysis is given in two salient parts. In the first part, we consider the simpler framework of operation-refinement: we examine the (de facto) standard account of operation-refinement in this regime by introducing a simpler, normative theory which captures the notion of firing-conditions refinement directly in the language and in terms of the natural properties of preconditions and postconditions. In the second part, we generalise our analysis to a more intricate investigation of simulation-based data-refinement. The proof-theoretic approach we undertake in the formal analysis provides us with a mathematical apparatus which enables us to examine precisely the relationships amongst the various theories of refinement. This enables us to examine the general mathematical role that the \(\perp\) values play in model-theoretic refinement in the abortive paradigm, as well as the significance of the unique interaction of these values with the notions of lifting (of data simulations) and lifted-totalisation (of operations) in this regime. Furthermore, we generalise this mathematical analysis to a more conceptual one which also involves extreme specifications.
Similar content being viewed by others
References
Abrial JR (1996) The B-Book. Cambridge University Press, Cambridge
Azada D, Muenchaisri P, (ed.) (2003) APSEC 2003: 10th Asia-Pacific software engineering conference, Chiangmai, Thailand, December 10-12, 2003. Proceedings. IEEE Computer Society Press
Bowen JP, Dunne SE, Galloway A, King S (ed.) (2000) ZB 2000: Formal specification and development in Z and B, first international conference of B and Z users, York, UK, August 29–September 2, 2000, Proceedings, vol 1878 of Lecture Notes in Computer Science. Springer, Berlin Heidelberg New York
Boiten EA, de Roever WP (2003) Getting to the bottom of relational refinement: relations and correctness, partial and total. In: Berghammer R, Mö ller B, (eds) RelMiCS 7: 7th international seminar on relational methods in computer science, Malente, Germany, 12–17 May, Proceedings. pp. 82–88 University of Kiel
Bolton C, Davies J, Woodcock JCP (1999) On the refinement and simulation of data types and processes. In: Araki K, Galloway A, Taguchi K, (eds). Integrated formal methods (IFM ’99). Springer, Berlin Heidelberg New York
Bowen JP, Fett A, Hinchey MG (eds) (1998) ZUM ’98: The Z formal specification notation, 11th international conference of Z users, Berlin, Germany, September 24–26, 1998, Proceedings, vol 1493 of Lecture Notes in Computer Science. Springer, Berlin Heidelberg New York
Bjørner D, Hoare CAR, Langmaack H (1990) (eds) VDM ’90, VDM and Z – Formal methods in software development, third international symposium of VDM Europe, Kiel, FRG, April 17–21, 1990, Proceedings, vol 428 of Lecture Notes in Computer Science. Springer, Berlin Heidelberg New York
Back RJR, von Wright J (1998) Refinement Calculus: a Systematic Introduction. Springer, Berlin Heidelberg New York
Cavalcanti ALC, Woodcock JCP (1997) A weakest precondition semantics for Z. Technical Monograph PRG-TR-16-97. Oxford University Computing Laboratory, Oxford
Derrick J, Boiten EA (1999) Calculating upward and downward simulations of state-based specifications. Inf Softw Technol 41:917–923
Derrick J, Boiten EA (2001) Refinement in Z and Object-Z: foundations and advanced applications. Formal approaches to computing and information technology – FACIT. Springer, Berlin Heidelberg New York
Derrick J, Boiten EA (eds) (2005) REFINE 2005 international workshop, Electronic Notes in Theoretical Computer Science. BCS-FACS
Bert D, Bowen JP, King S, Waldén M (eds)(2003) ZB 2003: formal specification and development in Z and B, third international conference of B and Z users, Turku, Finland, June 4–6, 2003, Proceedings, vol 2651 of Lecture Notes in Computer Science. Springer, Berlin Heidelberg New York
Derrick J (2000) A single complete refinement rule for Z. Logic Comput 10(5):663–675
Deutsch M (2002) Firing Conditions. University of Essex, technical report CSM-386
Deutsch M (2005) An Analysis of total correctness refinement models for partial relation semantics. PhD thesis, University of Essex
Deutsch M, Henson MC (2003) An analysis of backward simulation data-refinement for partial relation semantics. In: APSEC 2003 AM03, pp. 38–48
Deutsch M, Henson MC (2003) An analysis of forward simulation data refinement. In: ZB 2003 [DBKW03, pp. 148–167
Deutsch M, Henson MC (2003) An analysis of total correctness refinement models for partial relation semantics II. Logic J IGPL 11(3):319–352
Deutsch M, Henson MC (2003) Four theories for backward simulation data-refinement. In: Muntean, T, Sere K (eds) RCS’03 – 2nd international workshop on refinement of critical systems: methods, tools and developments. Äbo Academi, Turku – Finland
Deutsch M, Henson MC (2005) An analysis of operation-refinement in an abortive paradigm. In: REFINE 2005 [DB05
Deutsch M, Henson MC, Reeves S (2003) An analysis of total correctness refinement models for partial relation semantics I. Logic J IGPL 11(3):287–317
Deutsch M, Henson MC, Reeves S (2003) Modular reasoning in Z: scrutinising monotonicity and refinement. University of Essex, technical report CSM-407 (under consideration of FACJ)
Diller A (1994) Z: An introduction to formal methods 2nd edn. Wiley New York
de Roever WP, Engelhardt K (1998) Data refinement: model-oriented proof methods and their comparison. Prentice Hall International New Jersey
Fischer C (1998) How to combine Z with a process algebra. In: ZUM ’98 BFJ98, pp. 5–23
Gardiner P (2003) Power simulation and its relation to traces and failures refinement. Theor Comput Sci 309(1):157–176
Gardiner PHB, Morgan CC (1993) A single complete rule for data refinement. Formal Aspects Comput 5: 367–382
Grundy J (1993) A method of program refinement. PhD thesis, University of Cambridge
He J, Hoare CAR (1990) Prespecification and data refinement. In: Data refinement in a categorical setting, technical monograph PRG-90. Oxford University Computing Laboratory, Oxford
He J, Hoare CAR, Sanders JW (1986) Data refinement refined. In: Goos G, Hartmanis J (eds) European symposium on programming (ESOP ’86), vol 213 of Lecture Notes in Computer Science. Springer, Berlin Heidelberg New York, pp 187–196
He J, Hoare CAR, Sanders JW (1987) Prespecification in data refinement. Inf Proces Lett 25(2):71–76
Hayes IJ, Jones CB, Nicholls JE (1993) Understanding the differences between VDM and Z. Technical Report UMCS-93-8-1. Department of Computer Science, University of Manchester
Henson MC, Kajtazi B (2005) The Specification Logic vZs. In: REFINE 2005 [DB05
Hoare CAR (1972) Proof of correctness of data representations. Acta Informatica 1:271–281
Henson MC, Reeves S (1999) Revising Z: I - logic and semantics. Formal Aspects Comput 11(4):359–380
Henson MC, Reeves S (1999) Revising Z: II – logical development. Formal Aspects Comput 11(4):381–401
Henson MC, Reeves S (2000) Investigating Z. Logic Comput 10(1):43–73
Henson MC, Reeves S (2000) Program development and specification refinement in the schema calculus. In: ZB 2000 [BDGKB00], pp 344–362
Henson MC, Reeves S(2003) A logic for schema-based program development. Formal Aspects of Computing, 15(1):84–99, 2003
Henson MC, Reeves S, Bowen JP (2003) Z logic and its consequences. Comput Informat 22(4):381–415
Jones CB (1990) Systematic Software Development using VDM, 2nd edn. Prentice Hall International, New Jersey
Josephs MB (1991) Specifying reactive systems in Z Technical Monograph PRG-TR-19-91. Oxford University Computing Laboratory, Oxford
Manna Z (1974) Mathematical theory of computation. Computer Science Series. McGraw-Hill, New York
Métayer C, Abrial JR, Voisin L (2005) Event-B language. RODIN Deliverable 3.2. rigorous open development environment for complex systems – RODIN
Miarka R, Boiten EA, Derrick J (2000) Guards, preconditions, and refinement in Z. In: ZB 2000 [BDGK00], pp 286–303
Milner AJRG (1971) An algebric definition of simulation between programs. In: Procceedings of 2nd Joint Conference on Artificial Intelligence, pp 481–489
Morgan CC (1988) The specification statement. ACM Trans Programm Lang Syst 10:403–419
Nipkow T (1986) Non deterministic data types: Models and implementations. Acta Inf 22(6):629–661
Prehn S, Toetenel WJ (eds) (1991) VDM ’91 – Formal software development, 4th international symposium of VDM Europe, Noordwijkerhout, The Netherlands, October 21–25, 1991, Proceedings, Vol 2: Tutorials, vol 552 of Lecture Notes in Computer Science. Springer, Berlin Heidelberg New York
Schneider S (2001) The B-Method – An introduction. Correctness of Computing Palgrave
Stepney S, Cooper D, Woodcock JCP (1998) More powerful Z data refinement: pushing the state of the art in industrial refinement. In: ZUM ’98 [BFH98], pp 284–307
Stepney S, Cooper D, Woodcock JCP (2000) An electronic purse: specification, refinement, and proof. Technical Monograph PRG-126. Oxford University Computing Laboratory Oxford
Strulo B (1995) How firing conditions help inheritance. In: Bowen JP, Hinchey MG (eds) ZUM ’95: the Z formal specification notation, 9th international conference of Z users limerick, Ireland, September 7–9, 1995, vol 967 of Lecture Notes in Computer Science. Springer, Berlin Heidelberg New York pp 264–275
Toyn I (ed) (1999) Z notation: final committee Draft, CD 13568.2. Z Standards Panel
Woodcock JCP, Davies J (1996) Using Z: specification, refinement and proof. Prentice Hall New Jersey
Woodcock JCP, Morgan CC (1990) Refinement of State-Based Concurrent Systems. In: VDM ’90 [NHL90], pp 340–351
Woodcock JCP (1991) An introduction to refinement in Z. In: VDM ’91 (volume 2) [BT91b], pp 96–117
Woodcock JCP (1991) The refinement calculus. In: VDM ’91 (volume 2) [PTP91b], pp 80–95
Wordsworth JB (1992) Software development with Z – A practical approach to formal methods in software engineering. Internalional Computer Science Series. Addison-Wesley, Reading
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Deutsch, M., Henson, M.C. An analysis of refinement in an abortive paradigm. Form Asp Comp 18, 329–363 (2006). https://doi.org/10.1007/s00165-006-0006-3
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00165-006-0006-3