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

System requirements for chip design, The Peripheral interface chip system r...

The Peripheral interface chip system requires the construction of the interface chip circuit, which is controlled by main micro-controller via the user interface. I also need set

First order predicate logic - artificial intelligence, First Order Predicat...

First Order Predicate Logic : This is a more expressive logic because it is mostly builds on propositional logic by allowing us to needs as constants, variables, predicates,

What is software quality assuranc, Software QA includes the whole software ...

Software QA includes the whole software development PROCESS - improving and monitoring the process, making sure that any agreed-upon standards and processes are followed, and ensur

How to format expressions by using vba, Format functions can be used to for...

Format functions can be used to format lot of the expressions such as money, time, date, percentages and numbers. These functions are much easier to use in VBA. User defined date,

What is managed code and managed data, What is managed code and managed dat...

What is managed code and managed data? Managed code is code that is written to target the services of the Common Language Runtime. In order to target these services, the code m

Exdplain instruction buffers, Instruction buffers For taking the comple...

Instruction buffers For taking the complete advantage of pipelining pipelines must be filled continuously. So instruction fetch rate must be matched with pipeline consumption r

What is system testing, What is system testing? The final step in testi...

What is system testing? The final step in testing is system testing, which means checking the whole application. System testing exercises the overall application and make sure

Define bandwidth, Define Bandwidth? When transferring blocks of data, i...

Define Bandwidth? When transferring blocks of data, it is of interest to know how much time is required to transfer an entire block, as blocks can be variable in size it is use

Explain firewall, A firewall is Software or hardware used to separate a...

A firewall is Software or hardware used to separate a private network from a public network.

Functions - first-order logic, Functions - first-order logic: Function...

Functions - first-order logic: Functions can be thought of as exceptional predicates, wherever we think of all but one of the arguments as input and the output as final argume

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