Target program decision tree Switch ({ var=AcRoot=param/82; dom=Int [-inf; -1] [1; +inf] v Tag _; }) = Leaf=VConstant:0 Switch ({ var=AcRoot=param/82; dom=Int 0; }) = Leaf=VConstant:1 Fallback=None Source program decision tree Switch AcRoot:{ Bool false -> Leaf='Int 1 ' Bool true -> Leaf='Int 0 ' } Fallback: Unreachable The two programs are equivalent.