src/HOL/Data_Structures/Braun_Tree.thy
changeset 69546 27dae626822b
parent 69200 f2bb47056d8f
child 70793 8ea9b7dec799
equal deleted inserted replaced
69545:4aed40ecfb43 69546:27dae626822b
   250   have 3: "(*) 2 ` braun_indices t1 \<union> Suc ` (*) 2 ` braun_indices t2 =
   250   have 3: "(*) 2 ` braun_indices t1 \<union> Suc ` (*) 2 ` braun_indices t2 =
   251      {2..size t1 + size t2 + 1}" using Node.prems
   251      {2..size t1 + size t2 + 1}" using Node.prems
   252     by (simp add: insert_ident Icc_eq_insert_lb_nat nat_in_image braun_indices1)
   252     by (simp add: insert_ident Icc_eq_insert_lb_nat nat_in_image braun_indices1)
   253   thus ?case using Node.IH even_odd_decomp[OF _ _ 3]
   253   thus ?case using Node.IH even_odd_decomp[OF _ _ 3]
   254     by(simp add: card_image inj_on_def card_braun_indices Let_def 1 2 inj_image_eq_iff image_comp
   254     by(simp add: card_image inj_on_def card_braun_indices Let_def 1 2 inj_image_eq_iff image_comp
   255            cong: image_cong_strong)
   255            cong: image_cong_simp)
   256 qed
   256 qed
   257 
   257 
   258 lemma braun_iff_braun_indices: "braun t \<longleftrightarrow> braun_indices t = {1..size t}"
   258 lemma braun_iff_braun_indices: "braun t \<longleftrightarrow> braun_indices t = {1..size t}"
   259 using braun_if_braun_indices braun_indices_if_braun by blast
   259 using braun_if_braun_indices braun_indices_if_braun by blast
   260 
   260