let n be Element of NAT ; :: thesis: card { pN where pN is Element of NAT ^omega : ( dom pN = 2 * n & pN is dominated_by_0 ) } = (2 * n) choose n
set 2n = 2 * n;
defpred S1[ set , set ] means for i being Element of NAT st i = $1 holds
$2 = Domin_0 (2 * n),i;
set D = bool ({0 ,1} ^omega );
A1: for k being Element of NAT st k in n + 1 holds
ex x being Element of bool ({0 ,1} ^omega ) st S1[k,x]
proof
let k be Element of NAT ; :: thesis: ( k in n + 1 implies ex x being Element of bool ({0 ,1} ^omega ) st S1[k,x] )
assume k in n + 1 ; :: thesis: ex x being Element of bool ({0 ,1} ^omega ) st S1[k,x]
reconsider Z = Domin_0 (2 * n),k as Element of bool ({0 ,1} ^omega ) ;
take Z ; :: thesis: S1[k,Z]
thus S1[k,Z] ; :: thesis: verum
end;
consider r being XFinSequence of such that
A2: ( dom r = n + 1 & ( for k being Element of NAT st k in n + 1 holds
S1[k,r . k] ) ) from STIRL2_1:sch 6(A1);
A3: for i being Element of NAT st i in dom r holds
r . i is finite
proof
let i be Element of NAT ; :: thesis: ( i in dom r implies r . i is finite )
assume A4: i in dom r ; :: thesis: r . i is finite
r . i = Domin_0 (2 * n),i by A2, A4;
hence r . i is finite ; :: thesis: verum
end;
A5: for i, j being Element of NAT st i in dom r & j in dom r & i <> j holds
r . i misses r . j
proof
let i, j be Element of NAT ; :: thesis: ( i in dom r & j in dom r & i <> j implies r . i misses r . j )
assume A6: ( i in dom r & j in dom r & i <> j ) ; :: thesis: r . i misses r . j
assume r . i meets r . j ; :: thesis: contradiction
then (r . i) /\ (r . j) <> {} by XBOOLE_0:def 7;
then consider x being set such that
A7: x in (r . i) /\ (r . j) by XBOOLE_0:def 1;
( r . i = Domin_0 (2 * n),i & x in r . i ) by A2, A6, A7, XBOOLE_0:def 4;
then consider p being XFinSequence of such that
A8: ( p = x & p is dominated_by_0 & dom p = 2 * n & Sum p = i ) by Def2;
( r . j = Domin_0 (2 * n),j & x in r . j ) by A2, A6, A7, XBOOLE_0:def 4;
then ex q being XFinSequence of st
( q = x & q is dominated_by_0 & dom q = 2 * n & Sum q = j ) by Def2;
hence contradiction by A6, A8; :: thesis: verum
end;
consider Cardr being XFinSequence of such that
A9: dom Cardr = dom r and
A10: for i being Element of NAT st i in dom Cardr holds
Cardr . i = card (r . i) and
A11: card (union (rng r)) = Sum Cardr from STIRL2_1:sch 7(A3, A5);
defpred S2[ Element of NAT ] means ( $1 < dom Cardr implies Sum (Cardr | ($1 + 1)) = (2 * n) choose $1 );
A12: S2[ 0 ]
proof
assume 0 < dom Cardr ; :: thesis: Sum (Cardr | (0 + 1)) = (2 * n) choose 0
then 0 < len Cardr ;
then A13: ( 1 <= len Cardr & len Cardr = dom Cardr & 0 in len Cardr ) by NAT_1:14, NAT_1:45;
then 1 c= dom Cardr by NAT_1:40;
then ( dom (Cardr | 1) = 1 & 0 in 1 ) by NAT_1:45, RELAT_1:91;
then ( len (Cardr | 1) = 1 & (Cardr | 1) . 0 = Cardr . 0 ) by FUNCT_1:70;
then A14: ( Cardr | 1 = <%(Cardr . 0 )%> & Cardr . 0 = card (r . 0 ) ) by A10, A13, AFINSQ_1:38;
0 in n + 1 by NAT_1:45;
then r . 0 = Domin_0 (2 * n),0 by A2;
then card (r . 0 ) = 1 by Th28;
then ( Sum (Cardr | 1) = 1 & (2 * n) choose 0 = 1 ) by A14, NEWTON:29, STIRL2_1:44;
hence Sum (Cardr | (0 + 1)) = (2 * n) choose 0 ; :: thesis: verum
end;
A15: for i being Element of NAT st S2[i] holds
S2[i + 1]
proof
let i be Element of NAT ; :: thesis: ( S2[i] implies S2[i + 1] )
assume A16: S2[i] ; :: thesis: S2[i + 1]
set i1 = i + 1;
assume A17: i + 1 < dom Cardr ; :: thesis: Sum (Cardr | ((i + 1) + 1)) = (2 * n) choose (i + 1)
then i + 1 in dom Cardr by NAT_1:45;
then A18: ( (Sum (Cardr | (i + 1))) + (Cardr . (i + 1)) = Sum (Cardr | ((i + 1) + 1)) & Cardr . (i + 1) = card (r . (i + 1)) & r . (i + 1) = Domin_0 (2 * n),(i + 1) ) by A2, A9, A10, CARD_FIN:44;
i + 1 <= n by A2, A9, A17, NAT_1:13;
then 2 * (i + 1) <= 2 * n by XREAL_1:66;
then Sum (Cardr | ((i + 1) + 1)) = ((2 * n) choose i) + (((2 * n) choose (i + 1)) - ((2 * n) choose i)) by A16, A17, A18, Th32, NAT_1:13;
hence Sum (Cardr | ((i + 1) + 1)) = (2 * n) choose (i + 1) ; :: thesis: verum
end;
A19: for i being Element of NAT holds S2[i] from NAT_1:sch 1(A12, A15);
( n < dom Cardr & Cardr | (n + 1) = Cardr ) by A2, A9, NAT_1:13, RELAT_1:98;
then A20: Sum Cardr = (2 * n) choose n by A19;
set Z = { pN where pN is Element of NAT ^omega : ( dom pN = 2 * n & pN is dominated_by_0 ) } ;
A21: { pN where pN is Element of NAT ^omega : ( dom pN = 2 * n & pN is dominated_by_0 ) } c= union (rng r)
proof
let x be set ; :: according to TARSKI:def 3 :: thesis: ( not x in { pN where pN is Element of NAT ^omega : ( dom pN = 2 * n & pN is dominated_by_0 ) } or x in union (rng r) )
assume A22: x in { pN where pN is Element of NAT ^omega : ( dom pN = 2 * n & pN is dominated_by_0 ) } ; :: thesis: x in union (rng r)
consider pN being Element of NAT ^omega such that
A23: ( x = pN & dom pN = 2 * n & pN is dominated_by_0 ) by A22;
pN in Domin_0 (2 * n),(Sum pN) by A23, Th24;
then 2 * (Sum pN) <= 2 * n by Th26;
then (1 / 2) * (2 * (Sum pN)) <= (1 / 2) * (2 * n) by XREAL_1:66;
then Sum pN < n + 1 by NAT_1:13;
then Sum pN in n + 1 by NAT_1:45;
then ( r . (Sum pN) = Domin_0 (2 * n),(Sum pN) & r . (Sum pN) in rng r ) by A2, FUNCT_1:12;
then ( pN in r . (Sum pN) & r . (Sum pN) in rng r ) by A23, Th24;
hence x in union (rng r) by A23, TARSKI:def 4; :: thesis: verum
end;
union (rng r) c= { pN where pN is Element of NAT ^omega : ( dom pN = 2 * n & pN is dominated_by_0 ) }
proof
let x be set ; :: according to TARSKI:def 3 :: thesis: ( not x in union (rng r) or x in { pN where pN is Element of NAT ^omega : ( dom pN = 2 * n & pN is dominated_by_0 ) } )
assume A24: x in union (rng r) ; :: thesis: x in { pN where pN is Element of NAT ^omega : ( dom pN = 2 * n & pN is dominated_by_0 ) }
consider y being set such that
A25: ( x in y & y in rng r ) by A24, TARSKI:def 4;
consider i being set such that
A26: ( i in dom r & y = r . i ) by A25, FUNCT_1:def 5;
reconsider i = i as Element of NAT by A26;
y = Domin_0 (2 * n),i by A2, A26;
then consider p being XFinSequence of such that
A27: ( p = x & p is dominated_by_0 & dom p = 2 * n & Sum p = i ) by A25, Def2;
p is Element of NAT ^omega by AFINSQ_1:def 8;
hence x in { pN where pN is Element of NAT ^omega : ( dom pN = 2 * n & pN is dominated_by_0 ) } by A27; :: thesis: verum
end;
hence card { pN where pN is Element of NAT ^omega : ( dom pN = 2 * n & pN is dominated_by_0 ) } = (2 * n) choose n by A11, A20, A21, XBOOLE_0:def 10; :: thesis: verum