메뉴 건너뛰기




Volumn 18, Issue 2, 1996, Pages 175-234

Total Correctness by Local Improvement in the Transformation of Functional Programs

Author keywords

D.1.1 Programming Techniques : Applicative (Functional) Programming; D.2.4 Software Engineering : Program Verification correctness proofs; F.3.1 Logics and Meanings of Programs : Specifying and Verifying and Reasoning about Programs; Languages

Indexed keywords

DATA STRUCTURES; EQUIVALENCE CLASSES; PROGRAM TRANSLATORS; SOFTWARE ENGINEERING; THEOREM PROVING;

EID: 0030102464     PISSN: 01640925     EISSN: None     Source Type: Journal    
DOI: 10.1145/227699.227716     Document Type: Article
Times cited : (58)

References (64)
  • 1
    • 0002534194 scopus 로고
    • The lazy lambda calculus
    • D. Turner, Ed. Addison-Wesley, Reading, Mass.
    • ABRAMSKY, S. 1990. The lazy lambda calculus. In Research Topics in Functional Programming, D. Turner, Ed. Addison-Wesley, Reading, Mass., 65-116.
    • (1990) Research Topics in Functional Programming , pp. 65-116
    • Abramsky, S.1
  • 2
    • 1542696698 scopus 로고
    • Unfold/fold transformations preserving termination properties
    • Lecture Notes in Computer Science, Springer-Verlag, Berlin
    • AMTOFT, T. 1992. Unfold/fold transformations preserving termination properties. In PLILP '92. Lecture Notes in Computer Science, vol. 631. Springer-Verlag, Berlin, 187-201.
    • (1992) PLILP '92 , vol.631 , pp. 187-201
    • Amtoft, T.1
  • 3
    • 0037882776 scopus 로고
    • Ph.D. thesis, DAIMI, Aarhus Univ., Aarhus, Denmark
    • AMTOFT, T. 1993. Sharing of computations. Ph.D. thesis, DAIMI, Aarhus Univ., Aarhus, Denmark.
    • (1993) Sharing of Computations
    • Amtoft, T.1
  • 5
    • 0018005935 scopus 로고
    • Can programming be liberated from the von Neumann style? A functional style and its algebra of programs
    • BACKUS, J. 1978. Can programming be liberated from the von Neumann style? A functional style and its algebra of programs. Commun. ACM 21, 8 (Aug.), 613-641.
    • (1978) Commun. ACM , vol.21 , Issue.8 AUG. , pp. 613-641
    • Backus, J.1
  • 6
    • 0021508525 scopus 로고
    • Using circular programs to eliminate multiple traversals of data
    • BIRD, R. 1984. Using circular programs to eliminate multiple traversals of data. Acta Informatica 21, 1, 239-250.
    • (1984) Acta Informatica , vol.21 , Issue.1 , pp. 239-250
    • Bird, R.1
  • 7
  • 8
    • 4444275035 scopus 로고
    • On safe folding
    • Lecture Notes in Computer Science, Springer-Verlag, Berlin
    • BOSSI, A., COCCO, N., AND ETALLE, S. 1992a. On safe folding. In PLILP '92. Lecture Notes in Computer Science, vol. 631. Springer-Verlag, Berlin, 172-186.
    • (1992) PLILP '92 , vol.631 , pp. 172-186
    • Bossi, A.1    Cocco, N.2    Etalle, S.3
  • 9
    • 1542591803 scopus 로고
    • Transforming normal programs by replacement
    • Lecture Notes in Computer Science, Springer-Verlag, Berlin
    • BOSSI, A., COCCO, N., AND ETALLE, S. 1992b. Transforming normal programs by replacement. In The 3rd Workshop on Meta-Programming in Logic, META 92. Lecture Notes in Computer Science, vol. 649. Springer-Verlag, Berlin, 265-279.
    • (1992) The 3rd Workshop on Meta-Programming in Logic, META 92 , vol.649 , pp. 265-279
    • Bossi, A.1    Cocco, N.2    Etalle, S.3
  • 10
    • 1542591805 scopus 로고
    • Recursion induction principle revisited
    • BOUDOL, G. AND KOTT, L. 1983. Recursion induction principle revisited. Theor. Comput. Sci. 22, 1, 135-173.
    • (1983) Theor. Comput. Sci. , vol.22 , Issue.1 , pp. 135-173
    • Boudol, G.1    Kott, L.2
  • 11
    • 0017419683 scopus 로고
    • A transformation system for developing recursive programs
    • BURSTALL, R. AND DARLINGTON, J. 1977. A transformation system for developing recursive programs. J. ACM 24, 1 (Jan.), 44-67.
    • (1977) J. ACM , vol.24 , Issue.1 JAN. , pp. 44-67
    • Burstall, R.1    Darlington, J.2
  • 13
    • 0345589083 scopus 로고
    • Infinite trees in normal form and recursive equations having a unique solution
    • COURCELLE, B. 1979. Infinite trees in normal form and recursive equations having a unique solution. Math. Syst. Theor. 13, 1, 131-180.
    • (1979) Math. Syst. Theor. , vol.13 , Issue.1 , pp. 131-180
    • Courcelle, B.1
  • 14
    • 46149136995 scopus 로고
    • Equivalences and transformations of regular systems - Applications to recursive program schemes and grammars
    • COURCELLE, B. 1986. Equivalences and transformations of regular systems - applications to recursive program schemes and grammars. Theor. Comput. Sci. 42, 1, 1-122.
    • (1986) Theor. Comput. Sci. , vol.42 , Issue.1 , pp. 1-122
    • Courcelle, B.1
  • 17
    • 0009830169 scopus 로고
    • Unfold/fold transformations of logic programs
    • J.-L. Lassez and G. Plotkin, Eds. MIT Press, Cambridge, Mass.
    • GARDNER, P. AND SHEPHERDSON, J. 1991. Unfold/fold transformations of logic programs. In Computational Logic: Essays in Honor of Alan Robinson, J.-L. Lassez and G. Plotkin, Eds. MIT Press, Cambridge, Mass.
    • (1991) Computational Logic: Essays in Honor of Alan Robinson
    • Gardner, P.1    Shepherdson, J.2
  • 18
    • 0026845597 scopus 로고
    • A self-applicable partial evaluator for the lambda calculus: Correctness and pragmatics
    • GOMARD, C. 1992. A self-applicable partial evaluator for the lambda calculus: Correctness and pragmatics. ACM Trans. Program. Lang. Syst. 14, 2, 147-172.
    • (1992) ACM Trans. Program. Lang. Syst. , vol.14 , Issue.2 , pp. 147-172
    • Gomard, C.1
  • 21
    • 0018050926 scopus 로고
    • Proving and applying program transformations expressed with second order patterns
    • HUET, G. AND LANG, B. 1978. Proving and applying program transformations expressed with second order patterns. Acta Inf. 11, 1 (Jan.), 31-55.
    • (1978) Acta Inf. , vol.11 , Issue.1 JAN. , pp. 31-55
    • Huet, G.1    Lang, B.2
  • 25
    • 0025491197 scopus 로고
    • Preservation of stronger equivalence in unfold/fold logic program transformation
    • KAWAMURA, T. AND KANAMORI, T. 1990. Preservation of stronger equivalence in unfold/fold logic program transformation. Theor. Comput. Sci. 1, 73, 139-154.
    • (1990) Theor. Comput. Sci. , vol.1 , Issue.73 , pp. 139-154
    • Kawamura, T.1    Kanamori, T.2
  • 26
    • 0348130359 scopus 로고
    • About transformation system: A theoretical study
    • B. Robinet, Ed. Dunod, Paris
    • KOTT, L. 1978. About transformation system: A theoretical study. In Program Transformations, B. Robinet, Ed. Dunod, Paris, 232-247.
    • (1978) Program Transformations , pp. 232-247
    • Kott, L.1
  • 27
    • 35348899312 scopus 로고
    • A system for proving equivalences of recursive programs
    • W. Bibel and R. Kowalski, Eds. Lecture Notes in Computer Science, Springer-Verlag, Berlin
    • KOTT, L. 1980. A system for proving equivalences of recursive programs. In The 5th Conference on Automated Deduction, W. Bibel and R. Kowalski, Eds. Lecture Notes in Computer Science, vol. 87. Springer-Verlag, Berlin, 63-69.
    • (1980) The 5th Conference on Automated Deduction , vol.87 , pp. 63-69
    • Kott, L.1
  • 28
    • 0347165473 scopus 로고
    • Unfold/fold transformations
    • M. Nivat and J. Reynolds, Eds. Cambridge University Press, Cambridge, Chapter 12
    • KOTT, L. 1985. Unfold/fold transformations. In Algebraic Methods in Semantics, M. Nivat and J. Reynolds, Eds. Cambridge University Press, Cambridge, Chapter 12, 412-433.
    • (1985) Algebraic Methods in Semantics , pp. 412-433
    • Kott, L.1
  • 29
    • 0343599994 scopus 로고
    • Tech. Rep., IBM T. J. Watson Research Center, Yorktown Heights, N.Y. Revised 1989
    • MAHER, M. 1987. Correctness of a logic program transformation system. Tech. Rep., IBM T. J. Watson Research Center, Yorktown Heights, N.Y. Revised 1989.
    • (1987) Correctness of a Logic Program Transformation System
    • Maher, M.1
  • 32
    • 0001862336 scopus 로고
    • Fully abstract models of the typed λ-calculus
    • MILNER, R. 1977. Fully abstract models of the typed λ-calculus. Theor. Comput. Sci. 4, 1.
    • (1977) Theor. Comput. Sci. , vol.4 , pp. 1
    • Milner, R.1
  • 34
    • 0026222092 scopus 로고
    • Co-induction in relational semantics
    • MILNER, R. AND TOFTE, M. 1991. Co-induction in relational semantics. Theor. Comput. Sci. 87, 1, 209-220.
    • (1991) Theor. Comput. Sci. , vol.87 , Issue.1 , pp. 209-220
    • Milner, R.1    Tofte, M.2
  • 35
    • 84972017777 scopus 로고
    • Correctness of binding time analysis
    • PALSBERG, J. 1993. Correctness of binding time analysis. J. Funct. Program. 3, 3, 347-364.
    • (1993) J. Funct. Program. , vol.3 , Issue.3 , pp. 347-364
    • Palsberg, J.1
  • 36
    • 0020810134 scopus 로고
    • Program transformation systems
    • PARTSCH, P. AND STEINBRUGGEN, R. 1983. Program transformation systems. ACM Comput. Surv. 15, 1, 199-236.
    • (1983) ACM Comput. Surv. , vol.15 , Issue.1 , pp. 199-236
    • Partsch, P.1    Steinbruggen, R.2
  • 39
    • 18944377121 scopus 로고
    • Call-by-name, call-by-value and the λ-calculus
    • PLOTKIN, G. D. 1975. Call-by-name, call-by-value and the λ-calculus. Theor. Comput. Sci. 1, 1, 125-159.
    • (1975) Theor. Comput. Sci. , vol.1 , Issue.1 , pp. 125-159
    • Plotkin, G.D.1
  • 40
    • 84976683352 scopus 로고
    • Semantics preserving transformation rules for Prolog
    • Proceedings of the Symposium on Partial Evaluation and Semantics-Based Program Manipulation, PEPM '91.
    • PROIETTI, M. AND PETTOROSSI, A. 1991. Semantics preserving transformation rules for Prolog. In Proceedings of the Symposium on Partial Evaluation and Semantics-Based Program Manipulation, PEPM '91. SIGPLAN Not. 26, 9 (Sept.).
    • (1991) SIGPLAN Not. , vol.26 , Issue.9 SEPT.
    • Proietti, M.1    Pettorossi, A.2
  • 42
    • 0011603921 scopus 로고
    • Rewriting techniques for program synthesis
    • Lecture Notes in Computer Science, Springer-Verlag, Berlin
    • REDDY, U. 1989. Rewriting techniques for program synthesis. In Rewriting Techniques and Applications. Lecture Notes in Computer Science, vol. 355. Springer-Verlag, Berlin, 388-403.
    • (1989) Rewriting Techniques and Applications , vol.355 , pp. 388-403
    • Reddy, U.1
  • 44
    • 0003571360 scopus 로고
    • Ph.D. thesis, Dept. of Computing, Imperial College, Univ. of London, London
    • SANDS, D. 1990. Calculi for time analysis of functional programs. Ph.D. thesis, Dept. of Computing, Imperial College, Univ. of London, London.
    • (1990) Calculi for Time Analysis of Functional Programs
    • Sands, D.1
  • 45
    • 0003066059 scopus 로고
    • Operational theories of improvement in functional languages
    • Skye, Scotland. Springer-Verlag, Berlin
    • SANDS, D. 1991. Operational theories of improvement in functional languages (extended abstract). In Proceedings of the 4th Glasgow Workshop on Functional Programming (Skye, Scotland). Springer-Verlag, Berlin, 298-311.
    • (1991) Proceedings of the 4th Glasgow Workshop on Functional Programming , pp. 298-311
    • Sands, D.1
  • 46
    • 0003376597 scopus 로고    scopus 로고
    • A naïve time analysis and its theory of cost equivalence
    • DIKU
    • SANDS, D. 1993. A naïve time analysis and its theory of cost equivalence. TOPPS Rep. D-173, DIKU. Also in Logic and Comput. 5, 4, 495-541.
    • (1993) TOPPS Rep. D-173
    • Sands, D.1
  • 47
    • 0003376597 scopus 로고    scopus 로고
    • SANDS, D. 1993. A naïve time analysis and its theory of cost equivalence. TOPPS Rep. D-173, DIKU. Also in Logic and Comput. 5, 4, 495-541.
    • Logic and Comput. , vol.5 , Issue.4 , pp. 495-541
  • 49
    • 84957672152 scopus 로고    scopus 로고
    • Proving the correctness of recursion-based automatic program transformations
    • Lecture Notes in Computer Science, Springer-Verlag, Berlin
    • SANDS, D. 1995b. Proving the correctness of recursion-based automatic program transformations. In The International Joint Conference on Theory and Practice of Software Development (TAPSOFT/FASE '95). Lecture Notes in Computer Science, vol. 915. Springer-Verlag, Berlin. Extended version to appear in Theor. Comput. Sci.
    • (1995) The International Joint Conference on Theory and Practice of Software Development (TAPSOFT/FASE '95) , vol.915
    • Sands, D.1
  • 50
    • 84957672152 scopus 로고    scopus 로고
    • Extended version to appear
    • SANDS, D. 1995b. Proving the correctness of recursion-based automatic program transformations. In The International Joint Conference on Theory and Practice of Software Development (TAPSOFT/FASE '95). Lecture Notes in Computer Science, vol. 915. Springer-Verlag, Berlin. Extended version to appear in Theor. Comput. Sci.
    • Theor. Comput. Sci.
  • 51
    • 1542487174 scopus 로고
    • An equivalence preserving first order unfold/fold transformation system
    • Lecture Notes in Computer Science, Springer-Verlag, Berlin
    • SATO, T. 1990. An equivalence preserving first order unfold/fold transformation system. In The 2nd International Conference on Algebraic and Logic Programming. Lecture Notes in Computer Science, vol. 462. Springer-Verlag, Berlin, 175-188.
    • (1990) The 2nd International Conference on Algebraic and Logic Programming , vol.462 , pp. 175-188
    • Sato, T.1
  • 52
    • 1542696695 scopus 로고
    • Ph.D. thesis, Stanford Rep. STAN-CS-80-818, Dept. of Computer Science, Stanford Univ., Stanford, Calif.
    • SCHERLIS, W. 1980. Expression procedures and program derivation. Ph.D. thesis, Stanford Rep. STAN-CS-80-818, Dept. of Computer Science, Stanford Univ., Stanford, Calif.
    • (1980) Expression Procedures and Program Derivation
    • Scherlis, W.1
  • 54
    • 0026203673 scopus 로고
    • Unfold/fold transformation of stratified programs
    • SEKI, H. 1991. Unfold/fold transformation of stratified programs. Theor. Comput. Sci. 86, 1, 107-139.
    • (1991) Theor. Comput. Sci. , vol.86 , Issue.1 , pp. 107-139
    • Seki, H.1
  • 55
    • 0027590277 scopus 로고
    • Unfold/fold transformation of general logic programs for the well-founded semantics
    • SEKI, H. 1993. Unfold/fold transformation of general logic programs for the well-founded semantics. J. Logic Program. 16, 1, 5-23.
    • (1993) J. Logic Program. , vol.16 , Issue.1 , pp. 5-23
    • Seki, H.1
  • 56
    • 0002086541 scopus 로고
    • Unfold/fold transformation of logic programs
    • S. Tarnlund, Ed. MIT Press, Cambridge, Mass.
    • TAMAKI, H. AND SATO, T. 1984. Unfold/fold transformation of logic programs. In The 2nd International Logic Programming Conference, S. Tarnlund, Ed. MIT Press, Cambridge, Mass., 127-138.
    • (1984) The 2nd International Logic Programming Conference , pp. 127-138
    • Tamaki, H.1    Sato, T.2
  • 57
    • 0022754405 scopus 로고
    • The concept of a supercompiler
    • TURCHIN, V. F. 1986. The concept of a supercompiler. ACM Trans. Program. Lang. Syst. 8, 3 (July), 292-325.
    • (1986) ACM Trans. Program. Lang. Syst. , vol.8 , Issue.3 JULY , pp. 292-325
    • Turchin, V.F.1
  • 58
    • 0012582444 scopus 로고
    • Univ. of Glasgow, Glasgow, Scotland. Preliminary version circulated on the fp mailing list, 1987
    • WADLER, P. 1989a. The concatenate vanishes. Univ. of Glasgow, Glasgow, Scotland. Preliminary version circulated on the fp mailing list, 1987.
    • (1989) The Concatenate Vanishes
    • Wadler, P.1
  • 60
    • 0025444759 scopus 로고    scopus 로고
    • Deforestation: Transforming programs to eliminate trees
    • WADLER, P. 1990. Deforestation: Transforming programs to eliminate trees. Theor. Comput. Sci. 73, 1, 231-248. Preliminary version in ESOP 88, Lecture Notes in Computer Science, vol. 300.
    • (1990) Theor. Comput. Sci. , vol.73 , Issue.1 , pp. 231-248
    • Wadler, P.1
  • 61
    • 0025444759 scopus 로고    scopus 로고
    • Preliminary version in ESOP 88
    • WADLER, P. 1990. Deforestation: Transforming programs to eliminate trees. Theor. Comput. Sci. 73, 1, 231-248. Preliminary version in ESOP 88, Lecture Notes in Computer Science, vol. 300.
    • Lecture Notes in Computer Science , vol.300
  • 62
    • 84971946807 scopus 로고
    • Specifying the correctness of binding time analysis
    • WAND, M. 1993. Specifying the correctness of binding time analysis. J. Funct. Program. 3, 3, 365-387.
    • (1993) J. Funct. Program. , vol.3 , Issue.3 , pp. 365-387
    • Wand, M.1
  • 63
    • 1542801975 scopus 로고
    • Termination preserving problem in the transformation of applicative programs
    • YONQUIANG, S., RUZHAN, L., AND XIAORONG, H. 1987. Termination preserving problem in the transformation of applicative programs. J. Comput. Sci. Tech. 2, 3, 191-201.
    • (1987) J. Comput. Sci. Tech. , vol.2 , Issue.3 , pp. 191-201
    • Yonquiang, S.1    Ruzhan, L.2    Xiaorong, H.3
  • 64
    • 84972477448 scopus 로고
    • How powerful are folding/unfolding transformations?
    • ZHU, H. 1994. How powerful are folding/unfolding transformations? J. Funct. Program. 4, 1 (Jan.), 89-112.
    • (1994) J. Funct. Program. , vol.4 , Issue.1 JAN. , pp. 89-112
    • Zhu, H.1


* 이 정보는 Elsevier사의 SCOPUS DB에서 KISTI가 분석하여 추출한 것입니다.