[go: up one dir, main page]

login
Integer area of primitive cyclic quadrilaterals with integer sides and rational radius.
4

%I #5 May 28 2016 07:29:54

%S 12,60,108,120,120,168,192,192,234,240,300,360,360,420,420,420,420,

%T 420,420,432,540,540,588,600,660,660,714,768,840,924,960,960,966,1008,

%U 1008,1008,1080,1080,1080,1092,1134,1200

%N Integer area of primitive cyclic quadrilaterals with integer sides and rational radius.

%C Given 4 segments a,b,c,d, there is a unique circumcircle such that these segments can be placed inside to form cyclic quadrilaterals. There are 3 ways to place these segments: abcd,acbd,adbc.

%C Primitive means a,b,c,d share no common factor.

%C The area S = sqrt[(s-a)(s-b)(s-c)(s-d)] where s=(a+b+c+d)/2 is the semiperimeter.

%C The circumradius R=Sqrt[a b+c d]*Sqrt[a c+b d]*Sqrt[a d+b c]/(4S)

%C The length of the diagonal separating a-b and c-d is (4S R)/(a b+c d), the other diagonal can be obtain by swapping b,c or swapping b,d.

%C It follows that if the sides and area are integers, then (any diagonal is rational) <=> (circumradius is rational) <=> (all diagonals are rational).

%C From empirical observation, the area seems to be a multiple of 6. (If so, the program could be modified to run 6 times as fast.)

%e a, b, c, d, S, r

%e 4, 4, 3, 3, 12, 5/2

%e 12, 12, 5, 5, 60, 13/2

%e 14, 13, 13, 4, 108, 65/8

%e 15, 15, 8, 8, 120, 17/2

%e 21, 10, 10, 9, 120, 85/8

%e 24, 24, 7, 7, 168, 25/2

%e 21, 13, 13, 11, 192, 65/6

%e 25, 15, 15, 7, 192, 25/2

%e 24, 20, 15, 7, 234, 25/2

%t SMax=1200;

%t Do[

%t x=S^2/(u v w);

%t If[u+v+w+x//OddQ,Continue[]];

%t If[v+w+x<=u,Continue[]];

%t {a,b,c,d}=(u+v+w+x)/2-{x,w,v,u};

%t If[GCD[a,b,c,d]>1,Continue[]];

%t R=(Sqrt[v w+u x]Sqrt[u w+v x]Sqrt[u v+w x])/(4S);

%t If[R\[NotElement]Rationals,Continue[]];

%t S(*{a,b,c,d,"",S,R,"",(4S R)/(a d+b c),(4S R)/(a c+b d),(4S R)/(a b+c d)}*)//Sow;

%t ,{S,1(*6*),SMax,1(*6*)}(*assuming S mod 6 = 0, set to 6 to run faster*)

%t ,{u,S^2//Divisors//Select[#,S<=#^2&&#<=S&]&}

%t ,{v,S^2/u//Divisors//Select[#,S^2<=u#^3&&u/3<#<=u&]&}

%t ,{w,S^2/(u v)//Divisors//Select[#,S^2<=u v#^2&&(u-v)/2<#<=v&]&}

%t ]//Reap//Last//Last(*//TableForm*)

%t {S,R,x,a,b,c,d}=.;

%K nonn

%O 1,1

%A _Albert Lau_, May 28 2016