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

Define lazy swapper, Define lazy swapper.  Rather than swapping the who...

Define lazy swapper.  Rather than swapping the whole process into main memory, a lazy swapper is used. A lazy swapper never swaps a page into memory unless that page will be re

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

What is the functionality of remote login, What is the functionality of Rem...

What is the functionality of Remote Login? Remote Login gives similar functionality of telnet, along with the added functionality of not involving a password from trusted cli

Explain about instruction register and flags, Q. Explain about Instruction ...

Q. Explain about Instruction Register and Flags? The Instruction Register: It comprises the operation code (opcode) and addressing mode bits of the instruction. It assists in

What are the server specific middle wares, What are the server specific mid...

What are the server specific middle wares? Server specific middle wares. Their role in e-commerce. Additional features needed by e-commerce server. Middleware is the term of

Illustrate simple ALU organisation, Q. Illustrate Simple ALU Organisation? ...

Q. Illustrate Simple ALU Organisation? An ALU comprises circuits which perform data processing micro-operations. Though how are these ALU circuits used in conjunction of other

Information system for strategic advantage, Q. Describe short note on Infor...

Q. Describe short note on Information system for strategic advantage? Ans. Strategic role of information systems engage using information technology to develop products or serv

Explain the main characteristics of semiconductor memory, Explain the Main ...

Explain the Main characteristics of semiconductor memory Memory, with regard to computers, most commonly signifies to semiconductor devices whose contents can be accessed (whic

Advntages of parallel processing oversequential computation, Advntages of p...

Advntages of parallel processing oversequential computation Parallel computing has the following benefits over sequential computing: i)    Accumulate time ii)   Solves b

Dynamic programming, The fi rst task will involve doing a little background...

The fi rst task will involve doing a little background reading on Dynamic Programming to get up to speed. The second task is to write the code: Search Space Write a function whi

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