Difference between revisions of "Bill Gosper"

From Chessprogramming wiki
Jump to: navigation, search
m
Line 13: Line 13:
  
 
=<span id="HAKMEM"></span>HAKMEM=
 
=<span id="HAKMEM"></span>HAKMEM=
[https://en.wikipedia.org/wiki/HAKMEM HAKMEM], alternatively known as [https://en.wikipedia.org/wiki/AI_Memo AI Memo] 239, is a February 1972 "memo" (technical report) of the [[Massachusetts Institute of Technology|MIT]] [https://en.wikipedia.org/wiki/MIT_Computer_Science_and_Artificial_Intelligence_Laboratory AI Lab] by Gosper et al. that describes a wide variety of [https://en.wikipedia.org/wiki/Kludge#In_computer_science hacks], primarily useful and clever [[Algorithms|algorithms]] <ref>[https://en.wikipedia.org/wiki/HAKMEM HAKMEM from Wikipedia]</ref>, and even a chess position <ref>Michael Beeler, Bill Gosper, [https://en.wikipedia.org/wiki/Richard_Schroeppel Rich Schroeppel] ('''1972'''). ''[http://home.pipeline.com/~hbaker1/hakmem/hakmem.html HAKMEM], Memo 239''. Artificial Intelligence Laboratory, [[Massachusetts Institute of Technology]]</ref> <ref>[http://www.cl.cam.ac.uk/~am21/hakmemc.html HAKMEMC -- HAKMEM Programming hacks in C] by [http://www.cl.cam.ac.uk/~am21/ Alan Mycroft]</ref>. A few samples, referred elsewhere:
+
[https://en.wikipedia.org/wiki/HAKMEM HAKMEM], alternatively known as [https://en.wikipedia.org/wiki/AI_Memo AI Memo] 239, is a February 1972 "memo" (technical report) of the [[Massachusetts Institute of Technology|MIT]] [https://en.wikipedia.org/wiki/MIT_Computer_Science_and_Artificial_Intelligence_Laboratory AI Lab] by Gosper et al. that describes a wide variety of [https://en.wikipedia.org/wiki/Kludge#In_computer_science hacks], primarily useful and clever [[Algorithms|algorithms]] <ref>[https://en.wikipedia.org/wiki/HAKMEM HAKMEM from Wikipedia]</ref>, and even a chess position <ref>Michael Beeler, Bill Gosper, [https://en.wikipedia.org/wiki/Richard_Schroeppel Rich Schroeppel] ('''1972'''). ''[http://home.pipeline.com/~hbaker1/hakmem/hakmem.html HAKMEM], Memo 239''. [https://en.wikipedia.org/wiki/MIT_Computer_Science_and_Artificial_Intelligence_Laboratory CSAIL], [[Massachusetts Institute of Technology|MIT]]</ref> <ref>[http://www.cl.cam.ac.uk/~am21/hakmemc.html HAKMEMC -- HAKMEM Programming hacks in C] by [http://www.cl.cam.ac.uk/~am21/ Alan Mycroft]</ref>. A few samples, referred elsewhere:
  
 
==<span id="HAKMEM70"></span>HAKMEM 70==
 
==<span id="HAKMEM70"></span>HAKMEM 70==
Line 61: Line 61:
  
 
=Selected Publications=  
 
=Selected Publications=  
* Michael Beeler, Bill Gosper, [https://en.wikipedia.org/wiki/Richard_Schroeppel Rich Schroeppel] ('''1972'''). ''[http://home.pipeline.com/~hbaker1/hakmem/hakmem.html HAKMEM], Memo 239''. Artificial Intelligence Laboratory, [[Massachusetts Institute of Technology]] <ref>Web-available by [http://home.pipeline.com/~hbaker1/ Henry Baker]</ref>
+
* Michael Beeler, Bill Gosper, [https://en.wikipedia.org/wiki/Richard_Schroeppel Rich Schroeppel] ('''1972'''). ''[http://home.pipeline.com/~hbaker1/hakmem/hakmem.html HAKMEM], Memo 239''. [https://en.wikipedia.org/wiki/MIT_Computer_Science_and_Artificial_Intelligence_Laboratory CSAIL], [[Massachusetts Institute of Technology|MIT]] <ref>Web-available by [http://home.pipeline.com/~hbaker1/ Henry Baker]</ref>
 +
* Bill Gosper ('''1974'''). ''[https://dspace.mit.edu/handle/1721.1/6088 Acceleration of Series], Memo 304''. [https://en.wikipedia.org/wiki/MIT_Computer_Science_and_Artificial_Intelligence_Laboratory CSAIL], [[Massachusetts Institute of Technology|MIT]]
 
* Bill Gosper ('''1977'''). ''Decision procedure for indefinite hypergeometric summation''. [https://en.wikipedia.org/wiki/Proceedings_of_the_National_Academy_of_Sciences_of_the_United_States_of_America PNAS USA], Vol. 75, No. 1, [http://www.pnas.org/content/75/1/40.full.pdf pdf] <ref>[https://en.wikipedia.org/wiki/Gosper%27s_algorithm Gosper's algorithm from Wikipedia]</ref>
 
* Bill Gosper ('''1977'''). ''Decision procedure for indefinite hypergeometric summation''. [https://en.wikipedia.org/wiki/Proceedings_of_the_National_Academy_of_Sciences_of_the_United_States_of_America PNAS USA], Vol. 75, No. 1, [http://www.pnas.org/content/75/1/40.full.pdf pdf] <ref>[https://en.wikipedia.org/wiki/Gosper%27s_algorithm Gosper's algorithm from Wikipedia]</ref>
  
Line 69: Line 70:
 
: [http://gosper.org/bill.html R. William Gosper]
 
: [http://gosper.org/bill.html R. William Gosper]
 
: [http://www.tweedledum.com/rwg/ Rep-tiles]
 
: [http://www.tweedledum.com/rwg/ Rep-tiles]
* [https://en.wikipedia.org/wiki/HAKMEM HAKMEM from Wikipedia]
+
* [https://en.wikipedia.org/wiki/HAKMEM HAKMEM from Wikipedia], [http://www.cl.cam.ac.uk/~am21/hakmemc.html HAKMEMC -- HAKMEM Programming hacks in C] by [http://www.cl.cam.ac.uk/~am21/ Alan Mycroft]
: [http://www.cl.cam.ac.uk/~am21/hakmemc.html HAKMEMC -- HAKMEM Programming hacks in C] by [http://www.cl.cam.ac.uk/~am21/ Alan Mycroft]
 
 
* [https://en.wikipedia.org/wiki/Gosper%27s_algorithm Gosper's algorithm from Wikipedia]
 
* [https://en.wikipedia.org/wiki/Gosper%27s_algorithm Gosper's algorithm from Wikipedia]
 
* [https://en.wikipedia.org/wiki/Gosper_curve Gosper curve from Wikipedia]
 
* [https://en.wikipedia.org/wiki/Gosper_curve Gosper curve from Wikipedia]

Revision as of 21:42, 11 April 2018

Home * People * Bill Gosper

Bill Gosper 2006 [1]

Ralph William (Bill) Gosper, Jr., an American mathematician and computer scientist, along with Richard Greenblatt considered the co-founder of the hacker community [2]. In the 60s, affiliated with MIT, he worked for Project MAC (Machine-Aided Cognition), where his contributions to computational mathematics and Bit-Twiddling including HAKMEM and Maclisp. He helped Greenblatt with his chess program Mac Hack VI, and operated the PDP-6 when Robert Q played its first tournament game versus Carl Wagner.

In the 70s, Bill Gosper moved to Stanford University for some years, where he lectured and helped Donald Knuth to write volume II of The Art of Computer Programming. He has worked at or consulted for Xerox PARC, Symbolics, Wolfram Research, the Lawrence Livermore National Laboratory, and Macsyma [3]. Bill Gosper created numerous packing problem puzzles such as the Twubblesome Twelve [4], and was interested in the Conway's of Life], where he found the Gun] and originated the [1]] algorithm to speed up the computation of Life patterns [5].

Robert Q

RobertQ1967.JPG

Allen Moulton and R. William Gosper operating "Robert Q" on a PDP-6 [6]

HAKMEM

HAKMEM, alternatively known as AI Memo 239, is a February 1972 "memo" (technical report) of the MIT AI Lab by Gosper et al. that describes a wide variety of hacks, primarily useful and clever algorithms [7], and even a chess position [8] [9]. A few samples, referred elsewhere:

HAKMEM 70

HAKMEM 70 [10], A neat chess problem, swiped from Chess for Fun and Chess for Blood, by Edward Lasker [11]. White mates in three moves [12]:

    
    
    
    
    
    
    
    
       
       
       
        
       
      
       
        
     ♗  
      ♙ 
 ♟      
        
 ♘      
♚♙      
  ♔     
        

5B2/6P1/1p6/8/1N6/kP6/2K5/8 w - -

HAKMEM 169

HAKMEM 169, to count the ones in a PDP-6/PDP-10 36-bit word, written in Assembly [13] [14]:

   LDB   B,[014300,,A]     ;or MOVE B,A then LSH B,-1
   AND   B,[333333,,333333]
   SUB   A,B
   LSH   B,-1
   AND   B,[333333,,333333]
   SUBB  A,B               ;each octal digit is replaced by number of 1's in it
   LSH   B,-3
   ADD   A,B
   AND   A,[070707,,070707]
   IDIVI A,77              ;casting out 63.'s

HAKMEM 175

HAKMEM 175 - next higher number with the same number of one bits (Snoob), by Bill Gosper, PDP-6 Assembly [15]:

   MOVE  B,A
   MOVN  C,B
   AND   C,B
   ADD   A,C
   MOVE  D,A
   XOR   D,B
   LSH   D,-2
   IDIVM D,C
   IOR   A,C

Gosper's Glider Gun

Gospers glider gun.gif

Gosper's Glider Gun in action — a variation of Conway's Game of Life [16]

See also

Selected Publications

External Links

R. William Gosper
Rep-tiles

References

  1. Mathematician Bill Gosper in March, 2006 at the Seventh Gathering for Gardner (G4G7) in Atlanta, Georgia, March 16, 2006, Photographer Thane Plambeck
  2. Hackers: Heroes of the Computer Revolution
  3. Bill Gosper from Wikipedia
  4. Twubblesome Twelve - a difficult puzzle by Bill Gosper
  5. Gosper's Algorithm (Hashlife) explained
  6. MIT Computer Loses to Human in Chess. Sun Journal (Lewiston), January 23, 1967, Google News
  7. HAKMEM from Wikipedia
  8. Michael Beeler, Bill Gosper, Rich Schroeppel (1972). HAKMEM, Memo 239. CSAIL, MIT
  9. HAKMEMC -- HAKMEM Programming hacks in C by Alan Mycroft
  10. HAKMEM - GAMES: ITEM 70
  11. Edward Lasker (1942,1962) Chess for Fun and Chess for Blood. Dover Publications; 2 Edition, ISBN-13: 978-0486201467, amazon
  12. 1.g8=N b5 2.Ne7 Kxb4 3.Nc6#
  13. HAKMEM 169 by Gosper, Mann, Lenard, (Root and Mann), HAKMEM
  14. PDP-10 Machine Language
  15. HAKMEM 175 by Bill Gosper
  16. Bill Gosper's Glider Gun in action — a variation of Conway's Game of Life. This image was made by using Life32 v2.15 beta by Johan G. Bontes, 2005, Gun (cellular automaton) from Wikipedia
  17. Web-available by Henry Baker
  18. Gosper's algorithm from Wikipedia

Up one level