From 726f3dfb116ec9265041e642000612831633fe3c Mon Sep 17 00:00:00 2001 From: Marcos Magueta Date: Sat, 11 Jul 2026 23:39:40 -0300 Subject: mutual recursion admitted under lexicographic measures --- lib/vm.ml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'lib/vm.ml') diff --git a/lib/vm.ml b/lib/vm.ml index 84c5c77..0d34e4a 100644 --- a/lib/vm.ml +++ b/lib/vm.ml @@ -155,13 +155,13 @@ module Make (W : World.WORLD) = struct facts) | Some (World.Rules rules) -> let witness_ground rule = - match rule.World.witness with - | None -> true - | Some label -> ( + List.for_all + (fun label -> match Label.Map.find_opt label bindings with | Some pattern -> Pattern.is_ground (Pattern.Subst.resolve subst pattern) | None -> false) + rule.World.witness in if List.for_all witness_ground rules then Run -- cgit v1.2.3