如果您正在寻找来自 IRxIR -> [-1;1] 的双射,我可以建议:
从 IR 到 ]-a:a[ 的双射
首先让我们从 IR-> ]-1;1[ 中找到一个双射,所以我们只需要从 IRxIR->IR 中找到一个双射
tan(x): ]-Pi/2;Pi/2[ -> IR
arctan(x) : IR -> ]-Pi/2;Pi/2[
1/Pi*arctan(x) + 1/2: IR -> ]0;1[
2*arctan(x) : IR->]-Pi:Pi[
和
ln(x) : IR + -> IR
exp(x): IR -> R+
来自 ]0,1[ x ]0,1[ -> ]0,1[ 的双射
让我们写:
(x,y) in ]0,1[ x ]0,1[
x= 0,x1x2x3x4...xn...etc where x1x2x3x4...xn represent the decimals of x in base 10
y=0,y1y2y3y4...ym...etc idem
Let's define z=0,x1y1x2y2xx3y3....xnyn...Oym in ]0,1[
然后通过构造我们可以证明它是从]0,1[ x ]0,1[到]0,1[的精确双射。(我不确定数字 zith 无限小数是不是真的......但它至少是一个“非常好的”注入,如果我错了,请告诉我)
让我们将这个函数命名为:CANTOR(x,y)
那么2*CANTOR-1 是来自 ]0,1[ x ]0,1[ -> ]-1,1[ 的双射
然后结合以上所有断言:
给你,你从 IRxIR 得到双射 -> ]-1;1[...
您可以结合来自 IR-> ]0,1[ 的双射
IRxIR -> ]-1;1[
(x,y) -> 2*CANTOR(1/Pi*arctan(x) + 1/2,1/Pi*arctan(y) + 1/2)-1
让我们定义倒数,我们以相同的方式处理:
RCANTOR: z -> (x,y) (CANTOR(x,y) 的倒数
RCANTOR((z+1)/2): ]-1:1[ -> ]01[x ]0,1[
then 1/Pi*tan(RCANTOR((z+1)/2)) + 1/2 : z ->(x,y)
]-1;1[ -> IRxIR