找回密码
 快速注册
搜索
查看: 359|回复: 4

[数论] 关于网上【最贱的数学题】帖子的提问

[复制链接]

119

主题

447

回帖

3184

积分

积分
3184

显示全部楼层

TSC999 发表于 2021-12-29 14:47 |阅读模式
网上有一个帖子叫做【最贱的数学题】,是某国人翻译的 Bremmer 和 MacLeod 的科普文章。此文章介绍的是三元丢番都方程

\( \frac{a}{b+c}+\frac{b}{a+c}+\frac{c}{a+b}=4\) 的正整数解。解的最小值是 80 位的正整数。网上关于这个问题的介绍见:blog.csdn.net/BULpreZHt1ImlN4N/article/details/81213105

这篇文章是科普性质的,因为真正看懂需要代数几何的知识。如果没有代数几何的概念,只要跳过一些知识点,也可以基本上弄明白。

我看懂了文章的一多半,剩下第 2 次迭代如何做的问题没有看懂,故发此帖请教大师解答。

首先,原方程可以变换成二元的等价方程。作下面的代换 (至于这个代换式是怎么得来的,没学过代数几何的菜鸟可以不去管它,承认它正确就行了)
\(x = (-28 (a + b + 2 c))/(6 a + 6 b - c), \quad  y = (364 (a - b))/(
6 a + 6 b - c)\)
由此可解出 \(  b = -((a (-x - y + 56))/(x - y - 56)),  \quad   c = -(( 4 a (3 x + 14))/(-x + y + 56))\)
于是  \(a/(b + c) + b/(a + c) + c/(a + b)=\)
\(=(4 (260 x^3 + 455 x^2 - x (y^2 - 20384) - 35 y^2))/((x - 56) (13 x -  y) (13 x + y)) \),
因为 \(a/(b + c) + b/(a + c) + c/(a + b)=4\)
所以  \(260 x^3 + 455 x^2 - x (y^2 - 20384) - 35 y^2 = (x - 56) (13 x - y) (13 x + y)\)
化简得  \( y^2 = x^3 + 109 x^2 + 224 x \) ------------------------------------①

上面这个函数是一个椭圆函数,其函数图像是:

椭圆曲线.png

方程 ① 有无穷多组解,其中一组解是  \( x=-100, \quad  y=260  \),然后代入下面各式求出 a、b、c:(下面三式是怎么来的也不用深究)
\(a = (56 - x + y)/(56 - 14 x);  b = (56 - x - y)/(56 - 14 x);   c = (-28 - 6 x)/(28 - 7 x);  \)  
求得   \( a=2/7, \quad  b=-1/14, \quad  c=11/14  \),然后把它们都扩大 14 倍得到  \( a=4, \quad  b=-1, \quad  c=11  \)。它们虽然能满足原方程,但是不符合全是正整数的要求。
为此要利用椭圆曲线的一个性质把上述整数解经过多次迭代,逐步变换成为正整数解。
第 1 次迭代是在椭圆曲线上找到 P (-100, 260) 点,作该点的切线,可算出切线与曲线的右支交于 A (8836/25,950716/125) 点,再作 A 点关于横轴的镜像点 P1 (8836/25,-950716/125 )。

第 1 次迭代.png

由这个新的点  P1 (8836/25,-950716/125 ) 可算出 \(a, b, c \) 的新一轮值如下:

将 \(x=8836/25, y=-950716/125\)  代入 \( a = (56 - x + y)/(56 - 14 x);  b = (56 - x - y)/( 56 - 14 x);   c = (-28 - 6 x)/(28 - 7 x) \) 得到

\(a=1357/840, \quad b=-366/245, \quad  c=1033/1176 \),它们的分母的最小公倍数是 \(5880\),乘上它,算出第 1 轮的迭代结果是:

\(a=9499, \quad b=-8784,  \quad c=5165 \)。

按网上文章说法,要迭代 9 次才能使 \(a, b, c \) 都变成正整数,从而得到原方程的最终解答:

\( a = 154476802108746166441951315019919837485664325669565431700026634898\
253202035277999;\)
\(b = 368751317941299998271978115652254748254929799689719709962831374716\
37224634055579;\)
\(c = 437361267792869725786125260237139015281653755816161361862143799337\
8423467772036;\)

我的问题是,第 2 轮迭代怎么做法?(每迭代一次 \(a, b, c\) 的绝对值都会增大)

119

主题

447

回帖

3184

积分

积分
3184

显示全部楼层

 楼主| TSC999 发表于 2021-12-30 22:16
本帖最后由 TSC999 于 2021-12-31 12:43 编辑 【数学研发网站】的 mathe 大师给出了迭代的方法,见下图。

首先求出椭圆曲线上的一个整点 \(P (-100, 260)\),这算是第 1 次迭代。 \(P\) 点关于实轴的镜像点为  \( \overline{P}\)。

