## User Tag List

1. Originally Posted by CaptainChick
Is pi a finite number/quantity?
Yes. It is irrational, but finite.

Originally Posted by CaptainChick
Also, is a discrete, actual circle even real?!?!?!?

I have issues with pi.

Is a circle a theoretical construct?

Like, in reality, what does the circumference, (as in the linear perimeter) of a circle even look like?

Sorry, if I am asking stupid questions. :/
B. Fuller also didn't like the ideas of perfect circles in nature.

I doubt any real examples exist. It's just an abstraction (a very usefull one). The closest things I can think of are the orbits of physical systems in uniform circular motion (like in centrifuges).

Interestingly enough, pi shows up in statistics often through spectral analasys because of the close relationship between Gaussians and Sinusoids through the Singular Value Decomposition.

2. Originally Posted by ygolo
B. Fuller also didn't like the ideas of perfect circles in nature.

I doubt any real examples exist. It's just an abstraction (a very usefull one). The closest things I can think of are the orbits of physical systems in uniform circular motion (like in centrifuges).
Don't those theoretically always end up being ellipses?

3. Originally Posted by Jack Flak
Don't those theoretically always end up being ellipses?
They are probably subtley different from idealized shapes (which elipses are too).

Circular motion is, however, a close enough for many calculations.

There is a reference frame one can create (often) where the coordinates are referenced to the unit vectors that are normal, tangential, and axial to the direction of motion.

Of course, this is often not an inertial refrence frame, and many times you can decompose the path into tiny (infinitesimal) "arcs" of uniform circular motion. The tangential vector comes in the direction of "rotation." The normal vector in the direction of force, and the axial vector a cross-product of the other two.

4. ## Rational numbers

I want to expound on some extremely basic properties rational numbers that I find fascinating.

First, for the uninitiated, rational numbers are the numbers that result from dividing an integer by non-zero integer. I will assume you understand the properties of the Integers.

Two rational numbers, n=p/q, and m=r/s, (where p, and r are integers, and s and q are non-zero integers) are considered "equal" if and only if p*s=r*q in the integer sense of equality.

You multiply two rational numbers, n=p/q, and m=r/s, (where p, and r are integers, and s and q are non-zero integers) to get a rational number l=(p*r)/(q*s). When you add those two same rational numbers, you get (p*s+r*q)/(2*q*s).

Also note, for a rational number of the form, n=p/1(where p is an integer), we can shord hand the rational number to just be the integer p.

For those of you who wonder if this is a valid definition of equality:
1. A rational number is equal to itself. If m is a rational number given by dividing r by s. r*s=r*s. (reflexive property)
2. Given two rational numbers m=p/q, and n=r/s (where p, and r are integers, and s and q are non-zero integers). If m=n, p*s=r*q. This means r*q=s*p*s, which means m=n. (symmetric property)
3. Given three rational numbers n=p/q, m=r/s, and l=t/u (where p, r, and t are integers, and s, q and u are non-zero integers)... and given that n=m and m=l. We have p*s=r*q and r*u=s*t. This means p*s*r*u=r*q*s*t. This further means that p*u*r*s=q*t*r*s. Dividing by r*s, p*u=q*t. This means n=l. (transitive property)

Given two rational numbers, n=p/q, and m=r/s, (where p, and r are integers, and s and q are non-zero integers) n is less than or equal to m if and only if p*s is less than or equal to r*q in the integer sense of the inequality.

