src/HOL/Codegenerator_Test/Generate_Binary_Nat.thy
author paulson <lp15@cam.ac.uk>
Mon, 24 Feb 2014 16:56:04 +0000
changeset 55719 cdddd073bff8
parent 54228 229282d53781
child 58678 398e05aa84d4
permissions -rw-r--r--
Lemmas about Reals, norm, etc., and cleaner variants of existing ones


(* Author: Florian Haftmann, TU Muenchen *)

header {* Pervasive test of code generator *}

theory Generate_Binary_Nat
imports
  Candidates
  "~~/src/HOL/Library/AList_Mapping"
  "~~/src/HOL/Library/Finite_Lattice"
  "~~/src/HOL/Library/Code_Binary_Nat"
begin

text {*
  If any of the checks fails, inspect the code generated
  by a corresponding @{text export_code} command.
*}

text {* Formal joining of hierarchy of implicit definitions in Scala *}

class semiring_numeral_even_odd = semiring_numeral_div + even_odd

instance nat :: semiring_numeral_even_odd ..

definition semiring_numeral_even_odd :: "'a itself \<Rightarrow> 'a::semiring_numeral_even_odd"
where
  "semiring_numeral_even_odd TYPE('a) = undefined"

definition semiring_numeral_even_odd_nat :: "nat itself \<Rightarrow> nat"
where
  "semiring_numeral_even_odd_nat = semiring_numeral_even_odd"

export_code _ checking  SML OCaml? Haskell? Scala

end