e.g. here the lambda function maps the natural numbers to all fractions (cantor showed how to easily implement getEnumeratedFraction).
For all sets of equal cardinality, a pure function exists that transforms N (or another set of the cardinality you wish) when mapping the set members.
And conversely, if such a function exists, the sets are of same size.
Since the pseudocode is JS-like, you could also write it using Set.
The sets are represented in pseudocode as arrays because enumeration is the point here.
Create a listA with all integers.
Create a listB with all multiples of 3.
Is listA.length > listB.length? No, it is not.