วิทยาศาสตร์คอมพิวเตอร์

ถาม - ตอบสำหรับนักเรียนนักวิจัยและผู้ปฏิบัติงานด้านวิทยาการคอมพิวเตอร์

7
มีการเชื่อมต่อระหว่างปัญหาการหยุดชะงักและเอนโทรปีของอุณหพลศาสตร์หรือไม่?
อลันทัวริงที่นำเสนอแบบจำลองสำหรับเครื่อง (เครื่องทัวริง TM) ซึ่งคำนวณ (ตัวเลขฟังก์ชั่น, ฯลฯ ) และได้รับการพิสูจน์ลังเลทฤษฎีบท TM เป็นแนวคิดที่เป็นนามธรรมของเครื่อง (หรือเครื่องยนต์ถ้าคุณต้องการ) ทฤษฎีบท Halting เป็นผลลัพธ์ที่เป็นไปไม่ได้ Carnot Engine (CE) เป็นแนวคิดที่เป็นนามธรรมของเครื่องยนต์ความร้อนและ Carnot พิสูจน์ทฤษฎีบท Carnotซึ่งเป็นไปไม่ได้อีกประการหนึ่งที่เกี่ยวข้องกับเทอร์โมไดนามิกของเอนโทรปี ระบุว่า TM สามารถใช้งานได้จริง (อย่างน้อยเท่ากับ CE หรืออาจจะไม่?) มีการทำแผนที่หรือการแสดงหรือ "isomorphism" ของ TM หรือ CE ซึ่งสามารถรวมผลลัพธ์เหล่านี้เข้าด้วยกัน มีสูตรสูตรของ TM และทฤษฎีบท Halting ในแง่ของทฤษฎีข้อมูลอัลกอริทึม (เช่น Chaitin, Kolmogorov ฯลฯ ) และเอนโทรปี (ในบริบทนั้น) คำถามถามถึงแนวคิดทางกายภาพของเอนโทรปี (ถ้าอยู่ในกระบวนการของเอนโทรปีของอัลกอริธึมที่อาจเกิดขึ้นมันก็ดี แต่มันไม่ใช่คำถามที่ถามอย่างแน่นอน) ท่านสามารถตรวจสอบอีกคำถามหนึ่งใน …

8
คอมพิวเตอร์จะกำหนดประเภทข้อมูลของไบต์ได้อย่างไร
ตัวอย่างเช่นหากคอมพิวเตอร์10111100เก็บไว้ในหน่วยความจำไบต์เดียวคอมพิวเตอร์จะทราบได้อย่างไรว่าแปลความหมายนี้เป็นจำนวนเต็มอักขระ ASCII หรืออย่างอื่น ข้อมูลประเภทเก็บอยู่ในไบต์ที่อยู่ติดกันหรือไม่? (ฉันไม่คิดว่าจะเป็นเช่นนี้เพราะจะส่งผลให้มีการใช้พื้นที่สองเท่าสำหรับหนึ่งไบต์) ฉันสงสัยว่าบางทีคอมพิวเตอร์อาจไม่รู้ประเภทของข้อมูลว่ามีเพียงโปรแกรมที่ใช้เท่านั้นที่รู้ ฉันเดาว่าเป็นเพราะ RAM เป็นR AM และดังนั้นจึงไม่ได้อ่านตามลำดับว่าโปรแกรมเฉพาะบอก CPU เพื่อดึงข้อมูลจากที่อยู่เฉพาะและโปรแกรมกำหนดวิธีการปฏิบัติ ดูเหมือนว่าจะเหมาะกับการเขียนโปรแกรมสิ่งต่าง ๆ เช่นความจำเป็นในการพิมพ์ดีด ฉันกำลังติดตามใช่ไหม?

