src/HOL/Hahn_Banach/Hahn_Banach.thy
changeset 47445 69e96e5500df
parent 46867 0883804b67bb
child 49962 a8cc904a6820
equal deleted inserted replaced
47444:d21c95af2df7 47445:69e96e5500df
   149           with H have "x' \<in> H" by (simp only: vectorspace.zero)
   149           with H have "x' \<in> H" by (simp only: vectorspace.zero)
   150           with `x' \<notin> H` show False by contradiction
   150           with `x' \<notin> H` show False by contradiction
   151         qed
   151         qed
   152       qed
   152       qed
   153 
   153 
   154       def H' \<equiv> "H \<oplus> lin x'"
   154       def H' \<equiv> "H + lin x'"
   155         -- {* Define @{text H'} as the direct sum of @{text H} and the linear closure of @{text x'}. \skp *}
   155         -- {* Define @{text H'} as the direct sum of @{text H} and the linear closure of @{text x'}. \skp *}
   156       have HH': "H \<unlhd> H'"
   156       have HH': "H \<unlhd> H'"
   157       proof (unfold H'_def)
   157       proof (unfold H'_def)
   158         from x'E have "vectorspace (lin x')" ..
   158         from x'E have "vectorspace (lin x')" ..
   159         with H show "H \<unlhd> H \<oplus> lin x'" ..
   159         with H show "H \<unlhd> H + lin x'" ..
   160       qed
   160       qed
   161 
   161 
   162       obtain xi where
   162       obtain xi where
   163         xi: "\<forall>y \<in> H. - p (y + x') - h y \<le> xi
   163         xi: "\<forall>y \<in> H. - p (y + x') - h y \<le> xi
   164           \<and> xi \<le> p (y + x') - h y"
   164           \<and> xi \<le> p (y + x') - h y"