Re: Proposal: 6NF

From: Aloha Kakuikanu <aloha.kakuikanu_at_yahoo.com>
Date: 23 Oct 2006 09:21:32 -0700
Message-ID: <1161620492.649735.172300_at_h48g2000cwc.googlegroups.com>


Keith H Duggar wrote:
> vc wrote:
> > Marshall wrote:
> > > I do not recall learning anything in secondary school
> > > which would suggest 2 and 2.0 were numerically different
> > > in any way. Nor can I think of any *arithmetic* way to
> > > distinguish between 2 and 2.0.
> >
> > You have to construct all the real numbers and prove that
> > 2 is an element of the set.
>
> Any mathematical number construct that fails to equate 2.0
> and 2, fails to model our most basic common sense or
> "elemntary school" concept of the number 2.

As Arturo Magidin put it, they are equated by "abuse of notation": http://groups.google.com/group/sci.math/browse_frm/thread/278403fc6b797673/e8cc6311336e345a?lnk=st&q=&rnum=6&hl=en#e8cc6311336e345a

Translating it into programming his simplest case, natural numbers and integers, there are at least 5(!) classes involved:

abstract class ANaturalNumber {

     abstract ANaturalNumber plus( ANaturalNumber arg2 );
     abstract boolean equals( ANaturalNumber arg2 );
}

class NaiveNaturalNumber extends ANaturalNumber (

    int n; // assert(n>=0)
    ... // implementation of the plus and equals methods );

abstract class AnInteger extends ANaturalNumber? {

     abstract ANaturalNumber minus( ANaturalNumber arg2 ); }

class Integer extends AnInteger (

    ANaturalNumber n;
    ANaturalNumber m;
    // ... methods
    boolean equals( AnInteger arg2 ) {

         return n+arg2.m == m + arg2.n;  // where '+' and '=='
                                                               // are
the plus() and equals() methods called

    }
}

class AnotherNaturalNumber extends AnInteger (

    ANaturalNumber n;
    ANaturalNumber m;
    NaiveNaturalNumber castToNaiveNatural() {

         return n-m???;
    }
    // what about the minus method ????? } Received on Mon Oct 23 2006 - 18:21:32 CEST

Original text of this message