从 \(P\) 点作椭圆曲线的切线交椭圆曲线右上支于 \(P1\) 点。 \(P1\) 点关于实轴的镜像点为 \( \overline{P1}\),这是第 2 次迭代。

连接  \( \overline{P}\) 与  \(P1\) 点交椭圆曲线于  \(P2\) 点, \(P2\) 点的镜像是 \( \overline{P2}\),这是第 3 次迭代。

连接 \(P\) 与  \(P2\) 点交椭圆曲线于  \(P3\) 点, \(P3\) 点的镜像是 \( \overline{P3}\),这是第 4 次迭代。

迭代方法.png

119

主题

447

回帖

3184

积分

积分
3184

显示全部楼层

 楼主| TSC999 发表于 2021-12-31 12:45
本帖最后由 TSC999 于 2021-12-31 14:56 编辑 九 次 迭 代 方 法:

9 次迭代方法.png

将 \(P8\) 点的镜像坐标
\( x =\frac{-66202368404229585264842409883878874707453676645038225}{13514400292716288512070907945002943352692578000406921}\);
\(  y =\frac{-58800835157308083307376751727347181330085672850296730351871748713307988700611210}{1571068668597978434556364707291896268838086945430031322196754390420280407346469}\)。

代入 \( a = (56 - x - y)/(56 - 14 x)\);
  \( b = (56 - x+ y)/(56 - 14 x)\);
\( c = (-28 - 6 x)/(28 - 7 x) \) 中,得到

\( a = 72627067629030455550043880234643101653454184810448427/385489402115598358968822193146517732601759618776822382;\)

\( b = 652194680638776317370751188686261401138670498641722947/826345176768069653846031682295795260307016241032351542;\)
\( c = 18811002229321433251069036843190834369329875858835562/841819787025663175191882291647234536827567920526661363。\)

它们分母的最小公倍数为 \(195725546580804863527010379187516702463973843196699016314931210363268850137105614\)。
把 \(a, \enspace  b, \enspace  c \) 分别乘以最小公倍数,就得到最终的结果:
\( a = 154476802108746166441951315019919837485664325669565431700026634898253202035277999;\)
\(b = 36875131794129999827197811565225474825492979968971970996283137471637224634055579;\)
\(c = 4373612677928697257861252602371390152816537558161613618621437993378423467772036。\)

119

主题

447

回帖

3184

积分

积分
3184

显示全部楼层

 楼主| TSC999 发表于 2021-12-31 17:57
用 mathematica 写一个计算原方程所有正整数解的程序如下。只运行到求出前三组解为止,从小到大排列。
  1. Clear["Global`*"];
  2. px = 8836/25; py = 950716/125;
  3. Do[w = Solve[{(y + (-1)^n 260)/(x + 100) == (y - py)/(x - px),
  4.     y^2 == x^3 + 109 x^2 + 224 x}, {x, y}];
  5. m = Part[w, 1];
  6. px = Part[Part[m, 1], 2]; py = Part[Part[m, 2], 2];
  7. a = (56 - px + py)/(56 - 14 px); b = (56 - px - py)/(56 - 14 px);
  8. c = (-28 - 6 px)/(28 - 7 px);
  9. k = LCM[Denominator[a], Denominator[b], Denominator[c]];
  10. a = k a; b = k b; c = k c;
  11. If[a > 0 && b > 0 && c > 0, Print["n = ", n]; Print["a = ", a];
  12.    Print["b = ", b]; Print["c = ", c];] Clear[x, y];, {n, 2, 42}]
