Cryptarithmetic problem in artificial intelligence, Computer Engineering

Assignment Help:

Solve the following cryptarithmetic problem using Prolog:

P I N G
P O N G
+ F U N
---------
I G N I P

Each of the 7 different letters stands for a different digit. The aim is to find a substitution of digits for the letters such that the resulting sum is arithmetically correct. Your program should find ALL answers, that do not have leading zeros.

It should be possible to query your solution in this manner:

?- crypt(P,I,N,G,O,F,U).

Your solution should then produce all of the combinations of the digits that satisfy the addition problem above. Don't get
confused between the letter "O" and the number "0" (zero).

HINT - use generate-and-test.

HINT - make sure you never let P=N, or G=F, etc... all of the
distinct letters have to stand for distinct digits.

2. Assume that you have a set of facts about airline flights in the following format:
flight(Number,Source,Dest,Leaves,Arrives).
for example:
flight(22,la,ny,10,15).
means that flight #22 leaves "la" at 10am and arrives
in "ny" at 3pm (assume a 24-hr clock, integers only).

Write the following rules:

-- long(Number,Time)
is true for flights which are in the air longer than Time.
-- route(Source,Dest)
is true for each pair of cities for which there is some sequence of flights starting at Source and ending at Dest.
(it doesn't have to display the route, just be true if there is a route).

You may assume that all flights are completed within the 0-24 time period.... that is, you DON'T have to worry about flights
which arrive after the clock "wraps around" back to zero.
The best solutions are queryable.


Related Discussions:- Cryptarithmetic problem in artificial intelligence

Local minima - sigmoid units, Local minima - sigmoid units: Alternativ...

Local minima - sigmoid units: Alternatively in addition to getting over some local minima where the gradient is constant in one direction or adding momentum will increase the

Classification according to part of instruction and data, Classification ac...

Classification according to part of instruction and data: According to the parts of instruction and data, following parts are identified under this classification: Scal

Explain classification based on grain size, Explain Classification Based On...

Explain Classification Based On Grain Size This categorization is based on distinguishing the parallelism in a program to be executed on a multiprocessor system. The concept is

Important steps of the boot process, Question: Computer forensic examin...

Question: Computer forensic examiners should be concerned with at least two important settings stored in RTC/NVRAM, which is accessed by the BIOS software most often called Set

arithmetic pipelines, Arithmetic Pipelines The method of pipelining ca...

Arithmetic Pipelines The method of pipelining can be applied to a variety of complex and slow arithmetic operations to speed up the processing time. The pipelines used for arit

Write a program which collects in data samples, Write a program which colle...

Write a program which collects in data samples from a port at 1 ms interval. The upper 4 bits collected data same as mastered and stored in an array in successive locations. ; R

Explain telephone hand set and working, Explain Telephone hand set and it's...

Explain Telephone hand set and it's working. A standard telephone set is consisted of a transmitter, electrical network and a receiver for equalization, connected circuitry to

Internal structure of agents - artificial intelligence, Internal Structure ...

Internal Structure of Agents: We have looked at agents in terms of their external influences and behaviors: they put in from the surroundings and perform rational actions to a

Minimum degree of t=1 for a b-tree, Why don't we permit a minimum degree of...

Why don't we permit a minimum degree of t=1 for a B-tree? According to the definition of B-Tree, a B-Tree of order n means that every node in the tree has a maximum of n-1 keys

Creates a grid-matrix of cells, 1. Write the function makegrid. This functi...

1. Write the function makegrid. This function accepts a width and height and creates a grid/matrix of cells. The width gives the number of columns and the height the number of rows

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