Turing Award Winner, Professor Emeritus at Stanford University
Jeffrey Ullman is a renowned computer scientist known for his work in database theory, data mining, and software engineering. He is a co-recipient of the 2020 ACM Turing Award.
Biography
Jeffrey Ullman
Early Life and Education
Jeffrey David Ullman was born on November 22, 1942. He is an American computer scientist renowned for his contributions to the fields of database theory, database systems, and formal language theory. Ullman received his Bachelor of Science degree in engineering mathematics from Columbia University in 1963 and earned his PhD in electrical engineering from Princeton University in 1966. His doctoral thesis, "Synchronization Error Correcting Codes," was supervised by Arthur Bernstein and Archie McKellar.
Academic Career
Bell Labs and Princeton University
After completing his PhD, Ullman worked at Bell Labs for three years. In 1969, he joined Princeton University as an associate professor and was promoted to full professor in 1974.
Stanford University
In 1979, Ullman moved to Stanford University. He served as the department chair from 1990 to 1994 and was named the Stanford W. Ascherman Professor of Computer Science in 1994. He became an emeritus professor in 2003. At Stanford, Ullman has been influential in the development of computer science education and research. He is one of the founders of the field of database theory, and many of his PhD students have become prominent figures in the field.
Research Interests and Contributions
Ullman's research interests include database theory, data integration, data mining, and education using online infrastructure. He has authored numerous textbooks that are considered standards in their fields:
- Compilers: "Compilers: Principles, Techniques, and Tools," commonly known as the Dragon Book.
- Theory of Computation: "Introduction to Automata Theory, Languages, and Computation," also known as the Cinderella book.
- Data Structures: "Data Structures and Algorithms."
- Databases: "Database Systems: The Complete Book" and "Principles of Database and Knowledge-Base Systems."
Ullman co-founded Gradiance Corporation, which provides homework grading support for college courses, and he teaches courses on automata and mining massive datasets on the Stanford Online learning platform.
Awards and Honors
Jeffrey Ullman has received numerous prestigious awards throughout his career:
- ACM Fellow (1994): Recognized for his contributions to computer science.
- Knuth Prize (2000): Awarded for outstanding contributions to the foundations of computer science.
- IEEE John von Neumann Medal (2010): Received for laying the foundations for the fields of automata and language theory and making seminal contributions to theoretical computer science.
- C&C Prize (2017): Awarded by NEC Corporation, shared with John Hopcroft and Alfred Aho.
- Turing Award (2020): Co-recipient with Alfred Aho for their work on programming language compilers and algorithms. This award is considered the highest distinction in computer science.
Ullman was elected as a member of the National Academy of Sciences in 2020. He also sits on the advisory board of TheOpenCode Foundation.
Controversies
In 2011, Ullman expressed his opposition to assisting Iranians in becoming graduate students at Stanford due to the anti-Israel stance of the Iranian government. This led to criticism from the National Iranian American Council, which called for disciplinary action against him for his "racially discriminatory and inflammatory" comments. Stanford University clarified that Ullman was expressing his personal views and was not involved in admissions decisions.
In April 2021, an open letter by CSForInclusion criticized the ACM and the Turing Award Committee for selecting Ullman as a recipient of the ACM A.M. Turing Award. In response, ACM reaffirmed its commitment to inclusion and diversity.
Books by Jeffrey Ullman
Jeffrey Ullman has authored and co-authored several influential books in computer science, including:
- Mining of Massive Datasets (with Jure Leskovec and Anand Rajaraman), Prentice-Hall, Second edition 2014. ISBN: 978-1-1070-7723-2.
- Database Systems: The Complete Book (with H. Garcia-Molina and J. Widom), Prentice-Hall, 2002. ISBN: 978-0-1303-1995-1.
- Introduction to Automata Theory, Languages, and Computation (with J. E. Hopcroft and R. Motwani), Addison-Wesley, 1969, 1979, 2000. ISBN: 978-0-2010-2988-8.
- Elements of ML Programming, Prentice-Hall, 1993, 1998. ISBN: 978-0-13-790387-0.
- A First Course in Database Systems (with J. Widom), Prentice-Hall, 1997, 2002. ISBN: 978-0-13-861337-2.
- Foundations of Computer Science (with A. V. Aho), Computer Science Press, 1992. ISBN: 978-0-7167-8233-9.
- Principles of Database and Knowledge-Base Systems, two volumes, Computer Science Press, 1988, 1989. Volume 1: ISBN: 978-0-7167-8158-5, Volume 2: ISBN: 978-0-7167-8162-2.
- Compilers: Principles, Techniques, and Tools (with A. V. Aho and R. Sethi), Addison-Wesley, 1977, 1986.
- Computational Aspects of VLSI, Computer Science Press, 1984. ISBN: 978-0-914894-95-7.
- Data Structures and Algorithms (with A. V. Aho and J. E. Hopcroft), Addison-Wesley, 1983. ISBN: 978-0-2010-0023-8.
- Principles of Compiler Design (with A. V. Aho), Addison-Wesley, 1977.
- Fundamental Concepts of Programming Systems, Addison-Wesley, 1976. ISBN: 0-201-07654-3.
- The Design and Analysis of Computer Algorithms (with A. V. Aho and J. E. Hopcroft), Addison-Wesley, 1974. ISBN: 978-0-2010-0029-0.
- Formal Languages and Their Relation to Automata (with J. E. Hopcroft), Addison-Wesley, 1969. ISBN: 978-0-2010-2983-3.
Career Timeline
Career Timeline
- 1963: Received Bachelor of Science degree in engineering mathematics from Columbia University [source]
- 1966: Earned PhD in electrical engineering from Princeton University [source]
- 1966-1969: Worked at Bell Labs [source]
- 1969: Joined Princeton University as an associate professor [source]
- 1974: Promoted to full professor at Princeton University [source]
- 1979: Moved to Stanford University as Professor of Computer Science [source]
- 1990-1994: Served as department chair at Stanford University [source]
- 1994: Named the Stanford W. Ascherman Professor of Computer Science at Stanford University [source]
- 1994: Elected ACM Fellow [source]
- 2000: Awarded the Knuth Prize [source]
- 2003: Became Professor Emeritus at Stanford University [source]
- 2010: Received the IEEE John von Neumann Medal [source]
- 2017: Awarded the C&C Prize [source]
- 2020: Elected as a member of the National Academy of Sciences [source]
- 2020: Co-recipient of the ACM Turing Award [source]