8
เป็นปัญหาหรือไม่ที่จะเป็นโปรแกรมเมอร์ที่ไม่มีความรู้เกี่ยวกับความซับซ้อนในการคำนวณ
ฉันได้รับมอบหมายให้ออกกำลังกายในมหาวิทยาลัยของฉัน ฉันเอามันกลับบ้านและพยายามเขียนอัลกอริทึมเพื่อแก้มันเป็นสิ่งที่เกี่ยวข้องกับกราฟการค้นหาส่วนประกอบที่เชื่อมโยงฉันเดา จากนั้นฉันก็ทำสิ่งที่สำคัญที่สุดที่เข้ามาในความคิดของฉันแล้วแสดงต่ออาจารย์ของฉัน หลังจากการสังเกตุสั้น ๆ เขาเห็นว่าความซับซ้อนของรันไทม์ของโซลูชันของฉันนั้นไม่น่าเชื่อถือและแสดงบางสิ่งที่มีประสิทธิภาพมากขึ้น และมีประเพณีของโปรแกรมเมอร์ที่ไม่มีความคิดเกี่ยวกับความซับซ้อนของการคำนวณคืออะไร (ฉันเป็นหนึ่งในนั้น) ดังนั้นจึงเป็นปัญหาหรือไม่ถ้าโปรแกรมเมอร์ไม่มีความคิดเกี่ยวกับความซับซ้อนของการคำนวณคืออะไร?

4
รหัสตัวเลขไม่สมมาตรขั้นพื้นฐานที่สุดที่ฉันสามารถนำเสนอได้ที่ผับคืออะไร
ฉันพยายามอธิบายพื้นฐานของ Bitcoin ให้กับผู้ปกครองของฉัน หนึ่งในองค์ประกอบหลักของ bitcoin คือการลงนามในการทำธุรกรรมเพื่อให้แน่ใจว่าตัวตนของคุณไม่สามารถถูกเลียนแบบได้และดังนั้นจึงจำเป็นต้องอธิบายการเข้ารหัสแบบไม่สมมาตร รหัสตัวเลขแบบไม่สมมาตรอย่างง่ายที่สุดที่ฉันสามารถใช้เป็นตัวอย่างคืออะไร การเข้ารหัสแบบง่ายนี้สามารถใช้สำหรับการเซ็นชื่อได้อย่างไร

2
"บริบท" ใน "ไวยากรณ์ที่ไม่มีบริบท" หมายถึงอะไร
มีคำจำกัดความออนไลน์มากมายเกี่ยวกับไวยากรณ์ที่ปราศจากบริบท แต่ไม่มีอะไรที่ฉันพอใจคือปัญหาหลักของฉัน: บริบทใดที่ปราศจาก ในการตรวจสอบฉัน Googled "บริบทที่ไวต่อไวยากรณ์" แต่ฉันยังคงล้มเหลวในการค้นหาว่า "บริบท" เกี่ยวกับอะไร ใครช่วยกรุณาอธิบายสิ่งที่contextคำที่อ้างถึงในชื่อเหล่านี้?

2
ฟังก์ชั่นการตอบสนองการเขียนโปรแกรมและรูปแบบของนักแสดงสัมพันธ์กันอย่างไร
FRP เกี่ยวกับการสตรีมเหตุการณ์และพฤติกรรมผ่านฟังก์ชั่นแท้ รูปแบบของนักแสดง - อย่างน้อยที่สุดตามที่นำมาใช้ใน Akka - เกี่ยวกับการส่งข้อความที่ไม่เปลี่ยนรูป (ซึ่งถือได้ว่าเป็นเหตุการณ์ที่ไม่ต่อเนื่อง) ผ่านวัตถุที่อาจไม่บริสุทธิ์เรียกว่านักแสดง ดังนั้นบนพื้นผิวที่พวกเขาดูเหมือนเกี่ยวข้อง มีอะไรอีกบ้างที่เราสามารถพูดเกี่ยวกับความสัมพันธ์ของพวกเขา? นอกจากนี้สิ่งที่สามารถพูดเกี่ยวกับสิ่งที่พวกเขาอาจจะเหมาะสมกว่าสำหรับโดเมนแอปพลิเคชันที่แตกต่างกัน?