For those of you uncomfortable with this definition of the inequality, we'll check the properties.
1. Given two rational numbers, n=p/q, and m=r/s, (where p, and r are integers, and s and q are non-zero integers). If n is less than or equal to m, and m is less than or equal to n. p*s is less than or equal to r*q, and r*q is less than or equal to p*s in the integer sense. This means in the integer sense, p*s=r*q. This then means n=m. (anti-symmetry).
2. Given three rational numbers n=p/q, m=r/s, and l=t/u (where p, r, and t are integers, and s, q and u are non-zero integers)... and given that n is less than or equal to m and m is less than or equal to l. We have p*s is less than or equal to r*q and r*u less than or equal to s*t. This means p*s*r*u less than or equal to r*q*s*t. This further means that p*u*r is less than or equal to s=q*t*r*s. Dividing by r*s, p*u is less than or equal to q*t. This means n=l. (transitivity)
3. Given two rational numbers, n=p/q, and m=r/s, (where p, and r are integers, and s and q are non-zero integers), either n*s is less than or equal to r*q or r*q is less than or equal to n*s or both. This means n is less than or equal to m or m is less than or equal to n

We say n is greater than or equal to m is m if an only if less than or equal to n. We say that m is less than(<) n if and only if m is less than or equal to n and it is not true that m=n. We say that n is greater than (>) m if and only if it is not true that n is less than or equal to n.

OK, now that you have been initiated to rational numbers, I'd like to point out some interesting properties.

First, between every pair of rational numbers, there is the average of the two rational numbers between them..

More formally, consider two rational numbers, n=p/q, and m=r/s, (where p, and r are integers, and s and q are non-zero integers), where n<m. This means, p*s<r*q. Consider another rational number, l=(p*s+r*q)/(2*q*s). 2*q*s*p < q*p*s+q*r*q=q*(p*s+r*q), This means n<l. Also, s*(p*s+r*q)=s*p*s+s*r*q<2*s*r*q=2*q*s*r. This means l<m. So for any two rational numbers, there is a rational number (namely the average) between them.

Rational numbers have a "natural" form (my term, useful for the ensuing discussion). Say n=p/q. If there exists an integer, r, greater than 1, such that r divides p evenly, and r divides s evenly, then p/q is in an “unnatural” form of n. We can divide both p and q by r and check to see if the result for a common divisor. Once n=p_0/q_0, where p_0 and q_0 have no integer divisors in common that are greater than 1, well call it the “natural” form.

So with all these numbers around, one may think that every point along a number line is covered, but this is far from the case.

First, let's see if we can find a rational number n, such that n^2=2. Let us suppose we have such a rational number, n, in natural form, n=p/q. Then p^2/q^2=2. This means p^2=2*q^2. So p^2 is even, meaning p is even. So p=2*r (r is an integer). This means (2r)^2=4*r^2=2*q^2. So 2*r^2=q^2. This implies that q^2 is even, and therefore q is even. However, this means that n was not in natural form, no matter what we choose from p and q. So there is no rational solution to n^2=2.

Let's look now at the two sets of rational numbers defined by A={all rational numbers, n, such that n^2<2}, B={all rational numbers, n, such that n^2>2}.

Let us now define a function that returns a rational result for any rational input, n>0.

m=n+(2-n^2)/(n+2). Notice:m>n if and only n^2<2. Similarly, m<n if and only if n^2>2.

We can re-write m like this: m=(2*n+2)/(n+2). So now m^2-2=2*(n^2-2)/(n+2)^2. Notice now that, m^2-2<0 (IOW m^2<2) if and only if n^2<2, and that m^2>2 if and only if n^2>2.

So now for every element, n, in A, we have a greater element, m in A. This means there is no greatest element in A.

Similarly for every element, n, in B, we have a lesser element, m in B. This means there is no least element in B.

Trippy huh?

5. Originally Posted by ygolo
Consider the following 4-dimensional hypercube with MBTI types on each node:

A Hamiltonian Path is (informally) a way to visit each node/vertex in a graph without picking up your pencil.

Can you find all Hamiltonian Paths on the MBTI hyper-cube?

One such path was used in my post on MBTI superlatives.

How many different such Paths are there?
Just want to say, I solved this (again?) recently. I wrote a brute force C++ program to solve it(may post it later).

