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

Alright, I think I've finally gotten it after the third time.

Go from left to right factorials.

First Case: ! is in the first position

F(!, a, X) = F(F(!, a - 1, X), a, X) where X is all the other parameters

F(!, 1, X) = F(F(!, 1, b - 1, Y), 1, X) Where b is the first element of X and Y are the rest of the elements in X

F(!, 1, 1, Y) = F(F(!, 1, 1, c - 1, Z), 1, 1, Y) where c is the first element of Y and Z are the rest of the elements in Y

And So On...

F( !,  1, 1, ..., 1) = 1

Second Case: ! is in the first position, with another !s in the following positions

F(!, ..., !, a, X) = F(!, ..., F(!, ..., !, a - 1, X), a, X) where X are the rest of the parameters in the function.

F(!, ..., !, 1, X) = F(!, ..., F(!, ..., !, 1, b - 1, Y), 1, X) where b is the first element of X and Y are the rest of the parameters.

And So On...

F(!, ..., !, 1, ..., 1) = 1

Third Case: ! is NOT in the first position and is NOT in the last position

F(X, a, !, Y) = F(X, a, F(X, a - 1, !, Y), Y) where X are the parameters before a and Y are the parameters

F(X, 1, !, Y) = F(X, 1, F(Z, b - 1, 1, !, Y), Y) where b is the last element from X and Z are the rest of the elements in X

F(Z, 1, 1, !, Y) = F(Z, 1, 1, F(A, c - 1, 1, 1, !, Y), Y) where c is the last element in Z and A are the of the elements in Z

and so on...

F(1, ..., 1, !, Y) = F(1, ..., 1, F(1, ..., 1, !, d - 1, Z), Y) where d is the first element of Y and Z are the rest of the elements in Y.

F(1, ..., 1, !, 1, Z) = F(1, ..., 1, F(1, ..., 1, !, 1, e - 1, A), 1, Z) where e is the first element of Z and A are the rest of the elements in Z.

And so on ...

F(1, ..., 1, !, 1, ..., 1) = 1

Fourth and Final Case: ! is in the last position

F(X, a, !) = F(X, a, F(X, a - 1, !)) where X are the rest of the parameters

F(X, 1, !) = F(X, 1, F(Y, b - 1, 1, !)) where b is the last element of X and Y are the rest of the elements in X

F(Y, 1, 1, !) = F(Y, 1, 1, F(Z, c - 1, 1, 1, !)) where c is the last element of Y and Z are the rest of the elements in Y

and so on...

F(1, ..., 1, !) = 1

Can you give growth rates for this put into functions (like A(!, !, !, n) and {x, y, x, !})?

If the function doesn't work this time please let me know.