5
ความหมายของ:“ 'หากการแยกเลขจำนวนเต็มขนาดใหญ่ยากแล้วการแตก RSA นั้นยาก' จะพิสูจน์ได้ "
ฉันอ่าน CLRS และพูดว่า: หากการแยกจำนวนเต็มขนาดใหญ่นั้นง่ายแล้วการทำลายระบบเข้ารหัส RSA นั้นเป็นเรื่องง่าย ซึ่งเหมาะสมกับฉันเพราะด้วยความรู้ของและqมันเป็นเรื่องง่ายที่จะสร้างรหัสลับซึ่งเป็นความรู้เกี่ยวกับกุญแจสาธารณะ แม้ว่ามันจะอธิบายถึงการสนทนาที่ฉันไม่เข้าใจ:qpppqqq คำสั่งสนทนาว่าหากการแยกจำนวนเต็มจำนวนมากนั้นยากการแบ่ง RSA นั้นยากจะพิสูจน์ได้ ข้อความข้างต้นอย่างเป็นทางการหมายถึงอะไร? หากเราถือว่าแฟคตอริ่งนั้นยาก (ในทางที่เป็นทางการ) ทำไมมันไม่ได้หมายความว่าการทำลายระบบการเข้ารหัส RSA นั้นยาก? ตอนนี้ให้พิจารณาว่าหากเราสันนิษฐานว่าแฟคตอริ่งนั้นยาก ... และเราค้นพบว่านั่นหมายความว่าระบบเข้ารหัส RSA นั้นยากที่จะทำลาย นั่นหมายความว่าอย่างเป็นทางการหมายความว่าอย่างไร

2
ภาษาการเขียนโปรแกรมและรากฐานของคณิตศาสตร์มีความสัมพันธ์กันอย่างไร
โดยพื้นฐานฉันรู้พื้นฐานสามประการเกี่ยวกับคณิตศาสตร์ ทฤษฎีเซต ทฤษฎีประเภท ทฤษฎีหมวดหมู่ ดังนั้นการเขียนโปรแกรมภาษาและรากฐานของคณิตศาสตร์ในทางใดบ้าง? แก้ไข คำถามเดิมคือ "ภาษาการเขียนโปรแกรมตามรากฐานของคณิตศาสตร์" กับ paragarph เพิ่มของ และการประยุกต์ใช้ทฤษฎี 1. ทฤษฎีประเภทในCoq 2. ตั้งทฤษฎีในSETL 3. ทฤษฎีหมวดหมู่ในHaskell ตามคำแนะนำนี้ถูกเปลี่ยนเป็น "ภาษาการเขียนโปรแกรมและพื้นฐานทางคณิตศาสตร์เกี่ยวข้องอย่างไร" เนื่องจากนี่เป็นหนึ่งในคำถามเหล่านั้นที่ฉันไม่รู้เกี่ยวกับสิ่งที่ฉันถาม แต่ต้องการเรียนรู้บางอย่างฉันจึงแก้ไขคำถามเพื่อให้มีค่ามากขึ้นสำหรับการเรียนรู้และอื่น ๆ แต่ยังทิ้งรายละเอียดไว้เพื่อไม่ให้คำตอบปัจจุบันโดย Andrej Bauer ดูเหมือนปิดหัวข้อ ขอบคุณสำหรับความคิดเห็นทั้งหมดและคำตอบจนถึงตอนนี้ฉันกำลังเรียนรู้จากพวกเขา

2
ต้นไม้สีแดงดำทุกต้นไม่สมดุลหรือไม่
โดยสัญชาตญาณ "ต้นไม้ที่สมดุล" ควรเป็นต้นไม้ที่ต้นไม้ย่อยด้านซ้ายและขวาในแต่ละโหนดจะต้องมีจำนวนโหนดโดยประมาณเท่ากัน แน่นอนเมื่อเราพูดถึงต้นไม้สีแดงดำ * (ดูคำจำกัดความที่ท้าย) การมีความสมดุลจริง ๆ แล้วเราหมายถึงว่าพวกเขามีความสูงที่สมดุลและในแง่นั้นพวกเขามีความสมดุล สมมติว่าเราพยายามทำสัญชาตญาณข้างต้นเป็นระเบียบดังนี้: คำนิยาม:ต้นไม้ไบนารีเรียกว่า -balance, โดยมี , สำหรับทุกโหนด , ความไม่เท่าเทียมกันμμ\mu0≤μ≤120≤μ≤120 \le \mu \leq \frac{1}{2}NNN μ≤|NL|+1|N|+1≤1−μμ≤|NL|+1|N|+1≤1−μ \mu \le \frac{|N_L| + 1}{|N| + 1} \le 1 - \mu เก็บและสำหรับทุก ๆมีบางโหนดที่คำสั่งข้างต้นล้มเหลว คือจำนวนโหนดในทรีย่อยด้านซ้ายของและคือจำนวนโหนดใต้ต้นไม้ที่มีเป็นรูท (รวมถึงรูท)μ′>μμ′>μ\mu' \gt \mu|NL||NL||N_L|NNN|N||N||N|NNN ฉันเชื่อว่าสิ่งเหล่านี้เรียกว่าต้นไม้ที่มีน้ำหนักสมดุลในวรรณกรรมบางเล่มในหัวข้อนี้ ใคร ๆ ก็สามารถแสดงให้เห็นว่าถ้าต้นไม้ไบนารีกับ nodes คือ -balanced (สำหรับค่าคงที่ ) ดังนั้นความสูงของต้นไม้คือดังนั้นจึงคงการค้นหาที่ดี คุณสมบัติ.nnnμμ\muμ>0μ>0\mu …

