I'm struggling to grasp the intuition behind the concept of an index set. By definition, a set $I$ is called an index set if $\forall i,j: i \in I$, $\phi_i = \phi_j \implies j \in I$. This implies that if we have a program with indices $i \in I$ and a different program $j$, both computing the same function, then $j$ is also in $I$. Essentially, this set contains all possible program indices that compute the same function. This is clear for me.
There have been discussions regarding whether certain sets are index sets or not, as seen in these questions:
- Are these sets of indices also index sets?
- How to prove the undecidability of sets that are not index sets?
So my question is how to know if a set is index set or not, I still don't get it, even if I understand the idea of the index set. For example, let's take a simpler version of the halting problem where the halting is on its own encoding. This set is not index set why? can you give me the inution of why it's not index set and formal proof? or the sets $A=\{x∣φ_x(x)=x^2\} ,B=B=\{x∣φ_x(x)=10\}$ from the second link.