Homeに戻る  一覧に戻る 

Rational Points on Elliptic Curves: u^3+v^3-3uv=2020, y^2=x^3+72729x^2+1763605440x+14256986376960


[2021.06.10]u^3+v^3-3uv=2020, y^2=x^3+72729x^2+1763605440x+14256986376960の有理点


■Diophantus方程式
     C2020: u3+v3-3uv=2020 ----- (1)
で表される楕円曲線の有理点(u,v)を求める。

■曲線Cが整点(u,v)を持たないことは、(初等的な議論で)簡単に証明できる。
[参考情報]
元の問題は、「高校数学 ドラゴン桜の整数問題 a^3+b^3-3ab=2020」で、整数解(自然数解)a,bを求める問題であった。
有理数解a,bを見つける問題は、元の問題よりも遥かに難しい。

■以下では、パラメータnを持つ楕円曲線
     Cn: u3+v3-3uv=n ----- (2)
を標準形に変形する。

■双有理変換φ:(u,v)→(x,y)
     x = 12(u+v+1)/(u+v),
     y = 432(u-v)(u+v+1)/{(u+v)2}
[逆有理変換は、ψ:(x,y)→(u,v)
     u = (36x+y)/{6x(x-12)},
     v = (36x-y)/{6x(x-12)}
]
曲線Cnは、楕円曲線
     C~n: y2 = 12nx4-432nx3+1296(4n+1)x2-20736(n+1)x ----- (3)
に写される。

[pari/gpによる計算]
gp> ffn(u,v,n)=u^3+v^3-3*u*v-n
%1 = (u,v,n)->u^3+v^3-3*u*v-n
gp> ffn((36*x+y)/(6*x*(x-12)),(36*x-y)/(6*x*(x-12)),n)
time = 1 ms.
%2 = (-12*n*x^4 + 432*n*x^3 + (-5184*n - 1296)*x^2 + (20736*n + 20736)*x + y^2)/(12*x^4 - 432*x^3 + 5184*x^2 - 20736*x)
gp> %2*(12*x^4 - 432*x^3 + 5184*x^2 - 20736*x)
%3 = -12*n*x^4 + 432*n*x^3 + (-5184*n - 1296)*x^2 + (20736*n + 20736)*x + y^2
gp> [factor(-5184*n - 1296)]
%4 = [Mat([4*n + 1, 1])]
(12:58) gp > [factor(20736*n + 20736)]
%5 = [Mat([n + 1, 1])]
gp> [factor(20736)]
%6 = [[2, 8; 3, 4]]

両辺に、144(n+1)2/x4を掛けると、
     144(n+1)2y2/x4 = 12・144n(n+1)2-432n・144(n+1)2/x+1296(4n+1)・144(n+1)2/x2-20736・144(n+1)3/x3
     {12(n+1)y/x2}2 = 12・144n(n+1)2+432n(n+1){-144(n+1)/x}+9(4n+1){-144(n+1)/x}2+{-144(n+1)/x}3
となる。ここで、有理変換φn:(x,y)→(X,Y)
     X = -144(n+1)/x,
     Y = 12(n+1)y/{x2}
[逆有理変換Ψn:(X,Y)→(x,y)は、
     x = -144(n+1)/X,
     y = 1728(n+1)Y/{X2}
]
によって、以下の楕円曲線
     En: Y2 = X3+9(4n+1)X2+432n(n+1)X+1728n(n+1)2 ------------- (4)
に写される。

