Jump to content

Wikipedia:Reference desk/Mathematics

From Wikipedia, the free encyclopedia
Welcome to the mathematics section
of the Wikipedia reference desk.
Select a section:
Want a faster answer?

Main page: Help searching Wikipedia

   

How can I get my question answered?

  • Select the section of the desk that best fits the general topic of your question (see the navigation column to the right).
  • Post your question to only one section, providing a short header that gives the topic of your question.
  • Type '~~~~' (that is, four tilde characters) at the end – this signs and dates your contribution so we know who wrote what and when.
  • Don't post personal contact information – it will be removed. Any answers will be provided here.
  • Please be as specific as possible, and include all relevant context – the usefulness of answers may depend on the context.
  • Note:
    • We don't answer (and may remove) questions that require medical diagnosis or legal advice.
    • We don't answer requests for opinions, predictions or debate.
    • We don't do your homework for you, though we'll help you past the stuck point.
    • We don't conduct original research or provide a free source of ideas, but we'll help you find information you need.



How do I answer a question?

Main page: Wikipedia:Reference desk/Guidelines

  • The best answers address the question directly, and back up facts with wikilinks and links to sources. Do not edit others' comments and do not give any medical or legal advice.
See also:

June 28

[edit]

Why the minimal embedding field can’t be smaller than the embedding degree when the characteristic from the binary curve is large ?

[edit]

I was reading this paper that describe how to find an embedding field which is smaller than the one from the embedding degree.
But why the method doesn’t work when the characteristic is large (I fail to understand the paper on such point) ? 2A01:E0A:ACF:90B0:0:0:A03F:E788 (talk) 18:57, 28 June 2025 (UTC)[reply]

June 29

[edit]

Euclidean plane equipped with circle inversion, is it a group?

[edit]

I am writing a draft on cylindrical mirrors, and I came across this relevant question (the answer needs a source to be mentioned there!): Given the Euclidean plane equipped with circle inversion transformation, is it a group? I am confused, needing to sleep awhile. MathKeduor7 (talk) 07:37, 29 June 2025 (UTC)[reply]

If you keep the centre fixed, the composition of two inversions with different radii is a scaling, not a circle inversion. Other combinations do other fun things. I don't know whether all circle inversions generate the entire "extended Möbius group" though; you might need to include the limit case of infinitely large circles = straight lines. —Kusma (talk) 09:14, 29 June 2025 (UTC)[reply]
@Kusma: Tysm!!! MathKeduor7 (talk) 11:36, 29 June 2025 (UTC)[reply]
The identity transformation is not an inversion, so the set of inversions does not by itself form a group. They are the generating set of a group of transformations acting on the plane plus a point at infinity, but that is somewhat trivially true.  ​‑‑Lambiam 20:58, 29 June 2025 (UTC)[reply]
@Lambiam: Tysm too!!! MathKeduor7 (talk) 06:04, 5 July 2025 (UTC)[reply]

July 1

[edit]

In SageMath, how to declare a specific point over a binary curve ?

[edit]

I’ve a curve defined as over GF(21888242871839275222246405745257275088696311157297823662689037894645226208583^12,'a')

How to declare a point defined like this : ((0, 0, 16260673061341949275257563295988632869519996389676903622179081103440260644990, 0, 0, 0, 0, 0, 11559732032986387107991004021392285783925812861821192530917403151452391805634, 0, 0, 0), (0, 0, 0, 15530828784031078730107954109694902500959150953518636601196686752670329677317, 0, 0, 0, 0, 0, 4082367875863433681332203403145435568316851327593401208105741076214120093531, 0, 0))
The same problem arise for any binary curve as they are defined as polynomials. 2A01:E0A:ACF:90B0:0:0:A03F:E788 (talk) 21:34, 1 July 2025 (UTC)[reply]

