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

How many address bits are needed to show a 32 K memory, How many address bi...

How many address bits are required to represent a 32 K memory ? Ans. 32K = 25 x 210 = 215, Hence 15 address bits are needed; Only 16 bits can address this.

Multiprogramming or multitasking, Multiprogramming or multitasking? An...

Multiprogramming or multitasking? Ans: The OS manages the concurrent execution of many application programs to make best possible use of computer resources. This pattern of si

Which technique are used to gain on the number pairs, Explain the technique...

Explain the techniques, which are used to gain on the number pairs. In rural areas, subscribers are usually dispersed. This is both unessential and expensive to give a dedicate

QUELING SYTEM , SHOW THAT AVERAGE NUMBER OF UNIT IN A (M/M/1) QUELING SYTEM...

SHOW THAT AVERAGE NUMBER OF UNIT IN A (M/M/1) QUELING SYTEM IS EQUAL TO P/(1-p). NOTE:P=ROW

What are the different pieces of the virtual address, What are the differen...

What are the different pieces of the virtual address in a segmented paging? The various pieces of virtual address in a segmented paging are as demonstrated below:

Explain simple interfacing, Q. Explain Simple Interfacing? The followin...

Q. Explain Simple Interfacing? The following is a sample of the coding, used for procedure interfacing: PUBLIC CUROFF             _TEXT SEGMENT WORD PUBLIC 'CODE'

Explain transformational analogy, Question 1 Why is it important that a...

Question 1 Why is it important that an expert system be able to explain why and how questions related to a problem solving session. 2 Give the architecture of an Expert syst

Define virtual memory, Normal 0 false false false EN-IN...

Normal 0 false false false EN-IN X-NONE X-NONE MicrosoftInternetExplorer4

Dimensionality of interconnection network, Dimensionality of Interconnectio...

Dimensionality of Interconnection Network Dimensionality signify the arrangement of nodes or processing elements in an interconnection network. In linear network or one dimensi

Estimate the circuit switched network, a) Total available bandwidth = 1 Mbp...

a) Total available bandwidth = 1 Mbps = 1000 Kbps Each user requires send data at the rate of = 500 kbps As it is circuit switched network we have to dedicate the bandwidth So the

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