Apa penggunaan awal "pohon" dalam ilmu komputer?


Jawaban:


13

Wikipedia mengatakan bahwa penggunaan pertama pohon dalam matematika adalah oleh Cayley pada tahun 1857.

Karena penggunaan dalam ilmu komputer diambil langsung dari matematika, tampaknya lebih mendasar untuk bertanya kapan mereka berasal di sana. Kecuali jika para ilmuwan komputer awalnya menyebut pohon sebagai sesuatu yang lain, ilmuwan komputer pertama yang menggunakan "tree" tampaknya tidak lebih penting daripada, katakanlah, orang Australia pertama yang menggunakan "tree".


Cayley mungkin menciptakan kata "pohon", tetapi pohon telah digunakan sebelumnya (misalnya, oleh Kirchhoff). Pada abad ke-19 ahli matematika tidak terlalu peduli tentang algoritma (beberapa pengecualian di sini). Pohon jelas tidak digunakan sebagai struktur data seperti pohon pencarian dalam karya-karya ini.
A.Schulz

11

Menurut TAOCP Donald Knuth, Vol. 1, hal. 459 makalah-makalah berikut dapat dianggap sebagai salah satu penampakan pertama pohon di CS.

  • HG Kahrimanian, Diferensial Analitik dengan Komputer Digital , Simposium Pemrograman Otomatis, 6–14, 1952
  • KE Iverson dan LR Johnson, laporan penelitian IBM Corp., RC-390, RC-603 , 1961
  • AJ Perils dan C. Thornton, Pohon berulir , CACM 3, 195–204, 1960

Lihatlah TAOCP untuk informasi lebih lanjut dan lebih banyak referensi.


Terima kasih, itu terlihat sangat menjanjikan. Apakah referensi kedua memiliki judul? Saya tidak memiliki TAOCP, saya akan pergi ke perpustakaan nanti.
john_leo

4
Ini adalah argumen oleh otoritas yang mungkin benar-benar berfungsi, mengingat bahwa Knuth dikenal sebagai pengumpul referensi yang sangat rajin.
Raphael

INVERSON, KE Notasi pemrograman untuk pohon. Laporan Penelitian R - 390, II3M Research Center (Jan 1961). Itu dari sini: dl.acm.org/citation.cfm?id=366828 yang juga bisa menjadi referensi yang bagus.
KWillets

@ Raphael Dia benar-benar menulis buku tentang ilmu komputer, kan ...
corsiKa

6

Yesaya: "" Dan akan keluar tongkat dari batang Isai, dan sebuah ranting akan tumbuh dari akarnya "

Pohon sebagai model data untuk informasi silsilah memang sangat kuno.


2
"... dalam ilmu komputer ."
Raphael

@Raphael Fair point, meskipun ini bisa dibilang sebuah struktur data, yang merupakan ilmu komputer dengan nama lain.
David Richerby

3
Saya cenderung pada pandangan Dijkstra bahwa ilmu komputer adalah semua tentang struktur data dan algoritma, dan sangat sedikit hubungannya dengan komputer.
Michael Kay

4

Saya menemukan makalah ini di Jurnal Komputer (BCS) untuk tahun 1960:

PF Windley: Pohon, hutan, dan penataan ulang.

Dia memperkenalkan konsep "pohon", "dijelaskan secara singkat oleh Douglas (1959)" [Sandy Douglas] "dan dikaitkan dengan Berners-Lee" [Conway Berners-Lee, ayah Tim].

Menariknya pohon-pohonnya secara botani lebih akurat daripada pohon-pohon CS modern, karena mereka memiliki akar di bagian bawah daripada di atas!

http://comjnl.oxfordjournals.org/content/3/2/84.full.pdf+html?sid=a1c02733-1497-49e9-b308-a05c1dcca1df

Secara kebetulan, kutipan terakhir dalam makalah ini adalah sebuah makalah yang ditulis bersama Windley dengan Tony Rowland Jones dan "LF Kay", yang merupakan salah cetak untuk LR Kay, ayah saya, yang kemudian menjalankan UCCA, sistem Penerimaan Universitas pusat di Inggris.

Sebuah surat dari Conway BL kepada Computer Journal mengomentari makalah ini, dan jawaban dari Windley, terbagi antara halaman 174 dan 184 dari masalah berikut:

http://comjnl.oxfordjournals.org/content/3/3/174.full.pdf+html http://comjnl.oxfordjournals.org/content/3/3/175.full.pdf+html


3

Tanggal kalkulus Lambda kembali ke tahun 1930-an. Tata bahasanya adalah aplikasi awal pohon, khususnya pohon sintaksis abstrak. Setiap istilah LC adalah pohon. Variabelnya adalah simpul daun. Istilah abstraksi dan aplikasi terdiri dari istilah lain, sehingga keduanya merupakan simpul non-daun.

Saya tidak tahu kapan istilah LC pertama kali dianggap sebagai pohon. Namun, bukti awal yang melibatkan LC memerlukan analisis kasus, seperti yang dilakukan oleh programer yang menulis program untuk menjalankan AST sekarang.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.