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

Explain recursion, What is recursion? Recursion: - Recursion is describ...

What is recursion? Recursion: - Recursion is described as a technique of defining a set or a process in terms of itself.

Can matchcode object contain ids with different update types, Can matchcode...

Can matchcode object contain Ids with different update types? Yes.

Illustrate fdma and tdma concepts., Mobile Computing 1. What is Wireles...

Mobile Computing 1. What is Wireless Protocol Requirements and also explain in brief medium access control protocol. 2. Illustrate FDMA and TDMA concepts. 3. What are the

Illustrate about the problem statement, Illustrate about the Problem statem...

Illustrate about the Problem statement Problem statement would not be incomplete, inconsistent and ambiguous. Try to state the requirements precisely and point to point. Do no

Detrmine pure paging, Which is not a key piece of information, stored in si...

Which is not a key piece of information, stored in single page table entry, assuming pure paging and virtual memory Ans. A reference for the disk block which stores the page is

What do you eman by processors hypercube, Q. What do you eman by Processors...

Q. What do you eman by Processors Hypercube? This is precise to in the hypercube. Every processor is portrayed by set of nodes of graph and different arcs are represented with

Automatic stock control system in a supermarket, Automatic Stock Control Sy...

Automatic Stock Control System in a Supermarket -  Bar codes are associated to all goods/items sold by the supermarket as a means of identification -  Every bar code is asso

How do you traverse a btree in backward in-order, Put the node in the right...

Put the node in the right subtree Then, Put the root  Put the node in the left subtree

What do you mean by work flow automation, What do you mean by work flow aut...

What do you mean by work flow automation? Work Flow Automation: Organizations frequently standardize processes across the association and encourage users to accept them. E

In what way the protection fault handler concludes, In what way the protect...

In what way the protection fault handler concludes? After finishing the implementation of the fault handler, it sets the change and protection bits and clears the copy on write

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