Module Mlsem_system.Checker

val is_type_test_unsat : tau:Mlsem_types.GTy.t -> Mlsem_types.GTy.t -> Mlsem_types.Ty.t

is_type_test_unsat ~tau ty returns a type that is empty if and only if a branch tau of a typecase on an expression of type ty is unreachable

type error = {
  1. eid : Mlsem_common.Eid.t;
  2. title : string;
  3. descr : string option;
}
exception Untypeable of error