2005-06-16

The dangers of heuristic instantiation

Hypothetical case: A customer sends a large sell order in a falling market to its broker B, using a pre-agreed SDV. Due to data corruption, the order as received by B does not conform to the SDV. B, using heuristic processing, interprets the sell order as a buy order, and processes it as such, to the great financial detriment of A.

In fact this actually happened. Back in the 19th century, a customer in San Francisco telegraphed an order to its New York broker in code. Unfortunately, the codeword for "sell" was BAY (dah-di-di-dit di-dah dah-di-dah-dah). A duplicated telegraphic "dit" transmuted this to BUY (dah-di-di-dit di-di-dah dah-di-dah-dah), which was interpreted by the broker as plain English and executed as such, though the rest of the telegram was in code.

If the broker had observed the then-and-now standard policy with coded telegrams, namely not to act on them in the presence of coding errors, the order would have been rejected and the customer would not have suffered.

The customer tried to recover from Western Union, which in accordance with its standard contract, was held liable only for the cost of the corrupted telegram (about $3 at the time), not for the consequential damages. If the sender had requested (for an additional half-price) for the telegram to be repeated back from New York to San Francisco, Western Union would have been liable. (Error-correcting code had not yet been invented.)

Source: David Kahn, The Codebreakers.

No comments: