src/HOL/Library/Ramsey.thy
changeset 63060 293ede07b775
parent 61585 a9599d3d7610
child 65075 03e6aa683c4d
equal deleted inserted replaced
63059:3f577308551e 63060:293ede07b775
   229             using fields Y' yx' px by blast
   229             using fields Y' yx' px by blast
   230         qed
   230         qed
   231       qed
   231       qed
   232     qed
   232     qed
   233     from dependent_choice [OF transr propr0 proprstep]
   233     from dependent_choice [OF transr propr0 proprstep]
   234     obtain g where pg: "!!n::nat.  ?propr (g n)"
   234     obtain g where pg: "?propr (g n)" and rg: "n<m ==> (g n, g m) \<in> ?ramr" for n m :: nat
   235       and rg: "!!n m. n<m ==> (g n, g m) \<in> ?ramr" by blast
   235       by blast
   236     let ?gy = "fst o g"
   236     let ?gy = "fst o g"
   237     let ?gt = "snd o snd o g"
   237     let ?gt = "snd o snd o g"
   238     have rangeg: "\<exists>k. range ?gt \<subseteq> {..<k}"
   238     have rangeg: "\<exists>k. range ?gt \<subseteq> {..<k}"
   239     proof (intro exI subsetI)
   239     proof (intro exI subsetI)
   240       fix x
   240       fix x