Saya mengerti bahwa "struktur" data sepenuhnya tergantung pada Aljabar Boolean, tetapi:
Mengapa data dianggap sebagai entitas matematika yang terpisah dan bukan yang berkelanjutan?
Terkait dengan ini:
Apa kelemahannya, atau invarian, yang dilanggar dalam menyusun data sebagai entitas berkelanjutan dalam dimensi ?
Saya bukan ahli di bidang ini karena saya seorang mahasiswa matematika tingkat sarjana, jadi saya akan sangat menghargai jika seseorang menjelaskan hal ini kepada saya seperti saya berusia lima tahun.
data-structures
mathematical-foundations
evil_potato
sumber
sumber
Jawaban:
Menjawab
Ini bukan pilihan; secara teori dan praktis tidak mungkin untuk mewakili nilai-nilai konkret yang berkesinambungan dalam komputer digital, atau sebenarnya dalam segala jenis perhitungan.
Perhatikan bahwa "diskrit" tidak berarti "bilangan bulat" atau sesuatu seperti itu. "Diskrit" adalah kebalikan dari "kontinu". Ini berarti, untuk memiliki komputer yang benar-benar dapat menyimpan hal-hal non-diskrit, Anda harus dapat menyimpan dua angka
a
dan dib
manaabs(a-b) < ε
untuk setiap nilai kecil yang sewenang-wenangε
. Tentu, Anda bisa masuk sedalam yang Anda inginkan (dengan menggunakan semakin banyak ruang penyimpanan), tetapi setiap komputer (fisik) selalu memiliki batas atas. Apa pun yang Anda lakukan, Anda tidak akan pernah bisa membuat komputer (fisik) yang menyimpan angka-angka yang diselesaikan dengan semena-mena.Bahkan jika Anda dapat merepresentasikan angka dengan konstruk matematika (misalnya
π
), ini tidak mengubah apa pun. Jika Anda menyimpan grafik atau apa pun yang mewakili rumus matematika, maka ini sama diskritnya dengan yang lain.Tambahan
Sisanya hanya sedikit perspektif di luar bidang ilmu komputer. Seperti yang telah ditunjukkan oleh komentar, topik fisik tidak perlu dipersoalkan, dan seperti yang Anda lihat, saya telah merumuskan paragraf saya berikutnya dengan cara yang agak tidak mengikat apakah itu benar atau tidak. Anggap lebih sebagai motivasi bahwa konsep "kontinum" bukanlah konsep sepele. Jawaban yang diberikan di atas tidak tergantung pada apakah ruang itu terpisah atau tidak.
Perhatikan bahwa semua ini bukan masalah komputer, tetapi masalah dengan arti "terus menerus". Misalnya, tidak semua orang bahkan setuju, atau memang setuju di masa lalu, bahwa Semesta adalah berkelanjutan (mis., Apakah skala Planck menyiratkan bahwa ruangwaktu terpisah? ). Untuk beberapa hal (misalnya, keadaan energi elektron dan banyak fitur lainnya dalam Mekanika Quantum) kita bahkan tahu bahwa Semesta tidak kontinu; untuk yang lain (misalnya, posisi ...) juri masih keluar (setidaknya mengenai interpretasi hasil penelitian ...). (Terlepas dari masalah yang bahkan jika kontinu, kita tidak dapat mengukur dengan presisi arbitrer => Heisenberg dll.).
Dalam matematika, mempelajari kontinum (yaitu real) membuka banyak aspek yang menarik, seperti teori ukuran, yang membuat sangat tidak mungkin untuk benar-benar menyimpan jenis angka / data "kontinu".
sumber
Komputer mewakili sepotong data sebagai jumlah bit terbatas (nol dan satu) dan himpunan semua string bit terbatas adalah diskrit. Anda hanya dapat bekerja dengan, katakanlah, bilangan real jika Anda menemukan representasi terbatas untuk mereka. Misalnya, Anda dapat mengatakan "data ini sesuai dengan angka ", tetapi Anda tidak dapat menyimpan semua digit di komputer. Karenanya, program komputer yang bekerja dengan bilangan real sebenarnya hanya bekerja pada subset diskrit .π π R
sumber
Untuk menambahkan semua jawaban yang hebat ini, perlu dicatat bahwa Alan Turing, ketika mendefinisikan mesinnya, berpendapat bahwa jumlah simbol harus terbatas (bahkan jika semena-mena besar) karena komputer (yang berarti: manusia) tidak dapat membedakan semua simbol sebaliknya.
Berikut beberapa kutipan dari makalahnya pada 1936 "On Computable Numbers, dengan Aplikasi ke Entscheidungsproblem":
Dan kemudian pada bagian 9:
sumber
Semuanya dalam implementasi.
Jika Anda memikirkannya, komputer benar-benar merupakan perangkat yang berkelanjutan. Ini mudah ditunjukkan oleh fakta bahwa semua persamaan EM yang mengatur cara kerjanya kontinu. Hal yang berbeda adalah model yang kami gunakan untuk memutuskan bagaimana menggunakan perangkat komputasi ini. Mesin abstrak yang kita gunakan untuk menggambarkan komputasi semuanya terpisah.
Keuntungan praktis yang besar dari ini adalah memiliki kemandirian dari banyak tantangan kontrol kualitas. Jika model komputer kita memanfaatkan sifat kontinu penuh dari transistor dan kapasitornya, maka kita harus peduli seberapa baik kita membangun setiap transistor hingga tingkat yang luar biasa. Kita bisa melihat ini di dunia audio. Di dunia yang dihuni audiofil, masuk akal untuk menghabiskan $ 2000 untuk sebuah amplifier yang mungkin memiliki 10 transistor yang sangat hati-hati dipilih dan cocok yang melakukan hal terus-menerus yang mereka inginkan. Bandingkan ini dengan 1.400.000.000 transistor dalam CPU Core i7 dengan biaya $ 400.
Karena model komputasi kami diskrit, kami dapat memodelkan semua sinyal yang kami lihat di komputer sebagai sinyal diskrit plus beberapa istilah kesalahan kontinu. Kita kemudian dapat menyaring kesalahan hanya dengan mengamati bahwa itu bukan bentuk yang tepat untuk menjadi bagian dari sinyal diskrit.
Bagian utama dari ini adalah penghapusan istilah waktu dalam model abstrak kami. Banyak model kami tidak mengukur waktu terhadap beberapa proses fisik, tetapi terhadap beberapa sinyal "logis" yang dikenal sebagai jam. Jika Anda menghentikan jam, sistem berhenti bergerak, tetapi tidak rusak. Itu baru saja menyelesaikan semua kesalahan analog yang mungkin dimilikinya, dan duduk menunggu pulsa diskrit berikutnya dari jam. Menghapus istilah waktu berkelanjutan secara drastis menyederhanakan perhitungan dan bukti tentang perhitungan. Alih-alih, konsep waktu kami diukur secara terpisah, seperti yang terlihat dalam kategorisasi algoritma P dan NP.
sumber
Karena:
Komputer digital tidak dapat menyimpan angka nyata yang berubah-ubah.
Komputer analog terganggu oleh kebisingan termal (jika elektronik), gesekan (jika mekanis atau hidrolik), gangguan, sensitivitas terhadap variasi suhu, ketidaksempurnaan yang tak terhindarkan, dan penuaan. Menghadapi kesulitan seperti itu adalah apa yang dilakukan oleh fisikawan dan insinyur (percobaan). Sebagian besar ilmu komputer hanya mengabstraksikan fisika.
Berikut adalah beberapa makalah tentang perhitungan nyata :
Mark Braverman, Stephen Cook, Komputasi atas real: dasar untuk komputasi ilmiah , Pemberitahuan AMS, Maret 2006.
Mark Braverman, Tentang kompleksitas fungsi sebenarnya , arXiv: cs / 0502066.
Lenore Blum, Komputasi atas real: di mana Turing bertemu Newton , Pemberitahuan AMS, Oktober 2004.
Vasco Brattka, model realistis kemampuan komputasi pada bilangan real , April 2000.
Vasco Brattka, Peter Hertling, Mesin akses acak yang layak , Desember 1998.
Lenore Blum, Mike Shub, Steve Smale, Tentang teori perhitungan dan kompleksitas bilangan real: kelengkapan NP, fungsi rekursif dan mesin universal , Bulletin AMS, Juli 1989.
dan inilah makalah tentang perhitungan analog :
sumber
Istilah "komputer" dalam bahasa modern berarti "komputer digital"; inti dari komputer digital adalah ia memiliki sejumlah kondisi diskrit yang terbatas. Orang dapat memiliki debat yang menarik tentang apakah alasan bahwa komputer digital lebih disukai daripada komputer analog terutama tentang kepraktisan teknik, atau terutama karena dasar yang lebih baik dari ilmu komputer teoretis. Tetapi apa pun alasannya, komputer digital adalah apa yang kita akhirnya dapatkan, dan model matematika apa pun yang berguna dari komputer digital (dan karenanya datanya) akan lebih bersifat diskrit daripada kontinu.
sumber
Kata ini
data
berasal dari kata Latindatum
, yang berarti sesuatu yang diberikan. Seiring waktu bentuk jamak telah mengubah penggunaan dan sekarang umum digunakan sebagai bentuk tunggal dan jamak. Itu juga terkait dengan informasi secara spesifik.Perhatikan bahwa ada perbedaan antara item informasi (datum) dan perwakilannya.
Teori Informasi berkaitan dengan (antara lain) informasi terpisah yang diwakili oleh variabel. Ini adalah entitas yang dapat dihitung. Misalnya, kecepatan, lokasi, massa, dan sebagainya semuanya merupakan kuantitas kontinu, tetapi terpisah satu sama lain: tidak ada transformasi antara massa dan lokasi. Ketika jumlah ini direpresentasikan secara numerik, item data mereka, bagaimanapun mereka diwakili, juga terpisah satu sama lain.
Di sisi lain, sebagian besar komputer kita saat ini menggunakan beberapa bentuk muatan listrik untuk merepresentasikan informasi. Tuduhan itu hadir atau tidak; ada arus di sirkuit atau tidak ada. Ini juga diskrit, tetapi tidak harus! Hanya karena cara teknologi kami berkembang, kami menggunakan representasi biner. Ada kemungkinan bahwa perkembangan dalam Quantum Computing akan mengubah ini dalam waktu dekat. Juga tidak terbayangkan bahwa komputer analog akan membuat kebangkitan dan anggapan kami bahwa angka harus diwakili oleh biner akan terhapus!
Untuk meringkas:
data
terdiri dari item informasi diskrit, yang masing-masing adalah datum; sedangkan setiap datum tidak perlu diwakili menggunakan matematika diskrit, tetapi saat ini murni oleh kebetulan kontemporer.sumber
Saya ingin menantang premis dasar Anda:
Bukan itu.
Sebagai contoh, studi tentang Algoritma adalah subbidang penting dari Ilmu Komputer, dan ada banyak algoritma yang bekerja dengan data kontinu. Anda mungkin akrab dengan Algoritma Euclid untuk menghitung pembagi umum terbesar dari dua bilangan alami, tetapi apakah Anda tahu bahwa Euclid juga memiliki versi geometris dari algoritma yang sama yang menghitung ukuran umum terpanjang dari dua garis yang sepadan? Itu adalah contoh dari algoritma (dan dengan demikian objek studi ilmu komputer) lebih dari bilangan real, yaitu data kontinu, meskipun Euclid tidak berpikir tentang hal ini dengan cara ini.
Ada banyak cara berbeda untuk mengklasifikasikan algoritma, tetapi satu cara yang digunakan, adalah dengan mengelompokkannya berdasarkan "kontinuitas":
Jawaban lain telah menyebutkan Komputasi Nyata dalam Teori Komputasi, subbidang penting lain dari Ilmu Komputer.
Satu-satunya kelemahan nyata (pun sangat dimaksudkan) adalah bahwa data tersebut tidak dapat diwakili dengan komputer digital umum. Anda dapat memikirkan algoritme daripada data kontinu, tetapi Anda tidak dapat menjalankannya pada mesin standar yang biasanya kita gunakan untuk menjalankan algoritme.
Itulah alasan utama mengapa data kontinu tidak "terlihat" seperti data digital.
Namun, implementasi dari algoritma analog sebenarnya tidak perlu rumit untuk dibayangkan atau bahkan dibangun. Sebagai contoh, ini adalah implementasi dari algoritma analog: Oleh Andrew Dressel - Pekerjaan sendiri, CC BY-SA 3.0 , Link
sumber
Sekarang, himpunan semua data terbatas yang mungkin dapat dimasukkan ke dalam urutan leksikografis, yang berarti himpunan itu dapat dihitung. Tetapi, himpunan bilangan real kontinu tidak terhitung, sehingga selalu ada angka dalam kontinum yang tidak dapat disimpan oleh sistem perhitungan yang diberikan. Dari sini, kita dapat menyimpulkan bahwa penyimpanan bilangan real arbitrer membutuhkan sumber daya tak terbatas.
sumber
Data tidak selalu dianggap sebagai diskrit. Pemrograman ilmiah sering melibatkan aritmatika titik-mengambang. Programmer biasanya berpura-pura bahwa variabel yang terlibat adalah kontinu, sambil tetap mengingat masalah stabilitas numerik, yang berasal dari fakta bahwa data disimpan hanya presisi terbatas.
sumber
Data dalam ilmu komputer dianggap diskrit.
sumber