[pari/gpによる計算]
gp> en(x,y,n)=-12*n*x^4 + 432*n*x^3 + (-5184*n - 1296)*x^2 + (20736*n + 20736)*x + y^2
%13 = (x,y,n)->-12*n*x^4+432*n*x^3+(-5184*n-1296)*x^2+(20736*n+20736)*x+y^2
gp> en(-144*(n+1)/X,1728*(n+1)*Y/X^2,n)
%14 = -5159780352/X^4*n^5 + ((-1289945088*X - 20639121408)/X^4)*n^4 + ((-107495424*X^2 - 3869835264*X - 30958682112)/X^4)*n^3 + ((-2985984*X^3 - 241864704*X^2 - 3869835264*X + (2985984*Y^2 - 20639121408))/X^4)*n^2 + ((-5971968*X^3 - 161243136*X^2 - 1289945088*X + (5971968*Y^2 - 5159780352))/X^4)*n + ((-2985984*X^3 - 26873856*X^2 + 2985984*Y^2)/X^4)
gp> %14*X^4
%15 = -5159780352*n^5 + (-1289945088*X - 20639121408)*n^4 + (-107495424*X^2 - 3869835264*X - 30958682112)*n^3 + (-2985984*X^3 - 241864704*X^2 - 3869835264*X + (2985984*Y^2 - 20639121408))*n^2 + (-5971968*X^3 - 161243136*X^2 - 1289945088*X + (5971968*Y^2 - 5159780352))*n + (-2985984*X^3 - 26873856*X^2 + 2985984*Y^2)
(13:16) gp > %15/(2985984*n^2+5971968*n+2985984)
%16 = -1728*n^3 + (-432*X - 3456)*n^2 + (-36*X^2 - 432*X - 1728)*n + (-X^3 - 9*X^2 + Y^2)
gp> een(X,Y,n)=-1728*n^3 + (-432*X - 3456)*n^2 + (-36*X^2 - 432*X - 1728)*n + (-X^3 - 9*X^2 + Y^2)
%17 = (X,Y,n)->-1728*n^3+(-432*X-3456)*n^2+(-36*X^2-432*X-1728)*n+(-X^3-9*X^2+Y^2)
gp> -een(X,0,n)
%18 = 1728*n^3 + (432*X + 3456)*n^2 + (36*X^2 + 432*X + 1728)*n + (X^3 + 9*X^2)

よって、楕円曲線Cnを双有理変換φn・φによって、楕円曲線Enに変形することができた。

■以下では、n=2020の場合を考察する。
楕円曲線E2020は、(4)でn=2020とした
     E2020: Y2 = X3+72729X2+1763605440X+14256986376960
である。
楕円曲線E2020のねじれ点群E2020(Q)torsは、自明な群{O}である。

[pari/gpによる計算]
gp> -een(X,0,2020)
%19 = X^3 + 72729*X^2 + 1763605440*X + 14256986376960
gp> e2020=ellinit([0,72729,0,1763605440,14256986376960])
%20 = [0, 72729, 0, 1763605440, 14256986376960, 290916, 3527210880, 57027945507840, 1037281300842101760, -20942064, 1521116190144, -1344316565891363880960, 113921896707333/16674403627220, Vecsmall([1]), [Vecsmall([128, -1])], [0, 0, 0, 0, 0, 0, 0, 0]]
gp> elltors(e2020)
%21 = [1, [], []]
gp> ellglobalred(e2020)
%22 = [18370890, [2, -24244, 1, 4], 12, [2, 1; 3, 2; 5, 1; 43, 1; 47, 1; 101, 1], [[1, 6, 0, 2], [2, -3, 0, 2], [1, 5, 0, 1], [1, 7, 0, 3], [1, 7, 0, 1], [1, 5, 0, 1]]]

■CremonaのmwrankまたはMAGMA Calculator(4-descent)を使って、E2020のMordell-Weil群E2020(Q)を求めると、rank 1で、生成元
     P[-282621828033:13580911254862:17779581] (height 20.2460145951678)
を持つことが分かる。
あるいは、rank(E2020(Q))=1なので、Pari/GPのellheegner()関数を使って、有理点を求めても良い。
     E2020(Q) = Z

[mwrankによる計算]
-bash-3.1$ mwrank
Program mwrank: uses 2-descent (via 2-isogeny if possible) to
determine the rank of an elliptic curve E over Q, and list a
set of points which generate E(Q) modulo 2E(Q).
and finally saturate to obtain generating points on the curve.
For more details see the file mwrank.doc.
For details of algorithms see the author's book.

Please acknowledge use of this program in published work,
and send problems to john.cremona@gmail.com.

Version compiled on Feb  5 2012 at 00:34:32 by GCC 4.1.2 20061021 prerelease (NetBSD nb3 20061125)
using base arithmetic option NTL_ALL (NTL bigints and multiprecision floating point)
Using NTL multiprecision floating point with 15 decimal places.
Enter curve: [0, 72729, 0, 1763605440, 14256986376960]
Curve [0,72729,0,1763605440,14256986376960] :   Working with minimal curve [1,-1,1,27268,-27515429] via [u,r,s,t] = [2,-24244,1,4]
Basic pair: I=-1308879, J=47534880942
disc=-2268534204941676549120
2-adic index bound = 2
By Lemma 5.1(b), 2-adic index = 1
2-adic index = 1
One (I,J) pair
*** BSD give two (I,J) pairs
Looking for quartics with I = -1308879, J = 47534880942
Looking for Type 3 quartics:
Trying positive a from 1 up to 766 (square a first...)
Trying positive a from 1 up to 766 (...then non-square a)
(5,2,-10815,272144,-1944004)    --nontrivial...not locally soluble (p = 3)
(5,-2,-7713,166742,-1029995)    --nontrivial...not locally soluble (p = 2)
(5,6,-47811,2516900,-37364940)  --trivial
(5,6,-21585,759758,-7559091)    --nontrivial...not locally soluble (p = 2)
(5,-6,-3717,56214,-268947)      --nontrivial...not locally soluble (p = 2)
(5,10,-8721,190178,-1194323)    --nontrivial...not locally soluble (p = 2)
(5,10,-2481,24082,-112363)      --nontrivial...not locally soluble (p = 2)
(5,10,-2151,17064,-90396)       --nontrivial...locally soluble...(x:y:z) = (189 : 28188 : 11)
Point = [296852667462:13432413802807:142236648]
        height = 20.2460145951678
