Greg Nelson (computer scientist)

Greg Nelson
Born
Charles Gregory Nelson

(1953-03-27)March 27, 1953
DiedFebruary 2, 2015(2015-02-02) (aged 61)
EducationB.A., Harvard University (1976)
Ph.D., Stanford University (1980)
Known forSatisfiability modulo theories
Extended static checking
Program verification
Modula-3 committee
ESC/Java Simplify theorem prover
AwardsHerbrand Award (2013)
Scientific career
InstitutionsXerox Palo Alto Research Center (PARC)
Digital Equipment Corporation (DEC) Systems Research Center (SRC)
Hewlett-Packard Labs
ThesisTechniques for Program Verification (1980)
Doctoral advisorRobert Tarjan

Charles Gregory Nelson (27 March 1953 – 2 February 2015) was an American computer scientist.[1][2]

Biography

Nelson grew up in Honolulu. As a boy he excelled at gymnastics and tennis. He attended the University Laboratory School. He received his B.A. degree in mathematics from Harvard University in 1976. He received his Ph.D. in computer science from Stanford University in 1980 under the supervision of Robert Tarjan. He lived in Juneau, Alaska for a year before settling permanently in the San Francisco Bay Area.

Notable work

His thesis, Techniques for Program Verification,[3] influenced both program verification and automated theorem proving, especially in the area now named satisfiability modulo theories, where he contributed techniques for combining decision procedures, as well as efficient decision procedures for quantifier-free constraints in first-order logic and term algebra. He received the Herbrand Award in 2013:[4]

for his pioneering contributions to theorem proving and program verification, such as his seminal work with Derek Oppen on the combination of satisfiability procedures and fast congruence closure algorithms, the development of the highly influential theorem prover Simplify, and his role in the creation of the field of extended static checking.

He was instrumental in developing the Simplify theorem prover used by ESC/Java. He made significant contributions in several other areas. He contributed to the field of programming language design as a member of the Modula-3 committee. In distributed systems he contributed to Network Objects. He made pioneering contributions with his constraint-based graphics editors (Juno and Juno-2), windowing system (Trestle), optimal code generation (Denali), and multi-threaded programming (Eraser).

See also

References

  1. ^ Perl, Sharon (February 2015). "Greg Nelson: 27 March 1953 – 2 February 2015". Palo Alto Online. Palo Alto, California. Retrieved 2021-04-15.
  2. ^ Perl, Sharon (March 4, 2015). "Greg Nelson". Honolulu Star-Advertiser: Obituaries. Honolulu, Hawaii. Retrieved 2021-04-15.
  3. ^ Nelson, Greg (1980–1981). Techniques for Program Verification (PDF). Department of Electrical Engineering and Computer Sciences (PhD). University of California Berkeley. Retrieved 2021-04-13.
  4. ^ Montmirail, Valentin; Sutcliffe, Geoff (June 2013). "Herbrand Award: for Distinguished Contributions to Automated Reasoning". Conference on Automated Deduction. Retrieved 2021-04-13.