From 81a4ade0a3b43cbe1aa428cc7c944c5b45334ec8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20B=C3=BChler?= <david.buhler@cea.fr> Date: Mon, 26 Feb 2024 16:27:50 +0100 Subject: [PATCH] [Eva] Removes the inclusion of garbled mix origins. Origins should never impact the convergence of the analysis. --- src/kernel_services/abstract_interp/map_lattice.ml | 3 +-- src/kernel_services/abstract_interp/origin.ml | 2 -- src/kernel_services/abstract_interp/origin.mli | 1 - 3 files changed, 1 insertion(+), 5 deletions(-) diff --git a/src/kernel_services/abstract_interp/map_lattice.ml b/src/kernel_services/abstract_interp/map_lattice.ml index 204ad8aa11e..46c8138c810 100644 --- a/src/kernel_services/abstract_interp/map_lattice.ml +++ b/src/kernel_services/abstract_interp/map_lattice.ml @@ -392,8 +392,7 @@ module Make_MapSet_Lattice let is_included t1 t2 = match t1, t2 with - | Top (s1, o1), Top (s2, o2) -> - KSet.is_included s1 s2 && Origin.is_included o1 o2 + | Top (s1, _), Top (s2, _) -> KSet.is_included s1 s2 | Map _, Top (KSet.Top, _) -> true | Map m, Top (KSet.Set s, _) -> KVMap.for_all (fun k _ -> KSet.O.mem k s) m | Top _, Map _ -> false diff --git a/src/kernel_services/abstract_interp/origin.ml b/src/kernel_services/abstract_interp/origin.ml index 422fc364d37..357ebfd681a 100644 --- a/src/kernel_services/abstract_interp/origin.ml +++ b/src/kernel_services/abstract_interp/origin.ml @@ -119,8 +119,6 @@ let join t1 t2 = | Well, _ | _, Well -> Well | Origin o1, Origin o2 -> if o1.id <= o2.id then t1 else t2 -let is_included = equal - (* For each garbled mix origin, keep track of: - the number of writes (according to [register_write] below), i.e. the number diff --git a/src/kernel_services/abstract_interp/origin.mli b/src/kernel_services/abstract_interp/origin.mli index a5d1ce6566c..bb8cdc57192 100644 --- a/src/kernel_services/abstract_interp/origin.mli +++ b/src/kernel_services/abstract_interp/origin.mli @@ -53,7 +53,6 @@ val pretty_as_reason: Format.formatter -> t -> unit val descr: t -> string val join: t -> t -> t -val is_included: t -> t -> bool (** Records the write of an imprecise value of the given bases, with the given origin. -- GitLab