คำถามติดแท็ก mathematical-foundations

คำถามเกี่ยวกับความสัมพันธ์ของ (สาขาย่อยของ) วิทยาการคอมพิวเตอร์กับพื้นฐานทางคณิตศาสตร์ที่เกี่ยวข้องและการประยุกต์ใช้

29
เหตุใดการเขียนหลักฐานพิสูจน์ทางคณิตศาสตร์จึงพิสูจน์ได้มากกว่าการเขียนรหัสคอมพิวเตอร์?
ฉันสังเกตว่าฉันพบว่ามันง่ายกว่ามากในการเขียนหลักฐานทางคณิตศาสตร์โดยไม่ทำผิดพลาดไปกว่าเขียนโปรแกรมคอมพิวเตอร์ที่ไม่มีข้อบกพร่อง ดูเหมือนว่านี่เป็นสิ่งที่แพร่หลายมากกว่าเพียงแค่ประสบการณ์ของฉัน คนส่วนใหญ่ทำข้อบกพร่องซอฟต์แวร์ตลอดเวลาในการเขียนโปรแกรมและพวกเขามีคอมไพเลอร์เพื่อบอกพวกเขาว่าสิ่งที่ผิดพลาดอยู่ตลอดเวลา ฉันไม่เคยได้ยินใครบางคนที่เขียนโปรแกรมคอมพิวเตอร์ขนาดใหญ่โดยไม่มีข้อผิดพลาดในครั้งเดียวและมีความมั่นใจเต็มที่ว่าจะไม่มีข้อผิดพลาด (อันที่จริงโปรแกรมแทบจะไม่มีข้อบกพร่องแม้แต่โปรแกรมที่ดีบั๊กมาก ๆ ) แต่ผู้คนสามารถเขียนบทความหรือหนังสือทั้งหมดที่มีข้อพิสูจน์ทางคณิตศาสตร์โดยไม่ต้องมีคอมไพเลอร์ใด ๆ ให้คำติชมว่าพวกเขาทำผิดพลาด ให้ฉันมีความชัดเจน นี่ไม่ใช่การบอกว่าคนไม่ทำผิดพลาดในการพิสูจน์ทางคณิตศาสตร์ แต่สำหรับนักคณิตศาสตร์ที่มีประสบการณ์เพียงเล็กน้อยความผิดพลาดมักจะไม่ใช่ปัญหานั้นและสามารถแก้ไขได้โดยไม่ต้องใช้ "oracle ภายนอก" เช่นคอมไพเลอร์ชี้ไปที่ ผิดพลาด อันที่จริงถ้าไม่ใช่อย่างนั้นคณิตศาสตร์ก็แทบจะเป็นไปได้ ดังนั้นสิ่งนี้ทำให้ฉันถามคำถาม: อะไรคือความแตกต่างเกี่ยวกับการเขียนหลักฐานทางคณิตศาสตร์ที่ไม่ผิดพลาดและการเขียนรหัสคอมพิวเตอร์ที่ผิดพลาดที่ทำให้มันเป็นแบบนั้นเพื่อให้อดีตเป็นเวไนยมากขึ้นกว่าหลัง? อาจกล่าวได้ว่ามันเป็นความจริงที่ว่าผู้คนมี "oracle ภายนอก" ของคอมไพเลอร์ชี้ให้พวกเขาเห็นความผิดพลาดที่ทำให้โปรแกรมเมอร์ขี้เกียจป้องกันไม่ให้พวกเขาทำสิ่งที่จำเป็นในการเขียนโค้ดอย่างจริงจัง มุมมองนี้จะหมายความว่าหากพวกเขาไม่มีคอมไพเลอร์พวกเขาจะสามารถเป็นนักคณิตศาสตร์ได้อย่างไร้ข้อผิดพลาด คุณอาจพบว่าการโน้มน้าวใจนี้ แต่จากประสบการณ์การเขียนโปรแกรมและการเขียนหลักฐานทางคณิตศาสตร์ดูเหมือนว่าโดยสัญชาตญาณสำหรับฉันว่านี่ไม่ใช่คำอธิบาย ดูเหมือนว่ามีบางสิ่งที่แตกต่างกันโดยพื้นฐานเกี่ยวกับความพยายามทั้งสอง ความคิดเริ่มต้นของฉันคือสิ่งที่อาจเป็นความแตกต่างคือสำหรับนักคณิตศาสตร์การพิสูจน์ที่ถูกต้องจะต้องใช้ทุกขั้นตอนตรรกะในการแก้ไขเท่านั้น หากทุกขั้นตอนถูกต้องหลักฐานทั้งหมดจะถูกต้อง ในทางตรงกันข้ามสำหรับโปรแกรมที่จะไม่มีข้อบกพร่องไม่เพียง แต่ทุกบรรทัดของรหัสจะต้องถูกต้อง แต่มันเกี่ยวข้องกับทุกบรรทัดของรหัสในโปรแกรมจะต้องทำงานเช่นกัน ในคำอื่น ๆ ถ้าขั้นตอนในหลักฐานถูกต้องจากนั้นทำผิดพลาดในขั้นตอนจะไม่เลอะขั้นตอนเคย แต่ถ้าบรรทัดของโค้ดถูกเขียนลงอย่างถูกต้องแล้วการทำผิดในบรรทัดจะมีผลต่อการทำงานของบรรทัดดังนั้นเมื่อใดก็ตามที่เราเขียน lineเราต้องคำนึงถึงความสัมพันธ์กับบรรทัดอื่นทั้งหมด เราสามารถใช้การห่อหุ้มและสิ่งเหล่านั้นเพื่อ จำกัด สิ่งนี้ แต่มันไม่สามารถลบออกได้อย่างสมบูรณ์Y X X Y X XXXXYYYXXXXXXYYYXXXXXX ซึ่งหมายความว่ากระบวนการสำหรับการตรวจสอบข้อผิดพลาดในการพิสูจน์ทางคณิตศาสตร์นั้นเป็นเชิงเส้นในจำนวนขั้นตอนการพิสูจน์ แต่กระบวนการสำหรับการตรวจสอบข้อผิดพลาดในรหัสคอมพิวเตอร์นั้นเป็นเลขชี้กำลังเชิงเส้นในจำนวนบรรทัดของรหัส คุณคิดอย่างไร? …