Major props to whoever else figures it out. This is MUCH harder that the stuff in the puzzles thread.

There is a particular search engine that'll give you approximate answers. But try to get exact answers...and more importantly, a solution with explanation.

6. Originally Posted by ygolo
You multiply two rational numbers, n=p/q, and m=r/s, (where p, and r are integers, and s and q are non-zero integers) to get a rational number l=(p*r)/(q*s). When you add those two same rational numbers, you get (p*s+r*q)/(2*q*s).
I don't believe you should have a 2 in the denominator here. p/q + r/s = (p*s+r*q)/(q*s)
I mention this because you also use this expression later in your post with the 2 still in it. Perhaps you were just seeing if I was paying attention.

7. Originally Posted by The_Liquid_Laser
I don't believe you should have a 2 in the denominator here. p/q + r/s = (p*s+r*q)/(q*s)
I mention this because you also use this expression later in your post with the 2 still in it. Perhaps you were just seeing if I was paying attention.
haha, yeah, where did that 2 come from? It's good to know someone is paying attention.

Probably a copy and paste error from when I was talking about the everage od two rational numbers.

8. Yesterday, as I was thinking about nothing even remotely related to logic or math, it hit me:

"Mathematical induction" is a misnomer.

Mathematical induction constructs an argument of the following form:

If A, then B.
A.
Therefore, B.

More specifically...

If one case is true, all cases after it are true.
One case is true.
Therefore, all cases after it are true.

This is deductive.

It then proves the two premises deductively within the system of mathematics. There is nothing inductive about mathematical induction.

9. Here is my code for the Hamiltonian path problem:
(Note the problem is equivalent to finding the number of n-bit Gray Codes.)
PHP Code:
``` #include <iostream> using namespace std; #include <queue> // This program calculatges the Gray Codes // for a limited number of bits (<=4) class GrayCode; class CodeQueue; void fail(const char* const str); class GrayCode{ public:   enum{NUMBITS=5};   enum{MAXCODE=0x20};   //enum{NUMBITS=4};   //enum{MAXCODE=0x10};   //enum{NUMBITS=3};   //enum{MAXCODE=0x8};   //enum{NUMBITS=2};   //enum{MAXCODE=0x4};   GrayCode();   GrayCode(const GrayCode& code);   bool addCode(int code);   int getLength()const {return length;}   bool getLast(int& last) const;   void print(ostream & stream) const; private:   int length;   int bitField[MAXCODE]; //will keep number of bits small   bool used[MAXCODE]; // used number in code }; class CodeQueue{ public:   CodeQueue(){}   bool enqueue(GrayCode * code){_q.push(code); return true;}   bool dequeue(GrayCode*& code){code=_q.front(); _q.pop(); return true;}   bool empty(){return _q.empty(); }   queue<GrayCode*>::size_type getLength(){ return _q.size();}   static void processQueue(CodeQueue &workQ, CodeQueue &doneQ); private:   queue<GrayCode*> _q; }; int main(){   cout<<"Calculating Gray Codes"<<endl;   cout<<"Maxes: "<<GrayCode::MAXCODE<<endl;   CodeQueue workQ, doneQ;   for(int i=0; i<GrayCode::MAXCODE; ++i){     GrayCode * start = new GrayCode();     if(!start->addCode(i)){fail("addCode failed");}     if(!workQ.enqueue(start)){fail("enqueue failed");}   }   cout<<"There are "<<workQ.getLength()<<" "<<GrayCode::NUMBITS;   cout<<"-bit Start Codes"<<endl;   CodeQueue::processQueue(workQ,doneQ);   cout<<"There are "<<doneQ.getLength()<<" "<<GrayCode::NUMBITS;   cout<<"-bit Gray Codes"<<endl;   //while(!doneQ.empty()){   //GrayCode *toPrint;   //if(!doneQ.dequeue(toPrint)){fail("enqueue failed");}   //toPrint->print(cout);   //}   return 0; } void fail(const char* const str){   cerr << str << endl;   exit(1); } GrayCode::GrayCode():length(0){   for(int i=0; i<MAXCODE; ++i){used[i]=false;} } GrayCode::GrayCode(const GrayCode& code):length(code.length){   for(int i=0; i<MAXCODE; ++i){used[i]=code.used[i];}   for(int i=0; i<length; ++i){bitField[i]=code.bitField[i];}   } bool GrayCode::addCode(int code){   if(length>=MAXCODE){return false;}   if(used[code]){return false;}   bitField[length++]=code;   used[code]=true;   return true; } bool GrayCode::getLast(int& last) const {   if(0==length){return false;}   last=bitField[length-1];   return true; } void GrayCode::print(ostream & stream) const{   for(int i=0; i<length; ++i){stream<<bitField[i]<<" ";}   stream<<endl;     } void CodeQueue::processQueue(CodeQueue &workQ, CodeQueue &doneQ){   while(!workQ.empty()){     GrayCode* toWork;     if(!workQ.dequeue(toWork)){fail("dequeue Failed");}     cerr<<".";     if(toWork->getLength()==GrayCode::MAXCODE){       if(!doneQ.enqueue(toWork)){fail("enqueue failed");}      } else {       GrayCode* toAdd =new GrayCode(*toWork);       int last;       if(!toAdd->getLast(last)){fail("getLast Failed");}       for(int i=0,bit=1; i<GrayCode::NUMBITS; ++i, bit<<=1){         if(toAdd->addCode(last^bit)){           workQ.enqueue(toAdd);           toAdd =new GrayCode(*toWork);         }       }       delete toWork;     }   }   cerr<<endl; }  ```
Obviously NOT php, I just liked the formating.

