FYI: A suggestion for an additional simplification

I recently began an attempt to implement the mechanics of "12.2.1
Converting Graph Patterns" as a reduce function (a functional
programming idiom [1]) and came across an additional simplification that
might be useful to list in Step 5: Simplification

OPTIONAL graph patterns juxtaposed against an empty pattern can be
reduced to just the graph pattern:

Replace LeftJoin({},A,expr) with Filter(expr,A)

----------

This seems to follow from:

LeftJoin(Omega1, Omega2, expr) = Filter(expr, Join(Omega1, Omega2))
set-union Diff(Omega1, Omega2, expr)

Omega1 -> [] - an empty multiset of solution  mappings (an empty graph
pattern will not have any solutions)

Filter(expr, Join([], Omega2)) set-union Diff([], Omega2, expr)

Join({}, A) -> A

Filter(expr, Omega2) set-union Diff([], Omega2, expr)

Diff([],.. any solution mapping multiset ..,expr) => [] (by definition)

Filter(expr, Omega2) set-union []

Filter(expr, Omega2) 

[1] http://en.wikipedia.org/wiki/Fold_%28higher-order_function%29 

-- 
Chimezie Ogbuji
Lead Systems Analyst
Thoracic and Cardiovascular Surgery
Cleveland Clinic Foundation
9500 Euclid Avenue/ W26
Cleveland, Ohio 44195
Office: (216)444-8593
ogbujic@ccf.org


===================================




Cleveland Clinic is ranked one of the top 3 hospitals in
America by U.S.News & World Report. Visit us online at
http://www.clevelandclinic.org for a complete listing of
our services, staff and locations.


Confidentiality Note:  This message is intended for use
only by the individual or entity to which it is addressed
and may contain information that is privileged,
confidential, and exempt from disclosure under applicable
law.  If the reader of this message is not the intended
recipient or the employee or agent responsible for
delivering the message to the intended recipient, you are
hereby notified that any dissemination, distribution or
copying of this communication is strictly prohibited.  If
you have received this communication in error,  please
contact the sender immediately and destroy the material in
its entirety, whether electronic or hard copy.  Thank you.

Received on Tuesday, 8 May 2007 12:55:35 UTC