let M be non void finite-degree SubsetFamilyStr; :: thesis: for C, A being Subset of M st A c= C & A is independent holds
ex B being independent Subset of M st
( A c= B & B is_maximal_independent_in C )
let C, A0 be Subset of M; :: thesis: ( A0 c= C & A0 is independent implies ex B being independent Subset of M st
( A0 c= B & B is_maximal_independent_in C ) )
assume A0:
( A0 c= C & A0 is independent )
; :: thesis: ex B being independent Subset of M st
( A0 c= B & B is_maximal_independent_in C )
then reconsider AA = A0 as independent Subset of M ;
defpred S1[ Nat] means for A being finite Subset of M st A0 c= A & A c= C & A is independent holds
card A <= $1;
consider n being Nat such that
A1:
for A being finite Subset of M st A is independent holds
card A <= n
by Def9;
reconsider n = n as Element of NAT by ORDINAL1:def 13;
S1[n]
by A1;
then A2:
ex n being Nat st S1[n]
;
consider n0 being Nat such that
A3:
( S1[n0] & ( for m being Nat st S1[m] holds
n0 <= m ) )
from NAT_1:sch 5(A2);
then consider A being independent Subset of M such that
A4:
( A0 c= A & A c= C & card A >= n0 )
;
take
A
; :: thesis: ( A0 c= A & A is_maximal_independent_in C )
thus
( A0 c= A & A is independent & A c= C )
by A4; :: according to MATROID0:def 10 :: thesis: for B being Subset of M st B is independent & B c= C & A c= B holds
A = B
let B be Subset of M; :: thesis: ( B is independent & B c= C & A c= B implies A = B )
assume A5:
( B is independent & B c= C & A c= B )
; :: thesis: A = B
then reconsider B' = B as independent Subset of M ;
( A0 c= B & card A <= card B' )
by A4, A5, XBOOLE_1:1, NAT_1:44;
then
( n0 <= card B' & card B' <= n0 & card A <= n0 )
by A3, A4, A5, XXREAL_0:2;
then
( card B' = n0 & card A = n0 )
by A4, XXREAL_0:1;
hence
A = B
by A5, CARD_FIN:1; :: thesis: verum