## Determining equivalence classes of $\{w \in \{0,1\}^*\mid$ the $k$-bit of $w$ from the right is 1$\}$

I want to formally write the equivalence classes of the following language: $$L_k = \{w \in \{0,1\}^*\mid\text{ the } k\text{-th bit of }w\text{ from the right is } 1\}$$

I understand the definition of equivalence classes, yet struggle to come up with a clear intuitive answer.

The language is regular, therefore i’d expect finite equivalence classes.

It seems like the essence of the information I am looking for is only “what is the $$k$$-th bit from the right”, which means i want to focus my attention on suffixes in the form of $$\sigma y \in \{0,1\}^*$$ where $$|y|=k-1$$, $$\sigma\in \Sigma$$.

I would highly appreciate some guidance that would build my intuition for finding equivalence classes in general, and in this specific case.

## Datalog Program Equivalence with Fixed Universe Size

It is well known that to compute equivalence of two Datalog programs (or equivalently of two first order formulas with the least fixed point operator) wrt all possible inputs and universes, is undecidable. If we fix the universe size to be N, it is clearly decidable in time exponential wrt N. My question is whether one can do better, maybe even in time logarithmic in N (and maybe much worse wrt the length of the programs). Note that equivalence of two nonrecursive Datalog rules can be done in constant time for all inputs, let alone for fixed N, but is NP-Complete wrt the rules’ size.

## Decidable Program Equivalence

Determining whether two programs always return same output for same input is undecidable (easily reduced to the halting problem). My question is, is there a complexity class in which this problem is decidable for machines on that class?

Seems like it must be below PTIME, as Datalog is P-Complete and equivalence of Datalog programs is undecidable.

## How to characterize equivalence classes induced by Myhill-Nerode theorem?

Given $$L=\lbrace w\in \lbrace 0,1 \rbrace^\ast : N_0(w)=N_1(w) \rbrace$$, where $$N_0(\cdot)$$ and $$N_1(\cdot)$$ mean the number of zeroes and ones respectively, I need to characterize the classes induced by the relation $$\thicksim_{L}$$.

The reference I have already shows that the (obviously, infinitely many) classes are of the form $$C_k=\lbrace w\in \lbrace 0,1 \rbrace ^{\ast} : N_0(w)-N_1(w)=k \rbrace$$ and clearly $$\bigcup_{k\in\Bbb Z } C_k = \Sigma^\ast$$, but I have no idea could I have deduced this correct characterization myself.

When given a regular language, I find it easier to construct a suitable minimal DFA and then “back engineer” each state to a useful characterization of its class. But for a non-regular language, I’m having a really hard time working with the relation definiton $$\forall x\in \Sigma^\ast\forall y\in \Sigma^\ast(\forall z\in \Sigma^\ast xz \in L \iff yz \in L)$$. In this particular example, I don’t understand how it applies to the classes $$C_k$$ above.

So for me there are two underlying questions here:

1. If given the equivalence classes, how can one prove that they are indeed induced from the realtion?
2. However, if they are not given, is there a systematic\algorithmic approach to characterize all of these classes for a given language? mainly, a non-regular one.

## How to characterize equivalence classes induced by Myhill-Nerode theorem?

Given $$L=\lbrace w\in \lbrace 0,1 \rbrace^\ast : N_0(w)=N_1(w) \rbrace$$, where $$N_0(\cdot)$$ and $$N_1(\cdot)$$ mean the number of zeroes and ones respectively, I need to characterize the classes induced by the relation $$\thicksim_{L}$$.

The reference I have already shows that the (obviously, infinitely many) classes are of the form $$C_k=\lbrace w\in \lbrace 0,1 \rbrace ^{\ast} : N_0(w)-N_1(w)=k \rbrace$$ and clearly $$\bigcup_{k\in\Bbb Z } C_k = \Sigma^\ast$$, but I have no idea could I have deduced this correct characterization myself.

When given a regular language, I find it easier to construct a suitable minimal DFA and then “back engineer” each state to a useful characterization of its class. But for a non-regular language, I’m having a really hard time working with the relation definiton $$\forall x\in \Sigma^\ast\forall y\in \Sigma^\ast(\forall z\in \Sigma^\ast xz \in L \iff yz \in L)$$. In this particular example, I don’t understand how it applies to the classes $$C_k$$ above.

So for me there are two underlying questions here:

1. If given the equivalence classes, how can one prove that they are indeed induced from the realtion?
2. However, if they are not given, is there a systematic\algorithmic approach to characterize all of these classes for a given language? mainly, a non-regular one.

## Turing Machine equivalence in MinTM proof

The proof with contradiction : MIN TM is not Turing-recognizable from Michael Sipser’s textbook (Theorem 6.7) is as follows :

C= “On input w” 1. Obtain, via the recursion theorem, own description 2. Run the enumerator E until a machine D appears with a longer description than that of C. 3. Simulate D on input w.

MINtm is infinite, so atleast one D occurence will be observed.

Because C is shorter than D and is equivalent to it, D cannot be minimal.

I would like to understand two things from this proof :

1. How do we know that MIN TM is inifinite ?
2. Why C is equivalent to D ?
3. Why Because C is shorter than D and is equivalent to it , D cannot be minimal?. Why we expect D to be minimal ?

Edit : I have some opinions(I want to verify) about my questions. Please correct me If I am wrong.

