首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 31 毫秒
1.
This paper describes an approach to the debugging of student Prolog programs in a Prolog Intelligent Tutoring System (PITS) that detects errors in them and proposes the corrections necessary to fix them. It proposes the use of multiple sources of expertise to analyse Prolog programs for tutoring purposes, and the collaboration of these sources for understanding student programs, detection of bugs and suggesting fixes to buggy student programs. It also demonstrates the use of a heuristic bestfirst search of the program decomposition space to parse a Prolog program into a hierarchical structure of predicate definitions, clauses, subgoals, arguments and terms. This article illustrates the merits of an algorithm-based approach supplemented by multiple sources of expertise for program debugging by showing that APROPOS2 is an effective, realistic and useful tool for program debugging. It then highlights the difficulties inherent in debugging Prolog programs and discusses the limitations of our algorithm-based approach.  相似文献   

2.
为了使Prolog推理引擎可以从一定程度的语义上来区分子句,通过概念图的形式对Prolog程序的子句建立本体.子句本体的概念模型通过其谓词参数和头子目标来建立,而头子目标是指出现在规则体首部并且位于任何谓词调用之前的子目标集合.所提出的方法把一个Prolog程序转换成包含其子句本体的Prolog CG程序.实验表明,通过对Prolog子句建立本体,可以尽早地去除与当前目标明显不匹配的子句,从而使得目标求解树的规模减小.在概念图的描述形式下,子句本体使得Prolog程序的语义更清晰可读,在某些情况下能明显加快程序的求解过程.  相似文献   

3.
This paper examines the general issues related to the interaction of novices in a Prolog environment based on tools to support both the operational and the declarative aspects of the language. The tools are based on graphical representations for the Prolog program and for Prolog execution of programs. This research aims to investigate how students come to understand and integrate these different views of Prolog and how the tools affect their understanding of the language.Observations conducted during this study show that the novices had an initial conceptual model of the virtual machine. Such models guided their interpretation of the Prolog program and of the behavior of the machine. Their misunderstandings may be interpreted as having resulted from their current models. These models evolved during their interaction within the environment. The type of feedback created by the tools provided changes in the students perspective related to the knowledge being represented (program) and the interlocutor in the process (virtual machine), which led them to the construction of the conceptual model of the language.  相似文献   

4.
一阶谓词逻辑下的Horn逻辑是人工智能程序语言Prolog的理论基础,利用Prolog在计算机上可实现机械化,从而使自动化求解问题和定理证明具备可行性。本文从Horn逻辑和Prolog的基础理论出发,使用Horn子句、SLD-归结、搜索和回溯等原理讨论了如何在计算机中实现数学函数、定理证明等自动推理的一些应用。  相似文献   

5.
This paper describes an approach to evaluating the usefulness of an Animated Program Tracer (APT) in communicating run-time information to novice Prolo programmers. The method used in the evaluation consists of a set of programs which have been specially designed to elicit how novices think Prolog programs are executed, and thus to reveal how accurate their model of program execution is. Two experiments are reported. The first determines the misconceptions that novices hold about the runtime actions of the Prolog interpreter, and produces six different categories of misconception. The second experiment investigates the ability of APT to communicate run-time information to novice Prolog programmers. A scoring technique was used to interpret subjects' answers, and shows that there was a significant improvement in the scores of the group who saw programs traced by APT when compared with a control group who saw no trace.  相似文献   

6.
A set of basic construct Prolog schemata are presented as the basic constructs of a structured Prolog for recursive list processing. Prolog schema hierarchies are given that group classes of Prolog programs within each of the basic construct Prolog schemata via most-specific schemata which high-light their similarities and differences. A schema-based instructional approach based upon this classification of Prolog programs is provided as a method of introducing recursion to novice Prolog programmers. The incorporation of this approach to teaching recursive Prolog programming in an intelligent tutoring system is presented. Finally, a schema-based Prolog programming environment embedding this tutoring system in addition to a standard Prolog development system is proposed which promotes the acquisition and use of structured programming constructs in Prolog.  相似文献   

7.
逻辑程序设计模型的一个特性是它的非确定性,而Prolog语言所具有的非确定性对于编写非确定性计算模型的解释程序提供了坚实的语言基础,通过几个非确定性机的仿真程序,对于实现其他一些计算模型的仿真具有很好的借鉴意义.  相似文献   