ec = EllipticCurve([GF(q)(0),3]); point = ec([x,y,z]), where (x,y,z) are the homogeneous coordinates of the point (elements of GF(q)). Tito Omburo (talk) 22:24, 1 July 2025 (UTC)[reply]
Yes, but what about the case where x, y and y aren’t Integers but polynomials as result of the finite field being a prime power ?
Also, I don’t want to declare a Jacobian : because rephrased I’ve and so I can’t do point = ec([x,y]) 2A01:E0A:ACF:90B0:0:0:A03F:E788 (talk) 10:15, 2 July 2025 (UTC)[reply]
If you're working with the builtin GF(q), then let a=GF(q).gen() and write x,y as polynomials in a. If you want a different GF(q), you can first declare it as F.<a>=GF(q, modulus=[the polynomial defining the field]). Tito Omburo (talk) 11:04, 2 July 2025 (UTC)[reply]
Yes I’m using the builtin GF(q), but then for example how do I use .gen() to declare a polynomial as . I’m meaning it’s a static value coming from py_ecc, an unrelated library that doesn’t support elliptic curve scalar multiplication. Hence I to input such resulting input value in SageMath in order to multiply it. 2A01:E0A:ACF:90B0:0:0:A03F:E788 (talk) 20:10, 2 July 2025 (UTC)[reply]
An element of GF(q) is by definition a polynomial in the generator, not a list of integers. You need to know: what is the minimal polynomial of the instance of GF(q) used by the library, and how it codes the coefficients into lists of integers. There isn't a canonical way to do either. Tito Omburo (talk) 20:38, 2 July 2025 (UTC)[reply]
Yes, more exactly, the exact Sagemath representation would be 0*z12^11 + 0*z12^10 + 16260673061341949275257563295988632869519996389676903622179081103440260644990*z12^9 + 0*z12^8 + 0*z12^7 + 0*z12^6 + 0*z12^5 + 0*z12^4 + 11559732032986387107991004021392285783925812861821192530917403151452391805634*z12^3 + 0*z12^2 + 0*z12 + 0. Or rather that’s how SageMath would printf such variable if requested. My problem is instead of printing, how do I set a variable to a such value ? 2A01:E0A:ACF:90B0:0:0:A03F:E788 (talk) 22:37, 2 July 2025 (UTC)[reply]
These are polynomials in the generator. Use z12 = GF(q).gen() to bring the generator into scope. Alternatively, x = GF(q)(x) may also work without needing to do it manually. But again, a warning is that there isn't a guarantee that the library you're using has the same minimal polynomial for GF(q) that sage uses. So if you try this and get something unexpected, like (x,y) is not a point of the elliptic curve, this could be a reason, and you have to use a custom modulus for GF(q). Tito Omburo (talk) 09:44, 3 July 2025 (UTC)[reply]
Yes, but what to do after that ? where I put the value ? Should I convert it to a single Integer ? If yes how ? Please give me the exact code for setting a variable to such finite field element… I don’t care if SageMath modify it as a result. 2A01:E0A:ACF:90B0:0:0:A03F:E788 (talk) 22:13, 3 July 2025 (UTC)[reply]

So, in the following, I have assumed that the point has coordinates

Note that these have terms reversed from those you stated above (which are incorrect, since the value of (X,Y) you offered above never lies on the curve in a degree 12 extension field of GF(p) for p as below). The modulus for the finite field such that these points lie on the curve is . The code is:

(X,Y) = ((0, 0, 16260673061341949275257563295988632869519996389676903622179081103440260644990, 0, 0, 0, 0, 0, 11559732032986387107991004021392285783925812861821192530917403151452391805634, 0, 0, 0), (0, 0, 0, 15530828784031078730107954109694902500959150953518636601196686752670329677317, 0, 0, 0, 0, 0, 4082367875863433681332203403145435568316851327593401208105741076214120093531, 0, 0))

p = 21888242871839275222246405745257275088696311157297823662689037894645226208583

F.<z12>=GF(p^12,modulus=x^12 - 18*x^6 + 82)

XX=sum([xk*z12^k for (xk,k) in zip(X,range(len(X)))])

YY=sum([xk*z12^k for (xk,k) in zip(Y,range(len(Y)))])

print("X=", XX)

print("Y=", YY)

