การจำแนกประเภทของแลมบ์ดาประเภทที่พิมพ์ / ไม่พิมพ์


18

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

ฉันกำลังมองหางบของพลังการแสดงออกของพวกเขาโดยเฉพาะอย่างยิ่งเทียบเท่ากับระบบตรรกะ / คณิตศาสตร์หรือวิธีการคำนวณและคล้ายคลึงกับภาษาการเขียนโปรแกรมถ้ามี

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

ไม่ได้บอกว่าด้านล่างถูกต้องเพียงแค่พยายามวาดภาพความประทับใจบางอย่างที่ฉันต้องดูด้วยว่าอย่างน้อยพวกเขาก็เป็นจุดเริ่มต้น (หรือบางอย่างที่ถูกต้อง!)

แคลคูลัสแลมบ์ดาที่ไม่ได้พิมพ์ - eq เป็นลอจิกลำดับแรก - ทำ X ไม่ได้

เพียงพิมพ์แลมบ์ดาแคลคูลัส - eq ถึง ... ตรรกะเกี่ยวข้องกับ Lisp หรือไม่

'Polymorphic' แลมบ์ดาแล็บ - ฯลฯ

แคลคูลัสของการก่อสร้าง - ตรรกะ intutionist?

Combinatory Logic - เปรียบได้กับ ??? พิมพ์แลมบ์ดาแคลคูลัสเกี่ยวข้องกับภาษา APL / J

หากสิ่งนี้เชื่อมโยงกับแลมบ์ดาคิวบ์และสามแกนนั้นดีกว่าทั้งหมด

ในขณะที่ฉันคุ้นเคยกับพื้นฐานของแคลคูลัสแลมบ์ดาและการเขียนโปรแกรมด้วยภาษาที่ใช้งานได้ฉันไม่เคยคาดไม่ถึงหรอกหรือเชื่อมต่อกับระบบประเภทที่เกี่ยวข้องและรสชาติของแลมบ์ดา

เมื่อฉันพยายามค้นคว้าสิ่งนี้ฉันไม่สามารถช่วยได้ แต่พบว่าตัวเองอยู่ข้างนอกเปิดแท็บเบราว์เซอร์จำนวนมากและแตกแขนงในหลายทิศทางฉันไม่เคยเข้าไปในส่วนใดของพวกเขาด้วยความลึกใด ๆ !

ฉันไม่แน่ใจว่าสิ่งที่ฉันขอเหมาะสมหรือไม่ แต่หวังว่าอย่างน้อยที่สุดฉันก็วาดรูปให้เพียงพอเพื่อแนะนำการอ่านบางอย่างที่สามารถอธิบายสิ่งที่ฉันกำลังมองหา?


1
การสร้างภาพของแลมบ์ดาก้อนถ้าบางทีอาจจะหมายถึงว่ามันสามารถช่วยให้มีคำอธิบายrbjones.com/rbjpub/logic/cl/tlc001.htm
jon_darkstar

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

ฉันเห็นlo.logicแท็กได้รับการเพิ่ม อาจเป็นคำถามที่โง่เง่า แต่สิ่งที่ทำให้เกิดผล?
jon_darkstar

"เมื่อฉันพยายามค้นคว้าสิ่งนี้ฉันไม่สามารถช่วย แต่พบว่าตัวเองอยู่ข้างนอกเปิดแท็บเบราว์เซอร์จำนวนมากและแตกแขนงไปในทิศทางต่าง ๆ ฉันไม่เคยเข้าไปในพวกเขาด้วยความลึกใด ๆ !" <- นี่คือฉันตลอดเวลา! ขอบคุณสำหรับการขอให้สิ่งที่ฉันได้รับความคิด ...
Agam

คำตอบ:


26

โต๊ะของคุณสับสนเล็กน้อย นี่คือสิ่งที่ดีกว่า

  • แคลคูลัสแลมบ์ดาที่ไม่ได้พิมพ์ - ไม่มีการตีความตรรกะเช่น Andrej บันทึก
  • แคลคูลัสแลมบ์ดาเพียงพิมพ์ - ปรีชาเชิงตรรกะแบบมีปรีชาญาณ
  • Polymorphic lambda แคลคูลัส - ลอจิกลำดับที่สองที่บริสุทธิ์
  • ชนิดที่อ้างถึง - การวางนัยทั่วไปของลอจิกลำดับที่หนึ่ง
  • แคลคูลัสของสิ่งปลูกสร้าง - การวางนัยทั่วไปของตรรกะลำดับสูงกว่า

การพึ่งพาประเภทนั้นเป็นเรื่องทั่วไปมากกว่าปริมาณการสั่งซื้อครั้งแรกเนื่องจากจะเปลี่ยนการพิสูจน์เป็นวัตถุที่คุณสามารถหาจำนวนได้ แลมบ์ดานิ่วที่สอดคล้องกับสัญชาตญาณ FOL ทั่วไปนั้นมีอยู่ แต่ไม่ได้ใช้กันอย่างแพร่หลายพอที่จะมีชื่อพิเศษ - ผู้คนมักจะตรงไปที่ประเภทที่พึ่งพา

คุณสามารถเชื่อมโยงรูปแบบวากยสัมพันธ์ของแคลคูลัสกับระบบโลจิคัลได้เช่นกัน

  • Combiator calculi (เช่น SKI combinators) - ระบบสไตล์ของฮิลแบร์ต
  • รูปแบบปกติ - แคลคูลัสตามลำดับ
  • แคลคูลัสแลมบ์ดาสามัญพิมพ์ - การหักธรรมชาติ

