src/HOL/HOLCF/IOA/NTP/Lemmas.thy
author wenzelm
Sat, 01 Jun 2019 11:29:59 +0200
changeset 70299 83774d669b51
parent 67613 ce654b0e6d69
permissions -rw-r--r--
Added tag Isabelle2019-RC4 for changeset ad2d84c42380

(*  Title:      HOL/HOLCF/IOA/NTP/Lemmas.thy
    Author:     Tobias Nipkow & Konrad Slind
*)

theory Lemmas
imports Main
begin

subsubsection \<open>Logic\<close>

lemma neg_flip: "(X = (\<not> Y)) = ((\<not>X) = Y)"
  by blast


subsection \<open>Sets\<close>

lemma set_lemmas:
  "f(x) \<in> (\<Union>x. {f(x)})"
  "f x y \<in> (\<Union>x y. {f x y})"
  "\<And>a. (\<forall>x. a \<noteq> f(x)) \<Longrightarrow> a \<notin> (\<Union>x. {f(x)})"
  "\<And>a. (\<forall>x y. a \<noteq> f x y) \<Longrightarrow> a \<notin> (\<Union>x y. {f x y})"
  by auto


subsection \<open>Arithmetic\<close>

lemma pred_suc: "0<x ==> (x - 1 = y) = (x = Suc(y))"
  by (simp add: diff_Suc split: nat.split)

lemmas [simp] = hd_append set_lemmas

end