Tom Morris

15 July 2009

A pungent mix of programming, philosophy, pedanticism, procrastination, perplexity, peripheral political polemic, and platters of preposterousness.

Taking a type-token razor to Stannard’s God

I’ve been listening to the lectures in Open University’s Philosophy and the Human Situation podcast course series. They are pretty good. I particularly enjoyed Janet Radcliffe Richards’ “Taking Stock” talk and Ronald Hepburn’s talk “Wonder”.

While on the Tube, I listened to Russell Stannard’s talk “The New Argument from Design”. It presents the standard anthropic principle/fine tuning argument, but concludes at the end that you make the leap using faith alone from accepting the conclusions of a valid fine tuning argument to the God of faith. This is something I consider a major problem with many to-God-from-contingency arguments. However metaphysically raw and physical one goes just means one has a longer bridge to get to the eventual intended conclusion: fallin’ down on one’s knees and praisin’ the Lord before givin’ one’s soul to Baby Jesus!

Let us hear Stannard’s argument in his own words. From about 15m30s onwards: The alternative to many universes or the many different domains of the one universe is to accept that there is just the one universe - the laws of physics are the same everywhere in it - and that it’s a put up job. It was deliberately designed for life. And the designed is God. I, and others, have argued that this is the simplest hypothesis. Just one designer God rather than an infinite number of different kinds of universe or different domains of this universe. One of the criticisms of this is although this suggestion is simplest in the sense that it calls for one unknown rather than an infinite number of unknowns, it is not the simplest suggestion in the sense that a God is an entirely different kind of concept to the physical ones. We know that there are physical concepts so it is a relatively simple extension of that idea to postulate a wider variety of the sorts of things that are known to exist. God, on the other hand, is an entirely new and unverified concept - so it is claimed.

Stannard’s response to this? I can see the strength of that argument, at least how I would imagine it appearing to an atheist - someone for whom God is an unknown. That objection completely fails for someone like myself who already believes in God on other grounds. You see, I don’t see how anyone could ever be argued into belief in God. Stannard then goes on to say that it is religious experience that is required to go from “creative power” to the God of faith.

What is wrong with this argument? I don’t think it gives the objection enough of a fair chance. The objection in this case is a purely Ockhamist one. What makes a multiverse (with ‘evolving universes’) theory attractive - beyond any empirical support that physicists may put forward - is that it reduces the number of types by dramatically increasing the number of instantiated tokens for the universe type. In ontology, we are concerned with what fundamental types exist. If we accept Ockham’s razor and a type-token distinction, then introducing a new type ought to be the costly thing, not instantiating new tokens for explanations.

At least, that’s my opinion and it’s held not particularly strongly. We must see a type-token distinction, but if we are to value either the types or the tokens to such a degree as to make them the swing vote on any particular metaphysical construction, we must have a few reasons why either reducing tokens is important at the risk of increasing types, or vice versa. And if one is even more serious about such divine accountancy, we must have some reasonable procedure by which we assign weight to each token and type posited. I think also that such an opinion of the comparative value of types and tokens can’t be solved with reference to either the types or the tokens themselves. That way lies great potential for special pleading (we see that with Stannard: it’s only because it’s God that one can make the intuitive appeal - if it was just “X”, one couldn’t say “Ah, but only for anti-X-ists is it mysterious - for pro-X-ists, X isn’t strange or unknown at all.”) and even question-begging. How does one resolve such a problem? A first guess might be to say that if we can’t use the nature of the types and tokens posited, we could use some kind of holistic analysis of the system as a whole.