Rank of B=im(eps) increases to 1
(5,10,-1671,3400,-66652)        --nontrivial...not locally soluble (p = 3)
(6,6,-5949,99024,-484959)       --nontrivial...not locally soluble (p = 3)
(6,-6,-1629,912,-55263) --nontrivial...not locally soluble (p = 3)
(13,22,-10233,148230,-616923)   --nontrivial...not locally soluble (p = 2)
(17,12,-10359,135864,-508464)   --nontrivial...not locally soluble (p = 3)
(21,-34,-2829,19098,-44683)     --nontrivial...not locally soluble (p = 2)
(45,-18,-3717,18738,-29883)     --nontrivial...not locally soluble (p = 2)
(45,-30,-8721,69210,-154803)    --nontrivial...not locally soluble (p = 2)
(45,90,-1611,36,-7212)  --nontrivial...not locally soluble (p = 3)
(54,-54,-5931,36972,-65548)     --nontrivial...not locally soluble (p = 3)
(54,54,-1611,-780,-6220)        --nontrivial...not locally soluble (p = 3)
(78,-54,-2421,7272,-8919)       --nontrivial...not locally soluble (p = 3)
(117,66,-10233,49410,-68547)    --nontrivial...not locally soluble (p = 2)
(117,214,-2505,3846,-3643)      --nontrivial...not locally soluble (p = 2)
(125,62,-2337,4118,-4003)       --nontrivial...not locally soluble (p = 2)
(135,40,-1671,696,-2480)        --trivial
(146,-3,-1632,137,-2268)        --trivial
(150,27,-3726,9555,-8010)       --trivial
(153,36,-10359,45288,-56496)    --nontrivial...not locally soluble (p = 3)
(167,304,-7911,23544,-21168)    --trivial
(187,-192,-4857,16238,-15264)   --trivial
(189,-354,-2601,8190,-7395)     --nontrivial...not locally soluble (p = 2)
(210,153,-1926,1545,-1710)      --trivial
(453,-858,-1125,2250,-1539)     --nontrivial...not locally soluble (p = 2)
(579,-1060,-1671,4260,-2540)    --trivial
Trying negative a from -1 down to -1048
(-3,6,9,24240,24240)    --trivial
(-7,-12,1305,21168,44928)       --nontrivial...not locally soluble (p = 3)
(-12,9,-1377,7536,20844)        --trivial
(-19,-22,99,9774,8613)  --nontrivial...not locally soluble (p = 2)
(-19,-26,-285,9202,9245)        --nontrivial...not locally soluble (p = 2)
(-27,-18,9,8088,5388)   --trivial
(-27,54,-27,8084,0)     --trivial
(-51,18,2151,9858,8829) --nontrivial...not locally soluble (p = 2)
(-63,-36,1305,7056,4992)        --nontrivial...not locally soluble (p = 3)
(-75,-146,8961,63600,121628)    --trivial
(-91,110,-765,4426,397) --nontrivial...not locally soluble (p = 2)
(-108,27,-1377,2512,2316)       --trivial
(-108,-117,-1422,1587,3000)     --trivial
(-115,-186,2115,8802,7749)      --nontrivial...not locally soluble (p = 2)
(-128,27,2883,8408,5820)        --trivial
(-132,-75,36,3681,1350) --trivial
(-147,-198,1809,6720,4860)      --trivial
(-155,-174,-1671,-160,2160)     --trivial
(-171,-66,99,3258,957)  --nontrivial...not locally soluble (p = 2)
(-171,-306,-477,2826,2013)      --nontrivial...not locally soluble (p = 2)
(-190,245,-1521,2608,748)       --trivial
(-202,202,615,2860,-19) --nontrivial...not locally soluble (p = 3)
(-219,-18,-1161,2046,1053)      --nontrivial...not locally soluble (p = 2)
(-243,270,-99,2708,-300)        --trivial
(-259,134,2691,5026,2101)       --nontrivial...not locally soluble (p = 2)
(-267,318,-1773,1050,1077)      --nontrivial...not locally soluble (p = 2)
(-291,-162,1035,3186,1125)      --nontrivial...not locally soluble (p = 2)
(-435,-570,-1521,510,861)       --nontrivial...not locally soluble (p = 2)
(-459,54,2151,3286,981) --nontrivial...not locally soluble (p = 2)
(-459,666,1791,1938,117)        --nontrivial...not locally soluble (p = 2)
(-498,630,-1773,1872,153)       --nontrivial...not locally soluble (p = 3)
(-501,612,-1575,2064,0) --trivial
(-547,378,-1395,1620,216)       --nontrivial...not locally soluble (p = 3)
(-627,1082,735,1170,-259)       --nontrivial...not locally soluble (p = 2)
(-635,410,909,1612,20)  --trivial
(-667,982,-765,1890,-459)       --nontrivial...not locally soluble (p = 2)
(-667,-1146,-639,1512,864)      --nontrivial...not locally soluble (p = 3)
(-759,-972,9,1800,720)  --nontrivial...not locally soluble (p = 3)
(-813,700,-1479,1572,20)        --trivial
(-819,-762,-981,954,453)        --nontrivial...not locally soluble (p = 2)
(-820,-993,-741,1160,540)       --trivial
(-858,-1530,-1071,1080,720)     --nontrivial...not locally soluble (p = 3)
(-890,375,489,1376,0)   --trivial
(-905,-1276,-765,1162,584)      --trivial
(-931,142,201,1384,68)  --nontrivial...not locally soluble (p = 3)
(-991,1540,-1095,1696,-448)     --nontrivial...not locally soluble (p = 3)
Finished looking for Type 3 quartics.
Mordell rank contribution from B=im(eps) = 1
Selmer  rank contribution from B=im(eps) = 1
Sha     rank contribution from B=im(eps) = 0
Mordell rank contribution from A=ker(eps) = 0
Selmer  rank contribution from A=ker(eps) = 0
Sha     rank contribution from A=ker(eps) = 0

Used full 2-descent via multiplication-by-2 map
Rank = 1
Rank of S^2(E)  = 1

Searching for points (bound = 8)...done:
  found points of rank 0
  and regulator 1
Processing points found during 2-descent...done:
2-descent increases rank to 1,   now regulator = 20.2460145951678
Saturating (bound = 100)...done:
  points were already saturated.
Transferring points from minimal curve [1,-1,1,27268,-27515429] back to original curve [0,72729,0,1763605440,14256986376960]

Generator 1 is [-282621828033:13580911254862:17779581]; height 20.2460145951678

Regulator = 20.2460145951678

The rank and full Mordell-Weil basis have been determined unconditionally.
 (186.202 seconds)

[MAGMA Calculator(4-descent)による計算]
--------(実行するプログラム)-----------------------
SetClassGroupBounds("GRH");
E:=EllipticCurve([0, 72729, 0, 1763605440, 14256986376960]);
td:=TwoDescent(E:RemoveTorsion);
#td;  // td;
fd:=FourDescent(td[1]:RemoveTorsion);
#fd;  // fd;
FD:=fd[1];
pts:=PointsQI(FD,10*10^2);
pts;
F,m:=AssociatedEllipticCurve(FD);
F; IsIsomorphic(F,E); Isomorphism(F,E);
for I:=1 to #pts do
 P:=m(pts[I]); P; printf "height "; Height(P);
 IsPoint(F,P[1]);
