diff -r a0ab0dc28d3c -r 3c587b7c3d5c src/HOL/Codegenerator_Test/Generate_Target_Nat.thy --- a/src/HOL/Codegenerator_Test/Generate_Target_Nat.thy Tue Oct 26 16:22:03 2021 +0100 +++ b/src/HOL/Codegenerator_Test/Generate_Target_Nat.thy Tue Oct 26 14:43:59 2021 +0000 @@ -16,6 +16,14 @@ by a corresponding \export_code\ command. \ +lemma take_bit_num_code [code]: \ \TODO: move\ + \take_bit_num n m = (case (n, m) + of (0, _) \ None + | (Suc n, Num.One) \ Some Num.One + | (Suc n, Num.Bit0 m) \ (case take_bit_num n m of None \ None | Some q \ Some (Num.Bit0 q)) + | (Suc n, Num.Bit1 m) \ Some (case take_bit_num n m of None \ Num.One | Some q \ Num.Bit1 q))\ + by (cases n; cases m) simp_all + export_code _ checking SML OCaml? Haskell? Scala end