This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
A Survey of Languages for Specifying Dynamics: A Knowledge Engineering Perspective
May/June 2001 (vol. 13 no. 3)
pp. 462-496

Abstract—During the last years, a number of formal specification languages for knowledge-based systems has been developed. Characteristics for knowledge-based systems are a complex knowledge base and an inference engine which uses this knowledge to solve a given problem. Specification languages for knowledge-based systems have to cover both aspects. They have to provide the means to specify a complex and large amount of knowledge and they have to provide the means to specify the dynamic reasoning behavior of a knowledge-based system. This paper focuses on the second aspect. For this purpose, we survey existing approaches for specifying dynamic behavior in related areas of research. In fact, we have taken approaches for the specification of information systems (Language for Conceptual Modeling and Troll), approaches for the specification of database updates and logic programming (Transaction Logic and Dynamic Database Logic) and the generic specification framework of Abstract State Machines.

[1] F.M.T. Brazier, B.M. Dunin-Keplicz, N.R. Jennings, and J. Treur, “DESIRE: Modelling Multi-Agent Systems in a Compositional Formal Framework,” Int'l J. Cooperative Information Systems, special issue on Formal Methods in Cooperative Information Systems: Multiagent Systems, M. Huhns and M. Singh, eds., vol. 6, no. 1, pp. 67–94, 1997.
[2] F.M.T. Brazier, J. Treur, N.J.E. Wijngaards, and M. Willems, “Temporal Semantics of Compositional Task Models and Problem Solving Methods,” Data and Knowledge Eng., vol. 29, no. 1, pp. 17–42, 1999.
[3] D. Fensel, The Knowledge Acquisition and Representation Language KARL, Kluwer Academic, Boston, 1995.
[4] D. Fensel, J. Angele, and R. Studer, “The Knowledge Acquisition and Representation Language KARL,” IEEE Trans. Knowledge and Data Eng., vol. 10, no. 4, pp. 527–550, July/Aug. 1998.
[5] L. in 't Veld, W. Jonker, and J.W. Spee, “The Specification of Complex Reasoning Tasks in${\rm{K}}_{{\rm{BS}}} {\rm{SF}}$,” Formal Specification of Complex Reasoning Systems, J. Treur and T. Wetter, eds., pp. 233–255, 1993.
[6] J.W. Spee and L. in 't Veld, “The Semantics of${\rm{K}}_{{\rm{BS}}}{\rm{SF}}$: A Language for KBS Design,” Knowledge Acquisition, vol. 6, 1994.
[7] F. van Harmelen and J. Balder, "ML2: A Formal Language for KADS Conceptual Models," Knowledge Acquisition, vol. 4, no. 1, 1992.
[8] D. Fensel and R. Groenboom, “MLPM: Defing a Semantics and Axiomatization for Specifying the Reasoning Process of Knowledge-Based Systems,” Proc. 12th European Conf. Artificial Intelligence (ECAI-96), pp. 1123–1127, Aug. 1996.
[9] C. Pierret-Golbreich and X. Talon, “TFL: An Algebraic Language to Specify the Dynamic Behaviour of Knowledge-Based Systems,” The Knowledge Eng. Rev., vol. 11, no. 3, pp. 253–280, 1996.
[10] Formal Specification of Complex Reasoning Systems, J. Treur and T. Wetter, eds., Ellis Horwood, New York, 1993.
[11] D. Fensel and F. Harmelen, “A Comparison of Languages Which Operationalize and Formalize KADS Models of Expertise,” The Knowledge Eng. Rev., vol. 9, no. 2, pp. 105–146, 1994.
[12] D. Fensel, “Formal Specification Languages in Knowledge and Software Engineering,” The Knowledge Eng. Rev., vol. 10, no. 4, pp. 361–404, 1995.
[13] D. Fensel and R. Straatman, “The Essence of Problem Solving Methods: Making Assumptions for Efficiency Reasons,” Advances in Knowledge Acquisition, N. Shadbolt, K. O'Hara, and G. Schreiber, eds., pp. 17–32, 1996.
[14] B. Nebel, “Artificial Intelligence: A Computational Perspective,” Principals of Knowledge Representation, G. Brewka, ed., studies in Logic, Language, and Information, pp. 237–266, 1996.
[15] D. Harel, “Dynamic Logic,” Handbook of Philosophical Logic, Vol. II: Extensions of Classical Logic, D. Gabbay and F. Guenthner, eds., pp. 497–604, 1984.
[16] D. Kozen, "Logics of Programs," J. van Leeuwen, ed., Handbook of Theoretical Computer Science, Elsevier Science, B.V., Amsterdam, 1990.
[17] J.A. Bergstra and J.W. Klop, “Algebra of Communicating Processes with Abstraction,” Theoretical Computer Science, vol. 37, pp. 77–121, 1985.
[18] R.J. Wieringa, “LCM and MCM: Specification of a Control System using Dynamic Logic and Process Algebra,” Formal Development of Reactive Systems: Case Study Production Cell, C. Lewerentz and T. Lindner, eds., pp. 333–355, 1995.
[19] R. Jungclaus, G. Saake, T. Hartmann, and C. Sernadas, “Troll—A Language for Object-Oriented Specification of Information Systems,” ACM Trans. Information Systems, vol. 14, pp. 175–211, Apr. 1996.
[20] A.J. Bonner and M. Kifer, "Transaction Logic Programming," Proc. Int'l Conf. Logic Programming, June 1993.
[21] P. Spruit, R. Wieringa, and J.-J. Meyer, “Axiomatization, Declarative Semantics and Operational Semantics of Passive and Active Updates in Logic Databases,” J. Logic and Computation, vol. 5, no. 1, pp. 27–50, 1995.
[22] P.A. Spruit, R.J. Wieringa, and J.-J.C. Meyer, "Dynamic Database Logic: The First-Order Case," Lipeck, W. Udo and Thalheim, Bernhard, eds., Modeling Database Dynamics, pp. 103-120. Springer Verlag, 1992.
[23] Y. Gurevich, “Evolving Algebras 1993: Lipari Guide,” Specification and Validation Methods, E. Börger, ed., Oxford Univ. Press, 1995.
[24] M. Ehrig and B. Mahr, Fundamentals of Algebraic Specification 1. Berlin: Springer-Verlag, 1985.
[25] Text books in this area include H. Ehrig and B. Mahr, Fundamentals of Algebraic Specification 1: Equations and Initial Semantics, European Assoc. for Theoretical Computer Science (EATCS) Monographs on Theoretical Computer Science, Springer-Verlag, 1985, and H. Ehrig and B. Mahr,Fundamentals of Algebraic Specification 2: Module Specifications and Constraints,EATCS Monographs on Theoretical Computer Science, Springer-Verlag, 1990.
[26] M. Wirsing, “Algebraic Specification,” Handbook of Theoretical Computer Science, vol. B, pp. 675-788, Amsterdam: North Holland, 1990.
[27] Algebraic System Specification and Development. M. Bidoit, H.J. Kreowski, P. Lescane, F. Orejas, and D. Sannella, eds., 1991.
[28] J.M. Spivey, The Z Notation: A Reference Manual, Prentice-Hall, Englewood Cliffs, N.J., 1992.
[29] J.B. Wordsworth, Software Development with Z. Addison-Wesley, 1992.
[30] C. B. Jones,Systematic Software Development Using VDM. Englewood Cliffs, NJ: Prentice-Hall, 1990, 2nd ed.
[31] D. Andrews and D. Ince, Practical Formal Methods with VDM. McGraw-Hill, 1991.
[32] E. Brinksma and T. Bolognesi, "Introduction to the ISO Specification Language LOTOS," Computer Networks and ISDN Systems, vol. 14, pp. 25-59, 1987.
[33] S. Marcus and J. McDermott, "SALT: A Knowledge Acquisition Tool for Propose-and-Revise Systems," Artificial Intelligence, vol. 39, no. 1, pp. 1-38, 1989.
[34] A.T. Schreiber and B. Birmingham, “Special Issue on the VT Sisyphus Task” Int'l J. Human-Computer Studies (IJHCS), 1996.
[35] R. Milner, Communication and Concurrency. Prentice Hall, 1989.
[36] F. Kroger, "Temporal Logic of Programs," EATCS Monographs on Theoretical Computer Science, W. Brauer, G. Rozenberg, and A. Salomaa, eds. Springer-Verlag, 1987.
[37] B.J. Wielinga, A.T. Schreiber, and J.A. Breuker, “KADS: A Modeling Approach to Knowledge Engineering,” Knowledge Acquisition, vol. 4, pp. 1-162, 1992.
[38] G. Schreiber et al., "CommonKADS: A Comprehensive Methodology for KBS Development," IEEE Expert, Vol. 9, No. 6, Dec. 1994, pp. 28-37.
[39] Second Generation Expert Systems, J.-M. David, J.-P. Krivine, and R .Simmons, eds. Berlin: Springer-Verlag, 1993.
[40] “Special Issue on the Sisyphus 91/92 Models,” Int'l J. Man-Machine Studies, M. Linster, ed., vol. 40, no. 2, 1994.
[41] D. Fensel and R. Straatman, “The Essence of Problem-Solving Methods: Making Assumptions to Gain Efficiency,” The Int'l J. Human Computer Studies (IJHCS), vol. 48, no. 2, pp. 181-215, 1998.
[42] F.M.T. Brazier, P. Langen, J. Treur, N.J.E. Wijngaards, and M. Willems, “Modelling an Elevator Design Task in DESIRE: The VT Example,” Int'l J. Human-Computer Studies, special issue on Sisyphus-VT, A.Th. Schreiber and W.P. Birmingham, eds., vol. 44, nos. 3-4, pp. 469–520, 1996.
[43] K. Poeck, D. Fensel, D. Landes, and J. Angele, “Combining KARL and CRLM for Designing Vertical Transportation Systems,” Int'l J. Human-Computer Studies, special issue on Sisyphus-VT, A.Th. Schreiber and W.P. Birmingham, eds., vol. 44, nos. 3-4, pp. 435–467, 1996.
[44] A.J. Bonner and M. Kifer, "An Overview of Transaction Logic Programming," Theoretical Computer Science, vol. 133, no. 2, pp. 205-265, Oct. 1994.
[45] A.J. Bonner and M. Kifer, “A Logic for Programming Database Transactions,” Logics for Databases and Information Systems, J. Chomicki and G. Saake, eds., pp. 117–166, 1998.
[46] A. Bonner and M. Kifer, “Transaction Logic Programming (or, A Logic of Procedural and Declarative Knowledge),” Technical Report CSRI-323, Computer Systems Research Inst., Univ. of Toronto, Nov. 1995.
[47] R. Groenboom and G.R.R. de Lavalette, “Reasoning about Dynamic Features in Specification Languages,” Semantics of Specification Languages (SoSL): Proc. Int'l Workshop Semantics of Specification Languages, D.J. Andrews, J.F. Groote, and C.A. Middelburg, eds., 1994.
[48] P. Spruit, R.J. Wieringa, and J.-J.Ch. Meyer, “Regular Database Update Logics,” Theoretical Computer Science, in press.
[49] M. Aben, Formal Methods in Knowledge Engineering. PhD thesis, Univ. of Amsterdam, Faculty of Psychology, ISBN 90-5470-028-9, Feb. 1995.
[50] F. van Harmelen, “Applying Rule-Base Anomalies to KADS Inference Structures,” Decision Support Systems, vol. 21, no. 4, pp. 271–280, 1998.
[51] E. Börger and J.K. Huggins, “Abstract State Machines 1988-1998: Commented ASM Bibliography,” EATCS Bull., Formal Specification Column, H. Ehrig, ed., pp. 105–127, Feb. 1998.
[52] “JUCS Special ASM Issue,” J. Universal Computer Science, E. Börger, ed., vol. 3, nos. 4-5, 1997.
[53] J. Meseguer, "Conditional Rewriting Logic as a Unified Model of Concurrency," Theoretical Computer Science, vol. 96, pp. 73-155 1992.
[54] M. Clavel, S. Eker, P. Lincoln, and J. Meseguer, “Principles of Maude,” Electronic Notes in Theoretical Computer Science, vol. 4, 1997.
[55] G. Denker, “From Rewrite Theories to Temporal Logic Theories,” Electronic Notes in Theoretical Computer Science, vol. 15, 1998.
[56] G. Schellhorn and W. Ahrendt, “Reasoning About Abstract State Machines: The WAM Case Study,” J. Universal Computer Science, vol. 3, no. 4, pp. 377–413, 1997.
[57] W. Zimmerman and T. Gaul, “On the Construction of Correct Compiler Back-Ends: An ASM Approach,” J. Universal Computer Science, vol. 3, no. 5, pp. 504–567, 1997.
[58] K. Winter, “Model Checking for Abstract State Machines,” J. Universal Computer Science, vol. 3, no. 5, pp. 689–701, 1997.
[59] G. Castillo, I. Durdanovic, and U. Glässer, “An Evolving Algebra Abstract Machine,” Computer Science Logic, selected papers from CSL '95, H.K. Büning, ed., pp. 191–214, 1996.
[60] B. Beckert and J. Posegga, “leanEA: A Lean Evolving Algebra Compiler,” Computer Science Logic, selected papers from CSL '95, H. Kleine Büning, ed., pp. 64–85, 1996.
[61] A.M. Kappel, “Executable Specifications Based on Dynamic Algebras,” Proc. Fourth Int'l Conf. Logic Programming and Automated Reasoning (LPAR-93), pp. 229–240, 1993.
[62] E. Börger, “Why Use Evolving Algebras for Hardware and Software Engineering?,” Theory and Practice of Informatics: Proc. Software Seminar (SOFSEM '95), M. Bartosek, J. Staudek, and J. Wiedermann, eds., pp. 236–271, 1995.
[63] A. Diller, Z: An Introduction to Formal Methods, second edition. New York: John Wiley&Sons, 1994.
[64] A. Sernadas, C. Sernadas, and J. Costa, “Object Specification Logic,” J. Logic and Computation, vol. 5, pp. 603–630, Oct. 1995.
[65] S. Conrad, M. Gogolla, and R. Herzig, “Trolllight: A Core Language for Specifying Objects,” Informatik-Berichte 92-02, Technische Universität Braunschweig, 1992.
[66] R. Jungclaus, Modeling of Dynamic Object Systems—A Logic Based Approach, Vieweg, Verlag, Braunschweig, 1993.
[67] R. Milner, A Calculus of Communicating Systems. Berlin: Springer Verlag, vol. 92, 1980.
[68] S. Conrad, J. Ramos, G. Saake, and C. Sernadas, “Evolving Logical Specification in Information Systems,” Logics for Databases and Information Systems, J. Chomicki and G. Saake, eds., pp. 199–228, 1998.
[69] R.J. Wieringa, “A Formalization of Objects using Equational Dynamic Logic,” Proc. Second Int'l Conf. Deductive and Object-Oriented Databases (DOOD '91), C. Delobel, M. Kifer, and Y. Masunaga, eds., pp. 431–452, 1991.
[70] G. Denker, J. Ramos, C. Caleiro, and A. Sernadas, “A Linear Temporal Logic Approach to Objects with Transactions,” Proc. Algebraic Methodology and Software Technology: Sixth Int'l Conf., AMAST '97, M. Johnson, ed., pp. 170–184, 1997.
[71] D. Gabbay, “What is a Logical System?” Studies in Logic and Computation, vol. 4, 1994.

Index Terms:
Specification languages, knowledge-based systems, dynamics, inference control, update logics.
Citation:
Pascal van Eck, Joeri Engelfriet, Dieter Fensel, Frank van Harmelen, Yde Venema, Mark Willems, "A Survey of Languages for Specifying Dynamics: A Knowledge Engineering Perspective," IEEE Transactions on Knowledge and Data Engineering, vol. 13, no. 3, pp. 462-496, May-June 2001, doi:10.1109/69.929903
Usage of this product signifies your acceptance of the Terms of Use.