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

Avoiding local minima of multi-layered networks, Avoiding Local Minima of m...

Avoiding Local Minima of multi-layered networks-Artificial intelligence : The error rate of multi-layered networks over a training set could be calculated as the number of mis

Define target _blank, TARGET = "_blank" "_blank" opens new document in...

TARGET = "_blank" "_blank" opens new document in a new window. Run the code given in Figure and check how it works. This value doesn't require the use of any frames. "_blank"

Largest and the second largest number, The largest and the second largest n...

The largest and the second largest number from a set of n distinct numbers can be found in    O (n)

Explain the stack storage allocation model, Explain the stack storage alloc...

Explain the stack storage allocation model. In a stack-based allocation, all objects are allocated in last-in, first-out data structure and a stack. For example: Recursive subr

Explain client server model, Explain Client Server Model. In the client...

Explain Client Server Model. In the client- server model, communication usually takes the form of a request message from the client to the server asking for several works to be

Selection - artificial intelligence, Selection - artificial intelligence: ...

Selection - artificial intelligence: However the first step is to choose the individuals that will have a shot at becoming the parents of the next generation. Hence this is kn

Web technology, Write short notes on Event Model.

Write short notes on Event Model.

How can we convert infix expression to a postfix expression, One can change...

One can change an infix expression to a postfix expression using a By using Stack you can convert infix expression to a postfix expression

What is pattern, What is pattern? A pattern is a proven solution to a g...

What is pattern? A pattern is a proven solution to a general problem. Lots of patterns are used. There are patterns for analysis, architecture, design and execution. Patterns c

By which the excess-3 code of decimal 7 is represented , The excess-3 code ...

The excess-3 code of decimal 7 is represented by ? Ans. An excess 3 code of decimal 7 is equal to the binary code +3.

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