A register of function names, by what a mathematician calls each
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 35/100
- Issue-Typ
- Dokumentation
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- csharp
- Bereich
- documentation
Rechercherichtung
Start by reading the naming rules, the proposed function table, and the related issues #2180–#2194 listed in the issue. The issue identifies no source files or tests; it calls for settling conventions across many proposed functions, including the zeta naming rule that is still marked “To decide.” Done means the names, accepted aliases, LaTeX forms, and reserved names are settled consistently.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
The names and conventions of functions the library does not have yet, fixed before any of them is implemented, so that they land in any order without being argued again. This replaces a first version that copied an older table and its rule that SymPy's spelling wins. That rule gave lambertw beside zeta, and SymPy's cryptic ff and rf.
The rule
- A function is named by what a mathematician calls it. That is its Wikipedia article and MathWorld entry, in lower case, without spaces or the word "function":
lambertw(Lambert W function),harmonicnumber,doublefactorial,fallingfactorial. - Where mathematicians call a function by its standard symbol alone, the symbol's name is used:
zeta(ζ),beta(B). This is howgamma(Γ) anderfare already named. Where mathematics writes an operator rather than a function, the operator is the spelling: the double factorial is the postfixn!!, as the factorial isn!, and congruence isa = b (mod n). - A name that already means something else in mathematics is not used.
divis the divergence, so the integer quotient isquotient.deltais Kronecker's and Dirac's, so the forward difference isforwarddifference.catalanalone is also Catalan's constant, andharmonicalso the harmonic mean, socatalannumberandharmonicnumber.pochhammer, and the notation(x)_n, mean the rising factorial in special functions and the falling one in combinatorics, so neither is used.
- Mathematica's name is accepted on input where it is another spelling of the same function, and SymPy's where it is unambiguous. Only the chosen name is printed.
- Nothing is added that the library already writes another way.
isprime(n)isn in PP,clamp(x, a, b)ismin(max(x, a), b), the fractional part isx mod 1(floored, so in[0, 1)) and the integer quotient isfloor(a/b). The Heaviside step function is the same case. Its sources disagree on its value at 0, soheavisidewould have to pick one: Wikipedia lists0,1/2,1,[0, 1]and none, MathWorld gives1/2, DLMF 1.16.130, Mathematica'sUnitStep1and itsHeavisideThetanone. Each is already written exactly:iverson(x > 0),iverson(x >= 0)and(1 + sgn(x))/2, so neitherheavisidenorunitstepis added; both are refused with those three spellings (see #2182).
The sources are listed for each row as evidence, not as the reason.
LaTeX reads back as what it came from. A Greek letter or a capital that could be a variable is wrapped in \operatorname, as phi(n) already draws as \operatorname{\varphi}\left(n\right), since mu * (n + 1) draws as \mu \left(n+1\right). Braces are left for sets. A constant is upright, as pi is \mathrm{\pi}.
Shipped
floor, ceil, round, mod, min, max, gcd, lcm, phi, binomial, sum, product, erf, erfc, digamma, polygamma, gamma, and congruence as a = b (mod n). Also prime(n), valuation, iverson, det, transpose, dot, cross and resultant (#2180), conjugate/conj and arg (#2181), Re and Im (#2185), the double factorial n!! (#2187), and mobius, divisorsigma, primenu, primeomega and primepi (#2188). laplacian, jacobian and hessian (#2190), and fallingfactorial, factorialpower and risingfactorial (#2194). multinomial, the gamma ratio agreed below (#2197), catalannumber (#2198), harmonicnumber (#2200), forwarddifference (#2201) and lambertw (#2202), with K (a x + b) c^(g x + d) = k solved through it (#2203). The constant eulergamma, \mathrm{\gamma}, also read as EulerGamma, with digamma exact at a whole or half-whole argument and harmonicnumber at a half-whole one (#2204).
Proposed
| Name | Also accepted | Wikipedia | MathWorld | Mathematica | SymPy | LaTeX | Convention |
|---|---|---|---|---|---|---|---|
beta(a, b) |
Beta function | Beta Function | Beta |
beta |
\operatorname{B}\left(a, b\right) |
||
zeta(s), zeta(s, a) |
Riemann zeta function, Hurwitz zeta function | Riemann Zeta Function, Hurwitz Zeta Function | Zeta, HurwitzZeta |
zeta |
\operatorname{\zeta}\left(s\right), \operatorname{\zeta}\left(s, a\right) |
To decide: rule 2 gives zeta, rule 1 gives riemannzeta and hurwitzzeta |
|
norm(v), (v, p) |
Norm (mathematics) | Vector Norm | Norm |
Matrix.norm |
\left| v \right|_{p} |
p = 2 by default; p = +oo is the largest modulus |
|
grad(f, x) |
gradient |
Gradient | Gradient | Grad |
gradient |
\nabla f |
a column |
div(F, x) |
divergence |
Divergence | Divergence | Div |
divergence |
\nabla \cdot F |
|
curl(F, x) |
Curl (mathematics) | Curl | Curl |
curl |
\nabla \times F |
three dimensions only |
Reserved until implemented
An unknown name followed by a bracket is read as a product, so zeta(s) is zeta * s today, silently. #2184 refuses the long names by name until each is implemented. Short names that could be somebody's variable before a bracket are not reserved: beta, norm, grad, div, curl, frac.
Related: #809 (the research), #2145, #2147.
🤖 Generated with Claude Code
- Vorherrschende Sprache
- C#
- Sterne
- 831
- Forks
- 79
- Ø Merge
- 1 Std. 14 Min.
- Gemergte PRs (30 T.)
- 522
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus ASC-Community/AngouriMath
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 45/100
ASC-Community/AngouriMath#2195 · 2 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 35/100
ASC-Community/AngouriMath#2164 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 35/100
ASC-Community/AngouriMath#2160 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 48/100
ASC-Community/AngouriMath#2153 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 35/100
ASC-Community/AngouriMath#2152 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in ASC-Community/AngouriMath
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
-
area: core priority: low type: bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
RicoSuter/Namotion.Interceptor#863 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
bitfoundation/bitplatform#14428 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
area-cli
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
Maintainer antworten meist innerhalb von 1 Tag
-
0.3.0
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Maintainer antworten meist innerhalb von 1 Tag