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 advantages of threads over processes, What are the advantages...

What are the advantages of threads over processes? Some of the useful threads offer over processes includes: i)   It does not take more time to create and finished a new thr

user to enter the weight, A red and blue car were involved in a head-on co...

A red and blue car were involved in a head-on collision. The red car was at a standstill and the blue car was possibly  speeding. Eye witness video recorded suddenly following the

Implementation and testing, In this stage of the project you are required t...

In this stage of the project you are required to create a Design document, the Design document must contain the following:  Structure chart Pseudo-code Data Dictionary

Extension of propositional logic, Extension of propositional logic: Aw...

Extension of propositional logic: Away from proving  theorems directly, and the other main use for rewrite rules is to prepare a statement just for use before we search for th

Show organisation of clos network, Q. Show Organisation of Clos network? ...

Q. Show Organisation of Clos network? Clos network: This network was designed by Clos (1953).  It's a non-blocking network and offers full connectivity similar to crossbar netw

is risc always fast, It is fast because it has got separate program and da...

It is fast because it has got separate program and data memory(highly pipelined architecture)

Variable-partition multiprogramming, Choose the descriptions below with the...

Choose the descriptions below with the most appropriate memory management scheme (A through D).  Solutions may be used once, more than once, or not at all. A.     Fixed-partitio

Online teaching jobs, Dear, I''m an engineering post graduate in computer s...

Dear, I''m an engineering post graduate in computer science. I would like to work as online tutor. please suggest ideas. Thank You.

Salient features of direct addressing mode, Q. Salient features of direct a...

Q. Salient features of direct addressing mode? A number of salient points about this technique are: This scheme offers a limited address space since if address field has

Generation of erp products, 1. How does this new generation of ERP products...

1. How does this new generation of ERP products differ from traditional solutions? 2. What are the major external forces driving competition in the ERP industry? Cloud comput

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