A permutation is a sequence $(a_1, \ldots, a_n)$ in which each number $1, \ldots, n$ appears precisely once. We call a sequence anti-arithmetic if there are no non-trivial arithmetic subsequences in it; that is, if there are no $i < j < k$ such that $(a_i, a_j, a_k)$ is an arithmetic sequence.
An example of an anti-arithmetic sequence of length 6 is $$ (3, 5, 4, 6, 1, 2). $$
Intuitively it seems "hard" to me for a long sequence to be anti-arithmetic. For example, suppose that you have built about half the sequence so far; then adding any element $a$ near $n/2$ requires that the elements of $1, \ldots, n$ you have used so far mirror (almost) exactly around $a$, and there are lots of ways for this to go wrong.
In particular, I do not know how to create anti-arithmetic sequences of arbitrary length.
Are there anti-arithmetic sequences of arbitrarily high length? How can I construct those?
I am asking this question because of Kattis problem Antiarithmetic?; googling the word "antiarithmetic" gets me only references to this recreational programming problem. I am not looking for a solution to the problem, only for some more intuition about antiarithmetic sequences.
Edit: Some programming strongly suggests that such anti-arithmetic sequences continue to appear for higher $n$. The following (unoptimized, but a fair bit faster than brute force) script shows anti-arithmetic sequences of length up to 40 very quickly, and that there are about 74904 such sequences of length 15.
def extend_aas(length, partial_sequence=[]):
results = []
for i in range(length):
if i in partial_sequence:
continue
for j in partial_sequence:
if 0 <= i + i - j < length and (i + i - j not in partial_sequence):
break
else:
yield partial_sequence + [i]
def get_aases(length, partial=[]):
for extended in extend_aas(length, partial):
if len(extended) == length:
yield extended
else:
for result in get_aases(length, extended):
yield result
for n in range(1, 41):
print(n, next(get_aases(n)))
for n in range(1, 16):
print(n, len(list(get_aases(n))))
However, this still does not give me intuition for why this might be the case.