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 rby and cmyk colour printing, Q. Explain RBY and CMYK colour Printi...

Q. Explain RBY and CMYK colour Printing? For good printing printers don't use RBY in place of that they use CMYK (Cyan instead of Blue, Magenta instead of Red, Yellow and a sep

What is a message in mqseries, A message is a string of bytes that has mean...

A message is a string of bytes that has meaning to the applications that use it Message = Header(s) + Application Data A message having of a header and the attached applicat

C program , minimum number of shelves

minimum number of shelves

Pc cross assembler, 1.0 By working throughthe first time guide this will ga...

1.0 By working throughthe first time guide this will gain familiarity with the on board monitor and the PC cross assembler  After connecting the system to the terminal program,

Explain vector processing issues in pipelining, Vector Processing   A...

Vector Processing   A vector is an ordered set of similar type of scalar data items. The scalar tem may be a logical value, an integer or a floating point number. Vector proce

Speed up - metrics for performance evaluation, Q. Speed Up - metrics for pe...

Q. Speed Up - metrics for performance evaluation? Speed up is ratio of time needed to execute a given program employing a specific algorithm on a machine with single processor

What is the relationship between clipping and repainting, When a window is ...

When a window is repainted by the AWT painting thread, it sets the clipping regions to the area of the window that needs repainting.

Explain bit-o-ring technique, Explain bit-O-Ring technique. The micro p...

Explain bit-O-Ring technique. The micro program represents that branches are not always made to a one branch address. This is a direct consequence of combining easy micro routi

What is direct addressing mode, Computer Organization and Architecture ...

Computer Organization and Architecture 1. Draw the block diagram of von Neumann Architecture and describe about its parts in brief. 2. Draw block diagram of Intel 8085 CPU o

Define the terms- action semantics and argouml, Define the terms- Action Se...

Define the terms- Action Semantics and  ArgoUML Action Semantics : Action semantics is a group of firms that have responded to the OMG's RFP to define the action semantics fo

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