end for;
---------(実行結果)---------------------------------
1
1
[ (-19/3 : 0 : 26/3 : 1), (-19/3 : 0 : 26/3 : 1) ]
Elliptic Curve defined by y^2 + x*y + y = x^3 - x^2 + 27268*x - 27515429 over
Rational Field
true
Elliptic curve isomorphism from: CrvEll: F to CrvEll: E
Taking (x : y : 1) to (4*x - 24244 : 8*y + 4*x + 4 : 1)
(568683271/272484 : -13729408706917/142236648 : 1)
height 20.2460145951678225004891922113
true (568683271/272484 : 13432413802807/142236648 : 1)
(568683271/272484 : -13729408706917/142236648 : 1)
height 20.2460145951678225004891922113
true (568683271/272484 : 13432413802807/142236648 : 1)

[pari/gpのellheegner()関数による計算]
-bash-3.1$ gp
Reading GPRC: /home/his/.gprc
GPRC Done.

                  GP/PARI CALCULATOR Version 2.13.1 (released)
         amd64 running netbsd (x86-64/GMP-6.1.2 kernel) 64-bit version
            compiled: Feb  3 2021, gcc version 5.5.0 (nb2 20180327)
                            threading engine: single
                 (readline v7.0 enabled, extended help enabled)

                     Copyright (C) 2000-2020 The PARI Group

PARI/GP is free software, covered by the GNU General Public License, and comes
WITHOUT ANY WARRANTY WHATSOEVER.

Type ? for help, \q to quit.
Type ?17 for how to get moral (and possibly technical) support.

parisize = 2048000000, primelimit = 100000000
gp> e2020=ellinit([0,72729,0,1763605440,14256986376960])
%1 = [0, 72729, 0, 1763605440, 14256986376960, 290916, 3527210880, 57027945507840, 1037281300842101760, -20942064, 1521116190144, -1344316565891363880960, 113921896707333/16674403627220, Vecsmall([1]), [Vecsmall([128, -1])], [0, 0, 0, 0, 0, 0, 0, 0]]
gp> P=ellheegner(e2020)
time = 2min, 51,930 ms.
%2 = [-1082842253/68121, 13580911254862/17779581]
gp> ellheight(e2020,P)
time = 1 ms.
%3 = 20.246014595167822500489192211290028915
gp> quit
Goodbye!

■楕円曲線E2020の有理点をいくつか求めると、以下のようになる。

[pari/gpによる計算]
gp> z(x,y)=[4*x - 24244, 8*y + 4*x + 4]
%37 = (x,y)->[4*x-24244,8*y+4*x+4]
gp> P=z(568683271/272484, 13432413802807/142236648)
%38 = [-1082842253/68121, 13580911254862/17779581]
gp> for(i=1,4,Q=ellpow(e2020,P,i);print("[",i,"]P=",Q,"\n"))
[1]P=[-1082842253/68121, 13580911254862/17779581]

[2]P=[-1112622404430980853663726332713739759/50257262456230977111332841265296, 32804875670063384490451277408322939942621896292926815/356285577934458735689657577912103182620595697344]

[3]P=[-154991543715718961620725237682556978184402217389586438770817389701509986306791213/6705327979725305640378549279668335916115385566149261598042390624857334174681, 7120544742110966879607602133202673305723102545247347199878870172919117180530207938166821341896330856111990575691541718/549072936655004051917695083812660869046622416348672679388140159581802740249289946880621393314988205064272267427171]

[4]P=[-4953933739573094497605867250528653360536839210350479646891644789527595306425386758288524033758719211140835753843484423873785800737353887732159/216339395669139278568086108450896610079331702701114080626892735844883473027363480912216629566454912916842819580577999064720107531894862400, -3563497144575366950081475713274043002542149197137422278187125349773849899230587786731776803387183433237746441174935373143752004468080125846041950686341996936031166966028872459435657028065714743056529131411766911/100624426531817741647571764545673646591150425586385624236243461625531686493122249726329959817163680654538618732624142657522791902024174657408893744528325102242125475383061692405031374102263136098685397568000]