ec = EllipticCurve([F(0),F(3)])

pt = ec([XX,YY,1])

print(pt)

Tito Omburo (talk) 11:28, 4 July 2025 (UTC)[reply]

Thanks but when you declare X= How to tell X belongs to the underlying GF(q) finite field ? 2A01:E0A:ACF:90B0:0:0:A03F:E788 (talk) 23:33, 4 July 2025 (UTC)[reply]
Any polynomial in the generator belongs to the underlying finite field. Run the code in Sage (or even colab), and it prints the elements of GF(q), and the point of the elliptic curve. (Incidentaly, ec([XX,YY,1]) includes a check that the point lies on the curve, but it can be verified directly, e.g., assert(YY^2==XX^3+3).) Also, fwiw, what I've been trying to emphasize is indentifting a particular "element of GF(q)" is not particularly meaningful in this context. You need to know the modulus before you can make sense of this question. I have given you the unique modulus such that the point you gave (suitably interpreted) belongs to the curve over a 12th degree extension field of GF(p). Tito Omburo (talk) 23:38, 4 July 2025 (UTC)[reply]
In my case the curve is Y^2 = X^3 + 3. And the point is simply the generator resulting from https://github.com/ethereum/py_ecc/blob/04151f01f59f902ab932a51e0ca0ebce3883fc51/py_ecc/bn128/bn128_curve.py#L135 where the input is the generator on the twisted FQ2 curve (defined over Y^2 = X^3 + 3/(i+9)). As an alternative, any ideas on how to convert the Fq2 curve to SageMath and implement the twist function in sagemath ? 2A01:E0A:ACF:90B0:0:0:A03F:E788 (talk) 00:11, 5 July 2025 (UTC)[reply]

F2.<z2> = GF(p^2,modulus=x^2+1)

ec = EllipticCurve([F2(0),F2(3/(9+z2))])

X,Y,_ = ec.random_point()

G2.<w2> = GF(p^2,modulus=x^2-18*x+82)

F12.<z12> = GF(p^12,modulus=x^12-18*x^6+82)

X1=(X[0]-X[1]*9) + (X[1])*w2

Y1=(Y[0]-Y[1]*9) + (Y[1])*w2

print(Y1^2-X1^3-3/w2)

X2=X1[0] + X1[1]*z12^6

Y2=Y1[0] + Y1[1]*z12^6

print(Y2^2-X2^3-3/z12^6)

X3 = X2*z12^2

Y3 = Y2*z12^3

print(Y3^2-X3^3-3) - Tito Omburo (talk) 15:45, 5 July 2025 (UTC)[reply]

Thank you, but what’s the purpose of F12.<z12> = GF(p^12,modulus=x^12-18*x^6+82) ? The curve over F12 is just without the fractional part and the underlying field is plain GF(p^12) ? 2A01:E0A:ACF:90B0:0:0:A03F:E788 (talk) 22:06, 5 July 2025 (UTC)[reply]
There is no "plain GF(p^12)". This refers to a collection of fields that are isomorphic. In sage, try F=GF(p^12). Does this code work? Why not? Tito Omburo (talk) 23:51, 5 July 2025 (UTC)[reply]

July 2

[edit]

Square is to Rectangle as Cube is to ???

[edit]

I may have brainfog (it has been 34℃ here), but I'm looking for the technical term for a box-like shape, i.e. 3D, all sides are rectangles, and all angles between vertices are right. Basically a cube, except that the dimensions may be different in each dimension. Can someone please help and unfog me? --Stephan Schulz (talk) 07:43, 2 July 2025 (UTC)[reply]

