수학 작문을위한 증거 조교


12

교정 보조를 사용하여 수학 교정을 작성하고 싶습니다. 모든 것은 1 차 논리 (평등)와 자연스러운 추론을 사용하여 작성됩니다. 배경은 이론 (ZF)으로 설정됩니다. 예를 들어 다음과 같은 증거를 어떻게 작성할 수 있습니까?

공리 :xy(x=yz(zxzy))

정리 :xy(z(zx)z(zy)x=y)

즉, 빈 세트는 고유합니다.

종이와 펜을 사용하여 달성하는 것은 사소한 일이지만 실제로 필요한 것은 정확성을 증명하는 데 도움이되는 소프트웨어입니다.

감사합니다.


11
먼저 교정 조교를 선택해야합니다. Coq 는 내가 사용하는 것이지만 다른 많은 것들이 있습니다 . 이들 중 일부는 1 차 논리를 기반으로하므로 필요에보다 적합합니다. 그런 다음 교정 보조를 배우겠다고 결심해야합니다. 며칠 안에 위와 같은 간단한 정리를 인코딩하고 증명할 수 있어야합니다. 우리가 당신을 위해 이것을 할 것이라고 기대하지 마십시오. 그런 식으로 아무것도 배울 수 없습니다.
Dave Clarke

5
유형 이론이 아닌 집합 이론에 관심이 있다면 Isabelle이 아마도 가장 간단한 시스템 일 것입니다. Coq는 이상하고 혼란스러워 보일 것입니다.
마크 Reitblatt

2
나는 당신이 쓴 공리가 1 차 논리가 아니라 2 차 논리라고 생각합니다. 전자의 경우 변수는 개인에 대해서만 범위를두고, 후자의 경우 변수는 개인과 세트 모두에 걸쳐있을 수 있기 때문입니다. 분명히 주어진 공리에서 와 는 세트 인 반면 는 개인입니다. y zxyz
MS Dousti

9
@Sadeq : ZF에서 우주의 기본 요소를 설정하지 않습니까? 따라서 1 차 논리에서 "모든 세트에 대해"와 같은 것을 말할 수 있어야합니다. 이는 그 공리에서 수행되는 것입니다.
Robin Kothari

9
@Sadeq, Robin의 말이 맞습니다. 는 1 차 이론이며 질문에 쓰여진 공리도 1 차입니다. 에서 모든 세트 대 개인으로서 아무것도 없다, 단지 집합입니다. 참고로, 다른 종류의 변수에 대해 이야기하기 위해 2 차 또는 그 이상의 객체로 이동할 필요가 없으며 다른 종류 만 필요하며 2 차 및 높은 차수의 논리는 많은 분류 된 논리와는 상당히 다릅니다. Z FZFZF
Kaveh

답변:


13

Coq와 Isabelle 모두이 작업을 수행 할 수 있습니다.

[Coq] 다음은 Coq의 기반이되는 CIC에서 ZFC를 인코딩하는 방법을 설명하는 논문입니다.

벤자민 베르너 (Benjamin Werner) : 유형의 세트, 유형의 세트 (1997). http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.55.1709

[Isabelle] ZF 라이브러리가 있습니다.

http://www.cl.cam.ac.uk/research/hvg/Isabelle/dist/library/ZF/index.html


3
이 논문은 꽤 훌륭하지만 ZF의 공리 이론을 직접 인코딩하기 위해 종 (유형 변수)과 공리를 추가 한 다음 이러한 공리에 직접 호소하여 증거를 만드는 것이 더 실용적이라고 생각합니다. 인코딩은 이론이 표현력과 관련이 있음을 보여줍니다.
코디

2
브루노 바라 스 (Bruno Barras)의 아이디어는 다음과 같다. lix.polytechnique.fr/~barras/proofs/sets/index.html
cody

9

Kaveh의 제안에 대한 의견에서 옮겨졌습니다.

먼저 교정 조교를 선택해야합니다. Coq 는 내가 사용하는 것이지만 다른 많은 것들이 있습니다 . Coq는 고차 로직 (소위 유도 구조의 미적분학)을 기반으로합니다. 다른 교정 보조원은 1 차 논리를 기반으로하므로 귀하의 요구에 더 적합 할 수 있습니다 (위의 설명을 모듈로).

그런 다음 교정 조교를 배워야합니다. 링크 된 문서는 Coq를 시작하기위한 튜토리얼입니다. Coq 전문가가 되려면 수년간의 헌신과 연습이 필요하지만 간단한 정리는 오후에 입증 될 수 있습니다. Coq 또는 다른 증거 조수를 배우는 열쇠는 링크 된 종이에있는 것과 같은 증명을하는 것입니다. 교정 조교와의 상호 작용에 대한 전체 경험을 종이에 잘 전달할 수 없기 때문에 논문을 읽는 것만으로도 거의 도움이되지 않습니다.

며칠 안에 위와 같은 간단한 정리를 인코딩하고 증명할 수 있어야합니다. 우리가 당신을 위해 이것을 할 것이라고 기대하지 마십시오. 그런 식으로 아무것도 배울 수 없습니다.

이러한 이론을 증명하는 데 성공하면 여기에 답변을 게시하고 경험에 대해 몇 가지 의견을 남기십시오.

도전하고 있습니까?


4
Coq는 합리적인 선택입니다. 그러나 xddz5가 실제로 유형 이론이 아닌 ZF 세트 이론에서 작동하려면 Mizar가 더 적합합니다.
디모데 차우


5

Dave Clarke는 Coq을 제안하지만 실제로 Isabelle은 ZF 용 라이브러리있는 것으로 보아 훨씬 더 좋은 아이디어처럼 보입니다 . 이사벨라는 또한 매우 성숙하고 다양한 전술과 확장을 포함합니다.

나는 개인적으로 Mizar를 사용하지는 않았지만 좋을 수도 있습니다.


2

다음 증거를 어떻게 작성할 수 있습니까?

Isabelle / ZF에서는 다음과 같이 작성할 수 있습니다.

theory csthquestion imports Main

begin

theorem empty_unique:
shows "\<forall> x.\<forall>y.(\<forall>z. (z\<notin>x)) \<and> (\<forall>z.(z\<notin>y)) \<longrightarrow> x=y"
    by auto

end

보시다시피 Isabelle은 이것을 자동으로 증명합니다. 물론 당신이 정말로 원한다면 더 자세한 증거를 쓸 수 있습니다.


2

이 정리는 내 DC Proof 2.0 소프트웨어에 포함 된 자습서의 실제 예제입니다 (예 11 참조). 내 웹 사이트 http://www.dcproof.com 에서 무료로 다운로드 하십시오.


1
이것은이 사이트에 대한 약간의 판매입니다. 소프트웨어가 어떤 방식으로 문제에 적합한 지 말해주는 정보를 고르게 제시 할 수 있습니까? 아마도이 유도의 비디오 또는 스크린 샷에 대한 링크가 수행되고 있습니까?
찰스 스튜어트

1
증거는 다음과 같습니다. dcproof.com/EmptySetUnique.htm 내 웹 사이트에는 시스템 작동 방식을 보여주는 비디오가 있습니다.
Dan Christensen
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.