01000ff7df
We use it to enforce that a let-variable has the expected type Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
12 lines
490 B
Text
12 lines
490 B
Text
λ (p q : Prop) (H1 : p) (H2 : q) (c : Prop) (H : p → q → c),
|
|
H H1 H2 :
|
|
∀ (p q : Prop),
|
|
p → q → (∀ (c : Prop), (p → q → c) → c)
|
|
let1.lean:19:19: error: type mismatch at term
|
|
λ (p q : Prop) (H1 : p) (H2 : q) (c : Prop) (H : p → q → c),
|
|
H H1 H2has type
|
|
∀ (p q : Prop),
|
|
p → q → (∀ (c : Prop), (p → q → c) → c)
|
|
but is expected to have type
|
|
∀ (p q : Prop),
|
|
p → q → (λ (p q : Prop), ∀ (c : Prop), (p → q → c) → c) q p
|