by M. N. KRISH
‘Half a mill,’ he said. ‘That should be a nice round sum. Hopefully, it’ll make the decision easy for you.’
Joshua was unable to speak for a long moment.
‘Half a million’s a lot of money for this kind of stuff, you know,’ he said when he managed to find his voice. ‘You could actually get the stuff free of charge when the paper gets out–’
‘Which is precisely what we don’t want to happen,’ Edwin cut in. ‘If I could shoot straight, Professor,’ he said and inched forward in his seat, ‘we’re facing a lot of competition these days. Bangalore’s undercutting us in every bid. The good news is they’re still low down the value chain. We can’t compete with them on price but we can beat them on value and service any day. Your algorithm is just the sort of weapon we need to maintain our competitive edge. That edge would get blunted if it’s out in the open. We don’t want that happening if we can help it.’
It sounded all too facile for Joshua to buy into blindly. He had seen plenty of corporate types and heard enough management mumbo jumbo in his career – he himself used to run a tech firm in Kendall Square before selling it off for a sum sufficient for several generations of his family. So he decided to dig a little deeper. ‘Fair enough,’ he said. ‘But are you aware of the amount of investment required to turn the method into some kind of algorithm and then into an application and integrate it into commercial software? I’m talking both hardware and developers. My back-of-the-envelope guesstimate tells me you’ll need a team of three or four ace developers working for several months just to get the thing up and running. I’m not talking mere programmers but math or computer science PhDs who can make sense of the stuff. And then you have all the integration, migration and transition to worry about. If you look at all that effort and expense involved, it may not even be worth it in the end. Are you sure your returns are going to justify that kind of investment?’
‘That shouldn’t be a problem,’ said Edwin. ‘We’re still operating within the acceptable band on our risk-reward curve. We’re confident our returns will cover our costs in the long-term. Also, development’s not an issue when we have a whiz like Jeff on our side. He can turn a laundry list into computer code.’
‘Jeff?’ Joshua screwed up his face and asked. The last he’d heard, Jeffrey was going to start work at Tennessee Dennis University in the fall.
‘Yeah, he’ll be helping us with the programming. Once his term here is over, of course.’
Edwin seemed to have the entire plan mapped out. In one week.
‘All right,’ said Joshua. ‘Let me think about it and get back to you.’
‘I appreciate it, Professor,’ said Edwin. ‘Could you tell me how long you think you’re going to need? Would you mind if I buzz you back, say, tomorrow or day after?’
‘I’m not sure that leaves me with enough time. Whatever we have is an output of a funded research project and I need to talk to a few people to find out what I’m allowed to do with it. If you don’t mind, why don’t I call you back?’
‘All righty, you know where to reach me,’ Edwin said.
Joshua escorted Edwin out of his office, his partly paranoid self fully convinced that there was something more than met the eye.
20
‘So what did you do?’ Lakshman asked. ‘I’m sure you didn’t take up the offer.’
‘You got that right,’ Joshua said. ‘The first thing I decided to do was to check Jeffrey out. I had someone help me look up his account.’
‘His bank account?’
‘No!’ Joshua laughed. ‘I could be doing time if I did that. I meant his computer account in my lab. It’s not something that makes me glow with pride, but I was left with very little choice. Someone works with you for two years and you think you know them well and then all of a sudden they do something that totally wipes out all your assumptions about them.’
‘Are you legally allowed to do that?’ Lakshman asked. He knew American law entertained strange notions of freedom of expression on one hand and privacy on the other.
‘Hey, it’s my project computer, purchased with my research funds. As principal investigator, I am personally responsible for what’s in there and how it’s used,’ Joshua said.
~
Jeffrey had been assigned to a UNIX box Velocity for his work. Three other grad students used it for their research, and one of them, Diane, had been tasked by Joshua to double up as the system administrator, particularly to resolve resource allocation issues – often to establish peace when memory war broke out among users and paralyzed the system. Joshua asked Diane to give him access to Jeffrey’s account and began snooping around.
Jeffrey had accumulated thousands of files in two years. Not only was it going to be an endless chore to go through them, it was also unnecessary. At least for now. Joshua decided to narrow the scope of his search for a start, filtering out just those files that had been created in the past one week, following their return from India.
Much to Joshua’s shock, Jeffrey had added over a hundred files of varying sizes in the space of a week. Joshua opened up the files and began browsing through them one after another. Some of them were plaintext files with C++ source code while others were input or output data. He kept his focus on the source code files for now.
His eyes widened a little each time he pulled up a new file window and went through its contents. By the time he was done scanning through half a dozen of them, his eyeballs were popping out of their sockets like a shrimp’s and his jaw had dropped down a good inch or two.
There were several routines split across the files, but with each routine calling several other subroutines they were meshed together in a spider web pattern. Coupled with total absence of documentation, it was impossible to decode all their logic in one glance. But one thing Joshua could tell without any doubt was what lay behind it all . . . The Sulba Sutra method.
Jeffrey had gone one up on Joshua and successfully shoehorned the geometric technique into a family of numerical algorithms!
What was more, he had coded them all up into C++ functions. They were the engine powering the entire suite of programs.
Joshua had estimated that it would take several months for a team of three or four computer scientists to cook up something usable with the Sulba Sutra method. But Jeffrey had managed to do it singlehandedly in the span of a week!
How?
It came to Joshua in flash . . . How Jeffrey had walked into his office looking like a cadaver. It was not because of any bug he picked up in India; he had been working himself to the bone, crunching away at the computer round the clock without eating or sleeping well or going to the gym. There was no other way he could conjure up something like this in a week’s time.
But why was he driving himself so hard?
Joshua opened up some more programs and tried tracing through their labyrinthine logic.
Soon some more pieces of the puzzle locked into place and the picture began to emerge.
On a hunch, he let go of the program files and opened up some of the output files. One cursory glance was enough to make Joshua’s heart leap to his mouth:
Jeffrey was using the Sulba Sutra method to make interest calculations!
Joshua began digging into the output files in detail.
Some of the outputs presented the results from parallel runs of the Sulba Sutra algorithm and other numerical techniques like Guess-and-Check, Newton-Raphson method and Taylor Series, statistically comparing their runtimes at different levels of accuracy. Rather than rounding off dollar figures after two decimal places, down to the level of the last cent, as usually done during interest calculations, Jeffrey was letting the algorithm run until it was accurate up to the tenth decimal place. He was studying the runtime reduction resulting from the Sulba Sutra approach for different levels of accuracy. They were often in the order of milliseconds and totally imperceptible to huma
n senses but Jeffrey had made the programs keep track of them meticulously. Joshua had a vague idea why someone would be interested in such a clinically precise evaluation. But viewed together with Jeffrey’s maniacal urgency and Edwin’s unexpected visit, they sent the alarm bells ringing in his head.
What Joshua did next was something he wouldn’t easily admit to anybody. It was low – lower than spying on Jeffrey’s account on Velocity, but it had to be done. With a heavy heart and a prickled conscience, he decided to read Jeffrey’s email, trying to delude himself through autosuggestion: It was just an unauthorized review free from malicious intent prompted by extenuating circumstances. The irony played out in another manner as well: Joshua never had enough time or inclination to read all his emails or reply to them in a timely fashion, and yet here he was, secretly going through Jeffrey’s messages with a fine-tooth comb.
Jeffrey though was made of sterner stuff. He had covered up his tracks quite well. There was nothing suspicious or incriminating in his inbox.
But Joshua soldiered on and scoured through all his folders . . .
Soon he hit upon a place where Jeffrey had let his guard down; it was a small slip-up, but that was more than enough for Joshua.
It was not one of mails Jeffrey had received but one he had sent. It was addressed to Edwin and somehow remained undeleted in the Sent folder.
It was a techy as well as tetchy email, long and overloaded with detail. Joshua could extrapolate what must have happened from the very tone and tenor of the text: Edwin had cast doubts about the new algorithm and an irritated Jeffrey was rebutting him, point by point. Short of snarling fire at Edwin’s ignorance, Jeffrey was trying to demonstrate how the new approach to interest calculations could achieve the targeted degree of accuracy in a much shorter runtime compared to other algorithms. He had included some summary statistics based on his trial runs which showed how much processing time could be saved at different accuracy thresholds ranging from one decimal place to ten decimal places. He was making a further point that the algorithm could achieve even greater reduction in runtime if you were willing to trade off accuracy a little. He had carried out many such analyses, including all the sort of stuff Joshua would have liked to put in a research paper. He also made it clear that though all his trial runs were carried out on UNIX, he could easily repeat them on a mainframe if only Edwin would give him access.
Although the email to Edwin had several clues that helped crystallize and confirm the vague, amorphous suspicions swirling about in Joshua’s head, there was one vital piece of information which finally did it for him. On top of all the statistics about run times and accuracy levels, Jeffrey had also provided some dollar figures. At first glance, Joshua took them for estimates of processing cost savings that could be expected from the deployment of the new algorithm. But a closer examination made it clear that it was something else, something much more menacing than that. The horrendous truth dawned on Joshua like a bolt from the blue . . . Jeffrey was in cahoots with Edwin and setting up the stage for mounting a massive salami slice operation.
21
What the heck is a salami slice operation?’ Lakshman asked, a little drunk by now.
‘It’s a scam that exploits rounding issues in accounting and finance. It has a few thematic variations, but in this case it works something like this: When banks credit interest income to their customers’ accounts they only pay down to the last penny. Anything smaller than a penny is generally rounded off and ignored – ignored by banks, ignored by their customers, but not by the computer programs that actually crank out the figures. They keep track of interest payments up to several decimal places. Some smart-alec programmers figured that they could transfer those penny fractions to their own accounts by planting a few lines of code into the interest calculation programs. Customers won’t know because no one bothers to track anything less than a penny. Banks won’t know because there’s no extra payout from their books, just what they ought to pay the customer in the first place. Salami slicing is the pet name for this kind of operation. It’s like shaving slivers off a big chunk of meat. Do it once, you have almost nothing. Do it again and again and again, you end up with enough for a whole meal.’
‘Do the penny fractions really add up to so much to be worth the risk?’ Lakshman asked.
‘Why don’t you do the math yourself and see? Take a bank with say ten million customers, each with say three accounts on average, one checking, one saving and one money market. Suppose you shave off half-a-cent from each account when you’re crediting the monthly interest, how much does that come to?’
Lakshman was a bit beer-addled to think straight and took his time. Even so, he couldn’t believe the figures popping up in his head. ‘Is it really 150K dollars a month or am I too drunk to do the math correctly?’
‘No, you’re sharp as a tack,’ Joshua said. ‘It is indeed 150K per month. Give it six or seven months and you’re a millionaire. Do it at a few more banks and you clean up big time in a couple of years.’
The enormity of the scheme finally sank into Lakshman’s head. ‘Wouldn’t the bank be able to tell if so much money is in one account?’ he asked.
‘Hey, you’re talking about pros here. You don’t get into this business unless you know a thing or two about money laundering. You wouldn’t let that much money accumulate in one place. You won’t even sweep all the penny fractions into the same account each month. You spread them across many accounts and drain them off little by little at regular intervals to avoid suspicion: write a cheque, make a withdrawal, do a transfer, and move them all to a tax haven somewhere. Suddenly one day when you feel you’ve stashed enough, you vanish from the US and settle down in the Caribbean or some such place with blue seas and bright sunshine. Adios America! Aloha Antigua!’
‘Don’t banks try to stop this sort of thing with all their IT security and fraud risk management and stuff?’
‘Of course they try. They’ve even succeeded to some extent in cutting their losses by putting in place proper security infrastructure. But this is one of those things you can only contain and never eliminate. Banks do their best but bite the bullet when there are losses. They budget for them in their annual provisions and dock them off their profits. They just try to make sure the write-offs stay within acceptable limits.’
‘What would that be?’
‘In millions or tens of millions for a big bank, but actual numbers are always kept under wraps; they’re never made public.’
‘Why?’
‘You tell me. Would you deposit your money in a bank if you know crooks have been silently siphoning off millions from their books?’
‘That’s true,’ Lakshman laughed. ‘But I’m not clear where exactly your Sulba Sutra algorithm fits in all this.’
‘Ah, now you’re getting into the meat of the matter,’ said Joshua. ‘When banks saw fraud losses climb over the years, they got smarter and tightened their fraud and IT security, internal and external. Any bank worth its salt has security software that periodically scans through the log files of all the systems and raises a flag if they see out-of-pattern activity. If any program or batch job takes longer than usual to finish running, the security software would get the wind of it from the log files and trigger an alert, something a salami slicer would never want to happen. That’s where the Sulba Sutra algorithm comes in.’
‘How’s that?’ Lakshman asked.
‘Say you’re running an interest calculation program and you know you’ll be left with a penny fraction, what do you need to do if you want to credit it into your account? First you need to create a new variable to capture that fraction and then add it to the outstanding balance in your account. This operation takes time, I mean computer time. It’ll be in milliseconds if you do it once, but if you repeat it over millions and millions of accounts, it’ll start telling on the overall runtimes. Security software would catch that deviation and put the whole o
peration at risk. Even a few seconds of extra runtime could give you away. Like that guy was saying at my presentation, even milliseconds matter in the world of economics and finance. But if you plant the Sulba Sutra algorithm into the interest calculator you can save up some runtime–’
‘Because it executes fast and gives the same degree of accuracy in shorter runtime . . .’ Lakshman said.
‘Exactly. You use that spare time to mop up the penny fractions into your accounts. No security program can detect it and trigger an alert because the overall runtime wouldn’t deviate much from the norm. Clean and simple. Which was exactly what Jeffrey was demonstrating in his email, playing around with different accuracy levels and runtimes. That was one of the things that sent red lights flashing in my head.’
‘Got it,’ said Lakshman. ‘So what did you do? Did you report it to the cops?’
‘Not really,’ said Joshua. ‘I didn’t go to the cops for a few reasons. One, no crime was committed on my watch. Two, I didn’t have any evidence that would stand up in court. You can’t take legal action just based on suspicion and supposition. Thirdly, I also had the MIT angle to think about. As such I was bending the rules to breaking point, spying into Jeffrey’s email and stuff. I didn’t want to cut any more corners and get our Legal involved. We’re already embroiled in so many court battles we could do without one more.’
‘So you didn’t do anything?’
‘I didn’t say that,’ Joshua said. ‘I did take some action. For starters, I relieved Jeffrey of his duties as my post-doctoral associate.’
‘You fired him?’
‘If that’s how you want to call it. He was almost done with me anyway – just a couple of weeks were left, so I insisted he go chill out for some time before moving to TDU; told him I would write the paper myself and add him as co-author. Then I rang some of my old students who’re into fraud risk management and asked them to ping me if they noticed anything funny all of a sudden in their bank or in the industry.’