! ที่ยอดเยี่ยม ขอบคุณ ช่วยให้ฉันตระหนักถึงแรงจูงใจ / ความแตกต่างของแคลคูลัสที่แตกต่างกันเหล่านี้และจะช่วยให้ฉันมีความเข้าใจพื้นฐานอย่างแน่นอนเมื่อฉันอ่านเพิ่มเติมเกี่ยวกับเรื่องนี้
jon_darkstar

ฉันจะรวมแลมบ์ดาแคลคูลัสประเภทที่ไม่มีการตีความเชิงตรรกะเช่น PCF นอกจากนี้ยังมีแลมบ์ดาแคลคูลัสเย็นจำนวนมากที่สอดคล้องกับตรรกะอื่น ๆ เช่นแคลคูลัสแลมบ์ดาเชิงเส้น
Sam Tobin-Hochstadt

@ Sam: จุดดี "ไม่มีการตีความเชิงตรรกะ" นั้นแรงเกินไปเพราะมันหมายถึง "การอ้างอิงด้วยตนเองที่ไม่ จำกัด " ซึ่งรวมกับการใช้ซ้ำตัวแปรทำให้เกิดความไม่สอดคล้องกัน แต่บางทฤษฎีที่ตั้งอยู่บนพื้นฐานของการสนับสนุนตรรกะเชิงเส้นที่ไร้เดียงสาโครงการความเข้าใจที่ไม่สอดคล้องใด ๆ
Neel Krishnaswami

แน่นอนบางวิธีที่คุณสามารถเพิ่มบางสิ่งลงในแคลคูลัสแลมบ์ดาได้โดยไม่ขัดแย้งกัน แต่มีแคลคูลัสแลมบ์ดาที่น่าสนใจพิมพ์มากมายไม่มีการตีความเชิงตรรกะในความหมายของแคลคูลัสแลมบ์ดาที่ไม่ได้พิมพ์ออกมา
Sam Tobin-Hochstadt

20

บริสุทธิ์ untypedแคลคูลัสทัวริงคือกล่าวคือจำนวน - ทฤษฎีแผนที่คำนวณถ้าถ้าและถ้ามันชัดเจนใน untypedแคลคูลัส พลังการคำนวณของ -calculus นั้นมีขนาดเล็กกว่ามาก ตัวอย่างเช่นถ้าเราเพิ่มประเภทของตัวเลขที่เป็นธรรมชาติที่จะพิมพ์แคลคูลัสร่วมกับสืบและ recursion ดั้งเดิมที่เราได้รับสิ่งที่เป็นที่รู้จักกันทั่วไปว่าเป็นของGödel Tมันคำนวณฟังก์ชั่นการเรียกซ้ำแบบดั้งเดิมเท่านั้น (และพวกเขาจะรวมทั้งหมด)λ λ λ 0 Tλλλnatλ0T

untypedแคลคูลัสไม่มีการตีความที่สมเหตุสมผลภายใต้การติดต่อกันของแกง - ฮาวเวิร์ดในขณะที่การพิมพ์ -calculus สอดคล้องกับแคลคูลัสเชิงประพจน์ intuitionisticλλλ

รูปแบบของการพิมพ์ -calculus เป็นประเภทคาร์ทีเซียนที่ปิดอย่างแม่นยำ แบบจำลองของ untypedแคลคูลัสมีพฤติกรรมไม่ดี ในขณะที่เป็นไปได้ที่จะพูดคุยเกี่ยวกับพวกเขาพวกเขาไม่ได้เรียนอย่างกว้างขวางเป็นหมวดหมู่ปิดคาร์ทีเซียนλλλ

นอกจากนี้เรายังสามารถสร้างความบันเทิงให้ตัวเองด้วยการถามว่า ที่มูลค่าตามหน้า untyped -calculus ดูเหมือนจะเป็นเรื่องทั่วไปมากกว่าเพราะมันง่ายที่จะฝังประเภทที่พิมพ์ลงไปใน untyped อันหนึ่ง (โดยลืมประเภท) แต่เราสามารถฝัง untypedแคลคูลัสลงในพิมพ์แคลคูลัสโดย positing ชนิดดั้งเดิมพร้อมกับถอดและ ในด้านความหมายนี้สอดคล้องกับการสังเกตของ Dana Scott ว่าทุกรูปแบบของ calculus เกิดขึ้นเป็นวัตถุสะท้อนในหมวดหมู่ที่ปิดคาร์ทีเซียนกล่าวคือได้รับแบบจำลองของ untyped calculus ค้นหาหมวดหมู่λ λ λ U λ C U U [ C o P , S e T ] UU UλλλUlambda : U -> (U -> U)gamma : (U -> U) -> UλUλC(ถ้าความทรงจำของฉันทำหน้าที่ฉันถูกมันเป็นการแยก idempotent ของ ) เช่นนั้นสามารถมองเห็นได้เป็นวัตถุประเภท presheaf (ผ่านการฝังโยเนดะ) ความพึงพอใจของสมการ{U}}UU[Cop,Set]UUU

อ้างอิง:


7

การอภิปรายที่ครอบคลุมเป็นธรรมของสิ่งนี้สามารถพบได้ในหนังสือเล่มนี้: บรรยายในแกง-โฮเวิร์ดมอร์ฟ นี้ขึ้นอยู่กับรุ่นเก่าใช้ได้อย่างอิสระ: บรรยายในแกง-โฮเวิร์ดมอร์ฟ

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