1
ตัวอย่างที่คำแลมบ์ดาปกติที่เล็กที่สุดนั้นไม่เร็วที่สุด
ให้ของλ -terms ถูกนิยามดังนี้:sizesizesizeλλ\lambda ,size(x)=1size(x)=1size(x) = 1 size(λx.t)=size(t)+1size(λx.t)=size(t)+1size(λx.t) = size(t) + 1 , size(ts)=size(t)+size(s)+1size(ts)=size(t)+size(s)+1size(t s) = size(t) + size(s) + 11 ปล่อยให้ความซับซ้อนของ -termถูกกำหนดเป็นจำนวนการลดเบต้าแบบขนานจากเป็นรูปแบบปกติ (ใช้ผู้ประเมินที่ดีที่สุดในแง่ความรู้สึกของ Levy)λλ\lambdattttxtxt x ฉันกำลังมองหาตัวอย่างของปกติ สองตัวสำหรับฟังก์ชั่นเดียวกันโดยที่คำที่ใหญ่กว่ามีความซับซ้อนต่ำกว่าλλ\lambda ... แก้ไขเพื่อความชัดเจน เนื่องจากดูเหมือนว่ามันไม่ชัดเจนว่าฉันขออะไรฉันจะลองยกตัวอย่าง มักจะมีความเชื่อว่าคำจำกัดความ "ไร้เดียงสา" / "ง่ายที่สุด" ของฟังก์ชั่นนั้นช้าและไม่เหมาะสม ประสิทธิภาพที่ดีขึ้นจะเพิ่มความซับซ้อนของคำศัพท์เนื่องจากคุณต้องการเพิ่มโครงสร้างข้อมูลสูตร ฯลฯ ตัวอย่างที่ยอดเยี่ยมคือfibonacciซึ่งสามารถนิยามได้ว่า "ไร้เดียงสา" ดังนี้: -- The fixed fibonacci definition fib_rec fib n = if …