Combinator Quines


9

พื้นหลัง

คุณเพิ่งเรียนรู้ว่าตรรกะเชิงการรวมคืออะไร ทึ่งกับ combinators ต่าง ๆ ที่คุณใช้เวลาเรียนรู้เกี่ยวกับพวกเขาสักหน่อย ในที่สุดคุณก็สะดุดกับการแสดงออกนี้:

(S I I (S I I))

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

(S I I (S I I))
= (I (S I I) (I (S I I)))  (1)
= (S I I (I (S I I)))      (2)
= (S I I (S I I))          (3)

คุณมุ่งมั่นที่จะค้นหานิพจน์อื่นที่ใช้คุณลักษณะนี้และเริ่มทำงานกับเรื่องนี้ทันที

กฎระเบียบ

  • คุณสามารถใช้ combinators ต่อไปนี้ร่วมกัน:

    B f g x = f (g x)
    C f x y = f y x
    I x     = x
    K x y   = x
    S f g x = f x (g x)
    W f x   = f x x
    
  • แอปพลิเคเชื่อมโยงทางด้านซ้ายซึ่งหมายความว่าเป็นจริง(S K K)((S K) K)

  • การลดลงเพียงเล็กน้อยนั้นไม่มีขั้นตอนการลดอื่น ๆ ที่ใช้ขั้นตอนน้อยลง ตัวอย่าง: หากxมีการลดลงการลดyที่น้อยที่สุดที่ถูกต้อง(W f x)คือ

    (W f x)
    = (W f y) (1)
    = f y y   (2)
    

    และไม่

    (W f x)
    = f x x   (1)
    = f y x   (2)
    = f y y   (3) 
    
  • ช่องโหว่มาตรฐานใช้

งาน

เรากำหนดวัฏจักรของนิพจน์ให้มีการลดจำนวนน้อยที่สุดระหว่างสองนิพจน์เดียวกัน

งานของคุณคือค้นหานิพจน์ด้วยจำนวนผู้ใช้ที่ใช้ <100 ซึ่งสร้างรอบที่ยาวที่สุด

เกณฑ์การให้คะแนน

คะแนนของคุณจะถูกกำหนดโดยความยาวของรอบการแสดงออกของคุณ หากการแสดงออกของคนสองคนมีวัฏจักรเดียวกันคำตอบที่ใช้ combinators น้อยกว่าจะชนะ หากพวกเขาทั้งสองใช้ combinators จำนวนเท่ากันคำตอบก่อนหน้านี้จะชนะ

ขอให้โชคดีและสนุก!


atomic-code-golfจะเหมาะกับ tie breaker ของคุณ แต่ฉันจะไม่เพิ่ม tag สำหรับ tie breaker หากไม่มีแท็กที่เหมาะสมค่าเริ่มต้นคือความท้าทายของรหัสซึ่งระบุว่าความท้าทายนั้นใช้เกณฑ์การชนะที่กำหนดเอง
Martin Ender

ฉันคิดว่ามันจะช่วยได้ถ้าคุณบอกว่าอนุสัญญาความเชื่อมโยงของคุณใช้สัญกรณ์อะไร
xnor

วงจรตามที่คุณได้กำหนดไว้ก็ไม่ได้ถูกกำหนดจำเป็นต้องดีเพราะการแสดงออกให้สามารถมีการลดลงที่สามารถใช้ได้หลาย
ปีเตอร์เทย์เลอร์

@ThreeFx คุณเข้าใจผิด เช่นถ้าxมีการลดลงyแล้วW f x -> W f y -> f y yหรือW f x -> f x x -> f x y -> f y yมีความยาวแตกต่างกัน
ปีเตอร์เทย์เลอร์

4
สิ่งที่ยุ่งยากก็คือใครบางคนไม่สามารถรับคะแนนได้เพียงแค่โพสต์วงจร พวกเขาต้องการหลักฐานว่าไม่มีการลดลงในระยะสั้นซึ่งอาจเป็นเรื่องยากในการคำนวณ
xnor

คำตอบ:


7

ต้องเริ่มต้นด้วยบางสิ่ง

1:(((C (C I) (W I)) (C (C I) (W I)) I I) (W I) (W (C I) (W (C I)) (W (C I))) ((I (W I)) (W I) (W I) I))

2:(((C I (C (C I) (W I))) (W I) I I) (W I) ((C I) (W (C I)) (W (C I)) (W (C I))) ((W I) (W I) (W I) I))

3:(((I (W I)) (C (C I) (W I)) I I) (W I) (I (W (C I)) (W (C I)) (W (C I))) ((I (W I)) (W I) (W I) I))

