Search mechanisms in prolog, Computer Engineering

Assignment Help:

Search mechanisms in Prolog:

Here we can needs this simple Prolog program to describe how Prolog searches as:president(X) :- first_name(X, georgedubya), second_name(X, bush).

prime_minister(X) :- first_name(X, maggie), second_name(X, thatcher).

prime_minister(X) :- first_name(X, tony), second_name(X, blair).

first_name(tonyblair, tony).
first_name(georgebush, georgedubya).

second_name(tonyblair, blair).
second_name(georgebush, bush).

If there we loaded this in a Prolog implementation into as Sicstus, or queried the database as:

?- prime_minister(P).

In fact then Sicstus would search in the following manner as: it would run through it is database when pending for it came across a Horn clause or fact for that the head was prime_minister and the arity of the predicate was 1. Than there It would first look at the president clause, so after that reject this to see the name of the head doesn't match with the head in the query. moreover, next it would find the clause as:

prime_minister(X) :- first_name(X, maggie), second_name(X, thatcher).

There fits the bill. After than it would look at the predicates in the body of the clause or see if it could satisfy them. In fact in this case, we see that it would try to find a match for first_name(X, maggie). But, it would fail, it means that there no such information can be found in the database. Because it means that the entire clause fails Sicstus would backtrack, thai is., so it would go back just to looking for a clause with the same head as the query. But it would next find this clause such as:

prime_minister(X) :- first_name(X, tony), second_name(X, blair).

So there then it would look at the body again, than try to find a match for first_name(X, tony). According to that it would look through the datatabase and find X=tonyblair a good assignment hence it means the fact first_name(tonyblair, tony) is found towards the end of the database. as well having assigned X=tonyblair, so it would then look for a match to: second_name(tonyblair, blair), and would succeed. Likewise, the answer tonyblair would make the query succeed, for this would be reported back to us.


Related Discussions:- Search mechanisms in prolog

What are the characteristics of digital ics, What are the characteristics o...

What are the characteristics of digital ICs used to compute their performance? Ans: Characteristics of Digital Integrated Circuits 1. Speed of operation:   The Speed o

Which processing is not a part of synthesis phase, Which processing is no...

Which processing is not a part of Synthesis phase? Ans. Perform LC processing is not a part of Synthesis phase.

Determine condition how the output changed of JK flipflop, The output of a ...

The output of a JK flipflop with asynchronous preset and clear inputs is '1'. The output can be changed to '0' with which conditions ? Ans. Through applying J = 1, K = 1 and u

Write the truth table of NOR gate, Write the truth table of NOR gate. Ans...

Write the truth table of NOR gate. Ans. The truth table for NOR gtae is shown below:

What are the benefits of electronic data interchange process, What are the ...

What are the benefits of electronic data interchange process? Advantages of Electronic Data Interchange: a. EDI replaces paper transactions along with electronic transac

Show the programmes for parallel systems, Q. Show the Programmes for Parall...

Q. Show the Programmes for Parallel Systems? Adding elements of an array using two processor      int sum, A[ n] ;  //shared variables

What do you mean by data distribution, Q. What do you mean by Data Distribu...

Q. What do you mean by Data Distribution? Data distribution directives tell compiler how program data is to be distributed among memory areas connected with a group of processo

Illustrate the purchase consummation activity, Illustrate the Purchase Cons...

Illustrate the Purchase Consummation activity? Purchase Consummation: This model lists three activities in the purchase consummation phase: • Receipt of product. • Pl

Asp.net mvc over asp.net webforms, What is the greatest benefit of using as...

What is the greatest benefit of using asp.net mvc over asp.net webforms? Ans) It is complex to unit test UI with webforms, where views in mvc can be very simply unit tested.

Fundamental functional units of a computer, Fundamental functional units of...

Fundamental functional units of a computer: QUE. What are the fundamental functional units of a computer? Ans: A computer consists of 5 functionally independent major parts

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