DC

DC 是用來簡化降冪多項式(descending),其表示法為: DC (階梯變數, 最低階次方) (最高階係數, 第二高階係數, ... , 最低階係數)。其中,最低階次方默認為0。

]Define.. DC (階梯變數, 最低階次方) (降冪排列的各項係數數列)

]Instead.. 階梯變數 = x

]Instead.. 最低階次方 = a

]Optional.. a = 0 //最低階次方默認為0。

]Instead.. 降冪排列的各項係數數列 = r(k) = {r(k)}(k = n to 0) //要注意這個係數數列的項數k 是從一個自然數n 開始,並且一定止於0。

]DC (x, a) (r) = Sum(k = 0 to n, r(n) * (x^(n + a)))

 

AC 就是升冪式(ascending),與DC 不一樣的只有各項係數數列是由升冪排列。通常要處理升冪式之前,我們會先將其轉換成降冪排列,以利計算。

 

如果光看DC 的定義很難理解DC 究竟想要表達什麼,我們可以試著代入一個多項式。

]known.. A = 2x^5 + 13x^3 + 6x^2 + x + 10

]A = 2x^5 + 0x^4 + 13x^3 + 6x^2 + 1x^1 + 10x^0 //中間有空缺的部份要補0。

]A = DC (x, 0) ({2, 0, 13, 6, 1, 10}) = DC (x) (2, 0, 13, 6, 1, 10) //數列的部份也可以省略"{}"。

 

另外,DC 也可以用在「進位法」的數值表示中。其中階梯變數就是a 進制,最低階次方是用來表示小數點的位置的,係數就是這個值。

]known.. 10011.001(2) //這是非正函數學的非10 進制數值表示法,缺乏結構性與辨識性(可能被誤認為乘或下標)。

]10011.001 = DC (2, -3) (1, 0, 0, 1, 1, 0, 0, 1) //最低階次方其實也可以解讀成最低到小數點後幾位,前面記得加負號。

 

mi 則是DC 的例外,當係數數列每一項都只有一位數,則可以省略其參數分隔號(逗號),省略參數分隔號之後,可以直接以小數點的方式標示在簡化後的係數數列上,並省略最低階次方──這樣省略過後的表示式就是mi 表示法。表示進制時,我們常用mi 來代替DC,因為書寫比較容易,讀起來也比較習慣。

]DC (2, -3) (1, 0, 0, 1, 1, 0, 0, 1) = mi (2) (10011.001)

 

mi 表示法其實也可用在「部份係數非一位數」的情況,這個時候,非一位數的係數再用雙底線分隔、標示即可。(但最好不要使用在有小數係數的時候,容易混淆。)

]known.. 94FA2.5C(16) //看得出來這也是非正函數學的16 進制數值表示法,他們用了"ABCDEF" 來表示10 到15 的數值,十分沒有科學性。

]94FA.5C = DC (16, -2) (9, 4, 15, 10, 2, 5, 12) = mi (16) (94 雙底線(15) 雙底線(10) 25 雙底線(12)) //在電腦上看起來很凌亂,但是實際書寫時很方便。

 

從DC 衍生出來的mi 可以用來取代進制表示,也可以加速許多運算作業。

 

表示成mi 的進制表示式其實不太符合進制規則,因為一個階梯變數為2 的mi 裡,係數可以出現比2 高或等於的數值。也就是說,在非正函裡1102(2) (表示2 進制) 是不合法的,因為進制為2,係數就不能高於2,但是mi(2) (1102) 是合法的,因為mi 源自於DC,而DC 最原始的描述對象為多項式,沒有人可以說「1 * 2^3 + 1 * 2^2 + 0 + 2 * 2^0」是非法的多項式。

 

不過為了正確表達出進制概念,在DC 裡有一個進位規則,可以讓不符合進制規則的mi 整理成標準的進制表示式。

]rule.. DC(x, a) (A, B) = DC(x, a) (A + floor(B / x), mod(B, x))

]

]DC(2) (3, 5) = DC(2) (3 + floor(5 / 2), mod(5, 2)) = DC(2) (3 + 2, 1) = DC(2) (5, 1) = DC(2) (0 + floor(5 / 2), mod(5, 2), 1) = DC(2) (2, 1, 1) = DC(2) (0 + floor(2 / 2), mod(2, 2), 1, 1) = DC(2) (1, 0, 1, 1) = mi(2) (1011)

 

表示成DC 另一個目的是要做進制轉換。其實這是使用展開的多項式導出的,並沒有很難理解。

]rule.. DC(x, a) (r(k)) = DC(y, a) (r(k) * (x / y)^(k + a))

]

]DC(16, -1) (7, 10, 11, 12) = DC(8, -1) ({7, 10, 11, 12} * (16 / 8)^(k + (-1))) = DC(16) ({7 * 2^(3 - 1), 10 * 2^(2 - 1), 11 * 2^(1 - 1), 12 * 2^(0 - 1)}) //別忘了,DC 內的係數數列r(k),其k 必須由一個自然數n 開始,必止於0。

]= DC(8, -1) ({7 * 4, 10 * 2, 11 * 1, 12 / 2}) = DC(8, -1) (28, 20, 11, 6) //最後利用進位規則就可以得到符合進制規則的進制表示式。

]= DC(8, -1) (3, 6, 5, 3, 6) = mi(8) (3653.6)

文章標籤
全站熱搜
創作者介紹
創作者 GPhettoH 的頭像
GPhettoH

歇息,等待明日的天空

GPhettoH 發表在 痞客邦 留言(0) 人氣(21)