217 research outputs found

    Comparative Study of the Inference Mechanisms in PROLOG and SPIDER

    Get PDF
    Control Network Programming (CNP) is a graphical nonprocedural programming style whose built-in inference engine (interpreter) is based on search in a recursive network. This paper is the third in a series of reports that share a common objective – comparison between the CNP language SPIDER and the logic programming language PROLOG. The focus here is on the comparative investigation of their interpreters, presented in a generic formal frame – reduction of goals. As a result of juxtaposing their pseudo-codes the advantages of SPIDER are outlined

    Handling Emergent Conflicts in Adaptable Rule-based Sensor Networks

    Get PDF
    This thesis presents a study into conflicts that emerge amongst sensor device rules when such devices are formed into networks. It describes conflicting patterns of communication and computation that can disturb the monitoring of subjects, and lower the quality of service. Such conflicts can negatively affect the lifetimes of the devices and cause incorrect information to be reported. A novel approach to detecting and resolving conflicts is presented. The approach is considered within the context of home-based psychiatric Ambulatory Assessment (AA). Rules are considered that can be used to control the behaviours of devices in a sensor network for AA. The research provides examples of rule conflict that can be found for AA sensor networks. Sensor networks and AA are active areas of research and many questions remain open regarding collaboration amongst collections of heterogeneous devices to collect data, process information in-network, and report personalised findings. This thesis presents an investigation into reliable rule-based service provisioning for a variety of stakeholders, including care providers, patients and technicians. It contributes a collection of rules for controlling AA sensor networks. This research makes a number of contributions to the field of rule-based sensor networks, including areas of knowledge representation, heterogeneous device support, system personalisation, and in particular, system reliability. This thesis provides evidence to support the conclusion that conflicts can be detected and resolved in adaptable rule-based sensor networks

    Automatic generation of descriptions for Prolog programs

    Get PDF
    It is often hard for students and newcomers used to imperative languages to learn a declarative language such as Prolog. One of their main difficulties is understanding the procedural component of Prolog. Despite being a declarative language, Prolog allows for the creation of procedures whose structure is very different from the more common imperative languages. To tackle this issue, we try to facilitate code comprehension of procedural Prolog through the generation of formal and natural descriptions. First, we represent the workflow of Prolog encoded procedures through formal descriptions similar to imperative languages. To do this, we identify programming patterns that represent the basic blocks of certain classes of Prolog programs. Then we view more complex Prolog programs as coherent compositions of instances of the basic patterns. By using formal templates, we formally describe these individual patterns into an intermediate formal language. Afterwards, we generate natural language descriptions by using templates to describe the formal constructs. Using this two-step approach, we obtain two descriptions (one formal and one in natural language) that are both explanatory of the original program.Normalmente é difícil para alunos e iniciantes que estão habituados a linguagens imperativas, aprender uma linguagem declarativa como o Prolog. Uma das suas principais dificuldades é entender a componente procedimental do Prolog. Apesar de ser uma linguagem declarativa, o Prolog permite a criação de procedimentos cuja estrutura é bastante diferente da usada nas linguagens imperativas. Para abordar este problema tentámos facilitar a compreensão de código do Prolog procedimental através da geração de descrições formais e em linguagem natural. Primeiro, representamos a lógica dos procedimentos em Prolog através de descrições formais similares a linguagens imperativas. Para isto, identificamos os padrões que representam os blocos básicos de certas classes de programas. Depois, consideramos os programas mais complexos como composições destes padrões básicos. Através da utilização de templates formais, descrevemos formalmente estes padrões individuais numa linguagem formal intermédia. Seguidamente, geramos descrições em linguagem natural utilizando templates para descrever os construtos formais. Ao usar esta abordagem de dois passos obtemos duas descrições (uma formal e uma em linguagem natural) que são ambas explanatórias do programa original

    Nontermination debugging of Prolog programs.

    Get PDF
    by Lam, Hin-ki Isaac.Thesis (M.Phil.)--Chinese University of Hong Kong, 1992.Includes bibliographical references (leaves 219-220).Chapter Chapter 1 --- Introduction --- p.1Chapter 1.1 --- The Problem --- p.1Chapter 1.2 --- Related Works --- p.3Chapter 1.3 --- Contribution of the Present Study --- p.8Chapter 1.4 --- Outline of the Thesis --- p.8Chapter Chapter 2 --- Nontermination and Recursive Definition --- p.11Chapter 2.1 --- Prolog Execution Model --- p.11Chapter 2.2 --- Nontermination --- p.15Chapter 2.3 --- Exit Condition --- p.21Chapter 2.4 --- Exit-Reaching Process --- p.29Chapter 2.5 --- Parameter Based Detection --- p.35Chapter Chapter 3 --- Parameter Analysis --- p.38Chapter 3.1 --- Parameter Links --- p.39Chapter 3.1.1 --- Parameter Links and Parameter Modifying Process --- p.39Chapter 3.1.2 --- Parameter Links of Multi-Parameters --- p.43Chapter 3.1.3 --- Parameter Links in Indirect Recursive Definition --- p.44Chapter 3.1.4 --- Parameter Links with Special Parameters --- p.46Chapter 3.1.5 --- Parameter Links of the Same Name Parameters --- p.47Chapter 3.1.6 --- The Significance of Parameter Links --- p.49Chapter 3.2 --- Cyclic Parameter Links --- p.51Chapter 3.3 --- Parameter Link Detection --- p.58Chapter 3.3.1 --- Graph Technique --- p.58Chapter 3.3.1.1 --- Preliminaries --- p.58Chapter 3.3.1.2 --- on Parameter Links --- p.59Chapter 3.3.2 --- Algorithms --- p.62Chapter Chapter 4 --- Data Analysis --- p.70Chapter 4.1 --- Data Links --- p.72Chapter 4.1.1 --- The Direct Recursive Definition Case --- p.76Chapter 4.1.1.1 --- Subgoal Procedures with Facts Alone --- p.76Chapter 4.1.1.2 --- Procedures with Rules --- p.79Chapter 4.1.2 --- The Indirect Recursive Definition Case --- p.84Chapter 4.2 --- on the Difference between Pure and General Prolog --- p.86Chapter 4.3 --- Data Link Significance --- p.89Chapter 4.4 --- Connected Data-link Lists --- p.92Chapter 4.4.1 --- Data Links and Connected Data-link Lists --- p.92Chapter 4.4.1.1 --- Connected Data-link Lists and Data Transfer Sequence --- p.95Chapter 4.4.1.2 --- Connected Data-link Lists and Backtracking --- p.97Chapter 4.4.1.3 --- Connected Data-link Lists and the Recursion Result --- p.99Chapter 4.4.2 --- Cyclic and Non-Cyclic Connected Data-link Lists --- p.100Chapter 4.4.2.1 --- Non-Cyclic Connected Data-link Lists and Exit Conditions --- p.102Chapter 4.4.2.2 --- Cyclic Connected Data-link Lists and Nontermination --- p.104Chapter 4.4.3 --- Multi-Connected Data-link Lists --- p.107Chapter 4.4.3.1 --- in One Cyclic Parameter Link --- p.107Chapter 4.4.3.2 --- in Multi-Cyclic Parameter Links --- p.115Chapter 4.4.3.3 --- The Case of Multiple Recursive Subgoals in the Same Rule --- p.120Chapter 4.5. --- Special Parameters and Data Links --- p.125Chapter 4.5.1. --- Data Links with Special Parameters Only --- p.126Chapter 4.5.2 --- Data Links with Both Special Parameters and Subgoals --- p.136Chapter 4.6 --- Data Links and Infinite Data Transfer Sequence Detection --- p.142Chapter CHAPTER 5 --- Special Cases --- p.150Chapter 5.1 --- Interdependent Cyclic Parameter Links --- p.150Chapter 5.1.1 --- Interdependent Cyclic Parameter Links through Common Parameters --- p.151Chapter 5.1.1.1 --- Interdependency between Cyclic and Non-cyclic Parameter Links and Interdependency between Cyclic Parameter Link and Subgoals --- p.158Chapter 5.1.1.2 --- Interdependency between Cyclic Parameter Links --- p.165Chapter 5.1.1.2.1 --- Lengths of Cyclic Connected- data Links in Different Ratios --- p.171Chapter 5.1.1.2.2 --- Cyclic Parameter Links with Lengths in Different Ratios --- p.182Chapter 5.1.2 --- Interdependent Cyclic Parameter Links through Common Subgoals --- p.196Chapter 5.1.3 --- Interdependent Cyclic Parameter Links with Special Parameters --- p.202Chapter 5.2 --- A Special Case of Cyclic Parameter Links established through Special Parameters --- p.208Chapter CHAPTER 6 --- Discussion and Conclusion --- p.213Chapter 6.1 --- The Results and Implications --- p.213Chapter 6.2 --- Limitations and Future Research --- p.215Chapter 6.3 --- Conclusion --- p.217Reference --- p.21

    The Computer Modelling of Mathematical Reasoning

    Get PDF
    xv, 403 p.; 23 cm
    • …
    corecore