diff -r 5aa5a8d6e5b5 -r 6b4c41037649 src/HOL/Library/Case_Converter.thy --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/HOL/Library/Case_Converter.thy Sun Dec 30 10:30:41 2018 +0100 @@ -0,0 +1,23 @@ +(* Author: Pascal Stoop, ETH Zurich + Author: Andreas Lochbihler, Digital Asset *) + +theory Case_Converter + imports Main +begin + +subsection \Eliminating pattern matches\ + +definition missing_pattern_match :: "String.literal \ (unit \ 'a) \ 'a" where + [code del]: "missing_pattern_match m f = f ()" + +lemma missing_pattern_match_cong [cong]: + "m = m' \ missing_pattern_match m f = missing_pattern_match m' f" + by(rule arg_cong) + +lemma missing_pattern_match_code [code_unfold]: + "missing_pattern_match = Code.abort" + unfolding missing_pattern_match_def Code.abort_def .. + +ML_file "case_converter.ML" + +end