presume
을 사용하면 Iser 언어를 더 표현하기가 어렵습니다. presume
을 사용하여 모든 증명을 assume
으로 만 재구성 할 수 있기 때문입니다. 그럼에도 불구하고, 적어도 두 (더 많거나 적은 일반)를 사용하는 경우가 있습니다 : 당신이 상처처럼 presume
를 사용할 수 있기 때문에
첫째, presume
때때로, 더 자연스러운 교정을에 연결됩니다. 예를 들어
는, 증명서 상태가 두 골 A ==> C
및 B ==> C
을 가지고 당신 있다고 가정하고, 일부 E
는 현재 컨텍스트의 현재 상황과 E
의 사실과 사실 의미 부여 A
에서와 B
에서 증거를 다음과 수 C
. 다음과 같이 presume
를 사용하면 증명을 구성 할 수 있습니다 다음과 같이
이
presume E
show C <proof using E and facts>
thus C .
next
assume A
thus E <proof using A and facts>
thus E .
next
assume B
thus E <proof using A and facts>
thus E .
assume
스타일이 보인다 : presume
와
assume A
hence E <proof using A and facts>
show C <proof using E and facts>
next
assume B
hence E <proof using B and facts>
show C <proof using E and facts>
, 증거의 구조는 더 명시 적입니다 : 분명히, 우리 만 결과를 표시하려면 E
이 필요하며 이것은 증거의 흥미로운 부분 일 수 있습니다. 또한 스타일에서는 E
이 C
을 두 번 포함한다는 증명을해야합니다. 물론 이것은 항상 보조 정리로 분해 될 수 있지만, 증명이 상황에서 많은 사실을 필요로한다면, 그것은 추악해질 수 있습니다.
두 번째로 presume
을 사용할 수 있으며 교정 오류는 assume
및 show
에 입력 오류를 찾을 수 있습니다. 당신이
fix x
assume A and B and C and D and E
show F
을 가지고 있지만 이사벨은 show
즉, 당신은 아마 가정 또는 골 문에 일부 오타가 어떤 목표를 해결하지 않을 것이다 있음을 알려줍니다 가정하자. 이제 assume
번을 presume
으로 변경하세요. show
이 여전히 실패하면 실수는 목표 진술 문에서 어딘가에 있습니다. 그렇지 않으면 아마 가정의 어딘가에있을 것입니다. show
증명을 sorry
으로 닫고 apply_end(assumption)+
으로 가정을 해제하십시오. 그것이 통일 될 수 없다는 가정하에 멈출 것입니다. 아마도 이것은 잘못된 것입니다.
'추측'이라도 목표 전제에서 명시적인 가정이 필요하지 않습니다. 무엇이 중요할까요? subproof에서 내 보낸 규칙은 isar-ref 매뉴얼 섹션 2.1.2 (추론을 통한 추론)에서 설명하는 방식으로 어떤 목표를 가지고 해결할 수 있습니다. 이러한 원칙은 대부분의 사람들이 기대하는 것보다 더 일반적입니다. 목표는 도식 일 수도 있고 응용 프로그램이 통일을 통한 적절한 전제를 고안하는 것일 수도 있습니다. – Makarius