Skip to content

add base_change_label search option to ecnf#6878

Open
AndrewVSutherland wants to merge 4 commits intoLMFDB:mainfrom
AndrewVSutherland:bcsearch
Open

add base_change_label search option to ecnf#6878
AndrewVSutherland wants to merge 4 commits intoLMFDB:mainfrom
AndrewVSutherland:bcsearch

Conversation

@AndrewVSutherland
Copy link
Member

@AndrewVSutherland AndrewVSutherland commented Feb 14, 2026

This PR adds the ability to seach for elliptic curves over number fields that are base changes of a specific curve (which could be defined over Q or any number field, it simply checks whether the specified label is one of the labels listed in the base_change column). This is meant to facilitate the implemenation of #965 via #6854, as well as providing a way to access this capabilitiy directly from the ECNF search page.

@JohnCremona I think this will let you do a cleaner implementation of (2) in #6854 that avoids searching the ECNF table preemptively; the search for base changes will only get triggered if the user clicks the base change link in the related objects box.

@JohnCremona
Copy link
Member

I will not be able to test this properly until Monday but have had a quick look.

This solves a different problem from the one I was solving, and is certainly useful, but I thought that we also wanted to show on a curve's home page which other curves in the database are base changes of it. That's what I was implementing. If we want only this, that's fine.

I have not yet worked out the Q curve logic but certainly curves which are based changes from Q are Q curves so I suppose the idea is that getting the search to look in the Qcurve column as well as the base change column will be faster.

@AndrewVSutherland
Copy link
Member Author

@JohnCremona Sorry if I wasn't clear in what I wrote above, I went ahead and added a "Base changes" link to the ECQ related objects pages in this PR so you can better understand what I meant. The link will only appear for curves that have a base change in the ECNF database -- this does require one DB lookup, but it is just checking existence, and is quite quick (especially because it includes the constraint q_curve=True, which as you surmised, speeds up the $contains search by reducing the number of rows it needs to check).

If you are happy with this you could just this PR and close #8654 (but feel free to modify either or tell me what to change in this one).

@JohnCremona
Copy link
Member

JohnCremona commented Feb 16, 2026

Sorry if I misunderstood. This is really good. Adding the extra search option on the ecnf search page is useful in itself, but also makes what I was trying to do on ECQ pages possible (or at least easier) since it makes it easy to put the appropriate link on an ECQ home page easily and without searching in advance.

One caveat before this goes live: because I have not yet succeeded in doing the simple rewrite on ec_nfcurves to make all the labels listed in the base_change column lmfdb labels and not Clabels, the results one sees using this are partly random (e.g. if you put 11.a1 into the search you may right now miss any ecnf curves which have 11a2 in their base_change column instead.

I just tried to do the rewrite, it mostly worked OK but ended with an error message and right now of the 43172 curves in ec_nfcurves which have any base-change labels from Q (which do not contain ? having too large a conductor), 15006 have LMFDB labels and 28166 have Clabels.

When the rewrite is succesfully done I think we should add a line of code in the ecq search to convert any Clabels which a user might have entered into LMFDB labels before doing the search. There are people who use Clabels and will be unpleasntly surprised if we show an empty list of curves which are base-changes of '11a1' for example.

Copy link
Member

@JohnCremona JohnCremona left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just one easy change suggested, apart from delaying the release of this as explained in a comment.

Copy link
Member

@JohnCremona JohnCremona left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

Comments