cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

Showing 1-1 of 1 results.

A364973 a(n) = number of degree n rational curves in the complex projective plane which satisfy an order 3n-1 local tangency constraint.

Original entry on oeis.org

1, 1, 4, 26, 217, 2110, 22744, 264057, 3242395, 41596252, 552733376, 7559811021, 105919629403, 1514674166755, 22043665219240, 325734154669786, 4877954835706120, 73914684068584441, 1131820243084746628, 17494508772311055354, 272708269111411142397, 4283702718045699720655
Offset: 1

Views

Author

Kyler Siegel, Aug 22 2023

Keywords

Comments

This is the number of degree n rational curves in the complex projective plane which pass through a specified point and have contact order 3n-1 to a generic smooth local divisor through that point.
After multiplying by 3n-1, this sequence appears to agree with A353195.
Computed in terms of Gromov-Witten invariants of rational surfaces in McDuff-Siegel 2021.
Agrees with the count of osculating curves, which are defined and computed by a recursive formula in Muratore 2021.
Computed by a recursive formula in Mikhalkin-Siegel 2023.
Computed by a closed formula as sum over trees with n leaves and combinatorially defined weights in Siegel 2023.

Crossrefs

Cf. A353195 (after multiplying by 3n-1).

Programs

  • Python
    from functools import lru_cache
    from fractions import Fraction
    from math import prod, factorial
    from sympy.utilities.iterables import partitions
    @lru_cache(maxsize=None)
    def A364973(n): # after Sage code
        return 1 if n==1 else int(factorial(3*n-2)*(Fraction(1,factorial(n)**3)-sum(Fraction(prod(((3*m-1)*A364973(m))**e for m, e in p.items()),factorial(3*n-s)*prod(factorial(c) for c in p.values())) for s, p in partitions(n, k=n-1, size=True)))) # Chai Wah Wu, Nov 10 2023
  • Sage
    # The following code is written in Sage and is based on the recursive formula in Mikhalkin-Siegel 2023. Note that a slightly more efficient formula is given by using Partitions instead of OrderedPartitions, at the cost of an extra combinatorial factor.
    def a(n):
    	if n == 1:
    		return 1
    	out = 1/(factorial(n)**3)
    	for p in [p for p in OrderedPartitions(n) if len(p) > 1]:
    		k = len(p)
    		summand = prod([(3*m-1)*a(m) for m in p])
    		summand /= factorial(k)*factorial(3*n-k)
    		out -= summand
    	out *= factorial(3*n-2)
    	return out
    for n in range(1,20):
    	print(a(n))
    

Extensions

More terms from Chai Wah Wu, Nov 10 2023
Showing 1-1 of 1 results.