Persistence of Homology

I recently started reading Topology for Computing by Afra J. Zomorodian, and before it launched into its admirably lucid explanation of topology, group theory and the like, it featured a clever illustration by the author:

Fragments

In a twitter-like display of attentional deficit, I present to you, a list of things I am currently thinking about:

  • Transaction cost economics and Stiglitz’s information economics as crucial modifications of Walrasian markets.
  • The relationship between mathematical notions of invariance, symmetry and periodicity and their relationship (if any) with notions of inductive complexity outlined by Kevin Kelly (Point-set topology and all).
  • How throwaway was my idea about Goodman-esque entrenchment as efficient coding (Huffman, maybe)?
  • How to construct an optimal model for capital expenditures with limited reliability data, and how I may be able to leverage the DODs work on Reliability, Availability and Maintainability (RAM).
  • Whether or not to install Weka and MySQL on my laptop for some data mining practice (and/or R)

Please comment if (and this is a big if) you find any of these admittedly fragmentary ideas/questions intelligible.

Liberal Crap I Never Want to Hear Again

by Kurt Vonnegut

Give us this day our daily bread. Oh sure.
Forgive us our trespasses as we forgive those who trespass against us.
obody better trespass against me. I’ll tell you that.
Blessed are the meek.
Blessed are the merciful. You mean we can’t use torture?
Blessed are the peacemakers. Jane Fonda?
Love your enemies – Arabs?
Ye cannot serve God and Mammon. The hell I can’t! Look at the Reverend Pat Robertson. And He is as happy as a pig in s**t.

Blockheads and Other Brutes

Ned Block defined a system known today as a Blockhead (“Troubles with Functionalism”, Minnesota Studies in the Philosophy of Science) to illustrate a problem that look-up tables pose for the Turing test. Blockhead is a “stupid” machine that stores all possible conversations within some limited duration and, thus, passes the Turing Test. This is, of course physically impossible, as Frank Tipler argues with back of the envelope calculations in The Physics of Immortality:

… the human brain can code as much as 10^15 bits is correct, then since an average book codes about 10^6 bits, it would require more than 100 million books to code the human brain. It would take at least thirty five-story main university libraries to hold this many books. We know from experience that we can access any memory in our brain in about 100 seconds, so a hand simulation of a Turing Test-passing program would require a human being to be able to take off the shelf, glance through, and return to the shelf all of these 100 million books in 100 seconds. If each book weighs about a pound (0.5 kilograms), and on the average the book moves one yard (one meter) in the process of taking it off the shelf and returning it, then in 100 seconds the energy consumed in just moving the books is 3 x 1019 joules; the rate of energy consumption is 3 x 1011 megawatts. Since a human uses energy at a normal rate of 100 watts, the power required is the bodily power of 3 x 1015 human beings, about a million times the current population of the entire earth. A typical large nuclear power plant has a power output of 1,000 megawatts, so a hand simulation of the human program requires a power output equal to that of 300 million large nuclear power plants. As I said, a man can no more hand-simulate a Turing Test-passing program than he can jump to the Moon. In fact, it is far more difficult.

In typical philosophical fashion we suspend the laws of physics and look to conceivability and logical possibility to analyze this scenario. Given that Blockheads are logically possible, what does it say about the Turing Test? Should we not attribute intelligence to Blockhead merely because he uses brute-force methods? It is difficult to know how to respond to this. When we are trying to break a candidate program for the Turing test we ask it questions that, while coherent, have high surprisal. This is used to defeat look-up tables/canned responses, which are the hallmarks of poorly designed AI. However, in this case it is stipulated that the table has all of the possible answers, so such a strategy is useless. So, we have a system that passes the Turing Test with abhorrent methods. Is this really a problem?Let’s consider the larger set of agents I call Brutes (for brute force). Brutes use any or all algorithms that are foreign to ours, or are, in general, unappealing in their processes. This can be in the form of look-up tables, randomized answers, Liebnizian monsters that have monadic processes that never talk to one-another or receive any input, etc. However, Brutes, by fiat pass the Turing test. Now suppose after a neuro-imaging breakthrough we discover some percentage of the population utilizes some abhorrent algorithms in their thinking. Are we to then discount them as being mere Brutes, not truly thinking, feeling people? To do so would be ridiculous. Now suppose that some percentage of the population use nothing but abhorrent algorithms. Can we dismiss them? Again, I do not think so. To maintain otherwise seems to me to be a result of arbitrary algorithmic chauvinism or finding consciousness and intelligence to be an essence that exists apart from function–the same intuition that allows philosophers to take zombie arguments seriously and succumb to the quagmire of privileged access.

In a way, talk of Brutes and Blockheads just misses the point of the Turing test, which is to dissociate the methods, substrate and appearance of the candidate system from the difference that makes a difference: behavior.

I do not see how we can hold an agent’s (or potential agent’s) algorithms against them.

Philosophy in Runtime

In the past few months I have been challenged to defend computational philosophy, particularly philosophical modeling. Philosophical modeling, like scientific modeling, is a formalization process. However, instead of capturing real-world phenomena, philosophical modeling captures thought experiments.

The process of encoding a thought experiment in a formal system is, itself, beneficial in the same way as standard conceptual analysis: hidden assumptions are unburied and seemingly simple ideas yield refined notions. But, in a way, encoding is more honest–the process is not satisfied until you reach a syntactic, algorithmic level of explicitness and, once our intuitions are encoded, further light may be cast during runtime. Will your thought experiment crash, loop endlessly, or churn away at intractable problems? Do your assumptions actually lead to your conclusions? Do they yield more than expected? Less? As any programmer knows, what we program to happen and what actually happens can be quite different.

Philosophers often use formal systems to reinforce their arguments, but they are typically piecemeal and the most significant assumptions (often unintentionally) remain outside the formalism. Computers are well suited to explore certain features of complex systems like thought experiments. With a computer, philosophers may encode their thought experiments and systematically explore their features. This cannot be matched by armchair speculations. We are prone to errors in inference and unconscious biases, and simply do not have the time or energy to consider the complex interactions of philosophical presuppositions.

I should note that this methodology is not completely foreign to philosophers. Here are a few examples:

  • Daniel Dennett uses cellular automata as a toy world to test our thoughts about evolution, model making, and free will (Darwin’s Dangerous Idea, ‘Real Patterns’ in Brainchildren, Freedom Evolves).
  • Grim, Marr and St. Dennis programmed logical and game theoretic systems to illuminate standard philosophical problems in The Philosophical Computer.
  • Lastly, in John Pollock’s essay ‘Procedural Epistemology’ (in The Digital Phoenix) he reports about OSCAR, an epistemological agent, to demonstrate his philosophical theories.

In the last essay we are encouraged to "put our model where our mouth is" when it comes to our epistemological theories. Indeed we should, in epistemology and elsewhere.