คำถามติดแท็ก logic

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

5
มีความสัมพันธ์ที่เป็นรูปธรรมระหว่างทฤษฎีบทความไม่สมบูรณ์ของGödelปัญหาการหยุดชะงักและเครื่องจักรทัวริงสากลหรือไม่?
ฉันมักจะคิดราง ๆ ว่าคำตอบของคำถามข้างต้นนั้นยืนยันตามบรรทัดต่อไปนี้ ทฤษฎีความไม่สมบูรณ์ของGödelและ undecidability ของปัญหาการหยุดชะงักทั้งสองเป็นผลเชิงลบเกี่ยวกับความสามารถในการตัดสินใจและสร้างขึ้นโดยการโต้แย้งในแนวทแยง (และในปี 1930) ดังนั้นพวกเขาจะต้องมีสองวิธีในการดูเรื่องเดียวกัน และฉันคิดว่าทัวริงใช้เครื่องทัวริงสากลเพื่อแสดงว่าปัญหาการหยุดชะงักไม่สามารถแก้ไขได้ (ดูคณิตศาสตร์นี้คำถามSE .) แต่ตอนนี้ที่ (สอนหลักสูตรในการคำนวณ) ฉันมองเข้าไปในเรื่องเหล่านี้ฉันค่อนข้างสับสนกับสิ่งที่ฉันพบ ดังนั้นฉันต้องการความช่วยเหลือในการยืดความคิดของฉันออกไป ฉันรู้ว่าในอีกด้านหนึ่งการโต้แย้งในแนวทแยงของGödelนั้นลึกซึ้งมาก: มันต้องใช้งานจำนวนมากเพื่อสร้างคำสั่งทางคณิตศาสตร์ที่สามารถตีความได้ว่าพูดอะไรบางอย่างเกี่ยวกับความสามารถในการเป็นของตัวเอง ในทางกลับกันการพิสูจน์ความลังเลของปัญหาการหยุดชะงักที่ฉันพบที่นี่นั้นง่ายมากและไม่ได้กล่าวถึงเครื่องจักรทัวริงอย่างชัดเจนแม้แต่การมีอยู่ของเครื่องจักรทัวริงสากล คำถามเชิงปฏิบัติเกี่ยวกับเครื่องจักรทัวริงสากลคือไม่ว่าจะมีความสำคัญใด ๆ ที่ตัวอักษรของเครื่องจักรทัวริงสากลเป็นเช่นเดียวกับเครื่องจักรทัวริงที่เลียนแบบ ฉันคิดว่ามันเป็นสิ่งที่จำเป็นเพื่อสร้างการโต้แย้งในแนวทแยงที่เหมาะสม (มีเครื่องจำลองตัวเอง) แต่ฉันไม่พบความสนใจใด ๆ กับคำถามนี้ในคอลเลกชันที่ทำให้สับสนของคำอธิบายของเครื่องจักรสากลที่ฉันพบในอินเทอร์เน็ต หากไม่ใช่สำหรับปัญหาการหยุดชะงักทัวริงของเครื่องจักรสากลมีประโยชน์ในการโต้แย้งแนวทแยงหรือไม่? ในที่สุดฉันก็สับสนโดยส่วนต่อไปนี้ของบทความ WP เดียวกันซึ่งบอกว่ารูปแบบที่อ่อนแอของความไม่สมบูรณ์ของGödelดังต่อไปนี้จากปัญหาการหยุดชะงัก: "axiomatisation axiomatisation ที่สมบูรณ์สอดคล้องและเสียงของคำสั่งทั้งหมดเกี่ยวกับตัวเลขธรรมชาติเป็นสิ่งที่ไม่สามารถทำได้" ที่ "เสียง" ควรจะอ่อนตัวลง ฉันรู้ว่าทฤษฎีนั้นมีความสอดคล้องกันหากเราไม่สามารถได้มาซึ่งความขัดแย้งและทฤษฎีที่สมบูรณ์เกี่ยวกับตัวเลขธรรมชาติดูเหมือนจะหมายความว่าข้อความจริงทั้งหมดเกี่ยวกับตัวเลขธรรมชาติสามารถได้มาในนั้น ฉันรู้ว่าGödelกล่าวว่าทฤษฎีดังกล่าวไม่มีอยู่จริง แต่ฉันล้มเหลวที่จะเห็นว่าสัตว์ในสมมุติฐานนั้นอาจจะฟังดูไม่เป็นเช่นกล่าวได้รับมาซึ่งเป็นเท็จสำหรับจำนวนธรรมชาติ: การปฏิเสธของคำสั่งดังกล่าวจะเป็นจริง และโดยสมบูรณ์แล้วก็สืบเนื่องซึ่งจะขัดแย้งกับความมั่นคง ฉันขอขอบคุณการชี้แจงใด ๆ ในประเด็นเหล่านี้

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

