# Zero factorial

• I
Pete Mcg

Yes. I have seen this one. It's good.

Pete Mcg
Thank you. You have been very helpful.

PeroK
Pete Mcg
Yup, that is the gist of it.

If you want to understand what mathematicians call a proof https://www.people.vcu.edu/~rhammack/BookOfProof/

Thank you so much!It all makes sense now...

Pete Mcg
Thank you so much!It all makes sense now...
My God! I've just had a peek at Book Of Proof and it's marvellous. Can I write you into my will?

berkeman
Mentor
please correct me if I'm wrong. 0!=1 is a 'definition' in the same way that 1=1 or any other self evident statement is a definition and 'You do no prove a definition in Mathematics'.
1 = 1 is not a definition. In general for all kinds of definitions, including words found in a dictionary, you can't define something in terms of itself.
The equation 1 = 1 is an example of the reflexive property of the equality relation. This property says that any number is equal to itself. Other relations, such as < or >, do not have this property. For example, ##5 \nless 5## and ##2 \ngtr 2##.

Last edited:
Pete Mcg, sysprog and PeroK
MidgetDwarf
My God! I've just had a peek at Book Of Proof and it's marvellous. Can I write you into my will?
Yes .

Pete Mcg
Throughout this thread I see; n! = n(n-1)!
But that is sloppy since the complete recursive definition of factorial is;
n! = n(n-1)! for n≥1 and 0!=1
Everything here is a definition.
Do not attempt to use the definition as a self referential proof of itself.

Pete Mcg and PeroK
Homework Helper
Gold Member
2022 Award

##0! = 1## (by definition)

##n! = n(n-1)!## (for ##n \ge 1##)
You obviously failed to see post #2.

@PeroK
I did see post #2. You got it right, but most of the thread ignores the complete definition and so becomes incomplete or self-referential.

Lord Jestocost
Gold Member
@PeroK
I did see post #2. You got it right, but most of the thread ignores the complete definition and so becomes incomplete or self-referential.
I apologize for not meeting your standards.

I apologize for not meeting your standards.
No apology is necessary in hindsight if it gets people to think. My standards are lower than yours.

This interesting thread gave me the uncanny feeling that we were contemplating the proof of a definition, from inside a fishbowl, while looking at our different reflections in the curved wall.

Meanwhile some find the difference between antimony and an antinomy.

sysprog
sysprog
I apologize for not meeting your standards.
Hmm ##\dots -## here's an observation not especially related to meeting standards, but at least ancillarily related to this thread topic: computationally, for e.g. card-deck-sized non-zero factorials, e.g. between euchre, poker, and pinochle or canasta sized decks, an iterative method is a little faster than recursive, but for zero, there's no comparison necessary between those methods, because we just hardcode zero factorial to 1 ##-## it's so by definition, as @PeroK said, and reasonably so, as @fresh_42, @PeroK, @Baluncore, @Mark44, and maybe others, explained.

@sysprog Is the definition of n! iterative or recursive ?
I think you are saying that, even if I knew the difference between an iterative and a recursive definition, I could not apply either to the definition of 0!

Homework Helper
Gold Member
Is the definition of n! iterative or recursive ?
Iterative (or explicit) definition:
$$n! = \begin{cases} \prod\limits_{k=1}^n k, & \text{if}\ n>0 \\ 1, & \text{if}\ n = 0 \end{cases}$$
Recursive (or implicit) definition:
$$n! = \begin{cases} n(n-1)! , & \text{if}\ n>0 \\ 1, & \text{if}\ n = 0 \end{cases}$$
So ## 0! ## is defined identically in each case.

Klystron, sysprog and Baluncore
Homework Helper
Or simply $$n!=\prod\limits_{k=1}^n k$$ with the understanding that a product indexed from one to zero is the empty product which is, by definition, the neutral element for multiplication.

Edit:

In the world of computing, the Ada programming language makes explicit the notion of an empty array slice such as a[1:0]. If the initial index is one greater than the final index, the result is explicitly the empty array and no bounds checking on either index is performed.

In VAX Fortran-77 the same would work and was needed to create an empty string, but one needed to compile with bounds checking disabled.

Last edited:
Pete Mcg
Yes .
How does 10% of almost nothing sound?

Pete Mcg
1 = 1 is not a definition. In general for all kinds of definitions, including words found in a dictionary, you can't define something in terms of itself.
The equation 1 = 1 is an example of the reflexive property of the equality relation. This property says that any number is equal to itself. Other relations, such as < or >, do not have this property. For example, ##5 \nless 5## and ##2 \ngtr 2##.
Thank you for that. As stated previously in my original post, I'm not a Mathematician and am learning, every little bit counts and I appreciate your and everybody's input . (Learned today that you when you multiply a negative number by a negative number the result is a positive number - they didn't teach this in Maths @ school I went to so it took a bit of getting my head round it - at first I went HUH?? but it's starting to makes sense.) This a new world to me, good fun -talk about fun - this Godel incompleteness thing has got me intrigued!
As in learning any new 'language' one needs to understand the rules and conventions (another thing learned today was BOMDAS / PEMDAS)Even the supposedly simplest thing like 'number' has a myriad of different 'meanings' - natural numbers, rational numbers, irrational etc etc etc ...Anyway, enough of my rambling. Cheers.

Mentor
2022 Award
they didn't teach this in Maths @ school I went to so it took a bit of getting my head round it - at first I went HUH??
A product is an area. An area is oriented. It makes a difference whether you circle it clockwise or counter-clockwise, one is noted as a positive number, the other one by a negative number. Which is which is up to you. The lines are oriented, too, up and down, left and right. Now ##(+1)\cdot (+1)## has the same orientation as ##(-1)\cdot (-1),## and ##(+1)\cdot (-1)## is of opposite orientation.

Homework Helper
Another motivation is the distributive law: ##a \times (b+c) = a \times b + a \times c##

Say you have ##-2 \times (1-1)## then clearly that should evaluate as ##-2 \times 0 = 0##. If we apply the distributive law, it should be equal to ##( -2 \times 1 ) + ( -2 \times -1 )##. But if a negative times a negative is a negative, that formula evaluates as ##-2 + -2## for a result of ##-4## which is wrong.

So if a negative times a negative yields a negative, the distributive law breaks.

Mentor
(Learned today that you when you multiply a negative number by a negative number the result is a positive number - they didn't teach this in Maths @ school I went to so it took a bit of getting my head round it
Sorry to hear that it wasn't taught at your school. My first exposure to signed-number arithmetic was in ninth grade, back when I was 14.

Last edited: