Homework 1 - Relational Algebra Do problem 2.4.3, all parts [that is, (a) through (i)]. (This is on page 55 of the textbook, though you may find it helpful to refer to the description of the database relations on page 37.) You may find it helpful to use the "linear notation for algebraic expressions" described in section 2.4.13 (starting on page 51). We did not explicitly discuss this in class, but this notation simply lets you give temporary names to parts of a relational algebra expression, thus letting you build a big expression out of smaller pieces, which is usually easier to manage than writing one huge expression. Remember, you are writing relational algebra expressions, not SQL queries. CLARIFICATIONS AND HINTS (JANUARY 28): * For each problem, you need to write a relational algebra query, and show the results of the query using the sample data on pages 56 and 57. However, for part (f), you do not need to show the results because they are very long. :) * Note that the problem specifies there are "dangling tuples" in the data. You are not expected to use outer joins to handle these situations; use natural or theta joins and simply disregard situations where the database doesn't have the information you need to answer the query. For instance, in the sample data, there are three ships listed in the Outcomes relation that fought in the battle of Guadalcanal, but only two of them have corresponding entries in the Ships relation. For problem (e), your query should only return tuples for which you can *find* the displacement and number of guns, which means your query will return only information on two of the ships, not all three. * For parts (g) and (i), note that there are no ships in the sample data that fit the query, so you do not have to show the results for these problems either. Do problem 2.4.5.