<fixed><bigger>Consider variable binding results a sum-of-products
expressions as follows:


A single variable binding: [?x = "apple"]


A single result: AND( [?x = "apple"], [?y = "30 cents"] )


A complete query result: OR( AND [?x = "apple"], [?y = "30 cents"] ),

                             AND [?x = "banana"], [?y = "25 cents"] ))


The tabular form is a shorthand for the sum-of-products expression:


  ?x         ?y

+----------+------------+

| "apple"  } "30 cents" |

+----------+------------+

| "banana" | "25 cents" |

+----------+------------+


A conjunction AND( P1, P2 ... Pn ) is logically true unless any of the
conjoined propositions is false.  Therefore, a conjunction of zero
propositions must be logically true.


A disjunction OR( P1, P2, ... Pn ) is logically false unless any of
the disjoined propositions is true.  Therefore, a disjunction of zero
propositions must be logically false.


If you have zero variables to bind, there are only two possible sum of
products expressions:


The false result: OR()


The true result: OR( AND() )


In tabular form, the false result has zero columns (variables) and
zero rows.  The true result has zero columns and one row.  It doesn't
make any sense to have more than one row, because additional rows
would necessarily be duplicates of the first.</bigger></fixed>
