这个网站是由捐款支持的OEIS基金会.

用户:M.F.Hasler/Programs/Naming conventions

来自OeisWiki
跳转到:航行,搜索

我使用并建议在OEIS上命名程序时使用以下约定:

  • Axxx公司对于一个应该计算Axxx的程序(n),索引项n序列Axxx(不一定是n-第三项,假定序列可能从与1不同的偏移开始。
  • 是?Axxx对于一个以整数作为参数的程序和回报是的(或等价物:非零和零,…)取决于是否是序列的成员。(这是由严格递增序列表示的集合的特征函数,或者更一般地说是序列的范围(=图像)的特征函数。)
下划线“u”在这里更像是一种技术上的人工制品。实际上,当前CA中类似的标准函数通常都是这样突出它(比如isprime(),ispower(),... 在PARI/GP,Maple,…)。其动机是,有了“u”(但不是没有它),OEIS软件将把Axxx识别为序列ID并“超链接”它:这样,当是Axxx(…)在其他地方使用。
有些CA可能不允许或不鼓励这种命名约定。E、 不允许在程序名中使用大写字母、下划线或数字的语言(所有这些都存在)。在Mathematica中,标准约定遵循普锐梅检查是质数,所以AxxxQ[米]可以用来代替是?Axxx.
  • Axxx_vec(Nmax)/列表\u Axxx(LIM)对于返回序列的第一个Nmax项的向量的程序,或“列出”(不管是什么意思)Axxx项的程序.

有时候列表\u Axxx功能可作为“副作用”实施在函数中Axxx公司,也就是说,通过允许第二个可选参数,当给定该参数时,该参数将打印出直到Axxx为止的所有“中间”术语(n),或返回某个子序列作为向量。在许多情况下,这将是一个非常自然和/或有效的替代计算术语a(1),…,a(n)每个都通过一个独立的函数调用Axxx公司.

当然,这些附加功能应该得到适当的注释,例如,“给可选的第二个参数show_all=1打印出来…”或“给出可选的第二个参数m>0以返回[a(m),…,a(n)]的列表,而不仅仅是a(n)。”