適用スクリプトでapply (rule)
を使用すると、通常は適切なルールが選択されます。同じことが構造化プルーフでproof
にも当てはまります。使用されたルールの名前はどこで調べられますか? Pure.intro
/intro
/iff
(またはその?
または!
変種の一つ)として宣言されて'適用(ルール)'または '証明'のルールは何ですか?
7
A
答えて
5
あなたは次のようにrule_trace
を使用して試すことができます:
lemma "a ∧ b"
using [[rule_trace]]
apply rule
:
rules:
?P ⟹ ?Q ⟹ ?P ∧ ?Q
?P ⟹ ?Q ⟹ ?P ∧ ?Q
proof (prove): step 2
goal (2 subgoals):
1. a
2. b
の場合ルールの名前が必要な場合は、find_theorems
を使用して試すことができます。彼らが直接決定できるかどうかはわかりません。
3
すべてがデフォルトの導入ルールとして考えられている(つまり、何も現在の事実がで連鎖されていない場合)。同様に、Pure.elim
/elim
/iff
として宣言されたものはすべて、デフォルトの排除ルール(すなわち、現在のファクトがチェーンされている場合)とみなされます。通常、後の宣言が以前の宣言よりも優先されます(少なくとも、同じ種類の宣言が使用されている場合、たとえばPure.intro?
とintro
など)が異なる場合があります)。
しかし、これは基本的にどのようなルールが考慮されるかを答えるだけです。どのルールが適用されたかを直接調べる方法はわかりません。しかし、あなたが疑問視していた行の真上にあるfind_theorems intro
で正しい規則を見つけるのは比較的簡単です。例えば、
lemma "A & B"
find_theorems intro
proof
はあなたの目標A & B
への導入ルールとして適用することができ、すべてのルールが表示されます。そのうちの1つはproof
によって適用されるデフォルトルールです(取得したサブゴールで認識されます)。
、例えば、
lemma assumes "A | B" shows "P"
using assms
find_theorems elim
proof
3
他の答えでは、すでに適用されている補題の決定方法がrule
で分かります。 proof
はrule
ではなく、default
というメソッドを呼び出すことに注意してください。ほとんどの場合、default
はrule
と同じですが、たとえばunfold_locales
と呼ばれるロケール述語を証明する。
実際に何が起こっているかを知る方法はわかりません。
関連する問題
- 1. カスタム検証ルールでlaravelの検証ルールを使用する方法は?
- 2. データまたはドメイン層のルール検証?
- 3. JQueryの検証ルールは別のルールに依存します
- 4. Rubyのスペースのルールは何ですか?
- 5. VARCHARまたはINTは検証ルールですか?
- 6. SQLエスケープのルールは何ですか?
- 7. FireGuardのProGuardルールは何ですか?
- 8. ListViewのItemsSourceプロパティに検証ルールを適用します。
- 9. MISRAルール13.6説明は
- 10. データ検証用のFirebaseルール
- 11. ACLルールはイベントに適用されますか?
- 12. phoenixフレームワークのモデルにカスタム検証ルールを適用する方法
- 13. Regex検証ルール
- 14. カスタム検証ルール
- 15. yii検証ルール
- 16. AJAXを使用したIntegratin検証ルール
- 17. JavaFXでScrollBarを使用するルールとは何ですか?
- 18. プレイリストエンティティで使用する削除ルールは何ですか?
- 19. SWRLルールは私のオントロジには適用されません
- 20. CodeIgniterの検証ルール
- 21. ルックアップテーブルのルールを適用する
- 22. jQueryの検証でルール/ attr
- 23. jQuery検証プラグインで、1つの検証ルールが他の検証ルールを抑制しますか?
- 24. Snortルールまたはsnortローカルルール?
- 25. CSSルールは最新の設定から適用されるはずですか?
- 26. Outlook 2010のルールの説明
- 27. サブドメインへのリダイレクトまたは特定のルールの適用のための.htaccess
- 28. リユースlaravel検証ルール
- 29. Yii:カスタム検証ルール
- 30. Firebaseリアルタイムデータ検証ルール