Skip to content
View natemacfadden's full-sized avatar
📐
📐

Block or report natemacfadden

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
natemacfadden/README.md

Nate MacFadden

See my first bonsai 'Paco'
(named after one of my favorite
mathematicians). I've grown quite
fond of these trees — I now have
4-5, including a Japanese maple,
redwood, and spruce.

Ph.D. candidate at Cornell. I build efficient ML for hard combinatorial problems and high-performance algorithms for computational geometry (regular triangulations ❤️). Most recent work: dualGNN, a symmetry-aware GNN ~1000x smaller than prior learned baselines on a combinatorial sampling task. Lead maintainer of CYTools, the standard toolkit in my subfield.

Particularly interested in: efficient, symmetry-aware architectures for problems in geometry, combinatorics. Looking for research scientist / research engineer / fellow roles in industry (AI/ML).

Stack: C, C++, Cython, Python (PyTorch, NumPy, Numba)

Machine Learning

  • dualGNN — Autoregressive GNN for combinatorial sampling (triangulations) under local (validity, fineness) and global (regularity) constraints out of a large population. We use signed-circuit edge features from oriented matroid theory which we show are provably necessary (sign-only features fail) and empirically sufficient for determining regularity, and invariant under the problem's symmetries. Pointer-Network-style decoding, trained with cross-entropy then REINFORCE-tuned for uniformity. Has ~92k parameters (~1000x smaller than CYTransformer) and trains in ~7.5h on a single RTX 5060 Ti. It is the only sampler we tested consistent with uniform sampling across all diagnostics (divergence from uniformity, collision counts, sample autocorrelation); transfers zero-shot to unseen instances. Applied to Calabi-Yau enumeration up to $h^{1,1}=128$.

Optimization

  • fanroots — Library for optimization over $\sim200$-dimensional piecewise-smooth functions whose analytic form changes across cone boundaries. Specifically, these are functions of Kähler moduli space in string theory, finding special points to build certain desired physics into, as in Candidate de Sitter Vacua.
  • The DNA of Calabi-Yau Hypersurfaces (Fortschritte der Physik, 2025; code) — Custom genetic algorithm with hyperparameters tuned by Bayesian optimization; combinatorial optimization over Calabi-Yau search spaces up to ~$10^{36}$ candidates, substantially outperforming MCMC, simulated annealing, and best-first search on both maximization and inverse problems. Built on the NTFE encoding, which eliminates the search space's exponential redundancy.

Systems/Kernels

  • pfvs (paper in preparation) — C/Cython algorithm (with some Python prep) for generating (coni-)PFVs orders of magnitude faster than previous methods, with significantly better scaling.
  • latticepts — High-performance C/Cython implementation of Kannan's lattice point enumeration algorithm, substantially faster than Normaliz and OR-Tools CP-SAT in some cases. For an example of the performance: latticepts generates ~107M lattice points in a polyhedron of interest (the strict interior of certain 7D cone used in Candidate de Sitter Vacua) in only ~23s on my laptop. Integrated into CYTools.

Other Software

  • NTFE algorithm (code in CYTools)— Simple algorithm for generating regular triangulations of reflexive polytopes with distinct 2-face restrictions, exponentially quicker than previous methods. Such triangulations lead to potentially-inequivalent Calabi-Yau manifolds via Batyrev's construction. This algorithm is used in most CYTools workflows. Bounds on NTFE counts established in this work.
  • regfans — Python package for regular triangulations of integral vector configurations, associated with Calabi-Yau Threefolds from Vex Triangulations. Integrated into CYTools.
  • FastAerosol — C++ 'advanced example' contributed to GEANT4 for stochastic simulation of particle transport through aerosol geometries via voxelized droplet generation, with attention to time and memory efficiency. Associated with this paper.

CYTools

Lead developer and maintainer (BDFL) of CYTools, the standard toolkit for studying Batyrevian CY compactifications in string theory. Invited to present this software at multiple conferences. Major contributions include:

  1. a generalization to vex triangulations via regfans, and
  2. a significantly faster intersection number kernel.

In progress: an agent harness for CYTools with specialized tool definitions to enable agents (even weaker open-source ones) to carry out nontrivial computations.

Selected papers

  • Sampling Triangulations and Calabi-Yau Threefolds with Autoregressive GNNs (2026) - Nate MacFadden. arXiv:2605.27770. [code]
  • The DNA of Calabi-Yau Hypersurfaces: A Genetic Algorithm for Polytope Triangulations (2025) - Nate MacFadden, Andreas Schachner, Elijah Sheridan. Fortschritte der Physik 73 (2025). doi:10.1002/prop.70060, arXiv:2405.08871
  • Further Bounding the Kreuzer-Skarke Landscape (2026) - Nate MacFadden, Stepan Yu. Orevkov, Michael Stepniczka. arXiv:2602.16909

For fun

Pinned Loading

  1. dualGNN dualGNN Public

    Demo code from the dualGNN paper. Includes inference and training, as well as grow2d and pushing

    Python 2

  2. latticepts latticepts Public

    For finding lattice points in convex polyhedra

    Python 1

  3. LiamMcAllisterGroup/cytools LiamMcAllisterGroup/cytools Public

    A software package for analyzing Calabi-Yau manifolds.

    Python 43 17

  4. regfans regfans Public

    For working with regular triangulations of integral vector configurations

    Python 4 1