 I'm very delighted that one of the museum's early and stable supporters is here to introduce tonight's presenter. Bob is a long time involved with the museum, but he's also a former student of Joe Galli and our presenter tonight. And so he was the perfect person to introduce our speaker tonight. And so please join me in welcoming Bob Beals. So yes, I was a student at the Research Experience for Undergrad, that's REU program at Duluth that Joe Gallihan has been running since 1977. And it's still going on. And so that's kind of amazing. So those early students, they're like in their 60s now and it's still going on. There have been 254 participants. Some of them are still in college, but 237 have completed college. Of those, 213 have gone to graduate school, 151 have received PhDs, and the Morgan Prize for Outstanding Research by an Undergrad in the first 25 years of this prize, 13 of the winners came from the REU program at Duluth. The Association for Women in Mathematics, Schaefer Prize for Outstanding Undergraduate Woman Mathematician in the first 27 years of that prize, 15 winners and 10 runners up came from the REU program at Duluth that Joe has been running. And there's all kinds of information about that program on the Joe Gallihan webpage at the University of Minnesota, Duluth. That page starts with all sorts of abstract algebra resources, some software, pointers on giving talks, pointers on writing papers, information about the Putnam Competition, and then way down at the end is if it's one of his minor accomplishments, there's information about the REU program. But it's an amazing accomplishment, an amazing achievement to have so many participants go on to such successful careers. Joe didn't just pick good people who were going to have successful careers no matter what and turn them loose. He had to select problems for us to work on. And this is, I don't even know how one would do this. You have to select problems that are non-trivial, interesting, unsolved, but within reach. Within reach of undergraduates who've never done research before and who have a matter of weeks to make some progress and get enough results to publish a paper. Joe is a role model and a mentor. He helped us all grow and get started as mathematicians. Just simple things like how do we interact with our colleagues? Through weekly seminars and other activities, you know, we really began the process of becoming research mathematicians. He was sensitive to issues such as gender bias in ways that, you know, would probably still make him ahead of his time today. But this was back, you know, in the 70s and 80s. And I can only feel some shame that my generation has failed to really rise up to face some of these issues when we had people like Joe to learn from at the beginning. The whole research process from start to finish was something we had to learn. How do you begin working on a problem all the way to, you know, how do you get through the journal submission process and going through those galley proofs at the end? You know, that was also something we had to learn from Joe. And all sorts of things. Even the importance of just basic, you know, physical fitness. It was a major part of his life and it's a major part of mine. And well, now he's going to talk to us. And I just, as you listen to the talk, just remember some of the things he told us as we were starting to research the problems that he gave us at Duluth. Look for patterns. You don't know what you'll find. Or even if there is anything to find, just test lots of ideas and don't give up. And I think you'll see that's what he did. I want to talk about breaking driver's license codes. I got interested in this topic around 1980 when I was eating corn flakes one day and I said, I saw this barcode, the university, universal product barcode. And I said there must be some math here. And then I started looking at more cereals and other products. And I was able to figure out exactly how the barcode worked. And there's a little digit at the end called a check digit. Any case. And then I thought, oh, that was fun. What else can I look at? Then I looked at things like zip codes. I looked at the international standard book number. I looked at credit cards. And in each case I was able to figure out quite a bit by looking at lots of samples. And anyway, then a student, a student at UMD knew I was interested in this because I gave talks on it there. And one student said to me that I don't know how the Minnesota driver's license were coded. And I said, oh, that's interesting. Let me look into it. It turns out that people in Minnesota, you usually know that it's something to do with your name. And the reason why is I'm Galleon. It's 450. My last name's Galleon. My wife's Galleon 450. My son's Galleon 450 and so on. And if a woman was Mary Smith and she gets married and she has one code, if she changes her name into a married name, then it's a different code. You have to get a new whole driver's license. So you go to the bureau and says, oh, I got married and I have, you get 30 days if you change your name to change your driver's license. All right. So people knew that. But the question is, what are the details? So what you do is you do what scientists do. You gather lots of data and you look for patterns. And in no time you can see that if you have a name of Kevin or Keith, if Kevin's their first name, 465-0 here, if it's a middle name, 465-0's there, and there's no difference between male and female because this is Paul and this is Paul, but they're coded the same way. And okay, so then, you know, this is the first name. That's the middle name. And by looking at samples, maybe this is, I don't know what you, I don't remember what this is, but maybe this is March the 1st. You see somebody with March the 1st and it's 162 and you see somebody else with this March the 1st. It's also 162. Different years. Well, okay, this is definitely March the 1st, but there's no year because the data had different years, but the license number didn't. Okay, so it looks like, you know, after a half an hour and 50 samples, 100 samples, you can, oh, by the way, somebody might say, well, what's the commonality? We know the number is the same, but what's triggering this? Well, the only thing these have in common is KE. And the only thing these have in common is PA. And somebody might say, well, it's the first two letters. Or if I wouldn't have just popped this up, you might have said, well, it could be the first letter. Just the first letter alone. For example, some states use, for part of the code, they just use your first initial. But this shows that it's not the first character, it's the first two. All right, so now we've got a pretty well figured out. And this is a phrase I heard from Paulie, although it probably predates him. But the method is guess and test. You look at patterns, I think this is what's going on. Let's, now let's test it against real data. All right, so this is what I already said. And let's move to the next one. Now, what, how does it start? You would think, well, Aaron, if you're going to use two characters, maybe 001 or 0000. Well, this is why you need data. It doesn't, it starts at 028. That's what it starts with. All right, and then what about, I don't have an A, I don't have an A-but name or an AC name, but I do have an AD name. But then you look, well, let's see. If AA is 022, and this is 031, well, I'm going to guess that 029 would be here. 030 would be there, and then this would fit exactly right. And if you keep going, it looks like you just start with a AA, and you start with 028, and each time you move one letter in the second position, the number goes up one. That almost works, and this is why you have to have data. Because it fails at AL. If you only use the first two letters, then all AL names should be 039. But I have a data, an AL on 040 and an ALbert 041. Ah, you see it, and okay, now I see what happens. If your entire first name, not the abbreviation, if your whole first name is just AL, nothing else, then you do get the 039. But if it's Allen, then we'll add one. This is like A0 blank, 029, and then A, and then you add one for the B, and you keep going, and indeed that works out fine. In other words, I keep adding one, adding one until I get down to ALZ, and then I go back to two letters at Amanda and two letters at for AN. So this is the upshot of it all. You go, start at 028 and keep adding one. When you go to Allen, branch off the three letters, then continue on. Then when I look at, yeah, this is the branching there. Then when I look at all the B names, only two characters. All C names, two characters. All D names, two characters. So usually it's the first two character, but there was that weird thing with Allen. But then there's other weird things. Like for example, I have a J-I, and it's a JIL, and it's a 414. I don't have a J-J, but it would be a 415 if I used the first two characters and so on. But when you look down here, and this works fine until you get the J-O. Add one, two characters, two characters, add one, add one. When you get the J-O, I'm gonna branch the three letters. So if your whole first name is just J-O, that's it, nothing else, then you get 420. But if it's J-O-A, you get 421, same as Allen. So we branched J-O when we hit this J-O in the J-O. But down here there's yet another one. So if you have a name like Johannes or whatever that is, it uses the first three letters, but John doesn't use the first three letters. See, if I only used the first three letters, these two seem to be the same. So for some weird exception, I branched the three letters and I used three letters for J-O-A, J-O-B, up to J-O-H, and then I made an exception for the single name of John. So all J-O-A's names get 428 and John gets 429 and the same thing happens with J-O-S. All J-O-S names is 440, Joshua, Josephine, but Joseph itself is 441. Okay, now we see what's happening. John is super common, Joseph is super common, Albert's super common, William's super common, Robert's super common. For the super common names, we'll branch at the three letters, like Robert, I'll branch at all R-O's, but then when I reach Robert, instead of Roberta, for example, we'll have one code, the three letter code, but Robert will have its own. That's on, I think that's on the next slide. Okay, anyway, so here's our new conjecture. Almost always it's the first two letters, but if the first two letters are real, common like J-O or J-A, for example, James, that's a branching place, then we'll use three letters, but these three letter names are usually, we branched at the three letter names because inside the three letter name, there's one or more super, like Joseph and James or Joseph and John and Lowe's will get instead of three letter code, they'll code that one name itself, we'll get its unique code. Okay, so that's it, that's the idea. Like Wilbert will use three letters, but William will get its own, Roberta will use the three letter code, and Robert will get his own. Okay, that's more or less does the names, except I don't have complete data because remember I said some super common name, like there might be a, when this system was invented, there might have been a super common name maybe 70 years ago, but it's no longer common to vice versa, a name like, I don't know, Amanda or Morgan for a woman, that wouldn't have been common maybe 80 years ago, now it's common. So when you say to yourself, what's a common name, you have to think about a long time ago, it was whatever was common in those days, like Mary was a super common name a long, long time ago, it's nowhere near as common now. All right, so anyway, now look at the birthdays, I knew that the year didn't matter, and what you wanna do is you wanna look for data that varies as slight as possible, if I'm looking at birthdays, I wanna one jump, jump of one, jump of one, jump of one, so I looked, this thing's just a single change. Okay, so one position, moving one in the day and a year, gave me a jump of three, moving another one, gave me a jump of two, and I kept seeing jump of three, jumps in two, jumps of three, jumps in two, and I thought that was the pattern, so my guess was, you keep alternating twos and threes, twos and threes, started January 1st, but then I test on the data, and I found every now and then I'd find some little exception, like March's first is 129, and then you add three, add two, add three, add two, but when you get down here, you all of a sudden jump five, I don't understand why, and over here is even more unpredictable. When I do these things, I try to speculate on why, I say why, whoever, smart people figured out they work on these things, I think they were very smart, and they knew what they wanted to accomplish, and so they must have had a reason to make, there might be one reason for gaps of twos and threes, and a different reason for fives and six or where, but I'm speculating that one of the reasons for these weird jumps of five and 20, like some months there's no wild, it's two, three, two, three, the whole way through, there's no red things there, there's no funny jumps. So I say to myself, well, they must be trying to fool code breakers, in other words, if you could easily spot the pattern with a small number of samples and you could predict all the way through the rest of the year, but they don't want people, maybe somebody doesn't want you to be able to predict us, so if you would throw random jumps at random places, people could still do it if they had all a super amount of data, but it wouldn't be easy. All right, so that's my speculation, that you put random jumps at random places to fool code breakers, but there's actually a practical reason to have at least some gaps, and it turns out to be this, tie breakers. Suppose there's a Joseph, Anthony, Galleon in Minnesota and born on a certain date, and another Joseph, Anthony, Galleon born on the same date, like John Lennon and Sean Lennon were born on the same day, but they don't have the same name, but they could have been, for example, my name is Joseph, Anthony, Galleon, and my father's name is Joseph, Anthony, Galleon, so there could be a problem there. All right, so anyway, the reason I speculate is they have these gaps of twos and threes, this is a tie breaker, so if somebody comes in and they have the regular birthday, the standard number you're supposed to get, and then a year later, somebody else signs up, they have a matching first name, matching middle name, not everything has to match as you'll see coming up. In any case, everything else matches and then their birthday also matches, now you have a tie. Well, you don't want two different people with the same driver's license number, so the first person in gets the official number, and then the second person in will get the next number, which is a gap now, remember if you have 028, then there's a gap of 029, so you fill in with that little 029, and if it happens to be a gap of three, you'd have two tie breakers, you could get 028, a tie will take 029, and another tie will take Z30, and in fact, you could even have a fourth tie because you could go back one number. You never want to go back two numbers because then you get another tie. I mean, if there was a gap of two and you went back two, you'd try to break a tie by making another tie. All right, so this is the speculation. All right, now what about the last name? The last name I didn't have to figure out because the student that told me about it said to me, he thinks it's the sound deck system, and the sound deck system is used by genealogy people, and it was even in Canoes' famous book or the Art of Computer Programming, and so I went to Canoes' book and I looked up to the Art of Computer Programming, sure enough, and he talked about the sound deck system, although it turns out that there's been some tweaks over the decades, so maybe the 1930s sound deck system is not the same as the 1970 sound deck system, but it was enough that I could see what's happening. So let me explain the sound deck system. First of all, we go by sound, and there's a lot of times the sign on H's, for example, and I guess there's sign on W's, but we're gonna delete any H's or W's, but only for the number. In other words, if your last name starts with Williams, we're still gonna start with the W, but the W won't contribute to the number. I'm worried about the number now. All right, so anyway, throw away H's and W's, and then assign zero to any vowel, this sounds like a vowel, so we'll throw that in there too, because remember, it's the sound we're interested in, and then we'll do this and do this and do this. All right, so there's no seven and there's no eight and there's no nine, so the numbers are zero through six. That's how Jackson would be. That's the initial, we're still going. All right, now what's next? Now, if you have any two or more letters that have the same numeric value, so these, the C, K, and S, two, two, and two. Okay, if you have at least two of these back to back, the letters don't have to match, but if the numbers match, then this first one will knock out all trailing ones, so this two knocks out those two, so now I'm here. Okay, now, if the first character was not deleted, like if it's not a nature and not a W, then, for example, I didn't cancel out the J. I mean, the J's there, it was coded, the J is two. Now cancel out that lead character, where is it here? This lead character is now canceled because it's a lead, this came from a lead character, not H and not W. Now cancel this thing out. You have to do this in the exact order, you can't change the order. So now we have this, okay. Now you cancel out the zeros throughout the zeros, so those are gone, so this is all that's left. All right, but we want a three-digit code, so you always fill in with zeros, so I'll do this, I'm filling in with zeros, and what if you have, some people have a long, long, people from India have very long names, and so they might have four or five digits here, but we'll truncate, so always fill in with zeros or truncate if you have more than three, that's the code. Now, let's quickly do, it turns out that the code, letter zero zero zero is super common, especially among Chinese people, and you'll see the reason why, let me do the shawl first. First of all, we cancel the h and cancel the w because you throw those away at the outset. We don't even assign a number to those, so now we're down to the two for the s and zero for the a. Now we drop that need character because it was not an h or a w, now I'm over to zero. Now you drop all zeros, so now I'm down to blank, and now I fill in, so this is the fill in. Me is the same way, I won't go through all the steps, but the point is I end up with three zeros, and in fact we have 19 tenure track faculty members in the Duluth math department, and seven of them are Chinese, and anyway out of the seven, five of them are, is this five, yeah, five of them were coded zero zero zero, there would be f and three zeros, and l and three zeros, and q and three zeros, and I had abstract alzera two with like, I think 12 people or something like that, and two out of those were coded with all zeros, so that turns out to be very common. By the way, this is not good for people that run license bureaus because you have people with the same license, in the end you end up with these people with ties, this identical, the algorithms are gonna give you duplicate two or more people assigned to the same number, so this is a definite problem. Okay, there's an example of three fives, there's another example of three fives, I actually got this from the Duluth phone book, both of these, and then I mentioned Indian names are very long, and I was thinking, this would be very hard to come up with, in other words I'd have to find some names that had things like this strung out, L, and so on, and I did, I actually tried to find some, not in the Duluth phone book, but I actually typed in things like this where I thought you might have three L separated by vowels, and I found all these, but none of them were in the phone book, this was some singer who has this name, and this is another singer, and I don't, I think this is a group or something, I think one of these is a group, but in any case, so I don't think there's any, I haven't been able to find any real people, but these names are floating around, I don't think they go their driver's license place and use this, but okay, at least it shows it's theoretically possible. Now it's easy to see some, I give you some homework there, exercises, there's some easy impossible combinations, I talk so fast you might not notice this, but the code went only zero through six, no sevens, eights, or nines, so that's why that's illegal, and that's too long, it's always truncated, and this is a little tricky, but remember we always drop off zero, zeros are separators, but then at the end they're all deleted, and so you can, but then the only time you can ever have a zero is, it was filled in the trailing, in other words you had numbers one through six, and it wasn't enough, you had to fill in behind that, so you can have zeros in the back, which could have zeros have to be at the end, a string of zeros, okay. Now, every time, remember I said, every time I thought about any of these problems that I'm talking about credit cards or driver's license, I always say to myself, well, why would somebody do this? What's the advantage? What's the good thing about it? And the good thing about it is it's an air correcting code, and what that means is that you can have the wrong information, or the wrong information to get the right answer, let me use an example, wouldn't it be great if you could dial the wrong phone number, but get the right person? I dialed a several and I was supposed to get a three, that could be done, Mathematicians can design a, Bob Bills and Mongeau could do it while he's eating his corn flakes, any case, they're called air correcting codes. You have to build in redundant data, and the redundant data will recover the missing incorrect information. But this is done by sound, everything's done by sound. So this is the way my daughters, I won't bother with the middle name, because I'm just illustrating a point. But this is how it's correctly done, but if they misspelled their first name, they misspelled the last name, these M and N's are coded the same, here's an I, here's an E, those are coded the same, here's an O coded the same as A, H is silent, yeah. Okay, all incorrect spellings, but correct coding. This was designed for people creating the census back in the 1910s and 1920s and 1930s, and people used to knock on doors and say I'm from the Census Bureau, I need information, I need your name and so on, and a lot of immigrants coming in from all over the world, and so it was hard for census people to spell certain names, Z's and W's all over the place or whatever. So anyway, this is designed to fix that. Now there's always a disadvantage, there's a price to pay for everything, and a disadvantage is you can have people with the names don't move very common, not very similar, I mean, but they're coded exactly the same. I'm not talking about birthdays, but if you have enough of these collisions, computer science called these collisions, see we only use the JOS here, see if this was Joseph, this would be coded differently, but the only JOS here, we only use the L, Y here, and here M and N are the same, H is silent, I and A are the same. Okay, so if you have a huge number of these collisions, then sooner or later you're gonna have people ending up born on the same day. John, William, Smith, there might be 100 of those in the state of Minnesota or something like that, and if you're only coding the birthday, you're gonna have lots of collisions, lots of overlaps, identical license for different people. All right, so that's a disadvantage. Okay, here's the recap. I can do, last things we can do because I had sound decks, I say most middle names because some name might have been very, some biblical name or something might have been very common in 1910, it's not very common now, so I don't know what are the super common names, not common names, I wasn't exactly sure, and I could do almost birthday, but there's some of these random gaps somewhere. See if I had 10,000 samples, I could probably fill everything, but I didn't have 10,000 samples, I had maybe like 75 samples, so I'd say somewhere in November there's a funny gap, but I wouldn't know where because I don't have enough data. Okay, well I thought this was incredibly interesting. This is great stuff, I love this stuff, and it took me a number over a long period of time to figure these things out, and I'd run into my classes and say, here's what I found out yesterday, something like that, giving them the latest updates. So then I went, there was no internet by the way in these days, so I went to the triple A office and I said, do you have some kind of information that gives me the address, the mailing address of every department of motor vehicles, the states have different names, department of public safety, motor vehicles, whatever. And they had the list, and so I sent it to every state in the union, and I said, how do you code your driver's license numbers? And then I got very interesting responses. Okay, Florida says, this is not the important part, it's here. We are prohibited from exposing its compilation, meaning it's secret. Okay, and then I got one from New Jersey, the identification of requested is not available, by the way, New Jersey Cosa's eye color, eye color is in there, the only state that it codes is eye color. And Wisconsin coding is restricted to internal use only, this is the great part, not available to the public, including law enforcement agencies. So if you're a Wisconsin state trooper and you wanna know something about the driver's license, you cannot find out it's secret. Here's what's this, New York, this is the old New York, not the New York, this is New York up until 1992, when I did this, this was the New York license, they're completely different now. Okay, but it's seek confidential, confidential, yeah. Oh, this is my favorite one. Colorado does not code license on any exact science, there's no exact science. So I say to people, well, if you're in Colorado, you walk in and say, oh, I just turned 18, I'm here to get a driver's license number. And they say, well, would you like Mr. Galleon? We have a special on this number, you know, any case. All right, and then here's Missouri and notice confidential, confidential Missouri, Michigan, the Soundex, oh, I like this when I got this, because look, first of all, it says Soundex and second of all, look these three zeros here. Oh, look, doh, doh, three zeros. If you look at this, this looks very reminiscent of Minnesota. And in fact, I never got a response at all from Minnesota, no response, but Michigan, I wrote back, I wrote the door back and I said, thanks for sending me the great information, I really enjoyed that. And I have a question, what do you do about ties? Because it was obviously ties and I got this interesting information. They had about six million driver's license and there were 56 numbers that corresponded to more than one person. One particular number had four people sharing the exact same number, exact same number. And there were three numbers that three people shared and the other 51 was double-shared. By the way, I did write her back a third letter, yeah, third letter, and I said to her, well, how do you handle those four-way ties and three-way ties? That's a disaster. If somebody else had the same license as me and they were drunk and driving, hitting, what do you call it, hit and run and all kind of accidents and things like, I don't want, and she says all duplicate license are flagged in the computer and if a state trooper or insurance person ever looked, anybody that ever looked up to driver's license, there'll be a warning. This is a multiple number issued to multiple people. Please check for their records like social security numbers or something else or years or whatever. But that's built, they have a way to handle them. It's not a good way. Oh, this was the best of all. It's Maryland and our code book is not confidential on code. It's like, it's maybe like 20 pages long. When I looked at it, it's the Minnesota system and the Michigan system. In Minnesota, they didn't answer my letter in Michigan, it's confidential, but in Maryland, the same system, they'll send you the code book. And I said, oh, here's the, here's those random, now I know where all those weird gaps are. Now I knew where all the strange names were. Everything's in there, everything. Here's where the tie breakers are used. So complete information. By the way, when she sent me this, she also sent me, this is driver's license numbers with her picture on it. She sent me a license plate from Maryland, license plate, it said sample. And I used to bring it to these talks, I don't forget anymore. But one time I had it in my suitcase and I'm going through security. And somebody's looking in there and they call somebody else over and they're both looking in there. And I hear someone for, it looks like a license plate. And I said, yeah, it's a license plate. Any case, okay, Minnesota changed their system in 2004. And I already said New York changed their system. And Michigan and Maryland, as far as I know, they're the same. In fact, I recently checked a friend in Michigan and he said that it's the same as the old system. I give you some information about, I have information about huge numbers of states, almost all of the states. Most states don't encode personal information at all. Some of them use social security numbers, some of them have a computer generated number, but those are boring. And in case, I'll just go over these real quick. But all in all, in Florida, they do use the sound system, but they use different ways. That's the last name. Different methods for the first name and middle name. And they also use the year of birth. And like for example here, the way they code the year of birth is, this is the year and that's the day. I'll explain how this day comes in a minute. But notice what they do. If you're born in 1940, they don't put 40 here, they put four dash zero. If you're born in 65, they put six dash zero. And I speculate, I'll let you speculate for a moment. This is a very good idea and I think you might wonder why. Women should guess it almost right away while I'm stereotyping. But try to think, why would they want to kind of disguise this? Because some people don't want it. I don't want you to know that I'm 77. I'm 77. I don't want you to know that. And some women might say, I don't want people to know I'm born in 1940. But if you see it this way, I was telling it earlier today, when students send me, they have to send me their social security numbers when they come to my RU because I need to pay them. And I say, disguise your social security number, for example, instead of writing it, one, eight, nine, six, five, instead of writing in that format, write one, eight, leave some space and then write two more digits and then write five digits or write part of it on one line, part of it on the next line. And then Mongeau said to me, he sends a few numbers and then puts some random stuff like x, y, z, two, one, five, w, z, or whatever and then some more of it. So you see there's garbled, but people are tipped off. So that's just, like for example, in the state of Washington, they disguise in the following way. If you were born in 1970, for example, they would take 70 minus 100 and they were with 30. So a young person, you wouldn't say, well, that 30 means they were born in 1930 because you're looking at somebody that wasn't born in 1930. So they disguise it by reversing it. Old people look young and young people look old. Okay. So, oh, another, I think this is interesting. This is what non-mathematers love this. Wouldn't it be great if every month had 31 days we could figure out, so what happens? Why is this, next number here. So why is April 13th coded 106? Because we always assume that all months have 31 days and so three months, April would be the fourth month and 13 days into the next month. And then women, women you add 600 so that they make a distinction between men and women. And Florida, oh, this is even better because multiplying by 31, oh, multiply by 40, what's 11 times 31? I don't know, but what's 11 times, oh, that's easier. So every month has 40 days, okay. But now you can't add 600. It turns out, let me show you the formula. You only add 500 and the reason why is Florida counts every month of 41 days and say you're a male born in Florida, March the third, okay. Then it's 31 days for January, 31 days for February, and March the third, they take the three and doubles. So it's 31 plus, sorry, 40 plus 40, I keep saying 40 plus 40, it's 40 for each month, then double the day so it's two times three and for men they double and add one. So the point is when you add 40 and add one, when you double and add 40s, you can't add 600 because it would be too big. It would, you have more than three digits so they add 500. As you can see this stuff, I thought this was really great and I thought, well, see I like to do, I enjoy writing, my thing that I like to do best is communicate mathematics. One way to communicate is give talks, another way to communicate is teach, another way to communicate is write articles. And so I enjoy writing articles that a lot of people can read. There's a lot of very important articles that not many people are capable of reading, they're just too difficult. I like to do the opposite, I try to write articles that a lot of people can read. Okay, so then I write an article for the math magazine, it was called a signing driver's license number, but I could have called it something, everything you ever wanted it, everything I know about driver's license numbers. All right, so anyway, then the math magazine is put out by the Mathematical Association of America, the MAA, and the editors of the math magazine tipped off the MAA that they would like to see a news release, mathematician figures out driver's license. You know, like for example every now and then I'll see some math thing, like if somebody discovers the latest from all, you know, the latest, the biggest non-prime or something like that, it might show up in the newspaper, things like that occasionally show up in the newspaper. Stuff about physics and particle physics and astronomy show up in the newspaper all the time but hardly everything about math. So they had a news release, I never thought anybody paying attention, but news release means that these major papers have science editors, they send it to the science editor. And sure enough, they got some people that read it. So I got a letter from that Nashua, New Hampshire, Sunday Telegraph, Science and Technology Editor. And he says, I got this news release and so he did write about, he wrote about driver's license numbers. Minnesota doesn't use modern arithmetic but Wisconsin does and lots of states use modern arithmetic for the check digit. There's something called a check digit. And he really, he says, why wasn't I ever taught modern arithmetic? That's really cool, this science editor. Any case, and I told him I know how to do a little bit about, I knew something about social security numbers. Any case, so he wrote that article. And then people in New York might know Malcolm Gladwell. In fact, I think he was probably around here somewhere. Any case, he used to be the science writer for the Washington Post and he wrote about Maryland. At the end of the article, he credits me. He says, you know, Professor Duluth says that Maryland driver's license. But he tried to simplify the coding system. He said, drop the Hs, drop the Ws and drop the Vals right at the beginning. You can't do that because, you know, the Jackson, there would be the M and the N or five, zero, five, but both fives remain because they were separated by a separator. So anybody tried to follow his algorithm would be totally wrong, but, you know, I don't think anybody bothered. But any case, but it was in the Washington Post. Hey, you know, Nixon, what's that, this guy's name, Deep Throat, the reporter. Woodward and Bernstein, Washington Post. Okay, this is the first golf war, the first George Bush, and this is the front page, the Norman Schwartz golf leading the troops, madness. 12-digit madness in Minnesota. They're talking about, okay. So I'm sure that at least half the readers went immediately to 1B. You don't even look at this. And the other half went to the sports section. Okay, so, I'm just here. All right, so anyway, that was Minnesota. Okay, here, that's the biggest paper in the state. Here's the second biggest newspaper in the state. They like the other word, crack. No, crack mathematician. Here's what's that called. The superior tower. Different state, we're going to Wisconsin now. The Fairmont, Minnesota, that big famous newspaper. St. Louis Post Dispatch, the method in the maximum shakes for madness. Okay, international, the Winnipeg proved for us. By the way, this was also on lots of news programs. I was on two local TV stations. I was on a Washington D.C. radio station. This is JJW, I'm making up initials. Calling all, talk real, from Washington D.C., calling about the Maryland driver's license, I want to talk to you about it. In any case, I talked to him about it, and I also talked to some guy from St. Claude State on a call-in radio show for like 20 or 30 minutes or something like that. And then he said, after I was done talking about how Minnesota driver's license was totally, he says, Dr. Gallant, with all the cuts going on in higher education, this is proof why we shouldn't be cutting education. Well, I don't think this is proof, but there's a lot better reasons. Like, students that are in eighth grade are still doing work at the fifth grade level, for example. All right, so the post-dispatch, they were most interested in doing how Missouri's done. Okay, and I said, well, actually, I was at a party one time, and I was able to collect a few samples of some people there from Missouri. And I said, I see your driver's license. And they said, sure. I said, this is very interesting. So I had just a few samples, and with those few samples, I was able to figure out how the birthday was coded. And then for the newspaper guy, I said to him, well, I need lots of samples. I told him about the samples I got. He says, but our newspaper has 1.5 million on computer, it's a newspaper. And I said, well, fax me 500 samples. And I said, lots of overlaps, lots of Smith's and Jones. You'll see why in just a minute. You want to overlap, overlap duplication. Now, here's the key idea. You want overlapping data because of what I said before. If you have a January 7th and a January 8th and a January 9th, you know exactly what you moved, and you can see how the numbers changes. Okay, here's an example. So I have an Arthur Conrad Smith born on this date. I already know how to do the birthday. Okay, and I have an Arthur Conrad Smith. So these all match. Okay, the only thing that doesn't match is the date of birth. So these digits right here, these last three digits, we definitely know that that's the birthday. All right, so the point is, how do you figure out what the, well, if you have three or four samples you can figure it out. I'll explain later, but this is the code here. So they count each month as 63 days. Each month is 63 days, and then for men, you double just like Florida, and then you add one here. All right, so anyway, let's code January 1st, January 1st of female. So we're in the month of January, so you get 63 free, and then we're January 1st, so I get two more here, and a female will get one more. So 63 plus two plus one, that's 66. Okay, so that's how it's coded. All right, now what else? Now we can ignore the last three digits because we know how to do them. Once you know how to do something, do you ignore that from then on? Okay, now we wanna work on this. So you wanna say, well, look, I want matching, these numbers are exactly the same, so this tells you that the second letter can't be counted, because if it were counted, these would be different. These numbers are different, these letters are different, but these numbers are the same. So now we know the middle initial counts only, nothing else but the middle initial, unlike Minnesota and Michigan, and the same thing happens here. But the next question is, well, how much do they count? In other words, like here's an E and here's a C. All right, so that's the next slide. So what I wanted to do is I had a Wim C Smith, a Wim H Smith, and a Wim K Smith, and the only thing changes is this middle initial, and this is a shift of what? So we changed this from C to H, it was a five shift in the alphabet, and there was a five shift in the number. Then from H to C was a three shift in the alphabet, and there was a three shift in the number. If you had a seven shift in the alphabet, there was a seven shift in the number. So that means A is one, B is two, you just, every time you shift the alphabet one, you shift the number by one, you just goes one, two, three, four, I call those the weights. So you just keep adding one each time. Okay, so that's done now. So now we look at, I'm skipping middle initials. So now I look at this, here's a Jones Smith, and here's a John Smith, and these two, well, let's see, yeah. These two things are, let's see, I got stuck on this the last time. Yeah, okay, so this is different here, and this is different here, and then the question is how much was the shift? I went from A to H, that's a shift of seven positions in the alphabet. So in position three, I'm starting at the end of the name and working towards the front. See, I was in the middle, now here, and then here, and then here. Okay, samples told me that the middle, only the first, I'm looking at lots of samples only that I knew in advance, only the first three letters count of your first name. All right, so now the point is if I shift, if I, in position three, if I shift seven, how much did the number shift? So shifting seven gave me 188 shift in the number. By the way, for those who remember high school algebra calculus, one of these is the rise of the slope of a line. If you change a certain position in the X, and you change a certain position in Y, the change in the Y over the change in the X is the slope of a line. So this is the change in the Y, the output, this is the change in the input, and so 189 over seven is 27. Okay, what does that mean? Every time you go from A to B to C, you keep adding 27, 21 times 27, two times, so the weight is 27. All right, now we move to the next square. Now, second letter of your first name, I'm moving from left to right, middle initial, third letter, second letter. Same argument, you look for something that match the first letter matches, second letter mismatches, see what the shift is, see what the shift in the alphabet, see what the shift, well, these are shifting by 27 square. Every time you move in the alphabet, you add 720 square. Okay, now, so now I wanna move, there's only thing left is the first letter of your first name, and let's take a guess. So let's recall, remember the middle initials of the shift, the weight, the shift, the slope, the slope was one, that's 27 to zero. Here, for this one, it's 27, which is really 27 to the one. I'm trying to see a pattern, the pattern's in the exponent. Well, the shift was, there was here, moving to the next character over, that shift was that, next character over, the shift was that. So this pattern, how many take a guess? I want everybody to think, take a walled guess, and with the first, what is the weight? What's the slope? When you look at the first letter of your first name, it's gotta be 27 to the account five. One, no, I don't wanna count three. One, two, three, four, five. Three. That's not right. That's why you have to guess. I mean, that's why you have to check. I was totally astonished. I was sure that this is gonna be right. But when you check the data, it wasn't right. This is the right thing. This is the right thing. Turns out that there's a good reason for it, but I don't have time to talk about it. Okay. Now, now we're going to the last name, not sound vex, not sound vex. Last name, first thing you have to decide is what counts. Well, we know in Missouri that if your last name is Kerry, then the K will be there. But the question is what about the number? Does the K have anything to do with it? Turns out by looking at samples, if you had a John, Arthur, Kerry, and a John, Arthur, Barry, they'd be coded exactly the same, even though these first initials, the only difference was this would start with the K, that would start with the B. So the first initial is there, but not for the number. So we can ignore this thing when we're trying to figure out the number. All right. And using samples that only these count. In other words, I compare two names that match in the first five places, but mismatch in the sixth, but they still code the same. So the sixth Kerry can't be involved. Okay. So now we know how to do that. Now, the next question is how do we do the weights? Well, I won't, I'll just go, the weight is exactly the same. You pick somebody that differs in the last, the fifth character of the last name, see what the shift is. The shift in the alphabet is 10. What's the number shift? Divide that number by 10. And you always got the shift in the number by the shift in the alphabet, and that should give you the slope. In fact, these are the slopes. Okay. Now, think about how amazing this is. So if I, if I have a Joseph A. Gellian spell like this, and a Joseph A. Gett, remember only in the middle initial counts, the only different about these two things is this is A, and that's an I. That's a shift of eight, eight in the alphabet. But if I make this one little tiny change, even move them A to B, a GA to a GB would make a 10 billion change in the number. A GA to a GB, everything else the same. But if you go from a GA to a GL, there's an eight times 10 billion, what is that? 80 billion shift to go from A to I. Anyway, that's pretty amazing. Now again, you should be saying to yourself, why would somebody devise a system like this? There must be some advantage to it. And then I thought about this. Okay. Well, first of all, let me show you the formula. This is the formula. And I know these weights are correct. By the way, the reason I know the weights are correct is, if you give me any valid number, like suppose I had my number and I want to get Bob Bills' number. Well, then I compare my middle initial to your middle initial. I'm A in your, what's your middle name? M, I'd have to figure out the shift. Say it's 11 shift. Then I just add, in that character, my contribute one and his it would be 11 more if the shift were 11. Then I look at my second, fifth letter of mine, last name look at his fifth. I can take a valid number and shift, shift, shift back and forth, back and forth. And every time I started with a valid number, I could shift backwards or forwards, depending on which one. And then I would get the right answer. But when I started from scratch, I got the wrong answer. Yeah, okay, let's code John Winston-Lenin. So this is John Winston-Lenin. Remember, only the middle initial count, only these three count. That doesn't count because it's just a letter, not the number. That doesn't count because only the first five count. Okay, that's the number it should be if I use the formula. But it turns out it was off. It was off by this amount. And then if I do James Paul McCartney, it's off by that same amount. And if I do George Harrison, it's off by that same amount. Oh, then you say, I see what's happening. I'm just doing many of your lines, straight lines and multidimensions, these slopes and so on. So I made the assumption that everything would pass through the origin. In other words, there's a constant at the end, but it's zero. That's the assumption, I mean. But that's incorrect. It doesn't have to have a constant at zero at the end. You could have any constant. So that's the constant. So now what happens is I add this constant to that formula I just showed you and it works on, I tried on six names, eight names, nine names, right answer, right answer, right answer. And then all of a sudden I tried it on a name like Lee and it failed. It worked on nine in a row. Now think about yourself. You think one of those weights could be wrong. I had the wrong, that 10 billion number that's wrong, it's off somewhere. And yet it worked nine out of 10 times. Those formulas have to be right. So something's wrong. Well, it's the shift again. So the point was these are all wrong, but they're all wrong by the same amount. So that's the shift. Okay. And then I said to myself, what if you have a two letter name? Why didn't I have any two letter samples? So I write an email to the St. Louis Postal Trust, send me some poos, some loos, some hoes, some use. And sure enough, they're all wrong, but they're all wrong by the same amount. Okay, so here's what you have. Four or more letters, this is the constant, exactly three you have this one, exactly two you have this one. And I never even entertained the idea that your first name would have a single character, but the algorithm probably handles that some way, but I didn't have any data. Okay, so I faxed that to the Postal Spatch. Now, the guy at the Postal Spatch, I actually had some conversation with him by email and he said he was a computer science type and he enjoyed talking to me about this. He was, in fact, the newspaper asked him if they asked him to take the same data I hadn't tried to break the code himself. And he said he tried to break the code and couldn't do it, so that made me feel good. Not to say that it, look, the students I get in my higher career, this would be something that they could do in no time if they had the data. Any case, the point is that, so this is his letter. Like so many of us, you are almost perfect, it seems though that your algorithm is off in just a slight little case. When the first name is just a single initial, so here, look at this. This is just, that's not, D is not the name, that's, I mean, D is not the initial, it's a name. This is not, that's not the name, that's, I mean, that's not the initial, that's the name, the name, the name. The name is the letter. Okay, in that one case, I'm always off. There's, whatever, 64 cases there. I'm off in exactly 64 cases. But I'm always off by exactly 26,000. So add 26,000 under this one more. Now I'm right 10,000 out of 10,000 times because that was the only exception. Now imagine if you were a scientist like biologists or especially biology because that's not the exact sciences like physics is. But, and you had some theory that explained, well, you know, something in biology and it was right 10,000 out of 10,000 random we chose the samples, it would be unbelievable. All right, so anyway, oh, so that's the fix. All right, now what's the advantage you say? There must be some advantage, I'm going to that. All right, here it is. It's invertible for those of not technical, it means you can go backwards and like, for example, if I take any number in Qubit, if you take any integer in Qubit, if I Qubit three I get 27 and no other integer will give me 27. On the other hand, if you take square, if you take two and square it, you take minus two and square it, you get two different inputs give you the same output. Invertible means you can work backwards and get the exact answer that started with. Everything goes backwards. If you put some data in and I give you the answer, you can work backwards and get the exact input. The output determines the input, that's invertible. And so that's the advantage, that's why they had to shift things because every time they got some overlap you would shift a little more, you would shift a little more and then that would break the overlaps. Okay, but almost always, almost always. And the reason why I know almost always, not from samples, because I try to prove a formula was one-to-one. If you're in calculus and I say prove y equal x cubed is equal to one-to-one, you say suppose a cubed is equal to b cubed and you prove a is equal to b, the output's equal. And when I set this thing, I had x one up to x 10 or whatever it is over here and y one up to y 10, then I try to prove x one is equal. I try to prove all the inputs are equal to, but then I kept getting counter examples. Like here's the counter example. This name, if your first name was ZZZ, that's your first name, your middle initial D and that's your last name and somebody else has that's their first name, that's these names are coded exactly the same way, exactly the same way, okay. Yeah, and then I say something like this, I go on to say down here, I wrote an article and in the article I said, well, you get these overlaps, these duplications and one-to-one is destroyed, invertibility is destroyed, only when you have a bizarre mixture of Z's and Y's. If you have a bizarre mixture of Z's and Y's, then it's not invertible. But I said, don't worry about it, it'll never happen in real life, it's never gonna happen. Okay, now, yeah, there it is, those are the same. I open up the dilute distribution, hello, Zach Zizz, I'm a bizarre mixture of Z's and Y's. I said, I can't believe this. So I go over to my computer and I type in Zach Zizz and this is the input, that's the output, now I do the reverse algorithm. I type in the output and this is the, I don't get Zach Zizz. The computer thinks it's a blank, your first name is blank, B, B, Z, Z, Z, Z. Those are overlaps, okay. All right, so, oh, wait, I'll throw this in. All right, so now, I'm almost at the end. Okay, so then a strange thing happened, many, like 20 or some years ago, a long time ago, I got a phone call from a cancer researcher at the Twin Cities campus, University of Minnesota, Twin Cities. And he says, are you the guy who knows how to do Minnesota driver's license, I said yes. And he says, well, you can help us out down here on cancer research. I'm totally floored by this. And I says, well, yeah, sure, I'll send it, you know, what do you need? He says, well, can you send us the algorithm? I said, sure, I'll send it to you. And in fact, I think I even go to the computer program. I gave him a thing where he could find a computer. Although, I don't remember now. But in any case, I sent him the code. Unfortunately, so I don't have a recording. You remember, he called me. But this is what I said right after he called me, I say, this is my letter. I put it in the middle of you today. I would appreciate knowing how this information is useful to you. Because he said it would be useful if he didn't say how. I said, I occasionally give a talk to this and I'd like to be able to say, hey, this was used in cancer research and here's the reason. Well, it's a little complicated, but if you read this, it turns out like this. They have a big data bank and they want to see how long people live. And a lot of people are from rural Minnesota. Like maybe you were treated for cancer in 1960 and they want to know did you last till 1982, 1965, or whatever. And when they try to contact people, they say they no longer, they had their home address in 1962, but this is 15 years later. The home address, they said, address unknown. So they called the department motor vehicles and they said something like, can you tell us if I said this person's this born and this is the name and so on, can you tell me if they're still in Minnesota? Can you tell me that? And you have to remember this is a long time ago. What is this? 25 years ago. And she says, the only way we can query our database is you have to have the number. They can query the driver's license number. Well, you have the number. They don't have the number. So my algorithm's a Rosetta stone. They have the name, they have the birthday that gives you the number. The number gives you the information about that they have on file. And that was the application. I mean, it's a little weird, but it worked. All right, so anyway, the lesson you learned you never ever can tell when the weirdest thing might turn out to be useful. And in fact, about five years after that thing, somebody else contacted me and they had some similar thing where they were able to find something useful by using this algorithm. All right, I have one more thing to say. So Minnesota Public Graduate has a network all throughout the state, for Minnesota public tells. And they have some of their own broadcasting. And every Friday is something like eight o'clock they have a show called Almanac. And it's usually about the state legislature, about politics in Minnesota. And they have guests just like you see on cable news all the time. The exact same thing except they were doing it back in the 80s and 90s. But it's the same format as cable news. And they said, we'd like you to come on Almanac. And I said, what do you mean come on Almanac? Well, co-driver's license for us. And when we'll film it, I says, okay, well, sure. I'll do it. And so they actually, okay, yeah, I have to figure that. So they showed up with a camera crew and they wanted me to co-driver's license numbers. Let's see if I can do this. At certain points in history, a great thinker will step forward and advance the cause of human civilization by solving one of the mysteries of the universe. Such a man exists today in Duluth. UMD mathematician Joe Galleon has deciphered the top secret formula that the state of Minnesota uses to determine your driver's license number. Galleon's quest began one day at breakfast. About five years ago, maybe six or something, I was eating my cornflakes in the morning. They said the Minnesota driver's license people didn't want to give you the formula. Do you think, are they concerned that this information would fall into the wrong hands or something? I guess, I don't know, but here's what I see. I mean, how many guys that do fraud and forgeries and so on read the math magazine. I imagine this is the kind of thing that would come in real handy for bar bets, that kind of thing, you know? Do you win a lot of money that way? I don't drink, I don't go to bars. All right, that's it, thanks. Hey, hey, by the way, one quick thing. I still own that shirt, that one was at night. And my wife says, why don't you throw that shirt away? Well, I say to myself, I'm never gonna throw that shirt away. That's the one I have, Minnesota driver's license. And every now and then I say to myself, I'm gonna wear that shirt when I give one of these talks and see if anybody notices, but I never did. All right, go ahead. We can entertain a couple of questions. Are you aware if any states have changed their coding because you've revealed their... Because I did, I have no evidence of that whatsoever. Maybe let me say one quick thing because it's related to what you said. But I actually had all this stuff on my web page, that Bob Bills talked about, and it would say, encode your Minnesota driver, decode or whatever. I had that all on the website and you could do that. Anyway, and I think a fair number of people were looking at it. And anyway, so I got a phone call one day and somebody said, I didn't answer the phone, but it was a voicemail I should say. And she says, do you aware that you're helping terrorists because they can take their number and go in and create a phony driver's license number. It's really phony, but I mean, it has the right data. It wouldn't be wrong for any correct reason. All right, anyway, and I just laughed it off with just a voicemail. And then anyway, then I get another phone called next day and the same lady says, I see you still on the web page. Just say, well, this is outrageous. You're helping terrorists, don't you realize this? And I just laughed it off because terrorists, they're not gonna read the math. Look, you're just still a credit card, still a driver's license number. Coffee for somebody else or whatever. Or go down and actually get a rally driver's license number. You don't have to say I'm a terrorist. Okay, so I just laughed it off. So then the person, on the third day, they wrote an email to my dean. And the dean was on vacations in Arizona or something like this. And he immediately writes back to me and coffees my department had, the chancellor for academic affairs. And he says, what's up with Gallant typing terrorists? That's what his letter said. And he wants somebody to check into it. Well, the department head comes down. What's this, you're helping terrorists? And I said, oh, I just laughed it off. And then the department head said, well, it's academic freedom and so on. But anyway, and then the dean said, no, no, no, no, get it out of there, get it out of there. So I pulled it out of there, I took it off. And I never put it back on. But then later on, some other guy created my same data and he put it back up again. And he used to say on the end that he got this from me. And I checked the other day and it's still up and he took that little acknowledgement out of there now. But anyway, yeah, oh, I'll tell you one more part of the story. So yeah, there was one more thing, phone call from that same woman. I forgot to tell you this. So I guess I lost a number of accounts. But finally on the last phone call, the third or fourth or whatever it was, she says, if that's still up tomorrow, yeah, this is before I pull it down, I'm going to inform somebody. Now I'm going to pause for a minute. Who do you think, if you were thinking you actually had somebody that was helping terrorists, who would you inform about that? FBI, good guess? CIA, good guess? Homeland security, good guess? It was, what is it? Good guess? But the real answer is CNN. I thought it would be, I can't be on the floor. I thought it would be Fox News for sure. Liberal president helping terrorists, bleeding heart, or liberal. Anyways, yeah, all right, any other questions? I don't know, let me repeat the question. He said, does anybody, as far as I know, did anybody try to use my website or my information to fake a Jarvis? I said, well, I don't know. I just don't know the answer. They certainly wouldn't tell me, hey, thanks for helping me out. Do any states use a serial incremented number? Oh yeah, yeah, I think some states do that. Some states use, a lot of states use randomly generated numbers. By the way, somebody asked me about changing. There were quite a few states out of, I'd say somewhere around half a dozen, used to use social security numbers, like 30 years ago or something. Those are all gone now. Nobody used social security numbers anymore. But even back in those days, remember, I have something, I have something like 30 letters. So some of those states say we use social security, but anybody can opt out. So they all, like Washington used social security, but you could request to not use social security and they would honor that. So the states that use social security numbers always had a backup method. And yeah, and some states I know use serial numbers exactly you said, but a lot of states use randomly generated numbers. It just generates a number and it's, the computer automatically knows that it's not duplicate. One more hand for our presenter. Thank you.