ClearAll["`*"]
r = 3;
q = 13;
etalis = {91, 27, 27, 27, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38};
etasl = Table[eta[i] -> etalis[[i + 1]], {i, 0, 13}]
m[j_] := (Max[eta[r], eta[0] - 2 eta[r + 1],
eta[0] - eta[1] - eta[r + j]]) /. etasl
Define
$$
\phi_1(x,y) = \sum_{j=1}^r \left( \lfloor y \rfloor + \lfloor \eta_0 x - y \rfloor - \lfloor y - \eta_j x \rfloor - \lfloor (\eta_0 - \eta_j) x - y\rfloor - \lfloor 2 \eta_j x \rfloor \right ) \\
+ \sum_{j=1}^r \left(\lfloor (\eta_0 - 2 \eta_j)x \rfloor - \lfloor y - \eta_j x\rfloor - \lfloor (\eta_0 - \eta_j)x -y \rfloor \right ), 0 \leq y \lt 1
$$
You can combine the sums, and move the parts that only depend on $x$ outside the sum. There is also a term depending on $\eta_0$ I leave separate. $\lfloor y \rfloor = 0$ because $0 \leq y \lt 1$.
$$
\begin{align}
&\phi_1(x,y) = A(x,y) + B(x) + S(x,y)
\\\\
&A(x,y) = r \lfloor \eta_0 x - y \rfloor
\\\\
&B(x) = -2 \sum_{j=1}^r \lfloor \eta_j x \rfloor + \sum_{j=r+1}^q \lfloor (\eta_0 - 2\eta_j)x \rfloor
\\\\
&S(x,y) = - \sum_{j=1}^q \left( \lfloor y - \eta_j x \rfloor + \lfloor(\eta_0-\eta_j)x -y \rfloor \right)
\end{align}
$$
termA[x_, y_] = r Floor[eta[0] x - y];
termB[x_] = -2 Sum[Floor[eta[j] x], {j, r}] +
Sum[ Floor[(eta[0] - 2 eta[j]) x], {j, r + 1, q}];
termS[x_,
y_] = -Sum[(Floor[y - eta[j] x] +
Floor[(eta[0] - eta[j]) x - y]), {j, q}];
phi1[x_, y_] = termA[x, y] + termB[x] + termS[x, y] /. etasl;
and $\phi(x)$ is defined as in the paper, but since $B(x)$ is independent of $y$ it can be removed from the min:
$$
\begin{align}
&\varphi(x) = \min_{0\leq y<1} \phi_1(x,y)
\\
&\varphi(x) = B(x) + \min_{0\leq y<1} \left( A(x,y) + S(x,y) \right)
\end{align}
$$
Now we need to think about where
$$
A(x,y) + S(x,y)
$$
can change value. Observe that $ S(x,y) $ is a linear sum of two types of functions: functions that look like
$$
- \lfloor k x - y \rfloor
$$
and functions that look like
$$
- \lfloor -k x + y \rfloor
$$
for some natural number $k$ which depends on the values of $\eta$.
For either type of function, if you imagine a fixed $x$, and starting moving right from $y = 0$, each function will increment by 1 at the point
$$
y = \{k x\}
$$
where $\{.\}$ denotes the fractional part.
And the values $k$ can be found by recalling the definitions of $A$ and $S$:
$$
k \in \eta_j \bigcup (\eta_0 - \eta_j) \bigcup \eta_0 ~~,~~ j = 1,..,q
$$
Since these are the only location our objective function changes value, the minimum value must occur in at least one of the points.
Furthermore, since we are searching for a minimum, the value must decrease (or remain constant) when it changes. Which means we only need to look at the $k$ values associated with functions of the 2nd form
$$
-\lfloor -k x + y \rfloor
$$
Which are just
$$
k \in \eta_j, j = 1,..,q
$$
And finally, since
$$
A(x,y) = r \lfloor \eta_0 x - y \rfloor
$$
the function also decreases at $\{\eta_0 x\}$ so we know a $y$ exists that minimizes $\phi_1(x,y)$ and satisfies
$$
\text{arg}\!\min_{0\leq y<1} \phi_1(x,y) = \{\eta_i x\}
$$
for some $i = 0,2,...,q$.
Since we also know the locations where $S(x,y) + A(x,y)$ increase, we can find $\varphi(x)$ by just accumulating the values at the points the values changes (and multiplying in the linear coefficients of $S(x,y)$ and $A(x,y)$ ), finding the minimum of the list, and adding the value at $y=0$
$$
X_0(x) = A(x,0) + B(x) + S(x,0)
$$
(*locations phi1 decreases*)
decreasePoints[x_] = FractionalPart[DeleteDuplicates@etalis*x];
(*locations phi2 increases*)
increasePoints[x_] =
FractionalPart[DeleteDuplicates@(etalis[[1]] - Rest@etalis)*x];
(*put together in a list*)
allPoints[x_] = Join[decreasePoints[x], increasePoints[x]];
(*decrease coefficients. Normally it just decrements by 1*)
decreaseCoeffs = ConstantArray[-1, 12];
(*but the term associated with eta[0] is -r.*)
decreaseCoeffs[[1]] = -r;
(*also there are 3 eta values equal to 27, so that coefficient is \
-3 since I deleted duplicates*)
decreaseCoeffs[[2]] = -3;
(*increase coefficients. Normally it just increments by 1*)
increaseCoeffs = ConstantArray[1, 11];
(*but since there are 3 etas with the same value, the first one is 3*)
increaseCoeffs[[1]] = 3;
allCoefs = Join[decreaseCoeffs, increaseCoeffs];
(*value at y=0*)
xInitTerm[x_] := (termA[x, 0] + termS[x, 0] + termB[x]) /. etasl;
(*sort points by allPoints, accumulate, and find minimum*)
minChange[x_?NumericQ] :=
Min@Accumulate@allCoefs[[Ordering[allPoints[N@x]]]];
(*and phi[x] is the min change in value starting at xInitTerm*)
phi[x_?NumericQ] := minChange[x] + xInitTerm[x]
And finally for integration. Note that $\varphi(x) = 0$ for $0≤x < \frac{2}{\eta_0}$, since we have $\phi_1(\frac{z}{\eta_0},\frac{z}{2}) = 0 $ when $0 \leq z <2$:
expr = phi1[z/91, z/2];
Simplify[expr, 0 <= z < 2]
(*0*)
So we increase our lower integration bound from 0 to 2/91 and numerically integrate:
int1 = NIntegrate[phi[x]*PolyGamma[1, x], {x, 2/91, 1},
Method -> "LocalAdaptive", MaxRecursion -> 100];
int2 = NIntegrate[phi[x]/x^2, {x, 2/91, 1/m[q - r]},
Method -> "LocalAdaptive", MaxRecursion -> 100];
const = r m[1] + Sum[m[i], {i, 2, q - r}];
const - (int1 - int2)
(*226.249*)
Which seems pretty close.
Exact value for integral
Since minChange only depends on the ordering of the points (call this set of points $P(x)$):
$$
P_x = \{\eta_j x\} \bigcup \{(\eta_0 -\eta_j) x\} \bigcup \{\eta_0 x\} ~~ , j = 1,...,q
$$
We can find where minChange will change ordering after starting at a given $x_0$ by finding the smallest positive $\epsilon$ such that:
$$
\Omega \left(x_0 + \epsilon \right) \neq \Omega \left(x_0\right)
$$
where $\Omega \left(x \right)$ denotes the ordering of values in $P_x$.
To find $\epsilon$, consider $T_{x_0}$ to be $P_{x_0}$ in ordered form
$$
\begin{align}
T_{x_0} = \mathrm{Sort}[P_{x_0}]
\\
T_{x_0} = p_1,p_2,...,p_{n-1},p_n
\\
p_1 \leq p_2,..., \leq p_{n-1} \leq p_n
\end{align}
$$
And each $p_i$ looks like
$$
\{a_i x_0\}
$$
for a natural number $a$.
Notice that if $\epsilon < w$ with
$$
w = \min \frac{1-p_i}{a_i}
$$
Then we have
$$
\{a_i (x_0 + \epsilon) \} = \{a_i x_0 \} + a_i \epsilon = p_i + a_i \epsilon
$$
And we can just do pairwise tests to find the smallest $0 ≤ \epsilon_i < w$ for each pair of points in $T$:
$$
\begin{align}
& p_i + a_i \epsilon_i ≤ p_{i+1} + a_{i+1} \epsilon_i
\\\\
& (a_i-a_{i-1}) \epsilon_i ≤ p_{i+1} - p_i
\\\\
& \epsilon_i = \min \left(\frac{p_{i+1} - p_i}{a_i-a_{i-1}}, w \right) ~~ , a_i > a_{i-1}
\\\\
& \epsilon_i = w ~~, a_i < a_{i-1}
\end{align}
$$
And we just take the minimum nonzero value of all pairwise tests
$$
\epsilon = \min(\epsilon_i > 0)
$$
So we can now separate 0≤x≤1 into regions with the same minChange value as a given $x_0$:
constantInterval[x0_] :=
Module[{p, w, ordering, q, a, epsilonList, epsilon},
a = Union[etalis, etalis[[1]] - Rest[etalis]];
p = FractionalPart[a x0];
w = Min[(1 - p)/a];
ordering = Ordering[p];
q = Sort[p];
a = a[[ordering]];
epsilonList = -(Differences[q]/Differences[a]);
epsilonList = Clip[epsilonList, {0, Infinity}, {w, w}];
epsilonList = Select[epsilonList, # > 0 &];
epsilonList = Join[epsilonList, {w}];
epsilon = Min[epsilonList];
x0 + epsilon]
It should be noted we removed the cases where $\epsilon = 0$, which are isolated points which may or may not be equal to their neighbors in value. Take for example $x_0 = 1/38$:
minChange[1/38]
(*-4*)
minChange[1/38 + $MachineEpsilon]
(*-3*)
minChange[1/38 - $MachineEpsilon]
(*-3*)
But these points will have no effect on integration since we integrate over a finite region, and the values of the isolated points themselves are finite.
So now we can calculate the integral component coming from minChange, by using the value of minChange at the midpoint of each constant value region:
integrationLowerBound = 2/etalis[[1]];
steps = NestWhileList[constantInterval, integrationLowerBound, # < 1 &];
intervals = Partition[steps, 2, 1];
midPoints = Mean /@ intervals;
midVals = minChange /@ midPoints;
mBound = 1/m[q - r];
with2ndInt =
Take[intervals, FirstPosition[intervals[[All, 2]], mBound][[1]]];
midVals2ndInt =
Take[midVals, FirstPosition[intervals[[All, 2]], mBound][[1]]];
intM2 = midVals2ndInt . Map[1/#[[1]] - 1/#[[2]] &, with2ndInt];
intM1 = midVals .
Map[PolyGamma[#[[2]]] - PolyGamma[#[[1]]] &, intervals];
intM = intM1 - intM2;
And then add the integral component from $X_0(x)$. Since $X_0(x)$ is a sum of floor functions, it is amenable to PiecewiseExpand by splitting it into a list first, integrating each part separately, and summing together:
(*xInitTerm is a linear sum of floor functions so split xInitTerm into\
a list*)
listXInit[x_] = List @@ xInitTerm[x];
(*expand each floor function*)
x0Expanded[x_] = PiecewiseExpand[#, 2/91 <= x <= 1] & /@ listXInit[x];
(* and now we can integrate efficiently with exact precision*)
nFloorTerms = Length[x0Expanded[x]];
intX1 = Sum[
intIndef = Integrate[x0Expanded[x][[i]]*PolyGamma[1, x], x];
(intIndef /. x -> 1) - (intIndef /. x -> integrationLowerBound)
, {i, nFloorTerms}];
intX2 = Sum[
intIndef = Integrate[x0Expanded[x][[i]]/x^2, x];
(intIndef /. x -> mBound) - (intIndef /. x -> integrationLowerBound)
, {i, nFloorTerms}];
intX = intX1 - intX2;
And we calculate $C_1$
const = r m[1] + Sum[m[i], {i, 2, q - r}];
c1 = const - (intX + intM);
N[c1, 20]
(*226.24944266388667175*)
$C_1$'s exact value is given by a sum of 258 polygamma terms evaluated at rational points $u_i$ plus a rational and the Euler-Mascheroni constant. It's very long but looks like
$$
C_1 = \frac{905}{2} + 3 \gamma + \sum_{i} z_i \psi\left(u_i\right)
$$
Where the $z_i$ are integers and the denominator of the $u_i$'s are between 2 and $\eta_0$.
Small Add-on
I did what you suggested and also found the intervals over which $X_0(x)$ is constant, using the exact same method as I used to find the constant intervals of minChange:
x0Coeffs = Union@Abs@Cases[xInitTerm[x], Floor[a_ x] :> a, -1];
x0SwitchingPoint[x_] :=
x + Min[(1 - FractionalPart[x0Coeffs*x])/x0Coeffs];
x0Steps =
NestWhileList[floorSwitchingPoint, integrationLowerBound, # < 1 &];
It turns out these intervals are a subset of the constant intervals of minChange:
Complement[x0Steps, steps]
(*{}*)
So we can actually just calculate phi directly at the midpoints of the minChange constant intervals (we calculate at the midpoints because the interval endpoints could be isolated points that are unequal to their neighbors), and now we don't have to deal with the annoying PiecewiseExpand of xInitTerm:
phiMids = phi /@ midPoints;
phiMids2 =
Take[phiMids, FirstPosition[intervals[[All, 2]], mBound][[1]]];
intT2 = phiMids2 . Map[1/#[[1]] - 1/#[[2]] &, with2ndInt];
intT1 = phiMids .
Map[PolyGamma[#[[2]]] - PolyGamma[#[[1]]] &, intervals];
intT = intT1 - intT2;
c1 = const - intT;
N[c1, 20]
(*226.24944266388667175*)
Which is the same result, but quite a lot simpler to calculate.
Link to notebook with some extra comments at the end
More on finding Intervals of $x$ where $\varphi(x)$ is a constant value
An interval $[x_0, x_0+\epsilon)$ will have a constant value $\varphi(x) = i$ if the ordering of the discontinuities $T_{x0}$ remains constant over the interval. As shown above, this occurs when:
$$
\epsilon = \min \left(\frac{p_{i+1} - p_i}{k_i-k_{i-1}}, w \right) ~~ , \forall k_i > k_{i-1}
$$
Where $p$ is the sorted list of discontinuities:
$$
\begin{align}
& p_i = \{k_i x_0\}
\\
& p_{i} \leq p_{i+1}
\\
& k \in \eta_j \bigcup (\eta_0 - \eta_j) \bigcup \eta_0 ~~,~~ j = 1,..,q
\\
& k \text{ is sorted by } p
\end{align}
$$
And $w$ is the smallest wrapping point, where one of the $\{k_i (x + w)\}$ wraps back to 0:
$$
w = \min \frac{1 - p_i}{k_i}
$$
So to get the intervals we can just do (note these last two codeblocks can be run independently of any previous codeblock):
r = 3;
q = 13;
etalis = {91, 27, 27, 27, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38};
etasl = Table[eta[i] -> etalis[[i + 1]], {i, 0, 13}];
msl = Table[
m[j] -> (Max[eta[r], eta[0] - 2 eta[r + 1],
eta[0] - eta[1] - eta[r + j]]) /. etasl, {j, 1, q - r}];
phi1[x_,
y_] := (Sum[(Floor[y] + Floor[eta[0] x - y] - Floor[y - eta[j] x] -
Floor[(eta[0] - eta[j]) x - y] - 2 Floor[eta[j] x]) /.
etasl, {j, 1, r}] +
Sum[(Floor[(eta[0] - 2 eta[j]) x] - Floor[y - eta[j] x] -
Floor[(eta[0] - eta[j]) x - y]) /. etasl, {j, r + 1, q}]);
(*all y Points where phi changes or is about to change value*)
uniqueEtas = uniqueEtas = etalis;
subtractedEtas = Table[eta[0] - eta[j], {j, q}] /. etasl;
kList = Union[uniqueEtas, subtractedEtas];
yDiscontinuities[x_] := FractionalPart[kList*x];
(*the decrease points have to shifted by a small amount right since th\
ey are right on a discontinuity*)
yDecreasePoints[x_] := FractionalPart[uniqueEtas*(x + $MachineEpsilon)]
(*phi is just the minimum value at the decrease points*)
phi[x_] := Min@Table[phi1[x, y], {y, yDecreasePoints[x]}]
(*gets interval[x,x+ϵ) where phi is a constant value*)
getConstantInterval[x_] :=
Module[{p, ord, w, k, yOrdered, ϵCandidates, ϵ},
p = yDiscontinuities[x];
ord = Ordering[p];
w = Min[(1 - p)/kList];
k = kList[[ord]];
p = p[[ord]];
ϵCandidates = -Differences[p]/Differences[k];
ϵCandidates = Select[ϵCandidates, 0 < # <= w &];
ϵCandidates = Join[ϵCandidates, {w}];
ϵ = Min[ϵCandidates];
x + ϵ
]
(*get endpoints of constant phi intervals*)
changePoints = NestWhileList[getConstantInterval, 0, # < 1 &];
(*split into pairs*)
intervals = Partition[changePoints, 2, 1];
And to get the $\Omega_\nu$ intervals as shown in the paper, we use the IntervalComplement resource function, add the initial conditions $\Omega_0 = [0,1) , \Omega_1 = \Omega_2$, and iteratively apply
$ \Omega_\nu \setminus \Omega_{\nu+1}$ :
(* phi values at midpoints*)
samePhiIntervals = GatherBy[intervals, phi@*Mean];
(*sort them by phi values*)
samePhiIntervals = SortBy[samePhiIntervals, phi@*Mean@*First];
(*now create intervals*)
samePhiIntervals = Interval @@@ samePhiIntervals;
iComp = ResourceFunction["IntervalComplement"];
(*we add the initial region Ω0=[0,1} *)
Ω0 = Interval[{0, 1}];
(*and Ω1 = Ω2*)
samePhiIntervals = Join[{samePhiIntervals[[1]]}, samePhiIntervals];
(*and now iteravely apply the interval complement function*)
ΩList =
FoldList[iComp, Ω0, samePhiIntervals];
And we are able to recover (I believe, I haven't checked them all exactly) the intervals shown in the paper:
$$
\begin{align}\\
&\Omega_{0} = [0,1)\\
&\Omega_{1} = [\frac{2}{91},\frac{36}{37})\bigcup[\frac{90}{91},1)\\
&\Omega_{2} = [\frac{2}{91},\frac{36}{37})\bigcup[\frac{90}{91},1)\\
&\Omega_{3} = [\frac{2}{91},\frac{1}{20})\bigcup[\frac{5}{91},\frac{3}{4})\bigcup[\frac{28}{37},\frac{13}{14})\bigcup[\frac{14}{15},\frac{35}{37})\bigcup[\frac{18}{19},\frac{27}{28})\bigcup[\frac{88}{91},\frac{36}{37})\bigcup[\frac{90}{91},1)\\
&\Omega_{4} = [\frac{1}{38},\frac{1}{22})\bigcup[\frac{5}{91},\frac{3}{26})\bigcup[\frac{2}{17},\frac{1}{8})\bigcup[\frac{4}{31},\frac{4}{27})\bigcup[\frac{5}{33},\frac{7}{30})\bigcup[\frac{4}{17},\frac{12}{37})\bigcup[\frac{30}{91},\frac{1}{3})\\
& \bigcup[\frac{31}{91},\frac{3}{8})\bigcup[\frac{14}{37},\frac{11}{28})\bigcup[\frac{13}{33},\frac{9}{22})\bigcup[\frac{7}{17},\frac{13}{28})\bigcup[\frac{8}{17},\frac{1}{2})\bigcup[\frac{19}{37},\frac{9}{14})\bigcup[\frac{20}{31},\frac{2}{3})\\
& \bigcup[\frac{21}{31},\frac{3}{4})\bigcup[\frac{25}{33},\frac{11}{14})\bigcup[\frac{26}{33},\frac{23}{28})\bigcup[\frac{14}{17},\frac{23}{27})\bigcup[\frac{31}{36},\frac{25}{27})\bigcup[\frac{85}{91},\frac{35}{37})\bigcup[\frac{20}{21},\frac{26}{27})\\
& \bigcup[\frac{32}{33},\frac{34}{35})\\
&\Omega_{5} = [\frac{1}{37},\frac{1}{27})\bigcup[\frac{1}{25},\frac{1}{24})\bigcup[\frac{5}{91},\frac{1}{18})\bigcup[\frac{2}{35},\frac{2}{27})\bigcup[\frac{3}{38},\frac{1}{12})\bigcup[\frac{8}{91},\frac{3}{34})\bigcup[\frac{2}{21},\frac{1}{9})\\
& \bigcup[\frac{4}{33},\frac{1}{8})\bigcup[\frac{5}{38},\frac{4}{27})\bigcup[\frac{3}{19},\frac{1}{6})\bigcup[\frac{5}{29},\frac{5}{27})\bigcup[\frac{4}{21},\frac{5}{26})\bigcup[\frac{6}{29},\frac{2}{9})\bigcup[\frac{5}{21},\frac{7}{27})\\
& \bigcup[\frac{4}{15},\frac{10}{37})\bigcup[\frac{2}{7},\frac{3}{10})\bigcup[\frac{7}{23},\frac{4}{13})\bigcup[\frac{6}{19},\frac{12}{37})\bigcup[\frac{30}{91},\frac{1}{3})\bigcup[\frac{10}{29},\frac{7}{20})\bigcup[\frac{13}{37},\frac{5}{14})\\
& \bigcup[\frac{33}{91},\frac{3}{8})\bigcup[\frac{8}{21},\frac{5}{13})\bigcup[\frac{13}{33},\frac{11}{27})\bigcup[\frac{12}{29},\frac{5}{12})\bigcup[\frac{8}{19},\frac{11}{26})\bigcup[\frac{14}{33},\frac{13}{30})\bigcup[\frac{40}{91},\frac{4}{9})\\
& \bigcup[\frac{5}{11},\frac{11}{24})\bigcup[\frac{17}{37},\frac{6}{13})\bigcup[\frac{17}{36},\frac{13}{27})\bigcup[\frac{16}{33},\frac{1}{2})\bigcup[\frac{16}{31},\frac{14}{27})\bigcup[\frac{8}{15},\frac{19}{35})\bigcup[\frac{17}{31},\frac{5}{9})\\
& \bigcup[\frac{19}{33},\frac{15}{26})\bigcup[\frac{18}{31},\frac{16}{27})\bigcup[\frac{20}{33},\frac{17}{28})\bigcup[\frac{19}{31},\frac{17}{27})\bigcup[\frac{11}{17},\frac{2}{3})\bigcup[\frac{17}{25},\frac{15}{22})\bigcup[\frac{20}{29},\frac{19}{27})\\
& \bigcup[\frac{12}{17},\frac{17}{24})\bigcup[\frac{21}{29},\frac{20}{27})\bigcup[\frac{23}{31},\frac{3}{4})\bigcup[\frac{69}{91},\frac{7}{9})\bigcup[\frac{15}{19},\frac{19}{24})\bigcup[\frac{4}{5},\frac{22}{27})\bigcup[\frac{14}{17},\frac{23}{27})\\
& \bigcup[\frac{25}{29},\frac{19}{22})\bigcup[\frac{27}{31},\frac{7}{8})\bigcup[\frac{29}{33},\frac{8}{9})\bigcup[\frac{26}{29},\frac{9}{10})\bigcup[\frac{28}{31},\frac{25}{27})\bigcup[\frac{31}{33},\frac{35}{37})\bigcup[\frac{87}{91},\frac{26}{27})\\
& \bigcup[\frac{32}{33},\frac{33}{34})\\
&\Omega_{6} = [\frac{1}{36},\frac{1}{27})\bigcup[\frac{1}{17},\frac{2}{27})\bigcup[\frac{9}{91},\frac{4}{37})\bigcup[\frac{10}{91},\frac{1}{9})\bigcup[\frac{12}{91},\frac{4}{27})\bigcup[\frac{16}{91},\frac{5}{27})\bigcup[\frac{19}{91},\frac{8}{37})\\
& \bigcup[\frac{5}{23},\frac{2}{9})\bigcup[\frac{7}{29},\frac{9}{37})\bigcup[\frac{23}{91},\frac{7}{27})\bigcup[\frac{2}{7},\frac{8}{27})\bigcup[\frac{29}{91},\frac{12}{37})\bigcup[\frac{30}{91},\frac{1}{3})\bigcup[\frac{33}{91},\frac{10}{27})\\
& \bigcup[\frac{15}{38},\frac{11}{27})\bigcup[\frac{3}{7},\frac{16}{37})\bigcup[\frac{40}{91},\frac{4}{9})\bigcup[\frac{9}{19},\frac{13}{27})\bigcup[\frac{47}{91},\frac{14}{27})\bigcup[\frac{7}{13},\frac{20}{37})\bigcup[\frac{50}{91},\frac{5}{9})\\
& \bigcup[\frac{53}{91},\frac{16}{27})\bigcup[\frac{8}{13},\frac{23}{37})\bigcup[\frac{57}{91},\frac{17}{27})\bigcup[\frac{59}{91},\frac{24}{37})\bigcup[\frac{15}{23},\frac{17}{26})\bigcup[\frac{23}{35},\frac{2}{3})\bigcup[\frac{9}{13},\frac{26}{37})\\
& \bigcup[\frac{64}{91},\frac{19}{27})\bigcup[\frac{66}{91},\frac{19}{26})\bigcup[\frac{67}{91},\frac{20}{27})\bigcup[\frac{13}{17},\frac{7}{9})\bigcup[\frac{4}{5},\frac{22}{27})\bigcup[\frac{76}{91},\frac{31}{37})\bigcup[\frac{16}{19},\frac{23}{27})\\
& \bigcup[\frac{29}{33},\frac{8}{9})\bigcup[\frac{31}{34},\frac{34}{37})\bigcup[\frac{23}{25},\frac{25}{27})\bigcup[\frac{31}{33},\frac{33}{35})\bigcup[\frac{87}{91},\frac{26}{27})\\
&\Omega_{7} = [\frac{1}{33},\frac{1}{27})\bigcup[\frac{1}{17},\frac{2}{27})\bigcup[\frac{9}{91},\frac{4}{37})\bigcup[\frac{10}{91},\frac{1}{9})\bigcup[\frac{12}{91},\frac{5}{37})\bigcup[\frac{1}{7},\frac{4}{27})\bigcup[\frac{16}{91},\frac{5}{27})\\
& \bigcup[\frac{19}{91},\frac{8}{37})\bigcup[\frac{20}{91},\frac{2}{9})\bigcup[\frac{22}{91},\frac{9}{37})\bigcup[\frac{9}{35},\frac{7}{27})\bigcup[\frac{2}{7},\frac{8}{27})\bigcup[\frac{29}{91},\frac{9}{28})\bigcup[\frac{10}{31},\frac{11}{34})\\
& \bigcup[\frac{33}{91},\frac{10}{27})\bigcup[\frac{36}{91},\frac{15}{37})\bigcup[\frac{37}{91},\frac{11}{27})\bigcup[\frac{3}{7},\frac{16}{37})\bigcup[\frac{40}{91},\frac{4}{9})\bigcup[\frac{10}{21},\frac{13}{27})\bigcup[\frac{47}{91},\frac{14}{27})\\
& \bigcup[\frac{7}{13},\frac{20}{37})\bigcup[\frac{50}{91},\frac{5}{9})\bigcup[\frac{53}{91},\frac{16}{27})\bigcup[\frac{8}{13},\frac{23}{37})\bigcup[\frac{57}{91},\frac{17}{27})\bigcup[\frac{59}{91},\frac{24}{37})\bigcup[\frac{9}{13},\frac{26}{37})\\
& \bigcup[\frac{64}{91},\frac{19}{27})\bigcup[\frac{66}{91},\frac{27}{37})\bigcup[\frac{67}{91},\frac{20}{27})\bigcup[\frac{10}{13},\frac{7}{9})\bigcup[\frac{73}{91},\frac{30}{37})\bigcup[\frac{74}{91},\frac{22}{27})\bigcup[\frac{11}{13},\frac{23}{27})\\
& \bigcup[\frac{80}{91},\frac{8}{9})\bigcup[\frac{83}{91},\frac{34}{37})\bigcup[\frac{12}{13},\frac{25}{27})\bigcup[\frac{87}{91},\frac{26}{27})\\
&\Omega_{8} = [\frac{1}{31},\frac{1}{27})\bigcup[\frac{6}{91},\frac{2}{27})\bigcup[\frac{9}{91},\frac{1}{10})\bigcup[\frac{3}{29},\frac{4}{37})\bigcup[\frac{10}{91},\frac{1}{9})\bigcup[\frac{2}{15},\frac{5}{37})\bigcup[\frac{1}{7},\frac{4}{27})\\
& \bigcup[\frac{3}{17},\frac{5}{28})\bigcup[\frac{7}{38},\frac{5}{27})\bigcup[\frac{7}{33},\frac{8}{37})\bigcup[\frac{20}{91},\frac{2}{9})\bigcup[\frac{8}{33},\frac{9}{37})\bigcup[\frac{9}{31},\frac{7}{24})\bigcup[\frac{5}{17},\frac{8}{27})\\
& \bigcup[\frac{4}{11},\frac{10}{27})\bigcup[\frac{37}{91},\frac{11}{27})\bigcup[\frac{11}{23},\frac{13}{27})\bigcup[\frac{7}{13},\frac{20}{37})\bigcup[\frac{16}{29},\frac{5}{9})\bigcup[\frac{53}{91},\frac{7}{12})\bigcup[\frac{17}{29},\frac{16}{27})\\
& \bigcup[\frac{13}{21},\frac{23}{37})\bigcup[\frac{23}{33},\frac{7}{10})\bigcup[\frac{64}{91},\frac{19}{27})\bigcup[\frac{14}{19},\frac{20}{27})\bigcup[\frac{10}{13},\frac{27}{35})\bigcup[\frac{25}{31},\frac{30}{37})\bigcup[\frac{74}{91},\frac{22}{27})\\
& \bigcup[\frac{11}{13},\frac{23}{27})\bigcup[\frac{80}{91},\frac{31}{35})\bigcup[\frac{83}{91},\frac{11}{12})\bigcup[\frac{12}{13},\frac{25}{27})\bigcup[\frac{22}{23},\frac{26}{27})\\
&\Omega_{9} = [\frac{1}{29},\frac{1}{28})\bigcup[\frac{2}{29},\frac{1}{14})\bigcup[\frac{7}{19},\frac{10}{27})\bigcup[\frac{12}{25},\frac{13}{27})\bigcup[\frac{17}{23},\frac{20}{27})\bigcup[\frac{15}{17},\frac{23}{26})\bigcup[\frac{24}{25},\frac{25}{26})\\
&\Omega_{10} = \varnothing
\end{align}
$$
phieasier to calculate, you may noticephi1can only change value at a finite set of points for $y$ $$ $$switchingPoints[x_] = Mod[Union[{0}, etalis, etalis[[1]] - etalis[[r ;; q + 1]]]*x, 1];$$ $$ and the minimum will be at one of those points. $$ $$phi[x_] := Min[phi1[x, #] & /@ switchingPoints[x]]$\endgroup$