Indexed.ExtendFiniteFunctor that creates an abstract function graph for (T * X) => Y) given a type with finite elements T and an abstract function graph for X => Y.
module M : sig ... endmodule X : sig ... endmodule Y : sig ... endmodule MFG : sig ... end