diff -r 5d5bd0048533 -r eb51ca97b5a3 src/HOL/List.thy --- a/src/HOL/List.thy Fri May 30 07:48:17 2025 +0200 +++ b/src/HOL/List.thy Fri May 30 08:02:54 2025 +0200 @@ -7890,6 +7890,18 @@ if \xs = ys\ \(\x. x \ set ys \ f x = g x)\ using that by (simp add: list_ex_iff) +context +begin + +qualified definition superset :: \'a list \ 'a list \ bool\ + where superset_iff [code_abbrev, simp]: \superset ys xs \ set xs \ set ys\ + +lemma [code, no_atp]: + \superset xs = list_all (\x. x \ set xs)\ + by (auto simp: fun_eq_iff list_all_iff) + +end + text \Executable checks for relations on sets\ @@ -8219,11 +8231,6 @@ "List.coset [] \ set [] \ False" by auto -text \A frequent case -- avoid intermediate sets\ -lemma [code_unfold]: - "set xs \ set ys \ list_all (\x. x \ set ys) xs" - by (auto simp: list_all_iff) - lemma Ball_set [code]: "Ball (set xs) P \ list_all P xs" by (simp add: list_all_iff)