Skip to the Main Content

Note:These pages make extensive use of the latest XHTML and CSS Standards. They ought to look great in any standards-compliant modern browser. Unfortunately, they will probably look horrible in older browsers, like Netscape 4.x and IE 4.x. Moreover, many posts use MathML, which is, currently only supported in Mozilla. My best suggestion (and you will thank me when surfing an ever-increasing number of sites on the web which have been crafted to use the new standards) is to upgrade to the latest version of your browser. If that's not possible, consider moving to the Standards-compliant and open-source Mozilla browser.

December 31, 2004


Somehow, Ann Coulter consistently succeeds in making Jessica Simpson sound like Harold Bloom:

To The People Of Islam:
Just think: If we’d invaded your countries, killed your leaders and converted you to Christianity YOU’D ALL BE OPENING CHRISTMAS PRESENTS RIGHT ABOUT NOW!
Merry Christmas

Remind me, again, why the media persist in treating her as a respectable source of conservative opinion?

Posted by distler at 1:14 AM | Permalink | Followups (5)

Topological M-Theory

Topological String Theory is a rich and beautiful subject. It associates a Calabi-Yau 3-fold, XX with a set of invariants which have both significance in enumerative algebraic geometry and which play a physical role in the N=2N=2 supergravity theory obtained by compactifying physical type-II strings on XX.

Recently, a lot of interest has surrounded the possibility of topological M-Theory, a theory which might compute similar interesting invariants for a 7-manifold, YY, of G 2G_2-holonomy. There’s a paper by Dijkgraaf et al on Hitchin’s theory. More recently, Nikita Nekrasov has written up his talk at Strings 2004.

Both papers are very intriguing, but neither contains what the authors (or the reader) might happily call a satisfactory formulation of “topological M-Theory.”

Since it’s the Holidays, I’m going to go out on a limb and — Scrooge-like — suggest that, perhaps, there’s a reason for this.

In a nutshell, the reason “why” there’s topological string theory is that there is a rich set of “nonrenormalization theorems” protecting various couplings in the N=2N=2 supergravity theory. This protected subsector of the physical theory is what is computed by the topological theory.

On the other hand, the generic N=1N=1 supergravity theory, which would result from compactifying the physical M-theory on a G 2G_2-manifold, YY, doesn’t have (as far as we know) a set of protected coupling which might plausibly be computed by topological M-Theory on YY.

There are very special N=1N=1 theories which do have such protected couplings. But these, typically, are related to some N=2N=2 theories, and the protected subsector is computed by the corresponding topological string theory.

One of the “axioms” of topological M-Theory is that, on Y=X×S 1Y=X\times S^1, it should reduce to topological String Theory on XX. The question is whether there’s anything new that might be found on manifolds, YY, of irreducible G 2G_2 holonomy?

Even if the answer turns out to be “no,” it does not necessarily follow that the whole exercise is pointless. If nothing else, a 7-dimensional formulation might furnish a proof (or even a satisfactory statement) of the conjectured S-duality of the Topological A- and B-models on XX.

I’m still rather optimistic about the subject. But I do have this nagging fear that the difficulties making sense of the proposals on the table are not just a case of me being dense, but are indicative of something fundamental.

Posted by distler at 1:12 AM | Permalink | Followups (6)

December 17, 2004

The Pace of Innovation

If you read any other blogs besides this one, you’ve probably heard that MovableType blogs are currently being hammered by a “new breed” of spambot. Webhosts are shutting down MT installations in self-defence. SixApart has offered soothing words that a fix is on the way.

As it turns out, the spammers in question had been visiting golem, upwards of a thousand times a day, until I … umh … made them go away. But to know that, you’d have to read my server logs. They had no noticeable effect on server load or on the amount of comment spam I’ve received (4 in the past two months).

Gleening what I can from the experience of others, what strikes me is how little innovation a spambot writer needs to exercise to get his 15 minutes of fame. This “new breed” of spambot differs from the ones in common usage a year ago in only two respects

  1. Taking a page from the crapflooders, it operates from behind multiple anonymous proxies. Thus it can deposit hundreds of spam comments in a short interval of time, while evading MT’s lame-ass, ineffective comment throttle1.
  2. Upon finding a comment-script to post to (by looking for the POST method of the comment-entry form), it cycles through the BlogID parameter, thus depositing spam on all of the blogs hosted by that MT installation.

