Legislation as logic programs

  • Robert A. Kowalski
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 636)


The linguistic style in which legislation is normally written has many similarities with the language of logic programming. However, examples of legal language taken from the British Nationality Act 1981, the University of Michigan lease termination clause, and the London Underground emergency notice suggest several ways in which the basic model of logic programming could usefully be extended. These extensions include the introduction of types, relative clauses, both ordinary negation and negation by failure, integrity constraints, metalevcl reasoning and procedural notation.

In addition to the resemblance between legislation and programs, the law has other important similarities with computing. It needs for example to validate legislation against social and political specifications, and it needs to organise, develop, maintain and reuse large and complex bodies of legal codes and procedures. Such parallels between computing and law suggest that it might be possible to transfer useful results and techniques in both directions between these different fields. One possibility explored in this paper is that the linguistic structures of an appropriately extended logic programming language might indicate ways in which the language of legislation itself could be made simpler and clearer.


Logic Program Logic Programming Relative Clause Integrity Constraint Deductive Database 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    Allen, L. E., and Saxon, C.S. [1984] “Computer Aided Normalizing and Unpacking: Some Interesting Machinc-Proccssable Transformation of Legal Rules”, Computing Power and Legal Reasoning (C. Walter, ed.) West Publishing Company, pp. 495–572.Google Scholar
  2. [2]
    Bench-Capon, T.J.M. [1987]: “Support for policy makers: formulating legislation with the aid of logical models”, Proc. of the First International Conference on AI and Law, ACM Press, pp. 181–189.Google Scholar
  3. [3]
    Bench-Capon, T. [1989] “Representing Counterfactual Conditionals”. Proceedings of Artificial Intelligence and the Simulation of Behaviour (A. Cohn, Ed.) Pitman Publishing Co.Google Scholar
  4. [4]
    Bowen, K. A. and Kowalski, R. A. [1982]: “Amalgamating Language and Metalanguage in Logic Programming”, in Logic Programming (Clark, K.L. and Tärnlund, S.-Å., editors), Academic Press, pp. 153–173.Google Scholar
  5. [5]
    Bry, F., Decker, H., and Manthey, R. [1988] “A uniform approach to constraint satisfaction and constraint satisfiability in deductive databases”, Proceedings of Extending Database Technology, pp. 488–505.Google Scholar
  6. [6]
    Clark, K. L. [1978]: “negation by failure”, in “Logic and databases”, Gallaire, H. and Minker, J. [eds], Plenum Press, pp. 293–322.Google Scholar
  7. [7]
    Gallagher, J. [1986] “Transforming Logic Programs by Specializing Interpreters”, Proc. of 7th European Conference on Artificial Intelligence, pp. 109–122.Google Scholar
  8. [8]
    Gelfond, M. and Lifschitz, V. [1990]: “Logic programs with classical negation”, Proceedings of the Seventh International Conference on Logic Programming, MIT Press, pp. 579–597.Google Scholar
  9. [9]
    Gordon, T. F. [1987] “Oblog-2 a Hybrid Knowledge Representation System for Defeasible Reasoning” Proc. First International Conference on Artificial Intelligence and Law. ACM Press, pp. 231–239.Google Scholar
  10. [10]
    H.M.S.O. [1981]: “British Nationality Act 1981”, Her Majesty's Stationery Office, London.Google Scholar
  11. [11]
    Kowalski, R. A. and Sergot, M. J. [1986]: “A logic-based calculus of events”, New Generation Computing, Vol. 4, No. 1, pp. 67–95.Google Scholar
  12. [12]
    Kowalski, R. A. [1989]: “The treatment of negation in logic programs for representing legislation”, Proceedings of the Second International Conference on Artificial Intelligence and Law, pp. 11–15.Google Scholar
  13. [13]
    Kowalski [1990] “English as a Logic Programming Language”, New Generation Computing, Volume 8, pp. 91–93.Google Scholar
  14. [14]
    Kowalski, R. A. and Sadri, F. [1990], “Logic programs with exceptions”, Proceedings of the Seventh International Conference on Logic Programming, MIT Press, pp. 598–613.Google Scholar
  15. [15]
    Kowalski, R. A., Sergot, M. J. [1990]: “The use of logical models in legal problem solving”, Ratio Juris, Vol. 3, No. 2, pp. 201–218.Google Scholar
  16. [16]
    Lloyd, J. W. and Topor, R. W. [1984]: “Making Prolog more expressive”, Journal of Logic Programming, Vol. 3, No. 1, pp. 225–240.Google Scholar
  17. [17]
    Lloyd, J. W. and Topor, R. W. [1985] “A Basis for Deductive Database Systems”, J. Logic Programming, Volume 2, Number 2, pp. 93–109.Google Scholar
  18. [18]
    Mitchell, T. M., Keller, R. M. and Kedar-Cabelli [1986] “Explanation-based Generalization: A Unifying View” Machine Learning, Volume 1, pp. 47–80.Google Scholar
  19. [19]
    Newell, A. and Simon, H. A. [1972] “Human problem solving”, Prentice-Hall.Google Scholar
  20. [20]
    Nitta, K., Nagao, J., and Mizutori, T., [1988] “A Knowledge Representation and Inference System for Procedural Law”, New Generation Computing, pp. 319–359.Google Scholar
  21. [21]
    Reiter, R. [1990]: “On asking what a database knows”, Proc. Symposium on Computational Logic, Springer-Verlag.Google Scholar
  22. [22]
    Sadri, F. and Kowalski, R. A. [1987]: “A theorem proving approach to database integrity”, In Foundations of deductive databases and logic programming (J. Minker, editor), Morgan Kaufmann, pp. 313–362.Google Scholar
  23. [23]
    Schank, R. C. [1983] “The current state of AI: One man's opinion”, AI Magazine, Volume 4, No. 1, pp. 1–8.Google Scholar
  24. [24]
    Sergot, M. J., Sadri, F., Kowalski, R. A., Kriwaczek, F., Hammond, P. and Cory, H. T. [1986]: “ The British Nationality Act as a logic program”, CACM, Vol. 29, No. 5, pp. 370–386.Google Scholar
  25. [25]
    Sripada, S. M. [1991] “Temporal Reasoning in Deductive Databases”. Department of Computing, Imperial College, London.Google Scholar
  26. [26]
    Takeuchi, A. and Furukawa, K. [1986] “Partial evaluation of PROLOG programs and its application to metaprogramming”, Proc. of IFIP 86, North-Holland, pp. 415–420.Google Scholar
  27. [27]
    Waterman, D. A. and Hayes-Roth [1978] “Pattern-directed Inference Systems”, Academic Press, New York.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1992

Authors and Affiliations

  • Robert A. Kowalski
    • 1
  1. 1.Department of ComputingImperial College of Science, Technology and MedicineLondonUK

Personalised recommendations