คำตอบสั้น ๆ : ใช่! คุณไม่จำเป็นต้องใช้เครื่องจักรจำนวนมากในการพิสูจน์หลักฐาน
หนึ่งความบอบบาง: ดูเหมือนว่าบนใบหน้าของมันว่ามีการใช้งานของกลางที่แยกออก: หนึ่งสร้างชุด D และตัวเลข dและแสดงให้เห็นว่า d∈ D หรือ d∉ Dซึ่งนำไปสู่ความขัดแย้ง แต่มีบทแทรก, จริงในตรรกะปรีชาคือ:
 สำหรับงบทั้งหมด  P, ( P⟺¬ P) ⇒ ⊥
พอเพียงนี้พร้อมกับการพิสูจน์ตามปกติ โปรดทราบว่าโดยทั่วไปแล้ว "การปฏิเสธ" อาจมีความแตกต่างเล็กน้อยในตรรกะเชิงสร้างสรรค์ / เชิงสัญชาตญาณ
หลักฐานที่เป็นมาตรฐานมากใน Coq (ด้วยเหตุผลบางอย่างที่ฉันไม่สามารถหาได้ทางออนไลน์) อาจเป็นดังนี้:
Inductive right_invertible {A B:Type}(f : A->B):Prop :=
| inverse: forall g, (forall b:B, f (g b) = b) -> right_invertible f.
Lemma case_to_false :  forall P : Prop, (P <-> ~P) -> False.
Proof.
  intros P H; apply H.
    - apply <- H.
      intro p.
      apply H; exact p.
    - apply <- H; intro p; apply H; exact p.
Qed.
Theorem cantor :  forall f : nat -> (nat -> Prop), ~right_invertible f.
Proof.
  intros f inv.
  destruct inv.
  pose (diag := fun n => ~ (f n n)).
  apply case_to_false with (diag (g diag)).
  split.
  - intro I; unfold diag in I.
    rewrite H in I. auto.
  - intro nI.
    unfold diag. rewrite H. auto.
Qed.
แน่นอนกรอบ "สิทธิ" ที่จะคิดเกี่ยวกับเรื่องเหล่านี้ซึ่งสามารถมองเห็นได้ว่าข้อกำหนดขั้นต่ำสำหรับการพิสูจน์นี้จะต้องผ่านก็คือทฤษฎีบทจุดคงที่ของ Lawvereซึ่งกล่าวถึงทฤษฎีบทในทุกหมวดหมู่คาร์ทีเซียนปิด โดยเฉพาะอย่างยิ่งในทฤษฎีประเภทที่สมเหตุสมผลใด ๆ )
Andrej Bauer เขียนอย่างสวยงามเกี่ยวกับทฤษฎีบทนี้ในกระดาษในทฤษฎีบทคงที่ในการคำนวณสังเคราะห์และฉันสงสัยว่าอาจมีสิ่งที่น่าสนใจเพื่อเพิ่มคำตอบนี้
               
              
cantorคุณnatเล่นบทบาทของ "ชุดใดก็ได้" และnat -> Propเล่นบทบาทของ "ชุดย่อยทั้งหมดของ A" สิ่งที่จะเป็นผลกระทบของการแทนที่nat -> Propด้วยnat -> bool? ฉันเดาว่าการใช้Propมีความเหมาะสมในตรรกะเชิงสร้างสรรค์มากกว่า แต่ตรรกะคลาสสิกและทฤษฎีเซตมักจะถือว่าไม่รวมกลางดังนั้นเราควรจะสามารถแทนที่Propด้วยboolและยังสามารถพิสูจน์ทฤษฎีบทได้ใช่ไหม