Other than that, apparently, it’s no more sophisticated than the easily-defeated spambots of yesteryear. You don’t even need to do something mildly sophisticated to render it ineffective.

So why the brouhaha?

Because an unprotected MT installation will buckle under the load of a crapflood (and, apparently, because MT3.x is even worse than MT2.x in this regard). So this spambot’s author’s decision to go for quantity over quality has made for a lot of unhappy people, right now.

Trackback Spam (Update)

Lest anyone think I am totally sanguine about beating these spammers, let me hasten to say that I am not. Changing only a few lines of code in their spambot, they could convert to sending Trackback spam instead of Comment spam. And neither I, nor anyone else, would have any good way of defending against them. Sure trackback throttling (incorporated into MT 3.1) would stem the tide. But, unlike comments, which can be made difficult for machines to POST, trackbacks are supposed to be POSTed by machines.

My one thought on the matter was to demand that the URL of the trackback resolve to the same IP address as where the trackback ping came from, or at least to the same /24. Theoretically, the blogging software that produced the trackback ping is running on the same host as website in question. Trackback pings sent by spammers via anonymous proxies, however, would not match.

I was halfway through coding up a plugin for MT 3.1, when it occurred to me to wonder how my existing, legitimate, trackback pings would have faired under such a system. So I wrote a little script to comb through the trackback pings I’ve received, and retrospectively apply this test to them. The results were a bit disappointing:

Of 172 trackback pings,

  • 65 matched IP addresses exactly
  • 13 more were in the same /24
  • 89 didn’t come even close to matching
  • 5 DNS lookups failed

This exaggerates the problem somewhat. Some of these pings are over 2 years old. If the person changed webhosts in the interim, the IP addresses certainly wouldn’t match today, even if they did match when the trackback was originally POSTed. But still, it looks like this strategy would have blocked over half the legitimate trackbacks I’ve received.

Back to the drawing board…

Update 2: Endearing Moderation

Chad Everett has created a plugin that has similar functionality to my forced comment previews, without the need to hack the MT source-code. Actually, as far as I can understand, his plugin doesn’t actually force a preview so much as toss any non-previewed comments into a moderation queue. As I’ve explained, mine was primarily a way to enforce XHTML validation and only secondarily to deter comment spam. So I say, “Moderation, schmoderation! If it hasn’t been previewed/validated, you can’t post it.”

I actually got another spam comment tonight, which was of the endearing, hand-crafted sort that you see once you’ve eliminated the mechanized ones. The author came in on the following Google search

deciphered, as best he could, the entry in question, and the left the comment

I have a blog with XHTML 1.1 and I have tried employing your Mathenable feature and I keep getting the same error code default #F3423 substring expected could I be applying it incorrectly as maybe my lib/mt/app is a different library version.

Really delightful! Alas, his URL no longer points to some schlocky bargain-finds-on-ebay site….

1 If you want effective comment throttling, you need to install a plugin (a plugin!).

Posted by distler at 3:40 PM | Permalink | Followups (5)

December 14, 2004

Fixing What’s broke

Sometimes a picture is worth a thousand words.

Brad DeLong says:

Current Policy Surpluses and Deficits: General Fund and Social Security

The U.S. government’s fiscal problems are not in the Social Security system. The U.S. government’s fiscal problems are in the General Fund. And these fiscal problems are dire indeed.

“Ah,” some Republican will say, “but the Social Security system’s finances get much worse after 2014.” That is indeed true. But the General Fund’s problems get worse too–and get worse at a much faster rate: the Bush tax cuts, Medicare, and Medicaid guarantee that.

So why dink around claiming that the most important fiscal-policy thing to do right now is to “fix Social Security”? When the General Fund has problems five times as big happening five times faster?

The obvious answer is that the Bushies have no more intention of “fixing” (in the commonly accepted meaning of the term) Social Security than they have of cutting the deficit in the General Fund.

The only useful counterweight is to contrast their multi-trillion dollar “plan” with estimates of how much it would cost to actually fix Social Security (preferably estimates made using the same unrealistic assumptions as the Bushies use for their plan to kill it).

Fixing the deficit in the General Fund will have to wait till after 2008. Let’s keep our eyes on the ball …

Posted by distler at 12:13 AM | Permalink | Post a Comment

December 13, 2004

Kibble Deficit

