1/3 = 2/6

Pages: 123
I propose that that 1/3 is not the same as 2/6. What do you think?

-Albatross

NOT-AN-EDIT: 666 posts, and counting
Last edited on
You are proven wrong by 2nd grade arithmetic
it is just because the calculator says so.
LOL.

What is the point here?
I know of a man I think you'll like. Maybe you know him already. His name is Gene Ray.
Who taught you maths?
closed account (z05DSL3A)
What do you think?

I think I would need more information about the context in which such a statement was made before determining if it is valid or you are one sandwich short of a picnic.
You don't provide any reasoning for why you think that.
1/2 = 0.5
3/6 = 0.5
0.5 / 0.5 = 1
So 1/3 = 2/6.
Hmmm, not the same but equal?
...I wonder what I was expecting, posting this question in a forum of programmers, besides an exclusively mathematical view of the problem. At least Grey Wolf and Duoas were asking questions, though.

@Grey Wolf: The context is that some insane geek put a statement on a C++ forum that 1/3 is not the same as 2/6. ;)

@Duoas: You'll see.

@helios: Nice.

-Albatross
Last edited on
Rational numbers are defined as:
ℚ = ( ℤ × ( ℤ \ {0} ) ) / ~ = { [(m,n)]~ | m ∈ ℤ ∧ n ∈ ℤ\{0} }
where ~ is an equivalence relation defined like this:
(p1,q1) ~ (p2,q2) ⇔ p1q2-p2q1 = 0

1/3 = [(1,3)]~ ∈ ℚ
2/6 = [(2,6)]~ ∈ ℚ

1*6 - 2*3 = 0
⇒ (1,3) ~ (2,6)
⇒ [(1,3)]~ = [(2,6)]~
⇒ in ℚ 1/3 = 2/6

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include <cmath>
#include <iostream>
#include <sstream>
#include <string>
using namespace std;

struct fraction
  {
  int numerator;
  int denominator;

  fraction( int n = 0, int d = 1 ):
    numerator( n ),
    denominator( d )
    { }
  };

bool operator == ( const fraction& lhs, const fraction& rhs )
  {
  return (lhs.numerator   == rhs.numerator)
      && (lhs.denominator == rhs.denominator);
  }

ostream& operator << ( ostream& outs, const fraction& f )
  {
  return outs << f.numerator << "/" << f.denominator;
  }

int main()
  {
  fraction a( 1, 3 );
  fraction b( 2, 6 );

  cout << a << ((a == b) ? " equals " : " does not equal ") << b << endl;

  return 0;
  }
D:\prog\foo> g++ -Wall -ansi -pedantic a.cpp

D:\prog\foo> a
1/3 does not equal 2/6

D:\prog\foo> _

Oh no!
:->
Does this have some weird relation to 0.9999999999... == 1.0?
closed account (z05DSL3A)
It could just have some wired relation to the vagaries of natural language.

Why dose 1/3 have to be anything to do with maths. Why is ‘is not the same as’ being equated to ‘is equal to’. Then there is the question itself; what is it asking, ‘What do you think?’, what do you think about what?
@Duoas: Heh heh heh...

@firedraco: Nope. At least, none intended.

@Bazzy: While I expect that elementary number theory will tell you that indeed tell you that a rational number 1/3 is indeed equal to another rational number 2/6... *censored*

-Albatross
Last edited on
Does this have some weird relation to 0.9999999999... == 1.0?

Yes, but I think it is because the geek was either playing tricks with his FPU or was ignorant of the tricks that the FPU plays with you.
http://docs.sun.com/source/806-3568/ncg_goldberg.html
Last edited on
@Bazzy,
My head hurts :(
Duoas wrote:
Yes, but I think it is because the geek was either playing tricks with his FPU or was ignorant of the tricks that the FPU plays with you.


Actually I was talking more about this:
http://en.wikipedia.org/wiki/0.999...
Ugh....

1/3 isn't the same as
0.33333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333...

And that's not the basis of my claim either. It's an interesting topic, though. I could use a few more threes though.

EDIT: Grey Wolf is actually thinking. <333333333333

-333333333
Last edited on
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include <cmath>
#include <iostream>
#include <sstream>
#include <string>
using namespace std;

struct fraction
  {
  int numerator;
  int denominator;

  fraction( int n = 0, int d = 1 ):
    numerator( n ),
    denominator( d )
    { }
  };

bool operator == ( const fraction& lhs, const fraction& rhs )
  {
  return lhs.numerator*rhs.denominator - lhs.denominator*rhs.numerator == 0;
  }

ostream& operator << ( ostream& outs, const fraction& f )
  {
  return outs << f.numerator << "/" << f.denominator;
  }

int main()
  {
  fraction a( 1, 3 );
  fraction b( 2, 6 );

  cout << a << ((a == b) ? " equals " : " does not equal ") << b << endl;

  return 0;
  }
$ g++ -Wall -ansi -pedantic a.cpp
$ ./a.out
1/3 equals 2/6
$ _
Pages: 123