# Converting from domain calculus to relational algebra

I have an assigned task at the uni and I have the three relations that follow:

• Customer (Name, City, Account)

• Offer (Product_Description, Supplier, Price)

• Order (Name, Product_Description, Quantity, Supplier)

• F = {Name, City| ∃ Account, Product_Description, Supplier, Price, Quantity (customer(Name, City, Account)

• ∧ offer(Product_Description, Supplier, Price)

• ∧ order(Name, Product_Description, Quantity, Supplier)

• ∧ Price≥ 100 ∧ Supplier= ’Meier’)}

I have been asked to express this domain calculus as a sentence and convert it to relational algebra.

The expression is:

• List the name and cities of the customers who ordered a product that has a value greater than or equal to 100 and product supplier is Meier.

(I didn’t use “customers who ordered greater than or equal to 100” because it’s possible that the customer ordered, for example, 2 products (quantity is 2) which has a value of 50 euros.)

Relational Algebra:

• π name,city (Customer) ⋈π name (Order Price 100 Supplier = 'Meier' (Offer))

I am not sure if my relational expression is accurate. There are many ways to express it but I tried to find the best efficient way for execution plan. (Equivalence of expressions)