Lattice-Point Polytopes in 3D

Lattice-Point Polytopes in 3D

ISEF Category: Mathematics

Ready to Turn This Idea Into a Real Project?

This guide was put together with the help of AI research tools to give you a solid starting point. But a competitive science fair project lives in the details: refining your research question, fine-tuning your variables, analyzing your data, and presenting your findings like a seasoned scientist.

For next steps tailored to your interests, skill level, and timeline, work one-on-one with a MehtA+ mentor. Learn more about MehtA+ Science & Engineering Research Mentorship →

Subcategory: Geometry and Topology  ·  Difficulty: Advanced  ·  Setup: Home Setup  ·  Time: Full Year

The Hook

A shape can hide a lot of secrets in its grid points. In 3D geometry, two polytopes can look different and still be the same after a change of lattice coordinates. That makes classification a real puzzle, not just a counting game.

What Is It?

This project studies convex polytopes in 3D whose corner and interior lattice points follow a special balance rule. A convex polytope is a 3D shape with flat faces, like a box with some corners cut off. Lattice points are points with whole-number coordinates, like ( (1, 2, 3) ). The goal is to sort these shapes into families, then decide when two shapes are actually the same up to a unimodular transformation, which means a grid-preserving change of coordinates.

Think of it like classifying Lego builds made from a fixed grid. Some builds look different from the outside, but if you rotate, shear, or flip the grid without tearing it, they match. SageMath can help you generate examples, measure their lattice-point structure, and compare candidates. The math side comes from proving which patterns must always happen, and which ones are just accidents in small examples.

Why This Is a Good Topic

This is a strong science fair topic because you can test a precise definition, collect a finite data set, and look for structure with code. You are not guessing at a yes or no result, you are classifying objects and checking whether a theorem matches the search results. The project connects to discrete geometry, combinatorics, and computer algebra, so you can learn how mathematicians blend proof and computation.

Research Questions

  • How does the number of lattice points affect whether a 3D convex polytope fits the balance rule?
  • What is the effect of unimodular equivalence on the classification of small lattice polytopes in Z^3?
  • Does restricting to polytopes with at most 20 lattice points produce a finite list of structural types?
  • To what extent do lattice-point-balanced polytopes share the same face or symmetry patterns?
  • Which numerical invariants best separate non-equivalent polytopes in SageMath?
  • What is the effect of changing one vertex on the lattice-point balance of a polytope?
  • To what extent does the new structural theorem match the computer-generated examples?

Basic Materials

  • Computer with SageMath installed or access to a SageMathCell notebook
  • Python notebook or script editor
  • Spreadsheet software for tracking examples
  • Graph paper for sketching lattice coordinates
  • Notebook for conjectures, invariants, and proof ideas
  • Access to a printer for saving polytope diagrams
  • Basic graphing calculator for quick checks.

Advanced Materials

  • Computer with a full SageMath installation
  • Python environment with NumPy and Matplotlib
  • SageMath polytope and lattice-point enumeration tools
  • Optional computer algebra system support for symbolic checks
  • Version control software such as Git
  • High-resolution plotting tools for 3D lattice visualizations
  • Access to published lattice polytope catalogs for comparison.

Software & Tools

  • SageMath: Enumerates lattice polytopes, tests equivalence, and computes invariants for classification work.
  • Python: Organizes searches, cleans output, and automates repeated checks.
  • Jupyter Notebook: Keeps code, notes, tables, and conjectures in one place.
  • Matplotlib: Plots lattice-point patterns and helps you compare candidate polytopes visually.
  • Git: Tracks code changes and preserves the steps behind each classification result.

Experiment Steps

  1. Define the exact balance condition and write down how you will test it on a polytope.
  2. Choose the one invariant you will use first, such as lattice-point count, symmetry, or face data.
  3. Build a search strategy that generates candidate polytopes without missing obvious cases.
  4. Plan how you will decide when two polytopes are equivalent under unimodular change of coordinates.
  5. Design a comparison table that records which examples satisfy the theorem and which ones do not.
  6. Set up a proof path that turns the strongest observed pattern into a theorem or a conjecture.

Common Pitfalls

  • Confusing geometric equality with unimodular equivalence, which makes different polytopes look identical when they are not.
  • Counting boundary and interior lattice points inconsistently, which breaks the balance test.
  • Letting the search produce duplicate polytopes under simple coordinate changes, which inflates the data set.
  • Using only one invariant, which can fail to separate non-equivalent polytopes.
  • Writing code that finds examples but does not store enough metadata to explain why each case belongs in the classification.

What Makes This Competitive

A strong version of this project does more than list examples. It connects a computer search to a clean theorem, then checks that theorem against every case in the search range. You can push the work further by proving a classification under a tighter bound, comparing two different invariants, or finding a family that forces the same structure in every dimension-3 example you test.

Project Variations

  • Study lattice-point-balanced polytopes with exactly one interior lattice point and compare their structure to the general case.
  • Classify the same kind of polytopes in 2D first, then test which patterns survive in 3D.
  • Replace SageMath enumeration with a hand-built search over a restricted family, such as simplices or prisms, and compare the results.

Learn More

  • SageMath documentation: Find the polyhedra and geometry documentation on the official SageMath site for lattice and polytope commands.
  • MIT OpenCourseWare, Combinatorial Geometry: Search the course site for lecture notes on polytopes, lattice points, and discrete geometry.
  • Discrete and Computational Geometry: Look for library or preview access to this textbook for background on polyhedra and coordinate changes.
  • arXiv: Search for preprints on lattice polytopes, unimodular equivalence, and Ehrhart theory.
  • MathSciNet or zbMATH Open: Search for review articles and papers on classification of lattice polytopes.
  • Google Scholar: Search for recent papers on 3D lattice polytope classification and structural theorems.

For next steps tailored to your interests, skill level, and timeline, work one-on-one with a MehtA+ mentor. Learn more about MehtA+ Science & Engineering Research Mentorship →

To discover more projects, visit the MehtA+ Science Fair Project Discovery Hub​ →

Shopping Cart