3
ตรรกะคืออะไร?
อาจมีการขออภัยในการถามคำถามอื่นเกี่ยวกับข้อกำหนดเบื้องต้น แต่ฉันสับสนเกี่ยวกับจุดเริ่มต้น ฉันเจอคำศัพท์ต่าง ๆ เช่น "Modal Logic", "Temporal logic", "First-order Logic", "ตรรกะลำดับที่สอง" และ "ตรรกะลำดับที่สูงกว่า" "ลอจิก" มีความหมายอะไรในบริบทนี้ เราจะนิยามคำว่า "ลอจิก" อย่างจริงจังได้อย่างไร? หลังจากผ่านหน้าเริ่มต้นของหนังสือสองสามเล่มฉันสามารถสรุปได้อย่างคร่าว ๆ ว่า "ลอจิกคือวิธีการตัดสินใจสิ่งที่ตามมาจากสิ่งที่มีความสำคัญในการออกแบบภาษาการเขียนโปรแกรมตามที่กำหนดและอำนวยความสะดวกในการออกแบบโปรแกรม เพื่อทำความเข้าใจเกี่ยวกับจุดที่สองในลักษณะที่ละเอียด ตอนนี้มาถึง logics เหล่านี้ Logics เหล่านี้ทั้งหมด "temporal Logic", "Modal Logic", "First order Logic", "ตรรกะลำดับที่สูงกว่า" เป็นอิสระจากกันหรือเราจำเป็นต้องเข้าใจตรรกะเหล่านี้เล็กน้อยเพื่อทำความเข้าใจกับคนอื่น ๆ ในกลุ่มนี้? สรุปสิ่งที่จำเป็นสำหรับพวกเขาคืออะไร? (มันจะดีมากถ้าฉันจะได้รับคำแนะนำเกี่ยวกับวัสดุบางอย่างด้วย) PS: ขอบคุณมากสำหรับความมีน้ำใจของคุณ

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

