Representation in prolog - logic programs, Computer Engineering

Assignment Help:

Representation in Prolog - Logic Programs : Artificial intelligence

If we impose some more constraints on first order logic, then we get to a representation language known as logic programs. The major limitation we impose is that all the knowledge we want to encode is represented such as Horn clauses. These are implications which containa head anda body, where the predicates in the body are conjoined and they imply the single predicate in the head. Horn clauses are entirely quantified over all the variables appearing in them. So, an instance Horn clause looks like this:

∀x, y, z ( b1(x,y) ∧ b2(x) ∧ ... ∧ bn(x,y,z) -> h(x,y))

We see that the body contain of predicates bi and the head is h(x,y). We may make this look a lot more like the Prolog programs you are used to writing by making a few syntactic changes: firstly, we turn the implication around and write it as :- thus:

∀x, y, z (h(x,y) :- b1(x,y) ∧ b2(x) ... bn(x,y,z))

next, we change the symbols to commas.

∀x, y, z (h(x,y) :- b1(x,y), b2(x), ..., bn(x,y,z))

Lastly, we remove the universal quantification (it is assumed in Prolog), make the variables capital letters (Prolog requires this), and put a complete stop at the end:

h(X,Y) :- b1(X,Y), b2(X), ..., bn(X,Y,Z).

Note that we utilize the notation h/2 to indicate that predicate h has arity 2. Also, we call a set of Horn clauses  aslike a logic program. Representative knowledge with logic programs is less expressive than full first order logic, butstill it can express lots of types of information. In specific, disjunction can be gained by having different Horn clauses with the same head. So, this sentence in first -order logic:

∀x (a(x) ∨ b(x) -> c(x) ∧ d(x))

itcan be written as the following logic program:

c(x) :- a(x).

c(x) :- b(x).

d(x) :- a(x).

d(x) :- b(x).

We also permit ourselves to represent facts as atomic ground predicates. For instance, we can state that:

parent(georgedubya,georgesenior). colour(red). and so on.


Related Discussions:- Representation in prolog - logic programs

What is the difference among a canvas and a scroll panel, Canvas is a compo...

Canvas is a component. ScrollPanel is a container. Canvas is a rectangular area where the application can draw or trap input events. ScrollPane executes horizontal and vertical scr

Risks by customer perspective in electronic payment system, What are the ri...

What are the risks by customer's perspective in Electronic Payment Systems? Risks within Electronic Payment Systems: Through the customer's perspective are as follows:

What is booting, What is booting? When the power is turned on, the OS h...

What is booting? When the power is turned on, the OS has to be loaded into the main memory which is taken place as part of a process known as booting. To initiate booting a tin

Explain bottom-up parsing techniques, Explain Bottom-up Parsing Techniques ...

Explain Bottom-up Parsing Techniques A parser can begin with the input and attempt to rewrite it to the start symbol. Instinctively, the parser attempts to locate the most bas

Types of classification-classification of parallel computers, Types Of Clas...

Types Of Classification The following classification of parallel computers have been recognized: 1)      Categorization based on the data streams and instruction 2)

What is library, What is library? A library is a collection of classes ...

What is library? A library is a collection of classes that are useful in most of the contexts. Classes must have accurate and thorough explanations to help users.

Call the masm procedure, Assignment:  write a C program and a MASM procedur...

Assignment:  write a C program and a MASM procedure.  The C program calls the MASM procedure to perform letter case conversion. Text sections covered:  12.1 to 12.3.1 Write a

What is hashing, What is Hashing? Hashing: Hashing gives the direct acc...

What is Hashing? Hashing: Hashing gives the direct access of record from the file no matter where the record is in the file. This is possible with the help of a hashing functio

Serial port communication, The 68HC11F1 has two types of serial ports namel...

The 68HC11F1 has two types of serial ports namely asynchronous (SCI) and synchronous (SPI). The most common form of communication device used in control is the SCI as this provides

Cache simulater, Requirements You are required to program (in a high l...

Requirements You are required to program (in a high level language such as C, C++, Java) and implement a cache simulator which will have the following inputs and outputs:-

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd