equal
deleted
inserted
replaced
851 instance star :: (ring) ring .. |
851 instance star :: (ring) ring .. |
852 instance star :: (comm_ring) comm_ring .. |
852 instance star :: (comm_ring) comm_ring .. |
853 instance star :: (ring_1) ring_1 .. |
853 instance star :: (ring_1) ring_1 .. |
854 instance star :: (comm_ring_1) comm_ring_1 .. |
854 instance star :: (comm_ring_1) comm_ring_1 .. |
855 instance star :: (semidom) semidom .. |
855 instance star :: (semidom) semidom .. |
|
856 instance star :: (semidom_divide) semidom_divide |
|
857 proof |
|
858 show "\<And>b a :: 'a star. b \<noteq> 0 \<Longrightarrow> divide (a * b) b = a" |
|
859 by transfer simp |
|
860 show "\<And>a :: 'a star. divide a 0 = 0" |
|
861 by transfer simp |
|
862 qed |
856 instance star :: (semiring_div) semiring_div |
863 instance star :: (semiring_div) semiring_div |
857 apply intro_classes |
864 apply intro_classes |
858 apply(transfer, rule mod_div_equality) |
865 apply(transfer, rule mod_div_equality) |
859 apply(transfer, rule div_by_0) |
866 apply(transfer, rule div_by_0) |
860 apply(transfer, rule div_0) |
867 apply(transfer, rule div_0) |
863 done |
870 done |
864 |
871 |
865 instance star :: (ring_no_zero_divisors) ring_no_zero_divisors .. |
872 instance star :: (ring_no_zero_divisors) ring_no_zero_divisors .. |
866 instance star :: (ring_1_no_zero_divisors) ring_1_no_zero_divisors .. |
873 instance star :: (ring_1_no_zero_divisors) ring_1_no_zero_divisors .. |
867 instance star :: (idom) idom .. |
874 instance star :: (idom) idom .. |
|
875 instance star :: (idom_divide) idom_divide .. |
868 |
876 |
869 instance star :: (division_ring) division_ring |
877 instance star :: (division_ring) division_ring |
870 apply (intro_classes) |
878 apply (intro_classes) |
871 apply (transfer, erule left_inverse) |
879 apply (transfer, erule left_inverse) |
872 apply (transfer, erule right_inverse) |
880 apply (transfer, erule right_inverse) |