Я пытаюсь сделать доказательства над зависимыми функциями, и я сталкиваюсь с препятствием.Как доказать, что тип действителен в Agda?
Так скажем, у нас есть теорема п равных
f-equal : ∀ {A B} {f : A → B} {x y : A} → x ≡ y → f x ≡ f y
f-equal refl = refl
Я пытаюсь доказать более общее понятие о сохранении равенства над зависимыми функциями, и работаю в корягу. А именно, тип
Π-equal : ∀ {A} {B : A → Set} {f : {a : A} → B a} {x y : A} →
x ≡ y → f x ≡ f y
делает компилятор несчастным, потому что он не может понять, что Р х и Р у одного и того же типа. Кажется, что это должна быть проблема с исправлением. Это?
примечание; отношение эквивалентности используется определяется следующим образом:
data _≡_ {A : Set}(x : A) : A → Set where
refl : x ≡ x