Formal Specification— Z Notation| Syntax, Type and Semantics Consensus Working Draft 2.6 August 24, 2000 Developed by members of the Z Standards Panel BSI Panel IST/5/-/19/2 (Z Notation) ISO Panel JTC1/SC22/WG19 (Rapporteur Group for Z) Project number JTC1.22.45 Project editor: Ian Toyn
[email protected] http://www.cs.york.ac.uk/~ian/zstan/ This is a Working Draft by the Z Standards Panel. It has evolved from Consensus Working Draft 2.5 of June 20, 2000 according to remarks received and discussed at Meeting 56 of the Z Panel. ISO/IEC 13568:2000(E) Contents Page Foreword . iv Introduction . v 1 Scope ....................................................... 1 2 Normative references . 1 3 Terms and definitions . 1 4 Symbols and definitions . 3 5 Conformance . 14 6 Z characters . 18 7 Lexis........................................................ 24 8 Concrete syntax . 30 9 Characterisation rules . 38 10 Annotated syntax . 40 11 Prelude . 43 12 Syntactic transformation rules . 44 13 Type inference rules . 54 14 Semantic transformation rules . 66 15 Semantic relations . 71 Annex A (normative) Mark-ups . 79 Annex B (normative) Mathematical toolkit . 90 Annex C (normative) Organisation by concrete syntax production . 107 Annex D (informative) Tutorial . 153 Annex E (informative) Conventions for state-based descriptions . 166 Bibliography . 168 Index . 169 ii c ISO/IEC 2000|All rights reserved ISO/IEC 13568:2000(E) Figures 1 Phases of the definition . 15 B.1 Parent relation between sections of the mathematical toolkit . 90 D.1 Parse tree of birthday book example . 155 D.2 Annotated parse tree of part of axiomatic example .