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 the numbering plan for isdn address structure, Explain the numberin...

Explain the numbering plan for ISDN address structure. The numbering plan for ISDN is evolved with using the following guidelines: 1. This is based on, and is an improvemen

What is assembly, What is assembly Assemblies are the building blocks o...

What is assembly Assemblies are the building blocks of .NET Framework applications; they variety the fundamental unit of deployment, version control, reuse, activation scoping,

Explain rudimentary file formats, Q. Explain rudimentary file formats? ...

Q. Explain rudimentary file formats? FTP only understands two rudimentary file formats. It classifies every file either as a text file or a binary file. A text file comprise a

What is telnet, Telnet It is a terminal emulation program for TCP/IP ne...

Telnet It is a terminal emulation program for TCP/IP networks like as the Internet. The Telnet program runs on your computer and attaches your PC to a server on the network. On

What is the kernel, What is the kernel?          A more common definiti...

What is the kernel?          A more common definition is that the OS is the one program running at all times on the computer ,usually  known as the kernel, with all else being

Scanf function, How can the maximum field width for a data item be specifie...

How can the maximum field width for a data item be specified within a scanf function? When the program is executed, three integer quantities will be entered from the standard i

Where protocol operates to monitor and control n/w devices, Protocol used t...

Protocol used to monitor and control network devices operates at? Protocol operates at application layer to monitor and control network devices operates.

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

Explain about flip-flops, Explain about Flip-Flops  Flip-Flops are also...

Explain about Flip-Flops  Flip-Flops are also called bistable multivibrator.  A flip-flop is capable of storing 1 bit of binary data.  It has two stable states- 'one' and 'zero

How different are interface and abstract class in .net, How different are i...

How different are interface and abstract class in .Net? Abstract classes cannot be instantiated it can have or can't have abstract method basically known as must inherit as th

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