Papers › Physics-informed Neural Networks for Functional Differential Equations: Cylindrical...

Physics-informed Neural Networks for Functional Differential Equations: Cylindrical Approximation and Its Convergence Guarantees

23 Oct 2024arXiv:2410.18153archive 2025-07-28

Taiki Miyagawa, Takeru Yokota

We propose the first learning scheme for functional differential equations (FDEs). FDEs play a fundamental role in physics, mathematics, and optimal control. However, the numerical analysis of FDEs has faced challenges due to its unrealistic computational costs and has been a long standing problem over decades. Thus, numerical approximations of FDEs have been developed, but they often oversimplify the solutions. To tackle these two issues, we propose a hybrid approach combining physics-informed neural networks (PINNs) with the \textit{cylindrical approximation}. The cylindrical approximation expands functions and functional derivatives with an orthonormal basis and transforms FDEs into high-dimensional PDEs. To validate the reliability of the cylindrical approximation for FDE applications, we prove the convergence theorems of approximated functional derivatives and solutions. Then, the derived high-dimensional PDEs are numerically solved with PINNs. Through the capabilities of PINNs, our approach can handle a broader class of functional derivatives more efficiently than conventional discretization-based methods, improving the scalability of the cylindrical approximation. As a proof of concept, we conduct experiments on two FDEs and demonstrate that our model can successfully achieve typical L¹ relative error orders of PINNs ∼10⁻³. Overall, our work provides a strong backbone for physicists, mathematicians, and machine learning experts to analyze previously challenging FDEs, thereby democratizing their numerical analysis, which has received limited attention. Code is available at \url{https://github.com/TaikiMiyagawa/FunctionalPINN}.

PaperPDFCodeCode Syntology ran

In Syntology Open this paper in Syntology's Atlas, the map of the papers in Syntology's graph and their citations.

For agents, Syntology's MCP tool lists every function and class Syntology harvested from this paper and whether it ran (how to connect): get_harvested_code_for_paper(arxiv_id="2410.18153")

Code

Syntology Ran 27 of 34 code samples harvested from 1 repository linked to this paper; 7 have no recorded run. Of those that ran: 1 ran · honoured contract; 13 ran · our draft was wrong; 13 ran with no contract checked.

By repository: official repository: 34 samples from 1 repository, 27 ran. The run record, sample by sample. “Ran” means executed on a synthesized input, not that the code is correct or reproduces the paper.

taikimiyagawa/functionalpinn officialmentioned in papermentioned on GitHubpytorchMIT report

Repository list and official/mentioned flags are the archive's, frozen 2025-07-28. Reachability, where shown, is from one Syntology probe window (2026-09-16 to 2026-09-18); repositories not probed show nothing. GitHub stars are not tracked.

Code Syntology ran Syntology

34 samples harvested; 27 ran; 1 honoured the contract we drafted; 7 have no recorded run. Read from Syntology's graph 2026-09-24; that is when this build read the record, not when the samples ran.

1ran · honoured contract
13ran · our draft was wrong
13ran
7unverified

Licence: 0 of the 34 samples are pointer only, meaning Syntology does not serve that copy's text. This page shows no code text for any sample; each one links to its file in the repository.

Harvested from taikimiyagawa/functionalpinn. “Ran” means the sample executed on a synthesized input. It does not mean the output is correct, and nothing here reproduces the paper's results. “Honoured” and “violated” refer to a contract Syntology drafted from the code itself; “our draft was wrong” and “fixture could not drive it” are failures of Syntology's instrument, not of the code.

Each sample ends with its code_sha256, Syntology's identity for that exact code. An agent fetches the stored sample with Syntology's MCP tool get_code(code_sha256="…") (how to connect); click an identity to copy that call.

Repository labels, per sample. official repository: The archive marks this repository official for the paper. named in the paper: The archive records that the paper mentions this repository; it is not marked official. community (archive-listed): In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper. found in paper text by Syntology: Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted. community: Not in the archive's code links for this paper; a community repository Syntology harvested. Samples from a repository marked official are listed first. Licence labels name the repository's licence as recorded at harvest. “Pointer only” means Syntology does not serve that copy's text, for one of four reasons: no licence file was found; the licence was not identified; the licence is recorded as permissive but that copy's record is not marked cleared; or the licence is outside the permissive list Syntology serves text under (MIT, Apache-2.0, BSD and similar). Some licences outside that list permit redistribution, such as WTFPL, and GPL-3.0 under its conditions; they are simply not on the list. Hover a licence label for the reason. File links open the file on GitHub at the default branch, which may have changed since the harvest.

chebyshev_polynomial1_no_w taikimiyagawa/functionalpinn/losses/pdes.py official repository ran · our draft was wrong fingerprinted MIT (permissive) · 6cdba1a8a64e9608 · report
chebyshev_polynomial2 taikimiyagawa/functionalpinn/losses/pdes.py official repository ran · our draft was wrong fingerprinted MIT (permissive) · 46fdca6dcf29c64e · report
chebyshev_polynomial3 taikimiyagawa/functionalpinn/losses/pdes.py official repository ran · our draft was wrong fingerprinted MIT (permissive) · 34465dc6dbd1e48a · report
chebyshev_polynomial4 taikimiyagawa/functionalpinn/losses/pdes.py official repository ran · our draft was wrong fingerprinted MIT (permissive) · c1bfa06c6973aadd · report
fourier_series taikimiyagawa/functionalpinn/full_code/utils/basis_functions.py official repository ran · our draft was wrong fingerprinted MIT (permissive) · d3007f4a22e9698f · report
fourier_series taikimiyagawa/functionalpinn/losses/pdes.py official repository ran fingerprinted MIT (permissive) · 9e50ee6eaff0e646 · report
fourier_series_no_w taikimiyagawa/functionalpinn/losses/pdes.py official repository ran · our draft was wrong fingerprinted MIT (permissive) · dcdedd8a1f85c831 · report
hermite_polynomial1 taikimiyagawa/functionalpinn/losses/pdes.py official repository ran · our draft was wrong fingerprinted MIT (permissive) · 7e47d5d19428b85e · report
hermite_polynomial2 taikimiyagawa/functionalpinn/losses/pdes.py official repository ran · our draft was wrong fingerprinted MIT (permissive) · 0ba61e231966495d · report
id_map taikimiyagawa/functionalpinn/losses/pdes.py official repository ran · honoured contract fingerprinted MIT (permissive) · 78c0864668746293 · report
laguerre_polynomial taikimiyagawa/functionalpinn/losses/pdes.py official repository ran · our draft was wrong fingerprinted MIT (permissive) · 4552478627853d40 · report
legendre_polynomial taikimiyagawa/functionalpinn/losses/pdes.py official repository ran · our draft was wrong fingerprinted MIT (permissive) · 6a9675ad43501f59 · report
legendre_polynomial_no_w taikimiyagawa/functionalpinn/losses/pdes.py official repository ran · our draft was wrong fingerprinted MIT (permissive) · 884b1b91c502cf78 · report
normalized_weight_chebyshev1_no_w taikimiyagawa/functionalpinn/losses/pdes.py official repository ran MIT (permissive) · b3ada37b69ced917 · report
normalized_weight_chebyshev2 taikimiyagawa/functionalpinn/losses/pdes.py official repository ran MIT (permissive) · 727f75ae014fdfad · report
normalized_weight_chebyshev3 taikimiyagawa/functionalpinn/losses/pdes.py official repository ran MIT (permissive) · 32d61ce5c9521f5d · report
normalized_weight_chebyshev4 taikimiyagawa/functionalpinn/losses/pdes.py official repository ran MIT (permissive) · 16e933129d12c881 · report
normalized_weight_fourier taikimiyagawa/functionalpinn/losses/pdes.py official repository ran MIT (permissive) · 4eb6e6d00cda4928 · report
normalized_weight_fourier_no_w taikimiyagawa/functionalpinn/losses/pdes.py official repository ran MIT (permissive) · e3d982117eaf109d · report
normalized_weight_hermite1 taikimiyagawa/functionalpinn/losses/pdes.py official repository ran MIT (permissive) · db0b4d81df38ed79 · report
normalized_weight_hermite2 taikimiyagawa/functionalpinn/losses/pdes.py official repository ran MIT (permissive) · 28ac8854e369389f · report
normalized_weight_laguerre taikimiyagawa/functionalpinn/losses/pdes.py official repository ran MIT (permissive) · 4b9909350b71bb64 · report
normalized_weight_legendre taikimiyagawa/functionalpinn/losses/pdes.py official repository ran MIT (permissive) · e2141e5a3c3e516a · report
normalized_weight_legendre_no_w taikimiyagawa/functionalpinn/losses/pdes.py official repository ran MIT (permissive) · 8388c499d50b5dcd · report
smooth_sum taikimiyagawa/functionalpinn/losses/pdes.py official repository ran MIT (permissive) · 735fc391ffc71e57 · report
transform_chebyshev1 taikimiyagawa/functionalpinn/losses/pdes.py official repository ran · our draft was wrong fingerprinted MIT (permissive) · 63a75e2c25b89556 · report
transform_chebyshev3 taikimiyagawa/functionalpinn/losses/pdes.py official repository ran · our draft was wrong fingerprinted MIT (permissive) · 5fbc7ae3d39fd19e · report
BasisFunctionController taikimiyagawa/functionalpinn/losses/pdes.py official repository unverified MIT (permissive) · 17c0b92ac5014a62 · report
FDE taikimiyagawa/functionalpinn/losses/pdes.py official repository unverified MIT (permissive) · 73db1406ba0721de · report
chebyshev_polynomial1 taikimiyagawa/functionalpinn/losses/pdes.py official repository unverified MIT (permissive) · 7ba1257ae3e539c5 · report
config_add TaikiMiyagawa/FunctionalPINN/configs/utils_config.py official repository unverified MIT (permissive) · de0c7dc1dbdecd66 · report
extract_X_bc_from_X_in TaikiMiyagawa/FunctionalPINN/losses/pdes.py official repository unverified MIT (permissive) · a89cee0e74a514a8 · report
extract_X_bulk_from_X_in TaikiMiyagawa/FunctionalPINN/losses/pdes.py official repository unverified MIT (permissive) · 0c12a139b12bc27a · report
normalized_weight_chebyshev1 taikimiyagawa/functionalpinn/losses/pdes.py official repository unverified MIT (permissive) · e3fb591b6127653a · report

Results from the paper archive 2025-07-28

No leaderboard rows for this paper in the archive.

Report a problem or propose a change · a person checks every report against the paper or source before anything changes; decisions are listed on /corrections