1. Equivalence is based only on ability to construct same language recognizers or to say L(M1) = L(M2)

## efficiently find connected components in undirected graph considering transitive equivalence

I have a set of nodes and a function foo(u,v) that can determine whether two nodes are equal. By “equal” I mean transitive equivalence: If 1==2 and 2==3 then 1==3 and also: If 1==2 and 1!=4 then 2!=4

When given a set of nodes I can find all connected components in the graph by passing every possible combination of nodes to foo(u,v) function and building the needed edges. Like this:

import networkx as nx import itertools from matplotlib import pyplot as plt  EQUAL_EDGES = {(1, 2), (1, 3), (4, 5)}   def foo(u, v):     # this function is simplified, in reality it will do a complex calculation to determine whether nodes are equal.     return (u, v) in EQUAL_EDGES   def main():     g = nx.Graph()     g.add_nodes_from(range(1, 5 + 1))     for u, v in itertools.combinations(g.nodes, 2):         are_equal = foo(u, v)         print '{u}{sign}{v}'.format(u=u, v=v, sign='==' if are_equal else '!=')         if are_equal:             g.add_edge(u, v)      conn_comps = nx.connected_components(g)     nx.draw(g, with_labels=True)     plt.show()     return conn_comps   if __name__ == '__main__':     main() 

the problem with this approach is that I get many redundant checks that I would like to avoid:

1==2  # ok 1==3  # ok 1!=4  # ok 1!=5  # ok 2!=3  # redundant check, if 1==2 and 1==3 then 2==3  2!=4  # redundant check, if 1!=4 and 1==2 then 2!=4  2!=5  # redundant check, if 1!=5 and 1==2 then 2!=5 3!=4  # redundant check, if 1!=4 and 1==3 then 3!=4 3!=5  # redundant check, if 1!=5 and 1==3 then 3!=5 4==5  # ok 

I want to avoid running in O(n^2) time complexity. What is the correct way (or maybe an existing function in any python library) to efficiently find all connected components by a custom function?

## min max theorem proof, equivalence of duality problems, how to do it?

I’m trying to do the min-max theorem’s proof. In it, I need to prove the following equivalence of linear program (one is the dual of the other):

$$\max\{ x_0 \mid \textbf{ 1 } x_0 – A^T x \leq 0, \sum x_i = 1, x > \geq 0 \}.$$ $$\iff$$

$$\min\{ y_0 \mid \textbf{ 1 } y_0 – A y \geq 0, \sum y_i = 1, y \geq > 0 \}.$$

How to do it ?

## Equivalence of two approaches to transverse measures for a foliation

Suppose that $$(V,F)$$ is a foliated manifold. There are three equivalent approaches to the notion of transverse measure as described in this book (see pages 65-69). I would like to understand the last line in the section 5$$\alpha$$ where it is stated that ,,one easily checks, as in the case of flows, that $$\Lambda$$ satisfies definition 2”. So the context is as follows: one starts with a closed current $$C$$ (of degree $$=dim F$$) positive in the leaf direction and with the help of this current defines a measure $$\mu_U$$ (locally on $$U$$, the domain of the foliation chart) on the set of plaques by the fromula $$\langle C,\omega \rangle=\int \Big(\int_{\pi} \omega \Big)d\mu_U(\pi).$$ Once we have this measure we can define $$\Lambda(B):=\int Card(B \cap \pi)d\mu_{U}(\pi)$$ for any Borel transversal $$B$$ (i.e. Borel subset $$B \subset V$$ such that for each leaf $$L$$ of the foliation $$B \cap L$$ is at most countable.

Why $$\Lambda$$ satisfies $$\Lambda(B)=\Lambda(\psi(B))$$ for any Borel injection $$\psi$$ which preserves leaves.

My guess is that it should somehow follow from the condition of $$C$$ being closed but I’m not sure how to perform the calculations (for example one problem which I encountered is that $$\Lambda$$ is defined locally and I don;t see how to pass from $$U$$ to another foliation chart $$U’$$ (which may happen for general $$\psi$$).

## Progress on Bondal–Orlov derived equivalence conjecture

In their 1995 paper, Bondal and Orlov posed the following conjecture:

If two smooth $$n$$-dimensional varieties $$X$$ and $$Y$$ are related by a flop, then their bounded derived categories of coherent sheaves are equivalent as triangulated categories, i.e. we have $$D^b(\mathsf{Coh}(X)) \cong D^b(\mathsf{Coh}(Y))$$.

Tom Bridgeland proved that this holds in the $$n=3$$ case by showing that birational smooth projective Calabi-Yau threefolds are derived equivalent. This follows from the fact that any birational transformation between two $$3$$-dimensional Calabi–Yau varieties can be decomposed into a sequence of flops.

Ed Segal has also constructed an example in the $$n=5$$ case, and Daniel Halpern-Leistner has sketched a proof of the conjecture for the case of Calabi-Yau manifolds which are birationally equivalent to a moduli space of Gieseker semistable coherent sheaves (of some fixed primitive Mukai vector) on a K3 surface. There are also other cases in which the conjecture holds which I have not mentioned.

I have heard however that a proof of this conjecture in general seems rather far off at this moment in time. I am interested in whether any progress has been made with regards to the general case, and what approach/techniques may be involved in a potential proof?