การขยายตัวของกทพ. ในรูปแบบแลมบ์ดาแคลคูลัส


12

Klop, van Oostrom และ de Vrijer มีกระดาษบนแคลคูลัสแลมบ์ดาที่มีลวดลาย

http://www.sciencedirect.com/science/article/pii/S0304397508000571

ในบางกรณีรูปแบบเป็นต้นไม้ของตัวแปร - แม้ว่าฉันแค่คิดว่ามันเป็น tuple ที่ซ้อนกันของตัวแปรเช่น ((x, y), z), (t, s)

ในกระดาษพวกเขาแสดงให้เห็นว่าหากรูปแบบเชิงเส้นในแง่ที่ว่าไม่มีตัวแปรในรูปแบบซ้ำแล้วกฎ

(\p . m) n = m [n/p]

โดยที่ p คือรูปแบบผันแปรและ n คือ tuple ของคำศัพท์ที่มีรูปร่างเดียวกับ p คือไหลมารวมกัน

ฉันอยากรู้ว่าถ้ามีการพัฒนาที่คล้ายกันในวรรณคดีสำหรับแคลคูลัสแลมบ์ดาที่มีรูปแบบและกฎการทางพิเศษแห่งประเทศไทยเพิ่มเติม

โดยเฉพาะอย่างยิ่งโดยกทพ. ฉันหมายถึง

m = \lambda p . m p

เพิ่มเติมโดยตรงฉันอยากรู้ว่าคุณสมบัติเช่นแคลคูลัสแลมบ์ดาจะมี ตัวอย่างเช่นมันไหลมารวมกันไหม?

มันบังคับให้ปิดประเภทการจัดหมวดหมู่เพราะบังคับให้คุณสมบัตินั้น

m p = n p implies m = n 

โดยใช้ \ xi-rule ระหว่างนั้น แต่อาจมีบางอย่างผิดพลาด?


คุณช่วยเขียนสิ่งที่คุณหมายถึงกฎการปกครองหรือไม่ ถ้ามันแปลกมากคุณควรจะสามารถเข้ารหัสได้โดยใช้ผลรวมและทำการโต้แย้งแบบจำลอง
ใหม่สูงสุด

2
@ MaxNew: ดูเหมือนว่าเขาจะถามเกี่ยวกับแคลคูลัสที่ยังไม่พิมพ์ ทุกอย่างเกี่ยวกับรูปแบบทำงานได้อย่างสมบูรณ์แบบกับประเภท (ฉันโอเคอย่างสุภาพแนะนำตัวเองเน้นการจับคู่รูปแบบ ) แต่แคลคูลัสแลมบ์ดาที่ไม่ได้พิมพ์นั้นแตกต่างจากพิมพ์ LC (โดยเฉพาะ wrt eta) ที่ฉันไม่กล้าตอบโดยไม่ต้องพิสูจน์ .
Neel Krishnaswami

@ MaxNew: สิ่งที่จะเข้ารหัสโดยผลรวมนำมาซึ่ง?
Jonathan Gallagher

@NeelKrishnaswami: ฉันสนใจทั้งสองอย่างจริงๆ ฉันคิดว่าฉันกังวลเกี่ยวกับการมีตัวแปรประเภทผลิตภัณฑ์พร้อมกับกฎกทพ. ผมคิดว่านี้จะทำเช่นdicosmo.org/Articles/JFP96.pdf แต่ถ้าฉันเข้าใจผิดโปรดแก้ไขฉันด้วย จากนั้นคุณมีความเท่าเทียมกันเช่น \ lambda x .mx = m = \ lambda (p, q) ตัวอย่าง m (p, q) ขอบคุณสำหรับลิงค์ไปยังกระดาษของคุณ!
Jonathan Gallagher

คำตอบ:


7

นี่ไม่ใช่คำตอบที่สมบูรณ์ มันเป็นความคิดเห็นที่มีขนาดใหญ่เกินไป

หากคุณขยายแคลคูลัสแลมบ์ดาที่พิมพ์ด้วยผลิตภัณฑ์ที่มีตัวกำจัด projective (เช่นตัวกำจัดผลิตภัณฑ์fst(e)และsnd(e)) จะไม่มีปัญหาใด ๆ เหตุผลที่ใช้เวลานานกว่าจะคิดออกก็คือมันเป็นเรื่องธรรมชาติมากกว่าที่จะทำการขยายกทพ.แทนที่จะลดกทพ . ดูแบร์รี่เจเป็นคุณธรรมของการขยายตัว Eta

หากคุณต้องการให้ผลิตภัณฑ์มีตัวกำจัดสไตล์แบบ

let (a,b) = e in t 

เรื่องนั้นมีความซับซ้อนมากขึ้น ปัญหาหลักที่มีการจับคู่แบบเป็นแปลงการเดินทาง นั่นคือแคลคูลัสเหล่านี้มีสมการ

C[let (a,b) = e in t] === let (a,b) = e in C[t]

และการหา (ก) บริบทที่C[-]จะใช้และ (ข) วิธีปรับทิศทางสมการนี้ยุ่งยาก IMO สถานะของศิลปะสำหรับวิธีการเขียนใหม่คือการเขียนซ้ำแบบสามมิติของ Sam Lindley กับ Sumsและ Gabriel Scherer's Decision Equivalence with Sums และ Empty Typeซึ่งทั้งสองนี้จะพิจารณาแคลคูลัสแลมบ์ดาที่พิมพ์ด้วยผลิตภัณฑ์และผลรวม

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