{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2022,3,31]],"date-time":"2022-03-31T09:40:44Z","timestamp":1648719644627},"reference-count":49,"publisher":"Springer Science and Business Media LLC","issue":"1-2","license":[{"start":{"date-parts":[[2005,6,1]],"date-time":"2005-06-01T00:00:00Z","timestamp":1117584000000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Higher-Order Symb Comput"],"published-print":{"date-parts":[[2005,6]]},"DOI":"10.1007\/s10990-005-7008-3","type":"journal-article","created":{"date-parts":[[2005,7,12]],"date-time":"2005-07-12T17:54:33Z","timestamp":1121190873000},"page":"121-210","source":"Crossref","is-referenced-by-count":2,"title":["Derivation of Efficient Logic Programs by Specialization and Reduction of Nondeterminism"],"prefix":"10.1007","volume":"18","author":[{"given":"Alberto","family":"Pettorossi","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Maurizio","family":"Proietti","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Sophie","family":"Renault","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","reference":[{"key":"7008_CR1","doi-asserted-by":"crossref","unstructured":"Apt, K.R. Introduction to logic programming. In Handbook of Theoretical Computer Science, J. van Leeuwen (Ed.), Elsevier, 1990, pp. 493\u2013576.","DOI":"10.1016\/B978-0-444-88074-1.50015-9"},{"key":"7008_CR2","unstructured":"Apt, K.R. From Logic Programming to Prolog. Prentice Hall, 1997."},{"key":"7008_CR3","doi-asserted-by":"crossref","first-page":"93","DOI":"10.1016\/0167-6423(89)90036-1","volume":"12","author":"R.S. Bird","year":"1989","unstructured":"Bird, R.S., Gibbons, J., and Jones, G. Formal derivation of a pattern matching algorithm. Science of Computer Programming, 12 (1989) 93\u2013104.","journal-title":"Science of Computer Programming"},{"issue":"2","key":"7008_CR4","doi-asserted-by":"crossref","first-page":"253","DOI":"10.1145\/78942.78947","volume":"12","author":"A. Bossi","year":"1990","unstructured":"Bossi, A., Cocco, N., and Dulli, S. A method for specializing logic programs. ACM Transactions on Programming Languages and Systems, 12(2) (1990) 253\u2013302.","journal-title":"ACM Transactions on Programming Languages and Systems"},{"key":"7008_CR5","doi-asserted-by":"crossref","unstructured":"Bossi, A., Cocco, N., and Etalle, S. Transforming left-terminating programs. In Proceedings of the Ninth International Workshop on Logic-based Program Synthesis, LOPSTR\u201999, A. Bossi (Ed.), Venezia, Italy, September 22\u201324, 1999, Lecture Notes in Computer Science 1817, Springer, 2000, 156\u2013175.","DOI":"10.1007\/10720327_10"},{"issue":"1","key":"7008_CR6","doi-asserted-by":"crossref","first-page":"44","DOI":"10.1145\/321992.321996","volume":"24","author":"R.M. Burstall","year":"1977","unstructured":"Burstall, R.M. and Darlington, J. A transformation system for developing recursive programs. Journal of the ACM, 24(1) (1977) 44\u201367.","journal-title":"Journal of the ACM"},{"key":"7008_CR7","doi-asserted-by":"crossref","unstructured":"Danvy, O., Gl\u00fcck, R., and Thiemann, P. (Eds). Partial Evaluation. International Seminar, Dagstuhl Castle, Germany, vol. 1110 of Lecture Notes in Computer Science. Springer-Verlag, 1996.","DOI":"10.1007\/3-540-61580-6"},{"issue":"2\u20133","key":"7008_CR8","doi-asserted-by":"crossref","first-page":"231","DOI":"10.1016\/S0743-1066(99)00030-8","volume":"41","author":"D. De Schreye","year":"1999","unstructured":"De Schreye, D., Gl\u00fcck, R., J\u00f8rgensen, J., Leuschel, M., Martens, B., and S\u00f8rensen, M.H. Conjunctive partial deduction: Foundations, control, algorithms, and experiments. Journal of Logic Programming, 41(2\u20133) (1999) 231\u2013277.","journal-title":"Journal of Logic Programming"},{"key":"7008_CR9","doi-asserted-by":"crossref","first-page":"207","DOI":"10.1016\/0743-1066(88)90010-6","volume":"5","author":"S.K. Debray","year":"1988","unstructured":"Debray, S.K. and Warren, D.S. Automatic mode inference for logic programs. Journal of Logic Programming, 5 (1988) 207\u2013229.","journal-title":"Journal of Logic Programming"},{"key":"7008_CR10","unstructured":"Deville, Y. Logic Programming: Systematic Program Development. Addison-Wesley, 1990."},{"key":"7008_CR11","unstructured":"Fujita, H. An algorithm for partial evaluation with constraints. Technical Memorandum TM-0367, ICOT, Tokyo, Japan, 1987."},{"key":"7008_CR12","doi-asserted-by":"crossref","first-page":"61","DOI":"10.1016\/0304-3975(91)90299-H","volume":"90","author":"Y. Futamura","year":"1991","unstructured":"Futamura, Y., Nogi, K., and Takano, A. Essence of generalized partial computation. Theoretical Computer Science, 90 (1991) 61\u201379.","journal-title":"Theoretical Computer Science"},{"key":"7008_CR13","doi-asserted-by":"crossref","unstructured":"Gallagher, J.P. Tutorial on specialisation of logic programs. In Proceedings of ACM SIGPLAN Symposium on Partial Evaluation and Semantics Based Program Manipulation, PEPM \u201893, Copenhagen, Denmark, ACM Press, 1993, pp. 88\u201398.","DOI":"10.1145\/154630.154640"},{"key":"7008_CR14","doi-asserted-by":"crossref","unstructured":"Gergatsoulis, M. and Katzouraki, M. Unfold\/fold transformations for definite clause programs. In Proceedings Sixth International Symposium on Programming Language Implementation and Logic Programming (PLILP \u201894), M. Hermenegildo and J. Penjam (Eds.), Lecture Notes in Computer Science 844, Springer-Verlag, 1994, pp. 340\u2013354.","DOI":"10.1007\/3-540-58402-1_24"},{"key":"7008_CR15","doi-asserted-by":"crossref","unstructured":"Gl\u00fcck, R. and Klimov, A.V. Occam\u2019s razor in metacomputation: The notion of a perfect process tree. In 3rd International Workshop on Static Analysis, Padova, Italy, September 1993, P. Cousot, M. Falaschi, G. Fil\u00e9, and A. Rauzy (Eds.), Lecture Notes in Computer Science 724, Springer-Verlag, 1993, pp. 112\u2013123.","DOI":"10.1007\/3-540-57264-3_34"},{"key":"7008_CR16","doi-asserted-by":"crossref","unstructured":"Gl\u00fcck, R. and S\u00f8rensen, M.H. A roadmap to metacomputation by supercompilation. In Partial Evaluation, O. Danvy, R. Gl\u00fcck, and P. Thiemann (Eds.), Lecture Notes in Computer Science 1110, Springer, 1996, pp. 137\u2013160.","DOI":"10.1007\/3-540-61580-6_8"},{"key":"7008_CR17","doi-asserted-by":"crossref","unstructured":"Gordon, M.J., Milner, A.J., and Wadsworth, C.P. Edinburgh LCF. Lecture Notes in Computer Science 78. Springer-Verlag, 1979.","DOI":"10.1007\/3-540-09724-4"},{"key":"7008_CR18","unstructured":"Henderson, F., Somogyi, Z., and Conway, T. Determinism analysis in the Mercury compiler. In Proceedings of the Australian Computer Science Conference, Melbourne, Australia, 1996, pp. 337\u2013346."},{"key":"7008_CR19","unstructured":"Hermenegildo, M.V., Bueno, F., Puebla, G., and L\u00f3pez, P. Program analysis, debugging, and optimization using the CIAO system preprocessor. In Proceedings of the 1999 International Conference on Logic Programming, D. De Schreye (Ed.), Las Cruces, NM, USA, MIT Press, 1999, pp. 52\u201366."},{"key":"7008_CR20","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1016\/S0743-1066(98)10002-X","volume":"37","author":"J. Jaffar","year":"1998","unstructured":"Jaffar, J., Maher, M., Marriott, K., and Stuckey, P. The semantics of constraint logic programming. Journal of Logic Programming, 37 (1998) 1\u201346.","journal-title":"Journal of Logic Programming"},{"key":"7008_CR21","unstructured":"Jones, N.D., Gomard, C.K., and Sestoft, P. Partial Evaluation and Automatic Program Generation. Prentice Hall, 1993."},{"issue":"2","key":"7008_CR22","doi-asserted-by":"crossref","first-page":"323","DOI":"10.1137\/0206024","volume":"6","author":"D.E. Knuth","year":"1977","unstructured":"Knuth, D.E., Morris, J.H., and Pratt, V.R. Fast pattern matching in strings. SIAM Journal on Computing, 6(2) (1977) 323\u2013350.","journal-title":"SIAM Journal on Computing"},{"key":"7008_CR23","doi-asserted-by":"crossref","unstructured":"Leuschel, M. On the power of homeomorphic embedding for online termination. In Proceedings of the Fifth Static Analysis Symposium, SAS \u201898, G. Levi (Ed.) Pisa, Italy, Lecture Notes in Computer Science 1503, Springer-Verlag, 1998, pp. 230\u2013245.","DOI":"10.1007\/3-540-49727-7_14"},{"key":"7008_CR24","unstructured":"Leuschel, M. The ECCE partial deduction system and the DPPD library of benchmarks, Release 3, Nov. 2000. Accessible via http:\/\/www.ecs.soton.ac.uk\/mal."},{"issue":"1","key":"7008_CR25","doi-asserted-by":"crossref","first-page":"208","DOI":"10.1145\/271510.271525","volume":"20","author":"M. Leuschel","year":"1998","unstructured":"Leuschel, M., Martens, B., and De Schreye, D. Controlling generalization and polyvariance in partial deduction of normal logic programs. ACM Transactions on Programming Languages and Systems, 20(1) (1998) 208\u2013258.","journal-title":"ACM Transactions on Programming Languages and Systems"},{"key":"7008_CR26","doi-asserted-by":"crossref","unstructured":"Leuschel, M., Martens, B., and de Schreye, D. Some achievements and prospects in partial deduction. ACM Computing Surveys, 30 (Electronic Section) (3es) (1998) 4.","DOI":"10.1145\/289121.289125"},{"issue":"4","key":"7008_CR27","doi-asserted-by":"crossref","first-page":"289","DOI":"10.1023\/A:1026547031739","volume":"13","author":"Y.A. Liu","year":"2000","unstructured":"Liu, Y.A. Efficiency by incrementalization: An introduction. Higher-Order and Symbolic Computation, 13(4) (2000) 289\u2013313.","journal-title":"Higher-Order and Symbolic Computation"},{"key":"7008_CR28","doi-asserted-by":"crossref","DOI":"10.1007\/978-3-642-83189-8","volume-title":"Foundations of Logic Programming","author":"J.W. Lloyd","year":"1987","unstructured":"Lloyd, J.W. Foundations of Logic Programming, 2nd edition. Springer-Verlag, Berlin, 1987.","edition":"2"},{"key":"7008_CR29","doi-asserted-by":"crossref","first-page":"217","DOI":"10.1016\/0743-1066(91)90027-M","volume":"11","author":"J.W. Lloyd","year":"1991","unstructured":"Lloyd, J.W. and Shepherdson, J.C. Partial evaluation in logic programming. Journal of Logic Programming, 11 (1991) 217\u2013242.","journal-title":"Journal of Logic Programming"},{"key":"7008_CR30","doi-asserted-by":"crossref","first-page":"97","DOI":"10.1016\/0304-3975(94)90203-8","volume":"122","author":"B. Martens","year":"1994","unstructured":"Martens, B., De Schreye, D., and Horv\u00c1th, T. Sound and complete partial deduction with unfolding based on well-founded measures. Theoretical Computer Science, 122 (1994) 97\u2013117.","journal-title":"Theoretical Computer Science"},{"issue":"1","key":"7008_CR31","doi-asserted-by":"crossref","first-page":"43","DOI":"10.1016\/0743-1066(85)90004-4","volume":"2","author":"C.S. Mellish","year":"1985","unstructured":"Mellish, C.S. Some global optimizations for a Prolog compiler. Journal of Logic Programming, 2(1) (1985) 43\u201366.","journal-title":"Journal of Logic Programming"},{"key":"7008_CR32","unstructured":"Mellish, C.S. Abstract interpretation of Prolog programs. In Abstract Interpretation of Declaratice Languages, In S. Abramsky and C. Hankin (Eds.), Chapter 8, Ellis Horwood, 1987, pp. 181\u2013198."},{"issue":"3","key":"7008_CR33","doi-asserted-by":"crossref","first-page":"402","DOI":"10.1145\/357172.357177","volume":"4","author":"R. Paige","year":"1982","unstructured":"Paige, R. and Koenig, S. Finite differencing of computable expressions. ACM Transactions on Programming Languages and Systems, 4(3) (1982) 402\u2013454.","journal-title":"ACM Transactions on Programming Languages and Systems"},{"key":"7008_CR34","unstructured":"Pettorossi, A. Transformation of programs and use of tupling strategy. In Proceedings Informatica 77, Bled, Yugoslavia, 1977, pp. 1\u20136."},{"key":"7008_CR35","doi-asserted-by":"crossref","unstructured":"Pettorossi, A., Proietti, M., and Renault, S. Reducing nondeterminism while specializing logic programs. In Proc. 24-th ACM Symposium on Principles of Programming Languages, Paris, France, ACM Press, 1997, pp. 414\u2013427.","DOI":"10.1145\/263699.263759"},{"key":"7008_CR36","doi-asserted-by":"crossref","unstructured":"Prestwich, S. Online partial deduction of large programs. In ACM Sigplan Symposium on Partial Evaluation and Semantics-Based Program Manipulation, PEPM \u201893, Copenhagen, Denmark, ACM Press, 1993, pp. 111\u2013118.","DOI":"10.1145\/154630.154642"},{"issue":"1\u20132","key":"7008_CR37","doi-asserted-by":"crossref","first-page":"123","DOI":"10.1016\/0743-1066(93)90025-C","volume":"16","author":"M. Proietti","year":"1993","unstructured":"Proietti, M. and Pettorossi, A. The loop absorption and the generalization strategies for the development of logic programs and partial deduction. Journal of Logic Programming, 16(1\u20132) (1993) 123\u2013161.","journal-title":"Journal of Logic Programming"},{"issue":"1","key":"7008_CR38","doi-asserted-by":"crossref","first-page":"89","DOI":"10.1016\/0304-3975(94)00227-A","volume":"142","author":"M. Proietti","year":"1995","unstructured":"Proietti, M. and Pettorossi, A. Unfolding-definition-folding, in this order, for avoiding unnecessary variables in logic programs. Theoretical Computer Science, 142(1) (1995) 89\u2013124.","journal-title":"Theoretical Computer Science"},{"key":"7008_CR39","unstructured":"Renault, S. A system for transforming logic programs. R 97\u201304, Department of Computer Science, University of Rome Tor Vergata, Rome, Italy, 1997."},{"key":"7008_CR40","doi-asserted-by":"crossref","unstructured":"Roychoudhury, A., Narayan Kumar, K., Ramakrishnan, C.R., and Ramakrishnan, I.V. A parameterized unfold\/fold transformation framework for definite logic programs. In Proceedings of Principles and Practice of Declarative Programming (PPDP), Lecture Notes in Computer Science 1702, pp. 396\u2013413. Springer-Verlag, 1999.","DOI":"10.1007\/10704567_24"},{"key":"7008_CR41","doi-asserted-by":"crossref","first-page":"7","DOI":"10.1007\/BF03038271","volume":"12","author":"D. Sahlin","year":"1993","unstructured":"Sahlin, D. Mixtus: An automatic partial evaluator for full Prolog. New Generation Computing, 12 (1993) 7\u201351.","journal-title":"New Generation Computing"},{"key":"7008_CR42","doi-asserted-by":"crossref","first-page":"57","DOI":"10.1016\/0304-3975(92)90287-P","volume":"105","author":"T. Sato","year":"1992","unstructured":"Sato, T. An equivalence preserving first order unfold\/fold transformation system. Theoretical Computer Science, 105 (1992) 57\u201384.","journal-title":"Theoretical Computer Science"},{"key":"7008_CR43","unstructured":"Sawamura, H. and Takeshima, T. Recursive unsolvability of determinacy, solvable cases of determinacy and their application to Prolog optimization. In Proceedings of the International Symposium on Logic Programming, Boston, IEEE Computer Society Press, 1985, pp. 200\u2013207."},{"key":"7008_CR44","doi-asserted-by":"crossref","unstructured":"Smith, D.A. Partial evaluation of pattern matching in constraint logic programming languages. In Proceedings ACM Symposium on Partial Evaluation and Semantics Based Program Manipulation, PEPM \u201891, New Haven, CT, USA, SIGPLAN Notices, 26(9), ACM Press, 1991, pp. 62\u201371.","DOI":"10.1145\/115865.115873"},{"issue":"1\u20133","key":"7008_CR45","doi-asserted-by":"crossref","first-page":"17","DOI":"10.1016\/S0743-1066(96)00068-4","volume":"29","author":"Z. Somogyi","year":"1996","unstructured":"Somogyi, Z., Henderson, F., and Conway, T. The execution algorithm of Mercury: an efficient purely declarative logic programming language. Journal of Logic Programming, 29(1\u20133) (1996) 17\u201364.","journal-title":"Journal of Logic Programming"},{"key":"7008_CR46","unstructured":"Tamaki, H. and Sato, T. Unfold\/fold transformation of logic programs. In Proceedings of the Second International Conference on Logic Programming, S.-\u00c5. T\u00e4rnlund (Ed.), Uppsala, Sweden, Uppsala University, 1984, pp. 127\u2013138."},{"issue":"3","key":"7008_CR47","doi-asserted-by":"crossref","first-page":"292","DOI":"10.1145\/5956.5957","volume":"8","author":"V.F. Turchin","year":"1986","unstructured":"Turchin, V.F. The concept of a supercompiler. ACM TOPLAS, 8(3) (1986) 292\u2013325.","journal-title":"ACM TOPLAS"},{"key":"7008_CR48","doi-asserted-by":"crossref","first-page":"231","DOI":"10.1016\/0304-3975(90)90147-A","volume":"73","author":"P.L. Wadler","year":"1990","unstructured":"Wadler, P.L. Deforestation: Transforming programs to eliminate trees. Theoretical Computer Science, 73 (1990) 231\u2013248.","journal-title":"Theoretical Computer Science"},{"key":"7008_CR49","unstructured":"Warren, D.H.D. Implementing Prolog \u2014 Compiling predicate logic programs. Research Report 39 & 40, Department of Artificial Intelligence, University of Edinburgh, 1977."}],"container-title":["Higher-Order and Symbolic Computation"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10990-005-7008-3.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/article\/10.1007\/s10990-005-7008-3\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10990-005-7008-3","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2020,4,8]],"date-time":"2020-04-08T06:27:17Z","timestamp":1586327237000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/s10990-005-7008-3"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2005,6]]},"references-count":49,"journal-issue":{"issue":"1-2","published-print":{"date-parts":[[2005,6]]}},"alternative-id":["7008"],"URL":"https:\/\/doi.org\/10.1007\/s10990-005-7008-3","relation":{},"ISSN":["1388-3690","1573-0557"],"issn-type":[{"value":"1388-3690","type":"print"},{"value":"1573-0557","type":"electronic"}],"subject":[],"published":{"date-parts":[[2005,6]]}}}