Equivalence relation with a language represented by a regular expression and meaning of ≈$_{L}$

140 Views Asked by At

Suppose L is the language represented by the regular expression ((0 $\cup$ 1)(0 $\cup$ 1)(0 $\cup$ 1))*.

I have that 0 ≈$_{L}$ 00 is False, but I do not understand why. Doesn't ≈$_{L}$ mean that the two strings are either both in L or both not in L? Isn't 0 and 00 both unable to be in L because you need to have at least 3 characters?

I am confused for the others as well - why is 1 ≈$_{L}$ 1001 true? Is it because neither is in L, or both in L?

As with 11 ≈$_{L}$ 1101. This is false, but how?

1

There are 1 best solutions below

0
On

See this post on the Myhill-Nerode relation.

If correctly understood, the equivalence relation is a relation on $Σ^∗ =\{ 0,1 \}^∗$ and not on the language $L$.

If so, the two string $0$ and $00$ are not equivalent because we can find a string $z$ such that $0z$ is in $L$ while $00z$ is not. It is enough to choose $z=00$.

The same for the third case. Choosing $z=0$ we have that $110$ is in $L$ while $11010$ is not.

The issue is with the "parity": if $11$ works with a string of one digit (to get three digits) the second will produces a string of five digits, which is not in $L$.

Why $1 \sim_L 1001$ is fine ?

Because if string $1z$ is fine, it means that has a length that is a multiple of $3$ i.e. $\text{len}(1z)=3k$.

But then $\text {len}(1001z)=3k+3=3(k+1)$ that is again a multiple of $3$.