diff -r dc758531077b -r fcd118d9242f src/HOL/Int.thy --- a/src/HOL/Int.thy Fri Aug 19 05:49:07 2022 +0000 +++ b/src/HOL/Int.thy Fri Aug 19 05:49:09 2022 +0000 @@ -652,7 +652,7 @@ "nat (of_bool P) = of_bool P" by auto -lemma split_nat [arith_split]: "P (nat i) \ ((\n. i = int n \ P n) \ (i < 0 \ P 0))" +lemma split_nat [linarith_split]: "P (nat i) \ ((\n. i = int n \ P n) \ (i < 0 \ P 0))" (is "?P = (?L \ ?R)") for i :: int proof (cases "i < 0") @@ -739,11 +739,11 @@ text \ This version is proved for all ordered rings, not just integers! - It is proved here because attribute \arith_split\ is not available + It is proved here because attribute \linarith_split\ is not available in theory \Rings\. But is it really better than just rewriting with \abs_if\? \ -lemma abs_split [arith_split, no_atp]: "P \a\ \ (0 \ a \ P a) \ (a < 0 \ P (- a))" +lemma abs_split [linarith_split, no_atp]: "P \a\ \ (0 \ a \ P a) \ (a < 0 \ P (- a))" for a :: "'a::linordered_idom" by (force dest: order_less_le_trans simp add: abs_if linorder_not_less)