4:(((W I) (C (C I) (W I)) I I) (W I) (W (C I) (W (C I)) (W (C I))) ((W I) (W I) (W I) I))

5:(((I (C (C I) (W I))) (C (C I) (W I)) I I) (W I) ((C I) (W (C I)) (W (C I)) (W (C I))) ((I (W I)) (W I) (W I) I))

6:(((C (C I) (W I)) (C (C I) (W I)) I I) (W I) (I (W (C I)) (W (C I)) (W (C I))) ((W I) (W I) (W I) I))

7:(((C I (C (C I) (W I))) (W I) I I) (W I) (W (C I) (W (C I)) (W (C I))) ((I (W I)) (W I) (W I) I))

8:(((I (W I)) (C (C I) (W I)) I I) (W I) ((C I) (W (C I)) (W (C I)) (W (C I))) ((W I) (W I) (W I) I))

9:(((W I) (C (C I) (W I)) I I) (W I) (I (W (C I)) (W (C I)) (W (C I))) ((I (W I)) (W I) (W I) I))

10:(((I (C (C I) (W I))) (C (C I) (W I)) I I) (W I) (W (C I) (W (C I)) (W (C I))) ((W I) (W I) (W I) I))

11:(((C (C I) (W I)) (C (C I) (W I)) I I) (W I) ((C I) (W (C I)) (W (C I)) (W (C I))) ((I (W I)) (W I) (W I) I))

12:(((C I (C (C I) (W I))) (W I) I I) (W I) (I (W (C I)) (W (C I)) (W (C I))) ((W I) (W I) (W I) I))

13:(((I (W I)) (C (C I) (W I)) I I) (W I) (W (C I) (W (C I)) (W (C I))) ((I (W I)) (W I) (W I) I))

14:(((W I) (C (C I) (W I)) I I) (W I) ((C I) (W (C I)) (W (C I)) (W (C I))) ((W I) (W I) (W I) I))

15:(((I (C (C I) (W I))) (C (C I) (W I)) I I) (W I) (I (W (C I)) (W (C I)) (W (C I))) ((I (W I)) (W I) (W I) I))

16:(((C (C I) (W I)) (C (C I) (W I)) I I) (W I) (W (C I) (W (C I)) (W (C I))) ((W I) (W I) (W I) I))

17:(((C I (C (C I) (W I))) (W I) I I) (W I) ((C I) (W (C I)) (W (C I)) (W (C I))) ((I (W I)) (W I) (W I) I))

18:(((I (W I)) (C (C I) (W I)) I I) (W I) (I (W (C I)) (W (C I)) (W (C I))) ((W I) (W I) (W I) I))

19:(((W I) (C (C I) (W I)) I I) (W I) (W (C I) (W (C I)) (W (C I))) ((I (W I)) (W I) (W I) I))

20:(((I (C (C I) (W I))) (C (C I) (W I)) I I) (W I) ((C I) (W (C I)) (W (C I)) (W (C I))) ((W I) (W I) (W I) I))

21:(((C (C I) (W I)) (C (C I) (W I)) I I) (W I) (I (W (C I)) (W (C I)) (W (C I))) ((I (W I)) (W I) (W I) I))

22:(((C I (C (C I) (W I))) (W I) I I) (W I) (W (C I) (W (C I)) (W (C I))) ((W I) (W I) (W I) I))

23:(((I (W I)) (C (C I) (W I)) I I) (W I) ((C I) (W (C I)) (W (C I)) (W (C I))) ((I (W I)) (W I) (W I) I))

24:(((W I) (C (C I) (W I)) I I) (W I) (I (W (C I)) (W (C I)) (W (C I))) ((W I) (W I) (W I) I))

25:(((I (C (C I) (W I))) (C (C I) (W I)) I I) (W I) (W (C I) (W (C I)) (W (C I))) ((I (W I)) (W I) (W I) I))

26:(((C (C I) (W I)) (C (C I) (W I)) I I) (W I) ((C I) (W (C I)) (W (C I)) (W (C I))) ((W I) (W I) (W I) I))

27:(((C I (C (C I) (W I))) (W I) I I) (W I) (I (W (C I)) (W (C I)) (W (C I))) ((I (W I)) (W I) (W I) I))

28:(((I (W I)) (C (C I) (W I)) I I) (W I) (W (C I) (W (C I)) (W (C I))) ((W I) (W I) (W I) I))

29:(((W I) (C (C I) (W I)) I I) (W I) ((C I) (W (C I)) (W (C I)) (W (C I))) ((I (W I)) (W I) (W I) I))

30:(((I (C (C I) (W I))) (C (C I) (W I)) I I) (W I) (I (W (C I)) (W (C I)) (W (C I))) ((W I) (W I) (W I) I))

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