8.
9.
This paper reviews psychological research on programming and applies it to the problems of learning and teaching Prolog. We present a psychological model that explains how a certain class of errors in programs comes about. The model fits quite well with the results of a small sample of students and problems. The problems that underlie these and other errors seem to be (a) the complexity of the Prolog primitives (unification and backtracking) and (b) the misfit between students' naive solutions to a problem and the constructs that are available in Prolog (e.g. iterative solutions do not map easily to recursive programs). This suggests that learning Prolog could be helped by (1) coherent and detailed instruction about how Prolog works, (2) emphasis on finding recursive solutions that do not rely on primitives such as assignment and (3) instruction in programming techniques that allow students to implement procedural solutions.  相似文献   

10.
One of the mechanisms that a student of Prolog must learn to understand and to use is unification. Initially students have only a partial understanding of unification and therefore they are not able to fully understand the execution of a program. This paper shows that a considerable part of the errors that students make can be explained by an impaired version of the correct algorithm. The changes from the correct algorithm to the false algorithms can be justified by a psychologically plausible mechanism.  相似文献   

11.
12.
通用数据库管理系统调试程序,是一个对在数据库管理系统环境下开发的应用程序进行调试的程序,它通过错误处理命令和系统信息捕获函数提供的功能,把捕获的系统信息作为依据,对被调试的应用程序进行修改,实现一次性地完成应用程序的调试工作。  相似文献   

13.

This article describes an undergraduate criminal justice research methods course that uses interactive teaching methods to explore the dynamics of policy analysis and program evaluation. The issue of prison overcrowding is introduced after a solid base of research methods concepts has been mastered. Prison overcrowding is presented in a detailed scenario that includes changes in state and local policy. Student workgroups explore issues involved in prison overcrowding using multiple sources of information, including the World Wide Web.  相似文献   

14.
Logic Programming (LP) follows the declarative programming paradigm, which novice students often find hard to grasp. The limited availability of visual teaching aids for LP can lead to low motivation for learning. In this paper, we present a platform for teaching and learning Prolog in Virtual Worlds, which enables the visual interpretation and verification of program results in a straightforward fashion and requires students to adopt a collaborative problem‐solving approach. The results of the pilot application and student‐centered evaluation of the platform are encouraging regarding group learning performance and user experience. The paper contributes to current practice of teaching and learning LP by proposing a metaphor and a system that can empower the educational process with toy world examples visualized in a shared 3D environment.  相似文献   

15.
Early in 1984, Logica started an ICAI research contract with MoD (Procurement Executive), which was to be undertaken in collaboration with the technical authority at the Royal Signals and Radar Establishment, Malvern. A prototype system, which has become known as TUTOR, was scheduled for delivery to the client later in 1985. Initially, and for evaluation purposes, the system ran on VAX 11/780 hardware under VMS. The target subject for TUTOR was the field of emergency procedures in flight safety regulations as taught to air traffic controllers. Initial development of TUTOR, however, has been aimed at the Highway Code, a domain which we, as well as the client and other observers, are familiar with. Evaluation of TUTOR would be based on both domains. Prolog was chosen as the implementation language because ICAI, as we shall see, makes use of rich data structures that can easily be expressed in Prolog.  相似文献   

16.
一个程序不仅要实现其功能,而且要综合其语言特点,达到最优化。数据库程序优化主要表现在如何使用数据库语言提高其运行速度。主要措施是:①应减少文件数。②采用优化语言提高程序的运行速度。③应减少语句条数,能写在一行的语句,就不要写成多行。④要充分利用数据库的内存变量,宏代换,格式文件,达到提高速度的目的。  相似文献   

17.
This paper discribes a data representation for WordNet 2.1 based on Web Ontology Language (OWL). The main components of WordNet database are transformed as classes in OWL, and the relations between synsets or lexcial words are transformed as OWL properties. Our conversion is based on the data file of WordNet instead of the Prolog database. This work can be used to enrich the work in progress of standard conversion of WordNet to the RDF/OWL representation at W3C.  相似文献   

18.
为了提高容灾系统的通用性,以及提高灾难发生时切换的速度,尽量保持业务的连续性。我们提出了一种新型的容灾方案,就是基于网络数据流的容灾方案。  相似文献   

19.
SQL语句集中的存储过程具有许多的优点,存储过程在.NET数据库与ADO.NET中的SqlData Adapter对象、DataSet对象等结合使用会提高.NET数据库应用程序的总体性能。  相似文献   

20.
通过实例介绍了在PowerBuilder中建立Jaguar CTS组件和建立客户端应用的方法,叙述了Jaguar CTS组件在Jaguar客户端应用与后台数据库相互通信的作用.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号