That is how we do so in an area of practical reasoning - computer programming. When one uses high-level computer programming languages, one constructs tokens of various types. How one orders those types internally in the memory and processor of the computer is a difficult question. In the vast majority of high-level programming languages today, there is a distinction between a primitive type and a compound type. In Java, for instance, numbers and bytes are primitives rather than objects. We have a ‘bare’ number 6, but if you wish to represent something more complex like a database query, one has a Query object. Java, then, has at least eight fundamental things: byte, short, int, long, float, double, boolean and char. On top of that, we may add classes, objects, methods and some other stuff. On the other hand, Ruby doesn’t have these primitive data types: numbers (short, int, long, float), booleans and bytes/chars are instantiated as full-blown objects. Now, we ask, what benefits and what costs are there associated with the increase in simplicity? The answers are obvious for programmers: as these things are classes and instantiated objects, one can build upon them with ease: subclasses can be constructed, and it inherits methods from Object. For the programmer, whatever one can do with another class, they can do with these classes. There are costs though: primarily performance related. If you construct a boolean as a primitive, it takes up less memory and requires less processing than a boolean object that instantiates one of the two boolean classes. This is not necessarily a problem: a clever compiler or interpreter could see whether or not in a particular case the extra baggage of an object is required. Exactly what gets fed to the processor or the virtual machine need not necessarily concern the programmer. The point of this example is to give an example of how the kind of reasoning we are interested in is done. In computing, something like ontology is done very practically. Expressiveness, performance, extensibility and safety (with computers in cars, missiles, spaceships, aeroplanes, life-support systems and a whole load of other critical military and civilian systems, poor code means much more than lost sales or pissed off employees: it means dead bodies - see here and here).

Let’s look at another analogous situation in the physical world rather than the computational one: properties. It is an argument on it’s own for a nominalist account of properties, or indeed an account of properties that makes use of tropes (Stoutian particulars, abstract particulars etc. - they are not short of names!), that they reduce the number of types one needs to presume in one’s ontology.

I find Stannard’s response to that thought to be unsatisfying. Familiarity with a type has nothing to do with the Ockhamist objection to that type. To use a slightly absurd example: I am far more intuitively familiar with turtles than I am with quarks. I could give you a description that would help you identify with a reasonable degree of reliability whether or not something is a turtle or not - living, comparatively slow moving, with a hard shell, of such a size, found in certain placs etc. I’m sure a biologist could give you a description in both terms of species and genetics. But, I cannot, off the top of my head, explain to you what a quark is. But if someone presents to me a physical ontology, that quarks and similar entities would have a better chance of being more fundamental than turtles seems intuitively obvious. To switch it slightly, you can have atoms without turtles, but you can’t have turtles without atoms. If someone were to say that turtles have a fundamental ontological role (as one might say they would in the Discword novels), no amount of familiarity validates that.

To go back to our slightly more sensible analogy with properties: imagine if we had a defender of predicate nominalism stating, on Stannard-style grounds, that unlike the realist, he didn’t need to add this extra bloat to his ontology, but only acknowledge predicates. (And, well, no sensible person denies that predicates exist, right?) If you find predicate nominalism appealing, familiarity with predicates doesn’t make universals significantly less strange. And if you find predicate nominalism wanting, you do so in spite of the fact that predicates are familiar for you.

That’s not to say that the number of tokens is never relevant. I think nominalism is a perfect example: if one is a predicate nominalist, the problem is how do you construct a world where the number of predicates roughly matches the number of universals that a realist would want. One always bumps into the problem of arbitrariness. With a realist account, let’s say we’ve got ourselves an apple, and it’s red and juicy. The realist says “Okay, apple, you instantiate Appleness, Redness and Juicyness”. One particular, three universals (if we grant all three of them status as universals). The predicate nominalist says “No, no, no. We’ve got an object to which three predicates can be applied - “is an apple”, “is red” and “is juicy”. But says the realist, the number of properties can be multipled. The object can also satisfy “is a red apple”, “is a juicy apple”, “is a red, juicy thing” and even “is red but not furry”, “is red but not a chest of drawers”, “is not a packet of crisps” and so on. To satisfy the realist, the predicate nominalist must find a way of adequately slicing these back down to the bare, essential predicates or bite the bullet of there being an almost infinite number of predicates applicable. If we allow “is red and is red and is red” type predicates, well, the predicate nominalist is even more screwed. D.M. Armstrong in the chapter on ‘particularism’ (that is trope theory) Universals and Scientific Realism reckons there’s a similarly big problem for defenders of tropes.

