No need for the if-then, since `if boolean_expression then false else true` is equivalent to `not boolean_expression`.
In this case you can do better than using `not (List.length vdi_intellicache = 0)` by using `List.length vdi_intellicache > 0`, or even better `vdi_intellicache <> []`.