Consider the following: ``` assert (x : Bool)-> (case x of { `true -> < ?Int > , `false -> < !Int > }) = (x : Bool)-> < case x of { `true -> ?Int , `false -> !Int } > : Type ``` This is rejected so far but I wish we accept by checking that setting x to `true and`false leads to the resulting terms to be equivalent.