How might one go about responding to the multiversist without getting into the complex physics of it - that is, what possible philosophical objections could we raise? Well, if I wanted to beat up multiverses, I’d go for probing away firstly at the scientific status of such a theory. Comparatively, that’s not that much of a problem. Perhaps I’d then move towards wondering about whether multiverses hold up conceptually. The idea certainly seems a strange one. I mean, the point about a universe is that it is everything. The idea that there could be an alternative everything is strange because surely one could just say “Ah, but there’s an everything-everything that contains the two different everythings”. Semantics, perhaps, but there might be something a bit spooky hidden behind the multiverse mask. You could even wonder about the way in which infinity is deployed here. One would then want to wonder about whether or not one can quantify over this infinite set of universes, and how one sorts such universes. To say there is a particular subset that match in some way might get you into counterpart/Twin Earth problem. Basically, you then get to riff on the sort of probelms that might face a modal realist like Lewis.

Familiarity with God is, I think, obviously a bad way to respond to Ockhamist objections. If we plan on resolving multiverse-vs.-God debates like Stannard has presented, we need to understand how we weigh up infinite tokens one type vs. two types with one token each. I’m not sure Ockham gets us that far.

Tags:

Brave new world of the IPv6 soldier

While Googling around finding out about IPv6, I found this article which contains this: The US Department of Defense has embraced IPv6 for the above-mentioned reasons. In June 2003, it announced a plan to completely move to IPv6 by fiscal 2008, saying that as of 1 Oct 2003, all network assets it developed, procured or acquired were to be IPv6-capable.

The DOD has adopted a net-centric technical vision. According to this vision, future combat systems demand ubiquity (IPv6-centricity), mobility and ad hoc networking and security. For example, from a networking standpoint, the soldier is viewed as a site - a network of onboard systems providing integrated real-time data. Weapon firing and supply data would be fed back to commanders, as would be precise position information.

Health information such as a soldier’s heart rate, blood pressure and temperature would also be relayed. The soldier could also receive positioning data about friends and foes to increase situational awareness and save lives. The data security (authentication and encryption) requirements in this model are obvious. Unlike today’s military model of autonomous systems and a broadcast information push, the net-centric vision relies on bidirectional, end-to-end secure communications enabled by IPv6.

Warfare conducted over HTTPS? Soldier gets PUT into Iraq and assigned an IP address (hey, doesn’t he have some kind of identifier already? Build that into a URI.). GET status every five minutes. 200 OK. Then suddenly the regiment goes 404. As if war needs to be made more clinical than it already is. I was joking the other day about whether or not the Police National Computer would embrace Linked Data. Detective goes to the PNC and pulls up details of a suspect. It then does a whole bunch of inference tricks and shows links to Geonames and dbpedia and Twitter. Maybe his last.fm details and some TV news footage. All done via SPARQL.

It’s an interesting question: how do people feel about the software they are writing being used for things other than peace, love and a bit of raw capitalism. All that GPL code people are churning out may be going into creating more efficient killing machines and snooping devices. Do we have Manhattan Project-style ethical worries about how free software, standards and infrastructure ends up getting used?

Tags:

What Digital Britain could have been: IPv6 adoption in the UK

I’ve been chatting with dwm and tom_watson today on Twitter. Tom just asked: Tell me, in precise, normal people’s language what I should ask gov about IPv6?

To understand IPv6, one needs to understand IPv4. IPv4 is the current version of the Internet Protocol. When you visit a website like twitter.com, your browser takes the URI of twitter.com and looks up an IP address. In the case of twitter.com, that is 128.121.146.100. The IP address is made up of four numbers from 0-255. The separate blocks are handed out in ranges. But there is a limit to the number of IP addresses available. They are assigned to countries, and from countries, they are assigned to the various people in that country - to government departments, to commercial organisations and so on.

Under IPv4, there are a total of 4.3 billion assignable IP addresses. Based on current assignment patterns, this is likely to run out in 2011. IP addresses are being assigned quicker than you can imagine - probably thousands every minute.

74% of assigned IPv4 addresses are to those in North America. 17% are assigned to Europe. 9% in Asia.

