Sudan function explained

In the theory of computation, the Sudan function is an example of a function that is recursive, but not primitive recursive. This is also true of the better-known Ackermann function.

In 1926, David Hilbert conjectured that every computable function was primitive recursive. This was refuted by Gabriel Sudan and Wilhelm Ackermann both his students using different functions that were published in quick succession: Sudan in 1927, Ackermann in 1928.

The Sudan function is the earliest published example of a recursive function that is not primitive recursive.

Definition

\begin{array}{lll} F0(x,y)&=x+y\\ Fn+1(x,0)&=x&ifn\ge0\\ Fn+1(x,y+1)&=Fn(Fn+1(x,y),Fn+1(x,y)+y+1)&ifn\ge0\\ \end{array}

The last equation can be equivalently written as

\begin{array}{lll} Fn+1(x,y+1)&=Fn(Fn+1(x,y),F0(Fn+1(x,y),y+1)\\ \end{array}

.

Computation

These equations can be used as rules of a term rewriting system (TRS).

The generalized function

F(x,y,n)\stackrel{def

} F_n(x,y) leads to the rewrite rules

\begin{array}{lll} (r1)&F(x,y,0)&x+y\\ (r2)&F(x,0,n+1)&x\\ (r3)&F(x,y+1,n+1)&F(F(x,y,n+1),F(F(x,y,n+1),y+1,0),n)\\ \end{array}

At each reduction step the rightmost innermost occurrence of F is rewritten, by application of one of the rules (r1) - (r3).

Calude (1988) gives an example: compute

F(2,2,1)*12

.

The reduction sequence is[1]

\underline{{F(2,2,1)}}

r3F(F(2,1,1),F(\underline{{F(2,1,1)}},2,0),0)

r3F(F(2,1,1),F(F(F(2,0,1),F(\underline{{F(2,0,1)}},1,0),0),2,0),0)

r2F(F(2,1,1),F(F(F(2,0,1),\underline{{F(2,1,0)}},0),2,0),0)

r1F(F(2,1,1),F(F(\underline{{F(2,0,1)}},3,0),2,0),0)

r2F(F(2,1,1),F(\underline{{F(2,3,0)}},2,0),0)

r1F(F(2,1,1),\underline{{F(5,2,0)}},0)

r1F(\underline{{F(2,1,1)}},7,0)

r3F(F(F(2,0,1),F(\underline{{F(2,0,1)}},1,0),0),7,0)

r2F(F(F(2,0,1),\underline{{F(2,1,0)}},0),7,0)

r1F(F(\underline{{F(2,0,1)}},3,0),7,0)

r2F(\underline{{F(2,3,0)}},7,0)

r1\underline{{F(5,7,0)}}

r112

Value tables

Values of F0

F0(xy) = x + y

y \ x 0 1 2 3 4 5 6 7 8 9 10
00 1 2 3 4 5 6 7 8 9 10
11 2 3 4 5 6 7 8 9 10 11
22 3 4 5 6 7 8 9 10 11 12
33 4 5 6 7 8 9 10 11 12 13
44 5 6 7 8 9 10 11 12 13 14
55 6 7 8 9 10 11 12 13 14 15
66 7 8 9 10 11 12 13 14 15 16
77 8 9 10 11 12 13 14 15 16 17
88 9 10 11 12 13 14 15 16 17 18
99 10 11 12 13 14 15 16 17 18 19
1010 11 12 13 14 15 16 17 18 19 20

Values of F1

F1(xy) = 2y · (x + 2) − y − 2

y \ x 0 1 2 3 4 5 6 7 8 9 10
00 1 2 3 4 5 6 7 8 9 10
11 3 5 7 9 11 13 15 17 19 21
24 8 12 16 20 24 28 32 36 40 44
311 19 27 35 43 51 59 67 75 83 91
426 42 58 74 90 106 122 138 154 170 186
557 89 121 153 185 217 249 281 313 345 377
6120 184 248 312 376 440 504 568 632 696 760
7247 375 503 631 759 887 1015 1143 1271 1399 1527
8502 758 1014 1270 1526 1782 2038 2294 2550 2806 3062
91013 1525 2037 2549 3061 3573 4085 4597 5109 5621 6133
102036 3060 4084 5108 6132 7156 8180 9204 10228 11252 12276

Values of F2

y \ x 0 1 2 3 4 5 6 7
0 0 1 2 3 4 5 6 7
x
1F1 (F2(0, 0),  
F2(0, 0)+1)
F1 (F2(1, 0),  
F2(1, 0)+1)
F1 (F2(2, 0),  
F2(2, 0)+1)
F1 (F2(3, 0),  
F2(3, 0)+1)
F1 (F2(4, 0),  
F2(4, 0)+1)
F1 (F2(5, 0),  
F2(5, 0)+1)
F1 (F2(6, 0),  
F2(6, 0)+1)
F1 (F2(7, 0),  
F2(7, 0)+1)
F1(0, 1)F1(1, 2)F1(2, 3)F1(3, 4)F1(4, 5)F1(5, 6)F1(6, 7)F1(7, 8)
1 8 27 74 185 440 1015 2294
2x+1 · (x + 2) − x − 3
≈ 10lg 2·(x+1) + lg(x+2)
2F1 (F2(0, 1),  
F2(0, 1)+2)
F1 (F2(1, 1),  
F2(1, 1)+2)
F1 (F2(2, 1),  
F2(2, 1)+2)
F1 (F2(3, 1),  
F2(3, 1)+2)
F1 (F2(4, 1),  
F2(4, 1)+2)
F1 (F2(5, 1),  
F2(5, 1)+2)
F1 (F2(6, 1),  
F2(6, 1)+2)
F1 (F2(7, 1),  
F2(7, 1)+2)
F1(1, 3)F1(8, 10)F1(27, 29)F1(74, 76)F1(185, 187)F1(440, 442)F1(1015, 1017)F1(2294, 2296)
19 10228 15569256417≈ 5,742397643 · 1024≈ 3,668181327 · 1058≈ 5,019729940 · 10135≈ 1,428323374 · 10309≈ 3,356154368 · 10694
22x+1·(x+2) − x − 1 · (2x+1·(x+2) − x − 1) − (2x+1·(x+2) − x + 1)
≈ 10lg 2 · (2x+1·(x+2) − x − 1) + lg(2x+1·(x+2) − x − 1) ≈ 10lg 2 · 2x+1·(x+2) + lg(2x+1·(x+2)) ≈ 10lg 2 · (2x+1·(x+2)) = 1010lg lg 2 + lg 2·(x+1) + lg(x+2) ≈ 1010lg 2·(x+1) + lg(x+2)
3F1 (F2(0, 2),  
F2(0, 2)+3)
F1 (F2(1, 2),  
F2(1, 2)+3)
F1 (F2(2, 2),  
F2(2, 2)+3)
F1 (F2(3, 2),  
F2(3, 2)+3)
F1 (F2(4, 2),  
F2(4, 2)+3)
F1 (F2(5, 2),  
F2(5, 2)+3)
F1 (F2(6, 2),  
F2(6, 2)+3)
F1 (F2(7, 2),  
F2(7, 2)+3)
F1(F1(1,3),  
F1(1,3)+3)
F1(F1(8,10),  
F1(8,10)+3)
F1(F1(27,29),  
F1(27,29)+3)
F1(F1(74,76),  
F1(74,76)+3)
F1(F1(185,187),  
F1(185,187)+3)
F1(F1(440,442),  
F1(440,442)+3)
F1(F1(1015,1017),  
F1(1015,1017)+3)
F1(F1(2294,2297),  
F1(2294,2297)+3)
F1(19, 22)F1(10228, 10231)F1(15569256417,
15569256420)
F1(≈6·1024, ≈6·1024)F1(≈4·1058, ≈4·1058)F1(≈5·10135, ≈5·10135)F1(≈10309, ≈10309)F1(≈3·10694, ≈3·10694)
88080360≈ 7,04 · 103083≈ 7,82 · 104686813201≈ 101,72·1024≈ 101,10·1058≈ 101,51·10135≈ 104,30·10308≈ 101,01·10694
longer expression, starts with 222x+1 an, ≈ 101010lg 2·(x+1) + lg(x+2)
4F1 (F2(0, 3),  
F2(0, 3)+4)
F1 (F2(1, 3),  
F2(1, 3)+4)
F1 (F2(2, 3),  
F2(2, 3)+4)
F1 (F2(3, 3),  
F2(3, 3)+4)
F1 (F2(4, 3),  
F2(4, 3)+4)
F1 (F2(5, 3),  
F2(5, 3)+4)
F1 (F2(6, 3),  
F2(6, 3)+4)
F1 (F2(7, 3),  
F2(7, 3)+4)
F1 (F1(19, 22),  
F1(19, 22)+4)
F1 (F1(10228,  
10231),  
F1(10228,  
10231)+4)
F1 (F1(15569256417,  
15569256420),  
F1(15569256417,  
15569256420)+4)
F1 (F1(≈5,74·1024, ≈5,74·1024),
F1(≈5,74·1024, ≈5,74·1024))
F1 (F1(≈3,67·1058, ≈3,67·1058),
F1(≈3,67·1058, ≈3,67·1058))
F1 (F1(≈5,02·10135, ≈5,02·10135),
F1(≈5,02·10135, ≈5,02·10135))
F1 (F1(≈1,43·10309, ≈1,43·10309),
F1(≈1,43·10309, ≈1,43·10309))
F1 (F1(≈3,36·10694, ≈3,36·10694),
F1(≈3,36·10694, ≈3,36·10694))
F1(88080360,
88080364)
F1(10230·210231−10233,
10230·210231−10229)
≈ 3,5 · 1026514839
much longer expression, starts with 2222x+1 an, ≈ 10101010lg 2·(x+1) + lg(x+2)

Values of F3

y \ x 0 1 2 3 4
0 0 1 2 3 4
x
1F2 (F3(0, 0),  
F3(0, 0)+1)
F2 (F3(1, 0),  
F3(1, 0)+1)
F2 (F3(2, 0),  
F3(2, 0)+1)
F2 (F3(3, 0),  
F3(3, 0)+1)
F2 (F3(4, 0),  
F3(4, 0)+1)
F2(0, 1)F2(1, 2)F2(2, 3)F2(3, 4)F2(4, 5)
110228≈ 7,82 · 104686813201
No closed expressions possible within the framework of normal mathematical notation
2F3 (F4(0, 1),  
F4(0, 1)+2)
F3 (F4(1, 1),  
F4(1, 1)+2)
F3 (F4(2, 1),  
F4(2, 1)+2)
F3 (F4(3, 1),  
F4(3, 1)+2)
F3 (F4(4, 1),  
F4(4, 1)+2)
F3 (1, 3)F3 (10228, 10230)F3 (≈104686813201
≈104686813201)
 
No closed expressions possible within the framework of normal mathematical notation

Bibliography

External links

Notes and References

  1. The rightmost innermost occurrences of F are underlined.