14
AAECC’99 Honolulu November 1999 4 2 2 n Flexible Arithmetic for Huge Numbers with Recursive Series of Operations Vagan Terziyan*, Alexey Tsymbal**, Seppo Puuronen** *Dept. of CS and ISs, Kharkov State Technical University of Radio-electronics, UKRAINE [email protected] **Department of CS and ISs, University of Jyväskylä, FINLAND {alexey, sepi}@jytko.jyu.fi

Flexible Arithmetic for Huge Numbers with Recursive Series of Operations

Embed Size (px)

DESCRIPTION

Flexible Arithmetic for Huge Numbers with Recursive Series of Operations. Vagan Terziyan*, Alexey Tsymbal**, Seppo Puuronen** *Dept. of CS and ISs, Kharkov State Technical University of Radio-electronics, UKRAINE [email protected] - PowerPoint PPT Presentation

Citation preview

Page 1: Flexible Arithmetic for Huge Numbers  with Recursive Series of Operations

AAECC’99 Honolulu November 1999 422 n

Flexible Arithmetic for Huge Numbers with Recursive Series of Operations

Vagan Terziyan*, Alexey Tsymbal**, Seppo Puuronen***Dept. of CS and ISs,

Kharkov State Technical University

of Radio-electronics, UKRAINE

[email protected]

**Department of CS and ISs, University of Jyväskylä, FINLAND

{alexey, sepi}@jytko.jyu.fi

Page 2: Flexible Arithmetic for Huge Numbers  with Recursive Series of Operations

AAECC’99 Honolulu November 14-19, 1999Flexible Arithmetic for Huge Numbers with Recursive Series of Operations by Terziyan, Tsymbal, & Puuronen

2

University of JyväskyläFinland

State Technical University of Radioelectronics

KharkovUkraine

Finland and Ukraine

Page 3: Flexible Arithmetic for Huge Numbers  with Recursive Series of Operations

AAECC’99 Honolulu November 14-19, 1999Flexible Arithmetic for Huge Numbers with Recursive Series of Operations by Terziyan, Tsymbal, & Puuronen

3

Contents

Introduction: Ackerman’s Recursive Function Infinite Series of Arithmetical Operations Properties of Recursive Arithmetical Operations Calculation of Recursive Arithmetical Operations:

A Derecursivation Algorithm Recursive Counters and Coding Huge Numbers A Relationship Between Recounters

and Recursive Arithmetical Operations Conclusions and Future Work Contact Info

Page 4: Flexible Arithmetic for Huge Numbers  with Recursive Series of Operations

AAECC’99 Honolulu November 14-19, 1999Flexible Arithmetic for Huge Numbers with Recursive Series of Operations by Terziyan, Tsymbal, & Puuronen

4

Ackerman’s Recursive Function

