This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.
%I A371345 #34 Apr 13 2024 15:06:11 %S A371345 1,4,16,38,96,204,424,739,1265,2091,3264,4778,7129,10310,14444,19132, %T A371345 26141,34533,44872,57501,73871,93093,114872,139008,175160,211443, %U A371345 255138,306942,364337,431745,506052,586429,696565,803479,948280,1063150,1226084,1401161,1606425,1815322 %N A371345 a(n) is the number of distinct volumes > 0 of tetrahedra with edges of integer length whose largest is n. %H A371345 Hugo Pfoertner, <a href="/A371345/b371345.txt">Table of n, a(n) for n = 1..112</a> %H A371345 Sascha Kurz, <a href="https://arxiv.org/abs/0804.1310">Enumeration of integral tetrahedra</a>, arXiv:0804.1310 [math.CO], 2008. %H A371345 Hugo Pfoertner, <a href="/plot2a?name1=A371345&name2=A097125&tform1=untransformed&tform2=untransformed&shift=0&radiop1=ratio&drawpoints=true">Plot of ratio a(n)/A097125(n)</a> using Plot 2. %H A371345 Karl Wirth and Andre Dreiding, <a href="https://doi.org/10.4171/em/129">Edge lengths determining tetrahedrons</a>, Elemente der Mathematik, 64 (2009), 160-170. %o A371345 (PARI) \\ Cayley-Menger determinant %o A371345 CM(v) = {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])}; %o A371345 \\ First version using loops over 5 edges d_ij as described in Algorithm 1 (Sascha Kurz, 2008) %o A371345 a371345(n) = {my (L=List(), v=vector(6)); v[1]=n; for (d02=floor((n+2)/2), n, v[2]=d02; for (d12=n+1-d02, d02, v[3]=d12; for (d03=n+1-d02, d02, v[4]=d03; for (d13=n+1-d03, d02, v[5]=d13; for (d23=1, n, v[6]=d23; forperm (v, w, my (c=CM(w)); if (c>0, listput(L, c)))))))); #Set(Vec(L))}; %o A371345 \\ Second version using simple minded loops and triangle inequalities. See Wirth %o A371345 \\ and Dreiding (2009), p. 165, for justification to check only one triangle. %o A371345 a371345(n) = {my (L=List(),w=vector(6)); w[1]=n; for(w2=1,n,w[2]=w2; for(w3=1,n,w[3]=w3; for(w4=1,n,w[4]=w4; for(w5=1,n,w[5]=w5; for(w6=1,n,w[6]=w6; 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); my(c=CM(v)); if (c>0, my(j=setsearch(L,c,1)); if (j>0, listinsert(~L,c,j))))))))); #Set(Vec(L))}; %Y A371345 Cf. A097125, A349295, A371070, A371344. %K A371345 nonn %O A371345 1,2 %A A371345 _Hugo Pfoertner_, Mar 19 2024