If a/b < c/d are rational numbers then the set of rational numbers x/y such that a/b < x/y < c/d is not finite. The reason why is because if we happen to find a rational number in between a/b and c/d, let’s say, c/d – a/b = bc/bd – ad/bd = (bc – ad)/bd. This is a rational number between a/b and c/d. Now we have a/b < (bc – ad)/bd < c/d. We can repeat this same procedure to find a rational number between a/b and (bc – ad)/bd. (bc – ad)/bd – a/b = (bc – ad)/bd – ad/bd = (bc – 2ad)/bd. We can keep repeating this procedure for an infinite amount of times and get a different rational number each time that is between a/b and c/d.
Let S be a finite set, {a, b, c, d, … , n}, a, b, c, d, … , n are in the set of real numbers, S can have any number of elements. S cannot be Dedekind infinite. Dedekind infinite would imply that there is a bijective function from S to T, where T is an infinite set of numbers and T is a proper subset of S. T, which should be a proper subset of S if S is Dedekind infinite, has infinitely more elements than S, therefore S is not Dedekind infinite.
Let N be the set of natural numbers and S the set of squares of natural numbers. I will prove that |N| = |S|. The set N is infinite. For each element in the set of N, there is a matching square number which is in the set of S. Think of the functions y = x and y = x^2. The set of natural numbers and its squares are infinite and each number is N maps a number is S, therefore there is a bijective function Φ: N → S and |N| = |S|.
Let N x N denote the set of all ordered pairs {{m, n}: m, n in the set of N}. |N x N| = |N| because for every ordered pair, there will be a matching element in the set of N.