src/HOL/String.thy
changeset 78955 74147aa81dbb
parent 75694 1b812435a632
child 80087 bda75c790bfa
equal deleted inserted replaced
78954:db9dba720ac7 78955:74147aa81dbb
    49 lemma nat_of_char [simp]:
    49 lemma nat_of_char [simp]:
    50   \<open>nat (of_char c) = of_char c\<close>
    50   \<open>nat (of_char c) = of_char c\<close>
    51   by (cases c) (simp only: of_char_Char nat_horner_sum)
    51   by (cases c) (simp only: of_char_Char nat_horner_sum)
    52 
    52 
    53 
    53 
    54 context unique_euclidean_semiring_with_bit_operations
    54 context linordered_euclidean_semiring_bit_operations
    55 begin
    55 begin
    56 
    56 
    57 definition char_of :: \<open>'a \<Rightarrow> char\<close>
    57 definition char_of :: \<open>'a \<Rightarrow> char\<close>
    58   where \<open>char_of n = Char (bit n 0) (bit n 1) (bit n 2) (bit n 3) (bit n 4) (bit n 5) (bit n 6) (bit n 7)\<close>
    58   where \<open>char_of n = Char (bit n 0) (bit n 1) (bit n 2) (bit n 3) (bit n 4) (bit n 5) (bit n 6) (bit n 7)\<close>
    59 
    59 
   437   "String.explode (String.implode cs) = map ascii_of cs"
   437   "String.explode (String.implode cs) = map ascii_of cs"
   438   by transfer rule
   438   by transfer rule
   439 
   439 
   440 end
   440 end
   441 
   441 
   442 context unique_euclidean_semiring_with_bit_operations
   442 context linordered_euclidean_semiring_bit_operations
   443 begin
   443 begin
   444 
   444 
   445 context
   445 context
   446 begin
   446 begin
   447 
   447