在这个例子中
%hint
lemma1: S a `LTE` S b -> a `LTE` b
lemma1 = ?todo1
myMinus: (a, b: Nat) -> {auto prf: b `LTE` a} -> Nat
myMinus (S a') (S b') = a' `myMinus` b' -- automatically uses lemma1
myMinus a b = ?todo2
Idris能够在需要的地方自动使用lemma1
。现在我添加第二个引理
%hint
lemma2: S a `LTE` b -> a `LTE` b
lemma2 = ?todo3
介于lemma1
和myMinus
之间。现在Idris找不到lemma1
了,可能是因为它只尝试lemma2
,我必须手动指定它。
有没有办法让我在上下文中同时拥有lemma1
和lemma2
%hint
并让Idris自动选择正确的?{/ p>