equal
deleted
inserted
replaced
877 shows "r <o r'" |
877 shows "r <o r'" |
878 proof- |
878 proof- |
879 {assume "r' \<le>o r" |
879 {assume "r' \<le>o r" |
880 then obtain h where "inj_on h (Field r') \<and> h ` (Field r') \<le> Field r" |
880 then obtain h where "inj_on h (Field r') \<and> h ` (Field r') \<le> Field r" |
881 unfolding ordLeq_def using assms embed_inj_on embed_Field by blast |
881 unfolding ordLeq_def using assms embed_inj_on embed_Field by blast |
882 hence False using finite_imageD finite_subset FIN INF by blast |
882 hence False using finite_imageD finite_subset FIN INF by metis |
883 } |
883 } |
884 thus ?thesis using WELL WELL' ordLess_or_ordLeq by blast |
884 thus ?thesis using WELL WELL' ordLess_or_ordLeq by blast |
885 qed |
885 qed |
886 |
886 |
887 |
887 |
1090 assume SUB: "A' \<le> Field(dir_image r f)" and NE: "A' \<noteq> {}" |
1090 assume SUB: "A' \<le> Field(dir_image r f)" and NE: "A' \<noteq> {}" |
1091 obtain A where A_def: "A = {a \<in> Field r. f a \<in> A'}" by blast |
1091 obtain A where A_def: "A = {a \<in> Field r. f a \<in> A'}" by blast |
1092 have "A \<noteq> {} \<and> A \<le> Field r" |
1092 have "A \<noteq> {} \<and> A \<le> Field r" |
1093 using A_def dir_image_Field[of r f] SUB NE by blast |
1093 using A_def dir_image_Field[of r f] SUB NE by blast |
1094 then obtain a where 1: "a \<in> A \<and> (\<forall>b \<in> A. (b,a) \<notin> r)" |
1094 then obtain a where 1: "a \<in> A \<and> (\<forall>b \<in> A. (b,a) \<notin> r)" |
1095 using WF unfolding wf_eq_minimal2 by blast |
1095 using WF unfolding wf_eq_minimal2 by metis |
1096 have "\<forall>b' \<in> A'. (b',f a) \<notin> dir_image r f" |
1096 have "\<forall>b' \<in> A'. (b',f a) \<notin> dir_image r f" |
1097 proof(clarify) |
1097 proof(clarify) |
1098 fix b' assume *: "b' \<in> A'" and **: "(b',f a) \<in> dir_image r f" |
1098 fix b' assume *: "b' \<in> A'" and **: "(b',f a) \<in> dir_image r f" |
1099 obtain b1 a1 where 2: "b' = f b1 \<and> f a = f a1" and |
1099 obtain b1 a1 where 2: "b' = f b1 \<and> f a = f a1" and |
1100 3: "(b1,a1) \<in> r \<and> {a1,b1} \<le> Field r" |
1100 3: "(b1,a1) \<in> r \<and> {a1,b1} \<le> Field r" |
1288 {assume Case41: "b1 = c1 \<and> b2 = c2" |
1288 {assume Case41: "b1 = c1 \<and> b2 = c2" |
1289 hence ?thesis using * by simp |
1289 hence ?thesis using * by simp |
1290 } |
1290 } |
1291 moreover |
1291 moreover |
1292 {assume Case42: "(wo_rel.max2 r b1 b2, wo_rel.max2 r c1 c2) \<in> r - Id" |
1292 {assume Case42: "(wo_rel.max2 r b1 b2, wo_rel.max2 r c1 c2) \<in> r - Id" |
1293 hence ?thesis using Case4 0 unfolding bsqr_def by auto |
1293 hence ?thesis using Case4 0 unfolding bsqr_def by force |
1294 } |
1294 } |
1295 moreover |
1295 moreover |
1296 {assume Case43: "wo_rel.max2 r b1 b2 = wo_rel.max2 r c1 c2 \<and> (b1,c1) \<in> r - Id" |
1296 {assume Case43: "wo_rel.max2 r b1 b2 = wo_rel.max2 r c1 c2 \<and> (b1,c1) \<in> r - Id" |
1297 hence ?thesis using Case4 0 unfolding bsqr_def by auto |
1297 hence ?thesis using Case4 0 unfolding bsqr_def by auto |
1298 } |
1298 } |