复制代码
运行结果:
  1. n = 8
  2. a = 154476802108746166441951315019919837485664325669565431700026634898253202035277999
  3. b = 36875131794129999827197811565225474825492979968971970996283137471637224634055579
  4. c = 4373612677928697257861252602371390152816537558161613618621437993378423467772036
  5. n = 16
  6. a = 1440354387400113353318275132419054375891245413681864837390427511212805748408072838847944629793120889446685643108530381465382074956451566809039119353657601240377236701038904980199109550001860607309184336719930229935342817546146083848277758428344831968440238907935894338978800768226766379
  7. b = 9391500403903773267688655787670246245493629218171544262747638036518222364768797479813561509116827252710188014736501391120827705790025300419608858224262849244058466770043809014864245428958116544162335497194996709759345801074510016208346248254582570123358164225821298549533282498545808644
  8. c = 1054210182683112310528012408530531909717229064191793536540847847817849001214642792626066010344383473173101972948978951703027097154519698536728956323881063669558925110120619283730835864056709609662983759100063333396875182094245046315497525532634764115913236450532733839386139526489824351
  9. n = 42
  10. a = 15453593309218940846207255865132613310776450115166437161515541658413531828588400557772731420460987706137029491033863210399196130330252915932012779241010815778785617708264564651145867876354705406946306475540773730502496058183399570826119375802616171105147320839349868276291026219814007049506148461451918729250823169813534824306463095992345931904104233809391771272321121758929488549431212466959033216285349200436512471245987390967598499606007879122810276916229858800789436888707844488513846048097093129617120399903120411979821029685809349594462294547510741368010379579750176314970250699227364950578663581497239660843832768290467755219851688586180014257437413015374031218327004559570623906428315174821174817432179940485392234212575235848833874133378123124340523717795011331908535629779429924179483728214494662931883633274923491027906607029813527218055338276841070812234948365216914682845244464809754190578935802060897063627220846539383345067008605419721714348481477780882239249117691695851959002887566984490411774473831811761705795095939539443091458534999791722281380264634316172204309348184521227518524588448812687570643547540047621969693813066210281372496482924358381907617081200370347600166303777060675118145295062430152376767671509939096301299823072997973205853712232488334610148222602647419067205800571100144228924764012888478757110388735298477249882209822146284487796157891048751431528026390794728224109606752426574920880273700061125573881264680865796667046184720767513409523201173802115553319085433982458772137460109597504774375920669837897880121704523872178439818568348176740267055509634742517225702578785925465191101510356982178184057955288652356039341768098314169871196352558095644129134696113697500722129535500400502127531801316262914876243453673660723752938404965989057078733388153481825535043691867763887742109840002244
  11. b = 225154016517112977781036948256008938300203178330423577363453821036394761107680057568745628209195248523620195782466426407985215307025921866600858990606927336174889537531018446580713112825302066623162355086869328417402211408953756565342027652872537253617826530330784837338571463734871996499108516583290648763496513489183745733576708877087047371189412505717014331826142406003884899681843364642819684522813601476303079790279856327656223776004815820327753159755901868587896719861213720266764460310032696256605354111160107295291128043538323200422916078193961183140616030812370630564256817377233433528789971841979658793737967114669186555377771237485226841269607323166922316761422199345865999104815884491622547014936234709052023067922775032191916270243862878508060657067021931486974723180046708070927036318162808729432879113786424376189970820861538373191411543578985216279783091118151432408248753288507964544978529017501384067917969689186500193235465170699554467854161734696375451401526147038132103497722712434237765240417469026003900141380094963887277536680663339473495404280832277956459721398409188832206502884147198106952208672070217739002221072079359396085559259663544288599091559005944227248534623542597623064520350379930304929965204170913653510169778542349039374910308027821337246852975840961727328228254763203060674895250350545695000298534504920902849054401337272333498054840472621350454001742892929660367675291497608434201219153565223416767494379418507493309105107702570247029601616824210304509090382274068128665595252704806444774305191463838801795214144808202626528629558344536206661056959565750095641772947809946832113656333105504888842201552297169696803219554009606770704895946366921580738948138601485916793613132084870296310272512606742366208816635957211558863396821219822591454440442729419986877429924523309238064797884908179
  12. c = 44461335629672512492703765883175586604271617966959372579405246316312635749738199775109810178104708707457198051230615821377304871559074000742368039859421360451446219358428556912551613268447055577075546308705355207675432824857482711021718385130587463540493155013085535756860845750238851692639161021024517886524036212139762029236463245295105027391367451888348670870408741211719607504937094603439646815018182825901652580649742456614698847261022885595461685161887958381609802685598412986417636090987167575772949267424224684536724902932223944768712498398205815659899970956077837279038128530901008278668933556282812304203744819571765335023040626696922076594110969151730408695242584377910242288683981295738931371487272741006895663592260930378015591408275619819882393176736343144067616932519826148309713147158706988600051832028664922598148770934499584030154416061448540824660162738136970731773312764840190126210608974771414980007148816299467771768997419448765761330711875516987247407438356175714309118555904515740423840289623467624875815358180134367295671020825468513244755783145700103316905246329313325502943931733599223271651712239125845402984818877286590277802960982778863144323433358637469683688834360044267722771070351136547068178839171882142976989614417695114955102446303728641753175503913077759878507833430128395224826879934144069171265044502339887369200465840860583880007153663136783858497137105830822652366608673840534971495675993245882416626862118582558385659522811755932651109573554484186740090013071423293846683669742213991618807138000493782173547896957291088164647943782010145181582548768571970911242213342278622698955569338623947887256312073204761339436465560502438654375446399926542663356453629893811734755642591222705407745522813593398800289828045627917654884172247174896298662497901305098949979750083457327969810933896151
复制代码

3149

主题

8382

回帖

6万

积分

$\style{scale:11;fill:#eff}꩜$

积分
65372
QQ

显示全部楼层

hbghlyj 发表于 2024-9-18 17:34
TSC999 发表于 2021-12-29 06:47
是某国人翻译的 Bremmer 和 MacLeod 的科普文章。此文章介绍的是三 ...


还有一篇內容丰富的mlzeng个人博客文章(基于上面提到的 Bremmer 和 MacLeod 的科普文章),其中包含一些 Python 代码

手机版|悠闲数学娱乐论坛(第3版)

GMT+8, 2025-3-5 01:08

Powered by Discuz!

× 快速回复 返回顶部 返回列表