Transformation of Applicative Specifications into Imperative ...
Transformation of Applicative Specifications into Imperative ... Transformation of Applicative Specifications into Imperative ...
APPENDIX D. SPECIFICATION OF TRANSFORMER IN RSL1 BOOL_FFP_ENV_TYPES_LDL TRFFPProduct(ffpl, tel, trans, env, types, prlet) ≡ if lengthBinding(binding_list(ffpl)) = 0 then if not(tel = 〈〉) then mk_BOOL_FFP_ENV_TYPES_LDL( false, mk_FormalFunctionParameter(〈〉), env, types, prlet) else mk_BOOL_FFP_ENV_TYPES_LDL( true, mk_FormalFunctionParameter(〈〉), env, types, prlet) end else case hd binding_list(ffpl) of Make_ProductBinding(pb) → if emptyList( binding_list( formalfp( TRFormalFuncParam( mk_FormalFunctionParameter( binding_list(pb)), hd tel, trans, env, types, prlet)))) then mk_BOOL_FFP_ENV_TYPES_LDL( and( bool( TRFormalFuncParam( mk_FormalFunctionParameter( binding_list(pb)), hd tel, trans, env, types, prlet)), bool( TRFFPProduct( mk_FormalFunctionParameter( tl binding_list(ffpl)), tl tel, trans, envMap( TRFormalFuncParam( mk_FormalFunctionParameter( binding_list(pb)), hd tel, trans, env, types, prlet)), 364
D.2. FORMAL SPECIFICATION OF THE TRANSFORMER IN RSL1 typesMap( TRFormalFuncParam( mk_FormalFunctionParameter( binding_list(pb)), hd tel, trans, env, types, prlet)), letdefList( TRFormalFuncParam( mk_FormalFunctionParameter( binding_list(pb)), hd tel, trans, env, types, prlet))))), mk_FormalFunctionParameter( binding_list( formalfp( TRFFPProduct( mk_FormalFunctionParameter( tl binding_list(ffpl)), tl tel, trans, envMap( TRFormalFuncParam( mk_FormalFunctionParameter( binding_list(pb)), hd tel, trans, env, types, prlet)), typesMap( TRFormalFuncParam( mk_FormalFunctionParameter( binding_list(pb)), hd tel, trans, env, types, prlet)), letdefList( TRFormalFuncParam( mk_FormalFunctionParameter( binding_list(pb)), hd tel, trans, env, types, prlet)))))), envMap( TRFFPProduct( mk_FormalFunctionParameter( tl binding_list(ffpl)), tl tel, trans, envMap( TRFormalFuncParam( 365
- Page 330 and 331: APPENDIX D. SPECIFICATION OF TRANSF
- Page 332 and 333: APPENDIX D. SPECIFICATION OF TRANSF
- Page 334 and 335: APPENDIX D. SPECIFICATION OF TRANSF
- Page 336 and 337: APPENDIX D. SPECIFICATION OF TRANSF
- Page 338 and 339: APPENDIX D. SPECIFICATION OF TRANSF
- Page 340 and 341: APPENDIX D. SPECIFICATION OF TRANSF
- Page 342 and 343: APPENDIX D. SPECIFICATION OF TRANSF
- Page 344 and 345: APPENDIX D. SPECIFICATION OF TRANSF
- Page 346 and 347: APPENDIX D. SPECIFICATION OF TRANSF
- Page 348 and 349: APPENDIX D. SPECIFICATION OF TRANSF
- Page 350 and 351: APPENDIX D. SPECIFICATION OF TRANSF
- Page 352 and 353: APPENDIX D. SPECIFICATION OF TRANSF
- Page 354 and 355: APPENDIX D. SPECIFICATION OF TRANSF
- Page 356 and 357: APPENDIX D. SPECIFICATION OF TRANSF
- Page 358 and 359: APPENDIX D. SPECIFICATION OF TRANSF
- Page 360 and 361: APPENDIX D. SPECIFICATION OF TRANSF
- Page 362 and 363: APPENDIX D. SPECIFICATION OF TRANSF
- Page 364 and 365: APPENDIX D. SPECIFICATION OF TRANSF
- Page 366 and 367: APPENDIX D. SPECIFICATION OF TRANSF
- Page 368 and 369: APPENDIX D. SPECIFICATION OF TRANSF
- Page 370 and 371: APPENDIX D. SPECIFICATION OF TRANSF
- Page 372 and 373: APPENDIX D. SPECIFICATION OF TRANSF
- Page 374 and 375: APPENDIX D. SPECIFICATION OF TRANSF
- Page 376 and 377: APPENDIX D. SPECIFICATION OF TRANSF
- Page 378 and 379: APPENDIX D. SPECIFICATION OF TRANSF
- Page 382 and 383: APPENDIX D. SPECIFICATION OF TRANSF
- Page 384 and 385: APPENDIX D. SPECIFICATION OF TRANSF
- Page 386 and 387: APPENDIX D. SPECIFICATION OF TRANSF
- Page 388 and 389: APPENDIX D. SPECIFICATION OF TRANSF
- Page 390 and 391: APPENDIX D. SPECIFICATION OF TRANSF
- Page 392 and 393: APPENDIX D. SPECIFICATION OF TRANSF
- Page 394 and 395: APPENDIX D. SPECIFICATION OF TRANSF
- Page 396 and 397: APPENDIX D. SPECIFICATION OF TRANSF
- Page 398 and 399: APPENDIX D. SPECIFICATION OF TRANSF
- Page 400 and 401: APPENDIX D. SPECIFICATION OF TRANSF
- Page 402 and 403: APPENDIX D. SPECIFICATION OF TRANSF
- Page 404 and 405: APPENDIX D. SPECIFICATION OF TRANSF
- Page 406 and 407: APPENDIX D. SPECIFICATION OF TRANSF
- Page 408 and 409: APPENDIX D. SPECIFICATION OF TRANSF
- Page 410 and 411: APPENDIX D. SPECIFICATION OF TRANSF
- Page 412 and 413: APPENDIX D. SPECIFICATION OF TRANSF
- Page 414 and 415: APPENDIX D. SPECIFICATION OF TRANSF
- Page 416 and 417: APPENDIX D. SPECIFICATION OF TRANSF
- Page 418 and 419: APPENDIX D. SPECIFICATION OF TRANSF
- Page 420 and 421: APPENDIX D. SPECIFICATION OF TRANSF
- Page 422 and 423: APPENDIX D. SPECIFICATION OF TRANSF
- Page 424 and 425: APPENDIX D. SPECIFICATION OF TRANSF
- Page 426 and 427: APPENDIX D. SPECIFICATION OF TRANSF
- Page 428 and 429: APPENDIX D. SPECIFICATION OF TRANSF
D.2. FORMAL SPECIFICATION OF THE TRANSFORMER IN RSL1<br />
typesMap(<br />
TRFormalFuncParam(<br />
mk_FormalFunctionParameter(<br />
binding_list(pb)),<br />
hd tel, trans, env, types,<br />
prlet)),<br />
letdefList(<br />
TRFormalFuncParam(<br />
mk_FormalFunctionParameter(<br />
binding_list(pb)),<br />
hd tel, trans, env, types,<br />
prlet))))),<br />
mk_FormalFunctionParameter(<br />
binding_list(<br />
formalfp(<br />
TRFFPProduct(<br />
mk_FormalFunctionParameter(<br />
tl binding_list(ffpl)),<br />
tl tel, trans,<br />
envMap(<br />
TRFormalFuncParam(<br />
mk_FormalFunctionParameter(<br />
binding_list(pb)),<br />
hd tel, trans, env,<br />
types, prlet)),<br />
typesMap(<br />
TRFormalFuncParam(<br />
mk_FormalFunctionParameter(<br />
binding_list(pb)),<br />
hd tel, trans, env,<br />
types, prlet)),<br />
letdefList(<br />
TRFormalFuncParam(<br />
mk_FormalFunctionParameter(<br />
binding_list(pb)),<br />
hd tel, trans, env,<br />
types, prlet)))))),<br />
envMap(<br />
TRFFPProduct(<br />
mk_FormalFunctionParameter(<br />
tl binding_list(ffpl)), tl tel,<br />
trans,<br />
envMap(<br />
TRFormalFuncParam(<br />
365