■楕円曲線E2020の有理点を有理変換ψ・ψ2020で写すと、以下のように楕円曲線C2020の有理点を求めることができる。
[pari/gpによる計算]
gp> g1(P)=local(x,y);x=P[1];y=P[2];[(36*x+y)/(6*x*(x-12)),(36*x-y)/(6*x*(x-12))]
%79 = (P)->local(x,y);x=P[1];y=P[2];[(36*x+y)/(6*x*(x-12)),(36*x-y)/(6*x*(x-12))]
gp> gn(P,n)=local(x,y);x=P[1];y=P[2];[-144*(n+1)/x,1728*(n+1)*y/x^2]
%80 = (P,n)->local(x,y);x=P[1];y=P[2];[-144*(n+1)/x,1728*(n+1)*y/x^2]
gp> gg(P)=g1(gn(P,2020))
%81 = (P)->g1(gn(P,2020))
gp> for(i=1,4,Q=gg(ellpow(e2020,P,i));print(Q,"\n"))
[14428776738961/891411422274, -12733045770763/891411422274]

[56467802997079265910441260193641899448613436516558843/4517972362367196707693487906508039297505040664656072, -9141948343047503070461294623003980436630356069294787/4517972362367196707693487906508039297505040664656072]

[45195488572749019960702685233351358888552207516656432797086339825485806096199383580629349610087467845000679413876075667/3746813497266843440457480835450537211053911104909887728712111595933902507816327465567923647668289717535008501493438654, 30954399088527086201487480966946012277106002426161738397328599479647571735138967704295706926294806132776698262492992231/3746813497266843440457480835450537211053911104909887728712111595933902507816327465567923647668289717535008501493438654]

[3349068272546322242416067635863776056853968040194504454063111711240174573359638227773769637388449558196174922575181248798008447560764809315466432491877023890714272550285771294595441410814669130589302488643798729/816930719254484837626375904294425543979246253262291489363784466026317819806752773166632231363855516535380761521371002497935591189651832425866180197367600623965283141310785477178728430607745712700246330803684720, 10476062561697056142579019062411862061938266434469349010437362410787874371820813801237323244162816424671667804925051995085512456496925061007550333864561017762776606482343516213466755466946098616702360751467332551/816930719254484837626375904294425543979246253262291489363784466026317819806752773166632231363855516535380761521371002497935591189651832425866180197367600623965283141310785477178728430607745712700246330803684720]

これらの有理点が楕円曲線C2020上にあることは、以下のように簡単に確認できる。

[pari/gpによる計算]
gp> cc(x,y)=x^3+y^3-3*x*y
%83 = (x,y)->x^3+y^3-3*x*y
gp> cc(14428776738961/891411422274, -12733045770763/891411422274)
%84 = 2020
gp> cc(56467802997079265910441260193641899448613436516558843/4517972362367196707693487906508039297505040664656072, -9141948343047503070461294623003980436630356069294787/4517972362367196707693487906508039297505040664656072)
%85 = 2020
gp> cc(45195488572749019960702685233351358888552207516656432797086339825485806096199383580629349610087467845000679413876075667/3746813497266843440457480835450537211053911104909887728712111595933902507816327465567923647668289717535008501493438654, 30954399088527086201487480966946012277106002426161738397328599479647571735138967704295706926294806132776698262492992231/3746813497266843440457480835450537211053911104909887728712111595933902507816327465567923647668289717535008501493438654)
%86 = 2020
gp> cc(3349068272546322242416067635863776056853968040194504454063111711240174573359638227773769637388449558196174922575181248798008447560764809315466432491877023890714272550285771294595441410814669130589302488643798729/816930719254484837626375904294425543979246253262291489363784466026317819806752773166632231363855516535380761521371002497935591189651832425866180197367600623965283141310785477178728430607745712700246330803684720, 10476062561697056142579019062411862061938266434469349010437362410787874371820813801237323244162816424671667804925051995085512456496925061007550333864561017762776606482343516213466755466946098616702360751467332551/816930719254484837626375904294425543979246253262291489363784466026317819806752773166632231363855516535380761521371002497935591189651832425866180197367600623965283141310785477178728430607745712700246330803684720)
%87 = 2020


[参考文献]


Last Update: 2021.06.20
H.Nakao

Homeに戻る[Homeに戻る]  一覧に戻る[一覧に戻る]