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 ordered directive, Q. What is Ordered directive? This directive...

Q. What is Ordered directive? This directive is used in combination with for and parallel for directives to cause an iteration to be executed in order that it would have been h

Observing the existing system first hand, Observing the existing system fir...

Observing the existing system first hand This involves watching personnel using the existing system to find out precisely how it works. There are a number of disadvantages as

What is scsi, What is SCSI? Ans: It is the acronym for small computer s...

What is SCSI? Ans: It is the acronym for small computer system interface. It refers to a standard bus explained ANSI. Devices such as disks are linked to a computer via 50-wire

Difference between a null pointer and a void pointer, A NULL pointer is a p...

A NULL pointer is a pointer of any type whose value is zero. A void pointer is a pointer to an object of an unknown type, and is guaranteed to have sufficient bits to hold a pointe

Setjmp and longjmp, How does throwing and catching exceptions differ from u...

How does throwing and catching exceptions differ from using setjmp and longjmp? Ans) The throw operation calls the destructors for automatic objects instantiated as entry to th

Describe about javascript, World Wide Web (WWW) began as a text-only medium...

World Wide Web (WWW) began as a text-only medium. First version doesn't even have the capability to include graphics on a page. Today's Web sites include sound animation, graphics,

What does vuser_init action contain, Vuser_init action haves procedures to ...

Vuser_init action haves procedures to login to a server.

Define programmable logic array and programmable array logic, Define Progra...

Define Programmable Logic array & Programmable Array Logic? Combinational ckt is implemented with ROM Do not care conditions become an address input. PLA is alike to ROM. PLA d

Explain web service - .net component, Can you give an example of when it wo...

Can you give an example of when it would be appropriate to use a web service as opposed to a non-serviced .NET component? Services which help in stock trading by giving analysi

Special theory of relativty, michelson-morley experiment-motivation and exp...

michelson-morley experiment-motivation and experimental setup

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