1104 proof (induct p rule: iszlfm.induct) |
1104 proof (induct p rule: iszlfm.induct) |
1105 case (1 p q) |
1105 case (1 p q) |
1106 let ?d = "\<delta> (And p q)" |
1106 let ?d = "\<delta> (And p q)" |
1107 from prems int_lcm_pos have dp: "?d >0" by simp |
1107 from prems int_lcm_pos have dp: "?d >0" by simp |
1108 have d1: "\<delta> p dvd \<delta> (And p q)" using prems by simp |
1108 have d1: "\<delta> p dvd \<delta> (And p q)" using prems by simp |
1109 hence th: "d\<delta> p ?d" using delta_mono prems(3-4) by(simp del:int_lcm_dvd1) |
1109 hence th: "d\<delta> p ?d" using delta_mono prems(3-4) by(simp only: iszlfm.simps) |
1110 have "\<delta> q dvd \<delta> (And p q)" using prems by simp |
1110 have "\<delta> q dvd \<delta> (And p q)" using prems by simp |
1111 hence th': "d\<delta> q ?d" using delta_mono prems by(simp del:int_lcm_dvd2) |
1111 hence th': "d\<delta> q ?d" using delta_mono prems by(simp only: iszlfm.simps) |
1112 from th th' dp show ?case by simp |
1112 from th th' dp show ?case by simp |
1113 next |
1113 next |
1114 case (2 p q) |
1114 case (2 p q) |
1115 let ?d = "\<delta> (And p q)" |
1115 let ?d = "\<delta> (And p q)" |
1116 from prems int_lcm_pos have dp: "?d >0" by simp |
1116 from prems int_lcm_pos have dp: "?d >0" by simp |
1117 have "\<delta> p dvd \<delta> (And p q)" using prems by simp |
1117 have "\<delta> p dvd \<delta> (And p q)" using prems by simp |
1118 hence th: "d\<delta> p ?d" using delta_mono prems by(simp del:int_lcm_dvd1) |
1118 hence th: "d\<delta> p ?d" using delta_mono prems by(simp only: iszlfm.simps) |
1119 have "\<delta> q dvd \<delta> (And p q)" using prems by simp |
1119 have "\<delta> q dvd \<delta> (And p q)" using prems by simp |
1120 hence th': "d\<delta> q ?d" using delta_mono prems by(simp del:int_lcm_dvd2) |
1120 hence th': "d\<delta> q ?d" using delta_mono prems by(simp only: iszlfm.simps) |
1121 from th th' dp show ?case by simp |
1121 from th th' dp show ?case by simp |
1122 qed simp_all |
1122 qed simp_all |
1123 |
1123 |
1124 |
1124 |
1125 consts |
1125 consts |