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 what is internal modems, Q. Explain what is Internal Modems ? I...

Q. Explain what is Internal Modems ? Internal Modems: Internal Modems plug in expansion slots in your PC. Internal Modems are efficient andcheap. Internal Modems are bus-specif

Canonical genetic algorithm - mating, Canonical genetic algorithm - Mating:...

Canonical genetic algorithm - Mating: In such a scenario this continues until the number of offspring that is produced is the required number. Further this required number is

Determine the operations from functions, Operations from Functions As ...

Operations from Functions As we know, function is actually operations on object. These   functions could be simple and summarized on object model. Organise functions into oper

Digital forensic investigation, (a) Name five important activities invol...

(a) Name five important activities involved in a digital forensic investigation. (b) Briefly describe the three types of data that a forensic examiner has to work with. Whic

A digital signature, A digital signature is   encrypting information

A digital signature is   encrypting information

What is multiplexer, Q. What is multiplexer? Explain 4 X 1 Multiplexer.   ...

Q. What is multiplexer? Explain 4 X 1 Multiplexer.    Q. Explain the working of a Binary Half-Adder. Construct a Full-Adder from Half- Adder. Also draw the circuit diagram of full

Define the method of implementation, Define the method of Implementation ...

Define the method of Implementation Once "final" system has been designed it is then essential to put together the software and hardware and introduce the new system. There ar

Explain the matlab working environment, This is the set of tools and facili...

This is the set of tools and facilities that you work with as the MATLAB user or programmer. It contains facilities for managing the variables in your workspace and importing and e

Describe the functions of an operating system, Question: (a) Software ...

Question: (a) Software may be categorized into System software and Application software. Differentiate between these two categories, using examples to support your answer.

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