构造函数使得任意小的区间所对应的值域都是整个实数域
icon2 Brain Storm | icon4 2008-10-30 23:16| icon312 Comments | 本文内容遵从CC版权协议 转载请注明出自matrix67.com

    首先呢,让我们来一个牛B函数大回顾。这下我不知道要赚多少的PV。你能否构造一个函数f(x),使得:

  它是一个阶梯状的连续函数?
  它是除常函数之外的没有最小正周期的周期函数?
  该函数只在一点连续?
  该函数在[0,1]和(0,1)之间形成一一对应?
  该函数某一点导数为正,但该点邻域不构成单增区间?
  平面上任意小的圆内均包含函数上的点?

    另外还有一些可能是众所周知(所以没在Blog里写过)的函数,比如处处连续但处处不可导的函数在有理点处处不连续在无理点处处连续的函数等等。
    好了,现在呢,又一个牛B东西出现了。你能不能想出这样一个函数f,它的定义域和值域都是R,并且对于任意小的区间l=(u,v),这个函数都能把(u,v)满射到整个R上。换句话说,是否存在这样的函数f(x),对于任意一个实数t以及任意一个区间(u,v),总存在一个x满足u<x<v且f(x)=t。

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
     首先,注意到函数h(x)=tan( pi*(x-1/2) )将(0,1)上的数与全体实数一一对应,因此,我们只需要找出一个g(x),它能把任意小的区间满射到(0,1)区间上,然后在它上面复合一个h(x)就得到我们题目所求的函数了。
    我们的g(x)可以这样定义:首先,把x写成三进制数。如果x的三进制表达里没有数字2或者有无穷多个数字2,那么g(x)=0。否则,x的三进制中含有有限多个数字2。找到最末的一个数字2,把它及其前面的部分都去掉,这样剩下的就只有0和1了。在这个01串前面加上一个小数点,把它当作一个二进制小数转换回去,作为g(x)的函数值。这样的话,g(x)就是一个值域为[0,1)的函数,并且在任意小的区间内,我们总能找到一个点,它所对的函数值就是你想要的那个值:只需要取一个该区间内的精度足够高(小数点位数足够多)的三进制有限小数,在后面加一个数字2,再后面的01串就可以想要啥就要啥了。
    注意到g(x)把任意小的区间都映射到[0,1)上,而前面提到的h(x)则在(0,1)和R之间建立了一一对应的关系。于是,定义f(x)为,当g(x)=0时f(x)=0,否则f(x)=h( g(x) )。这就是满足题意的函数f。

题目来源:http://domino.research.ibm.com/Comm/wwwr_ponder.nsf/Challenges/October2001.html

12 条回复

  • 楼层: 沙发 | | Assassin.cpy.pku 说:

    update UBUNTU8.10 and 思考

  • 楼层: 板凳 | | hetong_007 说:

    楼上沙发牛

  • 楼层: 地毯 | | 唐僧 说:

    哈哈,这个题目的简化版做过,当时参加的是上海交大的自主招生考试,要求构造一个[0,1]对应(0,1)的函数(还有其他要求忘记了),好像当时我写的是sin(1/x)

  • 楼层: 地板 | | sqybi 说:

    唉...板凳没了

  • 楼层: 地下室 | | yuye_abc 说:

    还是x*sin(1/x)+x这种形式的最漂亮。

  • 楼层: 地基 | | zmq 说:

    Matrix大牛我想问你一个问题:
    R和R X R的基是相等的,也就是说[0,1]区间和(x,y),0<=x<=1,0<=y<=1这个正方形区域上的点是一样多的,那么怎么构造它们之间的一个双射函数,我想了很久都没找到这样一个函数……
    如果你知道的话,请指点一下.给我发封邮件吧,先谢过了^-^。

  • 楼层: 地壳 | | yh 说:

    哇,您大牛可以研究一下选择公理了

  • 楼层: 地幔 | | multiple1902 说:

    他不是早研究过了吗……那个囚犯问题……

  • 楼层: 地核 | | Ronice 说:

    不少是数分作业题。。。

  • 楼层: 10楼 | | iceberg 说:

    回复zmq:
    把每个x写成小数0.x1x2...,每个y写成小数0.y1y2...,并让f(x,y)=0.x1y1x2y2...,这就是一个双射。

  • 楼层: 11楼 | | iceberg 说:

    当然,要限制当可以用比如说0.9999...时不准用1.00000...之类的

  • 楼层: 12楼 | | skyiv 说:

    路过。

您也随便说几句吧:

请注意:如果您是第一次在本站发表评论,您的评论需要通过管理员的审核。

您可以在Gravatar设置您的头像。