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

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

1
มีทฤษฎีมอร์ฟ (isomorphism) ระหว่างหมวดหมู่ย่อยกับพีชคณิตเชิงสัมพันธ์หรือไม่?
มันมาจากมุมมองข้อมูลขนาดใหญ่ โดยทั่วไปเฟรมเวิร์กจำนวนมาก (เช่น Apache Spark) "ชดเชย" ขาดการดำเนินการเชิงสัมพันธ์ด้วยการจัดหาอินเทอร์เฟซเหมือน Functor / Monad และมีการเคลื่อนไหวที่คล้ายกันต่อการแปลง cat-to-SQL (Slick in Scala) ตัวอย่างเช่นเราต้องการการเข้าร่วมที่เป็นธรรมชาติ (สมมติว่าไม่มีการซ้ำซ้อนกับดัชนี) สำหรับการคูณเวกเตอร์องค์ประกอบที่ชาญฉลาดจากมุมมอง SQL ซึ่งอาจถือได้ว่าเป็นzip + map(multiply) (Spark's MLib แต่มีอยู่แล้วElementwiseProduct)ในแอปพลิเคชันของทฤษฎีหมวดหมู่ เพียงแค่พูด (ตัวอย่างต่อไปนี้อยู่ใน Scala): subcase อ้างอิงของเข้าร่วมอาจจะคิดว่าเป็น functor applicative (คอลเลกชันเรียงมากกว่า) ซึ่งในทางกลับกันมันจะช่วยให้เราzip: ->List(1,2,3).ap(List(2,4,8).map(a => (b: Int) => a * b)) (List(1,2,3) zip List(2,4,8)).map(x => x._1 * x._2)ยิ่งไปกว่านั้นเราสามารถชักจูงให้ผู้อื่นเข้าร่วมโดยสมมติว่ามีgroupByการดำเนินการล่วงหน้า การเข้าร่วมและการเลือกอื่น …

3
กลยุทธ์ที่เหมาะสมที่สุดสำหรับเกมที่เป็นนามธรรม
ฉันได้รับปัญหาดังต่อไปนี้ในการให้สัมภาษณ์ (ที่ผมเคยล้มเหลวแล้วจะแก้ปัญหาไม่ได้พยายามที่จะโกงวิธีการที่ผ่านมาของฉัน): เกมเริ่มต้นด้วยจำนวนจำนวนเต็มบวก0 (เช่น0 = 1234 .) หมายเลขนี้จะถูกแปลงเป็นแทน binary และNคือจำนวนบิตที่กำหนดให้1 (เช่นA 0 = b 100 1101 0010 , N = 5 )A0A0A_0A0=1234A0=1234A_0 = 1234NNN111A0=b100 1101 0010A0=b100 1101 0010A_0 = b100\ 1101\ 0010N=5.N=5.N = 5. ผู้เล่นที่ 1เลือกหมายเลขน้อยกว่า0 B 0ต้องมีเพียงชุดเดียวบิต 1 (เช่นB 0 = ข10 0000 0000 = 512 .) ให้1 = …

5
เหตุใดความสมบูรณ์จึงหมายถึงความมั่นคง
ฉันกำลังอ่านคำถามความสอดคล้องและความสมบูรณ์หมายถึงความสมบูรณ์หรือไม่ และคำสั่งแรกในนั้นบอกว่า: ฉันเข้าใจว่าความสมบูรณ์นั้นหมายถึงความมั่นคง ซึ่งฉันค่อนข้างงงเกี่ยวกับเพราะฉันคิดว่าความแข็งแรงเป็นคำสั่งที่อ่อนแอกว่าความสอดคล้อง (เช่นฉันคิดว่าระบบที่สอดคล้องต้องเป็นเสียง แต่ฉันเดาว่ามันไม่เป็นความจริง) ฉันใช้นิยามที่ไม่เป็นทางการ Scott Aaronson ใช้ในหลักสูตร 6.045 / 18.400 ที่ MITเพื่อความมั่นคงและความมั่นคง: Soundness = ระบบพิสูจน์เป็นเสียงถ้าคำสั่งทั้งหมดที่พิสูจน์นั้นเป็นจริง เช่น IF ( ϕϕ\phiสามารถพิสูจน์ได้)⟹⟹\implies( ϕϕ\phiเป็นจริง) ดังนั้นหาก (มีเส้นทางไปยังสูตร) ​​แล้ว (สูตรนั้นเป็นจริง) ความสอดคล้อง = ระบบที่สอดคล้องไม่เคยพิสูจน์ A และไม่ (A) มีเพียง A หรือการปฏิเสธเท่านั้นที่สามารถเป็นจริงได้ การใช้คำจำกัดความเหล่านั้น (อาจไม่เป็นทางการ) ในใจฉันได้สร้างตัวอย่างต่อไปนี้เพื่อแสดงให้เห็นว่ามีระบบที่มีเสียง แต่ไม่สอดคล้องกัน: CharlieSystem≜{Axioms={A,¬A},InferenceRules={NOT(⋅)}}CharlieSystem≜{Axioms={A,¬A},InferenceRules={NOT(⋅)}} CharlieSystem \triangleq \{ Axioms=\{A, \neg A \}, InferenceRules=\{NOT(\cdot) \} …

2
"ความขัดแย้ง" ในตรรกะเชิงสร้างสรรค์คืออะไร?
ในพื้นฐานการปฏิบัติสำหรับภาษาการเขียนโปรแกรม Robert Harper กล่าว ถ้าการเสนอให้เป็นความจริงหมายถึงการมีหลักฐานพิสูจน์แล้วข้อเสนอนั้นเป็นเท็จอย่างไร? หมายความว่าเรามีการพิสูจน์แล้วว่าไม่สามารถพิสูจน์ได้ นั่นคือข้อเสนอเป็นเท็จถ้าเราสามารถแสดงให้เห็นว่าการสันนิษฐานว่ามันเป็นความจริง (มีหลักฐาน) ขัดแย้งกับข้อเท็จจริงที่รู้จัก แต่สิ่งนี้ทำให้เกิดคำถาม - อะไรคือความขัดแย้งในตรรกะเชิงสร้างสรรค์ / เชิงสัญชาตญาณ? สิ่งนี้มีความหมายในแง่ของการได้มาอย่างใด? สิ่งนี้จะเกิดขึ้นในลักษณะที่เหมาะสมได้อย่างไร? จะมีคำพิพากษาของแบบฟอร์ม( ⊃ ⊥ จริง)จำเป็นที่จะต้องได้รับการแนะนำ?(⊥ true)(⊥ true)(\bot\text{ true})(A⊃⊥ true)(A⊃⊥ true)(A \supset \bot \text{ true}) อีกวิธีหนึ่งอาจหมายถึงในแง่ของผู้อ่านที่ใช้ดุลยพินิจของพวกเขาในการติดฉลากอย่างไม่เป็นทางการหรือไม่? ตัวอย่างเช่นการตีความและa ≠ bเป็นข้อเสนอที่ขัดแย้งกันa=ba=ba = ba≠ba≠ba \neq b
12 logic 

1
การบรรจุถุงของขวัญเป็นเรื่องง่ายสำหรับรูเพิร์ตมากกว่าซานตาหรือไม่?
หรือ: เราจำเป็นต้องมีรูเพิร์ตเพื่อรับของขวัญหรือไม่? ปัญหาการกำหนดเส้นทางด้านข้างซานต้าเผชิญกับปัญหาต่อไปนี้ (หลายครั้งหลายครั้ง): รับกระเป๋าที่มีความจุและชุดของขวัญ , แต่ละอันมีขนาดเขาต้องการทำให้ลูกมีความสุข เขารู้จากรายการความปรารถนาทั้งหมดว่าค่าเด็กแสดงอย่างแน่นอนมาก{ P 1 , ... , P n } s ฉัน { ค1 , ... , คk } คเจพีฉันv ฉัน, เจ ∈ Q ≥ 0CCC{p1,…,pn}{p1,…,pn}\{p_1, \dots, p_n\}sisis_i{c1,…,ck}{c1,…,ck}\{c_1, \dots, c_k\}cjcjc_jpipip_ivi,j∈Q≥0vi,j∈Q≥0v_{i,j} \in \mathbb{Q}_{\geq 0} ซึ่งชุดของขวัญ (แบบแยกส่วน) ที่เลือกให้กับเด็กแต่ละคนเพื่อให้ทุกอย่างลงตัวเช่นIj⊆[1..n]Ij⊆[1..n]I_j \subseteq [1..n] ∑j∈[1..k]∑i∈Ijsi≤C∑j∈[1..k]∑i∈Ijsi≤C\qquad\displaystyle \sum_{j \in [1..k]} \sum_{i \in …

2
การพิสูจน์ความซ้ำซากกับ coq
ปัจจุบันฉันต้องเรียนรู้ Coq และไม่ทราบวิธีจัดการกับor: ตัวอย่างง่ายๆอย่างที่ฉันไม่เห็นวิธีที่จะพิสูจน์: Theorem T0: x \/ ~x. ฉันจะขอบคุณมันจริงๆถ้ามีคนช่วยฉันได้ สำหรับการอ้างอิงฉันใช้สูตรโกงนี้ ตัวอย่างของการพิสูจน์ที่ฉันมีอยู่ในใจ: นี่คือการปฏิเสธคู่: Require Import Classical_Prop. Parameters x: Prop. Theorem T7: (~~x) -> x. intro H. apply NNPP. exact H. Qed.
12 logic  coq 

4
PRNG สำหรับสร้างตัวเลขด้วย n บิตตั้งค่า
ฉันกำลังเขียนโค้ดบางส่วนเพื่อสร้างข้อมูลไบนารี ฉันต้องการสร้างหมายเลข 64 บิตด้วยจำนวนบิตที่กำหนดโดยเฉพาะ แม่นยำยิ่งขึ้นขั้นตอนควรใช้เวลาและส่งกลับตัวเลข 64 บิตหลอกเทียมด้วยบิตตั้งค่าเป็นและส่วนที่เหลือตั้งค่าเป็น 00&lt;n&lt;640&lt;n&lt;640 < n < 64nnn111 แนวทางปัจจุบันของฉันเกี่ยวข้องกับสิ่งนี้: สร้าง pseudorandom 64 บิตจำนวนkkkk นับบิตในจัดเก็บผลในขkkkbbb ถ้า , เอาต์พุต ; มิฉะนั้นไปที่ 1b=nb=nb = nkkk ใช้งานได้ แต่ดูเหมือนไม่เหมาะสม มีอัลกอริธึม PRNG บางประเภทที่สามารถสร้างตัวเลขด้วยบิตเซตยิ่งกว่านี้หรือไม่?nnn

5
การคาดเดา Goldbach และหมายเลขบีเวอร์ไม่ว่าง?
พื้นหลัง: ฉันเป็นคนธรรมดาที่สมบูรณ์ในด้านวิทยาศาสตร์คอมพิวเตอร์ ฉันกำลังอ่านเกี่ยวกับหมายเลข Busy Beaver ที่นี่และฉันพบข้อความต่อไปนี้: มนุษยชาติอาจไม่เคยรู้คุณค่าของ BB (6) สำหรับบางคนโดยเฉพาะอย่างยิ่งของ BB (7) หรือจำนวนที่สูงกว่าใด ๆ ในลำดับ อันที่จริงแล้วผู้เข้าแข่งขันห้าและหกอันดับต้นนั้นหลบเลี่ยงเรา: เราไม่สามารถอธิบายได้ว่าพวกเขา 'ทำงาน' อย่างไรในแง่ของมนุษย์ หากความคิดสร้างสรรค์เป็นแบบของการออกแบบมันไม่ได้เป็นเพราะมนุษย์ใส่ไว้ในนั้น วิธีหนึ่งในการทำความเข้าใจนี้คือแม้แต่เครื่องทัวริงขนาดเล็กก็สามารถเข้ารหัสปัญหาทางคณิตศาสตร์ที่ลึกซึ้งได้ ใช้การคาดคะเนของ Goldbach ว่าทุก ๆ หมายเลขคู่ 4 หรือสูงกว่านั้นจะเป็นผลรวมของจำนวนเฉพาะสองตัว: 10 = 7 + 3, 18 = 13 + 5 การคาดเดานั้นต่อต้านหลักฐานมาตั้งแต่ปี 1742 แต่เราสามารถออกแบบเครื่องทัวริงด้วยสมมุติว่า 100 กฎที่ทดสอบแต่ละเลขคู่เพื่อดูว่าเป็นผลรวมของสองช่วงเวลาและหยุดเมื่อใดและถ้าพบตัวอย่างที่ การคาดคะเน จากนั้นรู้ว่า BB (100) โดยหลักการเราสามารถเรียกใช้เครื่องนี้เป็นขั้นตอน BB (100) …

3
ปัญหาคาดเดา แต่ไม่พิสูจน์ว่าง่าย
เรามีปัญหามากมายเช่นการแยกตัวประกอบที่คาดเดาอย่างมาก แต่ไม่ได้รับการพิสูจน์ว่าอยู่นอก P มีคำถามใด ๆ ที่มีคุณสมบัติตรงกันข้ามคือกล่าวว่าพวกเขาคาดเดาอย่างมาก แต่ไม่ได้พิสูจน์ว่าอยู่ภายใน P หรือไม่

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

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

1
RAM สามารถคำนวณหมายเลขGödelของตัวเองได้หรือไม่
คุณสามารถรับจำนวนGödelของ RAM ได้ด้วยการทำรายการคำสั่งและทำให้รายการนี้เป็นจำนวนเต็ม ดังนั้นสิ่งที่ฉันคิดว่าเป็นเช่น "RAM ที่จะส่งกลับหมายเลขGödelของตัวเอง (พูด ) จะต้องมีข้อมูลอยู่ในนั้นดังนั้นจำนวนเต็มจะมากกว่าดังนั้นมันจะไม่คืนGödelของตัวเอง จำนวน."xxxxxxxxx แต่จากนั้นฉันสังเกตเห็นว่าสำหรับตัวเลขเฉพาะคุณสามารถทำการบีบอัดเช่นการคำนวณแทนที่จะเขียน 100,000 ... 000 ในรหัสของ RAM น่าจะเป็นจำนวนGödelจะไม่เป็นว่า แต่อย่างน้อยมันก็อาจจะเป็น10999910999910^{9999}10999910999910^{9999} คำถาม:มี RAM ที่คำนวณหมายเลขGödelของตัวเองหรือไม่ จะมีแบบนั้นได้ไหม

2
ทำไมปัจจัยใน Co-NP
ฉันกำลังมีปัญหาห่อหุ้มหัวของฉันปัญหา PRIME คอมโพสิตปัจจัยและวิธีที่พวกเขาเกี่ยวข้องในแง่ของความซับซ้อน ฉันเข้าใจว่า PRIME นั้นแสดงให้เห็นว่าอยู่ในโดยการทดสอบแบบดั้งเดิมของ AKS และฉันเชื่อว่าสิ่งนี้ใช้ได้กับคอมโพสิตเช่นกันPPP สำหรับปัจจัย FCTO R = { ( m , r ) :∃ s ดังกล่าวที่1 &lt; s &lt; R และ s แบ่ง เมตร}FACTOR={(m,r):∃s such that1&lt;s&lt;r and s divides m}FACTOR = \{(m,r) :\;\; \exists s \text{ such that} 1<s<r \text{ and } s \text{ divides …

2
กรณีพิเศษของปัญหาการตั้งเวลาสามารถแก้ไขได้ในเวลาเชิงเส้นหรือไม่?
อลิซนักเรียนทำการบ้านมากมายในสัปดาห์หน้า การบ้านแต่ละรายการจะใช้เวลาหนึ่งวัน แต่ละรายการมีกำหนดเวลาและผลกระทบทางลบต่อผลการเรียนของเธอ (สมมติว่าเป็นจำนวนจริงคะแนนโบนัสสำหรับการเปรียบเทียบเท่านั้น) หากเธอพลาดกำหนดเวลา เขียนฟังก์ชั่นที่ให้รายการของ (กำหนดเวลาผลกระทบระดับคะแนน) กำหนดตารางเวลาสำหรับการทำการบ้านในวันที่ลดผลรวมของผลกระทบที่ไม่ดีต่อเกรดของเธอ การบ้านทั้งหมดจะต้องทำในที่สุด แต่ถ้าเธอพลาดกำหนดเวลาสำหรับรายการมันไม่สำคัญว่าเธอจะเปิดช้าแค่ไหน ในสูตรทางเลือก: ACME corp ต้องการส่งน้ำให้กับลูกค้า พวกเขาทั้งหมดอาศัยอยู่ตามถนนสายเดียว ACME มีหลุมหลายแห่งกระจายอยู่ตามถนน แต่ละบ่อมีน้ำเพียงพอสำหรับลูกค้าหนึ่งราย ลูกค้าเสนอราคาเป็นจำนวนเงินที่แตกต่างกัน น้ำไหลลงเขาเท่านั้น เพิ่มรายได้ให้สูงสุดด้วยการเลือกลูกค้าที่จะจัดหา เราสามารถจัดเรียงกำหนดเวลาโดยใช้การจัดเรียงกลุ่ม (หรือสมมติว่าเราได้เรียงลำดับตามกำหนดเวลาแล้ว) เราสามารถแก้ปัญหาได้อย่างง่ายดายด้วยอัลกอริธึมโลภหากเราจัดเรียงโดยการกระทบจากระดับสูงสุดก่อน ทางออกนั้นจะไม่ดีไปกว่า O (n log n) ได้รับแรงบันดาลใจจากMedian of MediansและอัลกอริทึมSpanning Tree แบบขั้นต่ำแบบเส้นตรงฉันสงสัยว่าเราสามารถแก้ปัญหาการตั้งเวลา / การไหลแบบง่าย ๆ ของฉันในเวลาเชิงเส้น (แบบสุ่ม?) ได้เช่นกัน ฉันกำลังมองหา: อัลกอริทึมเวลาเชิงเส้น (อาจสุ่ม) หรือมิฉะนั้นก็โต้แย้งว่าไม่สามารถใช้เวลาเชิงเส้นได้ ในฐานะที่เป็นหินก้าว: ฉันได้พิสูจน์แล้วว่าเพิ่งรู้ว่ารายการใดที่สามารถทำได้ก่อนกำหนดเวลาของพวกเขาเพียงพอที่จะสร้างตารางเวลาที่สมบูรณ์ในเวลาเชิงเส้น (ข้อมูลเชิงลึกนั้นเป็นรากฐานของสูตรที่สองที่ฉันถามเกี่ยวกับใบรับรองเท่านั้น) โปรแกรมเชิงเส้นตรง (integral!) สามารถจำลองปัญหานี้ได้ …


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