| 19203 |      1 | (*  Title:      HOL/ZF/Helper.thy
 | 
|  |      2 |     ID:         $Id$
 | 
|  |      3 |     Author:     Steven Obua
 | 
|  |      4 | 
 | 
|  |      5 |     Some helpful lemmas that probably will end up elsewhere. 
 | 
|  |      6 | *)
 | 
|  |      7 | 
 | 
|  |      8 | theory Helper 
 | 
|  |      9 | imports Main
 | 
|  |     10 | begin
 | 
|  |     11 | 
 | 
|  |     12 | lemma theI2' : "?! x. P x \<Longrightarrow> (!! x. P x \<Longrightarrow> Q x) \<Longrightarrow> Q (THE x. P x)"
 | 
|  |     13 |   apply auto
 | 
|  |     14 |   apply (subgoal_tac "P (THE x. P x)")
 | 
|  |     15 |   apply blast
 | 
|  |     16 |   apply (rule theI)
 | 
|  |     17 |   apply auto
 | 
|  |     18 |   done
 | 
|  |     19 | 
 | 
|  |     20 | lemma in_range_superfluous: "(z \<in> range f & z \<in> (f ` x)) = (z \<in> f ` x)" 
 | 
|  |     21 |   by auto
 | 
|  |     22 | 
 | 
|  |     23 | lemma f_x_in_range_f: "f x \<in> range f"
 | 
|  |     24 |   by (blast intro: image_eqI)
 | 
|  |     25 | 
 | 
|  |     26 | lemma comp_inj: "inj f \<Longrightarrow> inj g \<Longrightarrow> inj (g o f)"
 | 
|  |     27 |   by (blast intro: comp_inj_on subset_inj_on)
 | 
|  |     28 | 
 | 
|  |     29 | lemma comp_image_eq: "(g o f) ` x = g ` f ` x"
 | 
|  |     30 |   by auto
 | 
|  |     31 |   
 | 
|  |     32 | end |