6
การเรียนรู้ทฤษฎีการพิสูจน์อัตโนมัติ
ฉันกำลังเรียนรู้ทฤษฎีการพิสูจน์โดยอัตโนมัติ / นักแก้ปัญหา / ผู้ช่วยพิสูจน์ด้วยตนเองและโพสต์คำถามเกี่ยวกับกระบวนการเริ่มต้นที่นี่ โปรดทราบว่าหัวข้อเหล่านี้ไม่สามารถย่อยได้ง่ายโดยไม่มีพื้นหลังใน logics (ทางคณิตศาสตร์) หากคุณมีปัญหาเกี่ยวกับคำศัพท์พื้นฐานโปรดอ่านสิ่งเหล่านี้เช่นLogics in Computer Scienceโดย M. Huth และ M. Ryan (โดยเฉพาะบทที่หนึ่งสองและสี่) หรือAn Introduction to Mathematical Logic และ Type Theoryโดย P แอนดรู สำหรับการแนะนำสั้น ๆ ลงในลำดับตรรกะที่สูงขึ้น (HOL) ดูที่นี่ ฉันดูCoqและอ่านบทแรกของการเพิ่มขึ้นของอิซาเบลในหมู่คนอื่น ๆ ; ประเภทของผู้ให้บริการทฤษฎีบทอัตโนมัติ ฉันรู้จัก Prolog มาสองสามทศวรรษแล้วและตอนนี้ฉันได้เรียนรู้ F # ดังนั้น ML, O'Caml และ LISP จึงเป็นโบนัส Haskell เป็นสัตว์ร้ายต่างชนิดกัน …

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

3
แนะนำทฤษฎีประเภทมาร์ติน - โลฟ
อะไรจะเป็นการแนะนำที่ดีที่สุดสำหรับแนวคิดของมาร์ติน - ลอฟเกี่ยวกับทฤษฎีการพิมพ์? ฉันได้ดูการบรรยายจากโรงเรียนภาคฤดูร้อนของ Oregon PL แต่ฉันก็ยังงงกับคำถามต่อไปนี้: ประเภทคืออะไร ฉันรู้ว่าเซตคืออะไรเนื่องจากคุณสามารถกำหนดมันด้วยสัจพจน์ของ ZF ปกติและพวกมันมีโมเดลคอนกรีตที่ใช้งานง่ายมาก แค่นึกถึงตะกร้าที่เต็มไปด้วยสิ่งของ อย่างไรก็ตามฉันยังไม่เห็นคำจำกัดความที่เหมาะสมของประเภทและฉันสงสัยว่ามีแหล่งที่มาที่จะกลั่นความคิดนี้เพื่อหลอกตา

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

