Tôi đã tìm thấy một số loại hành vi không nhất quán của Coq liên quan đến các tham số ngầm định.Hành vi không nhất quán của Coq liên quan đến các tham số ngầm định của định nghĩa Let
Section foo.
Let id1 {t : Set} (x : t) := x.
Let id2 {t : Set} (x : t) : t. assumption. Qed.
Check id2 (1:nat).
Check id1 (1:nat). (* Fails with "The term "1:nat" has type "nat" while it is expected to have type "Set"." *)
End foo.
Các Let
nét id1
dường như không làm cho t
ngầm, trong khi đó khi bạn thay thế Let
bởi Definition
không có lỗi xảy ra. Tôi đã nhận được một cái gì đó sai hoặc là một lỗi này?