functor (Domain : Analyzer_domain_sig.Domain-> Composite_domain