9620b00e24
This modification improves the effectiveness of the process_metavar_inst procedure in the Lean elaborator. For example, suppose we have the constraint ctx |- ?M1[inst:0 ?M2] == a If ?M1 and ?M2 are unassigned, then we have to consider the two possible solutions: ?M1 == a or ?M1 == #0 and ?M2 == a On the other hand, if ?M2 is assigned to b, then we can ignore the second case. Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
8 lines
281 B
Text
8 lines
281 B
Text
Set: pp::colors
|
|
Set: pp::unicode
|
|
Set: lean::pp::implicit
|
|
Set: pp::colors
|
|
Assumed: N
|
|
λ (a : N) (f : N → N) (H : f a == a),
|
|
let calc1 : f a == a := @SubstP N (f a) a (λ x : N, f a == x) (@Refl N (f a)) H in calc1 :
|
|
Π (a : N) (f : N → N), f a == a → f a == a
|