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

Self-perception, Mr. X seems to view himself in positive terms (MMPI-2: Ho=...

Mr. X seems to view himself in positive terms (MMPI-2: Ho=38) as a well-functioning person who is capable of dealing with his life and personal challenges (MMPI-2: LSE=41, TRT=39),

Illustrate why does a tea kettle sing, Q. Illustrate why does a tea kettle ...

Q. Illustrate why does a tea kettle sing? Answer:- There is a little attachment with a hole in it which acts as a whistle. It is inserted into the spout of the kettle as w

Illustrate about fat structure, Q. Illustrate about FAT structure? DOS ...

Q. Illustrate about FAT structure? DOS file system maintains a table of pointers known as FAT (File allocation table) that comprises an array of 16-bit values. There is one ent

Explain naming convention in arrays, Explanation Arrays in many programm...

Explanation Arrays in many programming-languages generally show a fixed list of values (e.g. a list of lastnames). Though within SQABasic the size for an array can either be fix

What are the advantages of using structure in c program, What are the advan...

What are the advantages of using structure in C Program Declaring a struct is a two-stage process. The first stage defines a new data type that has the required structure which

Quick sort exhibit its worst-case behaviour, In which input data does the a...

In which input data does the algorithm quick sort exhibit its worst-case Behaviour? The Quick Sort method exhibits its worst-case behavior when the input data is " Already Comp

Control signal, justify whether the control signal passes through same bus ...

justify whether the control signal passes through same bus as data ,address and instruction or not?

Describe characteristics needed for an e-commerce server, Describe the addi...

Describe the additional characteristics needed for an e-commerce server? E-commerce services need dynamic configuration abilities and seasonal and every day service configurat

Probabilistic hough transformation, The probabilistic Hough transform uses ...

The probabilistic Hough transform uses random sampling instead of an accumulator array. In this approach the number of random samples r, is not specified in the OpenCV call, but

Explain various fields in ipv6 base header, Explain various fields in IPV6 ...

Explain various fields in IPV6 base header? Although IPv6 base header is double as large as an IPv4 header, this contains less information. Given diagram demonstrates the forma

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