<strong>VDM</strong>-<strong>10</strong> <strong>Language</strong> <strong>Manual</strong> union type, 26 equality abstraction field, 23 equals definition, 99, 191 error, 90, 179 error list, 90, 179 error statement, 118, 194 escape sequence, 200 evaluator, 205 exceptions, 90, 179 exists expression, 49, 186 exists unique expression, 49, 186 exit statement, 115, 194 explicit function definition, 35, 176 explicit operation definition, 89, 178 exponent, 200 export definition, 154, 172 export functions signature, 154, 172 export module signature, 154, 172 export signature, 154, 172 export types signature, 154, 172 expression, 41, 44–46, 48, 50, 51, 53–60, 62– 66, 68, 70, 181 expression list, 51, 181 extended explicit function definition, 36, 177 extended explicit operation definition, 90, 178 externals, 90, 179 field, 23, 175 field list, 23, 175 field reference, <strong>10</strong>2, 190 Field select, 24 field select, 57, 188, 204 fin expression, 66, 190 Finite power set, 14 finite power set, 183 Floor, 9 floor, 183 for loop, <strong>10</strong>7 Function apply, 29 function body, 36, 177 Function composition, 29 function definition, 35, 176 function definitions, 35, 176 function export, 154, 173 function import, 158, 172 Function iteration, 29 function signature, 154, 173 function type, 28, 36, 175 function type instantiation, 57, 188, 204 functions signature, 154, 173 general assign statement, <strong>10</strong>1, 192 general is expression, 63, 189 general map type, 18, 175 Greater or equal, 9 Greater than, 9 greater than, 185 greater than or equal, 185 Head, 16 hexadecimal literal, 200 history expressions, 66 identifier, 199 identifier type pair, 177 identifier type pair list, 36, 177 identity statement, 119, 194 if expression, 46, 182 if statement, <strong>10</strong>4, 192 Implication, 6 implicit function definition, 35, 176 implicit operation body, 89, 178 implicit operation definition, 89, 178 imply, 186 import definition, 158, 171 import definition list, 158, 171 import functions signature, 158, 172 import module signature, 158, 171 import operations signature, 158, 172 import signature, 158, 171 import types signature, 158, 172 import values signature, 158, 172 in set, 186 index for loop, <strong>10</strong>7, 192 Indexes, 16 Inequality 216
INDEX boolean type, 6 char, 11 function type, 29 map type, 19 numeric type, 9 optional type, 26 quote, 11 record, 24 sequence type, 16 set type, 14 token type, 12 tuple, 22 union type, 26 inheritance clause, 128, 173 initialisation, 85, 176 injective map type, 18, 175 instance variable definition, 83, 179 instance variable definitions, 83, 179 Integer division, 9 interface, 154, 157, 171 Intersection, 14 invariant, 85, 175, 176 invariant definition, 83, 179 invariant initial function, 85, 175, 176 iota expression, 50, 187 is basic type, 63, 200 is expression, 63, 189 isofbaseclass expression, 64, 189 isofclass expression, 64, 189 iterate, 186, 204 keyword, 199 lambda expression, 62, 188 Length, 16 Less or equal, 9 Less than, 9 less than, 185 less than or equal, 185 let be expression, 41, 182 let be statement, 97, 191 let expression, 41, 182 let statement, 97, 191 local definition, 41, 97, 191 logical equivalence, 186 logical infix operator, 206 logical prefix operator, 206 Map apply, 19 Map composition, 19 map comprehension, 54, 187 map domain, 184 map domain restrict by, 186 map domain restrict to, 186 map enumeration, 54, 187 map infix operator, 205 Map inverse, 19 map inverse, 45, 184 Map iteration, 19 map merge, 186 map or sequence modify, 186 map or sequence reference, <strong>10</strong>2, 190 map prefix operator, 205 map range, 184 map range restrict by, 186 map range restrict to, 186 map type, 18, 175 maplet, 54, 187 match value, 73, 194 Membership, 14 Merge, 19 mode, 90, 179 module, 153, 171 module body, 153, 173 Modulus, 9 multiple assign statement, <strong>10</strong>2, 192 multiple bind, 79, 195 multiple set bind, 79, 195 multiple type bind, 79, 195 Multiple-line comment, 200 mutex predicate, 138, 179 name, 68, 190 name list, 68, 90, 190 named trace, 161, 180 Negation, 6 217
- Page 1 and 2:
Overture - Open-source Tools for Fo
- Page 3 and 4:
Contents 1 Introduction 1 1.1 The V
- Page 5 and 6:
CONTENTS 13 Statements 97 13.1 Let
- Page 7 and 8:
CONTENTS A.7.19 The Undefined Expre
- Page 9 and 10:
Chapter 1 Introduction The Vienna D
- Page 11 and 12:
Chapter 2 Concrete Syntax Notation
- Page 13 and 14:
Chapter 3 Data Type Definitions As
- Page 15 and 16:
Chapter 3. Data Type Definitions We
- Page 17 and 18:
Chapter 3. Data Type Definitions Op
- Page 19 and 20:
Chapter 3. Data Type Definitions (a
- Page 21 and 22:
Chapter 3. Data Type Definitions
- Page 23 and 24:
Chapter 3. Data Type Definitions Op
- Page 25 and 26:
Chapter 3. Data Type Definitions Op
- Page 27 and 28:
Chapter 3. Data Type Definitions Op
- Page 29 and 30:
Chapter 3. Data Type Definitions m1
- Page 31 and 32:
Chapter 3. Data Type Definitions Sy
- Page 33 and 34:
Chapter 3. Data Type Definitions Th
- Page 35 and 36:
Chapter 3. Data Type Definitions
- Page 37 and 38:
Chapter 3. Data Type Definitions to
- Page 39 and 40:
Chapter 3. Data Type Definitions
- Page 41 and 42:
Chapter 4 Algorithm Definitions In
- Page 43 and 44:
Chapter 5 Function Definitions In t
- Page 45 and 46:
Chapter 5. Function Definitions Not
- Page 47 and 48:
Chapter 5. Function Definitions Thi
- Page 49 and 50:
Chapter 6 Expressions In this subse
- Page 51 and 52:
Chapter 6. Expressions ✡✝ mk_Sc
- Page 53 and 54:
Chapter 6. Expressions Examples: Th
- Page 55 and 56:
Chapter 6. Expressions where e1 is
- Page 57 and 58:
Chapter 6. Expressions all expressi
- Page 59 and 60:
Chapter 6. Expressions where bd is
- Page 61 and 62:
Chapter 6. Expressions 6.8 Sequence
- Page 63 and 64:
Chapter 6. Expressions where all th
- Page 65 and 66:
Chapter 6. Expressions mu operator.
- Page 67 and 68:
Chapter 6. Expressions new expressi
- Page 69 and 70:
Chapter 6. Expressions Examples: Us
- Page 71 and 72:
Chapter 6. Expressions which will r
- Page 73 and 74:
Chapter 6. Expressions Examples: As
- Page 75 and 76:
Chapter 6. Expressions • #active(
- Page 77 and 78:
Chapter 6. Expressions ✞ state si
- Page 79 and 80:
Chapter 6. Expressions Semantics: A
- Page 81 and 82:
Chapter 7 Patterns Syntax: pattern
- Page 83 and 84:
Chapter 7. Patterns In the followin
- Page 85 and 86:
Chapter 7. Patterns ✡✝ ✆ The
- Page 87 and 88:
Chapter 8 Bindings Syntax: bind = s
- Page 89 and 90:
Chapter 9 Value (Constant) Definiti
- Page 91 and 92:
Chapter 10 Instance Variables (VDM+
- Page 93 and 94:
Chapter 11 The State Definition (VD
- Page 95 and 96:
Chapter 11. The State Definition (V
- Page 97 and 98:
Chapter 12 Operation Definitions Op
- Page 99 and 100:
Chapter 12. Operation Definitions s
- Page 101 and 102:
Chapter 12. Operation Definitions p
- Page 103 and 104:
Chapter 12. Operation Definitions h
- Page 105 and 106:
Chapter 13 Statements In this secti
- Page 107 and 108:
Chapter 13. Statements ✡✝ def t
- Page 109 and 110:
Chapter 13. Statements block return
- Page 111 and 112:
Chapter 13. Statements Examples: Th
- Page 113 and 114:
Chapter 13. Statements elseif state
- Page 115 and 116:
Chapter 13. Statements ‘do’, st
- Page 117 and 118:
Chapter 13. Statements 13.7 The Whi
- Page 119 and 120:
Chapter 13. Statements ✡✝ (dcl
- Page 121 and 122:
Chapter 13. Statements ✞ ✡✝ R
- Page 123 and 124:
Chapter 13. Statements where expres
- Page 125 and 126:
Chapter 13. Statements result of th
- Page 127 and 128:
Chapter 13. Statements ✡✝ else
- Page 129 and 130:
Chapter 13. Statements ✞ bootSequ
- Page 131 and 132:
Chapter 13. Statements ✞ op1 : na
- Page 133 and 134:
Chapter 14 Top-level Specification
- Page 135 and 136:
Chapter 14. Top-level Specification
- Page 137 and 138:
Chapter 14. Top-level Specification
- Page 139 and 140:
Chapter 14. Top-level Specification
- Page 141 and 142:
Chapter 14. Top-level Specification
- Page 143 and 144:
Chapter 14. Top-level Specification
- Page 145 and 146:
Chapter 15 Synchronization Constrai
- Page 147 and 148:
Chapter 15. Synchronization Constra
- Page 149 and 150:
Chapter 15. Synchronization Constra
- Page 151 and 152:
Chapter 15. Synchronization Constra
- Page 153 and 154:
Chapter 16 Threads (VDM++ and VDM-R
- Page 155 and 156:
Chapter 16. Threads (VDM++ and VDM-
- Page 157 and 158:
Chapter 16. Threads (VDM++ and VDM-
- Page 159 and 160:
Chapter 17 Top-level Specification
- Page 161 and 162:
Chapter 17. Top-level Specification
- Page 163 and 164:
Chapter 17. Top-level Specification
- Page 165 and 166:
Chapter 17. Top-level Specification
- Page 167 and 168:
Chapter 17. Top-level Specification
- Page 169 and 170:
Chapter 18 Trace Definitions In ord
- Page 171 and 172:
Chapter 18. Trace Definitions stack
- Page 173 and 174: Chapter 19 Static Semantics VDM spe
- Page 175 and 176: Chapter 20 Scope Conflicts (VDM++ a
- Page 177 and 178: References [Ada LRM] [Bicarregui&94
- Page 179 and 180: Chapter 20. Scope Conflicts (VDM++
- Page 181 and 182: Appendix A The Syntax of the VDM La
- Page 183 and 184: Appendix A. The Syntax of the VDM L
- Page 185 and 186: Appendix A. The Syntax of the VDM L
- Page 187 and 188: Appendix A. The Syntax of the VDM L
- Page 189 and 190: Appendix A. The Syntax of the VDM L
- Page 191 and 192: Appendix A. The Syntax of the VDM L
- Page 193 and 194: Appendix A. The Syntax of the VDM L
- Page 195 and 196: Appendix A. The Syntax of the VDM L
- Page 197 and 198: Appendix A. The Syntax of the VDM L
- Page 199 and 200: Appendix A. The Syntax of the VDM L
- Page 201 and 202: Appendix A. The Syntax of the VDM L
- Page 203 and 204: Appendix A. The Syntax of the VDM L
- Page 205 and 206: Appendix A. The Syntax of the VDM L
- Page 207 and 208: Appendix B Lexical Specification B.
- Page 209 and 210: Appendix B. Lexical Specification B
- Page 211 and 212: Appendix B. Lexical Specification S
- Page 213 and 214: Appendix C Operator Precedence The
- Page 215 and 216: Appendix C. Operator Precedence eva
- Page 217 and 218: Appendix C. Operator Precedence pre
- Page 219 and 220: Appendix D Differences between the
- Page 221 and 222: Index abs, 9 and, 6 card, 14 comp f
- Page 223: INDEX arithmetic minus, 185 arithme
- Page 227 and 228: INDEX sequence enumeration, 53, 187