UROP Project

Learning the Rules, Not Just the Data: Property-Preserving Neural Networks for Learning Mathematical Functions and Operators

Neural Networks, operator learning, function approximation
20240610_Mathematics_Rocio-Díaz-Martín_Headshot-1-3X4.jpg
Research Mentor: Rocio Diaz Martin,
Department, College, Affiliation: Department of Mathematics, Arts and Sciences
Contact Email: rdiazmartin@fsu.edu
Research Assistant Supervisor (if different from mentor):
Research Assistant Supervisor Email:
Faculty Collaborators:
Faculty Collaborators Email:
Looking for Research Assistants: Yes
Number of Research Assistants: 1
Relevant Majors: mathematics, computer science, physics, engineering
Project Location: On FSU Main Campus
Research Assistant Transportation Required:
Remote or In-person: Partially Remote
Approximate Weekly Hours: 5, Flexible schedule (Combination of business and outside of business. TBD between student and research mentor.)
Roundtable Times and Zoom Link:
Not participating in the roundtable

Project Description

Many mathematical functions and operators are characterized not only by their input-output behavior, but also by structural properties such as linearity, multiplicativity, symmetry, equivariance, differential identities, or commutation relations. As a simple example, the exponential function satisfies exp(x+y)=exp(x)exp(y). Moreover, this property, together with the condition exp(0)=1, essentially characterizes the exponential function. Similarly, sine and cosine satisfy trigonometric identities, while operators between function spaces, such as the Fourier transform, are linear and interact in useful ways with translations and convolutions.

Standard neural networks are universal approximators and can often learn accurate pointwise approximations from data. However, when trained only through pointwise error, they may fail to preserve the mathematical identities that characterize the object being learned, especially outside the training range.

This project is motivated by the following broad question: Can neural networks be trained or designed to behave like known mathematical functions and operators by enforcing their structural properties?

The project will investigate neural networks that approximate known mathematical functions, viewed as maps between points, and operators, viewed as maps whose inputs and outputs are functions, while also respecting their defining structure. We will compare standard neural networks trained only to minimize approximation error with structure-preserving models in which a specific identity or property is enforced either through the loss function or through the architecture.

The exponential function will serve as a first model problem. We will compare a standard neural network approximation of exp(x) with models that enforce its homomorphism property, namely that addition in the input corresponds to multiplication in the output. The project may then extend to other mathematical functions and simple operators, where one can enforce properties such as linearity, equivariance, or commutation relations.

The main goal is to understand whether incorporating mathematical structure improves generalization, extrapolation, and interpretability. The project combines numerical experiments, neural network implementation, and mathematical analysis, and is suitable for a student interested in applied mathematics, machine learning, harmonic analysis, or scientific computing.


Research Tasks: - Literature review on physics-informed neural networks, structure-preserving learning, and operator learning.
- Mathematical background review to identify the structural identities and properties that characterize functions and operators.
- Dataset generation: creation of synthetic training and testing datasets for simple functions and operators, including interpolation and extrapolation regimes.
- Development and implementation of algorithms through programming, including exploratory AI-assisted coding.
- Visualization and interpretation of results, including plots of learned functions, error curves, training behavior, and failure cases.
- Documentation and presentation of the methodology, experiments, and conclusions

Skills that research assistant(s) may need: Foundation in Calculus (required) and linear algebra (recommended).
Basic programming skills, preferably in Python (recommended).

Mentoring Philosophy

I consider students as junior colleagues, empowering them to grow as collaborators rather than passive learners. I begin by sharing the theoretical foundations (especially intuitive and proof-based thinking) while using programming as a tool for exploration.

As a young researcher, I recognize that mentoring presents a challenge for me, but it is one that excites me deeply. I view this process as a two-way learning experience: while students grow as mathematicians and programmers, I grow as a mentor and teacher. Coming from Argentina, I also bring a perspective shaped by my own educational journey, which helps me relate to students navigating diverse paths and backgrounds.

I set clear, mutual goals and maintain open, respectful communication. By inviting students to co-create the learning path, align expectations and build trust. My mentorship is inclusive: I’m attentive to different learning styles and backgrounds, ensuring all students feel valued and encouraged to share their ideas. Being approachable is essential, and I actively cultivate this quality in myself to create a welcoming and supportive environment for everybody.

I guide them to develop mathematical intuition by asking guiding questions and encouraging reflection, helping them formulate logical results and rigorous proofs in their own words. We periodically assess progress, celebrate small victories, and iterate our process to strengthen understanding and confidence.

Ultimately, I aspire for students to become confident, independent thinkers: capable programmers, insightful mathematicians, and critical collaborators who continue learning beyond our time together.

Additional Information


Link to Publications

https://rociodm.github.io/