Reasoning with cases and hypotheticals in HYPO