How Connected is the Graph of Spinoza’s Ethics?


                                              R. F. Tredwell


In an earlier paper, I stated without proof that Ethics is connected except for its unused assumptions.  I noted that the proof was “tedious,” and since the purpose of that paper was to demonstrate some interpretive tools, the proof was not really apposite.  Nevertheless, it may not be entirely obvious how to prove connectedness, so I append this outline of a proof.


Here in Maine, we are, perhaps, the world’s most opinionated experts on questions of connectedness.  Due to an unfortunate vinyl record called “Bert and I”, it is widely believed, here, that you cannot drive from Kennebunk to Millinocket, despite the fact that J. L. Condon actually did so in 1948.  However, while you can drive from Minturn to Atlantic and you can drive from Pretty Marsh to Millinocket, you cannot drive from Minturn to Millinocket—or to Pretty Marsh or Kennebunk, for all of that.  And you can’t drive to Dark Harbor, Frenchboro or Islesford from any of the above—including Kennebunk!  Maine’s highway system does not form a connected graph.


A graph is connected provided that there is a path between any pair of nodes; in the case of a directed graph, a “path” for this purpose can be with- or against the arrows.  We already know that Ethics is not connected, since it contains a number of statements that are assumed but not used to prove anything else.  The unused assumptions have an unusual property.  If we think of an “assumption” as a statement with in-degree = 0 and a “leaf” as a statement with out-degree = 0, then an unused assumption is both an assumption and a leaf.


The Ethics might fail of connection even without its unused assumptions.  It might contain two or more regions, each of which was internally connected, but which were not connected to one another.  Let’s call such a region an “island”.  Because Ethics is finite, directed and acyclic, any island must contain at least one assumption and at least one leaf.  (Notice that an unused assumption is a sort of degenerate island:  it contains an assumption and a leaf—it just happens that the assumption and the leaf are the same statement!)  Moreover, in a finite acyclic directed graph, any statement (other than an assumption or a leaf) must have at least one assumption among its ancestors and at least one leaf among its descendents.


Investigating connectedness, then, amounts to counting the number of islands:  if the graph is connected, it has only one island.  We could investigate this by somehow examining each of the 158,000 statement pairs, but there is a more tractable solution.  Relying on our earlier observation, that every proved statement is on a path from an assumption to a leaf, we see that if all Ethics’ leaves and assumptions are on the same island, then the rest of the statements are on that island as well.  There are 65 assumptions (leaving out the unused ones) and 103 leaves.  So basically, we have to examine only 6,695 pairs.


Here is how we proceed.


Step 1:  from the Ethics’ transitive closure, we select just the edges having an assumption as parent and a leaf as child.  We add these to a new graph’s adjacency table (called the ‘UTC’—for “Undirected Transitive Closure”).  The new graph’s table of nodes—its domain—is just Ethics’ assumptions plus its leaves.


Step 2:  we add the reciprocal of each of these rows to the UTC.  That is, if <x,y> is in the UTC, we add <y,x>.  The reason is that in the underlying directed graph, there is a path from x to y, but no path from y to x.  In our undirected graph, a path runs both ways.


Step 3:  we complete the transitive closure of the UTC in the usual way.  That is, whenever <x,y> and <y,z> are in the UTC, we add <x,z> if it is not there already.  We iterate this step until the next iteration adds no new rows. (It is fairly easy to show that whenever <x,z> is added, <z,x> is added as well—so that the symmetry of the UTC is preserved as the transitive closure is completed.)


Now if we examine the UTC, we can see that it is an equivalence relation:  it is symmetric because of Step 2; it is transitive because of Step 3, and it is reflexive because it is symmetric and transitive.  An equivalence relation generates a partition of its domain:  that is, the UTC divides its domain (the set of Ethics’ assumptions plus leaves) into mutually exclusive and jointly exhaustive sub-sets of equivalent nodes and each such sub-set contains the nodes on the same island.  Put shortly, the UTC is the “sameness of island” relation among Ethics’ assumptions and leaves.


Step 4:  Two nodes are “equivalent” if they share a row in UTC.  Color all the UTC’s nodes (Ethics’ assumptions plus leaves) blue.  Then, choose any blue node and color it, and any node equivalent to it, red.  If any blue nodes remain, choose one and color it (and any node equivalent to it) green.  Proceed in this way, using a different color each time, until no blue nodes remain.  Each color will belong to a different island.


In fact, when these steps are performed on the UTC, all nodes are colored red.  So Ethics (minus the unused assumptions) is connected…all its leaves and assumptions are on the same island, and therefore all its statements are on the same island.