.)1,();),1,((),( 1 aaababa nnnn

If 1 is usual addition a+b then 2 is multiplication,3 is raising to a power, and so on.

Problems:

• huge numbers: 999 is so huge that it would require a 1800km

piece of paper (with 0.5cm on each digit);

• recursion of second degree -- labor-consuming algorithm for calculation;

• practical applications.

Page 5: Flexible Arithmetic for Huge Numbers  with Recursive Series of Operations

AAECC’99 Honolulu November 14-19, 1999Flexible Arithmetic for Huge Numbers with Recursive Series of Operations by Terziyan, Tsymbal, & Puuronen

5

Infinite Series of Arithmetical Operations

1. Addition: a b (we use as the basic operation);

2. Multiplication: b

aaaba ...* ;

3. Raising to a power: b

b aaaa *...** .

. ;1 ;))1((11

babaaaababannnn

))1((/ zyxyxz zy

)))1((( zxyyxzn

zy

n

Inverse operations:

Page 6: Flexible Arithmetic for Huge Numbers  with Recursive Series of Operations

AAECC’99 Honolulu November 14-19, 1999Flexible Arithmetic for Huge Numbers with Recursive Series of Operations by Terziyan, Tsymbal, & Puuronen

6

Properties of Recursive Arithmetical Operations

operandsc

nnnnn

aabacba111

...)()(

))1((334

baaba

aan

1

aaann 1

2

cn

abaNcnNnba :,3,,,

422 n

Page 7: Flexible Arithmetic for Huge Numbers  with Recursive Series of Operations

AAECC’99 Honolulu November 14-19, 1999Flexible Arithmetic for Huge Numbers with Recursive Series of Operations by Terziyan, Tsymbal, & Puuronen

7

Calculation of Recursive Arithmetical Operations

ababababa *)2)(()1*2( ;2)()*2(333333

Two main rules of the algorithm:1. At the end of calculation of the result for some group, the multiplier for the following group at this

level becomes equal to the result of previous group.2. If the calculation of the group g from the level h has been completed and some group from the

level h+1 simultaneously comes to the end, then the size of the group g+1 at the level h becomes equalto the result of the group’s g calculation minus one.

Page 8: Flexible Arithmetic for Huge Numbers  with Recursive Series of Operations

AAECC’99 Honolulu November 14-19, 1999Flexible Arithmetic for Huge Numbers with Recursive Series of Operations by Terziyan, Tsymbal, & Puuronen

8

Derecursivation Algorithm: Variables

a, b - operands of the calculated operation;

n - the operation being calculated n

;

m - the operation m

m n, , which is used for the decomposed calculation; C1 [1.. n-m-1] - array that contains current sizes of groups at levels above m; C2 [1.. n-m-1] - array containing a copy of the C1 array; Result - variable, in which the result of the calculation is formed; GroupSize - size of a current group at the level m; Factor - operand of the current group; Operations - number of non-calculated operations in the current group; i – auxiliary index variable.

Page 9: Flexible Arithmetic for Huge Numbers  with Recursive Series of Operations

AAECC’99 Honolulu November 14-19, 1999Flexible Arithmetic for Huge Numbers with Recursive Series of Operations by Terziyan, Tsymbal, & Puuronen

9

Derecursivation Algorithm

1. Input (a, b, n, m) (a, b, n, m N; a, b, n>1; m<n-1).

2. C11:=b-1; C21:=b-1; C12:=a-1; C22:=a-1;... ;C1n-m-1:=a-1; C2n-m-1:=a-1;

3. Result:=a; GroupSize:=a-1;4. Factor:=Result; Operations:=GroupSize;

5. Result:=ResultmFactor; Operations:=Operations-1; if Operations>0 then goto 5;

6. i:=n-m-1;

7. if i=0 then Output (Result), End; C1i:=C1i-1; if C1i=0 then i:=i-1, goto 7;

8. if i=n-m-1 then goto 4; GroupSize:=Result-1; i:=i+1; C1i:=C2i;

9. i:=i+1; if i=n-m goto 4; C1i:=Result-1; C2i:=Result-1; goto 9.

1 - input of the initial data (operands, operations);2 - initialization of arrays - counters of the group sizes at each level;3,4 - initialization of variables;5 - calculation of the next group;6,7 - decrement of the group sizes after making an operation;8 - change of the size of the current group (rule 2);8,9 - restoration and change of the sizes of current groups at all levels.

Page 10: Flexible Arithmetic for Huge Numbers  with Recursive Series of Operations

AAECC’99 Honolulu November 14-19, 1999Flexible Arithmetic for Huge Numbers with Recursive Series of Operations by Terziyan, Tsymbal, & Puuronen

10

Recursive Counters

norn' 1 - recounter of the first level taken from the number n;

nm - recounter of the m-th level taken from the number n.

)1(log1log' nnn kk

)1(log1)(log)( 1111 mk

mk

mm nnnn

)1()( mnmnord

Page 11: Flexible Arithmetic for Huge Numbers  with Recursive Series of Operations

AAECC’99 Honolulu November 14-19, 1999Flexible Arithmetic for Huge Numbers with Recursive Series of Operations by Terziyan, Tsymbal, & Puuronen

11

Coding Huge Numbers with Recounters

1, mnm

m = ord(n), the level of a number n, and nm1is the last recounter which is not equal to 1.

8,3984

;...9991003,2 ;99102,2 );92(,1 digitsnn

;9...90...012,3 ;9999999991000000009,2999

;...9...90...019,3 ; ... ;9...90...013,311011099999 98

.110,max;10,min

;110,2max;10,2min,1max1,1min

1

nmnm

nn

nmnm

nn

We propose to code huge numbers with the following pair:

Intervals coded with each such pair are:

For example:

Page 12: Flexible Arithmetic for Huge Numbers  with Recursive Series of Operations

AAECC’99 Honolulu November 14-19, 1999Flexible Arithmetic for Huge Numbers with Recursive Series of Operations by Terziyan, Tsymbal, & Puuronen

12

A Relationship Between Recounters and Recursive Arithmetical Operations

. 2 ),1( log)1()('1

5

lwhereorxxxlx xl

x 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

y 1 3 4 5 6 8 9 10 12 13 15 17 18 20 21 23 25 27

The values of the function yx xll()( )5

with discrete x = 320:

Page 13: Flexible Arithmetic for Huge Numbers  with Recursive Series of Operations

AAECC’99 Honolulu November 14-19, 1999Flexible Arithmetic for Huge Numbers with Recursive Series of Operations by Terziyan, Tsymbal, & Puuronen

13

Conclusions and Future Work

• A recursive expansion of the set of ordinary arithmetical operations was investigated;

• The recursive arithmetical operation was defined, where n is the level of recursion starting with ordinary + (n=1);

• Basic properties of recursive operations were investigated, an algorithm for calculation of these operations was considered;

• The recursive counters’ apparatus was proposed for representation of huge integers, which are results of recursive operations, in a restricted memory;

• Practical applications: random number generation?

ban

Page 14: Flexible Arithmetic for Huge Numbers  with Recursive Series of Operations

AAECC’99 Honolulu November 14-19, 1999Flexible Arithmetic for Huge Numbers with Recursive Series of Operations by Terziyan, Tsymbal, & Puuronen

14

Contact Info

Vagan Terziyan*, Alexey Tsymbal**, Seppo Puuronen**

*Dept. of CS and ISs,

Kharkov State Technical University

of Radio-electronics, UKRAINE

[email protected]

**Department of CS and ISs,University of Jyväskylä, FINLAND

{alexey, sepi}@jytko.jyu.fi

422 n