diff --git a/src/plugins/server/kernel_properties.ml b/src/plugins/server/kernel_properties.ml
index 7c25738018d966e9f3968bda58675ad0067abee0..7c690173247ac3f41785491ca89375497d5b3a65 100644
--- a/src/plugins/server/kernel_properties.ml
+++ b/src/plugins/server/kernel_properties.ml
@@ -50,6 +50,7 @@ struct
 
   let t_assumes = t_clause "assumes"
   let t_requires = t_clause "requires"
+  let t_instance = t_clause "instance"
   let t_breaks = t_clause "breaks"
   let t_continues = t_clause "continues"
   let t_returns = t_clause "returns"
@@ -62,6 +63,7 @@ struct
   let t_froms = t_kind "froms" "Clause `@assigns … \\from …`"
 
   let t_assert = t_clause "assert"
+  let t_check = t_clause "check"
   let t_loop_invariant = t_loop "invariant"
   let t_loop_assigns = t_loop "assigns"
   let t_loop_variant = t_loop "variant"
@@ -89,7 +91,7 @@ struct
 
   open Property
 
-  let rec tag = function
+  let tag = function
     | IPPredicate { ip_kind } ->
       begin match ip_kind with
         | PKRequires _ -> t_requires
@@ -110,7 +112,8 @@ struct
     | IPDisjoint _ -> t_disjoint
     | IPCodeAnnot { ica_ca={ annot_content } } ->
       begin match annot_content with
-        | AAssert _ -> t_assert
+        | AAssert (_, Assert, _) -> t_assert
+        | AAssert (_, Check, _) -> t_check
         | AStmtSpec _ -> t_code_contract
         | AInvariant(_,false,_) -> t_code_invariant
         | AInvariant(_,true,_) -> t_loop_invariant
@@ -125,7 +128,7 @@ struct
     | IPFrom _ -> t_froms
     | IPDecrease _ -> t_decreases
     | IPReachable _ -> t_reachable
-    | IPPropertyInstance { ii_ip } -> tag ii_ip
+    | IPPropertyInstance _ -> t_instance
     | IPTypeInvariant _ -> t_type_invariant
     | IPGlobalInvariant _ -> t_global_invariant
     | IPOther { io_name } -> Enum.instance p_other io_name