login
a(n) is the number of distinct volumes > 0 of tetrahedra with the sum of their integer edge lengths equal to n.
6

%I #22 Apr 04 2024 10:16:02

%S 1,0,0,1,1,1,3,2,3,6,5,7,12,10,16,19,21,26,34,37,44,56,60,67,93,92,

%T 111,137,140,166,192,211,246,279,306,333,392,428,464,538,565,627,709,

%U 768,826,939,998,1089,1230,1312,1403,1590,1658,1798,1987,2088,2266,2495

%N a(n) is the number of distinct volumes > 0 of tetrahedra with the sum of their integer edge lengths equal to n.

%H Chai Wah Wu, <a href="/A371070/b371070.txt">Table of n, a(n) for n = 6..200</a>

%H Hugo Pfoertner, <a href="/plot2a?name1=A371070&amp;name2=A208454&amp;tform1=untransformed&amp;tform2=untransformed&amp;shift=0&amp;radiop1=ratio&amp;drawpoints=true">Plot of ratio a(n)/A208454(n)</a>, using Plot 2. Is the asymptotic ratio for n->oo finite or 0?

%F a(n) <= A208454(n).

%o (PARI) a371070(n) = {my (L=List()); forpart (w=n, forperm (w,v, if(v[4]+v[5]<v[6],next); if(v[4]+v[6]<v[5],next); if(v[5]+v[6]<v[4],next); if(v[1]+v[2]<v[4],next); if(v[1]+v[4]<v[2],next); if(v[2]+v[4]<v[1],next); if(v[1]+v[3]<v[5],next); if(v[1]+v[5]<v[3],next); if(v[3]+v[5]<v[1],next); if(v[2]+v[3]<v[6],next); if(v[2]+v[6]<v[3],next); if(v[3]+v[6]<v[2],next); my(CM=matdet ([0,1,1,1,1; 1,0,v[1]^2,v[2]^2,v[3]^2; 1,v[1]^2,0,v[4]^2,v[5]^2; 1,v[2]^2,v[4]^2,0,v[6]^2; 1,v[3]^2,v[5]^2,v[6]^2,0])); if (CM>0, listput (L,CM))), [1,n], [6,6]); #Set(Vec(L))};

%o (Python)

%o from collections import Counter

%o from sympy.utilities.iterables import partitions, multiset_permutations

%o def A371070(n):

%o CM = lambda x,y,z,t,u,v: (x*y*z<<2)+(a:=x+y-t)*(b:=x+z-u)*(c:=y+z-v)-x*c**2-y*b**2-z*a**2

%o TR1 = lambda x,y,z: not(x+y<z or x+z<y or y+z<x)

%o TR = lambda x,y,z,t,u,v: TR1(t,u,v) and TR1(x,y,t) and TR1(x,z,u) and TR1(y,z,v)

%o c, d, sq = 0, set(), tuple(x**2 for x in range(n+1))

%o for s, w in partitions(n,m=6,k=n-5,size=True):

%o if s == 6:

%o for v in multiset_permutations(Counter(w).elements()):

%o if TR(*v) and (M:=CM(sq[v[0]],sq[v[1]],sq[v[2]],sq[v[3]],sq[v[4]],sq[v[5]]))>0 and M not in d:

%o d.add(M)

%o c += 1

%o return c # _Chai Wah Wu_, Mar 23 2024

%Y Cf. A001402, A097125, A208454, A346575, A371071, A371345.

%K nonn

%O 6,7

%A _Hugo Pfoertner_, Mar 18 2024