2
การหาคำศัพท์แลมบ์ดาที่มีประเภทยูเนี่ยน
หนังสือเรียนจำนวนมากครอบคลุมประเภทของจุดตัดในแลมบ์ดา - แคลคูลัส กฎการพิมพ์สำหรับการแยกสามารถกำหนดได้ดังต่อไปนี้ (ด้านบนของแลมบ์ดาแคลคูลัสที่พิมพ์ด้วยการพิมพ์ย่อย): Γ⊢M:T1Γ⊢M:T2Γ⊢M:T1∧T2(∧I)Γ⊢M:⊤(⊤I)Γ⊢M:T1Γ⊢M:T2Γ⊢M:T1∧T2(∧I)Γ⊢M:⊤(⊤I) \dfrac{\Gamma \vdash M : T_1 \quad \Gamma \vdash M : T_2} {\Gamma \vdash M : T_1 \wedge T_2} (\wedge I) \qquad\qquad \dfrac{} {\Gamma \vdash M : \top} (\top I) ประเภทแยกมีคุณสมบัติที่น่าสนใจเกี่ยวกับการทำให้เป็นมาตรฐาน: คำแลมบ์ดาสามารถพิมพ์ได้โดยไม่ต้องใช้⊤I⊤I\top Iกฎถ้ามันเป็นมาตรฐานอย่างยิ่ง คำแลมบ์ดายอมรับประเภทที่ไม่มี⊤⊤\top iff ซึ่งมีรูปแบบปกติ ถ้าหากแทนที่จะเพิ่มทางแยกเราจะเพิ่มสหภาพ Γ⊢M:T1Γ⊢M:T1∨T2(∨I1)Γ⊢M:T2Γ⊢M:T1∨T2(∨I2)Γ⊢M:T1Γ⊢M:T1∨T2(∨I1)Γ⊢M:T2Γ⊢M:T1∨T2(∨I2) \dfrac{\Gamma \vdash M : T_1} {\Gamma \vdash …

2
เหตุใด C ประเภทโมฆะจึงไม่คล้ายกับประเภทที่ว่าง / ด้านล่าง
Wikipedia ตลอดจนแหล่งข้อมูลอื่น ๆ ที่ฉันได้พบรายการvoidประเภทC เป็นหน่วยประเภทซึ่งตรงข้ามกับประเภทที่ว่างเปล่า ฉันพบว่ามันสับสนเพราะฉันคิดว่าvoidเหมาะกับนิยามของประเภทที่ว่าง / ล่าง ไม่มีค่านิยมใด ๆ อยู่voidเท่าที่ฉันจะบอกได้ ฟังก์ชั่นที่มีประเภทคืนค่าเป็นโมฆะระบุว่าฟังก์ชั่นจะไม่ส่งคืนสิ่งใดดังนั้นจึงสามารถทำงานได้เพียงผลข้างเคียงเท่านั้น ตัวชี้ชนิดvoid*เป็นชนิดย่อยของชนิดตัวชี้อื่นทั้งหมด นอกจากนี้การแปลงไปยังและจากvoid*ใน C นั้นเป็นนัย ผมไม่แน่ใจว่าถ้าจุดสุดท้ายมีบุญใด ๆ ที่เป็นข้อโต้แย้งสำหรับvoidการเป็นประเภทที่ว่างเปล่าเป็นมากหรือน้อยเป็นกรณีพิเศษที่มีความสัมพันธ์ไม่มากที่จะvoid*void ในทางกลับกันvoidตัวมันเองไม่ใช่ประเภทย่อยของประเภทอื่นทั้งหมดซึ่งเท่าที่ฉันสามารถบอกได้ว่าเป็นข้อกำหนดสำหรับประเภทที่จะเป็นประเภทด้านล่าง
28 type-theory  c  logic  modal-logic  coq  equality  coinduction  artificial-intelligence  computer-architecture  compilers  asymptotics  formal-languages  asymptotics  landau-notation  asymptotics  turing-machines  optimization  decision-problem  rice-theorem  algorithms  arithmetic  floating-point  automata  finite-automata  data-structures  search-trees  balanced-search-trees  complexity-theory  asymptotics  amortized-analysis  complexity-theory  graphs  np-complete  reductions  np-hard  algorithms  string-metrics  computability  artificial-intelligence  halting-problem  turing-machines  computation-models  graph-theory  terminology  complexity-theory  decision-problem  polynomial-time  algorithms  algorithm-analysis  optimization  runtime-analysis  loops  turing-machines  computation-models  recurrence-relation  master-theorem  complexity-theory  asymptotics  parallel-computing  landau-notation  terminology  optimization  decision-problem  complexity-theory  polynomial-time  counting  coding-theory  permutations  encoding-scheme  error-correcting-codes  machine-learning  natural-language-processing  algorithms  graphs  social-networks  network-analysis  relational-algebra  constraint-satisfaction  polymorphisms  algorithms  graphs  trees 

6
การสร้างชุดค่าผสมจากชุดคู่โดยไม่มีการทำซ้ำองค์ประกอบ
ฉันมีชุดของคู่ แต่ละคู่เป็นรูปแบบ (x, y) เช่นว่า x, y [0,n)เป็นจำนวนเต็มจากช่วง ดังนั้นถ้า n คือ 4 ดังนั้นฉันมีคู่ต่อไปนี้: (0,1) (0,2) (0,3) (1,2) (1,3) (2,3) ฉันมีคู่แล้ว ตอนนี้ฉันต้องสร้างชุดค่าผสมโดยใช้n/2คู่ที่ไม่มีจำนวนเต็มซ้ำ (กล่าวอีกอย่างหนึ่งว่าจำนวนเต็มแต่ละค่าปรากฏอย่างน้อยหนึ่งครั้งในชุดค่าผสมสุดท้าย) ต่อไปนี้เป็นตัวอย่างของชุดค่าผสมที่ถูกต้องและไม่ถูกต้องเพื่อความเข้าใจที่ดีขึ้น 1. (0,1)(1,2) [Invalid as 3 does not occur anywhere] 2. (0,2)(1,3) [Correct] 3. (1,3)(0,2) [Same as 2] มีคนแนะนำฉันถึงวิธีในการสร้างชุดค่าผสมที่เป็นไปได้ทั้งหมดเมื่อฉันมีคู่

4
ชัดเจนและเป็นธรรมชาติของ combinator จุดคงที่ (Y combinator)
แก้ไข combinator จุดคงที่ (aka combinator Y) ในแคลคูลัสแลมบ์ดา (untyped) ( ) ถูกกำหนดเป็น:λλ\lambda FIX≜λf.(λx.f (λy.x x y)) (λx.f (λy.x x y))≜λf.(λx.f (λy.x x y)) (λx.f (λy.x x y))\triangleq \lambda f.(\lambda x. f~(\lambda y. x~x~y))~(\lambda x. f~(\lambda y. x~x~y)) ฉันเข้าใจวัตถุประสงค์และสามารถติดตามการใช้งานแอปพลิเคชันได้อย่างสมบูรณ์แบบ ฉันต้องการที่จะเข้าใจวิธีการแก้ไขเป็นผลมาจากหลักการแรก นี่คือเท่าที่ฉันได้รับเมื่อฉันพยายามที่จะได้รับมันด้วยตนเอง: FIX เป็นฟังก์ชั่น: FIX ≜λ…≜λ…\triangleq \lambda_\ldots การแก้ไขใช้ฟังก์ชันอื่นfffเพื่อทำให้เกิดการเรียกซ้ำ: FIX ≜λf.…≜λf.…\triangleq \lambda f._\ldots อาร์กิวเมนต์แรกของฟังก์ชั่นfffคือ …

1
มีแคลคูลัส SKI ที่พิมพ์หรือไม่
ส่วนมากของเรารู้ว่าการติดต่อระหว่างcombinatory ตรรกศาสตร์และแลมบ์ดาแคลคูลัส แต่ฉันไม่เคยเห็น (บางทีฉันไม่ได้ดูลึกพอ) เทียบเท่ากับ "combinators ที่พิมพ์" ซึ่งสอดคล้องกับแคลคูลัสแลมบ์ดาที่พิมพ์ได้ง่าย สิ่งนั้นมีอยู่จริงหรือไม่? เราจะหาข้อมูลเกี่ยวกับมันได้จากที่ไหน?

7
ทำไม A หมายถึง B จริงถ้า A เป็นเท็จและ B เป็นเท็จ
สำหรับฉันแล้วดูเหมือนว่า 'นัย' ในภาษาอังกฤษไม่ได้หมายถึงสิ่งเดียวกับตัวดำเนินการเชิงตรรกะ 'หมายถึง' ในทำนองเดียวกันกับคำว่า 'OR' ในกรณีส่วนใหญ่หมายถึง 'พิเศษหรือ' ในการใช้ภาษาของเราทุกวัน ลองมาสองตัวอย่าง: ถ้าวันนี้เป็นวันจันทร์พรุ่งนี้ก็เป็นวันอังคาร นี่คือความจริง แต่ถ้าเราพูดว่า: หากดวงอาทิตย์เป็นสีเขียวหญ้าก็เป็นสีเขียว นี่ก็ถือว่าเป็นเรื่องจริง ทำไม? 'ตรรกะ' ในภาษาอังกฤษตามธรรมชาติคืออะไร มันทำให้ฉันกลัว

4
ภาษาที่ไม่สามารถตัดสินใจได้มีอยู่ในตรรกะเชิงคอนสตรัคติวิสต์หรือไม่?
คอนสตรัคติวิสต์ลอจิกเป็นระบบที่เอากฎของคนที่ได้รับการยกเว้นกลางเช่นเดียวกับการปฏิเสธคู่เช่นสัจพจน์ มีคำอธิบายเกี่ยวกับวิกิพีเดียที่นี่และที่นี่ โดยเฉพาะอย่างยิ่งระบบไม่อนุญาตให้มีการพิสูจน์ด้วยความขัดแย้ง ฉันสงสัยว่ามีใครบ้างที่คุ้นเคยกับสิ่งนี้ที่มีผลต่อผลลัพธ์เกี่ยวกับทัวริง Machines และภาษาทางการ ฉันสังเกตเห็นว่าเกือบทุกข้อพิสูจน์ว่าภาษานั้นไม่สามารถตัดสินใจได้โดยอาศัยการพิสูจน์จากความขัดแย้ง ทั้งอาร์กิวเมนต์ Diagonalization และแนวคิดของการลดทำงานด้วยวิธีนี้ จะมีหลักฐานที่ "สร้างสรรค์" ของการมีอยู่ของภาษาที่ไม่สามารถตัดสินใจได้หรือไม่และถ้าเป็นเช่นนั้นจะมีลักษณะอย่างไร แก้ไข: เพื่อความชัดเจนความเข้าใจของฉันพิสูจน์โดยความขัดแย้งในตรรกะ constructivist ผิดและคำตอบได้ชี้แจงนี้

5
แคลคูลัสกับการสะท้อน
ฉันกำลังมองหาแคลคูลัสง่ายๆที่สนับสนุนการให้เหตุผลเกี่ยวกับการสะท้อนกลับคือการวิปัสสนาและการจัดการโปรแกรมที่กำลังทำงานอยู่ คือมี untyped ขยายแคลคูลัสที่ช่วยให้หนึ่งในการแปลงλ -terms ลงในแบบฟอร์มที่สามารถจัดการ syntactically แล้วประเมินผลภายหลังหรือไม่?λλ\lambdaλλ\lambda ฉันจินตนาการว่าแคลคูลัสมีสองคำหลักเพิ่มเติม : ใช้เวลาวีและผลิตตัวแทนของโวลต์ทำให้ถูกต้องในการจัดการประโยคreflect vreflect v\mathtt{reflect}\ vvvvvvv : ใช้การแทนประโยคของคำศัพท์และประเมินมันeval veval v\mathtt{eval}\ v เพื่อสนับสนุนการสะท้อนจำเป็นต้องมีการแสดงคำศัพท์ทางวากยสัมพันธ์ มันจะมีลักษณะเช่น: จะแสดงเป็นระยะ ( L M R ( E ) )ที่ R ( E )เป็นรุ่นที่สะท้อนให้เห็นของอี ,λx.eλx.e\lambda x.e(LAM R(e))(LAM R(e))(\mathsf{LAM}\ R(e))R(e)R(e)R(e)eee จะแสดงเป็นคำ ( A P P R ( e ) R ( …

11
คือเหตุผลที่ ?
ฉันต้องการทราบว่ามีกฎที่จะพิสูจน์เรื่องนี้หรือไม่ ตัวอย่างเช่นถ้าผมใช้กฎหมายการจำหน่ายฉันจะได้รับเท่านั้นB)( ∨ ) ∧ ( ∨ ¬ B )(A∨A)∧(A∨¬B)(A \lor A) \land (A \lor \neg B)

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