สัญชาตญาณเบื้องหลังความเข้มงวดอย่างเข้มงวด?


10

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

เพื่อความชัดเจนฉันเห็นว่าการเกิดเหตุการณ์ด้านลบทำให้เกิดความแตกต่างคือการกำหนด:

data X where Intro : (X->X) -> X

เราสามารถเขียนฟังก์ชันที่แตกต่าง

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


ฉันคิดว่าความคิดเป็นประเภทบวกอย่างเคร่งครัดสามารถแปลงเป็นประเภท W ได้ตามแนวคิด นอกจากนี้ยังพิมพ์ไม่ได้เข้มงวดในเชิงบวกคือไม่สอดคล้องกับ Coq vilhelms.github.io/posts/... มีความเห็นว่าประเภทบวกสอดคล้องกับ Agda แต่ฉันต้องการจะดูคำอธิบายแนวคิดยัง ...
24432

@ Molikto ขอบคุณที่มีประโยชน์ แต่ฉันคิดว่ารูปแบบ W ไม่ได้ให้หลักการอุปนัยที่ต้องการในทฤษฎีแบบสามมิติ? เราจะพิสูจน์การทำให้เป็นมาตรฐานที่แข็งแกร่งสำหรับการเหนี่ยวนำเชิงบวกอย่างเคร่งครัดในทฤษฎี intensional ได้อย่างไร?
jmite

คำตอบ:


8

ดูเหมือนคุณต้องการภาพรวมของอาร์กิวเมนต์การทำให้เป็นมาตรฐานสำหรับระบบพิมพ์ที่มีประเภทข้อมูลเชิงบวก ผมอยากแนะนำให้วิทยานิพนธ์ปริญญาเอกของ Nax Mendler: http://www.nuprl.org/documents/Mendler/InductiveDefinition.html

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

Inductive Ord = Zero : Ord | Suc : Ord -> Ord | Lim : (Nat -> Ord) -> Ord

เราจะได้รับ:

λ(เสื้อ)=0
ถ้าเป็นรูปแบบปกติซึ่งไม่ใช่ตัวสร้าง และ เสื้อ
λ(ZอีRโอ)=0
λ(Sยู(โอ))=λ(โอ)+1
λ(Lผมม.())=จีบnλ( n)

เมื่ออยู่เหนือคำที่มีรูปแบบปกติ ข้อแม้คือการตีความนี้ถูกกำหนดไว้เฉพาะในกรณีที่ 3 เมื่อมีรูปแบบปกติเช่นกันซึ่งต้องใช้ความระมัดระวังในคำจำกัดความn n

หนึ่งสามารถกำหนดฟังก์ชั่นซ้ำโดยการเหนี่ยวนำมากกว่าลำดับนี้

