User blog comment:MilkyWay90/Generalized Factorial Function/@comment-35392788-20180517135333/@comment-35392788-20180531191237

A(!,!,!,n) is very much degenerate : it's always 1. Try it for yourself. My own process gives only zeroes here.

{x,x,!} is much more powerful on the other hand : {1,1,!} is still 1, {2,2,!} is still 4 {3,3,!} = {3,3,{3,2,!}} = {3,3,{3,2,{3,1,!}}} = ... = {3,3,3^3^3}

That is progress. That is not too bad indeed, but I believe you can generalize this in order to have less rules.

I'd also like to amend my own process here : if the expression is only default values and !s, then, instead of returning the default value, all !s will be replaced with the default value.

Let's see what this does on A(!,!,!,n) :

A(!,!,!,1) = A(!,!,A(!,!,!,0),1) = A(!,!,A(0,0,0,0),1) = A(!,!,1,1) = A(!,!,0,A(!,!,1,0)) = A(!,!,0,A(!,!,0,1)) = A(!,!,0,A(!,!,A(!,!,0,0))) = ... = A(!,!,0,A(!,A(29,3)))

WHOA ! Look at how much that tiny change made this function's growth rate skyrocket ! A(29,3) is utterly massive in and of itself (2 ↑↑..↑↑ 6 with 27 arrows), and don't get me started on A(!,that number).