equal
deleted
inserted
replaced
8 imports Nat_Transfer Divides Lifting |
8 imports Nat_Transfer Divides Lifting |
9 begin |
9 begin |
10 |
10 |
11 subsection \<open>Type of target language integers\<close> |
11 subsection \<open>Type of target language integers\<close> |
12 |
12 |
13 typedef integer = "UNIV \<Colon> int set" |
13 typedef integer = "UNIV :: int set" |
14 morphisms int_of_integer integer_of_int .. |
14 morphisms int_of_integer integer_of_int .. |
15 |
15 |
16 setup_lifting type_definition_integer |
16 setup_lifting type_definition_integer |
17 |
17 |
18 lemma integer_eq_iff: |
18 lemma integer_eq_iff: |
613 code_module Code_Numeral \<rightharpoonup> (SML) Arith and (OCaml) Arith and (Haskell) Arith |
613 code_module Code_Numeral \<rightharpoonup> (SML) Arith and (OCaml) Arith and (Haskell) Arith |
614 |
614 |
615 |
615 |
616 subsection \<open>Type of target language naturals\<close> |
616 subsection \<open>Type of target language naturals\<close> |
617 |
617 |
618 typedef natural = "UNIV \<Colon> nat set" |
618 typedef natural = "UNIV :: nat set" |
619 morphisms nat_of_natural natural_of_nat .. |
619 morphisms nat_of_natural natural_of_nat .. |
620 |
620 |
621 setup_lifting type_definition_natural |
621 setup_lifting type_definition_natural |
622 |
622 |
623 lemma natural_eq_iff [termination_simp]: |
623 lemma natural_eq_iff [termination_simp]: |