%I #10 Dec 30 2023 23:12:45
%S 2,83,81131,894500063,88990607813,8499228209501,8597793891803,
%T 800072140300001,859981720058603,899969843983163,82943190509220401,
%U 86999838571212401,88290616680100001,89991996902408171,83909667566050103,89690298128004023,89919974791600043,8069990701280128001,8299959944574088001
%N a(n) is the greatest prime q such that A367798(n)^2 is the sum of q and its reversal.
%C a(n) is the last term q of A367796 such that A056964(q) = A367798(n)^2.
%F A056964(a(n)) = A367798(n)^2.
%e a(4) = 894500063 because A367798(3) = 35419 and 35419^2 = 1254505561 = 894500063 + 360005498 and 894500063 is the greatest prime that works.
%p f:= proc(n) local y, c, d, dp, i, delta, m;
%p y:= convert(n^2, base, 10);
%p d:= nops(y);
%p if d::even then
%p if y[-1] <> 1 then return false fi;
%p dp:= d-1;
%p y:= y[1..-2];
%p c[dp]:= 1;
%p else
%p dp:= d;
%p c[dp]:= 0;
%p fi;
%p c[0]:= 0;
%p for i from 1 to floor(dp/2) do
%p delta:= y[i] - y[dp+1-i] - c[i-1] - 10*c[dp+1-i];
%p if delta = 0 then c[dp-i]:= 0; c[i]:= 0;
%p elif delta = -1 then c[dp-i]:= 1; c[i]:= 0;
%p elif delta = -10 then c[dp-i]:= 0 ; c[i]:= 1;
%p elif delta = -11 then c[dp-i]:= 1; c[i]:= 1;
%p else return false
%p fi;
%p if y[i] + 10*c[i] - c[i-1] < 0 or (i=1 and y[i]+10*c[i]-c[i-1]=1) then return false fi;
%p od;
%p m:= (dp+1)/2;
%p delta:= y[m] + 10*c[m] - c[m-1];
%p if not member(delta, [seq(i, i=0..18, 2)]) then return false fi;
%p [seq(y[i]+ 10*c[i]-c[i-1], i=1..m)]
%p end proc:
%p g:= proc(L) local T, d, t, p, x, i; uses combinat;
%p d:= nops(L);
%p T:= cartprod([select(t -> t[1]::odd, [seq([L[1]-x, x], x=min(L[1], 9)..max(1, L[1]-9),-1)]),
%p seq([seq([L[i]-x, x], x=min(9, L[i])..max(0, L[i]-9),-1)], i=2..d-1)]);
%p while not T[finished] do
%p t:= T[nextvalue]();
%p p:= add(t[i][1]*10^(i-1), i=1..d-1) + L[-1]/2 * 10^(d-1) +
%p add(t[i][2]*10^(2*d-i-1), i=1..d-1);
%p if isprime(p) then return p fi;
%p od;
%p -1
%p end proc:
%p p:= 2, 11: Q:= 83:
%p while p < 10^10 do
%p p:= nextprime(p);
%p d:= 1+ilog10(p^2);
%p if d::even and p^2 >= 2*10^(d-1) then p:= nextprime(floor(10^(d/2))); fi;
%p v:= f(p);
%p if v = false then next fi;
%p q:= g(v);
%p if q = -1 then next fi;
%p Q:= Q, q;
%p od:
%p Q;
%Y Cf. A056964, A367796, A367798, A367871.
%K nonn,base
%O 1,1
%A _Robert Israel_, Dec 04 2023