# How to prove that a functional is injective in Agda?

Consider for example the following code: open import Relation.Binary.PropositionalEquality record Foo (A : Set) : Set where constructor foo field foo-a : A map-foo : forall {A} -> (A -> A) -> Foo A -> Foo A map-foo f (foo a) = foo (f a) map-foo-injective : forall {A} {f g : A -> A}… Read More How to prove that a functional is injective in Agda?