2
ภาษาการเขียนโปรแกรมใด ๆ ใช้ฟังก์ชั่นวนซ้ำทั่วไปเป็นพื้นฐานหรือไม่?
นี่คือไร้เดียงสาและดังนั้นอาจเป็นคำถามที่ไม่ถูกต้องดังนั้นขออภัยล่วงหน้า! มุมมองของฉันคือว่าทัวริงเครื่องจักรสามารถถูกมองว่าเป็นพื้นฐานการคำนวณสำหรับภาษาโปรแกรมขั้นตอน / จำเป็น ในทำนองเดียวกันแลมบ์ดาแคลคูลัสเป็นพื้นฐานสำหรับภาษาโปรแกรมการทำงาน ฉันได้เรียนรู้เมื่อเร็ว ๆ นี้ว่าวิทยานิพนธ์โบสถ์ทัวริงยังแสดงให้เห็นความเท่าเทียมกันร่วมกันกับรูปแบบที่สามของการคำนวณ: recursive ฟังก์ชันทั่วไป มีภาษาการเขียนโปรแกรมที่ใช้สิ่งนี้เป็นรูปแบบการคำนวณหรือไม่? ถ้าไม่มีมีเหตุผลทางเทคนิคหรือไม่ เช่นนอกจาก "ยังไม่มีใครลองเลย"

6
วิทยาศาสตร์คอมพิวเตอร์กับคณิตศาสตร์แตกต่างจากบริบททางทฤษฎีอย่างไร
ฉันเป็นนักเรียนระดับวิทยาศาสตร์คอมพิวเตอร์ที่มีความหลงใหลในการเรียนวิชาคณิตศาสตร์เป็นอย่างมาก ฉันมีความเชื่ออย่างแน่วแน่ว่าวิทยาศาสตร์คอมพิวเตอร์หรือทฤษฎีวิทยาการคอมพิวเตอร์เป็นสาขาวิชาคณิตศาสตร์และตรรกศาสตร์โดยตรงและยังมีความเห็นว่าการศึกษาระดับปริญญาวิทยาการคอมพิวเตอร์นั้นมักจะต้องเน้นคณิตศาสตร์เป็นเรื่องจริง โปรดแก้ไขฉันหากฉันผิด ผมตรงไปตรงมารู้สึกว่ามีไม่มากของความแตกต่างใน 2 วิชาที่จะตรงไปตรงทุก"คำนวณ"เกี่ยวข้องกับ"คำนวณ"แม้ว่าทุก"คำนวณ"อาจจะไม่"คำนวณ" โปรดให้ข้อมูลและหลักฐานที่สำคัญอีกครั้งและอัปเดตฉันหากฉันเข้าใจผิดที่นี่ ขอขอบคุณ

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

3
แชนนอนเอนโทรปีของ 0.922, 3 ค่าที่แตกต่าง
กำหนดสตริงของค่าB C , นอนส์เอนโทรปีในฐานล็อก 2มาถึง0.922 จากสิ่งที่ฉันเข้าใจในฐาน 2 Shannon Entropy ได้ปัดเศษขึ้นเป็นจำนวนบิตขั้นต่ำในไบนารีเพื่อแสดงค่าเดียวAAAAAAAABCAAAAAAAABCAAAAAAAABC2220.9220.9220.922222 นำมาจากการแนะนำในหน้าวิกิพีเดียนี้: https://en.wikipedia.org/wiki/Entropy_%28information_theory%29 ดังนั้นค่าสามค่าสามารถแทนด้วยหนึ่งบิตได้อย่างไร AAA อาจเท่ากับ 111 , BBB อาจเป็น 000 ; แต่คุณจะเป็นตัวแทนของ CCCอย่างไร? ขอบคุณล่วงหน้า.

