V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
sockpuppet9527
V2EX  ›  数学

有没有存在这么一组特殊的数列?

  •  
  •   sockpuppet9527 · 2020-12-29 13:00:54 +08:00 · 2536 次点击
    这是一个创建于 1452 天前的主题,其中的信息可能已经有所发展或是发生改变。

    lz 并非数学专业,只是偶尔想出这么一个问题。

    假如有一组特殊数列,遵循某个规则,当你有数列其中前 N 个数的时候,你就能完整的推导出数列的规则。但是在前面这 N 个数中,你去掉某一个数,或者 M 个数,这个数列就变成了离散且无规律的数列。

    第 1 条附言  ·  2020-12-29 16:12:12 +08:00
    没想到有这么多专业的解答。

    其实这个问题应该放到“奇思妙想”节点。严格来说,我提出的并不是一个数学问题。

    为什么会提出这个问题呢?因为前几天看到一个新闻:以色列太空局前高官:美国和外星人签了协议

    我就想到如果有一个外星人(注意是一个)造了多个地球人,比如外星人现在造 10000 个人造人出来,这个时候外星人得投放人造人到地球上户口,那么问题来了,外星人得给人造人取个地球名字,假如外星人的大脑和地球人的大脑差不多,它想给地球人按数字命名,那么最简单的就是从 1 号到 10000 号,方便管理。

    但是从 1 号到 10000 号又太容易被地球人发现关联,那么就得用更复杂的数字命名方式(外星人就想用数字命名),并且外星人又想到了另外一个问题,假如其中几个人被地球人发现了异常,被判断为人造人,地球人不能通过人造人的数字名字推断出别的人造人的数字名字。
    22 条回复    2021-01-18 06:25:22 +08:00
    jifengg
        1
    jifengg  
       2020-12-29 13:20:39 +08:00   ❤️ 4
    任意有限个数的有理数列(无理数不清楚),都是有规则的,且可以用一个数学公式来计算得出。
    比如 f(1)=a,f(2)=b,f(3)=c 。
    通用公式为:f(n)=a(n-2)(n-3)/2 + b(n-1)(n-3)/(-1) + c(n-1)(n-2)/2 。
    给定前 N 个,同样可以扩展这个公式。你可以注意到,我这个公式由三个数相加,我设计使 n=1,2,3 的时候,其余两个数都是 0 。
    我用这个方式解决过 ( )( )( )(2)(4)(6)(7)(8)的问题,当然答案不是“(门前大桥下)(游过一群鸭)(让我数一数)”
    geelaw
        2
    geelaw  
       2020-12-29 13:22:25 +08:00 via iPhone   ❤️ 1
    楼主首先要解决的问题是准确表达自己的意思,比如什么叫做“离散且无规律”,当然这也是数学能力的一部分。要解决这个问题,可能需要先明确这个上下文里的“数列”“规则”的含义,以及什么叫“一组”。
    sockpuppet9527
        3
    sockpuppet9527  
    OP
       2020-12-29 13:30:38 +08:00   ❤️ 1
    @jifengg #1

    "任意有限个数的有理数列,都是有规则的",
    请问这部分是有数学证明吗?或者换句话问,这个结论是如何推出来的呢?搜了一会没有搜到相应的结论。
    ynyounuo
        4
    ynyounuo  
       2020-12-29 13:39:24 +08:00 via iPhone   ❤️ 1
    非数学系,不过你第一句话应该就不成立。

    从直觉可以想到,任意有限个数的有序数字排列都可以是一个无限数列的一部分。而可以契合那列有序数字的无限数列也会有无限个。
    jifengg
        5
    jifengg  
       2020-12-29 13:39:55 +08:00
    @sockpuppet9527 这个结论是我自己推导的,我上面发的就是我的推导过程,用 3 个数举例,同理 4 个 5 个……n 个,都可以用这个方法推导出公式。
    sockpuppet9527
        6
    sockpuppet9527  
    OP
       2020-12-29 13:57:52 +08:00
    @jifengg #5 谢谢解答。很有用

    @ynyounuo #4 你的意思是说,有限数列可以对应多个推导公式?(这个确实可以想到存在的例子)。
    SmallTeddy
        7
    SmallTeddy  
       2020-12-29 14:00:25 +08:00
    (-9)(-4)(-1)(2)(4)(6)(7)(8)
    2 和 4 差 2,4 和 6 差 2 ; 6 和 7 差 1,7 和 8 差 1
    那么我是不是可以推到前面的数应该差 3,差 4
    所以是-9,-4,-1 。
    @jifengg 我这样是不是也是有规律的?也符合你这个通用公式:f(n)=a(n-2)(n-3)/2 + b(n-1)(n-3)/(-1) + c(n-1)(n-2)/2 。
    就像 @sockpuppet9527 质疑的,"任意有限个数的有理数列,都是有规则的",这句话至少我认为是不正确的,如果把π小数点后面的数作为一个数列,你能说它是有规律的吗?他现在可以到多少千亿位多少万亿位不是通过高运算的计算机算出来的?按你这么说,数学家套个公式就可以算到无穷大位
    jifengg
        8
    jifengg  
       2020-12-29 14:02:14 +08:00
    @sockpuppet9527 “有限数列可以对应多个推导公式”,是的,把我上面的推导公式变一下:
    f(n)=a(n-2)(n-3)/2 + b(n-1)(n-3)/(-1) + c(n-1)(n-2)/2 + 233*(n-1)(n-2)(n-3)。
    你看看,后面 233 是不是换成什么数都是成立的?是不是就有无限个公式了?
    jifengg
        9
    jifengg  
       2020-12-29 14:10:08 +08:00
    @SmallTeddy 我觉得你可能误解我的意思了。"任意有限个数的有理数列,都是有规则的",意思是“已经给出的有限个( n )有理数,总有一个公式 f(n),满足 f(n)等于给出的那个数,这就叫这个有限数组的规律”,这个公式并不能计算“原本”n+1 位应该是多少,因为,这样的公式可以有无限多个。
    ynyounuo
        10
    ynyounuo  
       2020-12-29 14:11:12 +08:00 via iPhone
    @SmallTeddy Pi 小数位后是无限的,截取任意长度的部分都会有任意多的规则可以契合该部分,但这并不代表这些规则就可以推算 Pi 的任意位,因为 Pi 小数位后是无限且无规律的。
    SmallTeddy
        11
    SmallTeddy  
       2020-12-29 14:13:06 +08:00
    @jifengg 额 好吧 我以为是推导并延伸数列 你这个是已知位数得出公式 但是公式并不能求出数列的下一个数
    SmallTeddy
        12
    SmallTeddy  
       2020-12-29 14:14:01 +08:00
    @ynyounuo 对 这一点上我是认同的
    lcdtyph
        13
    lcdtyph  
       2020-12-29 14:32:03 +08:00 via iPhone
    有限数列的“规律”,拉格朗日插值公式可以直接插一个多项式来满足这个“规律”,并且可以通过这个多项式来预测后续的数字

    而如果用待定系数法可以解出任意多种所谓规律:想像成已知有限数列(已知 n 个点)是坐标系中的散点,你的目的是找一条曲线同时穿过所有的这些点,显然 n 次多项式只有一个解,这就是插值公示得到的那个;而如果你选择了一个比 n+1(或更高)次多项式来拟合,根据线性方程组的解的条件,有无数个这样的多项式满足要求
    geelaw
        14
    geelaw  
       2020-12-29 15:47:22 +08:00   ❤️ 1
    #2 照常被忽略,且后续讨论看起来都没有在词语含义上达成一致。

    @jifengg #9 这句话意思不明确,什么叫做一个“公式”?如果你要求存在函数 f 使 f(n) = 数列第 n 项,则该函数平凡存在,因为该数列定义了该函数。

    如果你想表达的意思是“初等函数在 N 上的限制”,即所谓“初等通项”,甚至不需要只考虑有限项。任意整数列都具有初等通项,参考此项业余研究结果 https://www.zhihu.com/question/264901104/answer/286624324

    如果你想表达的意思是“可计算函数”,那有限定义域上的函数自然是可计算的。

    @SmallTeddy #7 所以你的疑惑是,什么叫做“规律”。

    就“有规律”这个概念,可以有很多种不同的理解,例如:

    - 具有函数关系
    - 具有初等函数关系
    - 具有可计算函数关系
    - 具有多项式时间可计算函数关系

    都是很常见的理解。
    Dwayne
        15
    Dwayne  
       2020-12-29 15:54:47 +08:00
    楼主说的去掉某个数或 M 个数后,会变成另外一个有“规律”的数列吧
    拉格朗日插值

    另外有个输入数列查相关信息的网站
    http://oeis.org/?language=chineseS
    sockpuppet9527
        16
    sockpuppet9527  
    OP
       2020-12-29 16:02:15 +08:00
    @geelaw #14

    抱歉,我不是数学专业,并不是来讨论专业数学问题的,所以对你#2 的反问进行了忽略。

    我对数学领域上“规律”这个词的定义并不了解,所以我想表达的“规律”,指的是存在“数学关联”,比如递增,任意函数关系。
    BiteTheDust
        17
    BiteTheDust  
       2020-12-29 16:10:52 +08:00   ❤️ 1
    Berlekamp-Massey 算法可以根据已知序列求解递推式
    类似的 拉格朗日插值可以根据已知的序列求解多项式
    Jooooooooo
        18
    Jooooooooo  
       2020-12-29 16:41:28 +08:00
    需要严格的定义 "规律"
    misaki321
        19
    misaki321  
       2020-12-29 17:19:45 +08:00
    拉格朗日插值,任何数列都能表示成某个多项式
    necomancer
        20
    necomancer  
       2021-01-18 04:59:51 +08:00
    任意有限长数列均有规律,因为拉格朗日插值。
    如果你说的是简单递推规律,删掉若干数字后无规律,并且简单定义为一般人意义的简单的话建议你试试这种递推公式的数列:
    a_{n+1} = x * a_n + y * a_{n-1} + z * a_{n-2}
    当 x=y=1,z=0 的时候是斐波那契数列,你稍微调整一下 xyz,就能让数列删掉几个啥规律都找不见。当然,还有中更过分的,就是使用动力学体系的混沌特性,比如 a_{n+1}=4*a_n*(1-a_n),a_1=0.1,你可以试试或者对比一下 a_1=0.1 和 a_1=0.10001,生成个 200 次,跟随机数生成差不多,但规律却是确定的,必须用很完整的序列才能找到规律。
    另,mathematica 有个 FindSequenceFunction, 可以快速从一列数里找一些简单规律,你可以试试。
    necomancer
        21
    necomancer  
       2021-01-18 05:08:37 +08:00
    当然,这个问题更取决于“有规律”的定义,我觉得最贴合的答案可能是 Pi 或者 e, 3,1,4,1,5,9,2,6,5,3...,或者 2,7,1,8,2,8,1,8... 来,删掉几个再试试。
    necomancer
        22
    necomancer  
       2021-01-18 06:25:22 +08:00
    @geelaw 我觉得老哥你和平常人太较真了,一般问这种问题可能隐含的是有没有一个“能体现真正内在关系的函数关系”,像 y=x^2 这样。毕竟不管是用计数函数还是编码法都可以轻松地构造素数函数,引用一下陶哲轩大佬 07 年书里说过
    For instance, we have an exact formula for the nth square number – it is n2 – but we do not have a (useful) exact formula for the nth prime number pn!
    总不能把这俩方法甩陶哲轩大佬脸上吧……我感觉大多数非数学专业人问出“有没有通项”“有没有初等通项”的时候,应该指得和陶哲轩大佬说的 a (useful) exact formula 是一类概念。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5306 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 05:59 · PVG 13:59 · LAX 21:59 · JFK 00:59
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.