2
ความเท่าเทียมกันของBüchiออโตมาตะและเชิงเส้น -calculus
มันเป็นความจริงที่รู้กันว่าทุกสูตร LTL สามารถแสดงได้โดยBüchi -automaton แต่เห็นได้ชัดว่าBüchiออโตมาตาเป็นโมเดลที่ทรงพลังและแสดงออกได้มากกว่า ฉันเคยได้ยินที่ไหนที่Büchiออโตมาจะเทียบเคียงกับ linear-time -calculus (นั่นคือ -calculus ที่มี fixpoint ปกติและโอเปอเรเตอร์ชั่วคราวเพียงหนึ่ง )μ μ Xωω\omegaμμ\muμμ\muXX\mathbf{X} มีอัลกอริทึม (การพิสูจน์เชิงสร้างสรรค์) ของความเท่าเทียมกันนี้หรือไม่?

1
ทฤษฎีบทข้าวสำหรับคุณสมบัติที่ไม่ใช่ความหมาย
ทฤษฏีของข้าวบอกเราว่าสมบัติเชิงความหมายเพียงอย่างเดียวของทัวริงเครื่องจักร (เช่นคุณสมบัติของฟังก์ชันที่คำนวณโดยเครื่อง) ที่เราสามารถตัดสินใจได้ว่าเป็นคุณสมบัติสองอย่าง (เช่นจริงเสมอและเท็จเสมอ) แต่มีคุณสมบัติอื่น ๆ ของเครื่องจักรทัวริงที่ไม่สามารถตัดสินใจได้ ยกตัวอย่างเช่นทรัพย์สินที่มีสถานะที่ไม่สามารถเข้าถึงได้ในเครื่องทัวริงที่กำหนดคือ undecidable †††^{\dagger} มีทฤษฎีบทคล้ายกับทฤษฎีบทของไรซ์ซึ่งจัดหมวดหมู่ความสามารถในการตัดสินใจของคุณสมบัติที่คล้ายกันได้หรือไม่? ฉันไม่มีคำจำกัดความที่ชัดเจน ทฤษฎีบทที่รู้จักใด ๆ ที่ครอบคลุมตัวอย่างที่ฉันให้ไว้น่าจะเป็นสิ่งที่น่าสนใจสำหรับฉัน มันเป็นเรื่องง่ายที่จะพิสูจน์ว่าชุดนี้เป็นที่ตัดสินไม่ได้ใช้Kleene ของ Recursion / คงทฤษฎีบทจุด††^\dagger

1
ตารางแฮชกับต้นไม้ไบนารี
เมื่อติดตั้งพจนานุกรม ('ฉันต้องการค้นหาข้อมูลลูกค้าตามรหัสลูกค้า') โครงสร้างข้อมูลทั่วไปที่ใช้คือตารางแฮชและแผนภูมิการค้นหาแบบไบนารี ฉันรู้ว่าอินสแตนซ์ที่ห้องสมุด C ++ STL ใช้พจนานุกรม (เรียกพวกเขาว่าแผนที่) โดยใช้แผนภูมิการค้นหาแบบทวิภาค (สมดุล) และกรอบงาน. NET ใช้ตารางแฮชภายใต้ประทุน ข้อดีและข้อเสียของโครงสร้างข้อมูลเหล่านี้คืออะไร มีตัวเลือกอื่นที่เหมาะสมในบางสถานการณ์หรือไม่? โปรดทราบว่าฉันไม่สนใจโดยเฉพาะอย่างยิ่งในกรณีที่ปุ่มมีโครงสร้างพื้นฐานที่แข็งแกร่งกล่าวว่าพวกเขาเป็นจำนวนเต็มทั้งหมดระหว่าง 1 ถึง n หรือบางสิ่งบางอย่าง

