Abstract
This paper presents the unique collection of additional features of Qu-Prolog, a variant of the AI programming language Prolog, and illustrates how they can be used for implementing DAI applications. By this we mean applications comprising communicating information servers, expert systems, or agents, with sophisticated reasoning capabilities and internal concurrency. Such an application exploits the key features of Qu-Prolog: support for the programming of sound non-clausal inference systems, multi-threading, and high level inter-thread message communication between Qu-Prolog query threads anywhere on the internet. The inter-thread communication uses email style symbolic names for threads, allowing easy construction of distributed applications using public names for threads. How threads react to received messages is specified by a disjunction of reaction rules which the thread periodically executes. A communications API allows smooth integration of components written in C, which to Qu-Prolog, look like remote query threads.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Robinson, P.J.: Qu-Prolog 4.2 User Guide. Technical Report No. 97-12, Software Verification Research Centre, School of Information Technology, University of Queensland
Robinson, P.J., Hagen, R.: Qu-Prolog 4.2 Reference Manual. Technical Report No. 97-11, Software Verification Research Centre, School of Information Technology, University of Queensland
Becht, H., Bloesch, A., Nickson, R., Utting, M.: Ergo 4.1 Reference Manual, Technical Report No. 96-31, Software Verification Research Centre, Department of Computer Science, University of Queensland
Fidge, C., Kearney, P., Utting, M.: Interactively Verifying a Simple Real-time Scheduler. In: Wolper, P. (ed.) Computer Aided Verification. LNCS, vol. 939, pp. 395–408. Springer, Heidelberg (1995)
Carrington, D., Hayes, I., Nickson, R., Watson, G., Welsh, J.: A Tool for Developing Correct Programs by Refinement. In: Jifeng, H. (ed.) Proc. BCS 7th Refinement Workshop, Bath, UK. Electronic Workshops in Computing, pp. 1–17. Springer, Heidelberg (1996)
Cosmadopoulos, Y., Chu, D.: IC-Prolog II Reference Manual, Imperial College (1993), http://www-lp.doc.ic.ac.uk/LocalInfo/prolog.html
Tarau, P.: BinProlog 5.75 User Guide, Technical Report 97-1, Département d’Informatique, Université de Moncton
Clark, K.L., Robinson, P.J., Hagen, R.: Multi-threading Message Communication in Qu-Prolog Technical Report No. 98-11, Software Verification Research Centre, University of Queensland, Also http://www-lp.doc.ic.ac.uk/~klc/qp.html
Finin, T., Labrou, Y., Mayfield, J.: KQML as an Agent Communication Language. In: Bradshaw, J. (ed.) Software Agents. AAAI/MIT Press (1997)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1998 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Clark, K., Robinson, P.J., Hagen, R. (1998). Programming Internet Based DAI Applications in Qu-Prolog. In: Zhang, C., Lukose, D. (eds) Multi-Agent Systems. Theories, Languages and Applications. DAI 1998. Lecture Notes in Computer Science(), vol 1544. Springer, Berlin, Heidelberg. https://doi.org/10.1007/10693067_10
Download citation
DOI: https://doi.org/10.1007/10693067_10
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-65477-3
Online ISBN: 978-3-540-49241-2
eBook Packages: Springer Book Archive