There are a few possible solutions: firstly, we faff around with NAT, use subnetting and reclaim unused space in the IPv4 space. A concerted effort may extend IPv4 lifespan for a few more years. Another solution is to basically turn IPv4 into a market. We’ll get to 2011, and people will start selling IPv4 addresses because they will become scarce. This will be profitable for those people who want to sell their IP addresses.

The alternative is to move to IPv6. IPv6 dramatically increases the number of IP addresses from the current 4.3 billion to 340,282,366,920,938,463,463,374,607,431,768,211,456. To put that in perspective, it means that for every square centimetre of the surface of the planet, there will be 67 billion billion addresses.

This may seem like a tremendously large amount. But as the number of digital devices increases, moving to IPv6 seems like the only solution. With China and India developing, millions of people are joining the ‘net. Where I live, we have four people - but five computers, and maybe five or six gadgets that use wi-fi. Currently, they all share one IPv4 address. Under IPv6, these machines would be directly addressable.

So, what is stopping the move to IPv6? A couple of things.

Firstly, ISPs. A few ISPs in Britain are now supporting IPv6, but a lot do not. Of the ISPs who do, it’s generally the smaller ISPs. This is partly due to marketing: people don’t buy Internet access thinking about IP addresses, they buy Internet access thinking about Facebook, iPlayer, YouTube and e-mailing photos to their friends and family. Could government nudge the ISPs into adopting IPv6? Possibly.

Secondly, hardware manufacturers. The wireless routers, access points and network switches sold to consumers for home use do not generally support IPv6. Most of the commercial-grade network equipment does support IPv6, but it’s the consumer-grade equipment that’s currently lagging behind.

Thirdly, software. The clear leader here is Apple, who have IPv6-enabled their operating system and wireless hardware and made it all work seamlessly. Most of the current Linux distributions have IPv6 set up and working out of the box now. Windows Vista supports IPv6 out of the box. But people using older versions of these operating systems need help moving to IPv6.

What practical benefits does moving to IPv6 have? Well, clear addressability. An important principle of Internet architecture is “end-to-end”. The network itself is just a dumb transport system that moves bits from here to there without doing anything intelligent with them. But if we haven’t got enough IP addresses, we have to put in NAT systems to proxy between local IP addresses and IP addresses on the wider network. At home, since I have only one IP address, I can only make one service available to the outside world. For instance, I expose SSH from one of my machines to the outside world. But there are a few machines in the house running SSH, and if I had more IP addresses, I could expose more of these machines to incoming Internet traffic.

The increase in popularity of peer-to-peer services like BitTorrent and bandwidth-consuming online services like Skype and many online games which require open ports has prompted a lot of people in to having to describe at length how to forward ports through their NAT systems - routers, modems and the like. This is complicated and puts off a lot of new users from using these technologies.

There are a few governments and public bodies that are pushing for IPv6 adoption. The US Department of Defence have made it a requirement that all their suppliers are IPv6 compatible. This article describes how in Africa, IPv6 is being pushed. As other countries increase their use of the Internet in everyday life, they will need more and more addresses.

A simple thing the government could do is to require that all new IT infrastructure that is commissioned uses hardware and software that is IPv6 compatible. Make it a requirement for vendors who are supplying products and services to the government that what they do is IPv6 compatible. Any of the projects that come out of Digital Britain ought to be IPv6-enabled if they are getting public sponsorship. The Digital Britain report has suggested minimum speed guarantees - along with that, IPv6 would seem like a trivial requirement for publicly subsidised networks. As libraries and schools ramp up Internet access on their premises, IPv6 seems like a natural requirement.

How this is pushed forward in terms of policy is not something I could hope to say: I’m not a political strategist. What I do know is that if we have any hope of having a smooth transition fromIPv4 addresses, we’re all going to need to deal with it. It’s utterly boring: like running out of postcodes or London changing it’s telephone dialing code from 071 and 081 to 0171 and 0181 and then finally to 0207 and 0208. Government may have a shot at getting consensus on IPv6 where industry has not. It’s worth a try.

Tags: