proposition: Lemma sub_functionP f g: function f -> function g -> (sub (graph f) (graph g) <-> agrees_on (source f) f g).
proof: Proof. move=> ff fg; split => hyp. split => //. by do 2 rewrite -domain_fg=>//; apply: domain_S. by move=> a af /=;rewrite- (Vf_pr fg (hyp _ (Vf_pr3 ff af))). move => t tg; move: hyp => [_ sg ag]. have Ptsf: (inc (P t) (source f)) by Wtac. rewrite (in_graph_Vf ff tg) (ag _ Ptsf); Wtac. Qed.
imports: mathcomp(ssreflect ssrfun ssrbool eqtype ssrnat)