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

Difference between shadow and override in programming, Overriding tell us o...

Overriding tell us only the methods, but shadowing tells us the entire element.

Three different types of convergences, Three dissimilar types of convergenc...

Three dissimilar types of convergences are: 1.  The convergence of e-commerce and wireless technology  2.  The Convergence of E-Commerce and IP Business-Grade Messaging 3

Describe thead, Q. Describe THEAD, TBODY and TFOOT tag? THEAD, TBODY, ...

Q. Describe THEAD, TBODY and TFOOT tag? THEAD, TBODY, TFOOT , , and form groups of rows. specifies that a group of rows are heade

Set up a standard population model structure, Set up a standard population ...

Set up a standard population model structure. The population will begin with 24 people. We do not have actual data to support a birth rate, but we could calculate a reasona

Explain the principles of design, In structure chart whole application is d...

In structure chart whole application is divided into modules (set of program instructions) and modules are designed according to some principles of design. These are: Modularit

Give an example of shortest job next scheduling, Consider the following set...

Consider the following set of jobs with their arrival  times, execution time (in minutes), and deadlines. Job Ids Ar r ival Time E xecuti

What do you mean by proc directive, Q. What do you mean by PROC Directive? ...

Q. What do you mean by PROC Directive? PROC Directive: Code segment comprises executable code for a program that includes one or more procedures defined initially with PROC dir

What is the difference between dpi and ppi, Question : (a) "Resolution ...

Question : (a) "Resolution refers to the sharpness and clarity of an image" (i) Explain what you understand by the above statement. (ii) What is the difference between D

How to set cell properties in dreamweaver, Q. How to Set Cell Properties in...

Q. How to Set Cell Properties in dreamweaver? Cell height determines the height of space within a cell row. Notice the space around Compass logo. You want to remove the extra s

Differentiate between hardware and software, Differentiate between Hardware...

Differentiate between Hardware and Software Another classification is software vs. hardware. Hardware is the collection of physical components, like chips, wires, PCBs, connect

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