let D be non empty set ; :: thesis: for n being Nat st D is countable holds
n -tuples_on D is countable

let n be Nat; :: thesis: ( D is countable implies n -tuples_on D is countable )
defpred S1[ Nat] means $1 -tuples_on D is countable ;
assume card D c= omega ; :: according to CARD_3:def 14 :: thesis: n -tuples_on D is countable
then card (1 -tuples_on D) c= omega by Th8;
then A1: 1 -tuples_on D is countable ;
A2: for k being Nat st S1[k] holds
S1[k + 1]
proof
let k be Nat; :: thesis: ( S1[k] implies S1[k + 1] )
assume S1[k] ; :: thesis: S1[k + 1]
then [:(k -tuples_on D),(1 -tuples_on D):] is countable by A1, Th7;
then A3: card [:(k -tuples_on D),(1 -tuples_on D):] c= omega ;
card [:(k -tuples_on D),(1 -tuples_on D):] = card ((k + 1) -tuples_on D) by Th9;
hence S1[k + 1] by A3, CARD_3:def 14; :: thesis: verum
end;
{(<*> D)} is countable ;
then A4: S1[ 0 ] by FINSEQ_2:94;
for k being Nat holds S1[k] from NAT_1:sch 2(A4, A2);
hence n -tuples_on D is countable ; :: thesis: verum