Section map_vec_pos_equiv.
Variable (X : Type) (R : X -> X -> Prop)
(Y : Type) (T : Y -> Y -> Prop)
(T_refl : forall y, T y y)
(T_trans : forall x y z, T x y -> T y z -> T x z).

Theorem map_vec_pos_equiv n (f : vec X n -> Y) :
(forall p v x y, R x y -> T (f (v[x/p])) (f (v[y/p])))
-> forall v w, (forall p, R (v#>p) (w#>p)) -> T (f v) (f w).