diff options
author | Nao Pross <np@0hm.ch> | 2024-01-09 12:13:21 +0100 |
---|---|---|
committer | Nao Pross <np@0hm.ch> | 2024-01-09 12:13:21 +0100 |
commit | d96c0b63e5aeb2d8c6706f4616425bee74b281a0 (patch) | |
tree | 895decc2d7ee83a1fbd8f8a7ad27886125e2e7aa | |
parent | Fix intersections (diff) | |
download | act4e-mcdp-fall2023.tar.gz act4e-mcdp-fall2023.zip |
Add missing case for identity in DPLoopfall2023
-rw-r--r-- | src/act4e_mcdp_solution/solver_dp.py | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/act4e_mcdp_solution/solver_dp.py b/src/act4e_mcdp_solution/solver_dp.py index 2798d47..6d15963 100644 --- a/src/act4e_mcdp_solution/solver_dp.py +++ b/src/act4e_mcdp_solution/solver_dp.py @@ -755,6 +755,9 @@ class DPSolver(DPSolverInterface): chain: List[R1] = list(map(first, chain)) return chain + if isinstance(dp.dp, IdentityDP): + return self.solve_dp_FixFunMinRes_IdentityDP(dp.dp, query) + # Get chain that is a fixed point of phi and return upper set chain: List[R1] = kleene_ascent(phi) min_r_loop: UpperSet[R1] = UpperSet.from_points(dp.R, chain) @@ -809,6 +812,9 @@ class DPSolver(DPSolverInterface): chain: List[F1] = list(map(first, chain)) return chain + if isinstance(dp.dp, IdentityDP): + return self.solve_dp_FixResMaxFun_IdentityDP(dp.dp, query) + chain: List[F1] = kleene_ascent(phi) max_f_loop: LowerSet[F1] = LowerSet.from_points(dp.F, chain) |