String Matching Algorithms

Total Page:16

File Type:pdf, Size:1020Kb

String Matching Algorithms String Matching Algorithms Chris Muncey 1 Questions ● Who are the inventors of the KMP algorithm? ● What type of hashing algorithm do we use in Rabin-Karp (the type, not the name of the specific one we discussed)? ● What is the time complexity of both algorithms? 2 About me ● Chris Muncey ● Course-only Master’s Candidate, no research interests ● A visor: None at the moment ● . enjoy basically anything low level ● . li0e coo0ing ● . was born and raised in Knoxville& about 20 minutes from campus ● 21 is the closest thing to a sport I like * Pictures 3 4utline ● -aive algorithm ● Knuth-Morris-Pratt algorithm ● "abin-Karp algorithm ● Uses outside of text matching 6 History ● A fast pattern matching algorithm was eveloped in 1970 by James H. Morris and <aughan Pratt ● Donald Knuth independently discovered the algorithm around the same time because he+s Donald Knuth ● >he three published it /ointly in 1999 ● Michael 4; Rabin wrote a paper on fingerprinting %hashing) using polynomials in 1981 ● He and Richar M. Karp used it to create a fast string searching algorithm in 1989 @ -aive algorithm 9 -aive %brute force) algorithm ● Needle string n of siAe - ● 7aystack string h of siAe H ● Ensure that H is greater than or equal to - D n E “PneumonoultramicroscopicsilicovolcanoconiosisG isn+t going to be in h = FabcG ● Start at offset 0 of n and h& compare up to N characters, stop on first mismatch ● .ncrement offset of n and h #y 1, repeat ● 4verall time complexity of 4%-7), not very fast ? -aive algorithm visual n = “>IIAG h = “C>>IIAIAGCG 8 Where does this go !rong? ● 2or every letter in h, we are potentially doing up to - comparisons D On long matches !ith a mismatch at the end& we do N$1 comparisons D When !e hit that mismatch, !e move #y one& and potentially have the same situation D Consider n = “aaaaa”, h = Faaaa;;;aa” J We have to do 5 comparisons for every character in h ● We can apply some optimisations to eliminate this extra wor0 11 Knuth-Morris-Pratt algorithm 11 Knuth-Morris$Pratt algorithm ● Needle string n of siAe - ● 7aystack string h of siAe H ● Ensure that H is greater than or equal to - ● Similar to naive algorithm, but we can jump by more than 1 character ● .f n has a repeated prefix, we can jump to that offset in n on a mismatch ● .f it doesn+t& we can jump all the way to the mismatch location in h ● 4verall time complexity of 4%-K7(; ● 4%-) preprocessing, then O(H) matching ● Effectively linear time string searching 12 KMP algorithm prefix array ● An array with the number of matches to the prefix of the string ● Usually the first one is reserved as a sentinel, #ut not al!ays ● 4n mismatch& we can move move our pointer in n to the index given by pre') D Special case needed for the -1s obviously ● .f our mismatch was at position 9& we would move n to index 3 and compare the same spot in h to that ● We 0now the first * letters will match, so we on+t need to check them 1* KMP e)ample ● 4n the first * mismatches, we can only move by 1 ● 4n 3th, we can move #y several spaces because !e 0now a match can+t happen bet!een the t!o points ● We align the prefix of the string !ith the matching suffix 13 What makes it linear time? ● >his is very similar to the #rute force metho , #ut there+s one key difference ● >he algorithm never #ac0tracks in h ● .n the #rute force algorithm, you can look at up to - for each letter in h ● With this one& if !e have a match or partial match, we can skip anything that !e 0no! can+t also be a match D .f !e don+t end on a repeated pre'), there can+t be a second match D .f !e do, !e can jump to that instead ● >hus this algorithm is linear time& O(N+7( ● Back to n = FaaaaaG& h = “aaaa;;.aa” D We can start at the end of n every time because we kno! the first 4 !ill match 16 "abin-Karp algorithm 1@ "abin-Karp algorithm ● Needle string n of siAe - ● 7aystack string h of siAe H ● Ensure that H is greater than or equal to - ● 7ash n, hash N characters of h, compare the hash ● .f match D =ouble check it with naive approach to make sure ● .f mismatch D "emove 'rst character from hash of h, add ne)t character ● 4verall time complexity of 4%-K7( ● Assumes good hash function& fe! collisions ● Worst case still 4%-7(& but only with a terrible hash function 19 Hey !ait a minute;;; ● We can+t just edit a hash value li0e that, that+s not ho! hashing works ● We need a special type of hash algorithm, called a rolling hash ● 4ne such hash is the Rabin fingerprint: ● <iew message n of length - as an polynomial of egree --1 D f% ( = D d should #e larger than the number of characters in the alphabet of n ● Pick a random irreducible polynomial of egree k over I2(2( D 2or our purposes& this is effectively /ust a 0$bit prime number ● >he hash is the remainder !hen ividing f( ) by p D hash E f( ( N p 1? "abin fingerprint implementation ● Since 256O) gets big, we need ● hash(str, p(, something to ma0e it smaller ● n = str;length, h E 1 ● Key insight ● for i in {0 ... nU D %APM( N C E %%A N C) P (B N C(( N C D / E 1 ● >he original paper was worried about D for 0 in T0 … n - 1 $ iU space, so it pic0ed the smallest prime J / E (/ * d( N p p such that p > log%NH / e( with e < 0 D h KE %%strWi] N p) P %/ N p)( % p being the acceptable error rate ● return(h N p( ● We+ll pic0 101 because it’s easy for the e)amples ● >he num#er of bits in p determine the number of bits in the hash, so !e+ll have a 7 bit hash 18 "abin fingerprint e)ample ● n E Fa#cG& p E 111& E 26@ ● %%%Ya+P%%26@P26@(Np((Np) K %%Y#+P%26@Np((Np( K %%Yc+P(1Np((Np() N p ● %%%89 P ??) N p) K %%8? P 63) N p) K %88 N p() N p ● %62 K 31 K 88( N 111 E 81 ● n E F#cqG& p E 111& E 26@ ● %%%Y#+P((26@P26@(Np((Np) K %%Yc+P%26@Np((Np( K %YC+Np(( N p E 33 ● >o move hash& su#tract top value+s hash& Fshift #y 1G& a ne! value+s hash ● %%%%hash%Fa#cG( - %%Ya+P%(26@P26@(Np((Np(( P 26@) N p( K hash%FCG() N p ● %%81 - %%Ya+P%(26@P26@(Np((Np(( P 26@) N p ● %%81 - 62) P 26@) N p E *2 ● %*2 K %YC+ N p() N p E 33& as expecte 21 Uses outside of text matching 21 Uses of KMP ● =-A matching D =-A only has alphabet siAe of 4, so repeats !ill happen with high frequency D Zots of repeats means !e can skip many chec0s D Still bound #y linear time of course, but KMP is good here 22 Uses of "abin-Karp ● =ata compression relies on finding matching bytes in a file ● "abin-Karp e)cels at this, as the “hash” can just be the pattern bytes D .mpossible to have a collision, #ecause a collision is a match D Guaranteed 4%7( pattern matching assuming you can cram n into a register ● Also very useful for trying to find many needles in a single haystack at once D Simply hash all of the needles& and search for them all as you move through the haystac0 D Wikipedia gives the e)ample of plagiarism detection 2* "eferences 1. https,R/en.wi0ipedia.orgR!iki/"abin%E2%?1N8*Karp_algorithm 2. https,R/en.wi0ipedia.orgR!iki/"abin_fingerprint *; http:/R!!!.xmailserver;org/rabin.pdf a; 2ingerprinting #y Random Polynomials $ Michael 4; Rabin $ 1981 3; https,R/en.wi0ipedia.orgR!iki/Knuth%E2N?1N83Morris%E2N?1N83Pratt[alg orithm 6; https,RR!!!.youtube.com/!atch?vEBf5e/C 19yo @; https,RR!!!.youtube.com/!atch?vEBZ3\#"26?7g 9; https,RR!!!.youtube.com/!atch?vE<6$9IzOfA=Q 23 Discussion 26 Questions ● Who are the inventors of the KMP algorithm? ● What type of hashing algorithm do we use in Rabin-Karp (the type, not the name of the specific one we discussed)? ● What is the time complexity of both algorithms? 2@ String Matching Algorithms Chris Muncey 29.
Recommended publications
  • Donald Knuth Fletcher Jones Professor of Computer Science, Emeritus Curriculum Vitae Available Online
    Donald Knuth Fletcher Jones Professor of Computer Science, Emeritus Curriculum Vitae available Online Bio BIO Donald Ervin Knuth is an American computer scientist, mathematician, and Professor Emeritus at Stanford University. He is the author of the multi-volume work The Art of Computer Programming and has been called the "father" of the analysis of algorithms. He contributed to the development of the rigorous analysis of the computational complexity of algorithms and systematized formal mathematical techniques for it. In the process he also popularized the asymptotic notation. In addition to fundamental contributions in several branches of theoretical computer science, Knuth is the creator of the TeX computer typesetting system, the related METAFONT font definition language and rendering system, and the Computer Modern family of typefaces. As a writer and scholar,[4] Knuth created the WEB and CWEB computer programming systems designed to encourage and facilitate literate programming, and designed the MIX/MMIX instruction set architectures. As a member of the academic and scientific community, Knuth is strongly opposed to the policy of granting software patents. He has expressed his disagreement directly to the patent offices of the United States and Europe. (via Wikipedia) ACADEMIC APPOINTMENTS • Professor Emeritus, Computer Science HONORS AND AWARDS • Grace Murray Hopper Award, ACM (1971) • Member, American Academy of Arts and Sciences (1973) • Turing Award, ACM (1974) • Lester R Ford Award, Mathematical Association of America (1975) • Member, National Academy of Sciences (1975) 5 OF 44 PROFESSIONAL EDUCATION • PhD, California Institute of Technology , Mathematics (1963) PATENTS • Donald Knuth, Stephen N Schiller. "United States Patent 5,305,118 Methods of controlling dot size in digital half toning with multi-cell threshold arrays", Adobe Systems, Apr 19, 1994 • Donald Knuth, LeRoy R Guck, Lawrence G Hanson.
    [Show full text]
  • Modified Moments for Indefinite Weight Functions [2Mm] (A Tribute
    Modified Moments for Indefinite Weight Functions (a Tribute to a Fruitful Collaboration with Gene H. Golub) Martin H. Gutknecht Seminar for Applied Mathematics ETH Zurich Remembering Gene Golub Around the World Leuven, February 29, 2008 Martin H. Gutknecht Modified Moments for Indefinite Weight Functions My education in numerical analysis at ETH Zurich My teachers of numerical analysis: Eduard Stiefel [1909–1978] (first, basic NA course, 1964) Peter Läuchli [b. 1928] (ALGOL, 1965) Hans-Rudolf Schwarz [b. 1930] (numerical linear algebra, 1966) Heinz Rutishauser [1917–1970] (follow-up numerical analysis course; “selected chapters of NM” [several courses]; computer hands-on training) Peter Henrici [1923–1987] (computational complex analysis [many courses]) The best of all worlds? Martin H. Gutknecht Modified Moments for Indefinite Weight Functions My education in numerical analysis (cont’d) What did I learn? Gauss elimination, simplex alg., interpolation, quadrature, conjugate gradients, ODEs, FDM for PDEs, ... qd algorithm [often], LR algorithm, continued fractions, ... many topics in computational complex analysis, e.g., numerical conformal mapping What did I miss to learn? (numerical linear algebra only) QR algorithm nonsymmetric eigenvalue problems SVD (theory, algorithms, applications) Lanczos algorithm (sym., nonsym.) Padé approximation, rational interpolation Martin H. Gutknecht Modified Moments for Indefinite Weight Functions My first encounters with Gene H. Golub Gene’s first two talks at ETH Zurich (probably) 4 June 1971: “Some modified eigenvalue problems” 28 Nov. 1974: “The block Lanczos algorithm” Gene was one of many famous visitors Peter Henrici attracted. Fall 1974: GHG on sabbatical at ETH Zurich. I had just finished editing the “Lectures of Numerical Mathematics” of Heinz Rutishauser (1917–1970).
    [Show full text]
  • Mathematical Circus & 'Martin Gardner
    MARTIN GARDNE MATHEMATICAL ;MATH EMATICAL ASSOCIATION J OF AMERICA MATHEMATICAL CIRCUS & 'MARTIN GARDNER THE MATHEMATICAL ASSOCIATION OF AMERICA Washington, DC 1992 MATHEMATICAL More Puzzles, Games, Paradoxes, and Other Mathematical Entertainments from Scientific American with a Preface by Donald Knuth, A Postscript, from the Author, and a new Bibliography by Mr. Gardner, Thoughts from Readers, and 105 Drawings and Published in the United States of America by The Mathematical Association of America Copyright O 1968,1969,1970,1971,1979,1981,1992by Martin Gardner. All riglhts reserved under International and Pan-American Copyright Conventions. An MAA Spectrum book This book was updated and revised from the 1981 edition published by Vantage Books, New York. Most of this book originally appeared in slightly different form in Scientific American. Library of Congress Catalog Card Number 92-060996 ISBN 0-88385-506-2 Manufactured in the United States of America For Donald E. Knuth, extraordinary mathematician, computer scientist, writer, musician, humorist, recreational math buff, and much more SPECTRUM SERIES Published by THE MATHEMATICAL ASSOCIATION OF AMERICA Committee on Publications ANDREW STERRETT, JR.,Chairman Spectrum Editorial Board ROGER HORN, Chairman SABRA ANDERSON BART BRADEN UNDERWOOD DUDLEY HUGH M. EDGAR JEANNE LADUKE LESTER H. LANGE MARY PARKER MPP.a (@ SPECTRUM Also by Martin Gardner from The Mathematical Association of America 1529 Eighteenth Street, N.W. Washington, D. C. 20036 (202) 387- 5200 Riddles of the Sphinx and Other Mathematical Puzzle Tales Mathematical Carnival Mathematical Magic Show Contents Preface xi .. Introduction Xlll 1. Optical Illusions 3 Answers on page 14 2. Matches 16 Answers on page 27 3.
    [Show full text]
  • Fundamental Theorems in Mathematics
    SOME FUNDAMENTAL THEOREMS IN MATHEMATICS OLIVER KNILL Abstract. An expository hitchhikers guide to some theorems in mathematics. Criteria for the current list of 243 theorems are whether the result can be formulated elegantly, whether it is beautiful or useful and whether it could serve as a guide [6] without leading to panic. The order is not a ranking but ordered along a time-line when things were writ- ten down. Since [556] stated “a mathematical theorem only becomes beautiful if presented as a crown jewel within a context" we try sometimes to give some context. Of course, any such list of theorems is a matter of personal preferences, taste and limitations. The num- ber of theorems is arbitrary, the initial obvious goal was 42 but that number got eventually surpassed as it is hard to stop, once started. As a compensation, there are 42 “tweetable" theorems with included proofs. More comments on the choice of the theorems is included in an epilogue. For literature on general mathematics, see [193, 189, 29, 235, 254, 619, 412, 138], for history [217, 625, 376, 73, 46, 208, 379, 365, 690, 113, 618, 79, 259, 341], for popular, beautiful or elegant things [12, 529, 201, 182, 17, 672, 673, 44, 204, 190, 245, 446, 616, 303, 201, 2, 127, 146, 128, 502, 261, 172]. For comprehensive overviews in large parts of math- ematics, [74, 165, 166, 51, 593] or predictions on developments [47]. For reflections about mathematics in general [145, 455, 45, 306, 439, 99, 561]. Encyclopedic source examples are [188, 705, 670, 102, 192, 152, 221, 191, 111, 635].
    [Show full text]
  • An Interview with Donald Knuth 33
    Bijlage M An Interview with Donald Knuth 33 An Interview with Donald Knuth DDJ chats with one of the world's leading computer scientists Jack Woehr Dr. Dobb's Journal∗ [email protected] April 1996 For over 25 years, Donald E. Knuth has generally been honorable term, but to some people a computer program- considered one of the world's leading computer scientists. mer is somebody who just follows instructions without un- Although he's authored more than 150 publications, it is derstanding what he's doing, one who just knows how to Knuth's three-volume The Art of Computer Programming get through the idiosyncrasies of some language. which has become a staple on every programmer's book- To me, a computer scientist is somebody who has a way shelf. In 1974, Knuth was the recipient of computer sci- of thinking, which resonates with computer programming. ence's most prestigious prize, the Turing Award. He also The way a computer scientist views knowledge in general received the National Medal of Science in 1979. is different from the way a mathematician views knowl- In addition to his work developing fundamental algorithms edge, which is different from the way a physicist views for computer programming, Knuth was a pioneer in com- knowledge, which is different from the way a chemist, puter typesetting with his TEX, METAFONT, and WEB ap- lawyer, or poet views knowledge. plications. He has written on topics as singular as ancient There's about one person in every ®fty who has this pecu- Babylonian algorithms and has penned a novel.
    [Show full text]
  • COMPUTERSCIENCE Science
    BIBLIOGRAPHY DEPARTMENT OF COMPUTER SCIENCE TECHNICAL REPORTS, 1963- 1988 Talecn Marashian Nazarian Department ofComputer Science Stanford University Stanford, California 94305 1 X Abstract: This report lists, in chronological order, all reports published by the Stanford Computer Science Department (CSD) since 1963. Each report is identified by CSD number, author's name, title, number of pages, and date. If a given report is available from the department at the time of this Bibliography's printing, price is also listed. For convenience, an author index is included in the back of the text. Some reports are noted with a National Technical Information Service (NTIS) retrieval number (i.e., AD-XXXXXX), if available from the NTIS. Other reports are noted with Knowledge Systems Laboratory {KSL) or Computer Systems Laboratory (CSL) numbers (KSL-XX-XX; CSL-TR-XX-XX), and may be requested from KSL or (CSL), respectively. 2 INSTRUCTIONS In the Bibliography which follows, there is a listing for each Computer Science Department report published as of the date of this writing. Each listing contains the following information: " Report number(s) " Author(s) " Tide " Number ofpages " Month and yearpublished " NTIS number, ifknown " Price ofhardcopy version (standard price for microfiche: $2/copy) " Availability code AVAILABILITY CODES i. + hardcopy and microfiche 2. M microfiche only 3. H hardcopy only 4. * out-of-print All Computer Science Reports, if in stock, may be requested from following address: Publications Computer Science Department Stanford University Stanford, CA 94305 phone: (415) 723-4776 * 4 % > 3 ALTERNATIVE SOURCES Rising costs and restrictions on the use of research funds for printing reports have made it necessary to charge for all manuscripts.
    [Show full text]
  • Herbert S. Wilf (1931–2012)
    Herbert S. Wilf (1931–2012) Fan Chung, Curtis Greene, Joan Hutchinson, Coordinating Editors received both the Steele Prize for Seminal Contri- butions to Research (from the AMS, 1998) and the Deborah and Franklin Tepper Haimo Award for Dis- tinguished Teaching (from the MAA, 1996). During his long tenure at Penn he advised twenty-six PhD students and won additional awards, including the Christian and Mary Lindback Award for excellence in undergraduate teaching. Other professional honors and awards included a Guggenheim Fellow- ship in 1973–74 and the Euler Medal, awarded in 2002 by the Institute for Combinatorics and its Applications. Herbert Wilf’s mathematical career can be divided into three main phases. First was numerical analysis, in which he did his PhD dissertation Photo courtesy of Ruth Wilf. (under Herbert Robbins at Columbia University Herb Wilf, Thanksgiving, 2009. in 1958) and wrote his first papers. Next was complex analysis and the theory of inequalities, in particular, Hilbert’s inequalities restricted to n Herbert S. Wilf, Thomas A. Scott Emeritus Professor variables. He wrote a cluster of papers on this topic, of Mathematics at the University of Pennsylvania, some with de Bruijn [1] and some with Harold died on January 7, 2012, in Wynnewood, PA, of Widom [2]. Wilf’s principal research focus during amyotrophic lateral sclerosis (ALS). He taught at the latter part of his career was combinatorics. Penn for forty-six years, retiring in 2008. He was In 1965 Gian-Carlo Rota came to the University widely recognized both for innovative research of Pennsylvania to give a colloquium talk on his and exemplary teaching: in addition to receiving then-recent work on Möbius functions and their other awards, he is the only mathematician to have role in combinatorics.
    [Show full text]
  • The TEX Tuneup of 2021 Donald Knuth This Is the Promised Sequel to Previous Reports from 2008 [3] and 2014 [4]. Once Again
    TUGboat, Volume 42 (2021), No. 1 7 The TEX tuneup of 2021 found that TEX’s exit-and-edit option — typing ‘E’ in response to an error prompt—was sometimes of- Donald Knuth fered when it shouldn’t have been, at times when an This is the promised sequel to previous reports from input file wasn’t actively being read. 2008 [3] and 2014 [4]. Once again I’m immensely Both of those bugs could crash the system. So grateful to everybody who contributed potential er- those two doors are now closed. rata to the “core” of TEX and METAFONT, and to Another strange interaction had been noticed in the wonderful team of experts — led this time by 2017 by Udo Wermuth, who found that TEX could Karl Berry — who checked their input carefully and mysteriously seem to stop dead in its tracks while filtered it down to a list of issues that definitely de- \tracingparagraphs was active. (The reason was manded attention. According to our longstanding that TEX had found and reported an error, which plan, I received that list on 31 December 2020. went into the transcript file. TEX was silently wait- Karl will write separately about his role as a ing for Udo to respond to that message, not realizing meta-filter. Let me just remark that, when I did that messages are not echoed to the user’s terminal the previous round of maintenance seven years ago, while paragraphs are being traced.) In the future, I had to deal with “more than two dozen potentially TEX will not remain silent; the user will see the error troublesome topics” [4].
    [Show full text]
  • Donald E. Knuth Papers SC0097
    http://oac.cdlib.org/findaid/ark:/13030/kt2k4035s1 Online items available Guide to the Donald E. Knuth Papers SC0097 Daniel Hartwig & Jenny Johnson Department of Special Collections and University Archives August 2018 Green Library 557 Escondido Mall Stanford 94305-6064 [email protected] URL: http://library.stanford.edu/spc Note This encoded finding aid is compliant with Stanford EAD Best Practice Guidelines, Version 1.0. Guide to the Donald E. Knuth SC00973411 1 Papers SC0097 Language of Material: English Contributing Institution: Department of Special Collections and University Archives Title: Donald E. Knuth papers Creator: Knuth, Donald Ervin, 1938- source: Knuth, Donald Ervin, 1938- Identifier/Call Number: SC0097 Identifier/Call Number: 3411 Physical Description: 39.25 Linear Feet Physical Description: 4.3 gigabyte(s)email files Date (inclusive): 1962-2018 Abstract: Papers reflect his work in the study and teaching of computer programming, computer systems for publishing, and mathematics. Included are correspondence, notes, manuscripts, computer printouts, logbooks, proofs, and galleys pertaining to the computer systems TeX, METAFONT, and Computer Modern; and to his books THE ART OF COMPUTER PROGRAMMING, COMPUTERS & TYPESETTING, CONCRETE MATHEMATICS, THE STANFORD GRAPHBASE, DIGITAL TYPOGRAPHY, SELECTED PAPERS ON ANALYSIS OF ALGORITHMS, MMIXWARE : A RISC COMPUTER FOR THE THIRD MILLENNIUM, and THINGS A COMPUTER SCIENTIST RARELY TALKS ABOUT. Special Collections and University Archives materials are stored offsite and must be paged 36-48 hours in advance. For more information on paging collections, see the department's website: http://library.stanford.edu/depts/spc/spc.html. Immediate Source of Acquisition note Gift of Donald Knuth, 1972, 1980, 1983, 1989, 1996, 1998, 2001, 2014, 2015, 2019.
    [Show full text]
  • Martin Gardner Papers SC0647
    http://oac.cdlib.org/findaid/ark:/13030/kt6s20356s No online items Guide to the Martin Gardner Papers SC0647 Daniel Hartwig & Jenny Johnson Department of Special Collections and University Archives October 2008 Green Library 557 Escondido Mall Stanford 94305-6064 [email protected] URL: http://library.stanford.edu/spc Note This encoded finding aid is compliant with Stanford EAD Best Practice Guidelines, Version 1.0. Guide to the Martin Gardner SC064712473 1 Papers SC0647 Language of Material: English Contributing Institution: Department of Special Collections and University Archives Title: Martin Gardner papers Creator: Gardner, Martin Identifier/Call Number: SC0647 Identifier/Call Number: 12473 Physical Description: 63.5 Linear Feet Date (inclusive): 1957-1997 Abstract: These papers pertain to his interest in mathematics and consist of files relating to his SCIENTIFIC AMERICAN mathematical games column (1957-1986) and subject files on recreational mathematics. Papers include correspondence, notes, clippings, and articles, with some examples of puzzle toys. Correspondents include Dmitri A. Borgmann, John H. Conway, H. S. M Coxeter, Persi Diaconis, Solomon W Golomb, Richard K.Guy, David A. Klarner, Donald Ervin Knuth, Harry Lindgren, Doris Schattschneider, Jerry Slocum, Charles W.Trigg, Stanislaw M. Ulam, and Samuel Yates. Immediate Source of Acquisition note Gift of Martin Gardner, 2002. Information about Access This collection is open for research. Ownership & Copyright All requests to reproduce, publish, quote from, or otherwise use collection materials must be submitted in writing to the Head of Special Collections and University Archives, Stanford University Libraries, Stanford, California 94304-6064. Consent is given on behalf of Special Collections as the owner of the physical items and is not intended to include or imply permission from the copyright owner.
    [Show full text]
  • An Interview with Donald Knuth 1974 ACM Turing Award Recipient
    An Interview with Donald Knuth 1974 ACM Turing Award Recipient Interviewed by: Edward Feigenbaum March 14, 2007 and March 21, 2007 Mountain View, California This transcript and the interview on which it is based is from the files of the Computer History Museum in Mountain View, California. It is used here by the ACM with Kind permission from the Museum. CHM Reference number: X3926.2007, © 2007 Computer History Museum DK: Donald Knuth, The 1974 ACM Turing Award Recipient EF: Edward Feigenbaum, a professor at Stanford University EF: My name is Edward Feigenbaum. I’m a professor at Stanford University, in the Computer Science Department. I’m very pleased to have the opportunity to interview my colleague and friend from 1968 on, Professor Don Knuth of the Computer Science Department. Don and I have discussed the question of what viewers and readers of this oral history we think there are. We’re orienting our questions and comments to several groups of you readers and viewers. First, the generally intelligent and enlightened science-oriented person who has seen the field of computer science explode in the past half century and would like to find out what is important, even beautiful, and what some of the field’s problems have been. Second, the student of today who would like orientation and motivation toward computer science as a field of scholarly work and application, much as Don and I had to do in the 1950s. And third, those of you who maybe are not yet born, the history of science scholar of a dozen or 100 years from now, who will want to know more about Donald Knuth, the scientist and programming artist, who produced a memorable body of work in the decades just before and after the turn of the millennium.
    [Show full text]
  • Arxiv:2105.07884V3 [Math.HO] 20 Jun 2021
    Enumerative and Algebraic Combinatorics in the 1960's and 1970's Richard P. Stanley University of Miami (version of 17 June 2021) The period 1960{1979 was an exciting time for enumerative and alge- braic combinatorics (EAC). During this period EAC was transformed into an independent subject which is even stronger and more active today. I will not attempt a comprehensive analysis of the development of EAC but rather focus on persons and topics that were relevant to my own career. Thus the discussion will be partly autobiographical. There were certainly deep and important results in EAC before 1960. Work related to tree enumeration (including the Matrix-Tree theorem), parti- tions of integers (in particular, the Rogers-Ramanujan identities), the Redfield- P´olya theory of enumeration under group action, and especially the repre- sentation theory of the symmetric group, GL(n; C) and some related groups, featuring work by Georg Frobenius (1849{1917), Alfred Young (1873{1940), and Issai Schur (1875{1941), are some highlights. Much of this work was not concerned with combinatorics per se; rather, combinatorics was the nat- ural context for its development. For readers interested in the development of EAC, as well as combinatorics in general, prior to 1960, see Biggs [14], Knuth [77, §7.2.1.7], Stein [147], and Wilson and Watkins [153]. Before 1960 there are just a handful of mathematicians who did a sub- stantial amount of enumerative combinatorics. The most important and influential of these is Percy Alexander MacMahon (1854-1929). He was a arXiv:2105.07884v3 [math.HO] 20 Jun 2021 highly original pioneer, whose work was not properly appreciated during his lifetime except for his contributions to invariant theory and integer parti- tions.
    [Show full text]