(** To be equivalent is an equivalence relation *)
Section Equiv.
Context {T : Type} {K : AbsRing} {V : NormedModule K}.

(* Specifications: *)
Lemma equiv_refl :
forall {F : (T -> Prop) -> Prop} {FF : Filter F} (f : T -> V),
is_equiv F f f.
Lemma equiv_sym :
forall {F : (T -> Prop) -> Prop} {FF : Filter F} (f g : T -> V),
is_equiv F f g -> is_equiv F g f.
Lemma equiv_trans :
forall {F : (T -> Prop) -> Prop} {FF : Filter F} (f g h : T -> V),
is_equiv F f g -> is_equiv F g h -> is_equiv F f h.
Lemma equiv_carac_0 :
forall {F : (T -> Prop) -> Prop} {FF : Filter F} (f g : T -> V),
is_equiv F f g ->
{o : T -> V | (forall x : T, f x = plus (g x) (o x)) /\ is_domin F g o }.
Lemma equiv_carac_1 :
forall {F : (T -> Prop) -> Prop} {FF : Filter F} (f g o : T -> V),
(forall x, f x = plus (g x) (o x)) -> is_domin F g o -> is_equiv F f g.
Lemma equiv_ext_loc {F : (T -> Prop) -> Prop} {FF : Filter F} (f g : T -> V) :
F (fun x => f x = g x) -> is_equiv F f g.