-
Notifications
You must be signed in to change notification settings - Fork 253
Workshop 2025
Fredrik Johansson edited this page Feb 6, 2025
·
26 revisions
January 27–31, 2025
https://flintlib.github.io/workshop2025.html
https://sagemath.zulipchat.com/#narrow/stream/408539-flint
People: Albin, Fredrik, Ricardo
- Upload more files to FLINT website, solving issues such as #2022
- Create issue templates for Github #2056
- Dynamically check for compiler pragmas when configuring and use them accordingly, hence allowing older compilers to compile FLINT #2127
- Use temporary Nemo branch for our CI #2197
- State license of FLINT on website more explicit flintwebpage#12
- Start on macrofying docstrings #2216
- Speed up some long tests #2195
- Tell compiler to optimize for code size in select files #2202
- Introduce macros for pragmas #2205
- Fix memory leaks and UBs reported by address sanitizer #2213, #2220
- Re-enable default warning -Wmaybe-uninitialized #2230
People: Albin, Fredrik, Lars, Tom, ...
-
Sage interface
- Discussed options for interoperability between Python-Flint and SageMath (Marc, Oscar)
-
Perhaps write a tool that helps downstream projects to write wrappers for structs and basic functions (see https://github.com/Nemocas/Nemo.jl/issues/1812). Would also be useful for SageMath, python-flint, PARI/GP, ...
-
Nemo.jl
- Upstream issues / missing functions found in Nemo.jl; remove workarounds there for things that have been fixed already
- Nemo.jl#1966: Remove workaround for flint#1261.
-
Nemo.jl#1997: Slightly improve performance of
fq_default
ctx type distinctions. - Nemo.jl#1999: Push matrix changes in FLINT to Nemo
-
Nemo.jl#2004: Simplify
transpose(::FqMatrix)
using flint#2203. -
Nemo.jl#2005: Improve
^(::ZZModMatrix, ::Int)
using flint#2189. - Nemo.jl#2006: Remove workaround for flint#2102.
-
Nemo.jl#2007: Add
lu(::ZZModMatrix)
. - Nemo.jl#2008: Deduplicate finalizers for FLINT objects.
- Work on 1-1-corresponding structs Nemo.jl#1875:
- Nemo.jl#2010: Generate julia struct definitions from FLINT headers (automated). These are not used anywhere.
- Upstream issues / missing functions found in Nemo.jl; remove workarounds there for things that have been fixed already
-
Work on interface for
nfloat
in Arblib.jl https://github.com/flintlib/flint/issues/2184 -
Improve the Generics interface in python-flint:
People: Marc, Fredrik, Ricardo
- Worked on divide-and-conquer evaluation code for solutions of linear ODEs with polynomial coefficients (Marc, https://github.com/flintlib/flint/pull/2186)
- Discussed the API Flint should offer for this feature and more generally for working with ODEs with polynomial coefficients (Albin, Fredrik, Marc, Pascal, Ricardo, https://github.com/flintlib/flint/issues/1881)
People: Jean, Fredrik
- Worked on #2182
- Wrote profile programs for the key functions acb_theta_ql_setup and acb_theta_ql_exact, and observed some regressions compared to the current code. Then worked on suppressing them.
- Presented the features of acb_theta.h and what will be improved once the PR is merged.
People: Fredrik, Lars, Ricardo
- Matrix powering #2189
- Matrix functions and scalar powers #2198
- Port modular polynomial composition and powering from finite fields to
gr_poly
#2190, #2222 - Add scalar addition and multiplication for
gr_poly
#2191, #2194 - Optimize
gr_mat_transpose
and use in other modules #2203, #2229 - Fix invalid write in
_gr_nmod_vec_reciprocals
#2206 - Fix various missing normalisations for nonintegral domains in
gr_poly
#2223 - Refactor rref and nullspace code and use generics in other modules #2221
- Support generic objects in
flint_printf
#2226
Some ideas for self-contained new features that could reasonably be implemented during the workshop:
- Ball arithmetic with bounded precision #2212
- Sparse linear algebra (rebase PR from last workshop, #1845)
- Quasilinear power series composition (#1911)
- Factoring over number fields (#1601)