Topological defects are dangerous cosmologically. One of the original motivations for inflation was to solve the “monopole problem” – that monopoles created in the GUT phase transition would overclose the universe. The basic rule of thumb in the subject is the Kibble Mechanism — that, on average, you get one defect per horizon volume at the time of their formation. This is, obviously, a lower bound on the density of defects: the order-parameter cannot be correlated over length scales larger than the causal horizon. But, in almost all cases, one finds that the correlation volume is of the same order of magnitude as the horizon volume.

String cosmology provides a rich set of topological defects as well. A D3D3-D3¯\overline{D3} pair rolling towards each other (a popular model for brane inflation) can annihilate in to (D- or F- or (p,q)(p,q)-) strings. Non-BPS branes may be temporarily stabilized by finite temperature and decay into lower-dimensional branes when the universe cools below the transition temperature.

One of the striking things about these brane effects is that — in a systematic approximation — they are governed by a DBI action, which is nonpolynomial in derivatives. This can lead to effects dramatically different from naïve field theory expectations. As Alishahiha, Silverstein and Tong noted, the higher-derivative terms in the DBI action can produce slow-roll inflation, even for potentials that are relatively steep. The upper limit on ϕ˙\dot \phi is easy to understand as a causal limit on the velocities of the branes in the extra dimensions.

But, apparently, the same DBI action, which prevents ϕ˙\dot \phi from becoming arbitrarily large, can undermine the Kibble Mechanism. According to Barnaby, Berndsen, Cline and Stoica, because of effects of the DBI action, the correlation volume can be much smaller than the horizon volume. So one gets a density of cosmic strings (or other topological defects) much larger than one per horizon volume.

If true, this could be really important. It would provide really stringent bounds on whole classes of string models, lest they overproduce topological defects in the early universe.

Superficially, I see some plausibility in what they’re saying. First, there’s the aforementioned limit on ϕ˙\dot\phi, which prevents the order parameter from relaxing as efficiently as it would in ordinary field theory. Second, there’s the fact that the action of interest takes the form

(1)S=d 4xV(ϕ)1+(ϕ) 2 S = - \int d^4 x V(\phi) \sqrt{1+(\partial\phi)^2}

where V(ϕ)V(\phi) vanishes at the minimum. This favours large fluctuations of the order parameter as you reach the endpoint of brane-antibrane annihilation. (Personally, I think this just signals the breakdown of the DBI approximation, due to the importance of higher string modes.) Anyway, between these two effects, they claim a much higher density of cosmic string formation (1 per M s 1M_s^{-1}, rather than one per H 1H^{-1}).

Unfortunately, I don’t really understand many of the details of their calculation. Maybe someone can chime in with some explanations…

Posted by distler at 1:30 AM | Permalink | Followups (1)

December 7, 2004

Ill-formed NOAA

A recent Wired article to the effect that the National Weather Service is now offering their data in XML format got me intrigued enough to want to test out the service.

So I slapped together a little program to fetch the 3-day forecast for Austin


use SOAP::Lite;
use DateTime;

my $lattitude = 30.19;
my $longitude = -97.46;
my $numDays = 3;            # up to 7 days
my $format = '12 Hourly';   # '12 hourly' or '24 hourly'
my $xml_file = '/Users/distler/Sites/blog/files/forecast.xml';

my $startDate = DateTime->now->ymd;

my $serviceURI = '';
my $method = 'NDFDgenByDay';
my $endpoint = "$serviceURI/SOAP_server/ndfdXMLserver.php";
my $soapAction = "$serviceURI/DWMLgen/wsdl/ndfdXML.wsdl#$method";

my $weather = SOAP::Lite->new(uri => $soapAction,
                            proxy => $endpoint);
