Definition duplicateIT i j k : IdiomaticTransformation (KSApplicative i k)
(ComposeApplicative (KSApplicative i j) (KSApplicative j k)).
exists (@duplicate i j k).
exact (@duplicate_pure i j k).
exact (@duplicate_ap i j k).
Defined.
Definition dimIT i j : IdiomaticTransformation (KSApplicative i j) NatPlusApplicative.
exists (@dim i j).
reflexivity.
reflexivity.
Defined.

(* Specifications: *)
Lemma pos_ap i j a b (f : KleeneStore i j (a -> b)) (x : KleeneStore i j a) :
Vector.to_list (pos (KSap f x)) = app (Vector.to_list (pos f)) (Vector.to_list (pos x)).