Results 1 to 20 of 20

Thread: Factorial

  1. #1

    Thread Starter
    Banned
    Join Date
    Feb 2001
    Location
    Back to sh*tland
    Posts
    294

    Factorial

    Why 0! = 1 ?

  2. #2
    Frenzied Member
    Join Date
    Jul 1999
    Location
    Huntingdon Valley, PA 19006
    Posts
    1,151

    It works.

    There is probably some esoteric proof for it. Without doing some research, the best I can say is that it works and avoids a lot of special case formulae.

    For example, consider the formula for combinations of R items selected from N total items. The general formula is as follows.

    N!/ R!*(N-R)!

    Take 5 total items as an example and apply the formula.
    • 5 items: 1 combination.
    • 4 items: 5 combinations.
    • 3 items: 10 combinations.
    • 2 items: 10 combinations.
    • 1 items: 5 combinations.
    • 0 items: 1 combination.
    Notice that the formula for 5 items and zero items has 0! in the denominator. I picked the above example, because it is so easy to verify the numbers without knowing the formula.

    As I said, it works. There are other formulae which could have been used as an example.

    BTW: Consider all the binary numbers possible with 5 bits. There are 32, each of which corresponds to one of the above 32 possible combinations. If you take 5 cards from a deck and associate each card with a bit in the number, you can see which combination corresponds to
    which binary integer.
    Live long & prosper.

    The Dinosaur from prehistoric era prior to computers.

    Eschew obfuscation!
    If a billion people believe a foolish idea, it is still a foolish idea!
    VB.net 2010 Express
    64Bit & 32Bit Windows 7 & Windows XP. I run 4 operating systems on a single PC.

  3. #3
    transcendental analytic kedaman's Avatar
    Join Date
    Mar 2000
    Location
    0x002F2EA8
    Posts
    7,221
    1 is the "unit" or "identity" of * operator; for any product gives itself if you multiply with 1. So if the expression is missing (that is 0 factors) then the factorial is 1, as it is the the unit of the product.

    0!=u = 1
    1!=u*1 = 1
    2!=u*1*2 = 2
    3!=u*1*2*3 = 6

    and so on..
    Use
    writing software in C++ is like driving rivets into steel beam with a toothpick.
    writing haskell makes your life easier:
    reverse (p (6*9)) where p x|x==0=""|True=chr (48+z): p y where (y,z)=divMod x 13
    To throw away OOP for low level languages is myopia, to keep OOP is hyperopia. To throw away OOP for a high level language is insight.

  4. #4
    Guru Yonatan's Avatar
    Join Date
    Apr 1999
    Location
    Israel
    Posts
    892
    Here's what I was taught:

    0! is defined as 1 - it isn't a matter of proving it, based on earlier functions/formulae - it's a matter of choosing a value that "works" well with everything, as Guv mentioned.

    There is a very complicated function called the Gamma Function.
    I won't go into details - mostly because I don't really know many myself - but I'll tell you this:
    It can be mathematically proven that for a natural number n where (n > 1),
    Code:
    Gamma(n) = (n - 1)!
    However, when you calculate the function's value for 1, you get:
    Code:
    Gamma(1) = 1
    So it is appropriate to define (not prove but define):
    Code:
    (1 - 1)! = 1
    0! = 1

  5. #5

    Thread Starter
    Banned
    Join Date
    Feb 2001
    Location
    Back to sh*tland
    Posts
    294
    Originally posted by Yonatan
    It can be mathematically proven that for a natural number n where (n > 1),
    Code:
    Gamma(n) = (n - 1)!
    However, when you calculate the function's value for 1, you get:
    Code:
    Gamma(1) = 1
    So it is appropriate to define (not prove but define):
    Code:
    (1 - 1)! = 1
    0! = 1
    Precisely. I read that here

    But it still confuses me this thing of defining considering what's in blue above.
    Doesn't that mean that it is also proven that 0! = 1 ?

  6. #6
    transcendental analytic kedaman's Avatar
    Join Date
    Mar 2000
    Location
    0x002F2EA8
    Posts
    7,221
    In fact nothing can be proven without axioms and rules. Axioms though cannot be proved because they are derived from common sense.
    I still think that 0!=1 is derived from the product identity, if not directly then as a consequence of the same logical approach.
    Use
    writing software in C++ is like driving rivets into steel beam with a toothpick.
    writing haskell makes your life easier:
    reverse (p (6*9)) where p x|x==0=""|True=chr (48+z): p y where (y,z)=divMod x 13
    To throw away OOP for low level languages is myopia, to keep OOP is hyperopia. To throw away OOP for a high level language is insight.

  7. #7

    Thread Starter
    Banned
    Join Date
    Feb 2001
    Location
    Back to sh*tland
    Posts
    294
    Thanks. I'm more enlighted now.

  8. #8
    Fanatic Member simonm's Avatar
    Join Date
    Sep 2000
    Location
    Devon, England
    Posts
    796

    Arrow Axioms

    In fact nothing can be proven without axioms and rules. Axioms though cannot be proved because they are derived from common sense.
    What does this tell us about our perception of reality if everything we know (with the exception, perhaps, of 'I think therefore I am') is based on assumptions which cannot be proven?

  9. #9
    transcendental analytic kedaman's Avatar
    Join Date
    Mar 2000
    Location
    0x002F2EA8
    Posts
    7,221

    Re: Axioms

    Originally posted by simonm


    What does this tell us about our perception of reality if everything we know (with the exception, perhaps, of 'I think therefore I am') is based on assumptions which cannot be proven?
    that reality might be an illusion
    Use
    writing software in C++ is like driving rivets into steel beam with a toothpick.
    writing haskell makes your life easier:
    reverse (p (6*9)) where p x|x==0=""|True=chr (48+z): p y where (y,z)=divMod x 13
    To throw away OOP for low level languages is myopia, to keep OOP is hyperopia. To throw away OOP for a high level language is insight.

  10. #10
    Fanatic Member simonm's Avatar
    Join Date
    Sep 2000
    Location
    Devon, England
    Posts
    796

    Rather...

    That our perception of reality is unreliable.

  11. #11

    Thread Starter
    Banned
    Join Date
    Feb 2001
    Location
    Back to sh*tland
    Posts
    294
    Isn't that a bit risky for science to relay on axioms? A whole structure would fall down if someone... proved... that a small axiom is false. (absurd question maybe?)

  12. #12
    transcendental analytic kedaman's Avatar
    Join Date
    Mar 2000
    Location
    0x002F2EA8
    Posts
    7,221
    not really, the illusion "seems" to be very consistent, but who knows what kind of matrix we live in
    even if science relies on illusions, it's better than nothing.

    well simon, depends how we define our crappy missunderstood reality.
    Use
    writing software in C++ is like driving rivets into steel beam with a toothpick.
    writing haskell makes your life easier:
    reverse (p (6*9)) where p x|x==0=""|True=chr (48+z): p y where (y,z)=divMod x 13
    To throw away OOP for low level languages is myopia, to keep OOP is hyperopia. To throw away OOP for a high level language is insight.

  13. #13
    Addicted Member Active's Avatar
    Join Date
    Jan 2001
    Location
    Lat: 13° 4' 46" N, Long: 80° 15' 20" E
    Posts
    209
    Originally posted by Goodreams
    Isn't that a bit risky for science to relay on axioms? A whole structure would fall down if someone... proved... that a small axiom is false. (absurd question maybe?)
    Yes...If Every one still Believed in the Euclidean Parallel postulate
    we would not have hyperbolic geometry at all.
    If you can't beat your computer at chess, try kickboxing !!!
    [Download Tag Editing Tools.]

  14. #14
    transcendental analytic kedaman's Avatar
    Join Date
    Mar 2000
    Location
    0x002F2EA8
    Posts
    7,221
    What about classical mechanics? You don't have to believe
    Use
    writing software in C++ is like driving rivets into steel beam with a toothpick.
    writing haskell makes your life easier:
    reverse (p (6*9)) where p x|x==0=""|True=chr (48+z): p y where (y,z)=divMod x 13
    To throw away OOP for low level languages is myopia, to keep OOP is hyperopia. To throw away OOP for a high level language is insight.

  15. #15
    Fanatic Member simonm's Avatar
    Join Date
    Sep 2000
    Location
    Devon, England
    Posts
    796

    Smile Axioms

    Isn't that a bit risky for science to relay on axioms? A whole structure would fall down if someone... proved... that a small axiom is false. (absurd question maybe?)
    Yes, it is an absurd question (sorry!)

    Every theorem has to have a starting point, and those starting points are called axioms.

    It is unlikely that one of the more fundamental axioms would be disproved. At least there would be a huge resistance to any such assertion that it would be difficult for such an idea to get off the ground.

    It has happened before though.

    Kedaman,
    depends how we define our crappy missunderstood reality.
    I am unsure as to exactly what you mean by that...especially by your use of the word 'crappy'. Is this an insight into your perception of the world?

  16. #16
    transcendental analytic kedaman's Avatar
    Join Date
    Mar 2000
    Location
    0x002F2EA8
    Posts
    7,221
    Our vision of reality does not always seem to be consistent, those who don't qualify in a very narrow scope can have a totally different view of reality, those who are not "sane" so to speak. We all have different view of reality. What i meant with crappy is that we have choosen this general scope of reality, and adapted ourself to follow it wihtout knowing how correct it is. Anyway you can either, and most people do, define this as our reality, and those who cannot see it clearly are dreaming or hallucinating. As you and I would define it, we refer to an objective reality that is consistent and project differently into different peoples views depending on the perspective.
    Use
    writing software in C++ is like driving rivets into steel beam with a toothpick.
    writing haskell makes your life easier:
    reverse (p (6*9)) where p x|x==0=""|True=chr (48+z): p y where (y,z)=divMod x 13
    To throw away OOP for low level languages is myopia, to keep OOP is hyperopia. To throw away OOP for a high level language is insight.

  17. #17
    transcendental analytic kedaman's Avatar
    Join Date
    Mar 2000
    Location
    0x002F2EA8
    Posts
    7,221
    I'm putting this reality definition aside for a second, because it'd bluring what we're saying. There's a better word, existance, which i'm going to use. Assume first that if something does not exist then it can't think, so i am automaticall pulled into existance followed by the reality concept we both can refer to, the perspective-reality model. Now existance is the objective reality i'm talking about, because it is consistent, the subjective reality is "our" reality, the existance is not. Take for instance a dream, it is a reality itself, you don't exist in it, you exist here, but your subjective reality is at the dream plane and when you wake up, you exit the subjective reality (maybe this is the "stripping away reality", which you mentioned). The point is that Objective and Subjective Reality doesn't exist at the same plane, if i exist, then i have a root in a objective reality that i cannot imagine of.
    Use
    writing software in C++ is like driving rivets into steel beam with a toothpick.
    writing haskell makes your life easier:
    reverse (p (6*9)) where p x|x==0=""|True=chr (48+z): p y where (y,z)=divMod x 13
    To throw away OOP for low level languages is myopia, to keep OOP is hyperopia. To throw away OOP for a high level language is insight.

  18. #18
    Fanatic Member simonm's Avatar
    Join Date
    Sep 2000
    Location
    Devon, England
    Posts
    796

    OK

    Assume first that if something does not exist then it can't think, so i am automaticall pulled into existance followed by the reality concept we both can refer to, the perspective-reality model.
    I am not quite sure I follow the logic of what you are saying there.

    Now existance is the objective reality i'm talking about, because it is consistent...
    Consistant with what?

    The point is that Objective and Subjective Reality doesn't exist at the same plane, if i exist, then i have a root in a objective reality that i cannot imagine of.
    This sounds like the parallel universe theory (or something like it) which asserts that every possible reality exists in parellel. What you seem to be suggesting is that one of these parellel planes is the "real" one and the rest are pale imitations of it.

  19. #19
    Behemoth
    Guest
    Using Cartesian philosophy as a base, Kedaman, you simply telling me you exist does not necessarily mean that you do...

  20. #20
    Junior Member pranavdesai's Avatar
    Join Date
    Feb 2001
    Location
    india
    Posts
    24

    abt gamma fn

    although i am late if someone needs help understanding gamma fn i am always ready to help.
    pmd

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width