equal
deleted
inserted
replaced
3609 using cardlt ft a b by auto |
3609 using cardlt ft a b by auto |
3610 have ft': "finite (insert a (t - {b}))" using ft by auto |
3610 have ft': "finite (insert a (t - {b}))" using ft by auto |
3611 {fix x assume xs: "x \<in> s" |
3611 {fix x assume xs: "x \<in> s" |
3612 have t: "t \<subseteq> (insert b (insert a (t -{b})))" using b by auto |
3612 have t: "t \<subseteq> (insert b (insert a (t -{b})))" using b by auto |
3613 from b(1) have "b \<in> span t" by (simp add: span_superset) |
3613 from b(1) have "b \<in> span t" by (simp add: span_superset) |
3614 have bs: "b \<in> span (insert a (t - {b}))" |
3614 have bs: "b \<in> span (insert a (t - {b}))" apply(rule in_span_delete) |
3615 by (metis in_span_delete a sp mem_def subset_eq) |
3615 using a sp unfolding subset_eq by auto |
3616 from xs sp have "x \<in> span t" by blast |
3616 from xs sp have "x \<in> span t" by blast |
3617 with span_mono[OF t] |
3617 with span_mono[OF t] |
3618 have x: "x \<in> span (insert b (insert a (t - {b})))" .. |
3618 have x: "x \<in> span (insert b (insert a (t - {b})))" .. |
3619 from span_trans[OF bs x] have "x \<in> span (insert a (t - {b}))" .} |
3619 from span_trans[OF bs x] have "x \<in> span (insert a (t - {b}))" .} |
3620 then have sp': "s \<subseteq> span (insert a (t - {b}))" by blast |
3620 then have sp': "s \<subseteq> span (insert a (t - {b}))" by blast |
3968 ultimately have CdV: "card C = dim V" using C(1) by simp |
3968 ultimately have CdV: "card C = dim V" using C(1) by simp |
3969 from C B CSV CdV iC show ?thesis by auto |
3969 from C B CSV CdV iC show ?thesis by auto |
3970 qed |
3970 qed |
3971 |
3971 |
3972 lemma span_eq: "span S = span T \<longleftrightarrow> S \<subseteq> span T \<and> T \<subseteq> span S" |
3972 lemma span_eq: "span S = span T \<longleftrightarrow> S \<subseteq> span T \<and> T \<subseteq> span S" |
3973 by (metis set_eq_subset span_mono span_span span_inc) (* FIXME: slow *) |
3973 using span_inc[unfolded subset_eq] using span_mono[of T "span S"] span_mono[of S "span T"] |
|
3974 by(auto simp add: span_span) |
3974 |
3975 |
3975 (* ------------------------------------------------------------------------- *) |
3976 (* ------------------------------------------------------------------------- *) |
3976 (* Low-dimensional subset is in a hyperplane (weak orthogonal complement). *) |
3977 (* Low-dimensional subset is in a hyperplane (weak orthogonal complement). *) |
3977 (* ------------------------------------------------------------------------- *) |
3978 (* ------------------------------------------------------------------------- *) |
3978 |
3979 |