We introduce the natural notion of a matching frame in a 2-dimensional
string. A matching frame in a 2-dimensional n×m string M, is a
rectangle such that the strings written on the horizontal sides of the
rectangle are identical, and so are the strings written on the vertical sides
of the rectangle. Formally, a matching frame in M is a tuple (u,d,ℓ,r)
such that M[u][ℓ..r]=M[d][ℓ..r] and M[u..d][ℓ]=M[u..d][r].
In this paper, we present an algorithm for finding the maximum perimeter
matching frame in a matrix M in O~(n2.5) time (assuming n≥m). Additionally, for every constant ϵ>0 we present a near-linear
(1−ϵ)-approximation algorithm for the maximum perimeter of a matching
frame.
In the development of the aforementioned algorithms, we introduce inventive
technical elements and uncover distinctive structural properties that we
believe will captivate the curiosity of the community