my $response = $weather->call(
     => SOAP::Data->type(decimal => $lattitude)->name('latitude'),
     => SOAP::Data->type(decimal => $longitude)->name('longitude'),
     => SOAP::Data->type(date    => $startDate)->name('startDate'),
     => SOAP::Data->type(integer => $numDays  )->name('numDays'),
     => SOAP::Data->type(string  => $format   )->name('format')

if ($response->fault) {
     printf "A fault (%s) occurred: %s\n",
     $response->faultcode, $response->faultstring;
} else {
     open(OUT, ">$xml_file");
     print OUT $response->result;

The result? Alas … ill-formed XML.

Perhaps I’m a bozo (someone who knows something about SOAP could probably explain where I screwed up above), or perhaps there’s some lesson to be learned here.

Replacing the third line above with

use SOAP::Lite +trace;

you discover that the entire “XML” response is an entity-encoded string in a SOAP wrapper. [Thanks to Sam Ruby for pointing out the “depths of their depravity.”] If you poke around the sample implementation and the referenced PHP include files (which presumably power their server implementation as well), you discover the reason why. All the “XML” is generated by manipulating strings in PHP.

I don’t think has anything to fear.

Update (12/8/2004):

I guess I am a bozo, after all. Changing line 9, above, to

my $format = '12 hourly';   # '12 hourly' or '24 hourly'

(with a lowercase ‘h’) produces well-formed XML.

The WSDL for this service, alas, gives no hint that I was doing it wrong. The closest it comes to guiding us on what the correct input should be is:
<operation name="NDFDgenByDay">
      Returns National Weather Service digital weather
      forecast data. Supports latitudes and longitudes
      for the Continental United States only. Allowable
      values for the input variable "format" are "24 Hourly"
      and "12 Hourly". The input variable "days" is a
      boolean array representing the number of days from
      the current day; elements set to true indicate days
      for which data is requested. For an array element
      is set to "false", data for that day is not to be
<input message="tns:NDFDgenByDayRequest"/>
<output message="tns:NDFDgenByDayResponse"/>

which would lead a human to think my original program was delivering what they were expecting.

I still think we learn some valuable lessons here

  1. Well-formed, valid, input should produce well-formed output. The format parameter is declared to be of type xsd:string. If the string I send you isn’t one of the ones you were expecting, send me an error-response. Don’t let your application blow up in my face.
  2. As Sam Ruby notes below, it would be better to send the response as XML, rather than as an escaped string.

Now, about that forecast data …

Update (1/27/2005):

All’s well that end’s well.
Posted by distler at 6:49 AM | Permalink | Followups (6)

December 6, 2004

Almost Hairless

To no one’s great surprise, but to the consternation of some, the blackhole no-hair theorem does not hold in higher dimensions. In four dimensions, blackhole solutions are characterized by their gauge charges: mass, angular momentum, electric charge, … (and perhaps discrete gauge charges, should there be discrete factors in the gauge group).

Not so in five dimensions, where, for given values of the mass, angular momentum and charge, there exist both “blackhole” (whose horizon is S 3S^3) and black ring (a rotating black string, whose horizon is S 2×S 1S^2\times S^1) solutions. There are even supersymmetric black ring solutions.

Such solutions can be said to possess a discrete (in fact, finite) amount of “hair.”

Bena and Warner found a rich class of supersymmetric black ring solutions which seem to comprise an infinite amount of (continuous) “hair.” Their solutions are characterized by seven functions of one variable, the position along a curve, CC, embedded in 4\mathbb{R}^4. Four of the functions describe the embedding; the other three correspond to certain “charge densities” along the curve. This seems like a rather drastic failure of “no-hair.”

Horowitz and Reall, however, argue that almost all of the BW solutions do not have regular horizons. Only a “round” circle, with uniform charge density on it, has a regular horizon.

Thus is a semblance of hairlessness restored…

Posted by distler at 1:50 AM | Permalink | Post a Comment

Posner’s Big Adventure

Kieran Healy has some fun at the expense of the new Becker/Posner blog. I’ve gotta say that the first two inaugural posts were a bit underwhelming, even by the sophomoric standards prevalent here at Musings.

But, unlike Kieran, I think these are the real guys, trying desperately to sound hip, like those Fafblog folks. “Glib” is the new “black,” I’m told. It’s certainly what I strive for here at Musings. Who can blame Becker and Posner for trying to do the same?

Posted by distler at 1:08 AM | Permalink | Followups (1)

December 1, 2004

Minor Updates

MTValidate is up to version 0.3, with some gratuitous dependencies removed and even more helpful error messages from the W3C.

itex2MML is up to version 0.9. Only the binary changed, not the plugins for MovableType, WordPress or ecto. Particularly if you were having trouble using it with Markdown or Textile, you might want to check out the latest version. As usual, my distribution comes with the source code and a precompiled MacOSX binary. If James and Abiola are up to it, I’ll post links to precompiled Linux and Windows binaries, when they’re available.

Posted by distler at 12:09 AM | Permalink | Followups (6)