equal
deleted
inserted
replaced
266 instance by default |
266 instance by default |
267 (auto simp add: less_eq_inat_def less_inat_def plus_inat_def split: inat.splits) |
267 (auto simp add: less_eq_inat_def less_inat_def plus_inat_def split: inat.splits) |
268 |
268 |
269 end |
269 end |
270 |
270 |
271 instance inat :: linorder |
|
272 by intro_classes (auto simp add: less_eq_inat_def split: inat.splits) |
|
273 |
|
274 instance inat :: pordered_comm_semiring |
271 instance inat :: pordered_comm_semiring |
275 proof |
272 proof |
276 fix a b c :: inat |
273 fix a b c :: inat |
277 assume "a \<le> b" and "0 \<le> c" |
274 assume "a \<le> b" and "0 \<le> c" |
278 thus "c * a \<le> c * b" |
275 thus "c * a \<le> c * b" |
421 lemmas inat_defs = zero_inat_def one_inat_def number_of_inat_def iSuc_def |
418 lemmas inat_defs = zero_inat_def one_inat_def number_of_inat_def iSuc_def |
422 plus_inat_def less_eq_inat_def less_inat_def |
419 plus_inat_def less_eq_inat_def less_inat_def |
423 |
420 |
424 lemmas inat_splits = inat.splits |
421 lemmas inat_splits = inat.splits |
425 |
422 |
426 |
423 end |
427 instance inat :: linorder |
|
428 by intro_classes (auto simp add: inat_defs split: inat.splits) |
|
429 |
|
430 end |
|