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 about microsoft access, Microsoft access name has been transformed ...

Microsoft access name has been transformed to Microsoft office access. This software incorporates relational database management system which joins GUI (graphical user interface) w

Explain transmission gate-based d-latch, The Transmission-Gate input is lin...

The Transmission-Gate input is linked to the D_LATCH data input (D), the control input to the Transmission-Gate is linked to the D_LATCH enable input (EN) and the Transmission-Gate

How do we draw in a different color in gimp, At the bottom of the toolbar t...

At the bottom of the toolbar there is a box with two lesser boxes and an arrow. The uppermost box displays the present foreground color; the lowermost box shows the present backgro

What is load-through or early restart, What is load-through or early restar...

What is load-through or early restart? When a read miss happens for a system with cache the needed word may be sent to the processor as soon as it is read from the main memory

Explain the term overlays, Explain the term Overlays. An overlay is an ...

Explain the term Overlays. An overlay is an element of program that has the same load origin as several other part of the program. These are used for reduce the main memory req

What are grouping notations, What are Grouping Notations These notat...

What are Grouping Notations These notations are boxes into which a model could be decomposed. Their elements includes of packages, frameworks and subsystems.

Define memory access time, Define memory access time? The time needed t...

Define memory access time? The time needed to access one word is known as the memory access time. Or It is the time that elapses among the initiation of an operation and the co

Define miss penalty, Define miss penalty? The extra time required to br...

Define miss penalty? The extra time required to bring the desired information into the cache is known as miss penalty.

Evaluate expression by using convention , Evaluate x = A ‾.B + C ( ) usin...

Evaluate x = A ‾.B + C ( ) using the convention A = True and B = False. Ans. Simplify given expression x = A ‾ .B + C ( ) as = A ‾ B + C (A ‾ + D ‾ ) (As = A ‾ +D ‾ usin

Maximum depth to crawl, Goals of this assignment: understanding networking ...

Goals of this assignment: understanding networking and client server systems. In this assignment, you will write a simple http web server that handles conjunctive search queries (l

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