Wednesday, June 28, 2006

Laws of Form: An Opinion

I just reread George Spencer-Brown's Laws of Form. I mentioned this book a year ago but at that time I was talking from memory and from second hand descriptions. I finally got hold of a copy for around $20 and worked my way through it. You can find out about a little of the content here.


But after this rereading I think I'm now ready for the final verdict: is this a crackpot book or not?


Well - in the first few chapters it develops a kind of boolean algebra using 'forms' built out of Spencer-Brown's 'distinction' symbol. It's cute because he's constructing an algebra that has just the one symbol. Everything he has to say here seems more or less fine.


In the following chapters variables are introduced. It gets a little confusing. At first the variables are metavariables in the sense that they are used by Spencer-Brown to represent his forms. But later on he introduces variables within his system at which point we have something equivalent to propositional calculus. The earlier boolean style algebra can now be interpreted as a model for this calculus. But it's all very confusing because he doesn't make it clear when an expression is to interpreted in the algebra or the calculus. Nonetheless, he then proceeds to prove the kinds of theorems you'd expect a logician to prove, viz. soundness and completeness.


He then introduces imaginary values. This is the point at which I became lost in my first reading years ago. Interpreting the 'distinction' as boolean 'not', he's introducing a logical value that is a solution to x = not x. Clearly neither x=true nor x=false do the job so Spencer-Brown claims to introduce imaginary values that are solutions. It seems like a lot of nonsense, but in my second reading of the book it made perfect sense. I don't think that he says enough to completely disambiguate the meaning but I was able to provide an interpretation, in Haskell, that fits his description. Quite simply, the logical values in Spencer-Brown's system need to be interpreted as streams of boolean values, ie. as type [Bool]. The distinction operator (call it cross) can now be defined as

cross :: [Bool] -> [Bool]
cross a = False : map not a

In other words, it's just a not with a delay. But there is a catch, the text talks vaguely about a delay, but not what the initial value of the stream should be. So I actually define cross by

cross :: Bool -> [Bool] -> [Bool]
cross init a = init : map not a

and provide my own values of init as required by the context.


So how do I know this is the correct interpretation? Well the book contains a counter circuit that is supposed to take logical signals as inputs and output a signal that flips value half as often as the input. I was able to take his circuit and transcribe it directly into Haskell (making some choices of init values) and amazingly it performed exactly as described. (This tool goes further than my code, but it still has to deal with the ambiguity issue.)


Here's the code:

