Every perfect subset (in $\mathbb{R}$) has cardinality $\mathfrak{c}$? (in ZF) I have been reading "Set theory" of T. Jech. I saw a proof of "Every perfect subset (in $\mathbb{R}$) has cardinality $\mathfrak{c}$". Here is this proof:

Proof: Given a perfect set $P$, we want to find a one-to-one function $F$ from $\{0,1\}^\omega$ into $P$. Let $S$ be a set of all finite sequence of 0's and 1's. By induction on the length of $s\in S$ one can find closed intervals $I_s$ s.t. for each $n$ and all $s\in S$ of length $n$,
(i) $I_s\cap P$ is perfect,
(ii) the diameter of $I_s$ is $\le 1/n$,
(iii) $I_{s\frown 0}\subset I_s$, $I_{s\frown 1}\subset I_s$ and $I_{s\frown 0}\cap I_{s\frown 1}=\varnothing$.
(The rest is omitted.)

But I do not understand this proof. Especially, I do not understand about existence of $I_s$. I think $I_s$ can be taken by without the axiom of choice, but I cannot find out this method. Thanks for any help.
 A: As Jech says, the construction of the sets $I_s$ is by induction on the length of $s$.  So suppose we already have $I_s$ for a certain $s\in S$ of length $n$, and we want to find suitable $I_{s^\frown0}$ and $I_{s^\frown1}$.  Since $I_s\cap P$ is perfect, it contains two points $a$ and $b$ that are not endpoints of $I_s$.  Let $r$ be a positive number smaller than all of the following: $1/(n+1)$, the distance between $a$ and $b$, the distance from $a$ to the nearer endpoint of $I_s$, and the distance from $b$ to the nearer endpoint of $I_s$.  As a first guess, let $I_{s^\frown0}$ and $I_{s^\frown1}$ be the closed intervals of length $r$ centered at $a$ and at $b$, respectively.  Conditions (ii) and (iii) are satisfied because of our choice of $r$.  Condition (i) might fail, but only if an endpoint of $I_{s^\frown0}$ or $I_{s^\frown1}$ is isolated in $I_{s^\frown0}\cap P$ or $I_{s^\frown1}\cap P$; in that case, shrink the two intervals slightly to achieve (i); the shrinking only helps (ii) and (iii).