โปรดทราบว่าประเภทข้อมูลเหล่านี้สามารถกำหนดไว้แล้วในทฤษฎีชุดคลาสสิกตามที่ระบุไว้ในกระดาษครอบครัวอุปนัยที่ยอดเยี่ยมโดย Dybjer ( http://www.cse.chalmers.se/~peterd/papers/Inductive_Families.pdf ) อย่างไรก็ตามเนื่องจากพื้นที่ทำงานที่มีขนาดใหญ่มาก ๆ ประเภทชอบOrdต้องจริงๆเลขขนาดใหญ่ในการตีความ


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

@jmite คุณสามารถทำได้ แต่เลขลำดับในทฤษฎีเชิงสร้างสรรค์ค่อนข้างแปลกและคุณอาจทำงานร่วมกับคำสั่งหรือต้นไม้ที่ได้รับการพิสูจน์มาเป็นอย่างดี ( ประเภท la W-molikto แนะนำ) อาจเป็นเรื่องยากที่จะมีรูปแบบชุดเดียวซึ่งจับภาพการก่อตั้งที่ดีของอุปนัยทุกภาษาในภาษาวัตถุแม้ว่า ...
cody

1
@cody ไม่ใช่ตัวอย่าง Ord ที่คุณให้ประเภทบวกอย่างเคร่งครัดหรือไม่
Henning Basold

1
@ HenningBasold ใช่มันคือ (นั่นเป็นเหตุผลที่ฉันใช้มันเป็นภาพประกอบ!) แต่ก็ไม่ได้ทำตัวเหมือนเลขใน (คลาสสิก) ทฤษฎีเซตและไม่แน่นอนเหมือนชุดของทุกเลข โดยเฉพาะอย่างยิ่งมันเป็นการยากที่จะกำหนดลำดับของสิ่งเหล่านี้
Cody

1
@ HenningBasold ฉันควรทราบด้วยว่าคำถามของ jmite นั้นเกี่ยวกับประเภทที่เป็นบวกอย่างเคร่งครัดโดยเฉพาะแม้ว่าข้อมูลเกี่ยวกับการตั้งค่าทั่วไปที่น่าสนใจก็เช่นกัน!
Cody

6

แหล่งข้อมูลที่ดีสำหรับการก้าวไปข้างหน้าในเชิงบวกอย่างเคร่งครัดคือวิทยานิพนธ์ระดับปริญญาเอกของ Ralph Matthes: http://d-nb.info/956895891

เขากล่าวถึงส่วนขยายของ System F ด้วยประเภทบวก (อย่างเคร่งครัด) ในบทที่ 3 และพิสูจน์ผลลัพธ์การฟื้นฟูที่แข็งแกร่งจำนวนมากในบทที่ 9 มีแนวคิดที่น่าสนใจสองสามบทที่กล่าวถึงในบทที่ 3

  1. เราสามารถเพิ่มจุดน้อยคงที่สำหรับใดประเภทกับตัวแปรฟรีตราบใดที่เราสามารถให้พยาน monotonicityalpha] ความคิดนี้มีอยู่แล้วในงานของ Mendler ที่โคดี้กล่าวถึง พยานดังกล่าวมีอยู่เป็นที่ยอมรับสำหรับประเภทที่เป็นบวกใด ๆ เพราะสิ่งเหล่านี้เป็นประโยคเดียวρααβ.(αβ)ρρ[β/α]

  2. เมื่อเราย้ายจากประเภทบวกไปเป็นบวกอย่างเคร่งครัดประเภทอุปนัยจะไม่สามารถถูกมองว่าเป็นต้นไม้ได้อีกต่อไป (การเข้ารหัส W-type) แต่สิ่งเหล่านี้จะแนะนำให้รู้ตัวในบางรูปแบบเพราะการสร้างประเภทอุปนัยเชิงบวกนั้นมีปริมาณมากกว่าประเภทนั้น โปรดทราบว่านี่เป็นรูปแบบที่ไม่รุนแรงของความไม่สามารถแสดงออกได้เนื่องจากความหมายของประเภทดังกล่าวยังสามารถอธิบายได้ในแง่ของการคำนวณซ้ำของฟังก์ชันโมโนโทน

  3. แมทเธียยังแสดงตัวอย่างของประเภทอุปนัยเชิงบวก ที่น่าสนใจอย่างยิ่งคือ

    • ประเภทของตที่ไม่เกิดขึ้นใน\μ.1+((αρ)ρ)αρ
    • ประเภทที่ใช้งานได้ทุกประเภทโดยเปลี่ยนเป็นประเภทบวก โปรดทราบว่าสิ่งนี้ใช้ความระมัดระวังของ System F อย่างมากμαβ.(αβ)ρ[β/α]ρ

MATTHES ยังใช้ประเภทอุปนัยเชิงบวกในการวิเคราะห์คู่ปฏิเสธตัวอย่างเช่นในบทความนี้: https://www.irit.fr/~Ralph.Matthes/papers/MatthesStabilization.pdf เขาแนะนำส่วนขยายของของ Parigot และพิสูจน์การฟื้นฟูที่แข็งแกร่งλμ

ฉันหวังว่าสิ่งนี้จะช่วยคุณได้

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