Download A High Performance Architecture for Prolog by T.P. Dobry PDF

By T.P. Dobry

Synthetic Intelligence is coming into the mainstream of com puter purposes and as innovations are constructed and built-in right into a good selection of parts they're starting to tax the professional cessing energy of traditional architectures. to satisfy this call for, really expert architectures delivering help for the original beneficial properties of symbolic processing languages are rising. The target of the study offered here's to teach that an archi tecture really expert for Prolog can in achieving a ten-fold increase ment in functionality over traditional, general-purpose architec tures. This e-book offers such an structure for top perfor mance execution of Prolog courses. The structure is predicated at the summary laptop descrip tion brought via David H.D. Warren often called the Warren summary computing device (W AM). The execution version of the W AM is defined and prolonged to supply an entire guide Set structure (lSA) for Prolog often called the PLM. This ISA is then discovered in a microarchitecture and at last in a layout. The paintings defined right here represents one of many first efforts to enforce the W AM version in undefined. The method taken is that of direct implementation of the excessive point WAM guide set in leading to a elSe variety archi tecture.

Show description

Read or Download A High Performance Architecture for Prolog PDF

Similar design & architecture books

Principles of Computer Architecture

Our target in penning this publication is to reveal the internal workings of the trendy electronic computing device at a degree that demystifies what is going on contained in the computing device. the one prerequisite to rules of computing device structure is a operating wisdom of a high-level programming language. The breadth of fabric has been selected to hide subject matters regularly present in a primary path in machine structure or computing device association.

Informatics in Control, Automation and Robotics I (v. 1)

It is a choice of papers provided on the 1st overseas convention on Informatics up to the mark, Automation and Robotics (ICINCO). The papers concentrate on actual international purposes, protecting 3 major topics: clever regulate platforms, Optimization, Robotics and Automation, sign Processing, structures Modeling and keep an eye on.

Raspberry Pi Hardware Projects 1

Find out how to take complete benefit of all of Raspberry Pi’s remarkable good points and functions—and have a blast doing it! Congratulations on changing into a proud proprietor of a Raspberry Pi, the credit-card-sized desktop! If you’re able to dive in and begin checking out what this awesome little gizmo is admittedly able to, this publication is for you.

Additional resources for A High Performance Architecture for Prolog

Example text

To solve this problem one can either give up tail recursion optimization - at least the part that recovers discarded stack space - or delay the invocation of the next procedure until the old environment can be safely overwritten. For the above example this would look as follows: P. +~ X,AI* Y,A2* Z,A3* h h: allocate unify U,A1 This will, of course, work; but we have compromised our execution model. In fact we have sequentiatized the execution at this point and wouldn't even need to 33 transfer control to the next processor.

The structure can remain partially undefined until we return to the parent clause). Of course, when a structure is created as a goal argument it. must be completely defined, it is not permitted to have partially undefined structures as input arguments to procedures. To avoid dangling references within structures a new instruction was introduced. Consider the following Protog clause: g(f(x)) h(t(x)). get_structure f, A1 unify_var X put_structure t,A1 unify_unsafe_val X execute h 50 Assume the structure f(X) is unified with an argument tagged 'NEW_UNBOUND'.

E. the variable X is an unbound variable in the current goal). In order to resolve the current goal the following action takes place: 1. Create an unbound variable, X, in the current environment, place a pointer referencing variable X into the argument register, and call the procedure g. 2. Create a choice point for procedure g and unify the current goal with the unit clause g(a). The unification process involves dereferencing the argument 44 register - yielding the unbound variable X- and binding variable X to 'a'.

Download PDF sample

Rated 4.47 of 5 – based on 19 votes