Abstract
We investigate a simple transformation of logic programs capable of inverting the order of computation. Several examples are given which illustrate how this transformation may serve such purposes as left-recursion elimination, loop-elimination, simulation of forward reasoning, isotopic modification of programs and simulation of abductive reasoning.
Similar content being viewed by others
References
Brough, D. R. and Hogger, C. J., “The Termination Problem in Logic Programming,”Logic Programming Group Research Reports, Department of Computing, Imperial College, London, 1988.
Brough, D. R. and Hogger, C. J., “Compiling Associativity into Logic Programs,”Journal of Logic Programming, 4, 4, pp. 345–359, Dec., 1987.
Clark, K. L. and Kowalski, R. A., “Predicate Logic as Programming Language,”Working Paper, Theory of Computing Research Group, Dept. of Computing and Control, Imperial College, London, 1977.
Colmerauer, A., Kanoui, H., Pasero, R. and Roussel, P., “Un Systeme de Communication Homme-Machine en Francais,”Research Report, Artificial Intelligence Group, University of Aix-Marseille, Luminy, France, 1973.
Foster, J, M., “A Syntax Improving Program,”Computer Journal, 11, pp. 31–34, May, 1968.
Greibach, S. A., “Formal Parsing Systems,” Comm. ACM,7, 8, pp. 499–504, Aug., 1965.
Griffiths, M., “LL(1) Grammars and Analysers,” inCompiler Construction: an Advanced Course (Goos, G. and Hartmanis, J., eds.),Lectur Notes in Computer Science, 21, Springer-Verlag, Berlin, pp. 57–84, 1974.
Hogger, C. J., “A Logic Program for the Linear Programming Simplex Algorithm,”Research Reports, Logic Programming Group, Dept. of Computing and Control, Imperial College, London, 1976.
Hogger, C. J., “Derivation of Logic Programs,”Ph. D. Thesis, University of London, 1979.
Kowalski, R. A., “Predicate Logic as a Programming Language,”Proc. of IFIP-74, North-Holland Publ., Amsterdam, pp. 569–574, 1974.
Kowalski, R. A., “Logic Programming,” (Invited Paper),Proc. of IFIP-83, Elsevier Science Publishers B. V. (North-Holland), Amsterdam, pp. 133–145, 1983.
Seki, H. and Furukawa, K., “Notes on Transformation Techniques for Generate and Test Logic Programs,”Proc. of IEEE International Symposium on Logic Programming, IEEE Computer Society Press (Washington DC), pp. 215–223, 1987.
Tamaki, H. and Sato, T., “Unfold/Fold Transformation of Logic Programs,”Proc. of 2nd Int. Conf. on Logic Programming, Uppsala University Press, Uppsala, Sweden, pp. 127–138, 1984.
Woodward, P. M., “A Note on Foster’s Syntax Improving Devices,”RRE Memorandum, NO. 2352, Royal Radar Establishment, Ministry of Technology, Malvern, England, Dec., 1966.
Author information
Authors and Affiliations
About this article
Cite this article
Brough, D.R., Hogger, C.J. Grammar-related transformations of logic programs. New Gener Comput 9, 115–134 (1991). https://doi.org/10.1007/BF03037639
Received:
Revised:
Issue Date:
DOI: https://doi.org/10.1007/BF03037639