After some defogging, it seems to be rectangular cuboid, which may explain my confusion, because in my native German we do have the convenient de:Quader. --Stephan Schulz (talk) 08:03, 2 July 2025 (UTC)[reply]
A trick I often employ (only going from English to German) is to look up the word in Wikipedia, then click on the language you want in the "languages" panel on the lower left. (In German Wikipedia this appears as a "Sprachen" menu on the upper rights, though I imagine some of these things depend on how you've set your preferences.) In this case you could have used Wiktionary as well, since both wikt:Quader and wikt:de:Quader exist and contain an English definition or translation. Anyway, in English you can also use "Rectangular parallelepiped", which redirects on Wikipedia to "Rectangular cuboid". Its a mouthful in English either way. --RDBury (talk) 14:21, 2 July 2025 (UTC)[reply]
I always thought the answer was rectangular prism. Can anyone show the difference between a rectangular prism and a rectangular cuboid by including a figure that's a rectangular cuboid but not a rectangular prism, as well as the reverse?? Georgia guy (talk) 16:29, 2 July 2025 (UTC)[reply]
As a footnote in our article Rectangular cuboid notes, the term rectangular prism is ambiguous.
Take rectangle ABCD with vertices A = (0,0,0), B = (4,0,0), C = (4,2,0), D = (0,2,0), and rectangle PQRS with vertices P = (1,1,1), Q = (5,1,1), R = (5,3,1), S = (1,3,1). They are the two bases of a prism with the additional edges AP, BQ, CR and DS. Since its bases are rectangles, this is (at least under one definition) a rectangular prism. It is not a rectangular cuboid, but any rectangular cuboid is also a rectangular prism – and under the more general definition even in three different ways, since any pair of opposite faces can serve as the bases.  ​‑‑Lambiam 20:05, 2 July 2025 (UTC)[reply]
The usual way to disambiguate this is right rectangular prism. 173.79.19.248 (talk) 11:10, 3 July 2025 (UTC)[reply]
My own two cents: when teaching this, I have always referred to it as a "rectangular solid". Perhaps polytope connoisseurs would fault this, but it seems good enough for freshman calculus. Tito Omburo (talk) 20:01, 4 July 2025 (UTC)[reply]

July 3

[edit]

Geometry / atmospherics query

[edit]

Tonight I can see some noctilucent clouds, which are typically 80 km high in the upper atmosphere. From my position, they're low down in the sky, between 2° and 5° above the north-north-east horizon. What's the horizontal distance to them (nearest, and furthest), taking into account the curvature of the Earth? Thanks! - MPF (talk) 00:52, 3 July 2025 (UTC)[reply]

We'll take kilometres as the unit, using and . The intersection of Earth with the plane formed by the vertical and the line of sight can be approximated by a circle with centre and radius so that the observer is at the origin while the clouds lie on a concentric circle having a radius of The location of the clouds satisfies the equation in which is the horizontal distance and the height above the horizontal. Letting be the angle of the line of sight with the horizontal, and putting the equation for the line of sight is given by Eliminating gives us:
Solving this quadratic equation for gives the positive root
Plugging in results in 597 km, while gives us 814 km. For we get 1013 km.  ​‑‑Lambiam 13:02, 3 July 2025 (UTC)[reply]
@Lambiam brilliant, many thanks! - MPF (talk) 17:34, 3 July 2025 (UTC)[reply]

July 4

[edit]

unsolvable equation

[edit]

Hello how to resolve the equation (z≥y)² + X = 0 + 1‰, I tried but it seems impossible, or at least very difficult. 176.183.128.157 (talk) 13:31, 4 July 2025 (UTC)[reply]

This is not a well-formed equation. It is a meaningless sequence of symbols. Where did this come from?  ​‑‑Lambiam 15:29, 4 July 2025 (UTC)[reply]

Condition for a matrix derivative to be exact

[edit]

Consider the free (non-commutative) algebra generated by . Define a derivation on on generators by . Obviously there exists a (non-unique) linear operator such that if and only if for some . But is there a canonical choice of ? Does it have something resembling a formula? (For example, we would have whereas .) Tito Omburo (talk) 19:59, 4 July 2025 (UTC)[reply]

What kind of object is suppose to be here? Also, algebra over what? 173.79.19.248 (talk) 15:56, 5 July 2025 (UTC)[reply]
Free algebra over rationals generated by symbols u,u', etc. (So the linear span of all finite words in the ). Tito Omburo (talk) 16:06, 5 July 2025 (UTC)[reply]
I see, just noncommuting formal symbols. And you want ? Or you don't care what the codomain of L is? 173.79.19.248 (talk) 18:31, 5 July 2025 (UTC)[reply]
Don't care about codomain, but would be preferable. Tito Omburo (talk) 19:38, 5 July 2025 (UTC)[reply]
I think the following thing (or something very much like it) works: for each monomial , define , and extend by linearity. (In particular we get for because it's an empty sum, and we get that L is the identity on monomials whose first factor is u.) The key idea (to my mind) is that although the whole thing is infinite-dimensional, the only relations to worry about take place between monomials with a fixed number of factors and fixed "degree" (total number of derivatives applied). 173.79.19.248 (talk) 21:15, 5 July 2025 (UTC)[reply]
Anyhow to prove that this works, go as follows: let be the space spanned by the monomials of length m having total "degree" . Then by standard combinatorics. The image of my map L when restricted to is at least because there are this many monomials whose first factor is , all of which are fixed by L. Then by rank-nullity it would suffice to show that is a subspace of of dimension , and that the restriction of L to this subset is identically 0. I haven't carefully done this but I don't think it could be too hard. 173.79.19.248 (talk) 02:12, 6 July 2025 (UTC)[reply]

July 5

[edit]

What is currently the smallest number not appearing in any entry of any OEIS sequence?

[edit]

Interesting number paradox: " for example, the smallest natural number that does not appear in an entry of the On-Line Encyclopedia of Integer Sequences (OEIS) was originally found to be 11630 on 12 June 2009. The number fitting this definition later became 12407 from November 2009 until at least November 2011, then 13794 as of April 2012, until it appeared in sequence OEIS: A218631 as of 3 November 2012. Since November 2013, that number was 14228, at least until 14 April 2014. In May 2021, the number was 20067." But now 20067 already appears in an entry of (sequence A379570 in the OEIS), so currently what is the smallest number not appearing in an entry of an OEIS sequence? 59.126.168.120 (talk) 18:35, 5 July 2025 (UTC)[reply]

I think it is hard to tell now. Years ago you could download the database and check it. As far as I know, you can't easily download the database now. I'd like to know if you can download it. Bubba73 You talkin' to me? 20:15, 5 July 2025 (UTC)[reply]
Ran a quick Python script using OEIS's search API to check whether each successive number appears in an OEIS sequence, it appears the first value to not appear in any OEIS sequence is 20990. GalacticShoe (talk) 20:17, 5 July 2025 (UTC)[reply]
The next values up to 30000 to not appear in any sequences are 22978, 23543, 24085, 24555, 26301, 27266, 27988, 28330, 28353, 28466, 28869, 28946, 29653, 29962. GalacticShoe (talk) 21:01, 5 July 2025 (UTC)[reply]
Thanks for that. Your script accesses the OEIS files over the internet, right? I'd really like to be able to download a copy of the files. Bubba73 You talkin' to me? 00:05, 6 July 2025 (UTC)[reply]
Unfortunately my script doesn't download the whole database, it only makes a call to OEIS itself which then provides a short "sample" of the sequences containing said number (each call is capped at 10 sequences at a time so as not to overwhelm the caller, but there is an option to retrieve more sequences.) However, I did find OEIS's "compressed versions" section which contains a couple of files, one of which has all the sequences and their A-numbers, the other of which has all the sequences' names and their A-numbers.
If that is not sufficient, there should be a way to download all the entry information programmatically by querying every individual sequence entry, but given the number of network calls it would need, it seems like it would end up taking a rather long time. GalacticShoe (talk) 00:32, 6 July 2025 (UTC)[reply]
Thanks, I didn't know about those files. I just downloaded them - I think they will suffice for what I want to do. Bubba73 You talkin' to me? 02:22, 6 July 2025 (UTC)[reply]
I'm confused; doesn't every natural number appear in (sequence A000027 in the OEIS)? What do you mean by "appear"? --RDBury (talk) 02:18, 6 July 2025 (UTC)[reply]