Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Use Prolog syntax and semantics. (Use siwpl-SWI-Prolog) Define the double_double ( X, Y) relation that holds when Y is a list structure that contains the

Use Prolog syntax and semantics. (Use siwpl-SWI-Prolog)

Define the double_double ( X, Y) relation that holds when Y is a list structure that contains the same basic structure, and elements, that appeared in X, but each entry in Y is a list containing two copies of a list containing two copies of the entry in X. For example: . ?- double_double( [a, b, [c,d]], Y). Y = [[[a,a], [a,a]],[[b, b],[b, b]],[[[c,d], [c,d]],[[c,d],[c,d]]]] ; false . ?- double_double( [1, X], [Y, [[2,2], Q]]). X = 2, Y = [[1, 1], [1, 1]], Q = [2, 2] ; false . ?- double_double( [1, X], [Y, [2, 2]]). false.

In general, your program should work even even if there are variables in either argument -- as suggested by the above examples. Be sure to specify if that is not true.

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image_2

Step: 3

blur-text-image_3

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Beginning C# 2005 Databases

Authors: Karli Watson

1st Edition

0470044063, 978-0470044063

More Books

Students also viewed these Databases questions