let k, m be Nat; card ((multiples 2) /\ (seq (k,(2 * m)))) = m
set M = multiples 2;
defpred S1[ Nat] means card ((multiples 2) /\ (seq (k,(2 * $1)))) = $1;
A1:
S1[ 0 ]
A2:
for z being Nat st S1[z] holds
S1[z + 1]
proof
let z be
Nat;
( S1[z] implies S1[z + 1] )
assume A3:
S1[
z]
;
S1[z + 1]
seq (
k,
(2 * (z + 1))) =
seq (
k,
(((2 * z) + 1) + 1))
.=
(seq (k,((2 * z) + 1))) \/ {((k + ((2 * z) + 1)) + 1)}
by CALCUL_2:5
.=
((seq (k,(2 * z))) \/ {((k + (2 * z)) + 1)}) \/ {((k + ((2 * z) + 1)) + 1)}
by CALCUL_2:5
;
then A4:
(multiples 2) /\ (seq (k,(2 * (z + 1)))) =
(multiples 2) /\ ((seq (k,(2 * z))) \/ ({((k + (2 * z)) + 1)} \/ {((k + ((2 * z) + 1)) + 1)}))
by XBOOLE_1:4
.=
((multiples 2) /\ (seq (k,(2 * z)))) \/ ((multiples 2) /\ ({((k + (2 * z)) + 1)} \/ {((k + ((2 * z) + 1)) + 1)}))
by XBOOLE_1:23
;
A5:
{((k + (2 * z)) + 1)} \/ {((k + ((2 * z) + 1)) + 1)} = {((k + (2 * z)) + 1),((k + ((2 * z) + 1)) + 1)}
by ENUMSET1:1;
seq (
k,
(2 * z))
misses {((k + (2 * z)) + 1),((k + (2 * z)) + 2)}
by Th74;
then
card (((multiples 2) /\ (seq (k,(2 * z)))) \/ ((multiples 2) /\ ({((k + (2 * z)) + 1)} \/ {((k + ((2 * z) + 1)) + 1)}))) = (card ((multiples 2) /\ (seq (k,(2 * z))))) + (card ((multiples 2) /\ ({((k + (2 * z)) + 1)} \/ {((k + ((2 * z) + 1)) + 1)})))
by A5, XBOOLE_1:76, CARD_2:40;
hence
S1[
z + 1]
by A3, A4, A5, Th82;
verum
end;
for z being Nat holds S1[z]
from NAT_1:sch 2(A1, A2);
hence
card ((multiples 2) /\ (seq (k,(2 * m)))) = m
; verum