Solving for Integer Solutions of Nonlinear Systems of Equations

Jsun Yui Wong

The computer program listed below seeks to find integer solutions (if any) of the following nonlinear problem:

-389758 + X(2) ^ 3 + X(1) * X(6)=0,

-463176 + X(3) ^ 3 + X(2) * X(7)=0,

-136187 + X(9) ^ 3 + X(4) * X(5)=0,

-144535 + X(4) ^ 3 + X(3) * X(9)=0,

-76935 + X(8) ^ 3 + X(2) * X(6)=0,

-754559 + X(7) ^ 3 + X(1) * X(4)=0,

-61503 + X(6) ^ 3 + X(4) * X(8)=0,

-316574 + X(5) ^ 3 + X(8) * X(9)=0,

-10395 + X(1) ^ 3 + X(4) * X(5)=0,

-757393 + X(7) ^ 3 + X(7) * X(8)=0,

where 0<=X(i)<=100 and X(i) are integers for i=1, 2, 3, …, 9.

The nonlinear system above comes from Conley [6, p. 5].
0 DEFDBL A-Z

3 DEFINT J, K, X

4 DIM X(342), A(342), L(333), K(333)

12 FOR JJJJ = -32000 TO 32000
14 RANDOMIZE JJJJ

16 M = -1D+317

77 IF JJJJ > -32000 THEN GOTO 88 ELSE GOTO 91
88 IF RND < .05 THEN GOTO 91 ELSE GOTO 128
91 FOR KK = 1 TO 9

94 A(KK) = FIX(RND * 101)
95 NEXT KK
128 FOR I = 1 TO 100000
129 FOR K = 1 TO 9
131 X(K) = A(K)
132 NEXT K
155 FOR IPP = 1 TO FIX(1 + RND * 3)

181 B = 1 + FIX(RND * 9)
182 REM IF RND < -.05 THEN 183 ELSE GOTO 189
183 r = (1 – RND * 2) * A(B)
186 X(B) = A(B) + (RND ^ 3) * r

188 GOTO 191
189 IF RND < .5 THEN X(B) = A(B) – FIX(1 + RND * 1.99) ELSE X(B) = A(B) + FIX(1 + RND * 1.99)

191 NEXT IPP

222 FOR J44 = 1 TO 9

228 IF X(J44) > 100 THEN 1670

233 NEXT J44

1301 N81 = -389758 + X(2) ^ 3 + X(1) * X(6)
1302 N82 = -463176 + X(3) ^ 3 + X(2) * X(7)
1303 N83 = -136187 + X(9) ^ 3 + X(4) * X(5)
1304 N84 = -144535 + X(4) ^ 3 + X(3) * X(9)

1305 N85 = -76935 + X(8) ^ 3 + X(2) * X(6)
1306 N86 = -754559 + X(7) ^ 3 + X(1) * X(4)

1307 N87 = -61503 + X(6) ^ 3 + X(4) * X(8)
1308 N88 = -316574 + X(5) ^ 3 + X(8) * X(9)

1309 N89 = -10395 + X(1) ^ 3 + X(4) * X(5)
1310 N90 = -757393 + X(7) ^ 3 + X(7) * X(8)
1445 P = -ABS(N81) – ABS(N82) – ABS(N83) – ABS(N84) – ABS(N85) – ABS(N86) – ABS(N87) – ABS(N88) – ABS(N89) – ABS(N90)
1499 IF P <= M THEN 1670
1657 FOR KEW = 1 TO 9

1658 A(KEW) = X(KEW)
1659 NEXT KEW
1661 M = P
1670 NEXT I
1888 IF M < -4444 THEN 1999

1917 PRINT A(1), A(2), A(3), A(4), A(5), A(6), A(7), A(8), A(9), M, JJJJ

1999 NEXT JJJJ
This computer program was run with qb64v1000-win [13]. Copied by hand from the screen, the computer program’s complete output through
JJJJ=-31945 is shown below:

19       73       77       52       68
39       91       42       51       0
-32000

19 73 77 52 68
39 91 42 51 0
-31999

19 73 77 52 68
39 91 42 51 0
-31998

.
.
.

19 73 77 52 68
39 91 42 51 0
-31981

19 73 77 52 68
39 91 42 51 0
-31945

Above there is no rounding by hand; it is just straight copying by hand from the screen.

On a personal computer with a Pentium Dual-Core CPU E5200 @2.50GHz, 2.50 GHz, 960 MB of RAM and with qb64v1000-win [13, the wall-clock time through
JJJJ=-31945 was 20 seconds.

Incidentally, one can stop the computer run as soon as the first 0 (for M) appears on the screen. For the present problem, that happens at JJJJ=-32000.

Acknowledgment

I would like to acknowledge the encouragement of Roberta Clark and Tom Clark.

References
[1] R. Burden, J. Faires, A. Burden, Numerical Analysis, Tenth Edition. Cengage Learning, 2016.
[2] R. Burden, J. Faires, Numerical Analysis, Sixth Edition. Brooks/Cole Publishing Company, 1996.
[3] R. Burden, J. Faires, Numerical Analysis, Third Edition. PWS Publishers, 1985.
[4] William Conley, Computer Optimization Techniques, Revised Edition. Petrocelli Books, Inc., NY/Princeton, 1984.
[5] William Conley, Simulation Optimization and Correlation with Multi Stage Monte Carlo Optimization, International Journal of Systems Science, Vol.38, No. 12, Dec. 2007, pp. 1013-1019.
[6] William Conley, Ecological Optimization of Polution Control Equipment and Planning from a Simulation Perspective, International Journal of Systems Science, Vol.39, No. 1, Jan. 2008, pp. 1-7.
[7] D. Greenspan, V. Casulli, Numerical Analysis for Applied Mathematics, Science, and Engineering. Addison-Wesley Publishing Company, 1988
[8] L. W. Johnson, R. D. Riess, Numerical Analysis, Second Edition. Addison-Wesley Publishing Company, 1982
[9] Microsoft Corp. BASIC, second edition (May 1982), Version 1.10. Boca Raton, Florida: IBM Corp., Personal Computer, P. O. Box 1328-C, Boca Raton, Florida 33432, 1981.
[10] William H. Mills, A System of Quadratic Diophantine Equations, Pacific Journal of Mathematics, 3 (1953), pp. 209-220.
[11] Thomas L. Saaty, Optimization in Integers and Related Extremal Problems. McGraw-Hill, 1970.
[12] Terry E. Shoup, Applied Numerical Methods for the Microcomputer, Prentice-Hall, 1984.
[13] Wikipedia, QB64, https://en.wikipedia.org/wiki/QB64.