In general, an N-way left deep nested loops join, with the order t1, t2, t3..., tN-1, tN is described by:
(join (join ... (join (join (scan t1) (scan t2) ) (scan t3) ) ... (scan tN-1) ) (scan tN) )
This notation can be used as shorthand for the nl_join operator:
(nl_join (scan t1) (scan t2) (scan t3) ... (scan tN-1) (scan tN) )