10. OK, so nightning, antireconciler, and I have been having an ongoing discussion about science and its nature.

We also spent (are spending) a lot of time on statistics. From this I thought of several challenges for people who are interested in understanding the statistical methods commonly used in science.

The actual math for these ought to be straightforward. The idea is to really examine the assumptions behind the methods.

I will try to find some good links illustrating the methods needed to address these challenge problems.

Originally Posted by ygolo
Audio Blog 4

This is part of the on-going discussion about science we are having. I apologize for the cross-posting that I am doing, but I feel it appropriate.

The challenges as promised in the audio blog:
1. Prove that the sum of squares about the sample mean, divided by the population variance is a chi-square-distribution with n-1 degrees of freedom.
2. Prove that the F-score used for a one-way ANOVA does indeed follow an F-distribution if the null hypothesis is true.
3. Prove that the following tests will follow the t-distribution if the null hypothesis is true:
1. independent one-sample t-test
2. paired two-sample t-test
3. unpaired two-sample t-test w/ arbitrary sample sizes and variances
4. Prove that the F-score used for a one-way ANOVA with only two-levels for a factor for comparison is the square of the t-score for a 2 sample t-test using the same data.
5. Prove or disprove that in a two-way ANOVA, the Total Sum of Squares (TSS) is less than the sum of the Row Sum of Squares (RSS) and the Column Sum of Squares (CSS). In other words, prove of disprove that the Error Sum of Squares (ESS) = TSS-RSS-CSS is always positive.
6. Prove or disprove that in a two-way ANOVA, the number of degrees of freedom for the TSS is equal to the sum of the number of degrees of freedom of the RSS, CSS, and ESS.
7. Prove or Disprove that the one-way ANOVA is a special case of the two-way ANOVA with the number of rows or columns reduced to 1 (Of course only one of the F-scores will make sense. The question is this F-score is the same as the F-score one gets for the one-way ANOVA)
8. Prove or Disprove that the one-way ANOVA is a special case of the two-way ANOVA when one of the factors is ignored. (This time there is the same amount of "rows" and "columns", except you run a one-way ANOVA on the data).