equal
deleted
inserted
replaced
948 and IH1b: "\<And> a1. a1 \<in> underS r a \<Longrightarrow> g ` under r a1 = under s (g a1)" |
948 and IH1b: "\<And> a1. a1 \<in> underS r a \<Longrightarrow> g ` under r a1 = under s (g a1)" |
949 and IH2: "\<And> a1. a1 \<in> underS r a \<Longrightarrow> g a1 \<in> under s (f a1)" |
949 and IH2: "\<And> a1. a1 \<in> underS r a \<Longrightarrow> g a1 \<in> under s (f a1)" |
950 unfolding underS_def Field_def bij_betw_def by auto |
950 unfolding underS_def Field_def bij_betw_def by auto |
951 have fa: "f a \<in> Field s" using f[OF a] by auto |
951 have fa: "f a \<in> Field s" using f[OF a] by auto |
952 have g: "g a = suc s (g ` underS r a)" |
952 have g: "g a = suc s (g ` underS r a)" |
953 using r.worec_fixpoint[OF adm] unfolding g_def fun_eq_iff by simp |
953 using r.worec_fixpoint[OF adm] unfolding g_def fun_eq_iff by blast |
954 have A0: "g ` underS r a \<subseteq> Field s" |
954 have A0: "g ` underS r a \<subseteq> Field s" |
955 using IH1b by (metis IH2 image_subsetI in_mono under_Field) |
955 using IH1b by (metis IH2 image_subsetI in_mono under_Field) |
956 {fix a1 assume a1: "a1 \<in> underS r a" |
956 {fix a1 assume a1: "a1 \<in> underS r a" |
957 from IH2[OF this] have "g a1 \<in> under s (f a1)" . |
957 from IH2[OF this] have "g a1 \<in> under s (f a1)" . |
958 moreover have "f a1 \<in> underS s (f a)" using f[OF a] a1 by auto |
958 moreover have "f a1 \<in> underS s (f a)" using f[OF a] a1 by auto |