diff -r dd58f13a8eb4 -r eb85850d3eb7 src/HOL/ex/CodeCollections.thy --- a/src/HOL/ex/CodeCollections.thy Fri Nov 17 02:19:55 2006 +0100 +++ b/src/HOL/ex/CodeCollections.thy Fri Nov 17 02:20:03 2006 +0100 @@ -55,15 +55,19 @@ qed definition (in ordered) - min :: "'a \ 'a \ 'a" + min :: "'a \ 'a \ 'a" where "min x y = (if x \<^loc><<= y then x else y)" - max :: "'a \ 'a \ 'a" + +definition (in ordered) + max :: "'a \ 'a \ 'a" where "max x y = (if x \<^loc><<= y then y else x)" definition - min :: "'a::ordered \ 'a \ 'a" + min :: "'a::ordered \ 'a \ 'a" where "min x y = (if x <<= y then x else y)" - max :: "'a::ordered \ 'a \ 'a" + +definition + max :: "'a::ordered \ 'a \ 'a" where "max x y = (if x <<= y then y else x)" fun abs_sorted :: "('a \ 'a \ bool) \ 'a list \ bool" @@ -366,15 +370,15 @@ "get_index p n (x#xs) = (if p x then Some n else get_index p (Suc n) xs)" definition - between :: "'a::enum \ 'a \ 'a option" + between :: "'a::enum \ 'a \ 'a option" where "between x y = get_first (\z. x << z & z << y) enum" definition - index :: "'a::enum \ nat" + index :: "'a::enum \ nat" where "index x = the (get_index (\y. y = x) 0 enum)" definition - add :: "'a::enum \ 'a \ 'a" + add :: "'a::enum \ 'a \ 'a" where "add x y = (let enm = enum @@ -387,9 +391,8 @@ "sum [] = inf" "sum (x#xs) = add x (sum xs)" -definition - "test1 = sum [None, Some True, None, Some False]" - "test2 = (inf :: nat \ unit)" +definition "test1 = sum [None, Some True, None, Some False]" +definition "test2 = (inf :: nat \ unit)" code_gen "op <<=" code_gen "op <<"