We all know the recursive definition of the factorial function:
f(x) = { x * f(x-1) x > 1
{ 1 x = 1
And that this only works when x = [[x]].
But what about when x != [[x]]?
I set about to write a definition:
g(x, t) = { x * g(x-t, t) x > t
{ t x = t
f(x) = lim g(x, t)
t->0^{+}
As insane as it is, would it work? I can't figure out how to put it into Wolfram Alpha, and my TI-89 just craps out with an Out of Memory error when I try anything.
This definition involves a function that both recurses infinitely many times and terminates, which is not possible. It would appear that you're trying to multiply all reals in an interval, but this is not possible by iterating over an interval by a shrinking step size. No matter how small the step size, there are always more reals in between any two steps, so the function doesn't converge towards anything.
Though, aren't there some characteristics that we can hold to be true?
Wouldn't f(1) be less than or equal to 1 because it can never multiply by anything larger than 1?
(Thanks for the link to the gamma function, I didn't know this existed)
Honestly, I think the value is ill-defined.
Suppose that you have the function fold(*,S) that returns for a set S the result of applying the binary, commutative, and associative operation * to all elements of S. For example, fold(×,{1,2,3,4}) = 4!.
fold() can be applied iff S is a countable set, because an element in an uncountable set (regardless of orderedness) has no "next" element, because uncountable sets aren't mappable to the naturals.
Though, aren't there some characteristics that we can hold to be true?
Wouldn't f(1) be less than or equal to 1 because it can never multiply by anything larger than 1?
-1 <= sin(x) <= 1, but still ∄ lim x -> +inf sin(x).
Some TI calculators actually use the gamma function to calculate factorials for numbers halfway between two integers. Back when I did TI programming I would sometimes calculate 69.5! repeatedly to introduce a delay, as the gamma function takes a considerable amount of time to compute and any larger factorial would exceed 10^100 and trigger an overflow error.