1
หัวข้อคณิตศาสตร์หรือสาขาที่เพิ่มความสามารถในการเขียนโปรแกรมคอมพิวเตอร์? [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน2 ปีที่ผ่านมา โดยทั่วไปโปรแกรมเมอร์คอมพิวเตอร์ที่เป็นนักคณิตศาสตร์หรือมีพื้นฐานคณิตศาสตร์ดีมากในด้านอัลกอริธึมและการเขียนโปรแกรมคอมพิวเตอร์โดยทั่วไป สิ่งที่ฉันไม่ได้พูด: คณิตศาสตร์จำเป็นต้องเป็นโปรแกรมเมอร์คอมพิวเตอร์ที่ดี คณิตศาสตร์เป็นสิ่งจำเป็นสำหรับการเขียนโปรแกรม นักคณิตศาสตร์ที่ดีเป็นโปรแกรมเมอร์ที่ดีและในทางกลับกัน สิ่งที่ฉันพูด ฉันต้องการเรียนรู้คณิตศาสตร์เพราะฉันเชื่อว่ามันจะทำให้ฉันเป็นโปรแกรมเมอร์ที่ดีขึ้น หัวข้อ / หัวข้อทางคณิตศาสตร์ใดบ้างที่จะช่วยให้ฉันเป็นโปรแกรมเมอร์ที่ดีขึ้น คำตอบของแบบฟอร์มmath topic - corresponding cs areaจะได้รับการชื่นชม NB:ฉันถามสิ่งนี้ใน StackOverflow ว่ามีการประกาศที่ไหน ฉันต้องการที่จะเรียนรู้มันในเวลาว่างในแบบที่ฉันได้ทำกับการเขียนโปรแกรมคอมพิวเตอร์ ขอบคุณล่วงหน้า.

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

2
โซ่มาร์คอฟคืออะไร?
ขณะนี้ฉันกำลังอ่านบทความเกี่ยวกับก้อนลูกโซ่มาร์คอฟและฉันไม่สามารถเห็นความแตกต่างระหว่างลูกโซ่มาร์คอฟและกราฟถ่วงน้ำหนักแบบกำกับ ตัวอย่างเช่นในบทความการหาพื้นที่รัฐที่เหมาะสมที่สุดในเครือมาร์คอฟพวกเขาให้คำจำกัดความต่อไปนี้ของ CTMC (ห่วงโซ่มาร์คอฟเวลาต่อเนื่อง): เราพิจารณา CTMC ที่ จำกัด (S,Q)(S,Q)(\mathcal{S}, Q) กับพื้นที่ของรัฐ S={x1,x2,…,xn}S={x1,x2,…,xn}\mathcal{S} = \{x_1, x_2, \ldots, x_n\} โดยเมทริกซ์อัตราการเปลี่ยนแปลง Q:S×S→R+Q:S×S→R+Q: \mathcal{S} \times \mathcal{S} \to \mathbb{R}^+. พวกเขาไม่ได้พูดถึงคุณสมบัติมาร์คอฟเลยและในความเป็นจริงถ้าน้ำหนักบนขอบแสดงถึงความน่าจะเป็นฉันเชื่อว่าคุณสมบัติมาร์คอฟถือเป็นเรื่องเล็กน้อยเนื่องจากความน่าจะเป็นขึ้นอยู่กับสถานะปัจจุบันของโซ่เท่านั้นและไม่ใช่เส้นทางที่นำไปสู่ เพื่อมัน ในบทความอื่น ๆเกี่ยวกับคุณสมบัติเชิงสัมพันธ์ของโซ่ของความสามารถมาร์คอฟLumpabilityถูกกำหนดในทำนองเดียวกัน: ห่วงโซ่มาร์คอฟ MMM จะแสดงเป็น triplet (S,P,π)(S,P,π)(S, P, \pi) ที่ไหน SSS เป็นชุด จำกัด ของรัฐของ MMM, PPP เมทริกซ์ความน่าจะเป็นช่วงการเปลี่ยนภาพแสดงความน่าจะเป็นที่จะได้รับจากสถานะหนึ่งไปอีกสถานะหนึ่งและ ππ\pi คือการแจกแจงความน่าจะเป็นเบื้องต้นที่แสดงถึงโอกาสที่ระบบจะเริ่มในสถานะที่แน่นอน อีกครั้งไม่พูดถึงอดีตหรืออนาคตหรือความเป็นอิสระ มีกระดาษแผ่นที่สามSimple O (m logn) …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.