(#) = zipWith (||)
cross a = False : map not a
i = cross i
m = True : m
n = False : n
delay n x = replicate n False ++ x
pulse m = replicate m True ++ n

b0 = i
b1 = [False,False,True,True]++b1
b2 = [False,False,False,False,True,True,True,True]++b2

b n = replicate n False ++ map not (b n)

trace a = let b = take 120 a in
let t x = if x then "-" else " " in
putStr $ unlines [b >>= t,b >>= (t.not)]

gate a b = let f = cross (cross (f # a) # b) in f

nor init x y = init : map not (x # y)

count a = let b = nor False a f
c = nor True b d
d = nor False b j
e = nor False a h
g = nor False e j
h = nor False f c
j = nor True d e
f = nor True g h
in f

test = count $ map not $ (b 4)

main = do
trace (map not (b 4))
trace test

a # b means a written next to b. cross a means a inside a distinction or crossing. Instead of building the circuit using cross I use nor, corresponding to the shorthand GSB uses. The definition of count is neat. It's a mutualy recursive definition that essentially allows me to label various points in the circuit and wire them up. It's really amazing that Haskell allows you do do this. Anyway, run main and it'll draw the two 'oscilloscope' traces. (You'll need a w-i-d-e terminal window.) There's a brief discussion of the circuit here.


So, Laws of Form succeeds in defining a boolean style algebra and propositional style calculus. It then shows how to build circuits using logic gates. And that, as far as I can see, is the complete content of the book. It's fun, it works, but it's not very profound and I don't think that even in its day it could have been terribly original. (Who first proved NAND and NOT gates are universal? Sheffer? Peirce?) In my view this makes GSB's mathematics not of the crackpot variety, despite his talk of imaginary logical values.


But...GSB's style is classic crackpot stuff. His writing borrows more from the Tao Te Ching than from conventional mathematics texts. He uses delberately obfuscated language and makes pronouncements that read like the writings of mystics. It's no surprise that when there was a conference on GSB's work it took place at Esalen.


So my final opinion, for all of the two cents that it's worth, is that GSB is a little on the crackpot side, but that his mathematics in Laws of Form is sound, fun, cute, but, despite the trappings, not terribly profound.

13 comments:

david said...

I had the same impression of Spencer-Brown. Still, Louis Kauffman, a mathematician I admire very much, has found something to like, e.g., here.

sigfpe said...

David,

I've read and enjoyed many of Kauffman's papers - the Jones polynomial, braid groups, Chern-Simons 'n' all that were all the rage when I was doing my PhD. But despite my own curiosity about Laws of Form I've found Kauffman's writing on this subject to be less interesting than his other work.

Having said that, I can imagine one avenue of research that might be interesting. Reasoning about logic circuits with feedback loops can be fiddly - you have to work through tracking state changes over time. I wonder if such reasoning could be simplified using 'imaginary values' so that you can prove things about these circuits in a 'non-temporal' way, if you get my meaning.

Ed Piman said...

Years ago I saw a book called Matrix Logic, by August Stern. It promised a revolution in logic, replacing traditional two valued logic by a matrix valued one. I have since occasionaly wondered whether there was anything to it, but have never been able to find a copy of the book at a reasonable price, or a review. I don't suppose you have ever run across it?

Nick said...

I am not sure if the book by August Stern that you are talking about but there is a synopsis here:

http://www.alibris.co.uk/search/search.cfm?chunk=25&mtype=&qwork=9646360&page=1&matches=11&qsort=p&browse=1&full=1

Ernestrome said...

It's a shame that reference to the Tao te ching somehow labels one a crackpot.

sigfpe said...

Ernestrome,

Only just noticed your comment.

Anyway, referencing the Tao Te Ching doesn't make you a crackpot. But writing a book on boolean algebra in the style of the Tao Te Ching is weird in the same way that writing book on arithmetic in the style of E. E. Cummings would be.

Ernestrome said...

Hi,

Glad to see your update to this page.

To me, weird (or better still eccentri) is less pejorative than crackpot, somehow.

mtraven said...

In 1981 or so, I spent a month at the Naropa Institute, a Buddhist school in Boulder Colorado, attending a cognitive science course taught by a number of leading New-agey scientists (including the late Francisco Varela). Louis Kauffman presented some material on Laws of Form. He had the assembled students read passages form LoF aloud in unison, as if it was some sort of liturgical text. Amazingly enough, this worked, and after doing this I actually understoond what Spencer-Brown was getting at better than I had before.

Whatever the interesting content of that book, it is not really mathematical, but mystical-philosophical. Kauffman went on to present S-B's alleged proof of the four-color theorem, which had obvious things wrong with it, so there's the element of crackpottery.

Paul said...

To me, Spencer Brown's contribution is to start mathematics (and, I suppose, also philosophy) from the very beginning, from nothing, and see how to proceed from there, to see how being (inevitably?) emerges from nothingness. He expresses this in a mathematical form; elementary logic emerges as a byproduct of a few simple operations on nothingness and its earliest offspring.

If we look at this work from the usual vantage point of established mathematical convention, it seems mostly pointless.

If Spencer Brown had had a community of people to help develop this work, as most researchers do, he likely would have avoided most of the pitfalls of working in isolation that became food for gossip and derision.

leeo said...

There is only a hint of a mention of the "primary geometry", and the primary arithmetic is known in the trade as a "Dyck Language". The connections can be made via homological algebra-style proofs.
--Lee Odegard

kentpalmer said...

Suggest you look at N. Hellerstein's Delta Logic and Diamond Logic that works out the implications of GSB's Laws of Form for Logic.

Moshe Klein said...

George Spencer Brown is the greatest mathematician who live today. Laws of Form can be compared to the elements of Euclid.

Sacha Nelson said...

GS-B's book is profound, but I am perfectly willing to accept that it is not profound mathematics. Although it is cast as a calculus, for me the primacy of the work lies in showing how the apparent disconnect between the physical and mathematical sciences on the one hand and the biological and social sciences and even the domains of religion, the arts and humanities can be reconciled and united. The latter are intrinsically based in paradox, and self referential logic. On the other hand, we typically maintain the illusion that the former are entirely based on a binary logic: physical statement X is either true or false by physical law. The most elementary pieces of biology are not like this. The two strands of the double helix refer to each other and "cause" each other (replication), while also causing formation of their complement RNAs (transcription). At every level biological systems either oscillate (sleep/wake, hungry/satiated...) or maintain a stable state (temperature, blood glucose etc.) through a homeostatic process that is essentially a negative feedback loop operating in time much like the code you include in the blog "a not with a delay." This is very much like the thermostat in your home heating system, but very much unlike the way we typically think of thermodynamics, mechanics and other fundamental physical principles on which our understanding of the world is based.

Of great interest to me is not whether or not G S-B's contract can formalize the logic of biology and other aspects of human experience, but how uniquely it does so. If there is another alternative framework, equally explanatory, I will relinquish claims that this is profound.

Blog Archive