1919
2020#include " eval/visitors/func_evaluator.hpp"
2121#include " algorithms/cc/cc.hpp"
22- #include " algorithms/mfvs/min_feedback_vertex_set.hpp"
23- #include " algorithms/mfvs/mfvs_fact.hpp"
2422#include " algorithms/matching/matching.hpp"
25- #include " algorithms/matching/matching_fact .hpp"
23+ #include " algorithms/mfvs/min_feedback_vertex_set .hpp"
2624#include " algorithms/misc/causalization_builders.hpp"
2725#include " algorithms/misc/causalization_json.hpp"
2826#include " algorithms/scc/scc.hpp"
29- #include " algorithms/scc/scc_fact.hpp"
3027#include " algorithms/sorting/topological/topological_sorting.hpp"
31- #include " algorithms/sorting/topological/ts_fact.hpp"
3228#include " eval/base_type.hpp"
3329#include " sbg/bipartite_sbg.hpp"
3430#include " sbg/expression.hpp"
3935#include " sbg/rational.hpp"
4036#include " sbg/set.hpp"
4137#include " sbg/pw_map.hpp"
42- #include " sbg/pwmap_fact.hpp"
4338#include " util/debug.hpp"
4439#include " util/defs.hpp"
4540
@@ -627,7 +622,7 @@ ExprBaseType BuiltInFunctions::matchingEvaluator(const EBTList& args)
627622 Util::ERROR_UNLESS (args.size () == 2
628623 , " matchingEvaluator: wrong number of arguments\n " );
629624
630- LIB ::Matching match_impl = LIB :: MATCH_FACT . createMatchAlgorithm () ;
625+ LIB ::Matching match_impl;
631626 const auto matching_evaluator = Util::Overload {
632627 [&match_impl](LIB ::BipartiteSBG a, LIB ::NAT b) {
633628 return ExprBaseType{match_impl.calculate (copy (b, a))};
@@ -649,7 +644,7 @@ ExprBaseType BuiltInFunctions::sccEvaluator(const EBTList& args)
649644 Util::ERROR_UNLESS (args.size () == 1
650645 , " sccEvaluator: wrong number of arguments\n " );
651646
652- LIB ::SCC scc_impl = LIB :: SCC_FACT . createSCCAlgorithm () ;
647+ LIB ::SCC scc_impl;
653648 const auto scc_evaluator = Util::Overload {
654649 [&scc_impl](LIB ::DirectedSBG a) {
655650 return ExprBaseType{scc_impl.calculate (a).rmap ()};
@@ -671,7 +666,7 @@ ExprBaseType BuiltInFunctions::matchSCCEvaluator(const EBTList& args)
671666
672667 const LIB ::MatchData match_result = std::get<LIB ::MatchData>(match_base_type);
673668 LIB ::DirectedSBG dsbg = misc::buildLoopDetectionSBG (match_result);
674- LIB ::SCC scc_impl = LIB :: SCC_FACT . createSCCAlgorithm () ;
669+ LIB ::SCC scc_impl;
675670 LIB ::SCCData scc_result = scc_impl.calculate (dsbg);
676671
677672 return ExprBaseType{scc_result.rmap ()};
@@ -682,7 +677,7 @@ ExprBaseType BuiltInFunctions::mfvsEvaluator(const EBTList& args)
682677 Util::ERROR_UNLESS (args.size () == 1
683678 , " mfvsEvaluator: wrong number of arguments\n " );
684679
685- LIB ::MinFeedbackVertexSet mfvs_impl = LIB :: MFVS_FACT . createMFVSAlgorithm () ;
680+ LIB ::MinFeedbackVertexSet mfvs_impl;
686681 const auto mfvs_evaluator = Util::Overload {
687682 [&mfvs_impl](LIB ::DirectedSBG a) {
688683 return ExprBaseType{mfvs_impl.calculate (a)};
@@ -705,11 +700,11 @@ ExprBaseType BuiltInFunctions::matchSCCMFVSEvaluator(const EBTList& args)
705700
706701 const LIB ::MatchData match_result = std::get<LIB ::MatchData>(match_base_type);
707702 LIB ::DirectedSBG dsbg = misc::buildLoopDetectionSBG (match_result);
708- LIB ::SCC scc_impl = LIB :: SCC_FACT . createSCCAlgorithm () ;
703+ LIB ::SCC scc_impl;
709704 LIB ::SCCData scc_result = scc_impl.calculate (dsbg);
710705
711706 dsbg = misc::buildTearingSBG (scc_result);
712- LIB ::MinFeedbackVertexSet mfvs_impl = LIB :: MFVS_FACT . createMFVSAlgorithm () ;
707+ LIB ::MinFeedbackVertexSet mfvs_impl;
713708 return ExprBaseType{mfvs_impl.calculate (dsbg)};
714709}
715710
@@ -718,10 +713,10 @@ ExprBaseType BuiltInFunctions::topoSortEvaluator(const EBTList& args)
718713 Util::ERROR_UNLESS (args.size () == 1
719714 , " topoSortEvaluator: wrong number of arguments\n " );
720715
721- LIB ::TopologicalSorting ts_impl = LIB :: TS_FACT . createTSAlgorithm () ;
716+ LIB ::TopologicalSorting ts_impl;
722717 const auto ts_evaluator = Util::Overload {
723718 [&ts_impl](LIB ::DirectedSBG a) {
724- return ExprBaseType{ts_impl.calculate (a, LIB ::PWMAP_FACT . createPWMap () )};
719+ return ExprBaseType{ts_impl.calculate (a, SBG :: LIB ::PWMap{} )};
725720 },
726721 [](auto a) {
727722 Util::ERROR (" topoSortEvaluator: wrong argument " , a, " for sort\n " );
@@ -740,15 +735,15 @@ ExprBaseType BuiltInFunctions::causalizationEvaluator(const EBTList& args)
740735
741736 const LIB ::MatchData match_result = std::get<LIB ::MatchData>(match_base_type);
742737 LIB ::DirectedSBG dsbg = misc::buildLoopDetectionSBG (match_result);
743- LIB ::SCC scc_impl = LIB :: SCC_FACT . createSCCAlgorithm () ;
738+ LIB ::SCC scc_impl;
744739 LIB ::SCCData scc_result = scc_impl.calculate (dsbg);
745740
746741 dsbg = misc::buildTearingSBG (scc_result);
747- LIB ::MinFeedbackVertexSet mfvs_impl = LIB :: MFVS_FACT . createMFVSAlgorithm () ;
742+ LIB ::MinFeedbackVertexSet mfvs_impl;
748743 LIB ::Set mfvs_result = mfvs_impl.calculate (dsbg);
749744
750745 dsbg = misc::buildVerticalSortingSBG (scc_result, mfvs_result);
751- LIB ::TopologicalSorting ts_impl = LIB :: TS_FACT . createTSAlgorithm () ;
746+ LIB ::TopologicalSorting ts_impl;
752747 LIB ::PWMap ts_result = ts_impl.calculate (dsbg, scc_result.rmap ());
753748
754749 misc::CausalizationResult causalized{match_result.M (), scc_result.rmap ()
0 commit comments