2
quantum TM และ nondetermistic TM แตกต่างกันอย่างไร?
ฉันจะผ่านการอภิปรายในคำถามวิธีการกำหนดเครื่องทัวริงควอนตัม? และฉันรู้สึกว่า quantum TM และnondetermistic TM นั้นเหมือนกัน คำตอบสำหรับคำถามอื่นไม่ได้สัมผัสกับสิ่งนั้น ทั้งสองรุ่นเป็นแบบเดียวกันหรือไม่ ถ้าไม่, ความแตกต่างระหว่างควอนตัม TM และ NDTM คืออะไร? มีการคำนวณใดที่ NDTM จะทำได้เร็วกว่า Quantum TM หรือไม่? หากเป็นกรณีนี้ quantum TM เป็น DTM แล้วทำไมมีฟัซซี่มากมายเกี่ยวกับเทคโนโลยีนี้เราจึงมี DTM มากมาย ทำไมต้องออกแบบ DTM ใหม่ในท้ายที่สุด

6
ทำไมไวยากรณ์ที่ไม่ชัดเจนนั้นไม่ดี
ฉันเข้าใจว่าหากมีต้นไม้ 2 ต้นขึ้นไปทางซ้ายหรือทางขวาไวยากรณ์ก็ไม่ชัดเจน แต่ฉันไม่สามารถเข้าใจได้ว่าทำไมมันถึงแย่มากที่ทุกคนต้องการกำจัดมัน

9
อธิบายความแตกต่างระหว่างวิทยาการคอมพิวเตอร์และความรู้คอมพิวเตอร์ [ปิด]
คำอุปมาหรือตัวอย่างที่ดีในการอธิบายภาษาอังกฤษที่สำคัญแตกต่างระหว่างวิทยาการคอมพิวเตอร์แบบดั้งเดิมและ "การใช้ MS-Windows ได้ดี" วิทยาศาสตร์คอมพิวเตอร์ การเขียนโปรแกรมคอมพิวเตอร์ ใช้คอมพิวเตอร์ 3 สิ่งที่แตกต่างอย่างสุดซึ้ง คนส่วนใหญ่ไม่รู้ว่าวิทยาการคอมพิวเตอร์นั้นคืออะไร พวกเขาเห็นคำว่า "คอมพิวเตอร์" ดังนั้น "เขาเป็นวิชาเอกวิทยาศาสตร์คอมพิวเตอร์" สามารถตีความได้ว่า "เขาสามารถขอเครื่องพิมพ์ของฉัน" หรือว่าเขา "ดีกับคอมพิวเตอร์" แม้แต่คนที่น้อยก็รู้ถึงความแตกต่างระหว่างการเขียนโปรแกรมคอมพิวเตอร์และวิทยาการคอมพิวเตอร์ วิทยาการคอมพิวเตอร์เป็นทฤษฎีการคำนวณ CS สามารถเรียนรู้ได้โดยไม่ต้องใช้คอมพิวเตอร์จริง สถาปัตยกรรมไมโครซีพียู วิธีการเรียงลำดับหมายเลขวิธีการสำรวจรายการ ฯลฯ เครื่องสถานะ อัลกอริทึมใหญ่ (Oh) ฯลฯ วิธีการออกแบบภาษาโปรแกรมหรือคอมไพเลอร์ การเขียนโปรแกรมคือการเขียนโค้ดและสร้างแอปพลิเคชันในภาษาและคอมไพเลอร์ที่สร้างขึ้นโดยนักวิทยาศาสตร์คอมพิวเตอร์ สุดท้ายมีการใช้คอมพิวเตอร์ (ใช้ GUI, เมาส์และคีย์บอร์ด Internet, MS-Office, ฯลฯ ) ทั้งสามคนนี้ใช้แทนกันได้โดยอุปัฏฐาก คำเปรียบเทียบหรือตัวอย่างที่ดีในการอธิบายความแตกต่างระหว่างวิทยาศาสตร์คอมพิวเตอร์แบบคลาสสิคกับ "การใช้ MS-Windows ได้ดี" หรือเพียงแค่ตัวอย่างที่น่าสนใจว่าวิทยาการคอมพิวเตอร์ที่แท้จริงนั้นไม่เกี่ยวข้องกับการใช้ MS-Windows อย่างไร

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.